feat(module-inspection): 新增设备完成率指标并优化相关计算逻辑
- 在 InspectionEquipIndicatorsVO 和 InspectionEquipIndicatorsDetailVO 中添加设备完成率字段 -优化设备完成率的计算逻辑,避免除以零的情况 -修复异常项处理率的计算错误 - 优化未检项目数的计算,避免出现负数
正在显示
3 个修改的文件
包含
24 行增加
和
3 行删除
... | @@ -498,6 +498,7 @@ public class InspectionAnalysisServiceImpl implements IInspectionAnalysisService | ... | @@ -498,6 +498,7 @@ public class InspectionAnalysisServiceImpl implements IInspectionAnalysisService |
498 | public InspectionEquipIndicatorsVO getInspectionEquipIndicators(String startDate, String endDate) { | 498 | public InspectionEquipIndicatorsVO getInspectionEquipIndicators(String startDate, String endDate) { |
499 | InspectionEquipIndicatorsVO inspectionEquipIndicatorsVO = new InspectionEquipIndicatorsVO(); | 499 | InspectionEquipIndicatorsVO inspectionEquipIndicatorsVO = new InspectionEquipIndicatorsVO(); |
500 | //设置初始值 | 500 | //设置初始值 |
501 | inspectionEquipIndicatorsVO.setFinishRate("0"); | ||
501 | inspectionEquipIndicatorsVO.setCompletionRate("0"); | 502 | inspectionEquipIndicatorsVO.setCompletionRate("0"); |
502 | inspectionEquipIndicatorsVO.setUnCompletionRate("0"); | 503 | inspectionEquipIndicatorsVO.setUnCompletionRate("0"); |
503 | inspectionEquipIndicatorsVO.setAbnormalRate("0"); | 504 | inspectionEquipIndicatorsVO.setAbnormalRate("0"); |
... | @@ -584,6 +585,11 @@ public class InspectionAnalysisServiceImpl implements IInspectionAnalysisService | ... | @@ -584,6 +585,11 @@ public class InspectionAnalysisServiceImpl implements IInspectionAnalysisService |
584 | if (processInstanceStateMap != null && processInstanceStateMap.get(FlowEngineConstant.STATUS_FINISHED) != null) { | 585 | if (processInstanceStateMap != null && processInstanceStateMap.get(FlowEngineConstant.STATUS_FINISHED) != null) { |
585 | processedAbnormalItemsCount = processInstanceStateMap.get(FlowEngineConstant.STATUS_FINISHED).size(); | 586 | processedAbnormalItemsCount = processInstanceStateMap.get(FlowEngineConstant.STATUS_FINISHED).size(); |
586 | } | 587 | } |
588 | //完成率 | ||
589 | String finishRate = "0"; | ||
590 | if (totalInspectionEquipCount != 0) { | ||
591 | finishRate = numberFormat.format(checkedInspectionEquipCount / (double) totalInspectionEquipCount * 100); | ||
592 | } | ||
587 | //覆盖率 | 593 | //覆盖率 |
588 | String completionRate = "0"; | 594 | String completionRate = "0"; |
589 | if (totalInspectionEquipCount != 0) { | 595 | if (totalInspectionEquipCount != 0) { |
... | @@ -604,6 +610,7 @@ public class InspectionAnalysisServiceImpl implements IInspectionAnalysisService | ... | @@ -604,6 +610,7 @@ public class InspectionAnalysisServiceImpl implements IInspectionAnalysisService |
604 | if (abnormalItemsCount != 0) { | 610 | if (abnormalItemsCount != 0) { |
605 | processedAbnormalRate = numberFormat.format(processedAbnormalItemsCount / (double) abnormalItemsCount * 100); | 611 | processedAbnormalRate = numberFormat.format(processedAbnormalItemsCount / (double) abnormalItemsCount * 100); |
606 | } | 612 | } |
613 | inspectionEquipIndicatorsVO.setFinishRate(finishRate); | ||
607 | inspectionEquipIndicatorsVO.setCompletionRate(completionRate); | 614 | inspectionEquipIndicatorsVO.setCompletionRate(completionRate); |
608 | inspectionEquipIndicatorsVO.setUnCompletionRate(unCompletionRate); | 615 | inspectionEquipIndicatorsVO.setUnCompletionRate(unCompletionRate); |
609 | inspectionEquipIndicatorsVO.setAbnormalRate(abnormalRate); | 616 | inspectionEquipIndicatorsVO.setAbnormalRate(abnormalRate); |
... | @@ -932,7 +939,11 @@ public class InspectionAnalysisServiceImpl implements IInspectionAnalysisService | ... | @@ -932,7 +939,11 @@ public class InspectionAnalysisServiceImpl implements IInspectionAnalysisService |
932 | abnormalCheckedItemsCount += ConvertUtils.getInt(abnormalTaskCheckedItemsCountMap.get(tempInspectionTaskId), 0); | 939 | abnormalCheckedItemsCount += ConvertUtils.getInt(abnormalTaskCheckedItemsCountMap.get(tempInspectionTaskId), 0); |
933 | } | 940 | } |
934 | inspectionAbnormalItemsTrendVO.setInspectionTaskDate(date); | 941 | inspectionAbnormalItemsTrendVO.setInspectionTaskDate(date); |
935 | inspectionAbnormalItemsTrendVO.setNotCheckedItemsCount(totalCheckeItemsCount - checkedItemsCount); | 942 | if(totalCheckeItemsCount - checkedItemsCount < 0){ |
943 | inspectionAbnormalItemsTrendVO.setNotCheckedItemsCount(0); | ||
944 | }else{ | ||
945 | inspectionAbnormalItemsTrendVO.setNotCheckedItemsCount(totalCheckeItemsCount - checkedItemsCount); | ||
946 | } | ||
936 | inspectionAbnormalItemsTrendVO.setAbnormalItemsCount(abnormalCheckedItemsCount); | 947 | inspectionAbnormalItemsTrendVO.setAbnormalItemsCount(abnormalCheckedItemsCount); |
937 | inspectionAbnormalItemsTrendVOList.add(inspectionAbnormalItemsTrendVO); | 948 | inspectionAbnormalItemsTrendVOList.add(inspectionAbnormalItemsTrendVO); |
938 | } | 949 | } | ... | ... |
... | @@ -39,6 +39,8 @@ public class InspectionEquipIndicatorsDetailVO { | ... | @@ -39,6 +39,8 @@ public class InspectionEquipIndicatorsDetailVO { |
39 | @ApiModelProperty(value = "未检设备数") | 39 | @ApiModelProperty(value = "未检设备数") |
40 | private Integer notCheckedInspectionEquipCount; | 40 | private Integer notCheckedInspectionEquipCount; |
41 | 41 | ||
42 | @ApiModelProperty(value = "设备完成率") | ||
43 | private String finishRate; | ||
42 | @ApiModelProperty(value = "完成率") | 44 | @ApiModelProperty(value = "完成率") |
43 | private String completionRate; | 45 | private String completionRate; |
44 | @ApiModelProperty(value = "未检率") | 46 | @ApiModelProperty(value = "未检率") |
... | @@ -96,8 +98,14 @@ public class InspectionEquipIndicatorsDetailVO { | ... | @@ -96,8 +98,14 @@ public class InspectionEquipIndicatorsDetailVO { |
96 | return processedAbnormalRate; | 98 | return processedAbnormalRate; |
97 | } | 99 | } |
98 | 100 | ||
99 | //覆盖率 | 101 | //设备完成率 |
100 | 102 | public String getFinishRate() { | |
103 | finishRate = "0";//设备完成率 | ||
104 | if (totalInspectionEquipCount != 0) { | ||
105 | finishRate = JSUtils.divide( checkedInspectionEquipCount*100 ,totalInspectionEquipCount ); | ||
106 | } | ||
107 | return finishRate; | ||
108 | } | ||
101 | 109 | ||
102 | 110 | ||
103 | 111 | ... | ... |
... | @@ -17,6 +17,8 @@ import lombok.EqualsAndHashCode; | ... | @@ -17,6 +17,8 @@ import lombok.EqualsAndHashCode; |
17 | @ApiModel(value="巡检设备指标", description="巡检设备指标") | 17 | @ApiModel(value="巡检设备指标", description="巡检设备指标") |
18 | public class InspectionEquipIndicatorsVO { | 18 | public class InspectionEquipIndicatorsVO { |
19 | 19 | ||
20 | @ApiModelProperty(value = "完成率") | ||
21 | private String finishRate; | ||
20 | @ApiModelProperty(value = "覆盖率") | 22 | @ApiModelProperty(value = "覆盖率") |
21 | private String completionRate; | 23 | private String completionRate; |
22 | @ApiModelProperty(value = "未检率") | 24 | @ApiModelProperty(value = "未检率") | ... | ... |
-
请 注册 或 登录 后发表评论