Browse Source

驾驶舱

tags/24080901
PoffyZhang 1 year ago
parent
commit
f4e6279496
3 changed files with 87 additions and 15 deletions
  1. +9
    -6
      pmapi/src/main/java/com/ningdatech/pmapi/dashboard/model/entity/CockpitStats.java
  2. +1
    -1
      pmapi/src/main/java/com/ningdatech/pmapi/projectlib/manage/ProjectRenewalFundManage.java
  3. +77
    -8
      pmapi/src/main/java/com/ningdatech/pmapi/scheduler/task/CockpitStatsStatisticsTask.java

+ 9
- 6
pmapi/src/main/java/com/ningdatech/pmapi/dashboard/model/entity/CockpitStats.java View File

@@ -101,27 +101,30 @@ public class CockpitStats implements Serializable {
@ApiModelProperty("专家-总人数") @ApiModelProperty("专家-总人数")
private Integer expertTotalNum = 0; private Integer expertTotalNum = 0;


@ApiModelProperty("专家-方案合理性")
@ApiModelProperty("专家-方案合理性-擅长")
private Integer expertPlanRationalityNum = 0; private Integer expertPlanRationalityNum = 0;


@ApiModelProperty("专家-计数可行性评估")
@ApiModelProperty("专家-计数可行性评估-擅长")
private Integer expertTechnicalFeasibilityAssessmentNum = 0; private Integer expertTechnicalFeasibilityAssessmentNum = 0;


@ApiModelProperty("专家-信创")
@ApiModelProperty("专家-信创-擅长")
private Integer expertXinchuangNum = 0; private Integer expertXinchuangNum = 0;


@ApiModelProperty("专家-软硬件核价")
@ApiModelProperty("专家-软硬件核价-擅长")
private Integer expertSoftHardPricingNum = 0; private Integer expertSoftHardPricingNum = 0;


@ApiModelProperty("专家-党政信息")
@ApiModelProperty("专家-党政信息-擅长")
private Integer expertPartyGovInfoNum = 0; private Integer expertPartyGovInfoNum = 0;


@ApiModelProperty("专家-网络安全")
@ApiModelProperty("专家-网络安全-擅长")
private Integer expertNetworkSecurityNum = 0; private Integer expertNetworkSecurityNum = 0;


@ApiModelProperty("专家-信息化专家") @ApiModelProperty("专家-信息化专家")
private Integer expertPromotionInfoTechnologyNum = 0; private Integer expertPromotionInfoTechnologyNum = 0;


@ApiModelProperty("专家-信创专家")
private Integer expertXinchuangOtherNum = 0;

@ApiModelProperty("专家-财务专家") @ApiModelProperty("专家-财务专家")
private Integer expertFinancialNum = 0; private Integer expertFinancialNum = 0;




+ 1
- 1
pmapi/src/main/java/com/ningdatech/pmapi/projectlib/manage/ProjectRenewalFundManage.java View File

@@ -381,7 +381,7 @@ public class ProjectRenewalFundManage {
} }


//判断金额 //判断金额
checkPaymentAmount(projectCode,projectYear,dto.getAnnualPaymentAmount());
// checkPaymentAmount(projectCode,projectYear,dto.getAnnualPaymentAmount());


declaration.setApprovalStatus(ProjectRenewalApprovalStatusEnum.PENDING.name()); declaration.setApprovalStatus(ProjectRenewalApprovalStatusEnum.PENDING.name());
if(Objects.nonNull(project)){ if(Objects.nonNull(project)){


+ 77
- 8
pmapi/src/main/java/com/ningdatech/pmapi/scheduler/task/CockpitStatsStatisticsTask.java View File

@@ -21,6 +21,10 @@ import com.ningdatech.pmapi.expert.service.IExpertUserFullInfoService;
import com.ningdatech.pmapi.gov.enumeration.GovProjectStatusEnum; import com.ningdatech.pmapi.gov.enumeration.GovProjectStatusEnum;
import com.ningdatech.pmapi.gov.model.entity.*; import com.ningdatech.pmapi.gov.model.entity.*;
import com.ningdatech.pmapi.gov.service.*; 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.model.entity.PerformanceAppraisalProject;
import com.ningdatech.pmapi.performance.service.IPerformanceAppraisalProjectService; import com.ningdatech.pmapi.performance.service.IPerformanceAppraisalProjectService;
import com.ningdatech.pmapi.projectlib.enumeration.InstTypeEnum; import com.ningdatech.pmapi.projectlib.enumeration.InstTypeEnum;
@@ -109,6 +113,10 @@ public class CockpitStatsStatisticsTask {


private List<Integer> years = Lists.newArrayList(2021,2022,2023,2024,2025); private List<Integer> years = Lists.newArrayList(2021,2022,2023,2024,2025);


private final IMetaTagService metaTagService;

private final IExpertTagService expertTagService;

/** /**
* 定义统计 驾驶舱数据 每天3点开始执行一次 * 定义统计 驾驶舱数据 每天3点开始执行一次
* *
@@ -366,15 +374,76 @@ public class CockpitStatsStatisticsTask {
List<ExpertUserFullInfo> experts = expertUserFullInfoService.list(Wrappers.lambdaQuery(ExpertUserFullInfo.class) List<ExpertUserFullInfo> experts = expertUserFullInfoService.list(Wrappers.lambdaQuery(ExpertUserFullInfo.class)
.eq(StringUtils.isNotBlank(regionCode) && !DashboardConstant.CockpitStats.TOTAL.equals(regionCode), .eq(StringUtils.isNotBlank(regionCode) && !DashboardConstant.CockpitStats.TOTAL.equals(regionCode),
ExpertUserFullInfo::getRegionCode, regionCode)); ExpertUserFullInfo::getRegionCode, regionCode));

List<ExpertTag> goodAt = expertTagService.list(Wrappers.lambdaQuery(ExpertTag.class));
Map<Long, List<ExpertTag>> 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.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<ExpertTag> 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.顶部数据
//3.1 计划项目数(申报项目:完成年度计划的项目总数 //3.1 计划项目数(申报项目:完成年度计划的项目总数


Loading…
Cancel
Save