From 74205424049d169a8d3bbabb74b4c8c9adf1ec99 Mon Sep 17 00:00:00 2001
From: zhuo <2089219845@qq.com>
Date: 星期六, 15 二月 2025 16:05:51 +0800
Subject: [PATCH] 设备列表查询接口修改

---
 cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java |  138 ++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 127 insertions(+), 11 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 fee39a8..959a9a5 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
@@ -1,23 +1,34 @@
 package com.yuanchu.mom.controller;
 
 
-import cn.hutool.core.lang.UUID;
 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 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 javax.servlet.http.HttpServletResponse;
 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)琛ㄦ帶鍒跺眰
@@ -26,34 +37,50 @@
 @RestController
 @RequestMapping("/deviceScope")
 public class DeviceController {
-
-
     @Resource
     private DeviceService deviceService;
 
     @Value("${file.path}")
     private String filePath;
 
-    @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);
-        return Result.success(deviceService.selectDeviceParameter(page, itemParameter));
+    @Autowired
+    private DataConfigService dataConfigService;
+
+    /**
+     * 鑾峰彇浜哄憳淇℃伅
+     * @return
+     * @throws Exception
+     */
+    @ValueAuth
+    @GetMapping("/selectUserList")
+    public Result selectUserList() {
+        return  Result.success(deviceService.selectUserList());
     }
 
+    @ValueClassify("璁惧")
+    @ApiOperation(value = "鏌ヨ璁惧璇︽儏鍒楄〃")
+    @PostMapping("/selectDeviceParameter")
+    public Result selectDeviceParameter(@RequestBody Map<String, Object> data,@RequestParam(value = "laboratoryNameIsNull", required = false) Boolean laboratoryNameIsNull) throws Exception {
+        Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class);
+        DeviceDto itemParameter = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), DeviceDto.class);
+        return Result.success(deviceService.selectDeviceParameter(page, itemParameter,laboratoryNameIsNull));
+    }
+
+    @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) {
@@ -84,6 +111,7 @@
     //鍥剧墖涓婁紶
     @ApiOperation(value = "璁惧鍥剧墖涓婁紶")
     @PostMapping("/uploadFile")
+    @ValueAuth
     public Result uploadFile(MultipartFile file) {
         String urlString;
         String pathName;
@@ -94,7 +122,7 @@
             if (!realpath.exists()) {
                 realpath.mkdirs();
             }
-            pathName = UUID.randomUUID() + "_" + file.getOriginalFilename();
+            pathName = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyMMdd")) + "-" + file.getOriginalFilename();
             urlString = realpath + "/" + pathName;
             file.transferTo(new File(urlString));
             HashMap<String, String> map = new HashMap<>();
@@ -114,5 +142,93 @@
     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 = "閫氳繃璁惧缂栧彿鑾峰彇璁惧鍒楄〃")
+    @GetMapping("/selectDeviceByCode")
+    @ValueAuth
+    public Result selectDeviceByCode(Integer id) {
+        return Result.success(deviceService.selectDeviceByCode(id));
+    }
+
+    @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));
+    }
+
+    @ApiOperation(value = "璁惧妗f瀵煎嚭")
+    @GetMapping("/exportDeviceFile")
+    @ValueAuth
+    public void exportDeviceFile(@RequestParam Integer deviceId, HttpServletResponse response) throws Exception {
+        deviceService.exportDeviceFile(deviceId,response);
+    }
+
+    @ApiOperation(value = "浠櫒璁惧涓�瑙堣〃瀵煎嚭")
+    @GetMapping("/exportEquipmentDetails")
+    @ValueAuth
+    public void exportEquipmentDetails(HttpServletResponse response) throws Exception {
+        deviceService.exportEquipmentDetails(response);
+    }
+
+}

--
Gitblit v1.9.3