|
@@ -317,13 +317,11 @@ public class FinalAcceptanceManage { |
|
|
*/ |
|
|
*/ |
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
public synchronized String startProcess(SubmitFinallyInspectedReq req) { |
|
|
public synchronized String startProcess(SubmitFinallyInspectedReq req) { |
|
|
UserInfoDetails user = LoginUserUtil.userDetail(); |
|
|
|
|
|
|
|
|
UserInfoDetails user = LoginUserUtil.userDetailNotNull(); |
|
|
ProjectProcessType instType = ProjectProcessType.ACCEPTANCE_DECLARATION_APPROVAL_PROCESS; |
|
|
ProjectProcessType instType = ProjectProcessType.ACCEPTANCE_DECLARATION_APPROVAL_PROCESS; |
|
|
WflowModels model = processModelManage.getWflowModelsNoNull(instType, user.getMhUnitId()); |
|
|
WflowModels model = processModelManage.getWflowModelsNoNull(instType, user.getMhUnitId()); |
|
|
|
|
|
|
|
|
List<Purchase> purchases = purchaseService.listByProjectId(req.getProjectId()); |
|
|
|
|
|
Map<Long, Purchase> purchaseMap = CollUtils.listToMap(purchases, Purchase::getId); |
|
|
|
|
|
Purchase purchase = purchaseMap.get(req.getBidId()); |
|
|
|
|
|
|
|
|
Purchase purchase = purchaseService.getById(req.getBidId()); |
|
|
Assert.notNull(purchase, "当前标段不存在"); |
|
|
Assert.notNull(purchase, "当前标段不存在"); |
|
|
if (!TenderMainStatus.TO_BE_SUBMIT_FINALLY_INSPECTED_APPLY.eq(purchase.getStatus()) |
|
|
if (!TenderMainStatus.TO_BE_SUBMIT_FINALLY_INSPECTED_APPLY.eq(purchase.getStatus()) |
|
|
&& !TenderMainStatus.FINALLY_INSPECTED_FAILED.eq(purchase.getStatus())) { |
|
|
&& !TenderMainStatus.FINALLY_INSPECTED_FAILED.eq(purchase.getStatus())) { |
|
@@ -360,21 +358,6 @@ public class FinalAcceptanceManage { |
|
|
projectInst.setInstCode(instanceId); |
|
|
projectInst.setInstCode(instanceId); |
|
|
projectInst.setProjectId(req.getProjectId()); |
|
|
projectInst.setProjectId(req.getProjectId()); |
|
|
projectInstService.save(projectInst); |
|
|
projectInstService.save(projectInst); |
|
|
|
|
|
|
|
|
if (ProjectStatus.ON_PILOT_RUNNING.eq(project.getStatus())) { |
|
|
|
|
|
// 判断是否所有标段已经进行过终验申报 无论是否通过 |
|
|
|
|
|
LambdaQueryWrapper<PurchaseInst> purchaseInstQuery = Wrappers.lambdaQuery(PurchaseInst.class) |
|
|
|
|
|
.select(PurchaseInst::getBidId) |
|
|
|
|
|
.eq(PurchaseInst::getInstType, ProjectProcessType.ACCEPTANCE_DECLARATION_APPROVAL_PROCESS.getCode()) |
|
|
|
|
|
.in(PurchaseInst::getBidId, purchaseMap.keySet()); |
|
|
|
|
|
List<PurchaseInst> currPurchaseInstList = purchaseInstService.list(purchaseInstQuery); |
|
|
|
|
|
Set<Long> finalInspectedBidIds = CollUtils.fieldSet(currPurchaseInstList, PurchaseInst::getBidId); |
|
|
|
|
|
int needFinalAcceptCount = CollUtil.count(purchases, w -> BidTypeEnum.BUILD_APP.eq(w.getBidType())); |
|
|
|
|
|
if (finalInspectedBidIds.size() == needFinalAcceptCount) { |
|
|
|
|
|
projectStateMachineUtil.pass(project); |
|
|
|
|
|
projectService.updateById(project); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
//发送给第一个审批人消息 |
|
|
//发送给第一个审批人消息 |
|
|
SpringUtil.publishEvent(MhTodoHandedEvent.of(MHTodoTypeEnum.FINAL_INSPECT_APPLY, req.getBidId())); |
|
|
SpringUtil.publishEvent(MhTodoHandedEvent.of(MHTodoTypeEnum.FINAL_INSPECT_APPLY, req.getBidId())); |
|
|
return instanceId; |
|
|
return instanceId; |
|
|