From 3aae81075a18a11d6b605c7583eb03b75366b466 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期四, 18 四月 2024 00:08:52 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/pom.xml | 6 +++ Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/IGroupAttrPoolMappingService.java | 8 ++++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 1 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/BtmTypeController.java | 1 Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupAttrPoolMappingServiceImpl.java | 68 +++++++++++++++++++++++++++------- Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/BtmTypeAttributeWrapper.java | 2 + Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/controller/GroupAttrPoolMappingController.java | 14 ++++++- 7 files changed, 82 insertions(+), 18 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/pom.xml b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/pom.xml index ac37aeb..e1857e2 100644 --- a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/pom.xml +++ b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/pom.xml @@ -45,6 +45,12 @@ <version>3.0.1.RELEASE</version> <scope>compile</scope> </dependency> + <dependency> + <groupId>com.vci.ubcs</groupId> + <artifactId>ubcs-omd-api</artifactId> + <version>3.0.1.RELEASE</version> + <scope>compile</scope> + </dependency> </dependencies> <build> diff --git a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/controller/GroupAttrPoolMappingController.java b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/controller/GroupAttrPoolMappingController.java index 63b4f77..43eef8d 100644 --- a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/controller/GroupAttrPoolMappingController.java +++ b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/controller/GroupAttrPoolMappingController.java @@ -1,11 +1,11 @@ package com.vci.ubcs.code.applyjtcodeservice.controller; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.vci.ubcs.code.applyjtcodeservice.entity.DockingPreMetaAttr; -import com.vci.ubcs.code.applyjtcodeservice.entity.GroupAttrPoolMapping; import com.vci.ubcs.code.applyjtcodeservice.service.IGroupAttrPoolMappingService; import com.vci.ubcs.code.applyjtcodeservice.vo.GroupAttrPoolMappingVO; +import com.vci.ubcs.omd.entity.Enum; +import com.vci.ubcs.omd.vo.EnumVO; import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject; import io.swagger.annotations.Api; import lombok.AllArgsConstructor; @@ -80,4 +80,14 @@ return R.status(groupAttrPoolMappingService.saveDistinctGroupAttr(dockingPreMetaAttrList)); } + /** + * 鏍规嵁鍒嗙被OID鑾峰彇鍒版ā鏉垮啀鏍规嵁灞炴�d鑾峰彇鍒版ā鏉夸笅鐨勫睘鎬d鐨別num鍊硷紝鐒跺悗鏌ヨ鍑烘灇涓� + * @param groupAttrPoolMappingVO + * @return + */ + @PostMapping("/getEnumAttrByClsOIdAndAttrId") + public R<List<EnumVO>> getEnumAttrByClsOIdAndAttrId(@RequestBody GroupAttrPoolMappingVO groupAttrPoolMappingVO) throws ServiceException { + return R.data(groupAttrPoolMappingService.getEnumAttrByClsOIdAndAttrId(groupAttrPoolMappingVO)); + } + } diff --git a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/IGroupAttrPoolMappingService.java b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/IGroupAttrPoolMappingService.java index 36d3a5d..90f8de1 100644 --- a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/IGroupAttrPoolMappingService.java +++ b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/IGroupAttrPoolMappingService.java @@ -5,6 +5,7 @@ import com.vci.ubcs.code.applyjtcodeservice.entity.DockingPreMetaAttr; import com.vci.ubcs.code.applyjtcodeservice.entity.GroupAttrPoolMapping; import com.vci.ubcs.code.applyjtcodeservice.vo.GroupAttrPoolMappingVO; +import com.vci.ubcs.omd.vo.EnumVO; import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.tool.api.R; @@ -59,4 +60,11 @@ */ R syncGroupAttrMapping(List<GroupAttrPoolMappingVO> groupAttrPoolMappingVOS) throws ServiceException; + /** + * 鏍规嵁鍒嗙被OID鑾峰彇鍒版ā鏉垮啀鏍规嵁灞炴�d鑾峰彇鍒版ā鏉夸笅鐨勫睘鎬d鐨別num鍊硷紝鐒跺悗鏌ヨ鍑烘灇涓� + * @param groupAttrPoolMappingVOS + * @return + */ + List<EnumVO> getEnumAttrByClsOIdAndAttrId(GroupAttrPoolMappingVO groupAttrPoolMappingVOS); + } diff --git a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupAttrPoolMappingServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupAttrPoolMappingServiceImpl.java index db69aa6..c144df3 100644 --- a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupAttrPoolMappingServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupAttrPoolMappingServiceImpl.java @@ -1,6 +1,7 @@ package com.vci.ubcs.code.applyjtcodeservice.service.impl; import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -14,11 +15,14 @@ import com.vci.ubcs.code.applyjtcodeservice.wrapper.GroupAttrPoolMappingWrapper; import com.vci.ubcs.code.feign.ICodeClassifyClient; import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO; +import com.vci.ubcs.omd.feign.IEnumClient; +import com.vci.ubcs.omd.vo.EnumVO; import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil; import com.vci.ubcs.starter.util.MdmBtmTypeConstant; import com.vci.ubcs.starter.util.UBCSCondition; import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject; import lombok.RequiredArgsConstructor; +import lombok.Value; import lombok.extern.slf4j.Slf4j; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.support.Condition; @@ -28,7 +32,9 @@ import javax.sql.rowset.serial.SerialException; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** @@ -48,6 +54,8 @@ private final IDockingPreAttrMappingService dockingPreAttrMappingService; + private final IEnumClient enumClient; + /** * 鏌ヨ鍏ㄩ儴闆嗗洟灞炴�ф睜鏄犲皠鐨勫睘鎬� * @param bladeQueryObject @@ -57,7 +65,7 @@ @Override public IPage<GroupAttrPoolMappingVO> getGroupAttrPoolALlList(BladeQueryObject bladeQueryObject) throws ServiceException { QueryWrapper<GroupAttrPoolMapping> queryWrapper = UBCSCondition.getQueryWrapper(bladeQueryObject.getConditionMap(), GroupAttrPoolMapping.class); - IPage<GroupAttrPoolMapping> groupAttrPoolMappingIPage = this.groupAttrPoolMappingMapper.selectPage(Condition.getPage(bladeQueryObject.getQuery()), queryWrapper); + IPage<GroupAttrPoolMapping> groupAttrPoolMappingIPage = this.groupAttrPoolMappingMapper.selectPage(Condition.getPage(bladeQueryObject.getQuery().setDescs("groupAttrKey")), queryWrapper); return GroupAttrPoolMappingWrapper.build().pageVO(groupAttrPoolMappingIPage); } @@ -110,8 +118,7 @@ return true; } List<GroupAttrPoolMapping> groupAttrPoolMappings = new ArrayList<>(); - List<String> distinctListEnglishName = new ArrayList<>(); - List<String> distinctListChineseName = new ArrayList<>(); + Map<String,String> distinctMap = new HashMap<>(); log.info("寮�濮嬪皢闆嗗洟灞炴�у悓姝ュ埌闆嗗洟灞炴�ф睜涓�"); // 灏哾ockingPreMetaAttrList闆嗗悎杞崲涓洪泦鍥㈠睘鎬ф睜灞炴�у璞� dockingPreMetaAttrList.stream().forEach(item->{ @@ -120,16 +127,15 @@ groupAttrPoolMapping.setGroupAttrName(item.getChineseName()); groupAttrPoolMappings.add(groupAttrPoolMapping); // 鍘婚噸鏌ヨ鏉′欢闆嗗洟灞炴�ц嫳鏂囧悕绉� - distinctListEnglishName.add(item.getEnglishName()); - // 鍘婚噸鏌ヨ鏉′欢闆嗗洟灞炴�т腑鏂囧悕绉� - distinctListChineseName.add(item.getName()); + distinctMap.put(item.getEnglishName(),item.getChineseName()); + }); + // 鏋勯�犳煡閲峴ql锛堟牴鎹泦鍥㈠睘鎬т腑鏂囧拰鑻辨枃浣滀负涓�缁勬煡璇㈡潯浠讹級 + LambdaQueryWrapper<GroupAttrPoolMapping> lambdaQueryWrapper = Wrappers.<GroupAttrPoolMapping>query().lambda(); + distinctMap.forEach((key, value)->{ + lambdaQueryWrapper.eq(GroupAttrPoolMapping::getGroupAttrKey,key).and(wrapper->wrapper.eq(GroupAttrPoolMapping::getGroupAttrName,value)).or(true); }); // 鍘婚噸鏌ヨ缁撴灉 - List<GroupAttrPoolMapping> dbGroupAttrPoolMappings = groupAttrPoolMappingMapper.selectList( - Wrappers.<GroupAttrPoolMapping>query() - .lambda().in(GroupAttrPoolMapping::getGroupAttrKey, distinctListEnglishName) - .in(GroupAttrPoolMapping::getGroupAttrName, distinctListChineseName) - ); + List<GroupAttrPoolMapping> dbGroupAttrPoolMappings = groupAttrPoolMappingMapper.selectList(lambdaQueryWrapper); List<GroupAttrPoolMapping> newGroupAttrPoolMappings = null; // 灏嗗凡瀛樺湪鐨勯泦鍥㈠睘鎬т粠groupAttrPoolMappings涓Щ闄� if(Func.isNotEmpty(dbGroupAttrPoolMappings)){ @@ -147,9 +153,14 @@ return item; }).collect(Collectors.toList()); log.info("鏈鍚屾鐨勬暟鎹负锛�"+ JSON.toJSONString(finalGroupAttrPoolMappings)); - boolean resBoolean = this.saveBatch(finalGroupAttrPoolMappings); - log.info("闆嗗洟灞炴�у悓姝ュ埌闆嗗洟灞炴�ф睜,鍚屾瀹屾瘯"); - return resBoolean; + try { + this.saveBatch(finalGroupAttrPoolMappings); + log.info("闆嗗洟灞炴�у悓姝ュ埌闆嗗洟灞炴�ф睜,鍚屾瀹屾瘯"); + return true; + }catch (Exception e){ + log.info("闆嗗洟灞炴�у悓姝ュ埌闆嗗洟灞炴�ф睜,鍚屾澶辫触锛侊紝鍘熷洜锛�"+e.getMessage()); + throw new ServiceException("闆嗗洟灞炴�у悓姝ュ埌闆嗗洟灞炴�ф睜,鍚屾澶辫触锛侊紝鍘熷洜锛�"+e.getMessage()); + } } /** @@ -189,4 +200,33 @@ return dockingPreAttrMappingService.syncGroupAttrMapping(groupAttrPoolMappings); } + /** + * 鏍规嵁鍒嗙被OID鑾峰彇鍒版ā鏉垮啀鏍规嵁灞炴�d鑾峰彇鍒版ā鏉夸笅鐨勫睘鎬d鐨別num鍊硷紝鐒跺悗鏌ヨ鍑烘灇涓� + * @param groupAttrPoolMappingVOS + * @return + */ + @Override + public List<EnumVO> getEnumAttrByClsOIdAndAttrId(GroupAttrPoolMappingVO groupAttrPoolMappingVOS) { + if(Func.isEmpty(groupAttrPoolMappingVOS.getClassifyId())){ + throw new ServiceException("蹇呬紶鍙傛暟鍒嗙被oid涓嶈兘涓虹┖锛�"); + } + if(Func.isEmpty(groupAttrPoolMappingVOS.getCodeMetaAttrKey())){ + throw new ServiceException("蹇呬紶鍙傛暟锛屾ā鏉垮睘鎬d涓嶈兘涓虹┖"); + } + // 鏍规嵁鍒嗙被oid鏌ヨ鎵�浣跨敤鐨勬ā鏉垮拰妯℃澘灞炴�� + List<CodeClassifyTemplateAttrVO> attrVOS = codeClassifyClient.listCodeAttributeByClassId(groupAttrPoolMappingVOS.getClassifyId()); + // 绛涢�夊嚭妯℃澘灞炴�т腑id绛変簬codeMetaAttrKey鐨勶紝骞跺彇鍑篹numId + if(attrVOS.isEmpty()){ + return new ArrayList<>(); + } + List<CodeClassifyTemplateAttrVO> codeClassifyTemplateAttrVOS = attrVOS.stream().filter(item -> item.getId().equalsIgnoreCase(groupAttrPoolMappingVOS.getCodeMetaAttrKey())).collect(Collectors.toList()); + // 鏍规嵁涓婁竴姝ュ彇鍑虹殑enumId璋冪敤鏋氫妇鏈嶅姟鏌ヨ鍑烘灇涓惧苟杩斿洖 + String enumId = codeClassifyTemplateAttrVOS.get(0).getEnumId(); + if(Func.isBlank(enumId)){ + return new ArrayList<>(); + } + R<List<EnumVO>> list = enumClient.getList(enumId); + return list.getData(); + } + } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java index 614bb51..8da2386 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java @@ -1561,7 +1561,6 @@ return uiInfoVO; } - /** * 妯℃澘灞炴�ц浆鎹负琛ㄥ崟瀹氫箟鐨勪俊鎭� * diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/BtmTypeController.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/BtmTypeController.java index 89edaed..87ff975 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/BtmTypeController.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/BtmTypeController.java @@ -105,7 +105,6 @@ return R.data(pageVO); } - /** * 鏂板鎴栦慨鏀� * diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/BtmTypeAttributeWrapper.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/BtmTypeAttributeWrapper.java index 391dd47..e2aaccc 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/BtmTypeAttributeWrapper.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/BtmTypeAttributeWrapper.java @@ -68,6 +68,8 @@ entity.setLastModifier(creator); entity.setLastModifyTime(now); entity.setTs(now); + entity.setPrecisionLength(0); + entity.setScaleLength(0); entity.setPkBtmType(btmTypeOid); // 鍦ㄨ繖杩涜閫氱敤瀛楁澶勭悊 return entity; -- Gitblit v1.9.3