项目库详情-认证清单相关统计-按照一级责任领域统计。导出开发。

This commit is contained in:
wangzhijiang
2023-04-28 17:38:53 +08:00
parent fa0b4dadb4
commit c12fed1390
6 changed files with 656 additions and 123 deletions
@@ -40,6 +40,9 @@ public enum OperatorTypeEnum {
QUERY_CERTIFICATION_PROGRESS_STATISTICS("查询认证进度统计","queryCertificationProgressStatistics"), QUERY_CERTIFICATION_PROGRESS_STATISTICS("查询认证进度统计","queryCertificationProgressStatistics"),
QUERY_FG_TASK_TO_CONFIRM_STATISTICS("查询法规任务确认统计","queryFGTaskToConfirmStatistics"), QUERY_FG_TASK_TO_CONFIRM_STATISTICS("查询法规任务确认统计","queryFGTaskToConfirmStatistics"),
QUERY_RZ_TASK_TO_CONFIRM_STATISTICS("查询认证任务确认统计","queryRZTaskToConfirmStatistics"), QUERY_RZ_TASK_TO_CONFIRM_STATISTICS("查询认证任务确认统计","queryRZTaskToConfirmStatistics"),
QUERY_CERTIFICATION_PROGRESS_STATISTICS_ALL("查询认证进度统计-全部","queryCertificationProgressStatisticsAll"),
QUERY_CERTIFICATION_PROGRESS_STATISTICS_CAR("查询认证进度统计-整车","queryCertificationProgressStatisticsCar"),
QUERY_CERTIFICATION_PROGRESS_STATISTICS_PART("查询认证进度统计-零部件","queryCertificationProgressStatisticsPart"),
ADD_LAWS_OPINION_GATHER("添加法规意见收集数据","addLawsOpinionGather"), ADD_LAWS_OPINION_GATHER("添加法规意见收集数据","addLawsOpinionGather"),
UPDATE_LAWS_OPINION_GATHER_GATHER_RESULT("更新法规意见收集数据收集结果","updateLawsOpinionGatherGatherResult"), UPDATE_LAWS_OPINION_GATHER_GATHER_RESULT("更新法规意见收集数据收集结果","updateLawsOpinionGatherGatherResult"),
@@ -115,7 +115,8 @@
duty_territory as "dutyTerritory", duty_territory as "dutyTerritory",
flow_status as "flowStatus", flow_status as "flowStatus",
regulation_owner_id as "regulationOwnerId", regulation_owner_id as "regulationOwnerId",
duty_id as "dutyId" duty_id as "dutyId",
stand_id as "standId"
from ( from (
SELECT SELECT
id, id,
@@ -126,7 +127,8 @@
design_flow_status as flow_status, design_flow_status as flow_status,
regulation_owner_id, regulation_owner_id,
design_duty_id as duty_id, design_duty_id as duty_id,
project_library_id project_library_id,
stand_id
FROM FROM
project_laws_inventory project_laws_inventory
WHERE WHERE
@@ -145,7 +147,8 @@
verify_flow_status as flow_status, verify_flow_status as flow_status,
regulation_owner_id, regulation_owner_id,
verify_duty_id as duty_id, verify_duty_id as duty_id,
project_library_id project_library_id,
stand_id
FROM FROM
project_laws_inventory project_laws_inventory
WHERE WHERE
@@ -158,10 +161,10 @@
<include refid="BaseQuerySql"/> <include refid="BaseQuerySql"/>
<if test="params.orderByField != null and params.orderByField != ''"> <if test="params.orderByField != null and params.orderByField != ''">
order by temp.${params.orderByField} order by temp.${params.orderByField}
<if test="params.orderBy == '1'"> <if test="params.orderBy == 1">
asc asc
</if> </if>
<if test="params.orderBy == '2'"> <if test="params.orderBy == 2">
desc desc
</if> </if>
</if> </if>
@@ -1,5 +1,6 @@
package com.jero.modules.project.service; package com.jero.modules.project.service;
import com.jero.modules.project.entity.ProjectCertificationInventoryEO;
import com.jero.modules.project.entity.ProjectLawsInventoryEO; import com.jero.modules.project.entity.ProjectLawsInventoryEO;
import java.util.List; import java.util.List;
@@ -32,4 +33,44 @@ public interface IProjectLibraryStatisticsService {
* @return * @return
*/ */
Map<String, Object> getVerifyComplianceStatisticeGroupByTerritory(List<ProjectLawsInventoryEO> datas, Map<String, Object> params); Map<String, Object> getVerifyComplianceStatisticeGroupByTerritory(List<ProjectLawsInventoryEO> datas, Map<String, Object> params);
/**
* 获取认证清单-任务确认统计信息-根据责任领域分组
* @param datas
* @param params
* @return
*/
Map<String, Object> getRZTaskToConfirmStatisticsGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params);
/**
* 获取认证清单-Pre-Homo统计信息-根据责任领域分组
* @param datas
* @param params
* @return
*/
Map<String, Object> getPrehomoStatisticeGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params);
/**
* 获取认证清单-全部-认证进度统计信息-根据责任领域分组
* @param datas
* @param params
* @return
*/
Map<String, Object> getAllCertificationProgressStatisticsGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params);
/**
* 获取认证清单-整车-认证进度统计信息-根据责任领域分组
* @param datas
* @param params
* @return
*/
Map<String, Object> getCarCertificationProgressStatisticsGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params);
/**
* 获取认证清单-零部件-认证进度统计信息-根据责任领域分组
* @param datas
* @param params
* @return
*/
Map<String, Object> getPartCertificationProgressStatisticsGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params);
} }
@@ -2812,21 +2812,21 @@ public class ProjectCertificationInventoryEOServiceImpl extends ServiceImpl<Proj
// 部件报告未提交 // 部件报告未提交
notSubmitCount = (int) pciEoList.stream().filter(pciEo -> { notSubmitCount = (int) pciEoList.stream().filter(pciEo -> {
boolean flag = ( boolean flag = (
StringUtils.equals(pciEo.getCertificationProgress(),CertificationProgressEnum.NOT_START.getValue()) StringUtils.equals(pciEo.getCertificationProgress(),CertificationProgressEnum.COMPONENT_REPORT_NOT_SUBMITTED.getValue())
); );
return flag; return flag;
}).count(); }).count();
// 部件报告已提交 // 部件报告已提交
reportSubmitCount = (int) pciEoList.stream().filter(pciEo -> { reportSubmitCount = (int) pciEoList.stream().filter(pciEo -> {
boolean flag = ( boolean flag = (
StringUtils.equals(pciEo.getCertificationProgress(),CertificationProgressEnum.IN_PROGRESS.getValue()) StringUtils.equals(pciEo.getCertificationProgress(),CertificationProgressEnum.COMPONENT_REPORT_SUBMITTED.getValue())
); );
return flag; return flag;
}).count(); }).count();
// 部件报告已入库 // 部件报告已入库
storedCount = (int) pciEoList.stream().filter(pciEo -> { storedCount = (int) pciEoList.stream().filter(pciEo -> {
boolean flag = ( boolean flag = (
StringUtils.equals(pciEo.getCertificationProgress(),CertificationProgressEnum.TEST_PASSED.getValue()) StringUtils.equals(pciEo.getCertificationProgress(),CertificationProgressEnum.COMPONENT_REPORT_HAS_BEEN_STORED.getValue())
); );
return flag; return flag;
}).count(); }).count();
@@ -50,6 +50,8 @@ import org.apache.commons.lang3.ObjectUtils;
import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Row;
import org.apache.shiro.SecurityUtils; import org.apache.shiro.SecurityUtils;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
@@ -1734,6 +1736,7 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
} }
String cut = (String) params.get("cut"); String cut = (String) params.get("cut");
Map<String,Object> result = new HashMap<>(); Map<String,Object> result = new HashMap<>();
List<Map<String, Object>> dataList = new ArrayList<>();
QueryWrapper<ProjectLawsInventoryEO> lawsInventoryEOQueryWrapper = new QueryWrapper<>(); QueryWrapper<ProjectLawsInventoryEO> lawsInventoryEOQueryWrapper = new QueryWrapper<>();
lawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryId); lawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryId);
@@ -1758,10 +1761,10 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
Map<String,Object> pliEoMap = new HashMap<>(); Map<String,Object> pliEoMap = new HashMap<>();
Map<String, List<SysDictItem>> firstLevelDutyTerritoryMap = this.sysDictItemServiceImpl.getFirstLevelSysDictItemByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue(),sysDictItems); Map<String, List<SysDictItem>> firstLevelDutyTerritoryMapFG = this.sysDictItemServiceImpl.getFirstLevelSysDictItemByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue(),sysDictItems);
if(ObjectUtils.isNotEmpty(firstLevelDutyTerritoryMap)){ if(ObjectUtils.isNotEmpty(firstLevelDutyTerritoryMapFG)){
// 根据责任领域组装法规清单数据,后续计算使用 // 根据责任领域组装法规清单数据,后续计算使用
for (Map.Entry<String, List<SysDictItem>> firstLevelMap : firstLevelDutyTerritoryMap.entrySet()) { for (Map.Entry<String, List<SysDictItem>> firstLevelMap : firstLevelDutyTerritoryMapFG.entrySet()) {
String key = firstLevelMap.getKey(); String key = firstLevelMap.getKey();
List<SysDictItem> dutyTerritoryList = firstLevelMap.getValue(); List<SysDictItem> dutyTerritoryList = firstLevelMap.getValue();
if(StringUtils.isEmpty(key) || CollectionUtils.isEmpty(dutyTerritoryList)){ if(StringUtils.isEmpty(key) || CollectionUtils.isEmpty(dutyTerritoryList)){
@@ -1786,92 +1789,191 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
} }
String status = (String) params.get("status"); String status = (String) params.get("status");
if (CollectionUtils.isNotEmpty(projectLawsInventoryEOList)) { if (CollectionUtils.isNotEmpty(projectLawsInventoryEOList)) {
List<String> projectLawsInventoryIdList = projectLawsInventoryEOList.stream().distinct().map(ProjectLawsInventoryEO::getId).collect(Collectors.toList()); for (Map.Entry<String, Object> pliMap : pliEoMap.entrySet()) {
if(StringUtils.equals(OperatorTypeEnum.QUERY_FG_TASK_TO_CONFIRM_STATISTICS.getValue(),operatorType)){ String key = pliMap.getKey();
if(ObjectUtils.isNotEmpty(pliEoMap)){ JSONObject json = (JSONObject) pliMap.getValue();
List<ProjectLawsInventoryEO> pliEoList = (List<ProjectLawsInventoryEO>) json.get("pliEoList");
List<Map<String, Object>> dataList = new ArrayList<>(); Map<String, Object> dataMaps = new HashMap<>();
for (Map.Entry<String, Object> pliMap : pliEoMap.entrySet()) { if(StringUtils.equals(OperatorTypeEnum.QUERY_FG_TASK_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
String key = pliMap.getKey(); dataMaps = this.projectLibraryStatisticsService.getFGTaskToConfirmStatisticsGroupByTerritory(pliEoList,params);
JSONObject json = (JSONObject) pliMap.getValue(); }else if(StringUtils.equals(OperatorTypeEnum.QUERY_DESIGN_STATISTICS.getValue(),operatorType)){
List<ProjectLawsInventoryEO> pliEoList = (List<ProjectLawsInventoryEO>) json.get("pliEoList"); dataMaps = this.projectLibraryStatisticsService.getDesignComplianceStatisticeGroupByTerritory(pliEoList,params);
Map<String, Object> dataMaps = this.projectLibraryStatisticsService.getFGTaskToConfirmStatisticsGroupByTerritory(pliEoList,params); }else if(StringUtils.equals(OperatorTypeEnum.QUERY_VERIFY_STATISTICS.getValue(),operatorType)){
Map<String, Object> dataMap = (Map<String, Object>) dataMaps.get(status); dataMaps = this.projectLibraryStatisticsService.getVerifyComplianceStatisticeGroupByTerritory(pliEoList,params);
double amount = (double) dataMap.get("amount");
if(amount != 0){
dataMap.put("dutyTerritoryName",key);
dataList.add(dataMap);
}
}
result.put("dataList",dataList);
} }
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CURRENT_PROJECT_STATUS_STATISTICS.getValue(),operatorType)){ if(ObjectUtils.isEmpty(dataMaps)){
params.put("projectLawsInventoryIdList",projectLawsInventoryIdList); continue;
List<Map<String, Object>> conditionAssessmentMapList = this.conditionAssessmentEOService.getProjectStatusAssessStatisticsGroupByTerritory(params);
disposeData(conditionAssessmentMapList,cut);
result.put("dataList",conditionAssessmentMapList);
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_LISTING_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
//清单确认 状态
String inventoryAffirmStatus = (String) params.get("inventoryAffirmStatus");
List<Map<String,Object>> listingToConfirmList = this.projectLawsInventoryEOMapper.getListingToConfirmStatisticsGroupByTerritory(projectLibraryId,inventoryAffirmStatus);
disposeData(listingToConfirmList,cut);
result.put("dataList",listingToConfirmList);
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_TASK_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
//任务确认 状态
String taskAffirmStatus = (String) params.get("taskAffirmStatus");
List<Map<String,Object>> taskToConfirmList = this.projectLawsInventoryEOMapper.getTaskToConfirmStatisticsGroupByTerritory(projectLibraryId,taskAffirmStatus);
disposeData(taskToConfirmList,cut);
result.put("dataList",taskToConfirmList);
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_DESIGN_STATISTICS.getValue(),operatorType)){
//设计符合性
List<Map<String, Object>> dataList = new ArrayList<>();
for (Map.Entry<String, Object> pliMap : pliEoMap.entrySet()) {
String key = pliMap.getKey();
JSONObject json = (JSONObject) pliMap.getValue();
List<ProjectLawsInventoryEO> pliEoList = (List<ProjectLawsInventoryEO>) json.get("pliEoList");
Map<String, Object> dataMaps = this.projectLibraryStatisticsService.getDesignComplianceStatisticeGroupByTerritory(pliEoList,params);
Map<String, Object> dataMap = (Map<String, Object>) dataMaps.get(status);
double amount = (double) dataMap.get("amount");
if(amount != 0){
dataMap.put("dutyTerritoryName",key);
dataList.add(dataMap);
}
} }
result.put("dataList",dataList); Map<String, Object> dataMap = (Map<String, Object>) dataMaps.get(status);
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_PREHOMO_STATISTICS.getValue(),operatorType)){ double amount = (double) dataMap.get("amount");
//prehomo确认 流程任务状态 if(amount != 0){
String prehomoFlowTaskStatus = (String) params.get("prehomoFlowTaskStatus"); dataMap.put("dutyTerritoryName",key);
if(CollectionUtils.isNotEmpty(projectLawsInventoryIdList)){ dataList.add(dataMap);
List<Map<String,Object>> prehomoList = this.projectTaskInventoryEOMapper.getPrehomoStatisticeGroupByTerritory(projectLawsInventoryIdList,prehomoFlowTaskStatus);
disposeData(prehomoList,cut);
result.put("dataList",prehomoList);
}
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_VERIFY_STATISTICS.getValue(),operatorType)){
//验证符合性 流程任务状态
List<Map<String, Object>> dataList = new ArrayList<>();
for (Map.Entry<String, Object> pliMap : pliEoMap.entrySet()) {
String key = pliMap.getKey();
JSONObject json = (JSONObject) pliMap.getValue();
List<ProjectLawsInventoryEO> pliEoList = (List<ProjectLawsInventoryEO>) json.get("pliEoList");
Map<String, Object> dataMaps = this.projectLibraryStatisticsService.getVerifyComplianceStatisticeGroupByTerritory(pliEoList,params);
Map<String, Object> dataMap = (Map<String, Object>) dataMaps.get(status);
double amount = (double) dataMap.get("amount");
if(amount != 0){
dataMap.put("dutyTerritoryName",key);
dataList.add(dataMap);
}
}
result.put("dataList",dataList);
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS.getValue(),operatorType)){
//认证进度 流程任务状态
String certificationProgress = (String) params.get("certificationProgress");
if(CollectionUtils.isNotEmpty(projectLawsInventoryIdList)){
List<Map<String,Object>> certificationProgressList = this.projectTaskInventoryEOMapper.getCertificationProgressStatisticsGroupByTerritory(projectLawsInventoryIdList,certificationProgress);
disposeData(certificationProgressList,cut);
result.put("dataList",certificationProgressList);
} }
} }
if(CollectionUtils.isNotEmpty(dataList)){
result.put("dataList",dataList);
return result;
}
// if(StringUtils.equals(OperatorTypeEnum.QUERY_FG_TASK_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
// if(ObjectUtils.isNotEmpty(pliEoMap)){
//
// List<Map<String, Object>> dataList = new ArrayList<>();
// for (Map.Entry<String, Object> pliMap : pliEoMap.entrySet()) {
// String key = pliMap.getKey();
// JSONObject json = (JSONObject) pliMap.getValue();
// List<ProjectLawsInventoryEO> pliEoList = (List<ProjectLawsInventoryEO>) json.get("pliEoList");
// Map<String, Object> dataMaps = this.projectLibraryStatisticsService.getFGTaskToConfirmStatisticsGroupByTerritory(pliEoList,params);
// Map<String, Object> dataMap = (Map<String, Object>) dataMaps.get(status);
// double amount = (double) dataMap.get("amount");
// if(amount != 0){
// dataMap.put("dutyTerritoryName",key);
// dataList.add(dataMap);
// }
// }
// result.put("dataList",dataList);
// }
// }else if(StringUtils.equals(OperatorTypeEnum.QUERY_CURRENT_PROJECT_STATUS_STATISTICS.getValue(),operatorType)){
// params.put("projectLawsInventoryIdList",projectLawsInventoryIdList);
// List<Map<String, Object>> conditionAssessmentMapList = this.conditionAssessmentEOService.getProjectStatusAssessStatisticsGroupByTerritory(params);
// disposeData(conditionAssessmentMapList,cut);
// result.put("dataList",conditionAssessmentMapList);
// }else if(StringUtils.equals(OperatorTypeEnum.QUERY_LISTING_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
// //清单确认 状态
// String inventoryAffirmStatus = (String) params.get("inventoryAffirmStatus");
// List<Map<String,Object>> listingToConfirmList = this.projectLawsInventoryEOMapper.getListingToConfirmStatisticsGroupByTerritory(projectLibraryId,inventoryAffirmStatus);
// disposeData(listingToConfirmList,cut);
// result.put("dataList",listingToConfirmList);
// }else if(StringUtils.equals(OperatorTypeEnum.QUERY_TASK_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
// //任务确认 状态
// String taskAffirmStatus = (String) params.get("taskAffirmStatus");
// List<Map<String,Object>> taskToConfirmList = this.projectLawsInventoryEOMapper.getTaskToConfirmStatisticsGroupByTerritory(projectLibraryId,taskAffirmStatus);
// disposeData(taskToConfirmList,cut);
// result.put("dataList",taskToConfirmList);
// }else if(StringUtils.equals(OperatorTypeEnum.QUERY_DESIGN_STATISTICS.getValue(),operatorType)){
// //设计符合性
// List<Map<String, Object>> dataList = new ArrayList<>();
// for (Map.Entry<String, Object> pliMap : pliEoMap.entrySet()) {
// String key = pliMap.getKey();
// JSONObject json = (JSONObject) pliMap.getValue();
// List<ProjectLawsInventoryEO> pliEoList = (List<ProjectLawsInventoryEO>) json.get("pliEoList");
// Map<String, Object> dataMaps = this.projectLibraryStatisticsService.getDesignComplianceStatisticeGroupByTerritory(pliEoList,params);
// Map<String, Object> dataMap = (Map<String, Object>) dataMaps.get(status);
// double amount = (double) dataMap.get("amount");
// if(amount != 0){
// dataMap.put("dutyTerritoryName",key);
// dataList.add(dataMap);
// }
// }
// result.put("dataList",dataList);
// }else if(StringUtils.equals(OperatorTypeEnum.QUERY_PREHOMO_STATISTICS.getValue(),operatorType)){
// //prehomo确认 流程任务状态
// String prehomoFlowTaskStatus = (String) params.get("prehomoFlowTaskStatus");
// if(CollectionUtils.isNotEmpty(projectLawsInventoryIdList)){
// List<Map<String,Object>> prehomoList = this.projectTaskInventoryEOMapper.getPrehomoStatisticeGroupByTerritory(projectLawsInventoryIdList,prehomoFlowTaskStatus);
// disposeData(prehomoList,cut);
// result.put("dataList",prehomoList);
// }
// }else if(StringUtils.equals(OperatorTypeEnum.QUERY_VERIFY_STATISTICS.getValue(),operatorType)){
// //验证符合性 流程任务状态
// List<Map<String, Object>> dataList = new ArrayList<>();
// for (Map.Entry<String, Object> pliMap : pliEoMap.entrySet()) {
// String key = pliMap.getKey();
// JSONObject json = (JSONObject) pliMap.getValue();
// List<ProjectLawsInventoryEO> pliEoList = (List<ProjectLawsInventoryEO>) json.get("pliEoList");
// Map<String, Object> dataMaps = this.projectLibraryStatisticsService.getVerifyComplianceStatisticeGroupByTerritory(pliEoList,params);
// Map<String, Object> dataMap = (Map<String, Object>) dataMaps.get(status);
// double amount = (double) dataMap.get("amount");
// if(amount != 0){
// dataMap.put("dutyTerritoryName",key);
// dataList.add(dataMap);
// }
// }
// result.put("dataList",dataList);
// }else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS.getValue(),operatorType)){
// //认证进度 流程任务状态
// String certificationProgress = (String) params.get("certificationProgress");
//
// if(CollectionUtils.isNotEmpty(projectLawsInventoryIdList)){
// List<Map<String,Object>> certificationProgressList = this.projectTaskInventoryEOMapper.getCertificationProgressStatisticsGroupByTerritory(projectLawsInventoryIdList,certificationProgress);
// disposeData(certificationProgressList,cut);
// result.put("dataList",certificationProgressList);
// }
// }
}
Map<String,Object> pciEoMap = new HashMap<>();
QueryWrapper<ProjectCertificationInventoryEO> pciQueryWrap = new QueryWrapper<>();
pciQueryWrap.lambda().eq(ProjectCertificationInventoryEO::getProjectLibraryId,projectLibraryId);
List<ProjectCertificationInventoryEO> projectCertificationInventoryEOList = this.projectCertificationInventoryEOService.list(pciQueryWrap);
String pciDutyTerritoryStr = projectCertificationInventoryEOList.stream().map(ProjectCertificationInventoryEO::getDutyTerritory).collect(Collectors.joining(","));
if (StringUtils.isNotEmpty(pciDutyTerritoryStr)) {
List<String> pciDutyTerritoryList = Arrays.asList(pciDutyTerritoryStr.split(",")).stream().distinct().collect(Collectors.toList());
sysDictItems = this.sysDictItemServiceImpl.selectItemsAll().stream().filter(sysDictItem -> {
boolean flag = false;
for (String pliDutyTerritory : pciDutyTerritoryList) {
if(StringUtils.equals(sysDictItem.getItemValue(),pliDutyTerritory)){
flag = true;
break;
}
}
return flag;
}).collect(Collectors.toList());
}
Map<String, List<SysDictItem>> firstLevelDutyTerritoryMapRZ = this.sysDictItemServiceImpl.getFirstLevelSysDictItemByDictCode(DictCodeEnum.DUTY_TERRITORY.getValue(),sysDictItems);
if(ObjectUtils.isNotEmpty(firstLevelDutyTerritoryMapRZ)){
// 根据责任领域组装法规清单数据,后续计算使用
for (Map.Entry<String, List<SysDictItem>> firstLevelMap : firstLevelDutyTerritoryMapRZ.entrySet()) {
String key = firstLevelMap.getKey();
List<SysDictItem> dutyTerritoryList = firstLevelMap.getValue();
if(StringUtils.isEmpty(key) || CollectionUtils.isEmpty(dutyTerritoryList)){
continue;
}
List<ProjectCertificationInventoryEO> pciEoList = projectCertificationInventoryEOList.stream().filter(pciEo -> {
boolean flag = false;
for (SysDictItem dutyTerritory : dutyTerritoryList) {
if (StringUtils.contains(pciEo.getDutyTerritory(), dutyTerritory.getItemValue())) {
flag = true;
break;
}
}
return flag;
}).collect(Collectors.toList());
JSONObject json = new JSONObject();
json.put("dutyTerritoryList",dutyTerritoryList);
json.put("pciEoList",pciEoList);
pciEoMap.put(key,json);
}
}
if (CollectionUtils.isNotEmpty(projectCertificationInventoryEOList) && ObjectUtils.isNotEmpty(pciEoMap)) {
for (Map.Entry<String, Object> pciMap : pciEoMap.entrySet()) {
String key = pciMap.getKey();
JSONObject json = (JSONObject) pciMap.getValue();
List<ProjectCertificationInventoryEO> pciEoList = (List<ProjectCertificationInventoryEO>) json.get("pciEoList");
Map<String, Object> dataMaps = new HashMap<>();
if(StringUtils.equals(OperatorTypeEnum.QUERY_RZ_TASK_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
dataMaps = this.projectLibraryStatisticsService.getRZTaskToConfirmStatisticsGroupByTerritory(pciEoList,params);
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_PREHOMO_STATISTICS.getValue(),operatorType)){
dataMaps = this.projectLibraryStatisticsService.getPrehomoStatisticeGroupByTerritory(pciEoList,params);
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS_ALL.getValue(),operatorType)){
dataMaps = this.projectLibraryStatisticsService.getAllCertificationProgressStatisticsGroupByTerritory(pciEoList,params);
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS_CAR.getValue(),operatorType)){
dataMaps = this.projectLibraryStatisticsService.getCarCertificationProgressStatisticsGroupByTerritory(pciEoList,params);
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS_PART.getValue(),operatorType)){
dataMaps = this.projectLibraryStatisticsService.getPartCertificationProgressStatisticsGroupByTerritory(pciEoList,params);
}
if(ObjectUtils.isEmpty(dataMaps)){
continue;
}
Map<String, Object> dataMap = (Map<String, Object>) dataMaps.get(status);
double amount = (double) dataMap.get("amount");
if(amount != 0){
dataMap.put("dutyTerritoryName",key);
dataList.add(dataMap);
}
}
result.put("dataList",dataList);
} }
return result; return result;
} }
@@ -1884,8 +1986,25 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
String sheetName = ""; String sheetName = "";
String title = ""; String title = "";
if (StringUtils.equals(cut,CutEnum.CN.getValue())) { if (StringUtils.equals(cut,CutEnum.CN.getValue())) {
title = "责任领域,数量"; title = "责任领域,数量,占比";
if(StringUtils.equals(OperatorTypeEnum.QUERY_CURRENT_PROJECT_STATUS_STATISTICS.getValue(),operatorType)){ if(StringUtils.equals(OperatorTypeEnum.QUERY_FG_TASK_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
sheetName = "法规任务确认";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_DESIGN_STATISTICS.getValue(),operatorType)){
sheetName = "设计符合性";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_VERIFY_STATISTICS.getValue(),operatorType)){
sheetName = "验证符合性";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_RZ_TASK_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
sheetName = "认证任务确认";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_PREHOMO_STATISTICS.getValue(),operatorType)){
sheetName = "Pre-Homo流程";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS_ALL.getValue(),operatorType)){
sheetName = "认证进度";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS_CAR.getValue(),operatorType)){
sheetName = "认证进度";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS_PART.getValue(),operatorType)){
sheetName = "认证进度";
}
/*if(StringUtils.equals(OperatorTypeEnum.QUERY_CURRENT_PROJECT_STATUS_STATISTICS.getValue(),operatorType)){
sheetName = "项目状态"; sheetName = "项目状态";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_LISTING_TO_CONFIRM_STATISTICS.getValue(),operatorType)){ }else if(StringUtils.equals(OperatorTypeEnum.QUERY_LISTING_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
sheetName = "清单确认"; sheetName = "清单确认";
@@ -1899,10 +2018,27 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
sheetName = "验证符合性"; sheetName = "验证符合性";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS.getValue(),operatorType)){ }else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS.getValue(),operatorType)){
sheetName = "认证进度"; sheetName = "认证进度";
} }*/
}else if (StringUtils.equals(cut,CutEnum.EN.getValue())) { }else if (StringUtils.equals(cut,CutEnum.EN.getValue())) {
title = "Responsible Field,Amount"; title = "Responsible Field,Quantity,Proportion";
if(StringUtils.equals(OperatorTypeEnum.QUERY_CURRENT_PROJECT_STATUS_STATISTICS.getValue(),operatorType)){ if(StringUtils.equals(OperatorTypeEnum.QUERY_FG_TASK_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
sheetName = "Regulation Task Confirmation";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_DESIGN_STATISTICS.getValue(),operatorType)){
sheetName = "Design Compliance";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_VERIFY_STATISTICS.getValue(),operatorType)){
sheetName = "Verify Compliance";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_RZ_TASK_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
sheetName = "Certification Task Confirmation";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_PREHOMO_STATISTICS.getValue(),operatorType)){
sheetName = "Pre-Homo flow";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS_ALL.getValue(),operatorType)){
sheetName = "Homologation Progress";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS_CAR.getValue(),operatorType)){
sheetName = "Homologation Progress";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS_PART.getValue(),operatorType)){
sheetName = "Homologation Progress";
}
/*if(StringUtils.equals(OperatorTypeEnum.QUERY_CURRENT_PROJECT_STATUS_STATISTICS.getValue(),operatorType)){
sheetName = "Project status"; sheetName = "Project status";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_LISTING_TO_CONFIRM_STATISTICS.getValue(),operatorType)){ }else if(StringUtils.equals(OperatorTypeEnum.QUERY_LISTING_TO_CONFIRM_STATISTICS.getValue(),operatorType)){
sheetName = "Listing to confirm"; sheetName = "Listing to confirm";
@@ -1916,7 +2052,7 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
sheetName = "Verify compliance"; sheetName = "Verify compliance";
}else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS.getValue(),operatorType)){ }else if(StringUtils.equals(OperatorTypeEnum.QUERY_CERTIFICATION_PROGRESS_STATISTICS.getValue(),operatorType)){
sheetName = "Certification progress"; sheetName = "Certification progress";
} }*/
} }
@@ -1934,8 +2070,12 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
String[] titleArr = title.split(","); String[] titleArr = title.split(",");
Row firstRow = sheet.createRow(0); Row firstRow = sheet.createRow(0);
for (int i = 0; i < 2; i++){ CellStyle cellStyleTitle = workbook.createCellStyle();
cellStyleTitle.setAlignment(HorizontalAlignment.CENTER);
for (int i = 0; i < 3; i++){
sheet.setColumnWidth(i, 5000);
Cell cell = firstRow.createCell(i); Cell cell = firstRow.createCell(i);
cell.setCellStyle(cellStyleTitle);
cell.setCellValue(titleArr[i]); cell.setCellValue(titleArr[i]);
} }
@@ -1953,14 +2093,14 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
} }
} }
public void createSheetData(HSSFSheet sheet,Map<String, Object> projectDetailsStatisticsGroupByTerritory, Map<String, Object> params){ public void createSheetData(HSSFSheet sheet,Map<String, Object> exportDataMap, Map<String, Object> params){
List<Map<String,Object>> exportData = new ArrayList<>(); List<Map<String,Object>> exportDataList = (List<Map<String, Object>>) exportDataMap.get("dataList");
exportData = (List<Map<String, Object>>) projectDetailsStatisticsGroupByTerritory.get("dataList");
int rowIndex = 1; int rowIndex = 1;
for (int dataIndex = 0; dataIndex < exportData.size(); dataIndex++) { for (int dataIndex = 0; dataIndex < exportDataList.size(); dataIndex++) {
Row dataRow = sheet.createRow(rowIndex); Row dataRow = sheet.createRow(rowIndex);
dataRow.createCell(0).setCellValue(exportData.get(dataIndex).get("dutyTerritoryName").toString()); dataRow.createCell(0).setCellValue(exportDataList.get(dataIndex).get("dutyTerritoryName").toString());
dataRow.createCell(1).setCellValue(exportData.get(dataIndex).get("amount").toString()); dataRow.createCell(1).setCellValue(String.valueOf(Math.round((Double) exportDataList.get(dataIndex).get("amount"))));
dataRow.createCell(2).setCellValue(exportDataList.get(dataIndex).get("percentage").toString());
rowIndex ++; rowIndex ++;
} }
} }
@@ -1,6 +1,9 @@
package com.jero.modules.project.service.impl; package com.jero.modules.project.service.impl;
import com.jero.modules.project.entity.ProjectCertificationInventoryEO;
import com.jero.modules.project.entity.ProjectLawsInventoryEO; import com.jero.modules.project.entity.ProjectLawsInventoryEO;
import com.jero.modules.project.enums.CertificationInventoryFlowStatusEnum;
import com.jero.modules.project.enums.CertificationProgressEnum;
import com.jero.modules.project.enums.ComplianceFlowStatusEnum; import com.jero.modules.project.enums.ComplianceFlowStatusEnum;
import com.jero.modules.project.enums.TaskAffirmStatusEnum; import com.jero.modules.project.enums.TaskAffirmStatusEnum;
import com.jero.modules.project.service.IProjectCertificationInventoryEOService; import com.jero.modules.project.service.IProjectCertificationInventoryEOService;
@@ -12,7 +15,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.text.DecimalFormat; import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -21,6 +23,8 @@ import java.util.stream.Collectors;
@Service @Service
public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStatisticsService { public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStatisticsService {
private static DecimalFormat df = new DecimalFormat("#.00");
private static String percentSign = "%";
@Autowired @Autowired
private IProjectLawsInventoryEOService projectLawsInventoryEOService; private IProjectLawsInventoryEOService projectLawsInventoryEOService;
@Autowired @Autowired
@@ -30,7 +34,6 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
public Map<String, Object> getFGTaskToConfirmStatisticsGroupByTerritory(List<ProjectLawsInventoryEO> datas, Map<String, Object> params) { public Map<String, Object> getFGTaskToConfirmStatisticsGroupByTerritory(List<ProjectLawsInventoryEO> datas, Map<String, Object> params) {
Map<String, Object> result = new HashMap<>(); Map<String, Object> result = new HashMap<>();
if(CollectionUtils.isNotEmpty(datas)){ if(CollectionUtils.isNotEmpty(datas)){
DecimalFormat df = new DecimalFormat("#.00");
String status = (String) params.get("status"); String status = (String) params.get("status");
Map<String,Object> notStartedMap = new HashMap<>(); Map<String,Object> notStartedMap = new HashMap<>();
@@ -59,7 +62,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double notStartedPercentage = (notStartedComplianceFlowCount / (datas.size() * 2)) * 100; double notStartedPercentage = (notStartedComplianceFlowCount / (datas.size() * 2)) * 100;
String notStartedPercentageStr = notStartedPercentage != 0 ? df.format(notStartedPercentage) : "0"; String notStartedPercentageStr = notStartedPercentage != 0 ? df.format(notStartedPercentage) : "0";
notStartedMap.put("amount",notStartedComplianceFlowCount); notStartedMap.put("amount",notStartedComplianceFlowCount);
notStartedMap.put("percentage",notStartedPercentageStr + "%"); notStartedMap.put("percentage",notStartedPercentageStr + percentSign);
// 待确认 // 待确认
List<ProjectLawsInventoryEO> toConfirmDesignPliEoList = datas.stream().filter(data -> { List<ProjectLawsInventoryEO> toConfirmDesignPliEoList = datas.stream().filter(data -> {
@@ -78,7 +81,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double toConfirmPercentage = (toConfirmComplianceFlowCount / (datas.size() * 2)) * 100; double toConfirmPercentage = (toConfirmComplianceFlowCount / (datas.size() * 2)) * 100;
String toConfirmPercentageStr = toConfirmPercentage != 0 ? df.format(toConfirmPercentage) : "0"; String toConfirmPercentageStr = toConfirmPercentage != 0 ? df.format(toConfirmPercentage) : "0";
toConfirmMap.put("amount",toConfirmComplianceFlowCount); toConfirmMap.put("amount",toConfirmComplianceFlowCount);
toConfirmMap.put("percentage",toConfirmPercentageStr + "%"); toConfirmMap.put("percentage",toConfirmPercentageStr + percentSign);
// 接受 // 接受
List<ProjectLawsInventoryEO> acceptedDesignPliEoList = datas.stream().filter(data -> { List<ProjectLawsInventoryEO> acceptedDesignPliEoList = datas.stream().filter(data -> {
@@ -107,7 +110,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double acceptedPercentage = (acceptedComplianceFlowCount / (datas.size() * 2)) * 100; double acceptedPercentage = (acceptedComplianceFlowCount / (datas.size() * 2)) * 100;
String acceptedPercentageStr = acceptedPercentage != 0 ? df.format(acceptedPercentage) : "0"; String acceptedPercentageStr = acceptedPercentage != 0 ? df.format(acceptedPercentage) : "0";
acceptedMap.put("amount",acceptedComplianceFlowCount); acceptedMap.put("amount",acceptedComplianceFlowCount);
acceptedMap.put("percentage",acceptedPercentageStr + "%"); acceptedMap.put("percentage",acceptedPercentageStr + percentSign);
// 拒绝 // 拒绝
List<ProjectLawsInventoryEO> rejectedDesignPliEoList = datas.stream().filter(data -> { List<ProjectLawsInventoryEO> rejectedDesignPliEoList = datas.stream().filter(data -> {
@@ -126,7 +129,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double rejectedPercentage = (rejectedComplianceFlowCount / (datas.size() * 2)) * 100; double rejectedPercentage = (rejectedComplianceFlowCount / (datas.size() * 2)) * 100;
String rejectedPercentageStr = rejectedPercentage != 0 ? df.format(rejectedPercentage) : "0"; String rejectedPercentageStr = rejectedPercentage != 0 ? df.format(rejectedPercentage) : "0";
rejectedMap.put("amount",rejectedComplianceFlowCount); rejectedMap.put("amount",rejectedComplianceFlowCount);
rejectedMap.put("percentage",rejectedPercentageStr + "%"); rejectedMap.put("percentage",rejectedPercentageStr + percentSign);
result.put(TaskAffirmStatusEnum.NOT_STARTED.getValue(),notStartedMap); result.put(TaskAffirmStatusEnum.NOT_STARTED.getValue(),notStartedMap);
result.put(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue(),toConfirmMap); result.put(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue(),toConfirmMap);
@@ -145,7 +148,6 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
Map<String,Object> complianceMap = new HashMap<>(); Map<String,Object> complianceMap = new HashMap<>();
Map<String,Object> nonComplianceMap = new HashMap<>(); Map<String,Object> nonComplianceMap = new HashMap<>();
DecimalFormat df = new DecimalFormat("#.00");
// 未发起 // 未发起
List<ProjectLawsInventoryEO> notStartedDesignPliEoList = datas.stream().filter(data -> { List<ProjectLawsInventoryEO> notStartedDesignPliEoList = datas.stream().filter(data -> {
boolean flag = ( boolean flag = (
@@ -161,7 +163,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double notStartedPercentage = (notStartedComplianceFlowCount / (datas.size())) * 100; double notStartedPercentage = (notStartedComplianceFlowCount / (datas.size())) * 100;
String notStartedPercentageStr = notStartedPercentage != 0 ? df.format(notStartedPercentage) : "0"; String notStartedPercentageStr = notStartedPercentage != 0 ? df.format(notStartedPercentage) : "0";
notStartedMap.put("amount",notStartedComplianceFlowCount); notStartedMap.put("amount",notStartedComplianceFlowCount);
notStartedMap.put("percentage",notStartedPercentageStr + "%"); notStartedMap.put("percentage",notStartedPercentageStr + percentSign);
// 待确认 // 待确认
List<ProjectLawsInventoryEO> toConfirmDesignPliEoList = datas.stream().filter(data -> { List<ProjectLawsInventoryEO> toConfirmDesignPliEoList = datas.stream().filter(data -> {
@@ -176,7 +178,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double toConfirmPercentage = (toConfirmComplianceFlowCount / (datas.size())) * 100; double toConfirmPercentage = (toConfirmComplianceFlowCount / (datas.size())) * 100;
String toConfirmPercentageStr = toConfirmPercentage != 0 ? df.format(toConfirmPercentage) : "0"; String toConfirmPercentageStr = toConfirmPercentage != 0 ? df.format(toConfirmPercentage) : "0";
toConfirmMap.put("amount",toConfirmComplianceFlowCount); toConfirmMap.put("amount",toConfirmComplianceFlowCount);
toConfirmMap.put("percentage",toConfirmPercentageStr + "%"); toConfirmMap.put("percentage",toConfirmPercentageStr + percentSign);
// 符合 // 符合
List<ProjectLawsInventoryEO> complianceDesignPliEoList = datas.stream().filter(data -> { List<ProjectLawsInventoryEO> complianceDesignPliEoList = datas.stream().filter(data -> {
@@ -189,7 +191,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double compliancePercentage = (complianceFlowCount / (datas.size())) * 100; double compliancePercentage = (complianceFlowCount / (datas.size())) * 100;
String compliancePercentageStr = compliancePercentage != 0 ? df.format(compliancePercentage) : "0"; String compliancePercentageStr = compliancePercentage != 0 ? df.format(compliancePercentage) : "0";
complianceMap.put("amount",complianceFlowCount); complianceMap.put("amount",complianceFlowCount);
complianceMap.put("percentage",compliancePercentageStr + "%"); complianceMap.put("percentage",compliancePercentageStr + percentSign);
// 不符合 // 不符合
List<ProjectLawsInventoryEO> nonComplianceDesignPliEoList = datas.stream().filter(data -> { List<ProjectLawsInventoryEO> nonComplianceDesignPliEoList = datas.stream().filter(data -> {
@@ -202,7 +204,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double nonCompliancePercentage = (nonComplianceComplianceFlowCount / (datas.size())) * 100; double nonCompliancePercentage = (nonComplianceComplianceFlowCount / (datas.size())) * 100;
String nonCompliancePercentageStr = nonCompliancePercentage != 0 ? df.format(nonCompliancePercentage) : "0"; String nonCompliancePercentageStr = nonCompliancePercentage != 0 ? df.format(nonCompliancePercentage) : "0";
nonComplianceMap.put("amount",nonComplianceComplianceFlowCount); nonComplianceMap.put("amount",nonComplianceComplianceFlowCount);
nonComplianceMap.put("percentage",nonCompliancePercentageStr + "%"); nonComplianceMap.put("percentage",nonCompliancePercentageStr + percentSign);
result.put(TaskAffirmStatusEnum.NOT_STARTED.getValue(),notStartedMap); result.put(TaskAffirmStatusEnum.NOT_STARTED.getValue(),notStartedMap);
result.put(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue(),toConfirmMap); result.put(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue(),toConfirmMap);
@@ -220,8 +222,6 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
Map<String,Object> toConfirmMap = new HashMap<>(); Map<String,Object> toConfirmMap = new HashMap<>();
Map<String,Object> complianceMap = new HashMap<>(); Map<String,Object> complianceMap = new HashMap<>();
Map<String,Object> nonComplianceMap = new HashMap<>(); Map<String,Object> nonComplianceMap = new HashMap<>();
DecimalFormat df = new DecimalFormat("#.00");
// 未发起 // 未发起
List<ProjectLawsInventoryEO> notStartedVerifyPliEoList = datas.stream().filter(data -> { List<ProjectLawsInventoryEO> notStartedVerifyPliEoList = datas.stream().filter(data -> {
boolean flag = ( boolean flag = (
@@ -237,7 +237,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double notStartedPercentage = (notStartedComplianceFlowCount / (datas.size())) * 100; double notStartedPercentage = (notStartedComplianceFlowCount / (datas.size())) * 100;
String notStartedPercentageStr = notStartedPercentage != 0 ? df.format(notStartedPercentage) : "0"; String notStartedPercentageStr = notStartedPercentage != 0 ? df.format(notStartedPercentage) : "0";
notStartedMap.put("amount",notStartedComplianceFlowCount); notStartedMap.put("amount",notStartedComplianceFlowCount);
notStartedMap.put("percentage",notStartedPercentageStr + "%"); notStartedMap.put("percentage",notStartedPercentageStr + percentSign);
// 待确认 // 待确认
List<ProjectLawsInventoryEO> toConfirmVerifyPliEoList = datas.stream().filter(data -> { List<ProjectLawsInventoryEO> toConfirmVerifyPliEoList = datas.stream().filter(data -> {
@@ -252,7 +252,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double toConfirmPercentage = (toConfirmComplianceFlowCount / (datas.size())) * 100; double toConfirmPercentage = (toConfirmComplianceFlowCount / (datas.size())) * 100;
String toConfirmPercentageStr = toConfirmPercentage != 0 ? df.format(toConfirmPercentage) : "0"; String toConfirmPercentageStr = toConfirmPercentage != 0 ? df.format(toConfirmPercentage) : "0";
toConfirmMap.put("amount",toConfirmComplianceFlowCount); toConfirmMap.put("amount",toConfirmComplianceFlowCount);
toConfirmMap.put("percentage",toConfirmPercentageStr + "%"); toConfirmMap.put("percentage",toConfirmPercentageStr + percentSign);
// 符合 // 符合
List<ProjectLawsInventoryEO> complianceVerifyPliEoList = datas.stream().filter(data -> { List<ProjectLawsInventoryEO> complianceVerifyPliEoList = datas.stream().filter(data -> {
@@ -265,7 +265,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double compliancePercentage = (complianceFlowCount / (datas.size())) * 100; double compliancePercentage = (complianceFlowCount / (datas.size())) * 100;
String compliancePercentageStr = compliancePercentage != 0 ? df.format(compliancePercentage) : "0"; String compliancePercentageStr = compliancePercentage != 0 ? df.format(compliancePercentage) : "0";
complianceMap.put("amount",complianceFlowCount); complianceMap.put("amount",complianceFlowCount);
complianceMap.put("percentage",compliancePercentageStr + "%"); complianceMap.put("percentage",compliancePercentageStr + percentSign);
// 不符合 // 不符合
List<ProjectLawsInventoryEO> nonComplianceVerifyPliEoList = datas.stream().filter(data -> { List<ProjectLawsInventoryEO> nonComplianceVerifyPliEoList = datas.stream().filter(data -> {
@@ -278,7 +278,7 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
double nonCompliancePercentage = (nonComplianceComplianceFlowCount / (datas.size())) * 100; double nonCompliancePercentage = (nonComplianceComplianceFlowCount / (datas.size())) * 100;
String nonCompliancePercentageStr = nonCompliancePercentage != 0 ? df.format(nonCompliancePercentage) : "0"; String nonCompliancePercentageStr = nonCompliancePercentage != 0 ? df.format(nonCompliancePercentage) : "0";
nonComplianceMap.put("amount",nonComplianceComplianceFlowCount); nonComplianceMap.put("amount",nonComplianceComplianceFlowCount);
nonComplianceMap.put("percentage",nonCompliancePercentageStr + "%"); nonComplianceMap.put("percentage",nonCompliancePercentageStr + percentSign);
result.put(TaskAffirmStatusEnum.NOT_STARTED.getValue(),notStartedMap); result.put(TaskAffirmStatusEnum.NOT_STARTED.getValue(),notStartedMap);
result.put(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue(),toConfirmMap); result.put(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue(),toConfirmMap);
@@ -287,4 +287,350 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
} }
return result; return result;
} }
@Override
public Map<String, Object> getRZTaskToConfirmStatisticsGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params) {
Map<String, Object> result = new HashMap<>();
if(CollectionUtils.isNotEmpty(datas)){
Map<String,Object> notStartedMap = new HashMap<>();
Map<String,Object> toConfirmMap = new HashMap<>();
Map<String,Object> acceptedMap = new HashMap<>();
Map<String,Object> rejectedMap = new HashMap<>();
// 未发起
List<ProjectCertificationInventoryEO> notStartedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getFlowStatus(), CertificationInventoryFlowStatusEnum.LIST_TO_BE_RELEASED.getValue())
|| StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.CERTIFICATION_RETURNED.getValue())
|| StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.LIST_TO_BE_CHECKED.getValue())
);
return flag;
}).collect(Collectors.toList());
double notStartedCount = (double) notStartedPciEoList.size();
double notStartedPercentage = (notStartedCount / (datas.size())) * 100;
String notStartedPercentageStr = notStartedPercentage != 0 ? df.format(notStartedPercentage) : "0";
notStartedMap.put("amount",notStartedCount);
notStartedMap.put("percentage",notStartedPercentageStr + percentSign);
// 待确认
List<ProjectCertificationInventoryEO> toConfirmPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.TASK_TO_BE_CONFIRMED.getValue())
);
return flag;
}).collect(Collectors.toList());
double toConfirmCount = (double) toConfirmPciEoList.size();
double toConfirmPercentage = (toConfirmCount / (datas.size())) * 100;
String toConfirmPercentageStr = toConfirmPercentage != 0 ? df.format(toConfirmPercentage) : "0";
toConfirmMap.put("amount",toConfirmCount);
toConfirmMap.put("percentage",toConfirmPercentageStr + percentSign);
// 接受
List<ProjectCertificationInventoryEO> acceptedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.RESULTS_TO_BE_SUBMITTED.getValue())
|| StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.RESULTS_TO_BE_REVIEWED.getValue())
|| StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.REVIEW_AND_PASS.getValue())
|| StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.REVIEW_AND_RETURN.getValue())
);
return flag;
}).collect(Collectors.toList());
double acceptedCount = (double) acceptedPciEoList.size();
double acceptedPercentage = (acceptedCount / (datas.size())) * 100;
String acceptedPercentageStr = acceptedPercentage != 0 ? df.format(acceptedPercentage) : "0";
acceptedMap.put("amount",acceptedCount);
acceptedMap.put("percentage",acceptedPercentageStr + percentSign);
// 拒绝
List<ProjectCertificationInventoryEO> rejectedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.REFUSAL_OF_RESPONSIBLE_PERSON.getValue())
);
return flag;
}).collect(Collectors.toList());
double rejectedCount = (double) rejectedPciEoList.size();
double rejectedPercentage = (rejectedCount / (datas.size())) * 100;
String rejectedPercentageStr = rejectedPercentage != 0 ? df.format(rejectedPercentage) : "0";
rejectedMap.put("amount",rejectedCount);
rejectedMap.put("percentage",rejectedPercentageStr + percentSign);
result.put(TaskAffirmStatusEnum.NOT_STARTED.getValue(),notStartedMap);
result.put(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue(),toConfirmMap);
result.put(TaskAffirmStatusEnum.ACCEPTED.getValue(),acceptedMap);
result.put(TaskAffirmStatusEnum.REJECTED.getValue(),rejectedMap);
}
return result;
}
@Override
public Map<String, Object> getPrehomoStatisticeGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params) {
Map<String, Object> result = new HashMap<>();
if(CollectionUtils.isNotEmpty(datas)){
DecimalFormat df = new DecimalFormat("#.00");
Map<String,Object> notStartedMap = new HashMap<>();
Map<String,Object> toConfirmMap = new HashMap<>();
Map<String,Object> acceptedMap = new HashMap<>();
Map<String,Object> rejectedMap = new HashMap<>();
// 未发起
List<ProjectCertificationInventoryEO> notStartedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.LIST_TO_BE_RELEASED.getValue())
|| StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.CERTIFICATION_RETURNED.getValue())
|| StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.LIST_TO_BE_CHECKED.getValue())
|| StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.TASK_TO_BE_CONFIRMED.getValue())
|| StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.REFUSAL_OF_RESPONSIBLE_PERSON.getValue())
);
return flag;
}).collect(Collectors.toList());
double notStartedCount = (double) notStartedPciEoList.size();
double notStartedPercentage = (notStartedCount / (datas.size())) * 100;
String notStartedPercentageStr = notStartedPercentage != 0 ? df.format(notStartedPercentage) : "0";
notStartedMap.put("amount",notStartedCount);
notStartedMap.put("percentage",notStartedPercentageStr + percentSign);
// 待确认
List<ProjectCertificationInventoryEO> toConfirmPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.RESULTS_TO_BE_SUBMITTED.getValue())
|| StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.RESULTS_TO_BE_REVIEWED.getValue())
);
return flag;
}).collect(Collectors.toList());
double toConfirmCount = (double) toConfirmPciEoList.size();
double toConfirmPercentage = (toConfirmCount / (datas.size())) * 100;
String toConfirmPercentageStr = toConfirmPercentage != 0 ? df.format(toConfirmPercentage) : "0";
toConfirmMap.put("amount",toConfirmCount);
toConfirmMap.put("percentage",toConfirmPercentageStr + percentSign);
// 审查通过
List<ProjectCertificationInventoryEO> acceptedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.REVIEW_AND_PASS.getValue())
);
return flag;
}).collect(Collectors.toList());
double acceptedCount = (double) acceptedPciEoList.size();
double acceptedPercentage = (acceptedCount / (datas.size())) * 100;
String acceptedPercentageStr = acceptedPercentage != 0 ? df.format(acceptedPercentage) : "0";
acceptedMap.put("amount",acceptedCount);
acceptedMap.put("percentage",acceptedPercentageStr + percentSign);
// 审查退回
List<ProjectCertificationInventoryEO> rejectedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getFlowStatus(),CertificationInventoryFlowStatusEnum.REVIEW_AND_RETURN.getValue())
);
return flag;
}).collect(Collectors.toList());
double rejectedCount = (double) rejectedPciEoList.size();
double rejectedPercentage = (rejectedCount / (datas.size())) * 100;
String rejectedPercentageStr = rejectedPercentage != 0 ? df.format(rejectedPercentage) : "0";
rejectedMap.put("amount",rejectedCount);
rejectedMap.put("percentage",rejectedPercentageStr + percentSign);
result.put(TaskAffirmStatusEnum.NOT_STARTED.getValue(),notStartedMap);
result.put(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue(),toConfirmMap);
result.put(CertificationInventoryFlowStatusEnum.REVIEW_AND_PASS.getValue(),acceptedMap);
result.put(CertificationInventoryFlowStatusEnum.REVIEW_AND_RETURN.getValue(),rejectedMap);
}
return result;
}
@Override
public Map<String, Object> getAllCertificationProgressStatisticsGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params) {
Map<String, Object> result = new HashMap<>();
if(CollectionUtils.isNotEmpty(datas)){
Map<String,Object> notStartedMap = new HashMap<>();
Map<String,Object> inProgressMap = new HashMap<>();
Map<String,Object> testPassedMap = new HashMap<>();
Map<String,Object> testFailedMap = new HashMap<>();
// 未开始
List<ProjectCertificationInventoryEO> notStartedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(), CertificationProgressEnum.NOT_START.getValue())
);
return flag;
}).collect(Collectors.toList());
double notStartedCount = (double) notStartedPciEoList.size();
double notStartedPercentage = (notStartedCount / (datas.size())) * 100;
String notStartedPercentageStr = notStartedPercentage != 0 ? df.format(notStartedPercentage) : "0";
notStartedMap.put("amount",notStartedCount);
notStartedMap.put("percentage",notStartedPercentageStr + percentSign);
// 进行中
List<ProjectCertificationInventoryEO> inProgressPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.IN_PROGRESS.getValue())
|| StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.COMPONENT_REPORT_NOT_SUBMITTED.getValue())
);
return flag;
}).collect(Collectors.toList());
double inProgressCount = (double) inProgressPciEoList.size();
double inProgressPercentage = (inProgressCount / (datas.size())) * 100;
String inProgressPercentageStr = inProgressPercentage != 0 ? df.format(inProgressPercentage) : "0";
inProgressMap.put("amount",inProgressCount);
inProgressMap.put("percentage",inProgressPercentageStr + percentSign);
// 实验通过
List<ProjectCertificationInventoryEO> testPassedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.TEST_PASSED.getValue())
|| StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.COMPONENT_REPORT_SUBMITTED.getValue())
|| StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.COMPONENT_REPORT_HAS_BEEN_STORED.getValue())
);
return flag;
}).collect(Collectors.toList());
double testPassedCount = (double) testPassedPciEoList.size();
double testPassedPercentage = (testPassedCount / (datas.size())) * 100;
String testPassedPercentageStr = testPassedPercentage != 0 ? df.format(testPassedPercentage) : "0";
testPassedMap.put("amount",testPassedCount);
testPassedMap.put("percentage",testPassedPercentageStr + percentSign);
// 实验失败
List<ProjectCertificationInventoryEO> testFailedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.TEST_FAILED.getValue())
);
return flag;
}).collect(Collectors.toList());
double testFailedCount = (double) testFailedPciEoList.size();
double testFailedPercentage = (testFailedCount / (datas.size())) * 100;
String testFailedPercentageStr = testFailedPercentage != 0 ? df.format(testFailedPercentage) : "0";
testFailedMap.put("amount",testFailedCount);
testFailedMap.put("percentage",testFailedPercentageStr + percentSign);
result.put(CertificationProgressEnum.NOT_START.getValue(),notStartedMap);
result.put(CertificationProgressEnum.IN_PROGRESS.getValue(),inProgressMap);
result.put(CertificationProgressEnum.TEST_PASSED.getValue(),testPassedMap);
result.put(CertificationProgressEnum.TEST_FAILED.getValue(),testFailedMap);
}
return result;
}
@Override
public Map<String, Object> getCarCertificationProgressStatisticsGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params) {
Map<String, Object> result = new HashMap<>();
if(CollectionUtils.isNotEmpty(datas)){
Map<String,Object> notStartedMap = new HashMap<>();
Map<String,Object> inProgressMap = new HashMap<>();
Map<String,Object> testPassedMap = new HashMap<>();
Map<String,Object> testFailedMap = new HashMap<>();
// 未开始
List<ProjectCertificationInventoryEO> notStartedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.NOT_START.getValue())
);
return flag;
}).collect(Collectors.toList());
double notStartedCount = (double) notStartedPciEoList.size();
double notStartedPercentage = (notStartedCount / (datas.size())) * 100;
String notStartedPercentageStr = notStartedPercentage != 0 ? df.format(notStartedPercentage) : "0";
notStartedMap.put("amount",notStartedCount);
notStartedMap.put("percentage",notStartedPercentageStr + percentSign);
// 进行中
List<ProjectCertificationInventoryEO> inProgressPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.IN_PROGRESS.getValue())
);
return flag;
}).collect(Collectors.toList());
double inProgressCount = (double) inProgressPciEoList.size();
double inProgressPercentage = (inProgressCount / (datas.size())) * 100;
String inProgressPercentageStr = inProgressPercentage != 0 ? df.format(inProgressPercentage) : "0";
inProgressMap.put("amount",inProgressCount);
inProgressMap.put("percentage",inProgressPercentageStr + percentSign);
// 实验通过
List<ProjectCertificationInventoryEO> testPassedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.TEST_PASSED.getValue())
);
return flag;
}).collect(Collectors.toList());
double testPassedCount = (double) testPassedPciEoList.size();
double testPassedPercentage = (testPassedCount / (datas.size())) * 100;
String testPassedPercentageStr = testPassedPercentage != 0 ? df.format(testPassedPercentage) : "0";
testPassedMap.put("amount",testPassedCount);
testPassedMap.put("percentage",testPassedPercentageStr + percentSign);
// 实验失败
List<ProjectCertificationInventoryEO> testFailedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.TEST_FAILED.getValue())
);
return flag;
}).collect(Collectors.toList());
double testFailedCount = (double) testFailedPciEoList.size();
double testFailedPercentage = (testFailedCount / (datas.size())) * 100;
String testFailedPercentageStr = testFailedPercentage != 0 ? df.format(testFailedPercentage) : "0";
testFailedMap.put("amount",testFailedCount);
testFailedMap.put("percentage",testFailedPercentageStr + percentSign);
result.put(CertificationProgressEnum.NOT_START.getValue(),notStartedMap);
result.put(CertificationProgressEnum.IN_PROGRESS.getValue(),inProgressMap);
result.put(CertificationProgressEnum.TEST_PASSED.getValue(),testPassedMap);
result.put(CertificationProgressEnum.TEST_FAILED.getValue(),testFailedMap);
}
return result;
}
@Override
public Map<String, Object> getPartCertificationProgressStatisticsGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params) {
Map<String, Object> result = new HashMap<>();
if(CollectionUtils.isNotEmpty(datas)){
Map<String,Object> notSubmitMap = new HashMap<>();
Map<String,Object> reportSubmitMap = new HashMap<>();
Map<String,Object> storedMap = new HashMap<>();
// 部件报告未提交
List<ProjectCertificationInventoryEO> notSubmitPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.COMPONENT_REPORT_NOT_SUBMITTED.getValue())
);
return flag;
}).collect(Collectors.toList());
double notSubmitCount = (double) notSubmitPciEoList.size();
double notSubmitPercentage = (notSubmitCount / (datas.size())) * 100;
String notSubmitPercentageStr = notSubmitPercentage != 0 ? df.format(notSubmitPercentage) : "0";
notSubmitMap.put("amount",notSubmitCount);
notSubmitMap.put("percentage",notSubmitPercentageStr + percentSign);
// 部件报告已提交
List<ProjectCertificationInventoryEO> reportSubmitPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.COMPONENT_REPORT_SUBMITTED.getValue())
);
return flag;
}).collect(Collectors.toList());
double reportSubmitCount = (double) reportSubmitPciEoList.size();
double reportSubmitPercentage = (reportSubmitCount / (datas.size())) * 100;
String reportSubmitPercentageStr = reportSubmitPercentage != 0 ? df.format(reportSubmitPercentage) : "0";
reportSubmitMap.put("amount",reportSubmitCount);
reportSubmitMap.put("percentage",reportSubmitPercentageStr + percentSign);
// 部件报告已入库
List<ProjectCertificationInventoryEO> storedPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.COMPONENT_REPORT_HAS_BEEN_STORED.getValue())
);
return flag;
}).collect(Collectors.toList());
double storedCount = (double) storedPciEoList.size();
double storedPercentage = (storedCount / (datas.size())) * 100;
String storedPercentageStr = storedPercentage != 0 ? df.format(storedPercentage) : "0";
storedMap.put("amount",storedCount);
storedMap.put("percentage",storedPercentageStr + percentSign);
result.put(CertificationProgressEnum.COMPONENT_REPORT_NOT_SUBMITTED.getValue(),notSubmitMap);
result.put(CertificationProgressEnum.COMPONENT_REPORT_SUBMITTED.getValue(),reportSubmitMap);
result.put(CertificationProgressEnum.COMPONENT_REPORT_HAS_BEEN_STORED.getValue(),storedMap);
}
return result;
}
} }