From e05875fa75605595b192fca04e598598cb2f2931 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期五, 13 九月 2024 17:45:07 +0800
Subject: [PATCH] 代码优化+检验下单新增字段下发至对象

---
 cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java |  156 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 151 insertions(+), 5 deletions(-)

diff --git a/cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java b/cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java
index 0757f5c..49b6559 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java
@@ -3,48 +3,72 @@
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.yuanchu.mom.annotation.ValueAuth;
+import com.yuanchu.mom.annotation.ValueClassify;
+import com.yuanchu.mom.dto.DataConfigDto;
+import com.yuanchu.mom.dto.DeviceDto;
 import com.yuanchu.mom.pojo.Device;
+import com.yuanchu.mom.service.DataConfigService;
 import com.yuanchu.mom.service.DeviceService;
 import com.yuanchu.mom.utils.JackSonUtil;
 import com.yuanchu.mom.vo.Result;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import lombok.AllArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.io.File;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * 璁惧(DeviceController)琛ㄦ帶鍒跺眰
  */
 @Api(tags = "璁惧")
-@AllArgsConstructor
 @RestController
 @RequestMapping("/deviceScope")
 public class DeviceController {
-
+    @Resource
     private DeviceService deviceService;
 
+    @Value("${file.path}")
+    private String filePath;
+
+    @Autowired
+    private DataConfigService dataConfigService;
+
+    @ValueClassify("璁惧")
     @ApiOperation(value = "鏌ヨ璁惧璇︽儏鍒楄〃")
     @PostMapping("/selectDeviceParameter")
     public Result selectDeviceParameter(@RequestBody Map<String, Object> data) throws Exception {
         Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class);
-        Device itemParameter = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), Device.class);
+        DeviceDto itemParameter = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), DeviceDto.class);
         return Result.success(deviceService.selectDeviceParameter(page, itemParameter));
     }
 
+    @ValueClassify("璁惧")
     @ApiOperation(value = "娣诲姞璁惧璇︽儏鍙傛暟")
     @PostMapping("/addDeviceParameter")
     public Result addDeviceParameter(@RequestBody Device itemParameter) {
         return Result.success(deviceService.addDeviceParameter(itemParameter));
     }
 
+    @ValueClassify("璁惧")
     @ApiOperation(value = "鍒犻櫎璁惧璇︽儏鍙傛暟")
     @PostMapping("/delDeviceParameter")
     public Result<?> delDeviceParameter(Integer id) {
         return Result.success(deviceService.delDeviceParameter(id));
     }
 
+    @ValueClassify("璁惧")
     @ApiOperation(value = "淇敼璁惧璇︽儏鍙傛暟")
     @PostMapping("/upDeviceParameter")
     public Result<?> upDeviceParameter(@RequestBody Device itemParameter) {
@@ -58,5 +82,127 @@
         return Result.success(deviceService.selectEquipmentOverview());
     }
 
-}
+    @ApiOperation(value = "鑾峰彇琚巿鏉冧汉")
+    @GetMapping("/authorizedPerson")
+    @ValueAuth
+    public Result authorizedPerson() {
+        return Result.success(deviceService.authorizedPerson());
+    }
 
