From 21dedbb10f307260ac6fd77b826fc9158160c2bb Mon Sep 17 00:00:00 2001 From: Crunchy <3114200645@qq.com> Date: 星期三, 24 七月 2024 15:20:22 +0800 Subject: [PATCH] 数采bug调整 --- cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java | 130 ++++++++++++++++++++++++++++++++++++++----- 1 files changed, 115 insertions(+), 15 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 c70c19f..262ec8b 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,27 +1,37 @@ 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.dto.DeviceDto1; +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.JackSonUtil; import com.yuanchu.mom.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.springframework.beans.BeanUtils; +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)琛ㄦ帶鍒跺眰 @@ -35,6 +45,9 @@ @Value("${file.path}") private String filePath; + + @Autowired + private DataConfigService dataConfigService; @ValueClassify("璁惧") @ApiOperation(value = "鏌ヨ璁惧璇︽儏鍒楄〃") @@ -98,7 +111,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<>(); @@ -133,22 +146,109 @@ 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(value = "鏌ヨ鏁伴噰閰嶇疆") - @PostMapping("/getNumberCollect") - public Result<?> getNumberCollect(Integer id) { - DeviceDto1 deviceDto1 = new DeviceDto1(); - BeanUtils.copyProperties(deviceService.getById(id),deviceDto1); - return Result.success(deviceDto1); + @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) { + 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("/numberCollect") - public Result<?> numberCollect(@RequestBody DeviceDto1 deviceDto1) { - Device device = new Device(); - BeanUtils.copyProperties(deviceDto1,device); - return Result.success(deviceService.updateById(device)); + @PostMapping("/saveDataAcquisitionConfiguration") + public Result<?> saveDataAcquisitionConfiguration(@RequestParam(value = "deviceId") Integer deviceId, @RequestBody DataConfigDto dataConfigList) { + if (dataConfigList.getIsDevice()) { + Device one = deviceService.getOne(Wrappers.<Device>lambdaQuery() + .eq(Device::getIp, dataConfigList.getIp())); + if (ObjectUtils.isNotEmpty(one)) { + throw new ErrorException("璇P锛�" + dataConfigList.getIp() + "宸茬粡缁戝畾浜嗚澶囷細" + one.getDeviceName()); + } + Device device = new Device(); + device.setId(deviceId); + device.setCollectUrl(dataConfigList.getCollectUrl()); + device.setStorageUrl(dataConfigList.getStorageUrl()); + device.setIp(dataConfigList.getIp()); + device.setFileType(dataConfigList.getFileType()); + deviceService.updateById(device); + } else { + 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 = "鏌ヨ鏁伴噰閰嶇疆") + @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) { + if (isDevice) { + List<DataConfig> list = dataConfigService.list(Wrappers.<DataConfig>lambdaQuery() + .eq(DataConfig::getDeviceId, deviceId) + .eq(DataConfig::getInspectionItem, inspectionItem) + .eq(DataConfig::getInspectionItemSubclass, inspectionItemSubclass)); + return Result.success(list); + } else { + return Result.success(dataConfigService.selectDataConfigList(deviceId)); + } + } + + @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(); } } -- Gitblit v1.9.3