From ce509d7296051c0b2ee422ce4f07c416c9ffce2e Mon Sep 17 00:00:00 2001 From: PoffyZhang <99775271@qq.com> Date: Sat, 7 Oct 2023 16:42:33 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=90=E7=BB=B4=20=E8=8D=89=E7=A8=BF?= =?UTF-8?q?=E7=AE=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/GovProjectCollectionController.java | 12 ++ .../gov/manage/GovProjectCollectionManage.java | 100 ++++++++++++++ .../gov/mapper/GovOperationProjectDraftMapper.java | 16 +++ .../gov/model/entity/GovOperationProjectDraft.java | 143 +++++++++++++++++++++ .../service/IGovOperationProjectDraftService.java | 16 +++ .../impl/GovOperationProjectDraftServiceImpl.java | 21 +++ 6 files changed, 308 insertions(+) create mode 100644 pmapi/src/main/java/com/ningdatech/pmapi/gov/mapper/GovOperationProjectDraftMapper.java create mode 100644 pmapi/src/main/java/com/ningdatech/pmapi/gov/model/entity/GovOperationProjectDraft.java create mode 100644 pmapi/src/main/java/com/ningdatech/pmapi/gov/service/IGovOperationProjectDraftService.java create mode 100644 pmapi/src/main/java/com/ningdatech/pmapi/gov/service/impl/GovOperationProjectDraftServiceImpl.java diff --git a/pmapi/src/main/java/com/ningdatech/pmapi/gov/controller/GovProjectCollectionController.java b/pmapi/src/main/java/com/ningdatech/pmapi/gov/controller/GovProjectCollectionController.java index 5d29a68..07f7c0a 100644 --- a/pmapi/src/main/java/com/ningdatech/pmapi/gov/controller/GovProjectCollectionController.java +++ b/pmapi/src/main/java/com/ningdatech/pmapi/gov/controller/GovProjectCollectionController.java @@ -97,12 +97,24 @@ public class GovProjectCollectionController { return collectionManage.draftList(req); } + @GetMapping("/operation/draft-list") + @ApiOperation("运维项目归集草稿箱列表") + public PageVo operationDraftList(ProjectListReq req) { + return collectionManage.operationDraftList(req); + } + @GetMapping("/draft-detail/{draftId}") @ApiOperation("项目归集草稿箱详情") public GovBizProjectDetailVO draftDetail(@PathVariable Long draftId) { return collectionManage.draftDetail(draftId); } + @GetMapping("/operation/draft-detail/{draftId}") + @ApiOperation("运维项目归集草稿箱详情") + public GovBizProjectDetailVO operationDraftDetail(@PathVariable Long draftId) { + return collectionManage.operationDraftDetail(draftId); + } + @PostMapping("/draft") @ApiOperation("项目归集暂存草稿箱") @WebLog("项目归集暂存草稿箱") diff --git a/pmapi/src/main/java/com/ningdatech/pmapi/gov/manage/GovProjectCollectionManage.java b/pmapi/src/main/java/com/ningdatech/pmapi/gov/manage/GovProjectCollectionManage.java index e11a4ca..52e1cb6 100644 --- a/pmapi/src/main/java/com/ningdatech/pmapi/gov/manage/GovProjectCollectionManage.java +++ b/pmapi/src/main/java/com/ningdatech/pmapi/gov/manage/GovProjectCollectionManage.java @@ -91,6 +91,8 @@ public class GovProjectCollectionManage { private final IGovBizProjectDraftService draftService; + private final IGovOperationProjectDraftService operationProjectDraftService; + private final RestTemplate restTemplate; private final WpsConvertManage wpsConvertManage; @@ -293,6 +295,44 @@ public class GovProjectCollectionManage { return PageVo.of(res,page.getTotal()); } + public PageVo operationDraftList(ProjectListReq req) { + UserInfoDetails user = LoginUserUtil.loginUserDetail(); + Page page = req.page(); + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(GovOperationProjectDraft.class) + .like(StringUtils.isNotBlank(req.getProjectName()),GovOperationProjectDraft::getBaseProjName,req.getProjectName()) + .like(StringUtils.isNotBlank(req.getBuildOrg()),GovOperationProjectDraft::getBaseBuildDeprt,req.getBuildOrg()) + .eq(StringUtils.isNotBlank(req.getAreaCode()),GovOperationProjectDraft::getBaseAreaCode,req.getAreaCode() + BizConst.NINE_AREA_CODE_LAST) + .eq(StringUtils.isNotBlank(req.getRegionCode()),GovOperationProjectDraft::getBaseAreaCode,req.getRegionCode() + BizConst.NINE_AREA_CODE_LAST) + .gt(Objects.nonNull(req.getCreateOnMin()),GovOperationProjectDraft::getTongTime,req.getCreateOnMin()) + .le(Objects.nonNull(req.getCreateOnMax()),GovOperationProjectDraft::getTongTime,req.getCreateOnMax()) + .eq(StringUtils.isNotBlank(req.getProjectType()),GovOperationProjectDraft::getBaseProjType,req.getProjectType()) + .eq(GovOperationProjectDraft::getDeleted,Boolean.FALSE) + .eq(GovOperationProjectDraft::getCreateId,user.getUserId()) + .orderByDesc(GovOperationProjectDraft::getBizTime); + operationProjectDraftService.page(page,wrapper); + + if(CollUtil.isEmpty(page.getRecords())){ + return PageVo.empty(); + } + + List res = page.getRecords().stream().map(p -> { + GovBizProjectListVO vo = new GovBizProjectListVO(); + vo.setBaseAreaCode(p.getBaseAreaCode()); + vo.setBaseAreaName(p.getBaseAreaName()); + vo.setBaseBuildDeprt(p.getBaseBuildDeprt()); + vo.setBaseBuildDeprtDing(p.getBaseBuildDeprtDing()); + vo.setBaseProjId(p.getBaseProjId()); + vo.setBaseProjName(p.getBaseProjName()); + vo.setBaseProjDeclAmount(p.getBaseProjDeclAmount()); + vo.setBaseProjTotalAmount(p.getBaseProjTotalAmount()); + vo.setBaseProjSetYear(p.getBaseProjSetYear()); + vo.setDraftId(p.getId()); + return vo; + }).collect(Collectors.toList()); + + return PageVo.of(res,page.getTotal()); + } + /** * 数据权限 * @param wrapper @@ -527,6 +567,66 @@ public class GovProjectCollectionManage { return res; } + + public GovBizProjectDetailVO operationDraftDetail(Long draftId) { + GovBizProjectDetailVO res = new GovBizProjectDetailVO(); + //查询草稿表 + GovOperationProjectDraft draft = operationProjectDraftService.getById(draftId); + + if(Objects.isNull(draft)){ + return null; + } + res.setDraftId(draftId); + + //1.基本信息 + res.setBaseProjId(draft.getBaseProjId()); + res.setBaseProjName(draft.getBaseProjName()); + res.setBaseinfo(BeanUtil.copyProperties(draft, GovBizProjectBaseinfoVO.class)); + + //2.申报信息 + res.setApply(BeanUtil.copyProperties(draft, GovBizProjectApplyVO.class)); + + //3.再查 审批信息 + res.setApprove(BeanUtil.copyProperties(draft, GovBizProjectApproveVO.class)); + + //4 对应查询 实施项目还是运维项目 + GovBizProjectCimplementVO cimplementVo = BeanUtil.copyProperties(draft, GovBizProjectCimplementVO.class); + cimplementVo.setBaseChanFile(draft.getBaseChanFileCimplement()); + cimplementVo.setBaseEstaSummFile(draft.getBaseEstaSummFileCimplement()); + cimplementVo.setBaseEngineerPostpoFile(draft.getBaseEngineerPostpoFileCimplement()); + cimplementVo.setBaseInforLevelFile(draft.getBaseInforLevelFileCimplement()); + cimplementVo.setBasePasswAssessFile(draft.getBasePasswAssessFileCimplement()); + cimplementVo.setBaseUserConsFile(draft.getBaseUserConsFileCimplement()); + cimplementVo.setBaseThirdAcceptFile(draft.getBaseThirdAcceptFileCimplement()); + cimplementVo.setBaseFinalExpertOpinionFile(draft.getBaseFinalExpertOpinionFileCimplement()); + cimplementVo.setBaseLogAggregation(draft.getBaseLogAggregationCimplement()); + cimplementVo.setBaseBusinessMetrics(draft.getBaseBusinessMetricsCimplement()); + res.setCimplement(cimplementVo); + GovBizProjectMimplementVO mimplementVo = BeanUtil.copyProperties(draft, GovBizProjectMimplementVO.class); + mimplementVo.setBaseChanFile(draft.getBaseChanFileMimplement()); + mimplementVo.setBaseEstaSummFile(draft.getBaseEstaSummFileMimplement()); + mimplementVo.setBaseEngineerPostpoFile(draft.getBaseEngineerPostpoFileMimplement()); + mimplementVo.setBaseInforLevelFile(draft.getBaseInforLevelFileMimplement()); + mimplementVo.setBasePasswAssessFile(draft.getBasePasswAssessFileMimplement()); + mimplementVo.setBaseUserConsFile(draft.getBaseUserConsFileMimplement()); + mimplementVo.setBaseThirdAcceptFile(draft.getBaseThirdAcceptFileMimplement()); + mimplementVo.setBaseFinalExpertOpinionFile(draft.getBaseFinalExpertOpinionFileMimplement()); + mimplementVo.setBaseLogAggregation(draft.getBaseLogAggregationMimplement()); + mimplementVo.setBaseBusinessMetrics(draft.getBaseBusinessMetricsMimplement()); + res.setMimplement(mimplementVo); + + //5.最后查询采购信息 + if(StringUtils.isNotBlank(draft.getProcure())){ + try{ + res.setProcures(JSON.parseArray(draft.getProcure(),GovBizProjectProcureVO.class)); + }catch (Exception e){ + log.error("草稿箱采购出错:" + e.getMessage()); + } + } + + return res; + } + /** * 项目归集保存 * @param saveDTO diff --git a/pmapi/src/main/java/com/ningdatech/pmapi/gov/mapper/GovOperationProjectDraftMapper.java b/pmapi/src/main/java/com/ningdatech/pmapi/gov/mapper/GovOperationProjectDraftMapper.java new file mode 100644 index 0000000..c301fb0 --- /dev/null +++ b/pmapi/src/main/java/com/ningdatech/pmapi/gov/mapper/GovOperationProjectDraftMapper.java @@ -0,0 +1,16 @@ +package com.ningdatech.pmapi.gov.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ningdatech.pmapi.gov.model.entity.GovOperationProjectDraft; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zpf + * @since 2023-08-23 + */ +public interface GovOperationProjectDraftMapper extends BaseMapper { + +} diff --git a/pmapi/src/main/java/com/ningdatech/pmapi/gov/model/entity/GovOperationProjectDraft.java b/pmapi/src/main/java/com/ningdatech/pmapi/gov/model/entity/GovOperationProjectDraft.java new file mode 100644 index 0000000..9df5c2d --- /dev/null +++ b/pmapi/src/main/java/com/ningdatech/pmapi/gov/model/entity/GovOperationProjectDraft.java @@ -0,0 +1,143 @@ +package com.ningdatech.pmapi.gov.model.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.time.LocalDateTime; + +/** + * @Classname GovBizProjectDraft + * @Description + * @Date 2023/9/5 11:05 + * @Author PoffyZhang + */ +@Data +@TableName("gov_operation_project_draft") +@ApiModel(value = "GovOperationProjectDraft", description = "草稿") +public class GovOperationProjectDraft implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("主键") + @TableId(type = IdType.AUTO) + private Long id; + private String baseProjId; + private String baseProjName; + private String baseAreaName; + private String baseAreaCode; + private String baseProjIsConfidentiality; + private String baseProjType; + private String baseConstructionType; + private String baseProjSetProg; + private String isEffective; + + @ApiModelProperty("是否省级 1省级 2非省级") + private Integer baseProvManDeprtType; + + private String baseProvManDeprt; + private String baseProvManDeprtDing; + private String baseManDeprt; + private String baseManDeprtDing; + private String baseManDepartUsci; + private String baseBuildDeprt; + private String baseBuildDeprtDing; + private String baseBuildDepartUsci; + private String baseProjPrincipal; + private String baseProjPrincipalCall; + private String baseProjContacts; + private String baseProjContactsCall; + private Boolean deleted; + + private String baseDevelopCode; + private String setProjCodeFinan; + private String baseHistorProjName; + private String baseHistorProjId; + private String baseHistorProjYear; + private String baseProjSys; + private String baseProjSysCode; + private String baseAccountAppName; + private String baseBrainName; + private String baseCoreBusiness; + private String baseCoreBusinessCode; + private LocalDateTime baseProjStartTime; + private LocalDateTime baseProjEndTime; + private LocalDateTime baseProjDuration; + private String baseProjSetYear; + private String baseProjAmountOri; + private String baseBasisAmountOri; + private BigDecimal baseProjTotalAmount; + private BigDecimal baseProjDeclAmount; + private String baseProjConsClass; + private String baseLowestLevel; + private String baseProjBasis; + private String baseBasisEstablish; + private String baseProjBasisFile; + private String baseProjIntro; + private String beseExpectedResults; + private String baseResearchReportFile; + private String baseProjApplyFile; + private String baseOperatMaintenFile; + private String baseProjOtherFile; + private String baseProjRemark; + + private String baseReviewResults; + private String baseReviewOpinion; + private String baseReviewCommentsFile; + private BigDecimal baseExpertTotalMoney; + private BigDecimal baseExpertYearMoney; + private String approvalFile; + private BigDecimal baseInitialReviewTotalMoney; + private BigDecimal baseProjReplyAmount; + private String equalProtectionLevel; + private String preliminaryDesignScheme; + private String preliminaryDesignFile; + private BigDecimal releaseYearMoney; + + private String baseBidCode; + private String baseBidName; + + private String baseInitialOpinionFile; + private String baseInforLevelFileCimplement; + private String basePasswAssessFileCimplement; + private String baseThirdAcceptFileCimplement; + private String baseCheckFile; + private String baseFinanlAuditFile; + private String baseUserConsFileCimplement; + private String baseEstaSummFileCimplement; + private String baseIrsTestRunFile; + private String baseSummReportFile; + private String baseLogAggregationCimplement; + private String baseBusinessMetricsCimplement; + private String baseFinalExpertOpinionFileCimplement; + private String baseEngineerPostpoFileCimplement; + private String baseChangeFormFile; + private String baseChanFileCimplement; + + private String baseInforLevelFileMimplement; + private String basePasswAssessFileMimplement; + private String baseThirdAcceptFileMimplement; + private String baseUserConsFileMimplement; + private String baseEstaSummFileMimplement; + private String baseOperatMaintenSummFile; + private String baseLogAggregationMimplement; + private String baseBusinessMetricsMimplement; + private String baseFinalExpertOpinionFileMimplement; + private String baseEngineerPostpoFileMimplement; + private String baseEngineerAlterFile; + private String baseChanFileMimplement; + + private String procure; + + private String areaCode; + private LocalDateTime bizTime; + private String op; + private LocalDateTime tongTime; + private LocalDateTime updateOn; + private String updateBy; + private Long createId; +} diff --git a/pmapi/src/main/java/com/ningdatech/pmapi/gov/service/IGovOperationProjectDraftService.java b/pmapi/src/main/java/com/ningdatech/pmapi/gov/service/IGovOperationProjectDraftService.java new file mode 100644 index 0000000..ca8a100 --- /dev/null +++ b/pmapi/src/main/java/com/ningdatech/pmapi/gov/service/IGovOperationProjectDraftService.java @@ -0,0 +1,16 @@ +package com.ningdatech.pmapi.gov.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ningdatech.pmapi.gov.model.entity.GovOperationProjectDraft; + +/** + *

+ * 服务类 + *

+ * + * @author zpf + * @since 2023-08-23 + */ +public interface IGovOperationProjectDraftService extends IService { + +} diff --git a/pmapi/src/main/java/com/ningdatech/pmapi/gov/service/impl/GovOperationProjectDraftServiceImpl.java b/pmapi/src/main/java/com/ningdatech/pmapi/gov/service/impl/GovOperationProjectDraftServiceImpl.java new file mode 100644 index 0000000..7bd97e6 --- /dev/null +++ b/pmapi/src/main/java/com/ningdatech/pmapi/gov/service/impl/GovOperationProjectDraftServiceImpl.java @@ -0,0 +1,21 @@ +package com.ningdatech.pmapi.gov.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ningdatech.pmapi.gov.mapper.GovOperationProjectDraftMapper; +import com.ningdatech.pmapi.gov.model.entity.GovOperationProjectDraft; +import com.ningdatech.pmapi.gov.service.IGovOperationProjectDraftService; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author zpf + * @since 2023-08-23 + */ +@Service +public class GovOperationProjectDraftServiceImpl extends + ServiceImpl implements IGovOperationProjectDraftService { + +}