Sfoglia il codice sorgente

soc汇总处理类型多选

Zimo 1 giorno fa
parent
commit
a59ebff4fe

+ 9 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/soc/IotSocSummaryController.java

@@ -29,7 +29,9 @@ import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
 import java.io.IOException;
 import java.io.OutputStream;
+import java.util.Arrays;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
@@ -82,7 +84,13 @@ public class IotSocSummaryController {
     @PreAuthorize("@ss.hasPermission('rq:iot-soc-summary:query')")
     public CommonResult<PageResult<IotSocSummaryRespVO>> getIotSocSummaryPage(@Valid IotSocSummaryPageReqVO pageReqVO) {
         PageResult<IotSocSummaryDO> pageResult = iotSocSummaryService.getIotSocSummaryPage(pageReqVO);
-        return success(BeanUtils.toBean(pageResult, IotSocSummaryRespVO.class));
+        List<IotSocSummaryRespVO> collect = pageResult.getList().stream().map(e -> {
+            IotSocSummaryRespVO iotSocSummaryRespVO = new IotSocSummaryRespVO();
+            BeanUtils.copyProperties(e, iotSocSummaryRespVO);
+            iotSocSummaryRespVO.setSocClasses(Arrays.asList(e.getSocClass().split(",")));
+            return iotSocSummaryRespVO;
+        }).collect(Collectors.toList());
+        return success(new PageResult<>(collect, pageResult.getTotal()));
     }
 
     @GetMapping("/export-excel")

+ 1 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/soc/vo/IotSocSummaryPageReqVO.java

@@ -25,7 +25,7 @@ public class IotSocSummaryPageReqVO extends PageParam {
     private LocalDateTime[] observationDate;
 
     @Schema(description = "soc类型")
-    private Long socClass;
+    private String socClass;
 
     @Schema(description = "类型名称", example = "赵六")
     private String className;

+ 3 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/soc/vo/IotSocSummaryRespVO.java

@@ -6,6 +6,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 
 import java.time.LocalDateTime;
+import java.util.List;
 
 @Schema(description = "管理后台 - SOC卡汇总 Response VO")
 @Data
@@ -29,7 +30,7 @@ public class IotSocSummaryRespVO {
 
     @Schema(description = "soc类型", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("soc类型")
-    private Long socClass;
+    private String socClass;
 
     @Schema(description = "类型名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六")
     @ExcelProperty("类型名称")
@@ -59,4 +60,5 @@ public class IotSocSummaryRespVO {
     @ExcelProperty("队伍名称")
     private String deptName;
 
+    private List<String> socClasses;
 }

+ 4 - 2
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/qhse/soc/vo/IotSocSummarySaveReqVO.java

@@ -5,6 +5,7 @@ import lombok.Data;
 
 import javax.validation.constraints.NotNull;
 import java.time.LocalDateTime;
+import java.util.List;
 
 @Schema(description = "管理后台 - SOC卡汇总新增/修改 Request VO")
 @Data
@@ -21,8 +22,8 @@ public class IotSocSummarySaveReqVO {
     private LocalDateTime observationDate;
 
     @Schema(description = "soc类型", requiredMode = Schema.RequiredMode.REQUIRED)
-    @NotNull(message = "soc类型不能为空")
-    private Long socClass;
+//    @NotNull(message = "soc类型不能为空")
+    private String socClass;
 
     @Schema(description = "类型名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六")
 //    @NotEmpty(message = "类型名称不能为空")
@@ -43,4 +44,5 @@ public class IotSocSummarySaveReqVO {
     @Schema(description = "队伍名称", example = "王五")
     private String deptName;
 
+    private List<String> socClasses;
 }

+ 1 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/dal/dataobject/qhse/soc/IotSocSummaryDO.java

@@ -43,7 +43,7 @@ public class IotSocSummaryDO extends BaseDO {
     /**
      * soc类型
      */
-    private Long socClass;
+    private String socClass;
     /**
      * 类型名称
      */

+ 11 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/qhse/soc/IotSocSummaryServiceImpl.java

@@ -21,6 +21,7 @@ import javax.annotation.Resource;
 import java.util.HashSet;
 import java.util.Objects;
 import java.util.Set;
+import java.util.stream.Collectors;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
 
@@ -46,6 +47,16 @@ public class IotSocSummaryServiceImpl implements IotSocSummaryService {
     public Long createIotSocSummary(IotSocSummarySaveReqVO createReqVO) {
         // 插入
         IotSocSummaryDO iotSocSummary = BeanUtils.toBean(createReqVO, IotSocSummaryDO.class);
+        iotSocSummary.setSocClass(String.join(",", createReqVO.getSocClasses()));
+        String collect = createReqVO.getSocClasses().stream().map(e -> {
+            IotSocSourceDO iotSocSourceDO = iotSocSourceMapper.selectById(e);
+            if (Objects.nonNull(iotSocSourceDO)) {
+                return iotSocSourceDO.getName();
+            } else {
+                return "";
+            }
+        }).collect(Collectors.joining(","));
+        iotSocSummary.setClassName(collect);
 //        Long loginUserDeptId = SecurityFrameworkUtils.getLoginUserDeptId();
 //        String loginUserNickname = SecurityFrameworkUtils.getLoginUserNickname();
         iotSocSummary.setUserName(createReqVO.getUserName());