From cd00884c3db8fa6808b3b5949ab1a2b1459d6bdc Mon Sep 17 00:00:00 2001 From: cuilei <ray_tsu1@163.com> Date: 星期三, 11 六月 2025 10:36:55 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 102 insertions(+), 1 deletions(-) diff --git a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java index 5954d6f..c4d6284 100644 --- a/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java +++ b/lxzn-module-mdc-common/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentServiceImpl.java @@ -4,8 +4,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; +import com.baomidou.mybatisplus.core.toolkit.StringPool; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.dto.message.MessageDTO; @@ -31,6 +33,7 @@ import org.jeecg.modules.system.mapper.MdcEquipmentDepartMapper; import org.jeecg.modules.system.mapper.MdcProductionEquipmentMapper; import org.jeecg.modules.system.service.*; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.cache.annotation.CacheEvict; import org.springframework.stereotype.Service; @@ -50,6 +53,7 @@ * @Date: 2023-03-22 * @Version: V1.0 */ +@Slf4j @Service public class MdcEquipmentServiceImpl extends ServiceImpl<MdcEquipmentMapper, MdcEquipment> implements IMdcEquipmentService { @@ -92,6 +96,9 @@ @Value("${fileNCPath}") private String fileNCPath; + + @Autowired + private IEquipmentService equipmentService; @Override @@ -380,7 +387,7 @@ @Override public List<MdcEquipmentTree> loadTreeListByProduction(String userId) { //鑾峰彇鎵�鏈変骇绾挎暟鎹� - List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_0.toString()).orderByAsc(MdcProduction::getProductionOrder)); + List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_0.toString()).eq(MdcProduction::getMdcFlag, CommonConstant.DEFAULT_1).orderByAsc(MdcProduction::getProductionOrder)); //鏍规嵁鐢ㄦ埛id鑾峰彇鎷ユ湁鐨勪骇绾夸俊鎭泦鍚� List<String> productionIds = mdcUserProductionService.queryProductionIdsByUserId(userId); List<String> allProductionIds = new ArrayList<>(); @@ -974,4 +981,98 @@ return list.stream().map(MdcEquipment::getEquipmentId).collect(Collectors.toList()); } + @Override + @Transactional(rollbackFor = Exception.class) + public void addNewEquipmentFromEam(MdcEquipment mdcEquipment, String productionId) { + //榛樿绯荤粺绫诲瀷 + mdcEquipment.setSystemValue("3"); + //鍒ゆ柇MDC鏄惁宸叉坊鍔犳璁惧 + MdcEquipment entity = this.getBaseMapper().selectOne(new LambdaQueryWrapper<MdcEquipment>().eq(MdcEquipment::getEquipmentId, mdcEquipment.getEquipmentId())); + if (entity != null) { + //MDC宸茬粡瀛樺湪姝よ澶� + log.warn("MDC宸茬粡瀛樺湪姝よ澶�, equipmentId={}", mdcEquipment.getEquipmentId()); + return; + } + Equipment equipment = equipmentService.getOne(new LambdaQueryWrapper<Equipment>().eq(Equipment::getEquipmentid, mdcEquipment.getEquipmentId())); + if(equipment == null) { + //閲囬泦鏈厤缃� + log.warn("閲囬泦鏈厤缃�, equipmentId={}", mdcEquipment.getEquipmentId()); + return; + } + //璁剧疆鍊� + mdcEquipment.setEquipmentIp(equipment.getEquipmentip()); + mdcEquipment.setEquipmentModel(equipment.getEquipmentmodel()); + mdcEquipment.setDataPort(equipment.getDataport()); + mdcEquipment.setDriveType(equipment.getDrivetype()); + mdcEquipment.setControlSystem(equipment.getControlsystem()); + mdcEquipment.setSaveTableName(equipment.getSavetablename()); + mdcEquipment.setEquipmentStatus(CommonConstant.STATUS_NORMAL); + + this.saveMdcEquipment(mdcEquipment, null, productionId); + } + + /** + * 鏍规嵁浜х嚎id闆嗗悎鏌ヨ璁惧鍒楄〃 + * @param mdcProductionIds + * @return + */ + @Override + public List<MdcEquipment> findByProductionIds(List<String> mdcProductionIds) { + return this.baseMapper.findByProductionIds(mdcProductionIds); + } + + /** + * 鏍规嵁浜х嚎id闆嗗悎鍜岄厤閫佸皬缁勬煡璇㈣澶囧垪琛� + * @param mdcProductionIds + * @param teamCodeList + * @return + */ + @Override + public List<MdcEquipment> findByProIdsAndTeamCode(List<String> mdcProductionIds, List<String> teamCodeList) { + return this.baseMapper.findByProIdsAndTeamCode(mdcProductionIds, teamCodeList); + } + + /** + * 鏍规嵁浜х嚎id闆嗗悎鍜岃澶囩被鍨嬫煡璇㈣澶囧垪琛� + * @param allProductionIds + * @param typeList + * @return + */ + @Override + public List<MdcEquipment> findByProIdsAndType(List<String> allProductionIds, List<String> typeList) { + return this.baseMapper.findByProIdsAndType(allProductionIds, typeList); + } + + @Override + public List<MdcEquipment> getEquipmentList() { + + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String userId = user.getId(); + if (StringUtils.isNotEmpty(user.getEquipmentIds())) { + return this.baseMapper.selectList(new LambdaQueryWrapper<MdcEquipment>().eq(MdcEquipment::getEquipmentId, Arrays.asList(user.getEquipmentIds().split(StringPool.COMMA)))); + } + //鑾峰彇鎵�鏈変骇绾挎暟鎹� + List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_0.toString()).orderByAsc(MdcProduction::getProductionOrder)); + //鏍规嵁鐢ㄦ埛id鑾峰彇鎷ユ湁鐨勪骇绾夸俊鎭泦鍚� + List<String> productionIds = mdcUserProductionService.queryProductionIdsByUserId(userId); + List<String> allProductionIds = new ArrayList<>(); + //鎵惧埌鎵�鏈変骇绾縤d鐨勪笂绾d + if (productionIds != null && !productionIds.isEmpty()) { + for (String productionId : productionIds) { + this.getAllProductionIds(productionList, productionId, allProductionIds); + } + } + //鏍规嵁浜х嚎闆嗗悎鏌ユ壘鎵�鏈夎澶噄d + if (allProductionIds.isEmpty()) { + return null; + } + List<MdcEquipment> equipmentIds = this.baseMapper.getEquipmentList(allProductionIds); + return equipmentIds; + } + + @Override + public List<String> getEquIdsByProIds(List<String> proIds) { + return this.baseMapper.getEquIdsByProIds(proIds); + } + } -- Gitblit v1.9.3