|
@@ -947,200 +947,24 @@ public class PlanYearsServiceImpl extends ServiceImpl<PlanYearsMapper, PlanYears
|
|
|
// 需求建党 4之后(不包括4)
|
|
|
// 任务下达 8之后(不包括8)
|
|
|
// 采购执行 9之后(不包括9)
|
|
|
- // 合同信息 15之后(不包括15)
|
|
|
- // 项目建设 17
|
|
|
+ // 合同信息 19之后(不包括19)
|
|
|
+ // 项目建设 21
|
|
|
Integer projectStatus = Integer.valueOf(pmDemand.getProjectStatus());
|
|
|
- if (projectStatus <= 4) {
|
|
|
+ if (projectStatus <= 4 || projectStatus == 18) {
|
|
|
detailType = "1";
|
|
|
} else if (4 < projectStatus && projectStatus <= 8) {
|
|
|
detailType = "2";
|
|
|
} else if (8 < projectStatus && projectStatus <= 9) {
|
|
|
detailType = "3";
|
|
|
- } else if (9 < projectStatus && projectStatus <= 15) {
|
|
|
+ } else if (9 < projectStatus && projectStatus <= 19 && projectStatus != 18) {
|
|
|
detailType = "4";
|
|
|
- } else if (15 < projectStatus && projectStatus < 17) {
|
|
|
+ } else if (19 < projectStatus && projectStatus < 21) {
|
|
|
detailType = "5";
|
|
|
- } else if (projectStatus == 17) {
|
|
|
+ } else if (projectStatus == 21) {
|
|
|
detailType = "6";
|
|
|
}
|
|
|
}
|
|
|
- Long demandId = pmDemand.getDemandId();
|
|
|
- PmDemandResVo vo = new PmDemandResVo();
|
|
|
- vo.setDemandId(demandId);
|
|
|
- vo.setDetailType(detailType);
|
|
|
- if ("1".equals(detailType)) { //项目计划
|
|
|
- BeanUtils.copyProperties(pmDemand, vo);
|
|
|
- SysDeptResponseVo sysDeptResponseVo = (SysDeptResponseVo) deptService.selectDeptById(vo.getPurchaseDeptId()).get("sysDept");
|
|
|
- if (sysDeptResponseVo != null) {
|
|
|
- vo.setPurchaseDeptName(sysDeptResponseVo.getDeptName());
|
|
|
- }
|
|
|
- String purchaseServicesName = dictDataService.selectDictLabel("purchase_services", vo.getPurchaseServices());
|
|
|
- if (StringUtils.isNotEmpty(purchaseServicesName)) {
|
|
|
- vo.setPurchaseServicesName(purchaseServicesName);
|
|
|
- }
|
|
|
- //采购需求附件
|
|
|
- List<SysFileInfo> demandFileInfos = getSysFileInfoList(vo.getDemandId(), SysFileRefEnum.PM_DEMAND.getType());
|
|
|
- if (!ObjectUtils.isEmpty(demandFileInfos)) {
|
|
|
- vo.setDemandFileInfos(demandFileInfos);
|
|
|
- }
|
|
|
- //项目类型
|
|
|
- for (ProjectTypes value : ProjectTypes.values()) {
|
|
|
- if (vo.getProjectType() != null && vo.getProjectType().equals(value.getCode())) {
|
|
|
- vo.setProjectTypeName(value.getInfo());
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- //项目属性
|
|
|
- for (ProjectAttribute value : ProjectAttribute.values()) {
|
|
|
- if (vo.getProjectAttr() != null && vo.getProjectAttr().equals(value.getCode())) {
|
|
|
- vo.setProjectAttrName(value.getInfo());
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- //预警状态
|
|
|
- for (WarnStatus value : WarnStatus.values()) {
|
|
|
- if (vo.getWarnStatus() != null && vo.getWarnStatus().equals(value.getCode())) {
|
|
|
- vo.setWarnStatusName(value.getInfo());
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- //项目状态
|
|
|
- for (PmProjectStatus value : PmProjectStatus.values()) {
|
|
|
- if (vo.getProjectStatus() != null && vo.getProjectStatus().equals(value.getCode())) {
|
|
|
- vo.setProjectStatusName(value.getInfo());
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- } else if ("2".equals(detailType)) { //需求建档
|
|
|
- //采购需求审核文件
|
|
|
- List<SysFileInfo> auditFileInfos = getSysFileInfoList(vo.getDemandId(), SysFileRefEnum.PM_DEMAND_EXAMINE.getType());
|
|
|
- if (!ObjectUtils.isEmpty(auditFileInfos)) {
|
|
|
- vo.setAuditFileInfos(auditFileInfos);
|
|
|
- }
|
|
|
- LambdaQueryWrapper<PmBookBuilding> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- lambdaQueryWrapper.eq(PmBookBuilding::getDemandId, demandId);
|
|
|
- PmBookBuilding pmBookBuilding = pmBookBuildingService.getOne(lambdaQueryWrapper);
|
|
|
- if (pmBookBuilding != null) {
|
|
|
- PmBookBuildingResVo responseVo = new PmBookBuildingResVo();
|
|
|
- BeanUtils.copyProperties(pmBookBuilding, responseVo);
|
|
|
-
|
|
|
- List<SysFileInfo> fileInfos = getSysFileInfoList(pmBookBuilding.getId(), SysFileRefEnum.PM_BOOK_BUILDING.getType());
|
|
|
- if (!ObjectUtils.isEmpty(fileInfos)) {
|
|
|
- responseVo.setFileInfos(fileInfos);
|
|
|
- }
|
|
|
- vo.setPmBookBuildingResVo(responseVo);
|
|
|
- }
|
|
|
- } else if ("3".equals(detailType)) { //任务下达
|
|
|
- //任务下达文件
|
|
|
- List<SysFileInfo> taskReleaseFileInfos = getSysFileInfoList(vo.getDemandId(), SysFileRefEnum.PM_TAST_RELEASE.getType());
|
|
|
- if (!ObjectUtils.isEmpty(taskReleaseFileInfos)) {
|
|
|
- vo.setTaskReleaseFileInfos(taskReleaseFileInfos);
|
|
|
- }
|
|
|
- } else if ("4".equals(detailType)) { //中标信息
|
|
|
- PmPurchaseExecutionResVo pmPurchaseExecutionResVo = new PmPurchaseExecutionResVo();
|
|
|
- List<SysFileInfo> fileInfosAll = new ArrayList<>();
|
|
|
- //代理商信息
|
|
|
- BaseAgency baseAgency = this.baseAgencyService.getById(pmDemand.getAgencyId());
|
|
|
- pmPurchaseExecutionResVo.setBaseAgency(baseAgency);
|
|
|
- //发布公告列表
|
|
|
- LambdaQueryWrapper<PmReleaseAnnouncement> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- lambdaQueryWrapper.eq(PmReleaseAnnouncement::getDemandId, demandId);
|
|
|
- List<PmReleaseAnnouncement> pmReleaseAnnouncementList = this.pmReleaseAnnouncementService.list(lambdaQueryWrapper);
|
|
|
- if (!ObjectUtils.isEmpty(pmReleaseAnnouncementList)) {
|
|
|
- List<PmReleaseAnnouncementResVo> pmReleaseAnnouncementResVoList = new ArrayList<>();
|
|
|
- for (PmReleaseAnnouncement pmReleaseAnnouncement : pmReleaseAnnouncementList) {
|
|
|
- PmReleaseAnnouncementResVo pmReleaseAnnouncementResVo = new PmReleaseAnnouncementResVo();
|
|
|
- BeanUtils.copyProperties(pmReleaseAnnouncement, pmReleaseAnnouncementResVo);
|
|
|
- List<SysFileInfo> fileInfos = getSysFileInfoList(pmReleaseAnnouncement.getId(), SysFileRefEnum.PM_ANNOUNCEMENT_FILE.getType());
|
|
|
- if (!ObjectUtils.isEmpty(fileInfos)) {
|
|
|
- fileInfosAll.addAll(fileInfos);
|
|
|
- }
|
|
|
- pmReleaseAnnouncementResVoList.add(pmReleaseAnnouncementResVo);
|
|
|
- }
|
|
|
- pmPurchaseExecutionResVo.setPmReleaseAnnouncementResVoList(pmReleaseAnnouncementResVoList);
|
|
|
- }
|
|
|
- //专家信息列表
|
|
|
- List<PmBaseExpertResVo> pmBaseExpertResVoList = this.pmDemandExpertRefService.getPmBaseExpertResVoList(demandId);
|
|
|
- pmPurchaseExecutionResVo.setPmBaseExpertResVoList(pmBaseExpertResVoList);
|
|
|
- //开标信息列表
|
|
|
- List<PmBidOpeningResVo> pmBidOpeningResVoList = this.pmBidOpeningService.getPmBidOpeningResVoList(demandId);
|
|
|
- pmPurchaseExecutionResVo.setPmBidOpeningResVoList(pmBidOpeningResVoList);
|
|
|
- //中标信息列表
|
|
|
- LambdaQueryWrapper<PmBidWinning> lambdaQueryWrapper1 = new LambdaQueryWrapper<>();
|
|
|
- lambdaQueryWrapper1.eq(PmBidWinning::getDemandId, demandId).orderByDesc(PmBidWinning::getBidAnnouncementTime);
|
|
|
- List<PmBidWinning> pmBidWinningList = this.pmBidWinningService.list(lambdaQueryWrapper1);
|
|
|
- if (!ObjectUtils.isEmpty(pmBidWinningList)) {
|
|
|
- List<PmBidWinningResVo> pmBidWinningResVoList = new ArrayList<>();
|
|
|
- for (PmBidWinning pmBidWinning : pmBidWinningList) {
|
|
|
- PmBidWinningResVo pmBidWinningResVo = new PmBidWinningResVo();
|
|
|
- BeanUtils.copyProperties(pmBidWinning, pmBidWinningResVo);
|
|
|
- List<SysFileInfo> fileInfos = getSysFileInfoList(pmBidWinning.getId(), SysFileRefEnum.PM_BID_WINNING_FILE.getType());
|
|
|
- if (!ObjectUtils.isEmpty(fileInfos)) {
|
|
|
- fileInfosAll.addAll(fileInfos);
|
|
|
- }
|
|
|
- pmBidWinningResVoList.add(pmBidWinningResVo);
|
|
|
- }
|
|
|
- pmPurchaseExecutionResVo.setPmBidWinningResVoList(pmBidWinningResVoList);
|
|
|
- }
|
|
|
- //质疑情况
|
|
|
- List<SysFileInfo> callRequestFileInfos = getSysFileInfoList(vo.getDemandId(), SysFileRefEnum.PM_BID_CALL_QEUSTION_FILE.getType());
|
|
|
- if (!ObjectUtils.isEmpty(callRequestFileInfos)) {
|
|
|
- // TODO
|
|
|
- //pmPurchaseExecutionResVo.setCallRequestFileInfos(callRequestFileInfos);
|
|
|
- }
|
|
|
- //流标情况
|
|
|
- LambdaQueryWrapper<PmBidFailure> lambdaQueryWrapper2 = new LambdaQueryWrapper<>();
|
|
|
- lambdaQueryWrapper2.eq(PmBidFailure::getDemandId, demandId).orderByDesc(PmBidFailure::getBidFailureTime);
|
|
|
- List<PmBidFailure> pmBidFailureList = this.pmBidFailureService.list(lambdaQueryWrapper2);
|
|
|
- if (!ObjectUtils.isEmpty(pmBidFailureList)) {
|
|
|
- List<PmBidFailureResVo> pmBidFailureResVoList = new ArrayList<>();
|
|
|
- for (PmBidFailure pmBidFailure : pmBidFailureList) {
|
|
|
- PmBidFailureResVo pmBidFailureResVo = new PmBidFailureResVo();
|
|
|
- BeanUtils.copyProperties(pmBidFailure, pmBidFailureResVo);
|
|
|
- List<SysFileInfo> fileInfos = getSysFileInfoList(pmBidFailure.getId(), SysFileRefEnum.PM_BID_FAILURE_FILE.getType());
|
|
|
- if (!ObjectUtils.isEmpty(fileInfos)) {
|
|
|
- fileInfosAll.addAll(fileInfos);
|
|
|
- }
|
|
|
- pmBidFailureResVoList.add(pmBidFailureResVo);
|
|
|
- }
|
|
|
- pmPurchaseExecutionResVo.setPmBidFailureResVoList(pmBidFailureResVoList);
|
|
|
- }
|
|
|
- //中标通知书
|
|
|
- List<SysFileInfo> pmBidWinningNotificationFileInfos = getSysFileInfoList(vo.getDemandId(), SysFileRefEnum.PM_BID_WINNING_NOTIFICATION.getType());
|
|
|
- if (!ObjectUtils.isEmpty(pmBidWinningNotificationFileInfos)) {
|
|
|
- fileInfosAll.addAll(pmBidWinningNotificationFileInfos);
|
|
|
- }
|
|
|
- pmPurchaseExecutionResVo.setFileInfos(fileInfosAll);
|
|
|
- vo.setPmPurchaseExecutionResVo(pmPurchaseExecutionResVo);
|
|
|
- } else if ("5".equals(detailType)) { //合同信息
|
|
|
- LambdaQueryWrapper<PmContractInfo> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- lambdaQueryWrapper.eq(PmContractInfo::getDemandId, demandId);
|
|
|
- PmContractInfo pmContractInfo = pmContractInfoService.getOne(lambdaQueryWrapper);
|
|
|
- if (pmContractInfo != null) {
|
|
|
- PmContractInfoResVo pmContractInfoResVo = new PmContractInfoResVo();
|
|
|
- BeanUtils.copyProperties(pmContractInfo, pmContractInfoResVo);
|
|
|
- //合同信息文件
|
|
|
- List<SysFileInfo> fileInfos = getSysFileInfoList(pmContractInfo.getId(), SysFileRefEnum.PM_CONTRACT_INFO.getType());
|
|
|
- if (!ObjectUtils.isEmpty(fileInfos)) {
|
|
|
- pmContractInfoResVo.setFileInfos(fileInfos);
|
|
|
- }
|
|
|
- vo.setPmContractInfoResVo(pmContractInfoResVo);
|
|
|
- }
|
|
|
- } else if ("6".equals(detailType)) { //建设情况
|
|
|
- LambdaQueryWrapper<PmProjectConstruction> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- lambdaQueryWrapper.eq(PmProjectConstruction::getDemandId, demandId);
|
|
|
- PmProjectConstruction pmProjectConstruction = pmProjectConstructionService.getOne(lambdaQueryWrapper);
|
|
|
- if (pmProjectConstruction != null) {
|
|
|
- PmProjectConstructionResVo pmProjectConstructionResVo = new PmProjectConstructionResVo();
|
|
|
- BeanUtils.copyProperties(pmProjectConstruction, pmProjectConstructionResVo);
|
|
|
- //建设情况文件
|
|
|
- List<SysFileInfo> fileInfos = getSysFileInfoList(pmProjectConstruction.getId(), SysFileRefEnum.PM_PROJECT_CONSTRUCTION.getType());
|
|
|
- if (!ObjectUtils.isEmpty(fileInfos)) {
|
|
|
- pmProjectConstructionResVo.setFileInfos(fileInfos);
|
|
|
- }
|
|
|
- vo.setPmProjectConstructionResVo(pmProjectConstructionResVo);
|
|
|
- }
|
|
|
- }
|
|
|
+ PmDemandResVo vo = demandService.selectPmDemandByDemandId(pmDemand.getDemandId(),detailType);
|
|
|
return AjaxResult.success(vo);
|
|
|
} else {
|
|
|
if (StringUtils.isNotNull(provisionalPlan)) {
|