Преглед изворни кода

pms 瑞都日报平台井返回非生产时间 项目任务查看列表导出

zhangcl пре 2 дана
родитељ
комит
0ee755ca9c

+ 6 - 4
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/iotprojecttask/IotProjectTaskController.java

@@ -442,16 +442,18 @@ public class IotProjectTaskController {
     }
 
     @GetMapping("/export-excel")
-    @Operation(summary = "导出项目信息任务拆分 Excel")
+    @Operation(summary = "导出项目信息任务列表 Excel")
     @PreAuthorize("@ss.hasPermission('rq:iot-project-task:export')")
     @ApiAccessLog(operateType = EXPORT)
     public void exportIotProjectTaskExcel(@Valid IotProjectTaskPageReqVO pageReqVO,
               HttpServletResponse response) throws IOException {
         pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
-        List<IotProjectTaskDO> list = iotProjectTaskService.getIotProjectTaskPage(pageReqVO).getList();
+        Set<Long> idList = new HashSet<>();
+        List<IotProjectTaskDO> taskList = iotProjectTaskService.taskList(pageReqVO, idList).getList();
+        List<IotProjectTaskRespVO> tasks = buildProjectTaskList(taskList);
         // 导出 Excel
-        ExcelUtils.write(response, "项目信息任务拆分.xls", "数据", IotProjectTaskRespVO.class,
-                        BeanUtils.toBean(list, IotProjectTaskRespVO.class));
+        ExcelUtils.write(response, "任务查看列表.xls", "任务查看列表", IotProjectTaskRespVO.class,
+                tasks);
     }
 
 }

+ 45 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/iotprojecttask/vo/IotProjectTaskPlatformVO.java

@@ -62,4 +62,49 @@ public class IotProjectTaskPlatformVO {
 
     @Schema(description = "附件列表")
     private List<IotAttachmentDO> attachments;
+
+    /**
+     * 非生产时间
+     */
+    @Schema(description = "事故非生产时间(H)")
+    private BigDecimal accidentTime;
+
+    @Schema(description = "修理非生产时间(H)")
+    private BigDecimal repairTime;
+
+    @Schema(description = "自停非生产时间(H)")
+    private BigDecimal selfStopTime;
+
+    @Schema(description = "复杂非生产时间(H)")
+    private BigDecimal complexityTime;
+
+    @Schema(description = "搬迁非生产时间(H)")
+    private BigDecimal relocationTime;
+
+    @Schema(description = "整改非生产时间(H)")
+    private BigDecimal rectificationTime;
+
+    @Schema(description = "等停非生产时间(H)")
+    private BigDecimal waitingStopTime;
+
+    @Schema(description = "冬休非生产时间")
+    private BigDecimal winterBreakTime;
+
+    @Schema(description = "甲方设计-非生产时间")
+    private BigDecimal partyaDesign;
+
+    @Schema(description = "甲方准备-非生产时间")
+    private BigDecimal partyaPrepare;
+
+    @Schema(description = "甲方资源-非生产时间")
+    private BigDecimal partyaResource;
+
+    @Schema(description = "其它非生产时间")
+    private BigDecimal otherNptTime;
+
+    @Schema(description = "非生产时效")
+    private BigDecimal nptRate;
+
+    @Schema(description = "其它非生产时间原因")
+    private String otherNptReason;
 }

+ 13 - 27
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/iotprojecttask/vo/IotProjectTaskRespVO.java

@@ -16,20 +16,28 @@ import java.util.Set;
 @ExcelIgnoreUnannotated
 public class IotProjectTaskRespVO {
 
+    @Schema(description = "客户名称")
+    @ExcelProperty("客户")
+    private String manufactureName;
+
+    @Schema(description = "合同名称", example = "王五")
+    @ExcelProperty("合同名称")
+    private String contractName;
+
+    @Schema(description = "合同编号")
+    @ExcelProperty("合同编号")
+    private String contractCode;
+
     @Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED, example = "31284")
-    @ExcelProperty("主键id")
     private Long id;
 
     @Schema(description = "项目id", example = "2988")
-    @ExcelProperty("项目id")
     private Long projectId;
 
     @Schema(description = "平台井标识 0非平台井 1平台井", example = "1")
-    @ExcelProperty("平台井标识 0非平台井 1平台井")
     private Integer platformWell;
 
     @Schema(description = "平台井组", example = "984r98roori928392")
-    @ExcelProperty("平台井组")
     private String platformGroup;
 
     @Schema(description = "井号", example = "赵六")
