diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/controller/ProjectSectionController.java b/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/controller/ProjectSectionController.java index 987c8d0..104478c 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/controller/ProjectSectionController.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/controller/ProjectSectionController.java @@ -416,5 +416,31 @@ public class ProjectSectionController{ return BaseResponse.success(projectSectionService.selectByPlanIds(planIds)); } + + /** + * 根据标段集合资审定标到招标 + * @param sectionIds 项目标段ID + * @return 返回结果 + */ + @ApiOperation("根据标段集合资审定标到招标") + @PostMapping("/qualificationEvaluationToBidByIds") + @PreAuthorize("hasAnyAuthority('ebtp-purchase','ebtp-agency-project-manager')") + public BaseResponse qualificationEvaluationToBidByIds(@ApiParam(value = "项目标段ID", required = true) @RequestBody List sectionIds){ + + return BaseResponse.success(projectSectionService.qualificationEvaluationToBidByIds(sectionIds)); + } + + /** + * 根据标段集合定标到归档 + * @param sectionIds 项目标段ID + * @return 返回结果 + */ + @ApiOperation("根据标段集合定标到归档") + @PostMapping("/calibrationToArchiveByIds") + @PreAuthorize("hasAnyAuthority('ebtp-purchase','ebtp-agency-project-manager')") + public BaseResponse calibrationToArchiveByIds(@ApiParam(value = "项目标段ID", required = true) @RequestBody List sectionIds){ + + return BaseResponse.success(projectSectionService.calibrationToArchiveByIds(sectionIds)); + } } diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/IProjectSectionService.java b/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/IProjectSectionService.java index e11d161..a99ab3c 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/IProjectSectionService.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/IProjectSectionService.java @@ -215,4 +215,18 @@ public interface IProjectSectionService extends IBaseService{ * @return 返回结果 */ List selectByPlanIds(List planIds); + + /** + * 根据标段集合资审定标到招标 + * @param sectionIds 项目标段ID + * @return 返回结果 + */ + boolean qualificationEvaluationToBidByIds(List sectionIds); + + /** + * 根据标段集合定标到归档 + * @param sectionIds 项目标段ID + * @return 返回结果 + */ + boolean calibrationToArchiveByIds(List sectionIds); } diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/impl/ProjectSectionServiceImpl.java b/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/impl/ProjectSectionServiceImpl.java index 60d1d58..bf14779 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/impl/ProjectSectionServiceImpl.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/impl/ProjectSectionServiceImpl.java @@ -582,6 +582,63 @@ public class ProjectSectionServiceImpl extends BaseServiceImpl sectionIds) { + boolean result = false; + if(!CollectionUtils.isEmpty(sectionIds)){ + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.in("id",sectionIds); + updateWrapper.eq("business_module", ProjectCommonUtil.BUSINESS_MODULE_6); + updateWrapper.set("business_module",ProjectCommonUtil.BUSINESS_MODULE_7); + + result = this.update(updateWrapper); + + ProjectExceptionEnum.FRAME_EXCEPTION_PROJECT_SECTION_UPDATE_MODULE.customValid(!result); + + sectionFlowService.saveSectionList(sectionIds,ProjectCommonUtil.BUSINESS_MODULE_6,ProjectCommonUtil.BUSINESS_MODULE_7); + + //初始化评审室信息 + //1 获取标段信息 + LambdaQueryWrapper sectionQueryWrapper = Wrappers.lambdaQuery(); + sectionQueryWrapper.in(ProjectSection::getId,sectionIds); + List projectSectionList = this.list(sectionQueryWrapper); + + if(!CollectionUtils.isEmpty(projectSectionList)){ + List chooseProcessList = projectSectionList.stream().map(ProjectSection::getChooseProcess).collect(Collectors.toList()); + //2获取流程信息 + LambdaQueryWrapper processQueryWrapper = Wrappers.lambdaQuery(); + processQueryWrapper.in(DictChooseProcess::getChooseProcess,chooseProcessList); + List dictChooseProcessList = chooseProcessService.list(processQueryWrapper); + Map dictChooseProcessMap = dictChooseProcessList.stream().collect(Collectors.toMap(DictChooseProcess::getChooseProcess,c -> c)); + //3拼装参数调用通知 + Map sectionMaps = new LinkedHashMap<>(); + for (ProjectSection section:projectSectionList) { + sectionMaps.put(section.getId(),dictChooseProcessMap.get(section.getChooseProcess()).getQualFlowId()); + } + recordService.initialize(projectSectionList.get(0).getProjectId(), false, sectionMaps); + }else{ + ProjectExceptionEnum.FRAME_EXCEPTION_PROJECT_SECTION_NOT_FIND.throwException(); + } + }else{ + ProjectExceptionEnum.FRAME_EXCEPTION_PROJECT_SECTION_NOT_FIND.throwException(); + } + return result; + } + + @Override + public boolean calibrationToArchiveByIds(List sectionIds) { + UpdateWrapper updateWrapper = Wrappers.update(); + updateWrapper.in("id",sectionIds); + updateWrapper.set("business_module",ProjectCommonUtil.BUSINESS_MODULE_12); + + boolean result = this.update(updateWrapper); + + ProjectExceptionEnum.FRAME_EXCEPTION_PROJECT_SECTION_UPDATE_MODULE.customValid(!result); + + sectionFlowService.saveSectionList(sectionIds,ProjectCommonUtil.BUSINESS_MODULE_11,ProjectCommonUtil.BUSINESS_MODULE_12); + return result; + } + /** * 拼装标段模块修改流程实体并插入数据 * @param sectionId 标段ID