diff --git a/pmapi/src/main/java/com/ningdatech/pmapi/dashboard/model/entity/CockpitStats.java b/pmapi/src/main/java/com/ningdatech/pmapi/dashboard/model/entity/CockpitStats.java index 2b8f96e..d8160c9 100644 --- a/pmapi/src/main/java/com/ningdatech/pmapi/dashboard/model/entity/CockpitStats.java +++ b/pmapi/src/main/java/com/ningdatech/pmapi/dashboard/model/entity/CockpitStats.java @@ -101,27 +101,30 @@ public class CockpitStats implements Serializable { @ApiModelProperty("专家-总人数") private Integer expertTotalNum = 0; - @ApiModelProperty("专家-方案合理性") + @ApiModelProperty("专家-方案合理性-擅长") private Integer expertPlanRationalityNum = 0; - @ApiModelProperty("专家-计数可行性评估") + @ApiModelProperty("专家-计数可行性评估-擅长") private Integer expertTechnicalFeasibilityAssessmentNum = 0; - @ApiModelProperty("专家-信创") + @ApiModelProperty("专家-信创-擅长") private Integer expertXinchuangNum = 0; - @ApiModelProperty("专家-软硬件核价") + @ApiModelProperty("专家-软硬件核价-擅长") private Integer expertSoftHardPricingNum = 0; - @ApiModelProperty("专家-党政信息") + @ApiModelProperty("专家-党政信息-擅长") private Integer expertPartyGovInfoNum = 0; - @ApiModelProperty("专家-网络安全") + @ApiModelProperty("专家-网络安全-擅长") private Integer expertNetworkSecurityNum = 0; @ApiModelProperty("专家-信息化专家") private Integer expertPromotionInfoTechnologyNum = 0; + @ApiModelProperty("专家-信创专家") + private Integer expertXinchuangOtherNum = 0; + @ApiModelProperty("专家-财务专家") private Integer expertFinancialNum = 0; diff --git a/pmapi/src/main/java/com/ningdatech/pmapi/projectlib/manage/ProjectRenewalFundManage.java b/pmapi/src/main/java/com/ningdatech/pmapi/projectlib/manage/ProjectRenewalFundManage.java index dd1ce2c..7232413 100644 --- a/pmapi/src/main/java/com/ningdatech/pmapi/projectlib/manage/ProjectRenewalFundManage.java +++ b/pmapi/src/main/java/com/ningdatech/pmapi/projectlib/manage/ProjectRenewalFundManage.java @@ -381,7 +381,7 @@ public class ProjectRenewalFundManage { } //判断金额 - checkPaymentAmount(projectCode,projectYear,dto.getAnnualPaymentAmount()); +// checkPaymentAmount(projectCode,projectYear,dto.getAnnualPaymentAmount()); declaration.setApprovalStatus(ProjectRenewalApprovalStatusEnum.PENDING.name()); if(Objects.nonNull(project)){ diff --git a/pmapi/src/main/java/com/ningdatech/pmapi/scheduler/task/CockpitStatsStatisticsTask.java b/pmapi/src/main/java/com/ningdatech/pmapi/scheduler/task/CockpitStatsStatisticsTask.java index 28b1eb1..7e5f25d 100644 --- a/pmapi/src/main/java/com/ningdatech/pmapi/scheduler/task/CockpitStatsStatisticsTask.java +++ b/pmapi/src/main/java/com/ningdatech/pmapi/scheduler/task/CockpitStatsStatisticsTask.java @@ -21,6 +21,10 @@ import com.ningdatech.pmapi.expert.service.IExpertUserFullInfoService; import com.ningdatech.pmapi.gov.enumeration.GovProjectStatusEnum; import com.ningdatech.pmapi.gov.model.entity.*; import com.ningdatech.pmapi.gov.service.*; +import com.ningdatech.pmapi.meta.model.entity.ExpertTag; +import com.ningdatech.pmapi.meta.model.entity.MetaTag; +import com.ningdatech.pmapi.meta.service.IExpertTagService; +import com.ningdatech.pmapi.meta.service.IMetaTagService; import com.ningdatech.pmapi.performance.model.entity.PerformanceAppraisalProject; import com.ningdatech.pmapi.performance.service.IPerformanceAppraisalProjectService; import com.ningdatech.pmapi.projectlib.enumeration.InstTypeEnum; @@ -109,6 +113,10 @@ public class CockpitStatsStatisticsTask { private List years = Lists.newArrayList(2021,2022,2023,2024,2025); + private final IMetaTagService metaTagService; + + private final IExpertTagService expertTagService; + /** * 定义统计 驾驶舱数据 每天3点开始执行一次 * @@ -366,15 +374,76 @@ public class CockpitStatsStatisticsTask { List experts = expertUserFullInfoService.list(Wrappers.lambdaQuery(ExpertUserFullInfo.class) .eq(StringUtils.isNotBlank(regionCode) && !DashboardConstant.CockpitStats.TOTAL.equals(regionCode), ExpertUserFullInfo::getRegionCode, regionCode)); + + List goodAt = expertTagService.list(Wrappers.lambdaQuery(ExpertTag.class)); + Map> tagMap = goodAt.stream() + .collect(Collectors.groupingBy(ExpertTag::getUserId)); + + String networkCode = "1030000"; + String xinchuangCode = "2040000"; + String fanganCode = "2030000"; + String jishuCode = "2010000"; + String dangzhengCode = "1020000"; + String ruanyingCode = "2020000"; + String caiwuCode = "5600000"; + String xinxihuaCode = "5400000"; + String xinchuangOtherCode = "5500000"; + cockpitStats.setExpertTotalNum(experts.size()); - cockpitStats.setExpertFinancialNum(0); - cockpitStats.setExpertNetworkSecurityNum(0); - cockpitStats.setExpertXinchuangNum(0); - cockpitStats.setExpertPlanRationalityNum(0); - cockpitStats.setExpertPromotionInfoTechnologyNum(0); - cockpitStats.setExpertPartyGovInfoNum(0); - cockpitStats.setExpertSoftHardPricingNum(0); - cockpitStats.setExpertTechnicalFeasibilityAssessmentNum(0); + Integer financialNum = 0; + Integer networkSecurityNum = 0; + Integer xinchuangNum = 0; + Integer planRationalityNum = 0; + Integer promotionInfoTechnologyNum = 0; + Integer partyGovInfoNum = 0; + Integer softHardPricingNum = 0; + Integer technicalFeasibilityAssessmentNum = 0; + Integer xinchuangOtherNum = 0; + for(ExpertUserFullInfo e : experts){ + if(tagMap.containsKey(e.getUserId())){ + List expertTags = tagMap.get(e.getUserId()); + for(ExpertTag expertTag : expertTags){ + if(expertTag.getTagCode().equals(networkCode)){ + networkSecurityNum++; + } + if(expertTag.getTagCode().equals(caiwuCode)){ + financialNum ++; + } + if(expertTag.getTagCode().equals(xinchuangCode)){ + xinchuangNum ++; + } + if(expertTag.getTagCode().equals(fanganCode)){ + planRationalityNum++; + } + if(expertTag.getTagCode().equals(jishuCode)){ + technicalFeasibilityAssessmentNum ++; + } + if(expertTag.getTagCode().equals(dangzhengCode)){ + partyGovInfoNum ++; + } + if(expertTag.getTagCode().equals(ruanyingCode)){ + softHardPricingNum ++; + } + if(expertTag.getTagCode().equals(xinxihuaCode)){ + promotionInfoTechnologyNum++; + } + if(expertTag.getTagCode().equals(xinchuangOtherCode)){ + xinchuangOtherNum++; + } + } + } + } + //财务专家 + cockpitStats.setExpertFinancialNum(financialNum); + //网络安全 + cockpitStats.setExpertNetworkSecurityNum(networkSecurityNum); + cockpitStats.setExpertXinchuangNum(xinchuangNum); + cockpitStats.setExpertPlanRationalityNum(planRationalityNum); + cockpitStats.setExpertPromotionInfoTechnologyNum(promotionInfoTechnologyNum); + cockpitStats.setExpertPartyGovInfoNum(partyGovInfoNum); + cockpitStats.setExpertSoftHardPricingNum(softHardPricingNum); + cockpitStats.setExpertTechnicalFeasibilityAssessmentNum(technicalFeasibilityAssessmentNum); + cockpitStats.setExpertXinchuangOtherNum(xinchuangOtherNum); //3.顶部数据 //3.1 计划项目数(申报项目:完成年度计划的项目总数