From c2538085f897faa67abf32f23fc006e816df3c09 Mon Sep 17 00:00:00 2001 From: Crunchy <3114200645@qq.com> Date: 星期四, 18 七月 2024 18:20:23 +0800 Subject: [PATCH] 文件采集完成 - 数采 --- cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java | 128 +++++++++++++++++++++++++++++++++++++----- 1 files changed, 112 insertions(+), 16 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 d4ca573..6fecd36 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,24 +1,35 @@ package com.yuanchu.mom.controller; -import cn.hutool.core.lang.UUID; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; 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.exception.ErrorException; +import com.yuanchu.mom.pojo.DataConfig; import com.yuanchu.mom.pojo.Device; +import com.yuanchu.mom.service.DataConfigService; import com.yuanchu.mom.service.DeviceService; +import com.yuanchu.mom.utils.DataAcquisition; import com.yuanchu.mom.utils.JackSonUtil; import com.yuanchu.mom.vo.Result; import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParam; -import io.swagger.annotations.ApiImplicitParams; 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 java.io.File; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.HashMap; +import java.util.List; import java.util.Map; /** @@ -28,34 +39,36 @@ @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) { @@ -86,6 +99,7 @@ //鍥剧墖涓婁紶 @ApiOperation(value = "璁惧鍥剧墖涓婁紶") @PostMapping("/uploadFile") + @ValueAuth public Result uploadFile(MultipartFile file) { String urlString; String pathName; @@ -96,7 +110,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<>(); @@ -117,14 +131,96 @@ return Result.success(deviceService.selectDevicePrincipal()); } - @ApiOperation(value = "閫氳繃璁惧鍒嗙被鑾峰彇璁惧鍒楄〃") + @ApiOperation(value = "閫氳繃椤圭洰鑾峰彇璁惧鍒楄〃") @PostMapping("/selectDeviceByCategory") @ValueAuth - @ApiImplicitParams({ - @ApiImplicitParam(name = "category", value = "璁惧鍒嗙被", dataTypeClass = String.class), - }) - public Result selectDeviceByCategory(String category) { - return Result.success(deviceService.selectDeviceByCategory(category)); + 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)); + } + +// @ValueClassify("璁惧") +// @ApiOperation(value = "鏌ヨ鏁伴噰閰嶇疆") +// @PostMapping("/getNumberCollect") +// public Result<?> getNumberCollect(Integer id) { +// DeviceDto1 deviceDto1 = new DeviceDto1(); +// BeanUtils.copyProperties(deviceService.getById(id),deviceDto1); +// return Result.success(deviceDto1); +// } +// +// @ValueClassify("璁惧") +// @ApiOperation(value = "缁存姢鏁伴噰閰嶇疆") +// @PostMapping("/numberCollect") +// public Result<?> numberCollect(@RequestBody DeviceDto1 deviceDto1) { +// Device device = new Device(); +// BeanUtils.copyProperties(deviceDto1,device); +// return Result.success(deviceService.updateById(device)); +// } + + @ValueAuth + @ValueClassify("璁惧") + @ApiOperation("/鏁伴噰-鏁版嵁閲囬泦") + @GetMapping("/dataCollection") + public Result<?> text(HttpServletRequest request, @RequestParam("managementNumber") String managementNumber, + @RequestParam("entrustCode") String entrustCode, + @RequestParam("sampleCode") String sampleCode) { + Device device = deviceService.getOne(Wrappers.<Device>lambdaQuery() + .eq(Device::getManagementNumber, managementNumber)); + if (ObjectUtils.isEmpty(device.getFileType()) || ObjectUtils.isEmpty(device.getCollectUrl())) { + throw new ErrorException("鏈粰璇ワ細" + device.getDeviceName() + "璁惧閰嶇疆閲囬泦璺緞鎴栨枃浠跺悗缂�锛�"); + } + List<DataConfig> list = dataConfigService.list(Wrappers.<DataConfig>lambdaQuery() + .eq(DataConfig::getDeviceId, device.getId()) + .orderBy(false, false, DataConfig::getId)); + return DataAcquisition.dataAcquisitionEntrance(request,list, device, entrustCode, sampleCode); + } + + @ValueAuth + @ApiOperation(value = "鍒ゆ柇璇ヨ澶囨槸鍚﹀彲浠ユ暟閲�") + @GetMapping("/determineWhetherToCollectData") + public Result<?> determineWhetherToCollectData(@RequestParam("managementNumber") String managementNumber) { + Device device = deviceService.getOne(Wrappers.<Device>lambdaQuery() + .eq(Device::getManagementNumber, managementNumber)); + if (ObjectUtils.isEmpty(device)) { + return Result.fail("璁惧缂栧彿閿欒锛�"); + } + if (ObjectUtils.isEmpty(device.getFileType()) || ObjectUtils.isEmpty(device.getCollectUrl())) { + return Result.success(false); + } else { + return Result.success(true); + } + } + + @ValueClassify("璁惧") + @ApiOperation(value = "缁存姢鏁伴噰閰嶇疆") + @PostMapping("/saveDataAcquisitionConfiguration") + public Result<?> saveDataAcquisitionConfiguration(@RequestBody DataConfigDto dataConfigList) { + dataConfigService.saveOrUpdateBatch(dataConfigList.getDataConfigList()); + return Result.success(); + } + + @ValueClassify("璁惧") + @ApiOperation(value = "鏌ヨ鏁伴噰閰嶇疆") + @GetMapping("/queryDataAcquisitionConfiguration") + public Result<?> queryDataAcquisitionConfiguration(@RequestParam("deviceId") Integer deviceId, @RequestParam("insProductItem") String insProductItem) { + List<DataConfig> list = dataConfigService.list(Wrappers.<DataConfig>lambdaQuery() + .eq(DataConfig::getDeviceId, deviceId) + .eq(DataConfig::getInsProductItem, insProductItem)); + return Result.success(list); + } + + @ValueClassify("璁惧") + @ApiOperation(value = "鍒犻櫎鏁伴噰閰嶇疆") + @DeleteMapping("/deleteDataAcquisitionConfiguration") + public Result<?> deleteDataAcquisitionConfiguration(@RequestParam("id") Integer id) { + dataConfigService.removeById(id); + return Result.success(); } } -- Gitblit v1.9.3