From b011b1368c2f8813ef2684a4a63914e6e59b5e15 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期四, 05 六月 2025 17:06:51 +0800 Subject: [PATCH] DO单优化 出库单优化 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/DeviceSiteServiceImpl.java | 43 +++++++++++++++++++++++++++++++++---------- 1 files changed, 33 insertions(+), 10 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/DeviceSiteServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/DeviceSiteServiceImpl.java index 2a1a189..467a9e9 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/DeviceSiteServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/DeviceSiteServiceImpl.java @@ -1,14 +1,16 @@ package com.vincent.rsf.server.manager.service.impl; -import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.vincent.rsf.framework.exception.CoolException; import com.vincent.rsf.server.manager.controller.params.DeviceSiteParame; +import com.vincent.rsf.server.manager.entity.BasStation; import com.vincent.rsf.server.manager.mapper.DeviceSiteMapper; import com.vincent.rsf.server.manager.entity.DeviceSite; +import com.vincent.rsf.server.manager.service.BasStationService; import com.vincent.rsf.server.manager.service.DeviceSiteService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -18,6 +20,10 @@ @Service("deviceSiteService") public class DeviceSiteServiceImpl extends ServiceImpl<DeviceSiteMapper, DeviceSite> implements DeviceSiteService { + + @Autowired + private BasStationService basStationService; + /** * 鍒濆鍖栫珯鐐� @@ -37,25 +43,42 @@ if (Objects.isNull(param.getDeviceSites()) || StringUtils.isBlank(param.getDeviceSites())) { throw new CoolException("鍒濆鍖栧け璐ワ細 璁惧浣滀笟绔欑偣涓嶈兘涓虹┖锛侊紒"); } - if (Objects.isNull(param.getSites()) || StringUtils.isBlank(param.getSites())) { + if (Objects.isNull(param.getSite()) || StringUtils.isBlank(param.getSite())) { throw new CoolException("鍒濆鍖栧け璐�: 浣滀笟绔欑偣涓嶈兘涓虹┖锛侊紒"); } if (Objects.isNull(param.getTypeIds()) || param.getTypeIds().isEmpty()) { throw new CoolException("鍒濆鍖栧け璐ワ細 浣滀笟绫诲瀷涓嶈兘涓虹┖锛侊紒"); } - List<String> sites = Arrays.asList(StringUtils.split(param.getSites(), ",")); + if (Objects.isNull(param.getTarget()) || param.getTarget().isEmpty()) { + throw new CoolException("鍒濆鍖栧け璐ワ細 鐩爣绔欑偣涓嶈兘涓虹┖锛侊紒"); + } + List<String> sites = Arrays.asList(StringUtils.split(param.getSite(), ",")); List<String> dvSites = Arrays.asList(StringUtils.split(param.getDeviceSites(), ",")); + List<String> targets = Arrays.asList(StringUtils.split(param.getTarget(), ",")); List<DeviceSite> deviceSites = new ArrayList<>(); for (String site : sites) { + BasStation basStation = basStationService.getOne(new LambdaQueryWrapper<BasStation>().eq(BasStation::getStationName, site)); + if (null == basStation) { + throw new CoolException("鍒濆鍖栧け璐ワ細 绔欑偣鏈壘鍒帮紒锛�"); + } for (String deviceSite : dvSites) { + BasStation basStation2 = basStationService.getOne(new LambdaQueryWrapper<BasStation>().eq(BasStation::getStationName, deviceSite)); + if (null == basStation2) { + throw new CoolException("鍒濆鍖栧け璐ワ細 浣滀笟绔欑偣鏈壘鍒帮紒锛�"); + } for (Long id : param.getTypeIds()) { - DeviceSite site1 = new DeviceSite(); - site1.setType(id + "") - .setSite(site) - .setDevice(param.getDeviceType()) - .setDeviceSite(deviceSite) - .setDeviceCode(param.getDeviceCode()); - deviceSites.add(site1); + for (String target : targets) { + DeviceSite site1 = new DeviceSite(); + site1.setType(id + "") + .setSite(site) + .setDevice(param.getDeviceType()) + .setDeviceSite(deviceSite) + .setTarget(target) + .setDeviceCode(param.getDeviceCode()) + .setChannel(param.getChannel()) + ; + deviceSites.add(site1); + } } } } -- Gitblit v1.9.1