From 3b57ceae3bf1339b8f902f1b40daa1588960314b Mon Sep 17 00:00:00 2001 From: Crunchy <3114200645@qq.com> Date: 星期一, 22 七月 2024 18:28:51 +0800 Subject: [PATCH] 数采配置完成 --- cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java | 2 cnas-server/src/main/java/com/yuanchu/mom/utils/DataAcquisition.java | 4 cnas-server/src/main/java/com/yuanchu/mom/dto/DeviceConfigDtoPage.java | 66 ++++++++++++++++ cnas-server/src/main/java/com/yuanchu/mom/dto/DataConfigDto.java | 15 +++ cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java | 44 +++++++++- cnas-server/src/main/resources/mapper/DataConfigMapper.xml | 23 +++++ cnas-server/src/main/java/com/yuanchu/mom/mapper/DataConfigMapper.java | 6 + cnas-server/src/main/java/com/yuanchu/mom/service/DataConfigService.java | 6 + cnas-server/src/main/java/com/yuanchu/mom/service/impl/DataConfigServiceImpl.java | 19 ++++ 9 files changed, 170 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 eb36cf3..6a73257 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 @@ -26,9 +26,11 @@ 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)琛ㄦ帶鍒跺眰 @@ -190,26 +192,54 @@ @ValueClassify("璁惧") @ApiOperation(value = "缁存姢鏁伴噰閰嶇疆") @PostMapping("/saveDataAcquisitionConfiguration") - public Result<?> saveDataAcquisitionConfiguration(@RequestBody DataConfigDto dataConfigList) { - dataConfigService.saveOrUpdateBatch(dataConfigList.getDataConfigList()); + public Result<?> saveDataAcquisitionConfiguration(@RequestParam(value = "deviceId") Integer deviceId, @RequestBody DataConfigDto dataConfigList) { + if (dataConfigList.getIsDevice()) { + Device device = new Device(); + device.setId(deviceId); + device.setCollectUrl(dataConfigList.getCollectUrl()); + device.setStorageUrl(dataConfigList.getStorageUrl()); + device.setIp(dataConfigList.getIp()); + device.setFileType(device.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("insProductItem") String insProductItem) { - List<DataConfig> list = dataConfigService.list(Wrappers.<DataConfig>lambdaQuery() + public Result<?> queryDataAcquisitionConfiguration(@RequestParam("deviceId") Integer deviceId, + @RequestParam("isDevice") Boolean isDevice, + @RequestParam(value = "insProductItem", required = false) String insProductItem) { + if (isDevice) { + List<DataConfig> list = dataConfigService.list(Wrappers.<DataConfig>lambdaQuery() .eq(DataConfig::getDeviceId, deviceId) .eq(DataConfig::getInsProductItem, insProductItem)); - return Result.success(list); + return Result.success(list); + } else { + return Result.success(dataConfigService.selectDataConfigList(deviceId)); + } } @ValueClassify("璁惧") @ApiOperation(value = "鍒犻櫎鏁伴噰閰嶇疆") @DeleteMapping("/deleteDataAcquisitionConfiguration") - public Result<?> deleteDataAcquisitionConfiguration(@RequestParam("id") Integer id) { - dataConfigService.removeById(id); + 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(); } } diff --git a/cnas-server/src/main/java/com/yuanchu/mom/dto/DataConfigDto.java b/cnas-server/src/main/java/com/yuanchu/mom/dto/DataConfigDto.java index 2f60a45..d3fafcc 100644 --- a/cnas-server/src/main/java/com/yuanchu/mom/dto/DataConfigDto.java +++ b/cnas-server/src/main/java/com/yuanchu/mom/dto/DataConfigDto.java @@ -1,6 +1,7 @@ package com.yuanchu.mom.dto; import com.yuanchu.mom.pojo.DataConfig; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; @@ -9,4 +10,18 @@ public class DataConfigDto { private List<DataConfig> dataConfigList; + + private Boolean isDevice; + + @ApiModelProperty("鏂囦欢鍚庣紑") + private String fileType; + + @ApiModelProperty("閲囬泦鍦板潃") + private String collectUrl; + + @ApiModelProperty("瀛樺偍鍦板潃") + private String storageUrl; + + @ApiModelProperty("璁惧IP") + private String ip; } diff --git a/cnas-server/src/main/java/com/yuanchu/mom/dto/DeviceConfigDtoPage.java b/cnas-server/src/main/java/com/yuanchu/mom/dto/DeviceConfigDtoPage.java new file mode 100644 index 0000000..779fce1 --- /dev/null +++ b/cnas-server/src/main/java/com/yuanchu/mom/dto/DeviceConfigDtoPage.java @@ -0,0 +1,66 @@ +package com.yuanchu.mom.dto; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.TableField; +import com.yuanchu.mom.annotation.ValueTableShow; +import com.yuanchu.mom.common.OrderBy; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class DeviceConfigDtoPage extends OrderBy { + + @ValueTableShow(2) + @ApiModelProperty(value = "璁惧鍚嶇О") + private String deviceName; + + @ApiModelProperty(value = "鍒涘缓鐢ㄦ埛") + @TableField(fill = FieldFill.INSERT) + private Integer createUser; + + @ValueTableShow(3) + @ApiModelProperty(value = "鏂囦欢鍚庣紑") + private String fileType; + + @ValueTableShow(4) + @ApiModelProperty(value = "閲囬泦鍦板潃") + private String collectUrl; + + @ValueTableShow(5) + @ApiModelProperty(value = "瀛樺偍鍦板潃") + private String storageUrl; + + @ValueTableShow(6) + @ApiModelProperty(value = "IP鍦板潃") + private String ip; + + @ValueTableShow(7) + @ApiModelProperty(value = "妫�楠岄」") + private String inspectionItem; + + @ValueTableShow(8) + @ApiModelProperty(value = "妫�楠岄」瀛愰」") + private String inspectionItemSubClass; + + @ValueTableShow(9) + @ApiModelProperty(value = "鍏紡") + private String formula; + + @ValueTableShow(10) + @ApiModelProperty(value = "鍙傜収X") + private String referx; + + @ValueTableShow(11) + @ApiModelProperty(value = "X") + private String x; + + @ValueTableShow(12) + @ApiModelProperty(value = "鍙傜収Y") + private String refery; + + @ValueTableShow(13) + @ApiModelProperty(value = "Y") + private String y; + + private Integer id; +} diff --git a/cnas-server/src/main/java/com/yuanchu/mom/mapper/DataConfigMapper.java b/cnas-server/src/main/java/com/yuanchu/mom/mapper/DataConfigMapper.java index c7184eb..277160f 100644 --- a/cnas-server/src/main/java/com/yuanchu/mom/mapper/DataConfigMapper.java +++ b/cnas-server/src/main/java/com/yuanchu/mom/mapper/DataConfigMapper.java @@ -1,7 +1,10 @@ package com.yuanchu.mom.mapper; -import com.yuanchu.mom.pojo.DataConfig; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yuanchu.mom.dto.DeviceConfigDtoPage; +import com.yuanchu.mom.pojo.DataConfig; + +import java.util.List; /** * <p> @@ -13,4 +16,5 @@ */ public interface DataConfigMapper extends BaseMapper<DataConfig> { + List<DeviceConfigDtoPage> selectDataConfigList(Integer deviceId); } diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/DataConfigService.java b/cnas-server/src/main/java/com/yuanchu/mom/service/DataConfigService.java index 5ca0df5..96133f1 100644 --- a/cnas-server/src/main/java/com/yuanchu/mom/service/DataConfigService.java +++ b/cnas-server/src/main/java/com/yuanchu/mom/service/DataConfigService.java @@ -1,7 +1,10 @@ package com.yuanchu.mom.service; -import com.yuanchu.mom.pojo.DataConfig; import com.baomidou.mybatisplus.extension.service.IService; +import com.yuanchu.mom.dto.DeviceConfigDtoPage; +import com.yuanchu.mom.pojo.DataConfig; + +import java.util.List; /** * <p> @@ -13,4 +16,5 @@ */ public interface DataConfigService extends IService<DataConfig> { + List<DeviceConfigDtoPage> selectDataConfigList(Integer deviceId); } diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DataConfigServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DataConfigServiceImpl.java index 766cf89..8035161 100644 --- a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DataConfigServiceImpl.java +++ b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DataConfigServiceImpl.java @@ -1,10 +1,15 @@ package com.yuanchu.mom.service.impl; -import com.yuanchu.mom.pojo.DataConfig; -import com.yuanchu.mom.mapper.DataConfigMapper; -import com.yuanchu.mom.service.DataConfigService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.yuanchu.mom.common.GetLook; +import com.yuanchu.mom.dto.DeviceConfigDtoPage; +import com.yuanchu.mom.mapper.DataConfigMapper; +import com.yuanchu.mom.pojo.DataConfig; +import com.yuanchu.mom.service.DataConfigService; +import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; + +import java.util.List; /** * <p> @@ -15,6 +20,14 @@ * @since 2024-07-13 12:23:00 */ @Service +@AllArgsConstructor public class DataConfigServiceImpl extends ServiceImpl<DataConfigMapper, DataConfig> implements DataConfigService { + private GetLook getLook; + + private DataConfigMapper dataConfigMapper; + @Override + public List<DeviceConfigDtoPage> selectDataConfigList(Integer deviceId) { + return dataConfigMapper.selectDataConfigList(deviceId); + } } diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java index 7768262..79c8bf5 100644 --- a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java +++ b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java @@ -156,6 +156,8 @@ .orderBy(false, false, DataConfig::getId)); hashMap.putAll(DataAcquisition.dataAcquisitionEntrance(request, list, i, entrustCode, sampleCode, ip)); }); + String frequency = DataAcquisition.createFrequency(entrustCode, sampleCode); + hashMap.put("frequency", frequency); return Result.success(hashMap); } } diff --git a/cnas-server/src/main/java/com/yuanchu/mom/utils/DataAcquisition.java b/cnas-server/src/main/java/com/yuanchu/mom/utils/DataAcquisition.java index 505a27f..a0387db 100644 --- a/cnas-server/src/main/java/com/yuanchu/mom/utils/DataAcquisition.java +++ b/cnas-server/src/main/java/com/yuanchu/mom/utils/DataAcquisition.java @@ -95,13 +95,11 @@ } } } - String frequency = createFrequency(entrustCode, sampleCode); - map.put("frequency", frequency); return map; } } - private static String createFrequency(String entrustCode, String sampleCode) { + public static String createFrequency(String entrustCode, String sampleCode) { String key = frequency + ":" + entrustCode + ":" + sampleCode; boolean b = RedisUtil.hasKey(key); String frequencyValue; diff --git a/cnas-server/src/main/resources/mapper/DataConfigMapper.xml b/cnas-server/src/main/resources/mapper/DataConfigMapper.xml index 135e544..7701b02 100644 --- a/cnas-server/src/main/resources/mapper/DataConfigMapper.xml +++ b/cnas-server/src/main/resources/mapper/DataConfigMapper.xml @@ -12,4 +12,27 @@ <result column="y" property="y" /> </resultMap> + <select id="selectDataConfigList" resultType="com.yuanchu.mom.dto.DeviceConfigDtoPage"> + SELECT d.device_name, + d.file_type, + d.collect_url, + d.storage_url, + d.ip, + ip.inspection_item, + if(ip.inspection_item_subclass is not null and ip.inspection_item_subclass != '', + ip.inspection_item_subclass, ip.inspection_item) inspection_item_subclass, + ddc.formula, + ddc.referx, + ddc.refery, + ddc.x, + ddc.y, + ddc.id + FROM device d + left join structure_item_parameter ip on FIND_IN_SET(ip.id, d.ins_product_ids) + left join device_data_config ddc on ddc.device_id = d.id and + if(ip.inspection_item_subclass is not null and + ip.inspection_item_subclass != '', ip.inspection_item_subclass, + ip.inspection_item) = ddc.ins_product_item + where d.id = #{deviceId} + </select> </mapper> -- Gitblit v1.9.3