修改参数收集统计

This commit is contained in:
高嵩
2023-08-19 21:10:28 +08:00
parent 89eec16243
commit 2ea261cbbc
11 changed files with 104 additions and 35 deletions
@@ -30,8 +30,9 @@ public class ProjectDetailsStatisticsCollectManifestController {
@AutoLog(value = "项目详情-参数收集统计接口-清单下拉选项") @AutoLog(value = "项目详情-参数收集统计接口-清单下拉选项")
@ApiOperation(value="项目详情-参数收集统计接口-清单下拉选项", notes="项目详情-参数收集统计接口-清单下拉选项") @ApiOperation(value="项目详情-参数收集统计接口-清单下拉选项", notes="项目详情-参数收集统计接口-清单下拉选项")
@GetMapping(value = "/getProjectDetailsStatisticsCollectManifestLabel") @GetMapping(value = "/getProjectDetailsStatisticsCollectManifestLabel")
public Result<?> getProjectDetailsStatisticsCollectManifestLabel(@RequestParam(name="id",required=true) String id) { public Result<?> getProjectDetailsStatisticsCollectManifestLabel(@RequestParam(name="id",required=true) String id,
List<Map<String, String>> labelList = paramsManifestEOService.labelListForProjectDetails(id); @RequestParam(name="projectVersion",required=true) String projectVersion) {
List<Map<String, String>> labelList = paramsManifestEOService.labelListForProjectDetails(id,projectVersion);
return Result.OK(labelList); return Result.OK(labelList);
} }
@@ -7,6 +7,7 @@ import com.jero.modules.cert.collect.entity.ParamsCollectManifestHistoryEO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* @Description: 参数项收集清单历史版本 * @Description: 参数项收集清单历史版本
@@ -19,4 +20,6 @@ public interface ParamsCollectManifestHistoryEOMapper extends BaseMapper<ParamsC
List<ParamsCollectManifestHistoryEO> listInfo(@Param("paramsCollectManifestEO") ParamsCollectManifestEO paramsCollectManifestEO); List<ParamsCollectManifestHistoryEO> listInfo(@Param("paramsCollectManifestEO") ParamsCollectManifestEO paramsCollectManifestEO);
IPage pageInfo(@Param("page") IPage page, @Param("paramsCollectManifestEO") ParamsCollectManifestEO paramsCollectManifestEO); IPage pageInfo(@Param("page") IPage page, @Param("paramsCollectManifestEO") ParamsCollectManifestEO paramsCollectManifestEO);
List<Map<String, Object>> listInfoForExport(@Param("paramsCollectManifestEO") ParamsCollectManifestEO paramsCollectManifestEO, @Param("ids") String ids);
} }
@@ -30,7 +30,7 @@ public interface ParamsManifestEOMapper extends BaseMapper<ParamsManifestEO> {
ParamsManifestVO getProjectById(@Param("projectId") String projectId); ParamsManifestVO getProjectById(@Param("projectId") String projectId);
List<Map<String, String>> labelListForProjectDetails(@Param("projectId") String projectId); List<Map<String, String>> labelListForProjectDetails(@Param("projectId") String projectId,@Param("projectVersion") String projectVersion);
List<String> listInfoHomo(@Param("userId") String userId, @Param("state") String state); List<String> listInfoHomo(@Param("userId") String userId, @Param("state") String state);
@@ -2,6 +2,10 @@ package com.jero.modules.cert.collect.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jero.modules.cert.collect.entity.ParamsManifestHistoryEO; import com.jero.modules.cert.collect.entity.ParamsManifestHistoryEO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/** /**
* @Description: 参数清单历史版本 * @Description: 参数清单历史版本
@@ -11,4 +15,6 @@ import com.jero.modules.cert.collect.entity.ParamsManifestHistoryEO;
*/ */
public interface ParamsManifestHistoryEOMapper extends BaseMapper<ParamsManifestHistoryEO> { public interface ParamsManifestHistoryEOMapper extends BaseMapper<ParamsManifestHistoryEO> {
List<ParamsManifestHistoryEO> labelListForProjectDetails(@Param("projectId") String projectId, @Param("projectVersion") String projectVersion);
} }
@@ -73,4 +73,18 @@
and control_type != '11' and control_type != '11'
order by nio_number asc order by nio_number asc
</select> </select>
<select id="listInfoForExport" resultType="java.util.LinkedHashMap">
select *
from params_collect_manifest_history
<include refid="BaseQuerySql"/>
<if test="ids !=null and ids !=''">
AND id in
<foreach collection="ids.split(',')" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
and control_type != '11'
order by nio_number asc
</select>
</mapper> </mapper>
@@ -220,6 +220,7 @@
id as value id as value
from params_manifest from params_manifest
where project_id = #{projectId} where project_id = #{projectId}
AND project_version = #{projectVersion}
order by create_time desc order by create_time desc
</select> </select>
@@ -18,4 +18,13 @@
<result column="source_params_manifest_id" property="sourceParamsManifestId" /> <result column="source_params_manifest_id" property="sourceParamsManifestId" />
<result column="references_col_name" property="referencesColName" /> <result column="references_col_name" property="referencesColName" />
</resultMap> </resultMap>
<select id="labelListForProjectDetails" resultType="com.jero.modules.cert.collect.entity.ParamsManifestHistoryEO">
select
*
from params_manifest_history
where project_id = #{projectId}
AND project_version = #{projectVersion}
order by create_time desc
</select>
</mapper> </mapper>
@@ -98,7 +98,7 @@ public interface IParamsManifestEOService extends IService<ParamsManifestEO> {
ParamsManifestVO getProjectById(String projectId, String projectVersion,String cut); ParamsManifestVO getProjectById(String projectId, String projectVersion,String cut);
List<Map<String, String>> labelListForProjectDetails(String projectId); List<Map<String, String>> labelListForProjectDetails(String projectId,String projectVersion);
Map<String, Object> getStatisticsForProjectDetails(String paramsManifestId, String cut); Map<String, Object> getStatisticsForProjectDetails(String paramsManifestId, String cut);
@@ -16,10 +16,7 @@ import com.jero.modules.cert.collect.entity.*;
import com.jero.modules.cert.collect.enums.CollectManifestChangeFlagEnum; import com.jero.modules.cert.collect.enums.CollectManifestChangeFlagEnum;
import com.jero.modules.cert.collect.enums.CollectManifestStateEnum; import com.jero.modules.cert.collect.enums.CollectManifestStateEnum;
import com.jero.modules.cert.collect.enums.ManifestStateEnum; import com.jero.modules.cert.collect.enums.ManifestStateEnum;
import com.jero.modules.cert.collect.mapper.ParamsCollectManifestEOMapper; import com.jero.modules.cert.collect.mapper.*;
import com.jero.modules.cert.collect.mapper.ParamsCollectManifestHistoryEOMapper;
import com.jero.modules.cert.collect.mapper.ParamsConfigEOMapper;
import com.jero.modules.cert.collect.mapper.ParamsManifestEOMapper;
import com.jero.modules.cert.collect.service.*; import com.jero.modules.cert.collect.service.*;
import com.jero.modules.cert.collect.vo.ParamsManifestHistoryVO; import com.jero.modules.cert.collect.vo.ParamsManifestHistoryVO;
import com.jero.modules.cert.collect.vo.ParamsManifestVO; import com.jero.modules.cert.collect.vo.ParamsManifestVO;
@@ -69,6 +66,9 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
@Autowired @Autowired
private ParamsManifestEOMapper paramsManifestEOMapper; private ParamsManifestEOMapper paramsManifestEOMapper;
@Autowired
private ParamsManifestHistoryEOMapper paramsManifestHistoryEOMapper;
@Autowired @Autowired
private IParamsTemplateEOService paramsTemplateEOService; private IParamsTemplateEOService paramsTemplateEOService;
@@ -1129,8 +1129,16 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
} }
@Override @Override
public List<Map<String, String>> labelListForProjectDetails(String projectId) { public List<Map<String, String>> labelListForProjectDetails(String projectId,String projectVersion) {
return paramsManifestEOMapper.labelListForProjectDetails(projectId); List<Map<String, String>> res = paramsManifestEOMapper.labelListForProjectDetails(projectId,projectVersion);
List<ParamsManifestHistoryEO> hisRes = paramsManifestHistoryEOMapper.labelListForProjectDetails(projectId,projectVersion);
for (ParamsManifestHistoryEO hisEO : hisRes) {
Map<String, String> hisMap = new HashMap<>();
hisMap.put("label",hisEO.getTitle() + "-" + hisEO.getVersion());
hisMap.put("value",hisEO.getId());
res.add(hisMap);
}
return res;
} }
@Override @Override
@@ -1155,6 +1163,9 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO(); ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO();
paramsCollectManifestEO.setParamsManifestId(paramsManifestId); paramsCollectManifestEO.setParamsManifestId(paramsManifestId);
List<Map<String, Object>> listAll = paramsCollectManifestEOMapper.listInfoForExport(paramsCollectManifestEO, null); List<Map<String, Object>> listAll = paramsCollectManifestEOMapper.listInfoForExport(paramsCollectManifestEO, null);
if(CollectionUtils.isEmpty(listAll)){
listAll = paramsCollectManifestHistoryEOMapper.listInfoForExport(paramsCollectManifestEO, null);
}
if(ObjectUtil.isNotEmpty(firstLevelDutyTerritoryMap)){ if(ObjectUtil.isNotEmpty(firstLevelDutyTerritoryMap)){
for (Map.Entry<String, List<SysDictItem>> dutyTerritoryMap : firstLevelDutyTerritoryMap.entrySet()) { for (Map.Entry<String, List<SysDictItem>> dutyTerritoryMap : firstLevelDutyTerritoryMap.entrySet()) {
@@ -10712,7 +10712,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|| StringUtils.equals(pliEo.getDesignFlowStatus(),ComplianceFlowStatusEnum.CONFORMITY.getValue()) || StringUtils.equals(pliEo.getDesignFlowStatus(),ComplianceFlowStatusEnum.CONFORMITY.getValue())
|| StringUtils.equals(pliEo.getDesignFlowStatus(),ComplianceFlowStatusEnum.INCONFORMITY.getValue()) || StringUtils.equals(pliEo.getDesignFlowStatus(),ComplianceFlowStatusEnum.INCONFORMITY.getValue())
|| StringUtils.equals(pliEo.getDesignFlowStatus(),ComplianceFlowStatusEnum.TO_TRACK.getValue()) || StringUtils.equals(pliEo.getDesignFlowStatus(),ComplianceFlowStatusEnum.TO_TRACK.getValue())
|| StringUtils.equals(pliEo.getDesignFlowStatus(),ComplianceFlowStatusEnum.UNINVOLVED.getValue()) // || StringUtils.equals(pliEo.getDesignFlowStatus(),ComplianceFlowStatusEnum.UNINVOLVED.getValue())
); );
return flag; return flag;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
@@ -10723,7 +10723,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|| StringUtils.equals(pliEo.getVerifyFlowStatus(),ComplianceFlowStatusEnum.CONFORMITY.getValue()) || StringUtils.equals(pliEo.getVerifyFlowStatus(),ComplianceFlowStatusEnum.CONFORMITY.getValue())
|| StringUtils.equals(pliEo.getVerifyFlowStatus(),ComplianceFlowStatusEnum.INCONFORMITY.getValue()) || StringUtils.equals(pliEo.getVerifyFlowStatus(),ComplianceFlowStatusEnum.INCONFORMITY.getValue())
|| StringUtils.equals(pliEo.getVerifyFlowStatus(),ComplianceFlowStatusEnum.TO_TRACK.getValue()) || StringUtils.equals(pliEo.getVerifyFlowStatus(),ComplianceFlowStatusEnum.TO_TRACK.getValue())
|| StringUtils.equals(pliEo.getVerifyFlowStatus(),ComplianceFlowStatusEnum.UNINVOLVED.getValue()) // || StringUtils.equals(pliEo.getVerifyFlowStatus(),ComplianceFlowStatusEnum.UNINVOLVED.getValue())
); );
return flag; return flag;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
@@ -11,10 +11,13 @@ import com.jero.common.system.vo.DictModel;
import com.jero.common.system.vo.LoginUser; import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.DateUtils; import com.jero.common.util.DateUtils;
import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO; import com.jero.modules.cert.collect.entity.ParamsCollectManifestEO;
import com.jero.modules.cert.collect.entity.ParamsCollectManifestHistoryEO;
import com.jero.modules.cert.collect.entity.ParamsManifestEO; import com.jero.modules.cert.collect.entity.ParamsManifestEO;
import com.jero.modules.cert.collect.enums.CollectManifestStatisticsStateEnum; import com.jero.modules.cert.collect.enums.CollectManifestStatisticsStateEnum;
import com.jero.modules.cert.collect.service.IParamsCollectManifestEOService; import com.jero.modules.cert.collect.service.IParamsCollectManifestEOService;
import com.jero.modules.cert.collect.service.IParamsCollectManifestHistoryEOService;
import com.jero.modules.cert.collect.service.IParamsManifestEOService; import com.jero.modules.cert.collect.service.IParamsManifestEOService;
import com.jero.modules.cert.collect.service.IParamsManifestHistoryEOService;
import com.jero.modules.cert.report.entity.ParamsReportConfigDataEO; import com.jero.modules.cert.report.entity.ParamsReportConfigDataEO;
import com.jero.modules.cert.template.enums.ControlTypeEnum; import com.jero.modules.cert.template.enums.ControlTypeEnum;
import com.jero.modules.project.entity.*; import com.jero.modules.project.entity.*;
@@ -91,9 +94,14 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService
private IProjectCertificationInventoryEOService projectCertificationInventoryEOService; private IProjectCertificationInventoryEOService projectCertificationInventoryEOService;
@Autowired @Autowired
private IParamsManifestEOService paramsManifestEOService; private IParamsManifestEOService paramsManifestEOService;
@Autowired
private IParamsManifestHistoryEOService paramsManifestHistoryEOService;
@Autowired @Autowired
private IParamsCollectManifestEOService paramsCollectManifestEOService; private IParamsCollectManifestEOService paramsCollectManifestEOService;
@Autowired @Autowired
private IParamsCollectManifestHistoryEOService paramsCollectManifestHistoryEOService;
@Autowired
private IProjectLibraryStatisticsService projectLibraryStatisticsService; private IProjectLibraryStatisticsService projectLibraryStatisticsService;
@@ -641,8 +649,15 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService
List<ProjectCertificationInventoryEO> pciEoList = this.projectCertificationInventoryEOService.list(); List<ProjectCertificationInventoryEO> pciEoList = this.projectCertificationInventoryEOService.list();
List<ProjectTaskPlanning> ptpEoList = this.projectTaskPlanningService.list(); List<ProjectTaskPlanning> ptpEoList = this.projectTaskPlanningService.list();
List<ParamsManifestEO> pmEoList = this.paramsManifestEOService.list(); List<ParamsManifestEO> pmEoList = this.paramsManifestEOService.list();
pmEoList.addAll(this.paramsManifestHistoryEOService.list());
log.info("一阶段消耗时间:" + (System.currentTimeMillis() - startTime)); log.info("一阶段消耗时间:" + (System.currentTimeMillis() - startTime));
List<ParamsCollectManifestEO> pcmEoList = this.paramsCollectManifestEOService.getList(null); List<ParamsCollectManifestEO> pcmEoList = this.paramsCollectManifestEOService.getList(null);
List<ParamsCollectManifestHistoryEO> pcmHisEoList = this.paramsCollectManifestHistoryEOService.list();
for (ParamsCollectManifestHistoryEO his : pcmHisEoList) {
ParamsCollectManifestEO pcm = new ParamsCollectManifestEO();
BeanUtils.copyProperties(his,pcm);
pcmEoList.add(pcm);
}
pcmEoList = pcmEoList.stream().filter(pcmEo -> !StringUtils.equals(pcmEo.getControlType(), ControlTypeEnum.Title.getValue())).collect(Collectors.toList());; pcmEoList = pcmEoList.stream().filter(pcmEo -> !StringUtils.equals(pcmEo.getControlType(), ControlTypeEnum.Title.getValue())).collect(Collectors.toList());;
log.info("二阶段消耗时间:" + (System.currentTimeMillis() - startTime)); log.info("二阶段消耗时间:" + (System.currentTimeMillis() - startTime));
@@ -717,16 +732,16 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService
* @param pcmEoList * @param pcmEoList
* @param ptpEoList * @param ptpEoList
*/ */
private void exportCrossProjectProgress(HSSFSheet sheet, // private void exportCrossProjectProgress(HSSFSheet sheet,
ProjectLibraryBase projectLibraryBase, // ProjectLibraryBase projectLibraryBase,
List<ProjectLibraryBase> plbEoList, // List<ProjectLibraryBase> plbEoList,
List<ProjectLawsInventoryEO> pliEoList, // List<ProjectLawsInventoryEO> pliEoList,
List<ProjectCertificationInventoryEO> pciEoList, // List<ProjectCertificationInventoryEO> pciEoList,
List<ParamsManifestEO> pmEoList, // List<ParamsManifestEO> pmEoList,
List<ParamsCollectManifestEO> pcmEoList, // List<ParamsCollectManifestEO> pcmEoList,
List<ProjectTaskPlanning> ptpEoList) { // List<ProjectTaskPlanning> ptpEoList) {
this.exportCrossProjectProgressSetData(plbEoList, sheet,pliEoList,pciEoList,pmEoList,pcmEoList,projectLibraryBase,ptpEoList); // this.exportCrossProjectProgressSetData(plbEoList, sheet,pliEoList,pciEoList,pmEoList,pcmEoList,projectLibraryBase,ptpEoList);
} // }
@NotNull @NotNull
private HSSFSheet createCorssProjectProgressSheet(HSSFWorkbook workbook, ProjectLibraryBase projectLibraryBase) { private HSSFSheet createCorssProjectProgressSheet(HSSFWorkbook workbook, ProjectLibraryBase projectLibraryBase) {
@@ -1015,7 +1030,11 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService
List<ParamsManifestEO> pmEos = pmEoList.stream().filter(pmEo -> { List<ParamsManifestEO> pmEos = pmEoList.stream().filter(pmEo -> {
return StringUtils.equals(pmEo.getProjectId(), plbEo.getId()); if(pmEo.getProjectVersion().equals("00")){
return StringUtils.equals(pmEo.getProjectId(), plbEo.getId());
}else{
return StringUtils.equals(pmEo.getProjectId(), plbEo.getParentId()) && StringUtils.equals(pmEo.getProjectVersion(), plbEo.getProjectVersion());
}
}).collect(Collectors.toList()); }).collect(Collectors.toList());
double notStartAmount = 0; double notStartAmount = 0;
@@ -1078,17 +1097,17 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService
* @param pcmEoList * @param pcmEoList
* @param ptpEoList * @param ptpEoList
*/ */
private void exportOverviewCrossProjectProgress(HSSFSheet sheet, // private void exportOverviewCrossProjectProgress(HSSFSheet sheet,
ProjectLibraryBase projectLibraryBase, // ProjectLibraryBase projectLibraryBase,
List<ProjectLibraryBase> plbEoList, // List<ProjectLibraryBase> plbEoList,
List<ProjectLawsInventoryEO> pliEoList, // List<ProjectLawsInventoryEO> pliEoList,
List<ProjectCertificationInventoryEO> pciEoList, // List<ProjectCertificationInventoryEO> pciEoList,
List<ParamsManifestEO> pmEoList, // List<ParamsManifestEO> pmEoList,
List<ParamsCollectManifestEO> pcmEoList, // List<ParamsCollectManifestEO> pcmEoList,
List<ProjectTaskPlanning> ptpEoList, // List<ProjectTaskPlanning> ptpEoList,
CellStyle cellStyleTitle) { // CellStyle cellStyleTitle) {
this.exportOverviewCrossProjectProgressSetData(plbEoList, sheet,pliEoList,pciEoList,pmEoList,pcmEoList,projectLibraryBase,ptpEoList,cellStyleTitle); // this.exportOverviewCrossProjectProgressSetData(plbEoList, sheet,pliEoList,pciEoList,pmEoList,pcmEoList,projectLibraryBase,ptpEoList,cellStyleTitle);
} // }
public HSSFSheet createOverviewCrossProjectProgressSheet(HSSFWorkbook workbook, ProjectLibraryBase projectLibraryBase){ public HSSFSheet createOverviewCrossProjectProgressSheet(HSSFWorkbook workbook, ProjectLibraryBase projectLibraryBase){
String cut = projectLibraryBase.getCut(); String cut = projectLibraryBase.getCut();
@@ -1222,8 +1241,13 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService
Map<String,Object> preHomoProjectScheduleExportMap = (Map<String, Object>) preHomoMap.get("projectScheduleExportMap"); Map<String,Object> preHomoProjectScheduleExportMap = (Map<String, Object>) preHomoMap.get("projectScheduleExportMap");
double preHomoPercentage = Double.parseDouble(((String)preHomoProjectScheduleExportMap.get("percentage")).replace("%",""))/100; double preHomoPercentage = Double.parseDouble(((String)preHomoProjectScheduleExportMap.get("percentage")).replace("%",""))/100;
List<ParamsManifestEO> pmEos = pmEoList.stream().filter(pmEo -> { List<ParamsManifestEO> pmEos = pmEoList.stream().filter(pmEo -> {
return StringUtils.equals(pmEo.getProjectId(), plbEo.getId()); if(pmEo.getProjectVersion().equals("00")){
return StringUtils.equals(pmEo.getProjectId(), plbEo.getId());
}else{
return StringUtils.equals(pmEo.getProjectId(), plbEo.getParentId()) && StringUtils.equals(pmEo.getProjectVersion(), plbEo.getProjectVersion());
}
}).collect(Collectors.toList()); }).collect(Collectors.toList());
double parameterCollectingPercentageStr = 0; double parameterCollectingPercentageStr = 0;