From a6e6575bc3d668e14009ed0e931a376f1a4d86ff Mon Sep 17 00:00:00 2001 From: yuxc <653031404@qq.com> Date: 星期六, 06 五月 2023 18:59:29 +0800 Subject: [PATCH] 编码管理代码上传 --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeKeyattrrepeatServiceImpl.java | 72 ++++++++++++++++++++++++++++++++++++ 1 files changed, 72 insertions(+), 0 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeKeyattrrepeatServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeKeyattrrepeatServiceImpl.java index 0d51c52..f9873af 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeKeyattrrepeatServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeKeyattrrepeatServiceImpl.java @@ -16,14 +16,19 @@ */ package com.vci.ubcs.code.service.impl; +import com.alibaba.nacos.common.utils.StringUtils; +import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO; import com.vci.ubcs.code.entity.CodeKeyattrrepeatEntity; import com.vci.ubcs.code.enumpack.FrameworkDataLCStatus; import com.vci.ubcs.code.vo.CodeKeyattrrepeatVO; import com.vci.ubcs.code.mapper.CodeKeyattrrepeatMapper; import com.vci.ubcs.code.service.ICodeKeyattrrepeatService; +import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO; import com.vci.ubcs.code.vo.pagemodel.CodeKeyAttrRepeatRuleVO; +import com.vci.ubcs.starter.exception.VciBaseException; import com.vci.ubcs.starter.web.util.BeanUtilForVCI; import com.vci.ubcs.starter.web.util.VciBaseUtil; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -32,6 +37,9 @@ import java.util.ArrayList; import java.util.Collection; import java.util.List; +import java.util.stream.Collectors; + +import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.DATA_OID_NOT_EXIST; /** * 鍏抽敭灞炴�ф煡閲嶈鍒� 鏈嶅姟瀹炵幇绫� @@ -117,4 +125,68 @@ } return vo; } + + /** + * 浣跨敤鍒嗙被鐨勫叏閮ㄤ俊鎭潵鑾峰彇鍏抽敭灞炴�у垽鏂鍒欑殑鍐呭 + * + * @param classifyFullInfo 涓婚搴撳垎绫荤殑鍏ㄩ儴淇℃伅 + * @return 瑙勫垯鐨勬樉绀哄璞� + */ + @Override + public CodeKeyattrrepeatVO getRuleByClassifyFullInfo(CodeClassifyFullInfoBO classifyFullInfo) { + VciBaseUtil.alertNotNull(classifyFullInfo,"涓婚搴撳垎绫荤殑淇℃伅"); + String keyAttrRuleOid = classifyFullInfo.getCurrentClassifyVO().getCodekeyattrrepeatoid(); + if(StringUtils.isBlank(keyAttrRuleOid)){ + //鎴戜滑鏍规嵁涓婄骇鐨勫垎绫伙紝鎸夌収灞傜骇鍊掑簭鎺掑垪 + if(!CollectionUtils.isEmpty(classifyFullInfo.getParentClassifyVOs())){ + //鏈変笂绾у垎绫荤殑鎯呭喌涓嬫墠鍘绘煡璇� + List<CodeClassifyVO> sortedClassifyVO = classifyFullInfo.getParentClassifyVOs().stream().sorted(((o1, o2) -> o1.getDataLevel().compareTo(o2.getDataLevel()))).collect(Collectors.toList()); + for(int i = sortedClassifyVO.size() -1;i>=0;i--){ + CodeClassifyVO record = sortedClassifyVO.get(i); + + if(StringUtils.isNotBlank(record.getCodekeyattrrepeatoid())){ + keyAttrRuleOid = record.getCodekeyattrrepeatoid(); + break; + } + } + } + } + if(StringUtils.isNotBlank(keyAttrRuleOid)){ + CodeKeyAttrRepeatRuleVO objectByOid = getObjectByOid(keyAttrRuleOid); + CodeKeyattrrepeatVO codeKeyattrrepeatVO = new CodeKeyattrrepeatVO(); + BeanUtils.copyProperties(objectByOid,codeKeyattrrepeatVO); + return codeKeyattrrepeatVO; + } + //鍏抽敭灞炴�х殑瑙勫垯鍙互涓虹┖锛屼负绌虹殑鏃跺�欏氨浠h〃涓嶆帶鍒讹紝 + return null; + } + + /** + * 涓婚敭鑾峰彇鍏抽敭鏁版嵁鏌ラ噸瑙勫垯 + * @param oid 涓婚敭 + * @return 鍏抽敭鏁版嵁鏌ラ噸瑙勫垯鏄剧ず瀵硅薄 + */ + @Override + public CodeKeyAttrRepeatRuleVO getObjectByOid(String oid){ + CodeKeyAttrRepeatRuleVO codeKeyAttrRepeatRuleVO = codeKeyAttrRepeatRuleDO2VO(selectByOid(oid)); + CodeKeyattrrepeatVO codeKeyattrrepeatVO = new CodeKeyattrrepeatVO(); + BeanUtils.copyProperties(codeKeyAttrRepeatRuleVO,codeKeyattrrepeatVO); + return codeKeyAttrRepeatRuleVO; + } + /** + * 涓婚敭鏌ヨ鏁版嵁瀵硅薄 + * @param oid 涓婚敭 + * @return 鏁版嵁瀵硅薄 + * @throws VciBaseException 鍙傛暟涓虹┖锛屽苟涓旀暟鎹笉瀛樺湪鐨勬椂鍊欎細鎶涘嚭寮傚父 + */ + private CodeKeyattrrepeatEntity selectByOid(String oid) { + VciBaseUtil.alertNotNull(oid,"涓婚敭"); + + CodeKeyattrrepeatEntity codeKeyAttrRepeatRuleDO = codeKeyattrrepeatMapper.selectById(oid.trim()); +// .selectByPrimaryKey(oid.trim()); + if(codeKeyAttrRepeatRuleDO == null || StringUtils.isBlank(codeKeyAttrRepeatRuleDO.getOid())){ + throw new VciBaseException(DATA_OID_NOT_EXIST); + } + return codeKeyAttrRepeatRuleDO; + } } -- Gitblit v1.9.3