@@ -37,11 +45,9 @@ public class IotProjectTaskRespVO {
     private String wellName;
 
     @Schema(description = "井型", example = "2")
-    @ExcelProperty("井型")
     private String wellType;
 
     @Schema(description = "井别", example = "2")
-    @ExcelProperty("井别")
     private String wellCategory;
 
     @Schema(description = "施工地点")
@@ -49,31 +55,24 @@ public class IotProjectTaskRespVO {
     private String location;
 
     @Schema(description = "施工设备")
-    @ExcelProperty("施工设备")
     private Set<Long> deviceIds;
 
     @Schema(description = "施工工艺")
-    @ExcelProperty("施工工艺")
     private String technique;
 
     @Schema(description = "责任人([123,234])")
-    @ExcelProperty("责任人([123,234])")
     private Set<Long> responsiblePerson;
 
     @Schema(description = "工单填报人([123,234])")
-    @ExcelProperty("工单填报人([123,234])")
     private Set<Long> submitter;
 
     @Schema(description = "设计工作量")
-    @ExcelProperty("设计工作量")
     private String workloadDesign;
 
     @Schema(description = "工作量单位(段/层/方/井深/进尺)")
-    @ExcelProperty("工作量单位(段/层/方/井深/进尺)")
     private String workloadUnit;
 
     @Schema(description = "状态", example = "dq sg")
-    @ExcelProperty("状态")
     private String status;
 
     @Schema(description = "创建时间")
@@ -81,34 +80,20 @@ public class IotProjectTaskRespVO {
     private LocalDateTime createTime;
 
     @Schema(description = "用户名", example = "赵六")
-    @ExcelProperty("用户名")
     private String userName;
 
     @Schema(description = "用户id", example = "25471")
-    @ExcelProperty("用户id")
     private Long userId;
 
     @Schema(description = "备注", example = "你说的对")
-    @ExcelProperty("备注")
     private String remark;
 
     @Schema(description = "施工队伍")
-    @ExcelProperty("施工队伍")
     private Set<Long> deptIds;
 
     @Schema(description = "该任务所属部门id", example = "1755")
-    @ExcelProperty("该任务所属部门id")
     private Long deptId;
 
-    @Schema(description = "客户名称")
-    private String manufactureName;
-
-    @Schema(description = "合同名称", example = "王五")
-    private String contractName;
-
-    @Schema(description = "合同编号")
-    private String contractCode;
-
     /**
      * 扩展字段
      */
@@ -119,6 +104,7 @@ public class IotProjectTaskRespVO {
     private List<IotTaskAttrModelProperty> extProperty;
 
     @Schema(description = "施工队伍", example = "THA1,THA2")
+    @ExcelProperty("施工队伍")
     private String deptNames;
 
     @Schema(description = "平台井明细", example = "[{\"井号\": #233, \"工作量\": 234}]")

+ 31 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/iotrddailyreport/IotRdDailyReportController.java

@@ -604,6 +604,22 @@ public class IotRdDailyReportController {
                     platformVO.setExternalRental(report.getExternalRental());
                     platformVO.setMalfunction(report.getMalfunction());
                     platformVO.setFaultDowntime(report.getFaultDowntime());
+                    // 非生产时间
+                    platformVO.setAccidentTime(report.getAccidentTime());
+                    platformVO.setRepairTime(report.getRepairTime());
+                    platformVO.setSelfStopTime(report.getSelfStopTime());
+                    platformVO.setComplexityTime(report.getComplexityTime());
+                    platformVO.setRelocationTime(report.getRelocationTime());
+                    platformVO.setRectificationTime(report.getRectificationTime());
+                    platformVO.setWaitingStopTime(report.getWaitingStopTime());
+                    platformVO.setWinterBreakTime(report.getWinterBreakTime());
+                    platformVO.setPartyaDesign(report.getPartyaDesign());
+                    platformVO.setPartyaPrepare(report.getPartyaPrepare());
+                    platformVO.setPartyaResource(report.getPartyaResource());
+                    platformVO.setOtherNptTime(report.getOtherNptTime());
+                    platformVO.setOtherNptReason(report.getOtherNptReason());
+                    platformVO.setNptRate(report.getNptRate());
+
                     if (reportAttachmentsPair.containsKey(report.getId())) {
                         platformVO.setAttachments(reportAttachmentsPair.get(report.getId()));
                     }
@@ -655,6 +671,21 @@ public class IotRdDailyReportController {
                             platform.setMalfunction(tempPlatform.getMalfunction());
                             platform.setFaultDowntime(tempPlatform.getFaultDowntime());
                             platform.setAttachments(tempPlatform.getAttachments());
+                            // 非生产时间
+                            platform.setAccidentTime(tempPlatform.getAccidentTime());
+                            platform.setRepairTime(tempPlatform.getRepairTime());
+                            platform.setSelfStopTime(tempPlatform.getSelfStopTime());
+                            platform.setComplexityTime(tempPlatform.getComplexityTime());
+                            platform.setRelocationTime(tempPlatform.getRelocationTime());
+                            platform.setRectificationTime(tempPlatform.getRectificationTime());
+                            platform.setWaitingStopTime(tempPlatform.getWaitingStopTime());
+                            platform.setWinterBreakTime(tempPlatform.getWinterBreakTime());
+                            platform.setPartyaDesign(tempPlatform.getPartyaDesign());
+                            platform.setPartyaPrepare(tempPlatform.getPartyaPrepare());
+                            platform.setPartyaResource(tempPlatform.getPartyaResource());
+                            platform.setOtherNptTime(tempPlatform.getOtherNptTime());
+                            platform.setOtherNptReason(tempPlatform.getOtherNptReason());
+                            platform.setNptRate(tempPlatform.getNptRate());
                         }
                         platforms.add(platform);
                     }