suntianwu 2 tahun lalu
induk
melakukan
a7f2dedb90

+ 22 - 2
purchase-system/src/main/java/com/ozs/pm/service/impl/PmDemandServiceImpl.java

@@ -260,11 +260,13 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
 
                 //中标信息列表
                 LambdaQueryWrapper<PmBidWinning> lambdaQueryWrapper1 = new LambdaQueryWrapper<>();
-                lambdaQueryWrapper1.eq(PmBidWinning::getDemandId, demandId);
+                lambdaQueryWrapper1.eq(PmBidWinning::getDemandId, demandId)
+                        .eq(PmBidWinning::getStatus,BidWinningStatus.NORMAL.getCode());
                 PmBidWinning pmBidWinning = this.pmBidWinningService.getOne(lambdaQueryWrapper1);
                 if (!ObjectUtils.isEmpty(pmBidWinning)) {
                     LambdaQueryWrapper<PmBidWinningOpeningRef> lambdaQueryWrapper2 = new LambdaQueryWrapper<>();
-                    lambdaQueryWrapper2.eq(PmBidWinningOpeningRef::getWinningId,pmBidWinning.getId());
+                    lambdaQueryWrapper2.eq(PmBidWinningOpeningRef::getWinningId,pmBidWinning.getId())
+                            .eq(PmBidWinningOpeningRef::getStatus,BidWinningStatus.NORMAL.getCode());
                     List<PmBidWinningOpeningRef> pmBidWinningOpeningRefList = this.pmBidWinningOpeningRefService.list(lambdaQueryWrapper2);
                     if(!ObjectUtils.isEmpty(pmBidWinningOpeningRefList)){
                         List<PmBidWinningResVo> pmBidWinningResVoList = new ArrayList<>();
@@ -1259,6 +1261,24 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
         PmBidFailure pmBidFailure = new PmBidFailure();
         BeanUtils.copyProperties(pmBidFailureReqVo, pmBidFailure);
         if (pmBidFailureService.saveOrUpdate(pmBidFailure)) {
+            //把中标信息修改状态
+            LambdaQueryWrapper<PmBidWinning> lw = new LambdaQueryWrapper<>();
+            lw.eq(PmBidWinning::getDemandId, pmBidFailureReqVo.getDemandId()).eq(PmBidWinning::getStatus,BidWinningStatus.NORMAL.getCode());
+            List<PmBidWinning> pmBidWinninglist = pmBidWinningService.list(lw);
+            if (!ObjectUtils.isEmpty(pmBidWinninglist)) {
+                for(PmBidWinning item : pmBidWinninglist) {
+                    UpdateWrapper<PmBidWinning> updateWrapper1 = new UpdateWrapper<>();
+                    updateWrapper1.lambda().set(PmBidWinning::getStatus,BidWinningStatus.BE_BID_FAILURE.getCode())
+                            .eq(PmBidWinning::getId,item.getId());
+                    pmBidWinningService.update(updateWrapper1);
+
+                    UpdateWrapper<PmBidWinningOpeningRef> updateWrapper2 = new UpdateWrapper<>();
+                    updateWrapper2.lambda().set(PmBidWinningOpeningRef::getStatus,BidWinningStatus.BE_BID_FAILURE.getCode())
+                            .eq(PmBidWinningOpeningRef::getWinningId,item.getId())
+                            .eq(PmBidWinningOpeningRef::getStatus,BidWinningStatus.NORMAL.getCode());
+                    pmBidWinningOpeningRefService.update(updateWrapper2);
+                }
+            }
 
             uploadFile(pmBidFailure.getId(), SysFileRefEnum.PM_BID_FAILURE_FILE.getType(), pmBidFailureReqVo.getSysFileRefs(), pmBidFailureReqVo.getUpdateBy());
             PmDemand pmDemandUpdate = new PmDemand();