Browse Source

pms 瑞鹰导出 添加 非生产时间

zhangcl 10 hours ago
parent
commit
60cab5e7a7

+ 14 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/iotrydailyreport/IotRyDailyReportController.java

@@ -49,6 +49,7 @@ import javax.validation.Valid;
 import java.io.IOException;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
+import java.text.DecimalFormat;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.temporal.ChronoUnit;
@@ -567,6 +568,19 @@ public class IotRyDailyReportController {
             BigDecimal sumNpt = calculateNonProductTime(reportVO);
             reportVO.setNonProductionRate(sumNpt.divide(BigDecimal.valueOf(24), 4, RoundingMode.HALF_UP ));
 
+            // 非生产时效 百分比格式 导出使用
+            if (ObjUtil.isNotEmpty(reportVO.getNonProductionRate())) {
+                // 获取原始小数
+                BigDecimal nptRate = reportVO.getNonProductionRate();
+                // 乘以100转换为百分比数值
+                BigDecimal percentage = nptRate.multiply(BigDecimal.valueOf(100));
+                // 格式化保留2位小数
+                DecimalFormat df = new DecimalFormat("0.00");
+                String nonProductionRate = df.format(percentage) + "%";
+                // 赋值
+                reportVO.setNonProductionRateFormat(nonProductionRate);
+            }
+
             // 日报生成日期 格式化时间为 yyyy-MM-dd
             if (ObjUtil.isNotEmpty(reportVO.getCreateTime())) {
                 reportVO.setCreateTimeStr(LocalDateTimeUtil.format(reportVO.getCreateTime(), DatePattern.NORM_DATE_PATTERN));

+ 30 - 10
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/iotrydailyreport/vo/IotRyDailyReportRespVO.java

@@ -110,11 +110,9 @@ public class IotRyDailyReportRespVO {
     private BigDecimal productionTime;
 
     @Schema(description = "非生产时间(H)")
-    @ExcelProperty("非生产时间(H)")
     private BigDecimal nonProductionTime;
 
     @Schema(description = "非生产时间原因", example = "不香")
-    @ExcelProperty("非生产时间原因")
     private String ryNptReason;
 
     @Schema(description = "进尺工作时间(H)")
@@ -123,39 +121,61 @@ public class IotRyDailyReportRespVO {
     @Schema(description = "其它生产时间(H)")
     @ExcelProperty("其它生产时间(H)")
     private BigDecimal otherProductionTime;
+
+    @Schema(description = "非生产时效")
+    @ExcelProperty("非生产时效")
+    private String nonProductionRateFormat;
+
     @Schema(description = "事故非生产时间(H)")
-    @ExcelProperty("事故非生产时间(H)")
+    @ExcelProperty("工程质量")
     private BigDecimal accidentTime;
+
     @Schema(description = "修理非生产时间(H)")
-    @ExcelProperty("修理非生产时间(H)")
+    @ExcelProperty("设备故障")
     private BigDecimal repairTime;
+
     @Schema(description = "自停非生产时间(H)")
-    @ExcelProperty("自停非生产时间(H)")
+    @ExcelProperty("设备保养")
     private BigDecimal selfStopTime;
+
     @Schema(description = "复杂非生产时间(H)")
-    @ExcelProperty("复杂非生产时间(H)")
+    @ExcelProperty("技术受限")
     private BigDecimal complexityTime;
+
     @Schema(description = "搬迁非生产时间(H)")
-    @ExcelProperty("搬迁非生产时间(H)")
+    @ExcelProperty("生产配合")
     private BigDecimal relocationTime;
+
     @Schema(description = "整改非生产时间(H)")
-    @ExcelProperty("整改非生产时间(H)")
+    @ExcelProperty("生产组织")
     private BigDecimal rectificationTime;
+
     @Schema(description = "等停非生产时间(H)")
-    @ExcelProperty("等停非生产时间(H)")
+    @ExcelProperty("不可抗力")
     private BigDecimal waitingStopTime;
+
     @Schema(description = "冬休非生产时间(H)")
-    @ExcelProperty("冬休非生产时间(H)")
+    @ExcelProperty("待命")
     private BigDecimal winterBreakTime;
+
     @Schema(description = "甲方设计-非生产时间")
+    @ExcelProperty("甲方设计")
     private BigDecimal partyaDesign;
+
     @Schema(description = "甲方准备-非生产时间")
+    @ExcelProperty("甲方准备")
     private BigDecimal partyaPrepare;
+
     @Schema(description = "甲方资源-非生产时间")
+    @ExcelProperty("甲方资源")
     private BigDecimal partyaResource;
+
     @Schema(description = "其它非生产时间")
+    @ExcelProperty("其它非生产时间")
     private BigDecimal otherNptTime;
+
     @Schema(description = "其它非生产时间原因")
+    @ExcelProperty("其它非生产时间原因")
     private String otherNptReason;
 
     @Schema(description = "施工开始日期")