+    @ApiOperation(value = "鎼滅储")
+    @GetMapping("/search")
+    @ValueAuth
+    public Result search(Integer status, String deviceName, String specificationModel, String largeCategory) {
+        return Result.success(deviceService.search(status, deviceName, specificationModel, largeCategory));
+    }
+
+    //鍥剧墖涓婁紶
+    @ApiOperation(value = "璁惧鍥剧墖涓婁紶")
+    @PostMapping("/uploadFile")
+    @ValueAuth
+    public Result uploadFile(MultipartFile file) {
+        String urlString;
+        String pathName;
+        String filename = file.getOriginalFilename();
+        try {
+            String path = filePath;
+            File realpath = new File(path);
+            if (!realpath.exists()) {
+                realpath.mkdirs();
+            }
+            pathName = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyMMdd")) + "-" + file.getOriginalFilename();
+            urlString = realpath + "/" + pathName;
+            file.transferTo(new File(urlString));
+            HashMap<String, String> map = new HashMap<>();
+            map.put("name", filename);
+            map.put("url", pathName);
+            return Result.success(map);
+        } catch (Exception e) {
+            e.printStackTrace();
+            System.err.println("鍥剧墖涓婁紶閿欒");
+            return null;
+        }
+    }
+
+    @ApiOperation(value = "鑾峰彇璁惧璐熻矗浜�")
+    @GetMapping("/selectDevicePrincipal")
+    @ValueAuth
+    public Result selectDevicePrincipal() {
+        return Result.success(deviceService.selectDevicePrincipal());
+    }
+
+    @ApiOperation(value = "閫氳繃椤圭洰鑾峰彇璁惧鍒楄〃")
+    @PostMapping("/selectDeviceByCategory")
+    @ValueAuth
+    public Result selectDeviceByCategory(String inspectionItem, String inspectionItemSubclass) {
+        return Result.success(deviceService.selectDeviceByCategory(inspectionItem, inspectionItemSubclass));
+    }
+
+    @ApiOperation(value = "閫氳繃璁惧缂栧彿鑾峰彇璁惧鍒楄〃")
+    @PostMapping("/selectDeviceByCode")
+    @ValueAuth
+    public Result selectDeviceByCode(String code) {
+        return Result.success(deviceService.selectDeviceByCode(code));
+    }
+
+    @ValueAuth
+    @ValueClassify("璁惧")
+    @ApiOperation("/鏁伴噰-鏁版嵁閲囬泦")
+    @GetMapping("/dataCollection")
+    public Result<?> dataAcquisition(HttpServletRequest request, @RequestParam("id") Integer id,
+                                     @RequestParam("entrustCode") String entrustCode,
+                                     @RequestParam("sampleCode") String sampleCode) {
+        return deviceService.dataAcquisition(request, id, entrustCode, sampleCode);
+    }
+
+    @ValueAuth
+    @ApiOperation(value = "鍒ゆ柇璇ヨ澶囨槸鍚﹀彲浠ユ暟閲�")
+    @GetMapping("/determineWhetherToCollectData")
+    public Result<?> determineWhetherToCollectData(@RequestParam("managementNumber") String managementNumber, HttpServletRequest request) {
+        return deviceService.determineWhetherToCollectData(managementNumber, request);
+    }
+
+    @ValueClassify("璁惧")
+    @ApiOperation(value = "缁存姢鏁伴噰閰嶇疆")
+    @PostMapping("/saveDataAcquisitionConfiguration")
+    public Result<?> saveDataAcquisitionConfiguration(@RequestParam(value = "deviceId") Integer deviceId, @RequestBody DataConfigDto dataConfigList) {
+        dataConfigService.saveDataAcquisitionConfiguration(deviceId, dataConfigList);
+        return Result.success();
+    }
+
+    @ValueClassify("璁惧")
+    @ApiOperation(value = "鏌ヨ鏁伴噰閰嶇疆")
+    @GetMapping("/queryDataAcquisitionConfiguration")
+    public Result<?> queryDataAcquisitionConfiguration(@RequestParam("deviceId") Integer deviceId,
+                                                       @RequestParam("isDevice") Boolean isDevice,
+                                                       @RequestParam(value = "inspectionItem", required = false) String inspectionItem,
+                                                       @RequestParam(value = "inspectionItemSubclass", required = false) String inspectionItemSubclass) {
+        return dataConfigService.queryDataAcquisitionConfiguration(deviceId, isDevice, inspectionItem, inspectionItemSubclass);
+    }
+
+    @ValueClassify("璁惧")
+    @ApiOperation(value = "鍒犻櫎鏁伴噰閰嶇疆")
+    @DeleteMapping("/deleteDataAcquisitionConfiguration")
+    public Result<?> deleteDataAcquisitionConfiguration(@RequestParam("ids") String ids) {
+        List<String> split = Arrays.asList(ids.split(","));
+        List<String> collect = split.stream().distinct().collect(Collectors.toList());
+        dataConfigService.removeBatchByIds(collect);
+        return Result.success();
+    }
+
+    @ValueAuth
+    @ApiOperation(value = "鑿滃崟")
+    @PostMapping("/menu")
+    public Result menu() {
+        return Result.success(deviceService.menu());
+    }
+
+
+    @ApiOperation(value = "宸︿晶璁惧鏍戝舰鏍�")
+    @GetMapping("/treeDevice")
+    @ValueAuth
+    public Result treeDevice(String deviceName) {
+        return Result.success(deviceService.treeDevice(deviceName));
+    }
+
+}
\ No newline at end of file

--
Gitblit v1.9.3