diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bid/BidController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bid/BidController.java index 95b2db3..cdcdcac 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bid/BidController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bid/BidController.java @@ -16,7 +16,8 @@ import com.ruoyi.common.utils.file.FileUploadUtils; import com.ruoyi.common.utils.file.MinioUtil; import com.ruoyi.common.utils.uuid.UUID; import com.ruoyi.framework.changeRecord.ChangeRecordLog; -import com.ruoyi.quot.domain.Quot; +import com.ruoyi.priceVerification.domain.BidHj; +import com.ruoyi.priceVerification.service.IBidHjService; import com.ruoyi.redBook.domain.OAQuot; import com.ruoyi.redBook.domain.RbVersionDateResult; import com.ruoyi.system.service.ISysDeptService; @@ -57,6 +58,9 @@ public class BidController extends BaseController @Autowired private IBidJsqrService bidJsqrService; + @Autowired + private IBidHjService bidHjService; + @Autowired private ISysUserService userService; @@ -199,7 +203,7 @@ public class BidController extends BaseController * @return * @throws Exception */ - @PreAuthorize("@ss.hasAnyPermi('bid:bid:bidYwyFile,bid:bid:bidTbbFile')") + @PreAuthorize("@ss.hasAnyPermi('bid:bid:bidYwyFile,bid:bid:bidTbbFile,bid:bid:bidTbbJsgfFile,jsqrBid:jsqrBid:operateTlUploadFile,jsqrBid:jsqrBid:operateDyUploadFile,jsqrBid:jsqrBid:operateZyUploadFile,jsqrBid:jsqrBid:operateQtUploadFile,bidPriceVerification:bidPriceVerification:uploadFile')") @Log(title = "上传投标附件", businessType = BusinessType.INSERT) @PostMapping("/bidFile") public AjaxResult bidFile(@RequestParam("bidFile") MultipartFile file, @RequestParam("relation_id") String relation_id, @RequestParam("file_type") String file_type) throws Exception @@ -235,7 +239,7 @@ public class BidController extends BaseController /** * 查询附件列表 */ - @PreAuthorize("@ss.hasAnyPermi('bid:bid:list')") + @PreAuthorize("@ss.hasAnyPermi('bid:bid:list,jsqrBid:jsqrBid:list,bidPriceVerification:bidPriceVerification:list')") @GetMapping("/bidFileList") public TableDataInfo bidFileList(BidFile bidFile) { @@ -461,6 +465,37 @@ public class BidController extends BaseController return success(); } + /** + * 报价单提交核价协助 + */ + @PreAuthorize("@ss.hasPermi('bid:bid:assistHj')") + @Log(title = "投标提交核价协助", businessType = BusinessType.OTHER) + @PostMapping("/commitHjBid") + public AjaxResult commitHjBid(@RequestBody Bid bid) + { + + BidHj bidHj = new BidHj(); + String bidHjId = UUID.fastUUID().toString(); + bidHj.setBidHjId(bidHjId); + //bidHj.setBidHjCode(IdUtils.createNo("BJD_HJ_",0)); + String bidHjCode = bidService.getCode("TB_HJD"); + bidHj.setBidHjCode(bidHjCode); + + bidHj.setBidHjPricingType("30");//核价类型 设置为 标书核价 + + bidHj.setCreateBy(getUsername()); + bidHj.setUpdateBy(getUsername()); + bidHjService.insertBidHj(bidHj);//生成报价单-核价单 + + bid.setBidHjId(bidHjId); + bid.setBidHjApprovalStatus("1");//报价单-核价单 状态设置为 协助中 + bid.setUpdateBy(getUsername()); + bidService.updateBid(bid); + + //sendNoticeToHjxz(bidHj); + return success(); + } + /** * 投标驳回 */ diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/priceVerification/BidHjController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/priceVerification/BidHjController.java new file mode 100644 index 0000000..69d1e20 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/priceVerification/BidHjController.java @@ -0,0 +1,163 @@ +package com.ruoyi.web.controller.priceVerification; + +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.constant.WebsocketConst; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.core.domain.model.LoginUser; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.bid.domain.Bid; +import com.ruoyi.bid.service.IBidService; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.priceVerification.domain.BidHj; +import com.ruoyi.priceVerification.service.IBidHjService; +import com.ruoyi.system.service.ISysNoticeService; +import com.ruoyi.web.utils.SendNotice.NoticeUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 投标单-核价单Controller + * + * @author ruoyi + * @date 2024-04-16 + */ +@RestController +@RequestMapping("/bidPriceVerification/bidPriceVerification") +public class BidHjController extends BaseController +{ + @Autowired + private IBidHjService bidHjService; + + @Autowired + private IBidService bidService; + + @Autowired + private ISysNoticeService noticeService; + + /** + * 查询投标单-核价单列表 + */ + @PreAuthorize("@ss.hasPermi('bidPriceVerification:bidPriceVerification:list')") + @GetMapping("/list") + public TableDataInfo list(BidHj bidHj) + { + startPage(); + List list = bidHjService.selectBidHjList(bidHj); + return getDataTable(list); + } + + /** + * 导出投标单-核价单列表 + */ + @PreAuthorize("@ss.hasPermi('bidPriceVerification:bidPriceVerification:export')") + @Log(title = "投标单-核价单导出列表", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BidHj bidHj) + { + List list = bidHjService.selectBidHjList(bidHj); + ExcelUtil util = new ExcelUtil(BidHj.class); + util.exportExcel(response, list, "投标单-核价单数据"); + } + + /** + * 获取投标单-核价单详细信息 + */ + @PreAuthorize("@ss.hasPermi('bidPriceVerification:bidPriceVerification:query')") + @GetMapping(value = "/{bidHjId}") + public AjaxResult getInfo(@PathVariable("bidHjId") String bidHjId) + { + return success(bidHjService.selectBidHjByBidHjId(bidHjId)); + } + + /** + * 新增投标单-核价单 + */ + @PreAuthorize("@ss.hasPermi('bidPriceVerification:bidPriceVerification:add')") + @Log(title = "投标单-核价单新增", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody BidHj bidHj) + { + return toAjax(bidHjService.insertBidHj(bidHj)); + } + + /** + * 修改投标单-核价单 + */ + @PreAuthorize("@ss.hasPermi('bidPriceVerification:bidPriceVerification:edit')") + @Log(title = "投标单-核价单修改", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody BidHj bidHj) + { + return toAjax(bidHjService.updateBidHj(bidHj)); + } + + /** + * 删除投标单-核价单 + */ + @PreAuthorize("@ss.hasPermi('bidPriceVerification:bidPriceVerification:remove')") + @Log(title = "投标单-核价单删除", businessType = BusinessType.DELETE) + @DeleteMapping("/{bidHjIds}") + public AjaxResult remove(@PathVariable String[] bidHjIds) + { + return toAjax(bidHjService.deleteBidHjByBidHjIds(bidHjIds)); + } + + /** + * 投标单-核价单 提交投标组 + */ + @PreAuthorize("@ss.hasPermi('bidPriceVerification:bidPriceVerification:commit')") + @Log(title = "投标单-核价单 提交投标组", businessType = BusinessType.UPDATE) + @PostMapping("/commitHj") + public AjaxResult commitHj(@RequestBody BidHj bidHj) { + + bidHj.setUpdateBy(getUsername()); + bidHj.setBidHjPricingDate(DateUtils.getNowDate());//投标单-核价单 核价日期设置为 当前日期 + bidHjService.updateBidHj(bidHj); + + String bidHjId = bidHj.getBidHjId(); + Bid bid = bidService.selectBidByBidHjId(bidHjId); + bid.setBidHjApprovalStatus("2");//投标单-核价单 状态设置为 已协助 + bidService.updateBid(bid); + + //sendNoticeToBid(bidHj);// 发送给提醒 + return success(); + } + + /** + * 发送信息-核价协助提交投标组 + * @param bidHj + */ + private void sendNoticeToBid(BidHj bidHj){ + //推送消息 + LoginUser loginUser = getLoginUser();//当前登陆者 + //获取发送人-投标组 + List userIds = noticeService.getSendEmp(WebsocketConst.MSG_SEND_QUOT_BJZ); + NoticeUtil.sendNoticesBusiness(loginUser,"有投标单已完成核价协助","单号:"+bidHj.getBidCode(),userIds); + } + + /** + * 投标单-核价单 驳回 + */ + @PreAuthorize("@ss.hasPermi('bidPriceVerification:bidPriceVerification:reject')") + @Log(title = "投标单-核价单 驳回", businessType = BusinessType.OTHER) + @PostMapping("/rejectHj") + public AjaxResult rejectHj(@RequestBody BidHj bidHj) + { + bidHj.setUpdateBy(getUsername()); + bidHj.setBidHjPricingDate(DateUtils.getNowDate());//投标单-核价单 核价日期设置为 当前日期 + bidHjService.updateBidHj(bidHj); + + String bidHjId = bidHj.getBidHjId(); + Bid bid = bidService.selectBidByBidHjId(bidHjId); + bid.setBidHjApprovalStatus("3"); + bidService.updateBid(bid); + return success(); + } +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/quot/QuotController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/quot/QuotController.java index bcb6b57..1fb9c91 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/quot/QuotController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/quot/QuotController.java @@ -605,7 +605,7 @@ public class QuotController extends BaseController String quotHjCode = quotService.getCode("HJD"); quotHj.setQuotHjCode(quotHjCode); - quotHj.setQuotHjPricingType("10");//核价类型 设置为 报价核价 + quotHj.setQuotHjPricingType("20");//核价类型 设置为 报价核价 quotHj.setCreateBy(getUsername()); quotHj.setUpdateBy(getUsername()); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/technicalConfirm/BidJsqrController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/technicalConfirm/BidJsqrController.java index 0ed6c41..0c79527 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/technicalConfirm/BidJsqrController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/technicalConfirm/BidJsqrController.java @@ -167,9 +167,13 @@ public class BidJsqrController extends BaseController // 清空redis 协助说明key String hvalue = redisCache.getCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_TL"); - if(StringUtils.isNotEmpty(hvalue) && currentUser.equals(hvalue)){ - redisCache.deleteCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_TL"); - redisLock.unLock(bidJsqrEntity.getBidJsqrCode()+"_TL",currentUser); + if(StringUtils.isNotEmpty(hvalue)){ + if(currentUser.equals(hvalue)){ + redisCache.deleteCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_TL"); + redisLock.unLock(bidJsqrEntity.getBidJsqrCode()+"_TL",currentUser); + }else{ + return error("当前有其他用户【"+hvalue+"】正在录入"); + } } } if("checker".equals(type)){//审核人通过、驳回 @@ -232,9 +236,13 @@ public class BidJsqrController extends BaseController // 清空redis 协助说明key String hvalue = redisCache.getCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_DY"); - if(StringUtils.isNotEmpty(hvalue) && currentUser.equals(hvalue)){ - redisCache.deleteCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_DY"); - redisLock.unLock(bidJsqrEntity.getBidJsqrCode()+"_DY",currentUser); + if(StringUtils.isNotEmpty(hvalue)){ + if(currentUser.equals(hvalue)){ + redisCache.deleteCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_DY"); + redisLock.unLock(bidJsqrEntity.getBidJsqrCode()+"_DY",currentUser); + }else{ + return error("当前有其他用户【"+hvalue+"】正在录入"); + } } } if("checker".equals(type)){//审核人通过、驳回 @@ -297,9 +305,13 @@ public class BidJsqrController extends BaseController // 清空redis 协助说明key String hvalue = redisCache.getCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_ZY"); - if(StringUtils.isNotEmpty(hvalue) && currentUser.equals(hvalue)){ - redisCache.deleteCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_ZY"); - redisLock.unLock(bidJsqrEntity.getBidJsqrCode()+"_ZY",currentUser); + if(StringUtils.isNotEmpty(hvalue)){ + if(currentUser.equals(hvalue)){ + redisCache.deleteCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_ZY"); + redisLock.unLock(bidJsqrEntity.getBidJsqrCode()+"_ZY",currentUser); + }else{ + return error("当前有其他用户【"+hvalue+"】正在录入"); + } } } if("checker".equals(type)){//审核人通过、驳回 @@ -363,9 +375,13 @@ public class BidJsqrController extends BaseController // 清空redis 协助说明key String hvalue = redisCache.getCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_QT"); - if(StringUtils.isNotEmpty(hvalue) && currentUser.equals(hvalue)){ - redisCache.deleteCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_QT"); - redisLock.unLock(bidJsqrEntity.getBidJsqrCode()+"_QT",currentUser); + if(StringUtils.isNotEmpty(hvalue)){ + if(currentUser.equals(hvalue)){ + redisCache.deleteCacheMapValue("bidJsqrXzRemark",bidJsqrEntity.getBidJsqrCode()+"_QT"); + redisLock.unLock(bidJsqrEntity.getBidJsqrCode()+"_QT",currentUser); + }else{ + return error("当前有其他用户【"+hvalue+"】正在录入"); + } } } if("checker".equals(type)){//审核人通过、驳回 diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/technicalConfirm/QuotJsqrController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/technicalConfirm/QuotJsqrController.java index d318b11..76b2ac3 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/technicalConfirm/QuotJsqrController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/technicalConfirm/QuotJsqrController.java @@ -167,9 +167,13 @@ public class QuotJsqrController extends BaseController // 清空redis 协助说明key String hvalue = redisCache.getCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_TL"); - if(StringUtils.isNotEmpty(hvalue) && currentUser.equals(hvalue)){ - redisCache.deleteCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_TL"); - redisLock.unLock(quotJsqrEntity.getQuotJsqrCode()+"_TL",currentUser); + if(StringUtils.isNotEmpty(hvalue)){ + if(currentUser.equals(hvalue)){ + redisCache.deleteCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_TL"); + redisLock.unLock(quotJsqrEntity.getQuotJsqrCode()+"_TL",currentUser); + }else{ + return error("当前有其他用户【"+hvalue+"】正在录入"); + } } } if("checker".equals(type)){//审核人通过、驳回 @@ -232,9 +236,13 @@ public class QuotJsqrController extends BaseController // 清空redis 协助说明key String hvalue = redisCache.getCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_DY"); - if(StringUtils.isNotEmpty(hvalue) && currentUser.equals(hvalue)){ - redisCache.deleteCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_DY"); - redisLock.unLock(quotJsqrEntity.getQuotJsqrCode()+"_DY",currentUser); + if(StringUtils.isNotEmpty(hvalue)){ + if(currentUser.equals(hvalue)){ + redisCache.deleteCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_DY"); + redisLock.unLock(quotJsqrEntity.getQuotJsqrCode()+"_DY",currentUser); + }else{ + return error("当前有其他用户【"+hvalue+"】正在录入"); + } } } if("checker".equals(type)){//审核人通过、驳回 @@ -297,9 +305,13 @@ public class QuotJsqrController extends BaseController // 清空redis 协助说明key String hvalue = redisCache.getCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_ZY"); - if(StringUtils.isNotEmpty(hvalue) && currentUser.equals(hvalue)){ - redisCache.deleteCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_ZY"); - redisLock.unLock(quotJsqrEntity.getQuotJsqrCode()+"_ZY",currentUser); + if(StringUtils.isNotEmpty(hvalue)){ + if(currentUser.equals(hvalue)){ + redisCache.deleteCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_ZY"); + redisLock.unLock(quotJsqrEntity.getQuotJsqrCode()+"_ZY",currentUser); + }else{ + return error("当前有其他用户【"+hvalue+"】正在录入"); + } } } if("checker".equals(type)){//审核人通过、驳回 @@ -363,9 +375,13 @@ public class QuotJsqrController extends BaseController // 清空redis 协助说明key String hvalue = redisCache.getCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_QT"); - if(StringUtils.isNotEmpty(hvalue) && currentUser.equals(hvalue)){ - redisCache.deleteCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_QT"); - redisLock.unLock(quotJsqrEntity.getQuotJsqrCode()+"_QT",currentUser); + if(StringUtils.isNotEmpty(hvalue)){ + if(currentUser.equals(hvalue)){ + redisCache.deleteCacheMapValue("quotJsqrXzRemark",quotJsqrEntity.getQuotJsqrCode()+"_QT"); + redisLock.unLock(quotJsqrEntity.getQuotJsqrCode()+"_QT",currentUser); + }else{ + return error("当前有其他用户【"+hvalue+"】正在录入"); + } } } if("checker".equals(type)){//审核人通过、驳回 diff --git a/ruoyi-system/src/main/java/com/ruoyi/bid/domain/Bid.java b/ruoyi-system/src/main/java/com/ruoyi/bid/domain/Bid.java index 1dce642..5e59453 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/bid/domain/Bid.java +++ b/ruoyi-system/src/main/java/com/ruoyi/bid/domain/Bid.java @@ -250,6 +250,10 @@ public class Bid extends BaseEntity @DataName(name = "分派接收人姓名") private String receiveUserNickName; + /** 投标_投标状态 */ + @DataName(name = "投标状态",readConverterExp="0=待投标,1=中标,2=未中标,3=流标,4=结果待定") + private String bidStatus; + @@ -276,6 +280,13 @@ public class Bid extends BaseEntity private String bidJsqrQtRemark;//技术协助-其他协助说明 + /** 核价 */ + private String bidHjId;//核价单id + private String bidHjCode;//核价单号 + @DataName(name = "核价协助状态",readConverterExp="0=待协助,1=协助中,2=已协助,3=已驳回") + private String bidHjApprovalStatus;//核价协助状态 + private String bidHjPricingDate;//核价日期 + private String bidHjRemark;//核价备注 @@ -672,6 +683,9 @@ public class Bid extends BaseEntity public String getReceiveUserNickName() { return receiveUserNickName; } public void setReceiveUserNickName(String receiveUserNickName) { this.receiveUserNickName = receiveUserNickName; } + public String getBidStatus() { return bidStatus; } + + public void setBidStatus(String bidStatus) { this.bidStatus = bidStatus; } public String getBidJsxzApprovalStatus() { return bidJsxzApprovalStatus; } public void setBidJsxzApprovalStatus(String bidJsxzApprovalStatus) { this.bidJsxzApprovalStatus = bidJsxzApprovalStatus; } @@ -714,4 +728,19 @@ public class Bid extends BaseEntity public String getBidJsqrQtRemark() { return bidJsqrQtRemark; } public void setBidJsqrQtRemark(String bidJsqrQtRemark) { this.bidJsqrQtRemark = bidJsqrQtRemark; } + public String getBidHjId() { return bidHjId; } + + public void setBidHjId(String bidHjId) { this.bidHjId = bidHjId; } + public String getBidHjCode() { return bidHjCode; } + + public void setBidHjCode(String bidHjCode) { this.bidHjCode = bidHjCode; } + public String getBidHjApprovalStatus() { return bidHjApprovalStatus; } + + public void setBidHjApprovalStatus(String bidHjApprovalStatus) { this.bidHjApprovalStatus = bidHjApprovalStatus; } + public String getBidHjPricingDate() { return bidHjPricingDate; } + + public void setBidHjPricingDate(String bidHjPricingDate) { this.bidHjPricingDate = bidHjPricingDate; } + public String getBidHjRemark() { return bidHjRemark; } + + public void setBidHjRemark(String bidHjRemark) { this.bidHjRemark = bidHjRemark; } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/bid/mapper/BidMapper.java b/ruoyi-system/src/main/java/com/ruoyi/bid/mapper/BidMapper.java index c56e78b..4f61c04 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/bid/mapper/BidMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/bid/mapper/BidMapper.java @@ -29,6 +29,13 @@ public interface BidMapper */ Bid selectBidByBidJsqrId(String bidJsqrId); + /** + * 获取投标信息 + * @param bidHjId + * @return + */ + Bid selectBidByBidHjId(String bidHjId); + /** * 查询投标信息列表 * @@ -106,4 +113,5 @@ public interface BidMapper * @return */ RbTongLvPrice getTongLvPrice(String rbUid); + } diff --git a/ruoyi-system/src/main/java/com/ruoyi/bid/service/IBidService.java b/ruoyi-system/src/main/java/com/ruoyi/bid/service/IBidService.java index 144d8af..df743c8 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/bid/service/IBidService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/bid/service/IBidService.java @@ -31,6 +31,14 @@ public interface IBidService */ Bid selectBidByBidJsqrId(String bidJsqrId); + + /** + * 获取投标信息 + * @param bidHjId + * @return + */ + Bid selectBidByBidHjId(String bidHjId); + /** * 查询投标信息列表 * @@ -108,4 +116,5 @@ public interface IBidService * @return */ RbTongLvPrice getTongLvPrice(String rbUid); + } diff --git a/ruoyi-system/src/main/java/com/ruoyi/bid/service/impl/BidServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/bid/service/impl/BidServiceImpl.java index 7006258..0b35301 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/bid/service/impl/BidServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/bid/service/impl/BidServiceImpl.java @@ -49,6 +49,14 @@ public class BidServiceImpl implements IBidService return bidMapper.selectBidByBidJsqrId(bidJsqrId); } + /** + * 获取投标信息 + * @param bidHjId + * @return + */ + @Override + public Bid selectBidByBidHjId(String bidHjId) { return bidMapper.selectBidByBidHjId(bidHjId); } + /** * 查询投标信息列表 * diff --git a/ruoyi-system/src/main/java/com/ruoyi/priceVerification/domain/BidHj.java b/ruoyi-system/src/main/java/com/ruoyi/priceVerification/domain/BidHj.java new file mode 100644 index 0000000..b281e9e --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/priceVerification/domain/BidHj.java @@ -0,0 +1,156 @@ +package com.ruoyi.priceVerification.domain; + +import com.ruoyi.common.core.domain.BaseEntity; + +import java.util.Date; + +/** + * 投标单-核价单对象 bid_hj + * + * @author ruoyi + * @date 2024-04-16 + */ +public class BidHj extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 核价单Id */ + private String bidHjId; + + /** 核价单号 */ + private String bidHjCode; + + /** 核价类型 */ + private String bidHjPricingType; + + /** 核价日期 */ + private Date bidHjPricingDate; + + /** 备注 */ + private String bidHjRemark; + + /** 备注 */ + private String bidHjApprovalStatus; + + /** 创建人 */ + private String createName; + + + /** 投标单信息 */ + private String bidId;//投标单id + private String bidCode;//投标单号 + private String bidSalesmanName;//业务员 + private String bidTenderingUnit;//客户 + private String bidProject;//项目 + + /** 技术协助信息 */ + private String bidJsxzConfirmId;//技术协助-技术确认单id + private String bidJsxzGroupValues;//技术协助-分组 + + private String bidJsqrTlApprovalStatus;//技术协助-特缆协助状态 + private String bidJsqrTlRemark;//技术协助-特缆协助说明 + + private String bidJsqrDyApprovalStatus;//技术协助-低压协助状态 + private String bidJsqrDyRemark;//技术协助-低压协助说明 + + private String bidJsqrZyApprovalStatus;//技术协助-中压协助状态 + private String bidJsqrZyRemark;//技术协助-中压协助说明 + + private String bidJsqrQtApprovalStatus;//技术协助-其他协助状态 + private String bidJsqrQtRemark;//技术协助-其他协助说明 + + public void setBidHjId(String bidHjId) + { + this.bidHjId = bidHjId; + } + + public String getBidHjId() + { + return bidHjId; + } + public void setBidHjCode(String bidHjCode) + { + this.bidHjCode = bidHjCode; + } + + public String getBidHjCode() + { + return bidHjCode; + } + public void setBidHjPricingType(String bidHjPricingType) + { + this.bidHjPricingType = bidHjPricingType; + } + + public String getBidHjPricingType() + { + return bidHjPricingType; + } + public void setBidHjPricingDate(Date bidHjPricingDate) { this.bidHjPricingDate = bidHjPricingDate; } + + public Date getBidHjPricingDate() + { + return bidHjPricingDate; + } + public void setBidHjRemark(String bidHjRemark) + { + this.bidHjRemark = bidHjRemark; + } + + public String getBidHjRemark() + { + return bidHjRemark; + } + public String getBidHjApprovalStatus() { return bidHjApprovalStatus; } + + public void setBidHjApprovalStatus(String bidHjApprovalStatus) { this.bidHjApprovalStatus = bidHjApprovalStatus; } + public String getCreateName() { return createName; } + + public void setCreateName(String createName) { this.createName = createName; } + + /** 投标单信息 */ + public String getBidId() { return bidId; } + public void setBidId(String bidId) { this.bidId = bidId; } + + public String getBidCode() { return bidCode; } + public void setBidCode(String bidCode) { this.bidCode = bidCode; } + + public String getBidSalesmanName() { return bidSalesmanName; } + public void setBidSalesmanName(String bidSalesmanName) { this.bidSalesmanName = bidSalesmanName; } + + public String getBidTenderingUnit() { return bidTenderingUnit; } + public void setBidTenderingUnit(String bidTenderingUnit) { this.bidTenderingUnit = bidTenderingUnit; } + + public String getBidProject() { return bidProject; } + public void setBidProject(String bidProject) { this.bidProject = bidProject; } + + public String getBidJsxzConfirmId() { return bidJsxzConfirmId; } + public void setBidJsxzConfirmId(String bidJsxzConfirmId) { this.bidJsxzConfirmId = bidJsxzConfirmId; } + + public String getBidJsxzGroupValues() { return bidJsxzGroupValues; } + public void setBidJsxzGroupValues(String bidJsxzGroupValues) { this.bidJsxzGroupValues = bidJsxzGroupValues; } + + public String getBidJsqrTlApprovalStatus() { return bidJsqrTlApprovalStatus; } + public void setBidJsqrTlApprovalStatus(String bidJsqrTlApprovalStatus) { this.bidJsqrTlApprovalStatus = bidJsqrTlApprovalStatus; } + + public String getBidJsqrTlRemark() { return bidJsqrTlRemark; } + public void setBidJsqrTlRemark(String bidJsqrTlRemark) { this.bidJsqrTlRemark = bidJsqrTlRemark; } + + public String getBidJsqrDyApprovalStatus() { return bidJsqrDyApprovalStatus; } + public void setBidJsqrDyApprovalStatus(String bidJsqrDyApprovalStatus) { this.bidJsqrDyApprovalStatus = bidJsqrDyApprovalStatus; } + + public String getBidJsqrDyRemark() { return bidJsqrDyRemark; } + public void setBidJsqrDyRemark(String bidJsqrDyRemark) { this.bidJsqrDyRemark = bidJsqrDyRemark; } + + public String getBidJsqrZyApprovalStatus() { return bidJsqrZyApprovalStatus; } + public void setBidJsqrZyApprovalStatus(String bidJsqrZyApprovalStatus) { this.bidJsqrZyApprovalStatus = bidJsqrZyApprovalStatus; } + + public String getBidJsqrZyRemark() { return bidJsqrZyRemark; } + public void setBidJsqrZyRemark(String bidJsqrZyRemark) { this.bidJsqrZyRemark = bidJsqrZyRemark; } + + public String getBidJsqrQtApprovalStatus() { return bidJsqrQtApprovalStatus; } + public void setBidJsqrQtApprovalStatus(String bidJsqrQtApprovalStatus) { this.bidJsqrQtApprovalStatus = bidJsqrQtApprovalStatus; } + + public String getBidJsqrQtRemark() { return bidJsqrQtRemark; } + public void setBidJsqrQtRemark(String bidJsqrQtRemark) { this.bidJsqrQtRemark = bidJsqrQtRemark; } +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/priceVerification/mapper/BidHjMapper.java b/ruoyi-system/src/main/java/com/ruoyi/priceVerification/mapper/BidHjMapper.java new file mode 100644 index 0000000..a0b3cee --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/priceVerification/mapper/BidHjMapper.java @@ -0,0 +1,62 @@ +package com.ruoyi.priceVerification.mapper; + +import com.ruoyi.priceVerification.domain.BidHj; + +import java.util.List; + +/** + * 投标单-核价单Mapper接口 + * + * @author ruoyi + * @date 2024-04-16 + */ +public interface BidHjMapper +{ + /** + * 查询投标单-核价单 + * + * @param bidHjId 投标单-核价单主键 + * @return 投标单-核价单 + */ + public BidHj selectBidHjByBidHjId(String bidHjId); + + /** + * 查询投标单-核价单列表 + * + * @param bidHj 投标单-核价单 + * @return 投标单-核价单集合 + */ + public List selectBidHjList(BidHj bidHj); + + /** + * 新增投标单-核价单 + * + * @param bidHj 投标单-核价单 + * @return 结果 + */ + public int insertBidHj(BidHj bidHj); + + /** + * 修改投标单-核价单 + * + * @param bidHj 投标单-核价单 + * @return 结果 + */ + public int updateBidHj(BidHj bidHj); + + /** + * 删除投标单-核价单 + * + * @param bidHjId 投标单-核价单主键 + * @return 结果 + */ + public int deleteBidHjByBidHjId(String bidHjId); + + /** + * 批量删除投标单-核价单 + * + * @param bidHjIds 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBidHjByBidHjIds(String[] bidHjIds); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/priceVerification/service/IBidHjService.java b/ruoyi-system/src/main/java/com/ruoyi/priceVerification/service/IBidHjService.java new file mode 100644 index 0000000..e64d264 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/priceVerification/service/IBidHjService.java @@ -0,0 +1,62 @@ +package com.ruoyi.priceVerification.service; + +import com.ruoyi.priceVerification.domain.BidHj; + +import java.util.List; + +/** + * 投标单-核价单Service接口 + * + * @author ruoyi + * @date 2024-04-16 + */ +public interface IBidHjService +{ + /** + * 查询投标单-核价单 + * + * @param bidHjId 投标单-核价单主键 + * @return 投标单-核价单 + */ + public BidHj selectBidHjByBidHjId(String bidHjId); + + /** + * 查询投标单-核价单列表 + * + * @param bidHj 投标单-核价单 + * @return 投标单-核价单集合 + */ + public List selectBidHjList(BidHj bidHj); + + /** + * 新增投标单-核价单 + * + * @param bidHj 投标单-核价单 + * @return 结果 + */ + public int insertBidHj(BidHj bidHj); + + /** + * 修改投标单-核价单 + * + * @param bidHj 投标单-核价单 + * @return 结果 + */ + public int updateBidHj(BidHj bidHj); + + /** + * 批量删除投标单-核价单 + * + * @param bidHjIds 需要删除的投标单-核价单主键集合 + * @return 结果 + */ + public int deleteBidHjByBidHjIds(String[] bidHjIds); + + /** + * 删除投标单-核价单信息 + * + * @param bidHjId 投标单-核价单主键 + * @return 结果 + */ + public int deleteBidHjByBidHjId(String bidHjId); +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/priceVerification/service/impl/BidHjServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/priceVerification/service/impl/BidHjServiceImpl.java new file mode 100644 index 0000000..04fdf73 --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/priceVerification/service/impl/BidHjServiceImpl.java @@ -0,0 +1,103 @@ +package com.ruoyi.priceVerification.service.impl; + +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.priceVerification.domain.BidHj; +import com.ruoyi.priceVerification.mapper.BidHjMapper; +import com.ruoyi.priceVerification.service.IBidHjService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + * 投标单-核价单Service业务层处理 + * + * @author ruoyi + * @date 2024-04-16 + */ +@Service +public class BidHjServiceImpl implements IBidHjService +{ + @Autowired + private BidHjMapper bidHjMapper; + + /** + * 查询投标单-核价单 + * + * @param bidHjId 投标单-核价单主键 + * @return 投标单-核价单 + */ + @Override + public BidHj selectBidHjByBidHjId(String bidHjId) + { + return bidHjMapper.selectBidHjByBidHjId(bidHjId); + } + + /** + * 查询投标单-核价单列表 + * + * @param bidHj 投标单-核价单 + * @return 投标单-核价单 + */ + @Override + public List selectBidHjList(BidHj bidHj) + { + return bidHjMapper.selectBidHjList(bidHj); + } + + /** + * 新增投标单-核价单 + * + * @param bidHj 投标单-核价单 + * @return 结果 + */ + @Transactional + @Override + public int insertBidHj(BidHj bidHj) + { + bidHj.setCreateTime(DateUtils.getNowDate()); + bidHj.setUpdateTime(DateUtils.getNowDate()); + return bidHjMapper.insertBidHj(bidHj); + } + + /** + * 修改投标单-核价单 + * + * @param bidHj 投标单-核价单 + * @return 结果 + */ + @Transactional + @Override + public int updateBidHj(BidHj bidHj) + { + bidHj.setUpdateTime(DateUtils.getNowDate()); + return bidHjMapper.updateBidHj(bidHj); + } + + /** + * 批量删除投标单-核价单 + * + * @param bidHjIds 需要删除的投标单-核价单主键 + * @return 结果 + */ + @Transactional + @Override + public int deleteBidHjByBidHjIds(String[] bidHjIds) + { + return bidHjMapper.deleteBidHjByBidHjIds(bidHjIds); + } + + /** + * 删除投标单-核价单信息 + * + * @param bidHjId 投标单-核价单主键 + * @return 结果 + */ + @Transactional + @Override + public int deleteBidHjByBidHjId(String bidHjId) + { + return bidHjMapper.deleteBidHjByBidHjId(bidHjId); + } +} diff --git a/ruoyi-system/src/main/resources/mapper/bid/BidMapper.xml b/ruoyi-system/src/main/resources/mapper/bid/BidMapper.xml index f892f8f..5820b9b 100644 --- a/ruoyi-system/src/main/resources/mapper/bid/BidMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/bid/BidMapper.xml @@ -61,7 +61,7 @@ - + @@ -78,7 +78,11 @@ - + + + + + @@ -91,6 +95,7 @@ left join sys_user u on u.user_name=a.create_by left join sys_dept d on u.dept_id = d.dept_id left join bid_jsqr q on q.bid_jsqr_id = a.bid_jsxz_confirm_id + left join bid_hj h on h.bid_hj_id = a.bid_hj_id @@ -107,7 +112,7 @@ a.bid_warranty_period, a.bid_bidding, a.bid_evaluation_method, a.bid_technical_require, a.bid_price_linkage, a.bid_payment_method, a.bid_other_matters, a.bid_zbr, a.bid_jdr, a.bid_shr, a.bid_approval_status, a.bid_notification_award, a.bid_remark,a.bid_returnRemark, - a.set_receive_user,a.receive_user_name,a.receive_user_nick_name,a.create_by,u.nick_name create_name, a.create_time, + a.set_receive_user,a.receive_user_name,a.receive_user_nick_name,a.bid_status,a.create_by,u.nick_name create_name, a.create_time, a.update_by, a.update_time, a.bid_jsxz_approval_status,a.bid_jsxz_technical_requirement, @@ -116,7 +121,11 @@ q.bid_jsqr_tl_approval_status,q.bid_jsqr_tl_remark, q.bid_jsqr_dy_approval_status,q.bid_jsqr_dy_remark, q.bid_jsqr_zy_approval_status,q.bid_jsqr_zy_remark, - q.bid_jsqr_qt_approval_status,q.bid_jsqr_qt_remark + q.bid_jsqr_qt_approval_status,q.bid_jsqr_qt_remark, + + a.bid_hj_id,a.bid_hj_approval_status, + h.bid_hj_code,h.bid_hj_pricing_date, + h.bid_hj_remark from bid a @@ -204,12 +213,16 @@ set_receive_user, receive_user_name, receive_user_nick_name, + bid_status, bid_jsxz_approval_status, bid_jsxz_technical_requirement, bid_jsxz_group_values, bid_jsxz_confirm_id, + bid_hj_id, + bid_hj_approval_status, + create_by, create_time, update_by, @@ -272,12 +285,16 @@ #{setReceiveUser}, #{receiveUserName}, #{receiveUserNickName}, + #{bidStatus}, #{bidJsxzApprovalStatus}, #{bidJsxzTechnicalRequirement}, #{bidJsxzGroupValues}, #{bidJsxzConfirmId}, + #{bidHjId}, + #{bidHjApprovalStatus}, + #{createBy}, #{createTime}, #{updateBy}, @@ -401,12 +418,16 @@ set_receive_user = #{setReceiveUser}, receive_user_name = #{receiveUserName}, receive_user_nick_name = #{receiveUserNickName}, + bid_status = #{bidStatus}, bid_jsxz_approval_status = #{bidJsxzApprovalStatus}, bid_jsxz_technical_requirement = #{bidJsxzTechnicalRequirement}, bid_jsxz_group_values = #{bidJsxzGroupValues}, bid_jsxz_confirm_id = #{bidJsxzConfirmId}, + bid_hj_id = #{bidHjId}, + bid_hj_approval_status = #{bidHjApprovalStatus}, + create_by = #{createBy}, create_time = #{createTime}, update_by = #{updateBy}, @@ -439,6 +460,11 @@ where a.bid_jsxz_confirm_id = #{bidJsqrId} + + + + + and bid_hj_code like concat('%', #{bidHjCode}, '%') + and bid_hj_pricing_date between #{params.beginBidHjPricingDate} and #{params.endBidHjPricingDate} + and q.bid_hj_approval_status = #{bidHjApprovalStatus} + and q.bid_code like concat('%', #{bidCode}, '%') + and q.bid_salesman_name like concat('%', #{bidSalesmanName}, '%') + and q.bid_tendering_unit like concat('%', #{bidTenderingUnit}, '%') + and q.bid_project like concat('%', #{bidProject}, '%') + + + + + order by a.bid_hj_code desc + + + + + + insert into bid_hj + + bid_hj_id, + bid_hj_code, + bid_hj_pricing_type, + bid_hj_pricing_date, + bid_hj_remark, + create_by, + create_time, + update_by, + update_time, + + + #{bidHjId}, + #{bidHjCode}, + #{bidHjPricingType}, + #{bidHjPricingDate}, + #{bidHjRemark}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + + + + + update bid_hj + + bid_hj_code = #{bidHjCode}, + bid_hj_pricing_type = #{bidHjPricingType}, + bid_hj_pricing_date = #{bidHjPricingDate}, + bid_hj_remark = #{bidHjRemark}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + + where bid_hj_id = #{bidHjId} + + + + delete from bid_hj where bid_hj_id = #{bidHjId} + + + + delete from bid_hj where bid_hj_id in + + #{bidHjId} + + + diff --git a/ruoyi-ui/src/api/bid/bid.js b/ruoyi-ui/src/api/bid/bid.js index e65ab05..db45b62 100644 --- a/ruoyi-ui/src/api/bid/bid.js +++ b/ruoyi-ui/src/api/bid/bid.js @@ -88,6 +88,15 @@ export function commitJsBid(data) { }) } +//提交核价协助 +export function commitHjBid(data) { + return request({ + url: '/bid/bid/commitHjBid', + method: 'post', + data: data + }) +} + //驳回按钮 export function rejectBid(data) { return request({ diff --git a/ruoyi-ui/src/api/priceVerification/priceVerificationBid.js b/ruoyi-ui/src/api/priceVerification/priceVerificationBid.js new file mode 100644 index 0000000..9afa182 --- /dev/null +++ b/ruoyi-ui/src/api/priceVerification/priceVerificationBid.js @@ -0,0 +1,63 @@ +import request from '@/utils/request' + +// 查询投标单-核价单列表 +export function listPriceVerification(query) { + return request({ + url: '/bidPriceVerification/bidPriceVerification/list', + method: 'get', + params: query + }) +} + +// 查询投标单-核价单详细 +export function getPriceVerification(quotHjId) { + return request({ + url: '/bidPriceVerification/bidPriceVerification/' + quotHjId, + method: 'get' + }) +} + +// 新增投标单-核价单 +export function addPriceVerification(data) { + return request({ + url: '/bidPriceVerification/bidPriceVerification', + method: 'post', + data: data + }) +} + +// 修改投标单-核价单 +export function updatePriceVerification(data) { + return request({ + url: '/bidPriceVerification/bidPriceVerification', + method: 'put', + data: data + }) +} + +// 删除投标单-核价单 +export function delPriceVerification(quotHjId) { + return request({ + url: '/bidPriceVerification/bidPriceVerification/' + quotHjId, + method: 'delete' + }) +} + +//提交投标单-核价单 至投标组 +export function commitHj(data) { + return request({ + url: '/bidPriceVerification/bidPriceVerification/commitHj', + method: 'post', + data: data + }) +} + +//驳回投标单-核价单 +export function rejectHj(data) { + return request({ + url: '/bidPriceVerification/bidPriceVerification/rejectHj', + method: 'post', + data: data + }) +} +rejectHj diff --git a/ruoyi-ui/src/views/bid/bid/index.vue b/ruoyi-ui/src/views/bid/bid/index.vue index 03e5b56..4226691 100644 --- a/ruoyi-ui/src/views/bid/bid/index.vue +++ b/ruoyi-ui/src/views/bid/bid/index.vue @@ -204,26 +204,16 @@
- + - + - + - -
@@ -415,6 +405,7 @@ +
投标信息 @@ -560,11 +551,23 @@ - + + + + + + + + @@ -686,7 +689,7 @@ 技术要求附件 -
+
+ v-if="this.form.bidApprovalStatus == '1'&&this.form.bidJsxzApprovalStatus != '1'"> 上传文件
@@ -839,6 +842,71 @@
+ +
+ 核价协助 + + + + {{form.bidHjCode}} + + + + +
+ + +
+
+
+ + + + + + + +
+ + + + + + + + + + 核价附件 + + + + + + + + + + + + +
+ @@ -918,8 +986,8 @@ 提 交 - 提交技术协助 - + 提交技术协助 + 提交核价审核 + + + + @@ -971,11 +1043,13 @@ import { checkPermi,checkRole } from '@/utils/permission';// 权限判断函数 import { getToken } from "@/utils/auth"; import { listZgys} from "@/api/zgys/zgys"; -import { versionList,getTongLvPrice,bidAssign,listBid, getBid, delBid, addBid, updateBid, bidFileList,bidFileDelete, commitTbxx,commitJsBid, rejectBid } from "@/api/bid/bid"; +import { versionList,getTongLvPrice,bidAssign,listBid, getBid, delBid, addBid, updateBid, bidFileList,bidFileDelete, commitTbxx,commitJsBid, commitHjBid, rejectBid } from "@/api/bid/bid"; /** 弹窗放大、拖拽 */ import elDragDialog from "@/directive/dialog/dragDialog"; /** 导入技术确认单详情组件*/ import jsqrDialog from '@/views/technicalConfirm/technicalConfirm/jsxzInfoBid.vue'; +/** 导入核价单详情组件*/ +import hjDialog from '@/views/priceVerification/priceVerification/hjInfoBid.vue'; /** 导入客户选择组件 */ import CustomerSelect from "@/views/components/Tools/CustomerSelect/index.vue"; /** 导入选人组件 */ @@ -992,11 +1066,12 @@ export default { components: { // 注册组件 'jsqrDialog': jsqrDialog, + 'hjDialog': hjDialog, 'CustomerSelect': CustomerSelect, 'PeopleSelect': PeopleSelect, 'ChangeRecord':ChangeRecord }, - dicts: ['bid_set_receive_user','bid_has_registration','bid_approval_status','bid_online_quotation','bid_copper_price_linkage','bid_open_close','bid_bidding','bid_notification_award','bid_jsxz_group','bid_jsxz_approval_status'], + dicts: ['bid_set_receive_user','bid_has_registration','bid_approval_status','bid_hj_approval_status','bid_online_quotation','bid_copper_price_linkage','bid_open_close','bid_bidding','bid_notification_award','bid_status','bid_jsxz_group','bid_jsxz_approval_status'], data() { return { // 遮罩层 @@ -1092,6 +1167,9 @@ export default { bidJsqrZyFileNum: 0, bidJsqrQtFileNum: 0, + // 核价单附件列表数据 + bidHjFileList: [], + //技术协助-特缆、低压、中压、其他 隐藏控制 showTl: false, showDy: false, @@ -1219,6 +1297,7 @@ export default { bidShr: null, bidApprovalStatus: null, bidNotificationAward: null, + bidStatus: null, bidRemark: null, bidReturnRemark: null, @@ -1239,11 +1318,16 @@ export default { bidJsqrQtApprovalStatus: null, bidJsqrQtRemark: null, + + bidHjCode: null, + bidHjPricingDate: null, + bidHjApprovalStatus: null, }; this.bidYwyFileList = []; this.bidTbbFileList = []; this.bidTbbJsgfFileList = []; + this.bidHjFileList = []; this.resetForm("form"); }, @@ -1321,6 +1405,7 @@ export default { this.getBidYwyFileList(); this.getBidTbbFileList(); this.getBidTbbJsgfFileList(); + this.getBidHjFileList(); }); }, /** 保存按钮 */ @@ -1365,6 +1450,16 @@ export default { }); }, + /** 投标提交核价协助按钮 */ + commitHjForm() { + this.form.quotMaterialList = this.quotMaterialList; + commitHjBid(this.form).then(response => { + this.$modal.msgSuccess("提交核价协助成功"); + this.open = false; + this.getList(); + }); + }, + /** 投标驳回按钮 */ rejectBidForm() { rejectBid(this.form).then(response => { @@ -1501,6 +1596,13 @@ export default { this.bidTbbJsgfFileList = response.rows; }); }, + //获取投标信息-核价附件列表 + getBidHjFileList(){ + const param = {relationId:this.form.bidHjId,fileType:'bidHjFile'} + bidFileList(param).then(response => { + this.bidHjFileList = response.rows; + }); + }, //下载附件 downloadFile(fileUrl){ @@ -1612,7 +1714,12 @@ export default { }); }, /*********************************技术协助模块*****************************************/ - + /*********************************核价协助模块*****************************************/ + //核价单 详细信息 + showHjDialog(){ + this.$refs.hjDialog.getInfo("投标-核价单",true,false,this.form.bidHjId); + }, + /*********************************核价协助模块*****************************************/ /*********************************打开资格预审列表选择*****************************************/ openZgys(){ this.zgysOpen=true; diff --git a/ruoyi-ui/src/views/priceVerification/priceVerification/hjInfo.vue b/ruoyi-ui/src/views/priceVerification/priceVerification/hjInfo.vue index efc24b7..93869f2 100644 --- a/ruoyi-ui/src/views/priceVerification/priceVerification/hjInfo.vue +++ b/ruoyi-ui/src/views/priceVerification/priceVerification/hjInfo.vue @@ -20,7 +20,7 @@ +
+ + + 核价信息 + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + 技术附件 + + + + + + + + + + + + + + + 核价附件 +
+ + 上传文件 + +
+
+
+ + + + + + + + + + + + + + + + 技术协助 +
+ 特缆协助 + + + + + + + + + + + 上传文件 ({{this.bidJsqrTlFileNum}}) + + + + + + + + + + +
+
+ 低压协助 + + + + + + + + + + + 上传文件 ({{this.bidJsqrDyFileNum}}) + + + + + + + + + + +
+
+ 中压协助 + + + + + + + + + + + 上传文件 ({{this.bidJsqrZyFileNum}}) + + + + + + + + + + +
+
+ 其他协助 + + + + + + + + + + + 上传文件 ({{this.bidJsqrQtFileNum}}) + + + + + + + + + + +
+ +
+ + + + + + + + + + + + + + + +
+
+ + + + + diff --git a/ruoyi-ui/src/views/priceVerification/priceVerification/index.vue b/ruoyi-ui/src/views/priceVerification/priceVerification/index.vue index 0cfb14f..1687e55 100644 --- a/ruoyi-ui/src/views/priceVerification/priceVerification/index.vue +++ b/ruoyi-ui/src/views/priceVerification/priceVerification/index.vue @@ -80,7 +80,7 @@ @@ -131,7 +131,7 @@ export default { // 注册组件 'hjDialog': hjDialog }, - dicts: ['quot_pricing_type','quot_hj_approval_status'], + dicts: ['quot_bid_pricing_type','quot_hj_approval_status'], data() { return { // 遮罩层 diff --git a/ruoyi-ui/src/views/priceVerification/priceVerification/indexBid.vue b/ruoyi-ui/src/views/priceVerification/priceVerification/indexBid.vue new file mode 100644 index 0000000..0b1fcbc --- /dev/null +++ b/ruoyi-ui/src/views/priceVerification/priceVerification/indexBid.vue @@ -0,0 +1,217 @@ + + + diff --git a/ruoyi-ui/src/views/quot/quot/index.vue b/ruoyi-ui/src/views/quot/quot/index.vue index 0a3b490..d65153c 100644 --- a/ruoyi-ui/src/views/quot/quot/index.vue +++ b/ruoyi-ui/src/views/quot/quot/index.vue @@ -260,17 +260,17 @@
- + - + - + - +