平台件-统计导出

This commit is contained in:
zhn
2023-10-17 13:44:45 +08:00
parent c9926f7e72
commit 906a72fd66
5 changed files with 327 additions and 256 deletions
@@ -10088,16 +10088,16 @@ public class PlatformProjectLawsInventoryEOServiceImpl extends ServiceImpl<Platf
Map<String,Object> rejectedMap = new HashMap<>();//责任人拒绝
listToBeReleasedMap.put("designTaskAffirmStatus",ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue());
listToBeReleasedMap.put("designTaskAffirmStatusCount",rejectedCount);
listToBeReleasedMap.put("designTaskAffirmStatusCount",listToBeReleasedCount);
taskToBeInitiatedMap.put("designTaskAffirmStatus",ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue());
taskToBeInitiatedMap.put("designTaskAffirmStatusCount",rejectedCount);
taskToBeInitiatedMap.put("designTaskAffirmStatusCount",taskToBeInitiatedCount);
taskToBeConfirmedMap.put("designTaskAffirmStatus",ComplianceFlowStatusEnum.TASK_TO_BE_CONFIRMED.getValue());
taskToBeConfirmedMap.put("designTaskAffirmStatusCount",rejectedCount);
taskToBeConfirmedMap.put("designTaskAffirmStatusCount",taskToBeConfirmedCount);
acceptedMap.put("designTaskAffirmStatus",ComplianceFlowStatusEnum.DUTY_PERSON_ACCEPTED.getValue());
acceptedMap.put("designTaskAffirmStatusCount",rejectedCount);
acceptedMap.put("designTaskAffirmStatusCount",acceptedCount);
rejectedMap.put("designTaskAffirmStatus",ComplianceFlowStatusEnum.DUTY_PERSON_REJECTED.getValue());
rejectedMap.put("designTaskAffirmStatusCount",rejectedCount);
@@ -77,7 +77,6 @@ import com.jero.modules.system.service.ISysUserService;
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
import com.jero.modules.system.util.StringUtils;
import com.jero.modules.todoCenter.entity.ProcessInfoDetailEO;
import com.jero.modules.todoCenter.enums.TodoCenterStatusEnum;
import com.jero.modules.todoCenter.service.IProcessInfoDetailEOService;
import com.jero.modules.top.entity.TopProjectEO;
import com.jero.modules.top.service.ITopProjectEOService;
@@ -2694,33 +2693,58 @@ public class PlatformProjectLibraryBaseServiceImpl extends ServiceImpl<PlatformP
* @param params
*/
private void exportRegulatoryManagement(HSSFWorkbook workbook,Map<String,Object> params) {
// String cut = (String) params.get("cut");
// String sheetName = "法规符合性管理";
// String firstTitle = "法规任务确认," +
// "设计符合性确认," +
// "验证符合性确认";
// String secondTitle = "责任领域(一级)," +
// "未发起,待确认,接受,拒绝,完成度," +
// "未发起,待确认,符合,不符合,完成度," +
// "未发起,待确认,符合,不符合,完成度";
// if(StringUtils.equals(cut,CutEnum.EN.getValue())){
// sheetName = "Regulatory compliance management";
// firstTitle = "Regulatory task confirmation," +
// "Design Conformity Verification," +
// "Verification Conformity Confirmation";
// secondTitle = "Area of responsibility (level 1)," +
// "Not launched,To be confirmed,Accept,Refuse,Degree of completion," +
// "Not launched,To be confirmed,Meet,Not meet,Degree of completion," +
// "Not launched,To be confirmed,Meet,Not meet,Degree of completion";
// }
String cut = (String) params.get("cut");
String sheetName = "法规符合性管理";
String firstTitle = "法规任务确认," +
"设计符合性确认," +
"验证符合性确认";
String firstTitle = "设计任务确认," +
"验证任务确认," +
"设计符合性," +
"验证符合性";
String secondTitle = "责任领域(一级)," +
"发起,待确认,接受,拒绝,完成度," +
"发起,待确认,符合,不符合,完成度," +
"未发起,待确认,符合,不符合,完成度";
"清单待发布,任务待发起,任务待确认,责任人接受,责任人拒绝,完成度," +
"清单待发布,任务待发起,任务待确认,责任人接受,责任人拒绝,完成度," +
"任务待确认,结果待提交,结果待审查,符合,不符合,待追踪,完成度," +
"任务待确认,结果待提交,结果待审查,符合,不符合,待追踪,完成度";
if(StringUtils.equals(cut,CutEnum.EN.getValue())){
sheetName = "Regulatory compliance management";
firstTitle = "Regulatory task confirmation," +
"Design Conformity Verification," +
"Verification Conformity Confirmation";
firstTitle = "Design Task Confirmation," +
"Verification Task Confirmation," +
"Design Compliance," +
"Verify Compliance";
secondTitle = "Area of responsibility (level 1)," +
"Not launched,To be confirmed,Accept,Refuse,Degree of completion," +
"Not launched,To be confirmed,Meet,Not meet,Degree of completion," +
"Not launched,To be confirmed,Meet,Not meet,Degree of completion";
"List To Be Released,Task To Be Initiated,Task To Be Confirmed,Accepted By The Responsible Person,Rejected By The Responsible Person,Degree Of Completion," +
"List To Be Released,Task To Be Initiated,Task To Be Confirmed,Accepted By The Responsible Person,Rejected By The Responsible Person,Degree Of Completion," +
"Task To Be Confirmed,Results To Be Submitted,Results To Be Reviewed,Compliance,Non-compliance,To Be Tracked,Degree Of Completion," +
"Task To Be Confirmed,Results To Be Submitted,Results To Be Reviewed,Compliance,Non-compliance,To Be Tracked,Degree Of Completion";
}
HSSFSheet sheet = workbook.createSheet(sheetName);
//合并单元格 起始行,结束行,起始列,结束列
CellRangeAddress region1 = new CellRangeAddress(0, 0, 1, 5);
CellRangeAddress region1 = new CellRangeAddress(0, 0, 1, 6);
sheet.addMergedRegion(region1);
CellRangeAddress region2 = new CellRangeAddress(0, 0, 6, 10);
CellRangeAddress region2 = new CellRangeAddress(0, 0, 7, 12);
sheet.addMergedRegion(region2);
CellRangeAddress region3 = new CellRangeAddress(0, 0, 11, 15);
CellRangeAddress region3 = new CellRangeAddress(0, 0, 13, 19);
sheet.addMergedRegion(region3);
CellRangeAddress region4 = new CellRangeAddress(0, 0, 20, 26);
sheet.addMergedRegion(region4);
String[] firstTitleArr = firstTitle.split(",");
String[] secondTitleArr = secondTitle.split(",");
@@ -2729,16 +2753,18 @@ public class PlatformProjectLibraryBaseServiceImpl extends ServiceImpl<PlatformP
CellStyle cellStyleTitle = workbook.createCellStyle();
cellStyleTitle.setAlignment(HorizontalAlignment.CENTER);
for (int i = 0; i <= 15; i++){
for (int i = 0; i <= 26; i++){
sheet.setColumnWidth(i, 3500);
Cell firstRowCell = firstRow.createCell(i);
firstRowCell.setCellStyle(cellStyleTitle);
if(i == 1){
firstRowCell.setCellValue(firstTitleArr[0]);
}else if(i==6){
}else if(i==7){
firstRowCell.setCellValue(firstTitleArr[1]);
}else if(i==11){
}else if(i==13){
firstRowCell.setCellValue(firstTitleArr[2]);
}else if(i==20){
firstRowCell.setCellValue(firstTitleArr[3]);
}
Cell secondRowCell = secondRow.createCell(i);
@@ -2804,59 +2830,104 @@ public class PlatformProjectLibraryBaseServiceImpl extends ServiceImpl<PlatformP
Row dataRow = sheet.createRow(dataIndex);
dataRow.createCell(0).setCellValue(key);
Map<String, Object> taskConfirmMap= this.projectLibraryStatisticsService.getFGTaskToConfirmStatisticsGroupByTerritory(pliEoList, params);
Map<String,Object> taskConfirmNotStartedMap = (Map<String, Object>) taskConfirmMap.get(TaskAffirmStatusEnum.NOT_STARTED.getValue());
double taskConfirmNotStartedAmount = (double) taskConfirmNotStartedMap.get("amount");
Map<String,Object> taskConfirmToConfirmMap = (Map<String, Object>) taskConfirmMap.get(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue());
double taskConfirmToConfirmAmount = (double) taskConfirmToConfirmMap.get("amount");
Map<String,Object> taskConfirmAcceptedMap = (Map<String, Object>) taskConfirmMap.get(TaskAffirmStatusEnum.ACCEPTED.getValue());
double taskConfirmAcceptedAmount = (double) taskConfirmAcceptedMap.get("amount");
Map<String,Object> taskConfirmRejectedMap = (Map<String, Object>) taskConfirmMap.get(TaskAffirmStatusEnum.REJECTED.getValue());
double taskConfirmRejectedAmount = (double) taskConfirmRejectedMap.get("amount");
dataRow.createCell(1).setCellValue(taskConfirmNotStartedAmount);
dataRow.createCell(2).setCellValue(taskConfirmToConfirmAmount);
dataRow.createCell(3).setCellValue(taskConfirmAcceptedAmount);
dataRow.createCell(4).setCellValue(taskConfirmRejectedAmount);
double taskConfirmCount = taskConfirmNotStartedAmount + taskConfirmToConfirmAmount + taskConfirmAcceptedAmount + taskConfirmRejectedAmount;
double taskConfirmPercentage = (taskConfirmAcceptedAmount / taskConfirmCount) * 100;
String taskConfirmPercentageStr = (taskConfirmPercentage != 0 && (taskConfirmCount !=0 )) ? df.format(taskConfirmPercentage) : "0";
dataRow.createCell(5).setCellValue(taskConfirmPercentageStr + percentSign);
//设计任务确认
Map<String, Object> designTaskConfirmMap= this.projectLibraryStatisticsService.getFGTaskToConfirmStatisticsGroupByTerritoryDesign(pliEoList, params);
Map<String,Object> designTaskListToBeReleasedMap = (Map<String, Object>) designTaskConfirmMap.get(ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue());
double designTaskListToBeReleasedAmount = (double) designTaskListToBeReleasedMap.get("amount");
Map<String,Object> designTaskToBeInitiatedMap = (Map<String, Object>) designTaskConfirmMap.get(ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue());
double designTaskToBeInitiatedAmount = (double) designTaskToBeInitiatedMap.get("amount");
Map<String,Object> designTaskToBeConfirmedMap = (Map<String, Object>) designTaskConfirmMap.get(ComplianceFlowStatusEnum.TASK_TO_BE_CONFIRMED.getValue());
double designTaskToBeConfirmedAmount = (double) designTaskToBeConfirmedMap.get("amount");
Map<String,Object> designAcceptedMap = (Map<String, Object>) designTaskConfirmMap.get(ComplianceFlowStatusEnum.DUTY_PERSON_ACCEPTED.getValue());
double designAcceptedAmount = (double) designAcceptedMap.get("amount");
Map<String,Object> designRejectedMap = (Map<String, Object>) designTaskConfirmMap.get(ComplianceFlowStatusEnum.DUTY_PERSON_REJECTED.getValue());
double designRejectedAmount = (double) designRejectedMap.get("amount");
dataRow.createCell(1).setCellValue(designTaskListToBeReleasedAmount);
dataRow.createCell(2).setCellValue(designTaskToBeInitiatedAmount);
dataRow.createCell(3).setCellValue(designTaskToBeConfirmedAmount);
dataRow.createCell(4).setCellValue(designAcceptedAmount);
dataRow.createCell(5).setCellValue(designRejectedAmount);
double designTaskConfirmCount = designTaskListToBeReleasedAmount + designTaskToBeInitiatedAmount + designTaskToBeConfirmedAmount + designAcceptedAmount + designRejectedAmount;
double designTaskConfirmPercentage = (designAcceptedAmount / designTaskConfirmCount) * 100;
String designTaskConfirmPercentageStr = (designTaskConfirmPercentage != 0 && (designTaskConfirmCount !=0 )) ? df.format(designTaskConfirmPercentage) : "0";
dataRow.createCell(6).setCellValue(designTaskConfirmPercentageStr + percentSign);
//验证任务确认
Map<String, Object> verifyTaskConfirmMap= this.projectLibraryStatisticsService.getFGTaskToConfirmStatisticsGroupByTerritoryVerify(pliEoList, params);
Map<String,Object> verifyTaskListToBeReleasedMap = (Map<String, Object>) verifyTaskConfirmMap.get(ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue());
double verifyTaskListToBeReleasedAmount = (double) verifyTaskListToBeReleasedMap.get("amount");
Map<String,Object> verifyTaskToBeInitiatedMap = (Map<String, Object>) verifyTaskConfirmMap.get(ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue());
double verifyTaskToBeInitiatedAmount = (double) verifyTaskToBeInitiatedMap.get("amount");
Map<String,Object> verifyTaskToBeConfirmedMap = (Map<String, Object>) verifyTaskConfirmMap.get(ComplianceFlowStatusEnum.TASK_TO_BE_CONFIRMED.getValue());
double verifyTaskToBeConfirmedAmount = (double) verifyTaskToBeConfirmedMap.get("amount");
Map<String,Object> verifyAcceptedMap = (Map<String, Object>) verifyTaskConfirmMap.get(ComplianceFlowStatusEnum.DUTY_PERSON_ACCEPTED.getValue());
double verifyAcceptedAmount = (double) verifyAcceptedMap.get("amount");
Map<String,Object> verifyRejectedMap = (Map<String, Object>) verifyTaskConfirmMap.get(ComplianceFlowStatusEnum.DUTY_PERSON_REJECTED.getValue());
double verifyRejectedAmount = (double) verifyRejectedMap.get("amount");
dataRow.createCell(7).setCellValue(verifyTaskListToBeReleasedAmount);
dataRow.createCell(8).setCellValue(verifyTaskToBeInitiatedAmount);
dataRow.createCell(9).setCellValue(verifyTaskToBeConfirmedAmount);
dataRow.createCell(10).setCellValue(verifyAcceptedAmount);
dataRow.createCell(11).setCellValue(verifyRejectedAmount);
double verifyTaskConfirmCount = verifyTaskListToBeReleasedAmount + verifyTaskToBeInitiatedAmount + verifyTaskToBeConfirmedAmount + verifyAcceptedAmount + verifyRejectedAmount;
double verifyTaskConfirmPercentage = (verifyAcceptedAmount / verifyTaskConfirmCount) * 100;
String verifyTaskConfirmPercentageStr = (verifyTaskConfirmPercentage != 0 && (verifyTaskConfirmCount !=0 )) ? df.format(verifyTaskConfirmPercentage) : "0";
dataRow.createCell(12).setCellValue(verifyTaskConfirmPercentageStr + percentSign);
//设计符合性
Map<String, Object> designMap = this.projectLibraryStatisticsService.getDesignComplianceStatisticeGroupByTerritory(pliEoList, params);
Map<String,Object> designNotStartedMap = (Map<String, Object>) designMap.get(TaskAffirmStatusEnum.NOT_STARTED.getValue());
double designNotStartedAmount = (double) designNotStartedMap.get("amount");
Map<String,Object> designToConfirmMap = (Map<String, Object>) designMap.get(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue());
double designToConfirmAmount = (double) designToConfirmMap.get("amount");
Map<String,Object> designComplianceMap = (Map<String, Object>) designMap.get(ComplianceFlowStatusEnum.CONFORMITY.getValue());
double designComplianceAmount = (double) designComplianceMap.get("amount");
Map<String,Object> designNonComplianceMap = (Map<String, Object>) designMap.get(ComplianceFlowStatusEnum.INCONFORMITY.getValue());
double designNonComplianceAmount = (double) designNonComplianceMap.get("amount");
dataRow.createCell(6).setCellValue(designNotStartedAmount);
dataRow.createCell(7).setCellValue(designToConfirmAmount);
dataRow.createCell(8).setCellValue(designComplianceAmount);
dataRow.createCell(9).setCellValue(designNonComplianceAmount);
double designCount = designNotStartedAmount + designToConfirmAmount + designComplianceAmount + designNonComplianceAmount;
double designPercentage = (designComplianceAmount / designCount) * 100;
String designPercentageStr = (designPercentage != 0 && (designCount !=0 )) ? df.format(designPercentage) : "0";
dataRow.createCell(10).setCellValue(designPercentageStr + percentSign);
Map<String,Object> taskToBeConfirmedMapDesign = (Map<String, Object>) designMap.get(ComplianceFlowStatusEnum.TASK_TO_BE_CONFIRMED.getValue());
double taskToBeConfirmedAmountDesign = (double) taskToBeConfirmedMapDesign.get("amount");
Map<String,Object> resultsToBeSubmittedMapDesign = (Map<String, Object>) designMap.get(ComplianceFlowStatusEnum.RESULTS_TO_BE_SUBMITTED.getValue());
double resultsToBeSubmittedAmountDesign = (double) resultsToBeSubmittedMapDesign.get("amount");
Map<String,Object> resultsToBeReviewedMapDesign = (Map<String, Object>) designMap.get(ComplianceFlowStatusEnum.RESULTS_TO_BE_REVIEWED.getValue());
double resultsToBeReviewedAmountDesign = (double) resultsToBeReviewedMapDesign.get("amount");
Map<String,Object> complianceMapDesign = (Map<String, Object>) designMap.get(ComplianceFlowStatusEnum.CONFORMITY.getValue());
double complianceAmountDesign = (double) complianceMapDesign.get("amount");
Map<String,Object> nonComplianceMapDesign = (Map<String, Object>) designMap.get(ComplianceFlowStatusEnum.INCONFORMITY.getValue());
double nonComplianceAmountDesign = (double) nonComplianceMapDesign.get("amount");
Map<String,Object> toBeTrackedMapDesign = (Map<String, Object>) designMap.get(ComplianceFlowStatusEnum.TO_TRACK.getValue());
double toBeTrackedAmountDesign = (double) toBeTrackedMapDesign.get("amount");
dataRow.createCell(13).setCellValue(taskToBeConfirmedAmountDesign);
dataRow.createCell(14).setCellValue(resultsToBeSubmittedAmountDesign);
dataRow.createCell(15).setCellValue(resultsToBeReviewedAmountDesign);
dataRow.createCell(16).setCellValue(complianceAmountDesign);
dataRow.createCell(17).setCellValue(nonComplianceAmountDesign);
dataRow.createCell(18).setCellValue(toBeTrackedAmountDesign);
double designCount = taskToBeConfirmedAmountDesign + resultsToBeSubmittedAmountDesign + resultsToBeReviewedAmountDesign + nonComplianceAmountDesign + nonComplianceAmountDesign + toBeTrackedAmountDesign;
double designPercentage = (complianceAmountDesign / designCount) * 100;
String designPercentageStr = (designPercentage != 0 && (designCount !=0 )) ? df.format(designPercentage) : "0";
dataRow.createCell(19).setCellValue(designPercentageStr + percentSign);
//验证符合性(明天从此位置开始改)
Map<String, Object> verifyMap = this.projectLibraryStatisticsService.getVerifyComplianceStatisticeGroupByTerritory(pliEoList, params);
Map<String,Object> verifyNotStartedMap = (Map<String, Object>) verifyMap.get(TaskAffirmStatusEnum.NOT_STARTED.getValue());
double verifyNotStartedAmount = (double) verifyNotStartedMap.get("amount");
Map<String,Object> verifyToConfirmMap = (Map<String, Object>) verifyMap.get(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue());
double verifyToConfirmAmount = (double) verifyToConfirmMap.get("amount");
Map<String,Object> verifyComplianceMap = (Map<String, Object>) verifyMap.get(ComplianceFlowStatusEnum.CONFORMITY.getValue());
double verifyComplianceAmount = (double) verifyComplianceMap.get("amount");
Map<String,Object> verifyNonComplianceMap = (Map<String, Object>) verifyMap.get(ComplianceFlowStatusEnum.INCONFORMITY.getValue());
double verifyNonComplianceAmount = (double) verifyNonComplianceMap.get("amount");
dataRow.createCell(11).setCellValue(verifyNotStartedAmount);
dataRow.createCell(12).setCellValue(verifyToConfirmAmount);
dataRow.createCell(13).setCellValue(verifyComplianceAmount);
dataRow.createCell(14).setCellValue(verifyNonComplianceAmount);
double verifyCount = verifyNotStartedAmount + verifyToConfirmAmount + verifyComplianceAmount + verifyNonComplianceAmount;
double verifyPercentage = (verifyComplianceAmount / verifyCount) * 100;
Map<String,Object> taskToBeConfirmedMapVerify = (Map<String, Object>) verifyMap.get(ComplianceFlowStatusEnum.TASK_TO_BE_CONFIRMED.getValue());
double taskToBeConfirmedAmountVerify = (double) taskToBeConfirmedMapVerify.get("amount");
Map<String,Object> resultsToBeSubmittedMapVerify = (Map<String, Object>) verifyMap.get(ComplianceFlowStatusEnum.RESULTS_TO_BE_SUBMITTED.getValue());
double resultsToBeSubmittedAmountVerify = (double) resultsToBeSubmittedMapVerify.get("amount");
Map<String,Object> resultsToBeReviewedMapVerify = (Map<String, Object>) verifyMap.get(ComplianceFlowStatusEnum.RESULTS_TO_BE_REVIEWED.getValue());
double resultsToBeReviewedAmountVerify = (double) resultsToBeReviewedMapVerify.get("amount");
Map<String,Object> complianceMapVerify = (Map<String, Object>) verifyMap.get(ComplianceFlowStatusEnum.CONFORMITY.getValue());
double complianceAmountVerify = (double) complianceMapVerify.get("amount");
Map<String,Object> nonComplianceMapVerify = (Map<String, Object>) verifyMap.get(ComplianceFlowStatusEnum.INCONFORMITY.getValue());
double nonComplianceAmountVerify = (double) nonComplianceMapVerify.get("amount");
Map<String,Object> toBeTrackedMapVerify = (Map<String, Object>) verifyMap.get(ComplianceFlowStatusEnum.TO_TRACK.getValue());
double toBeTrackedAmountVerify = (double) toBeTrackedMapVerify.get("amount");
dataRow.createCell(20).setCellValue(taskToBeConfirmedAmountVerify);
dataRow.createCell(21).setCellValue(resultsToBeSubmittedAmountVerify);
dataRow.createCell(22).setCellValue(resultsToBeReviewedAmountVerify);
dataRow.createCell(23).setCellValue(complianceAmountVerify);
dataRow.createCell(24).setCellValue(nonComplianceAmountVerify);
dataRow.createCell(25).setCellValue(toBeTrackedAmountVerify);
double verifyCount = taskToBeConfirmedAmountVerify + resultsToBeSubmittedAmountVerify + resultsToBeReviewedAmountVerify
+ complianceAmountVerify + nonComplianceAmountVerify + toBeTrackedAmountVerify;
double verifyPercentage = (complianceAmountVerify / verifyCount) * 100;
String verifyPercentageStr = (verifyPercentage != 0 && (verifyCount !=0 )) ? df.format(verifyPercentage) : "0";
dataRow.createCell(15).setCellValue(verifyPercentageStr + percentSign);
dataRow.createCell(26).setCellValue(verifyPercentageStr + percentSign);
}
/**
@@ -2865,50 +2936,52 @@ public class PlatformProjectLibraryBaseServiceImpl extends ServiceImpl<PlatformP
* @param params
*/
private void exportCertificationManagement(HSSFWorkbook workbook,Map<String,Object> params){
String cut = (String) params.get("cut");
// String cut = (String) params.get("cut");
// String sheetName = "认证活动管理";
// String firstTitle = "认证任务确认," +
// "Pre-Homo," +
// "认证进度";
// "Pre-Homo";
// String secondTitle = "责任领域(一级)," +
// "未发起,待确认,接受,拒绝,完成度," +
// "未发起,待确认,审查通过,审查退回,完成度," +
// "未开始,进行中,实验通过,实验失败,部件报告未上传,部件报告已上传,部件报告已入库,完成度";
// "未发起,待提交,审查通过,审查退回,完成度";
//// "未发起,待确认,审查通过,审查退回,完成度";
// if(StringUtils.equals(cut,CutEnum.EN.getValue())){
// sheetName = "Certification Activity Management";
// firstTitle = "Authentication task confirmation," +
// "Pre-Homo," +
// "Certification progress";
// "Pre-Homo";
// secondTitle = "Area of responsibility (level 1)," +
// "Not launched,To be confirmed,Accept,Refuse,Degree of completion," +
// "Not launched,To be confirmed,Review of the adoption,Review return,Degree of completion," +
// "Not started,In progress,Experiment passed,Experiment failed,Parts report not uploaded,Parts report uploaded,Parts report in stock,Degree of completion";
// "Not launched,To submit,Review of the adoption,Review return,Degree of completion";
//// "Not launched,To be confirmed,Review of the adoption,Review return,Degree of completion";
// }
String cut = (String) params.get("cut");
String sheetName = "认证活动管理";
String firstTitle = "认证任务确认," +
"Pre-Homo";
"Pre-Homo流程," +
"认证进度";
String secondTitle = "责任领域(一级)," +
"发起,待确认,接受,拒绝,完成度," +
"未发起,待提交,审查通过,审查退回,完成度";
// "未发起,待确认,审查通过,审查退回,完成度";
"清单待发布,任务待发起,任务待确认,责任人接受,责任人拒绝,完成度," +
"任务待确认,结果待提交,结果待审查,审查通过,审查退回,完成度," +
"未开始,进行中,实验通过,实验失败,完成度";
if(StringUtils.equals(cut,CutEnum.EN.getValue())){
sheetName = "Certification Activity Management";
firstTitle = "Authentication task confirmation," +
"Pre-Homo";
firstTitle = "Authentication Task Confirmation," +
"Pre-Homo Process," +
"Certification Progress";
secondTitle = "Area of responsibility (level 1)," +
"Not launched,To be confirmed,Accept,Refuse,Degree of completion," +
"Not launched,To submit,Review of the adoption,Review return,Degree of completion";
// "Not launched,To be confirmed,Review of the adoption,Review return,Degree of completion";
"List To Be Released,Task To Be Initiated,Task To Be Confirmed,Accepted Of Responsible Person,Refusal Of Responsible Person,Degree Of Completion," +
"Task To Be Confirmed,Results To Be Submitted,Results To Be Reviewed,Review And Pass,Review And Return,Degree Of Completion," +
"Not Started,In Progress,Experiment Passed,Experiment Failed,Degree Of Completion";
}
HSSFSheet sheet = workbook.createSheet(sheetName);
//合并单元格 起始行,结束行,起始列,结束列
CellRangeAddress region1 = new CellRangeAddress(0, 0, 1, 5);
CellRangeAddress region1 = new CellRangeAddress(0, 0, 1, 6);
sheet.addMergedRegion(region1);
CellRangeAddress region2 = new CellRangeAddress(0, 0, 6, 10);
CellRangeAddress region2 = new CellRangeAddress(0, 0, 7, 12);
sheet.addMergedRegion(region2);
CellRangeAddress region3 = new CellRangeAddress(0, 0, 13, 17);
// CellRangeAddress region3 = new CellRangeAddress(0, 0, 11, 18);
// sheet.addMergedRegion(region3);
sheet.addMergedRegion(region3);
// CellRangeAddress region4 = new CellRangeAddress(0, 0, 19, 23);
// sheet.addMergedRegion(region4);
@@ -2919,15 +2992,15 @@ public class PlatformProjectLibraryBaseServiceImpl extends ServiceImpl<PlatformP
CellStyle cellStyleTitle = workbook.createCellStyle();
cellStyleTitle.setAlignment(HorizontalAlignment.CENTER);
for (int i = 0; i <= 10; i++){
for (int i = 0; i <= 17; i++){
sheet.setColumnWidth(i, 3500);
Cell firstRowCell = firstRow.createCell(i);
firstRowCell.setCellStyle(cellStyleTitle);
if(i == 1){
firstRowCell.setCellValue(firstTitleArr[0]);
}else if(i==6){
}else if(i==7){
firstRowCell.setCellValue(firstTitleArr[1]);
}else if(i==11){
}else if(i==13){
firstRowCell.setCellValue(firstTitleArr[2]);
}
// else if(i==19){
@@ -3001,40 +3074,49 @@ public class PlatformProjectLibraryBaseServiceImpl extends ServiceImpl<PlatformP
dataRow.createCell(0).setCellValue(key);
Map<String, Object> taskConfirmMap = this.projectLibraryStatisticsService.getRZTaskToConfirmStatisticsGroupByTerritory(pciEoList, params);
Map<String,Object> taskConfirmNotStartedMap = (Map<String, Object>) taskConfirmMap.get(TaskAffirmStatusEnum.NOT_STARTED.getValue());
double taskConfirmNotStartedAmount = (double) taskConfirmNotStartedMap.get("amount");
Map<String,Object> taskConfirmToConfirmMap = (Map<String, Object>) taskConfirmMap.get(TaskAffirmStatusEnum.LIST_TO_CONFIRM.getValue());
double taskConfirmToConfirmAmount = (double) taskConfirmToConfirmMap.get("amount");
Map<String,Object> taskConfirmAcceptedMap = (Map<String, Object>) taskConfirmMap.get(TaskAffirmStatusEnum.ACCEPTED.getValue());
double taskConfirmAcceptedAmount = (double) taskConfirmAcceptedMap.get("amount");
Map<String,Object> taskConfirmRejectedMap = (Map<String, Object>) taskConfirmMap.get(TaskAffirmStatusEnum.REJECTED.getValue());
double taskConfirmRejectedAmount = (double) taskConfirmRejectedMap.get("amount");
dataRow.createCell(1).setCellValue(taskConfirmNotStartedAmount);
dataRow.createCell(2).setCellValue(taskConfirmToConfirmAmount);
dataRow.createCell(3).setCellValue(taskConfirmAcceptedAmount);
dataRow.createCell(4).setCellValue(taskConfirmRejectedAmount);
double taskConfirmCount = taskConfirmNotStartedAmount + taskConfirmToConfirmAmount + taskConfirmAcceptedAmount + taskConfirmRejectedAmount;
double taskConfirmPercentage = (taskConfirmAcceptedAmount / taskConfirmCount) * 100;
Map<String,Object> taskListToBeReleasedMap = (Map<String, Object>) taskConfirmMap.get(CertificationInventoryFlowStatusEnum.LIST_TO_BE_RELEASED.getValue());
double taskListToBeReleasedAmount = (double) taskListToBeReleasedMap.get("amount");
Map<String,Object> taskToBeInitiatedMap = (Map<String, Object>) taskConfirmMap.get(CertificationInventoryFlowStatusEnum.LIST_TO_BE_CHECKED.getValue());
double taskToBeInitiatedAmount = (double) taskToBeInitiatedMap.get("amount");
Map<String,Object> taskToBeConfirmedMap = (Map<String, Object>) taskConfirmMap.get(CertificationInventoryFlowStatusEnum.TASK_TO_BE_CONFIRMED.getValue());
double taskToBeConfirmedAmount = (double) taskToBeConfirmedMap.get("amount");
Map<String,Object> taskAcceptedMap = (Map<String, Object>) taskConfirmMap.get(CertificationInventoryFlowStatusEnum.ACCEPTED_OF_RESPONSIBLE_PERSON.getValue());
double taskAcceptedAmount = (double) taskAcceptedMap.get("amount");
Map<String,Object> taskRejectedMap = (Map<String, Object>) taskConfirmMap.get(CertificationInventoryFlowStatusEnum.REFUSAL_OF_RESPONSIBLE_PERSON.getValue());
double taskRejectedAmount = (double) taskRejectedMap.get("amount");
dataRow.createCell(1).setCellValue(taskListToBeReleasedAmount);
dataRow.createCell(2).setCellValue(taskToBeInitiatedAmount);
dataRow.createCell(3).setCellValue(taskToBeConfirmedAmount);
dataRow.createCell(4).setCellValue(taskAcceptedAmount);
dataRow.createCell(5).setCellValue(taskRejectedAmount);
double taskConfirmCount = taskListToBeReleasedAmount + taskToBeInitiatedAmount + taskToBeConfirmedAmount +taskAcceptedAmount+ taskRejectedAmount;
double taskConfirmPercentage = (taskAcceptedAmount / taskConfirmCount) * 100;
String taskConfirmPercentageStr = (taskConfirmPercentage != 0 && (taskConfirmCount !=0 )) ? df.format(taskConfirmPercentage) : "0";
dataRow.createCell(5).setCellValue(taskConfirmPercentageStr + percentSign);
dataRow.createCell(6).setCellValue(taskConfirmPercentageStr + percentSign);
Map<String, Object> prehomoMap = this.projectLibraryStatisticsService.getPrehomoStatisticeGroupByTerritory(pciEoList, params);
Map<String, Object> prehomoNotStartedMap = (Map<String, Object>) prehomoMap.get(TaskAffirmStatusEnum.NOT_STARTED.getValue());
double prehomoNotStartedAmount = (double) prehomoNotStartedMap.get("amount");
Map<String, Object> prehomoToConfirmMap = (Map<String, Object>) prehomoMap.get(TodoCenterStatusEnum.TO_SUBMIT.getValue());
double prehomoToConfirmAmount = (double) prehomoToConfirmMap.get("amount");
Map<String, Object> prehomoAcceptedMap = (Map<String, Object>) prehomoMap.get(CertificationInventoryFlowStatusEnum.REVIEW_AND_PASS.getValue());
double prehomoAcceptedAmount = (double) prehomoAcceptedMap.get("amount");
Map<String, Object> prehomoRejectedMap = (Map<String, Object>) prehomoMap.get(CertificationInventoryFlowStatusEnum.REVIEW_AND_RETURN.getValue());
double prehomoRejectedAmount = (double) prehomoRejectedMap.get("amount");
dataRow.createCell(6).setCellValue(prehomoNotStartedAmount);
dataRow.createCell(7).setCellValue(prehomoToConfirmAmount);
dataRow.createCell(8).setCellValue(prehomoAcceptedAmount);
dataRow.createCell(9).setCellValue(prehomoRejectedAmount);
double prehomoCount = prehomoNotStartedAmount + prehomoToConfirmAmount + prehomoAcceptedAmount + prehomoRejectedAmount;
double prehomoPercentage = (prehomoAcceptedAmount / prehomoCount) * 100;
Map<String, Object> prehomoTaskToBeConfirmedMap = (Map<String, Object>) prehomoMap.get(CertificationInventoryFlowStatusEnum.TASK_TO_BE_CONFIRMED.getValue());
double prehomoTaskToBeConfirmedAmount = (double) prehomoTaskToBeConfirmedMap.get("amount");
Map<String, Object> prehomoResultsToBeSubmittedMap = (Map<String, Object>) prehomoMap.get(CertificationInventoryFlowStatusEnum.RESULTS_TO_BE_SUBMITTED.getValue());
double prehomoResultsToBeSubmittedAmount = (double) prehomoResultsToBeSubmittedMap.get("amount");
Map<String, Object> prehomoResultsToBeReviewedMap = (Map<String, Object>) prehomoMap.get(CertificationInventoryFlowStatusEnum.RESULTS_TO_BE_REVIEWED.getValue());
double prehomoResultsToBeReviewedAmount = (double) prehomoResultsToBeReviewedMap.get("amount");
Map<String, Object> prehomoReviewAndPassMap = (Map<String, Object>) prehomoMap.get(CertificationInventoryFlowStatusEnum.REVIEW_AND_PASS.getValue());
double prehomoReviewAndPassAmount = (double) prehomoReviewAndPassMap.get("amount");
Map<String, Object> prehomoReviewAndReturnMap = (Map<String, Object>) prehomoMap.get(CertificationInventoryFlowStatusEnum.REVIEW_AND_RETURN.getValue());
double prehomoReviewAndReturnAmount = (double) prehomoReviewAndReturnMap.get("amount");
dataRow.createCell(7).setCellValue(prehomoTaskToBeConfirmedAmount);
dataRow.createCell(8).setCellValue(prehomoResultsToBeSubmittedAmount);
dataRow.createCell(9).setCellValue(prehomoResultsToBeReviewedAmount);
dataRow.createCell(10).setCellValue(prehomoReviewAndPassAmount);
dataRow.createCell(11).setCellValue(prehomoReviewAndReturnAmount);
double prehomoCount = prehomoTaskToBeConfirmedAmount + prehomoResultsToBeSubmittedAmount + prehomoResultsToBeReviewedAmount
+ prehomoReviewAndPassAmount + prehomoReviewAndReturnAmount;
double prehomoPercentage = (prehomoReviewAndPassAmount / prehomoCount) * 100;
String prehomoPercentageStr = (prehomoPercentage != 0 && (prehomoCount !=0 )) ? df.format(prehomoPercentage) : "0";
dataRow.createCell(10).setCellValue(prehomoPercentageStr + percentSign);
dataRow.createCell(12).setCellValue(prehomoPercentageStr + percentSign);
Map<String, Object> certificationProgressMap = this.projectLibraryStatisticsService.getPartCertificationProgressStatisticsGroupByTerritory(pciEoList, params);
Map<String, Object> certificationProgressNotStartMap = (Map<String, Object>)certificationProgressMap.get(CertificationProgressEnum.NOT_START.getValue());
@@ -3045,26 +3127,15 @@ public class PlatformProjectLibraryBaseServiceImpl extends ServiceImpl<PlatformP
double certificationProgressTestPassedAmount = (double) certificationProgressTestPassedMap.get("amount");
Map<String, Object> certificationProgressTestFailedMap = (Map<String, Object>)certificationProgressMap.get(CertificationProgressEnum.TEST_FAILED.getValue());
double certificationProgressTestFailedAmount = (double) certificationProgressTestFailedMap.get("amount");
Map<String, Object> certificationProgressNotSubmitMap = (Map<String, Object>)certificationProgressMap.get(CertificationProgressEnum.COMPONENT_REPORT_NOT_SUBMITTED.getValue());
double certificationProgressNotSubmitAmount = (double) certificationProgressNotSubmitMap.get("amount");
Map<String, Object> certificationProgressSubmitMap = (Map<String, Object>)certificationProgressMap.get(CertificationProgressEnum.COMPONENT_REPORT_SUBMITTED.getValue());
double certificationProgressSubmitAmount = (double) certificationProgressSubmitMap.get("amount");
Map<String, Object> certificationProgressStoredMap = (Map<String, Object>)certificationProgressMap.get(CertificationProgressEnum.COMPONENT_REPORT_HAS_BEEN_STORED.getValue());
double certificationProgressStoredAmount = (double) certificationProgressStoredMap.get("amount");
// dataRow.createCell(11).setCellValue(certificationProgressNotStartAmount);
// dataRow.createCell(12).setCellValue(certificationProgressInProgressAmount);
// dataRow.createCell(13).setCellValue(certificationProgressTestPassedAmount);
// dataRow.createCell(14).setCellValue(certificationProgressTestFailedAmount);
// dataRow.createCell(15).setCellValue(certificationProgressNotSubmitAmount);
// dataRow.createCell(16).setCellValue(certificationProgressSubmitAmount);
// dataRow.createCell(17).setCellValue(certificationProgressStoredAmount);
dataRow.createCell(13).setCellValue(certificationProgressNotStartAmount);
dataRow.createCell(14).setCellValue(certificationProgressInProgressAmount);
dataRow.createCell(15).setCellValue(certificationProgressTestPassedAmount);
dataRow.createCell(16).setCellValue(certificationProgressTestFailedAmount);
double certificationProgressCount = certificationProgressNotStartAmount + certificationProgressInProgressAmount
+ certificationProgressTestPassedAmount + certificationProgressTestFailedAmount
+ certificationProgressNotSubmitAmount + certificationProgressSubmitAmount
+ certificationProgressStoredAmount;
+ certificationProgressTestPassedAmount + certificationProgressTestFailedAmount;
double certificationProgressPercentage = (certificationProgressTestPassedAmount / certificationProgressCount) * 100;
String certificationProgressPercentageStr = (certificationProgressPercentage != 0 && (certificationProgressCount !=0 )) ? df.format(certificationProgressPercentage) : "0";
// dataRow.createCell(18).setCellValue(certificationProgressPercentageStr + percentSign);
dataRow.createCell(17).setCellValue(certificationProgressPercentageStr + percentSign);
}
/**
@@ -89,9 +89,9 @@ public interface IProjectLibraryStatisticsService {
* @param params
* @return
*/
Map<String, Object> getPartCertificationProgressStatisticsGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params);
// Map<String, Object> getPartCertificationProgressStatisticsGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params);
Map<String, Object> getPartCertificationProgressStatisticsGroupByTerritoryTemp(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params);
Map<String, Object> getPartCertificationProgressStatisticsGroupByTerritory(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params);
/**
* 获取认证参数收集-统计信息
@@ -3429,7 +3429,7 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
Map<String, Object> certificationProgressMap = this.projectLibraryStatisticsService.getPartCertificationProgressStatisticsGroupByTerritoryTemp(pciEoList, params);
Map<String, Object> certificationProgressMap = this.projectLibraryStatisticsService.getPartCertificationProgressStatisticsGroupByTerritory(pciEoList, params);
Map<String, Object> certificationProgressNotStartMap = (Map<String, Object>)certificationProgressMap.get(CertificationProgressEnum.NOT_START.getValue());
double certificationProgressNotStartAmount = (double) certificationProgressNotStartMap.get("amount");
Map<String, Object> certificationProgressInProgressMap = (Map<String, Object>)certificationProgressMap.get(CertificationProgressEnum.IN_PROGRESS.getValue());
@@ -844,119 +844,119 @@ public class ProjectLibraryStatisticsServiceImpl implements IProjectLibraryStati
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<>();
// Map<String,Object> notStartMap = new HashMap<>();
// Map<String,Object> inProgressMap = new HashMap<>();
// Map<String,Object> testPassedMap = new HashMap<>();
// Map<String,Object> testFailedMap = 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);
//
// // 未开始
// List<ProjectCertificationInventoryEO> notStartPciEoList = datas.stream().filter(data -> {
// boolean flag = (
// StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.NOT_START.getValue())
// );
// return flag;
// }).collect(Collectors.toList());
// double notStartCount = (double) notStartPciEoList.size();
// double notStartPercentage = (notStartCount / (datas.size())) * 100;
// String notStartPercentageStr = notStartPercentage != 0 ? df.format(notStartPercentage) : "0";
// notStartMap.put("amount",notStartCount);
// notStartMap.put("percentage",notStartPercentageStr + 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.COMPONENT_REPORT_NOT_SUBMITTED.getValue(),notSubmitMap);
// result.put(CertificationProgressEnum.COMPONENT_REPORT_SUBMITTED.getValue(),reportSubmitMap);
// result.put(CertificationProgressEnum.COMPONENT_REPORT_HAS_BEEN_STORED.getValue(),storedMap);
// result.put(CertificationProgressEnum.NOT_START.getValue(),notStartMap);
// 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<>();
Map<String,Object> notStartMap = new HashMap<>();
Map<String,Object> inProgressMap = new HashMap<>();
Map<String,Object> testPassedMap = new HashMap<>();
Map<String,Object> testFailedMap = 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);
// 未开始
List<ProjectCertificationInventoryEO> notStartPciEoList = datas.stream().filter(data -> {
boolean flag = (
StringUtils.equals(data.getCertificationProgress(),CertificationProgressEnum.NOT_START.getValue())
);
return flag;
}).collect(Collectors.toList());
double notStartCount = (double) notStartPciEoList.size();
double notStartPercentage = (notStartCount / (datas.size())) * 100;
String notStartPercentageStr = notStartPercentage != 0 ? df.format(notStartPercentage) : "0";
notStartMap.put("amount",notStartCount);
notStartMap.put("percentage",notStartPercentageStr + 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.COMPONENT_REPORT_NOT_SUBMITTED.getValue(),notSubmitMap);
result.put(CertificationProgressEnum.COMPONENT_REPORT_SUBMITTED.getValue(),reportSubmitMap);
result.put(CertificationProgressEnum.COMPONENT_REPORT_HAS_BEEN_STORED.getValue(),storedMap);
result.put(CertificationProgressEnum.NOT_START.getValue(),notStartMap);
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> getPartCertificationProgressStatisticsGroupByTerritoryTemp(List<ProjectCertificationInventoryEO> datas, Map<String, Object> params) {
Map<String, Object> result = new HashMap<>();
if(CollectionUtils.isNotEmpty(datas)){
Map<String,Object> notStartMap = new HashMap<>();