From 039f227d1f2998c0e0e5cd5d73d343ad57b88145 Mon Sep 17 00:00:00 2001 From: xiejun <xj@2023> Date: 星期三, 31 五月 2023 10:42:14 +0800 Subject: [PATCH] 添加主数据分类及其属性为集团集成用 --- Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrMappingService.java | 3 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java | 5 + Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreMetaAttr.java | 1 Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java | 32 ++++++++++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/CodeClassifyClient.java | 32 ++++++++++ Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreClassifyMapper.xml | 13 ++- Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java | 25 ++++++++ Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java | 39 ++++++++---- Source/UBCS-WEB/vue.config.js | 4 Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/revision/model/BaseModel.java | 6 +- 10 files changed, 132 insertions(+), 28 deletions(-) diff --git a/Source/UBCS-WEB/vue.config.js b/Source/UBCS-WEB/vue.config.js index afa341a..d3136dc 100644 --- a/Source/UBCS-WEB/vue.config.js +++ b/Source/UBCS-WEB/vue.config.js @@ -26,8 +26,8 @@ proxy: { '/api': { //鏈湴鏈嶅姟鎺ュ彛鍦板潃 - target: 'http://localhost:37000', - //target: 'http://192.168.3.7:37000', + target: 'http://localhost:37000', + // target: 'http://192.168.3.7:37000', //target: 'http://dev.vci-tech.com:37000', //target: 'http://192.168.1.51:37000/', //杩滅▼婕旂ず鏈嶅姟鍦板潃,鍙敤浜庣洿鎺ュ惎鍔ㄩ」鐩� diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java index 3ec61d2..0d61f55 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/ICodeClassifyClient.java @@ -17,10 +17,18 @@ package com.vci.ubcs.code.feign; import com.vci.ubcs.code.entity.CodeClassify; +import com.vci.ubcs.code.entity.CodeClassifyTemplateAttr; +import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO; +import com.vci.ubcs.starter.revision.model.TreeQueryObject; +import com.vci.ubcs.starter.web.pagemodel.Tree; import org.springblade.core.mp.support.BladePage; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; /** * 涓婚搴撳畾涔夎〃 Feign鎺ュ彛绫� @@ -35,6 +43,8 @@ String API_PREFIX = "/codeClass"; String TOP = API_PREFIX + "/top"; + String CODE_CLASSIFY_TREE=API_PREFIX+"/referCodeClassifyTree"; + String CODE_ATTRIBUTE_LIST=API_PREFIX+"/listCodeAttributeByClassId"; /** * 鑾峰彇涓婚搴撳畾涔夎〃鍒楄〃 @@ -46,4 +56,19 @@ @GetMapping(TOP) BladePage<CodeClassify> top(@RequestParam("current") Integer current, @RequestParam("size") Integer size); + /*** + * 鑾峰彇涓婚搴撳垎绫诲眰绾ф爲 + * @param treeQueryObject + * @return 涓婚搴撳垎绫� + */ + @PostMapping(CODE_CLASSIFY_TREE) + public List<Tree> referCodeClassifyTree(@RequestBody TreeQueryObject treeQueryObject); + + /*** + * 鑾峰彇涓绘暟鎹ā鏉垮睘鎬т俊鎭� + * @param codeClassifyId + * reutn 杩斿洖涓绘暟鎹ā鏉垮睘鎬т俊鎭� + */ + @GetMapping(CODE_ATTRIBUTE_LIST) + public List<CodeClassifyTemplateAttrVO> listCodeAttributeByClassId(@RequestParam("codeClassifyId") String codeClassifyId); } diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/revision/model/BaseModel.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/revision/model/BaseModel.java index 6384c7c..e12fc17 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/revision/model/BaseModel.java +++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/revision/model/BaseModel.java @@ -27,7 +27,7 @@ private String name; //闆嗗洟鐮� - private String groupcode; + //private String groupcode; private String description; @@ -342,13 +342,13 @@ this.lctid = lctid; } - public String getGroupcode() { +/* public String getGroupcode() { return this.groupcode; } public void setGroupcode(String groupcode) { this.groupcode = groupcode; - } + }*/ public Map<String, String> getData() { return this.data; diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreMetaAttr.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreMetaAttr.java index b7ca250..9a5bde0 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreMetaAttr.java +++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/entity/DockingPreMetaAttr.java @@ -54,6 +54,7 @@ * 瑙嗗浘妯″瀷id */ @ApiModelProperty(value = "瑙嗗浘妯″瀷涓婚敭") + @TableField(value = "viewModeId") private String viewModelId; /*** * 榛樿鍊� diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/CodeClassifyClient.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/CodeClassifyClient.java index a2f104a..da5f0d1 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/CodeClassifyClient.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/CodeClassifyClient.java @@ -19,15 +19,26 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.vci.ubcs.code.entity.CodeClassify; +import com.vci.ubcs.code.entity.CodeClassifyTemplateAttr; import com.vci.ubcs.code.mapper.CodeClassifyMapper; +import com.vci.ubcs.code.service.ICodeClassifyTemplateAttrService; +import com.vci.ubcs.code.service.MdmEngineService; +import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO; +import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO; +import com.vci.ubcs.starter.revision.model.TreeQueryObject; +import com.vci.ubcs.starter.web.pagemodel.Tree; import lombok.AllArgsConstructor; import org.springblade.core.mp.support.BladePage; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import com.vci.ubcs.code.service.ICodeClassifyService; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import springfox.documentation.annotations.ApiIgnore; + +import java.util.List; /** * 涓婚搴撳畾涔夎〃 Feign瀹炵幇绫� @@ -41,7 +52,9 @@ public class CodeClassifyClient implements ICodeClassifyClient { private final ICodeClassifyService plCodeClassifyService; + private final ICodeClassifyTemplateAttrService codeClassifyTemplateAttrService; + private final MdmEngineService engineService; CodeClassifyMapper codeClassifyMapper; @Override @@ -54,4 +67,23 @@ return BladePage.of(page); } + /*** + * 鑾峰彇涓婚搴撳垎绫诲眰绾ф爲 + * @param treeQueryObject + * @return 涓婚搴撳垎绫� + */ + @Override + @PostMapping(CODE_CLASSIFY_TREE) + public List<Tree> referCodeClassifyTree(TreeQueryObject treeQueryObject) { + return plCodeClassifyService.referTree(treeQueryObject); + } + + @Override + @GetMapping(CODE_ATTRIBUTE_LIST) + public List<CodeClassifyTemplateAttrVO> listCodeAttributeByClassId(String codeClassifyId) { + CodeClassifyTemplateVO codeClassifyTemplateVO=engineService.getUsedTemplateByClassifyOid(codeClassifyId,true); + return codeClassifyTemplateVO.getAttributes(); + } + + } diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java index 7e52aaa..50c59af 100644 --- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java +++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java @@ -3,6 +3,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.vci.ubcs.code.feign.ICodeClassifyClient; +import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO; import com.vci.ubcs.code.webservice.service.*; import com.vci.ubcs.code.webservice.vo.*; import com.vci.ubcs.code.webservice.wrapper.DockingPreApplyFormWrapper; @@ -61,6 +63,11 @@ private final IDockingPreApplyFormService dockingPreApplyFormService; + /*** + * 灞炴�ф灇涓捐寖鍥存湇鍔� + */ + + private final ICodeClassifyClient codeClassifyClient; /** * 鏍规嵁涓绘暟鎹紪鐮乷id鑾峰彇闆嗗洟灞炴�ф槧灏勪俊鎭� @@ -120,13 +127,34 @@ /** * 鍙傜収鏍� 闆嗗洟鍒嗙被锛堟槸鍚﹀寘鍚睘鎬э級 * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄 conditionMap 瀛樹笂 codeclsfid=涓绘暟鎹殑鍒嗙被oid - * @return 涓婚搴撳垎绫绘樉绀烘爲 + * @return 闆嗗洟鍒嗙被鏄剧ず鏍� */ @GetMapping("/referTree") - public List<Tree> referTree(TreeQueryObject treeQueryObject) { + public List<Tree> referTree(@RequestBody TreeQueryObject treeQueryObject) { return dockingPreClassifyService.treeCompanyGroupClassify(treeQueryObject); } + /** + * 鍙傜収鏍� 涓绘暟鎹垎绫� + * @param treeQueryObject 鏍戝舰鏌ヨ瀵硅薄 conditionMap 瀛樹笂 codeclsfid=涓绘暟鎹殑鍒嗙被oid + * @return 涓婚搴撳垎绫绘樉绀烘爲 + */ + @GetMapping("/referCodeClassifyTree") + public List<Tree> referCodeClassifyTree(@RequestBody TreeQueryObject treeQueryObject) { + return codeClassifyClient.referCodeClassifyTree(treeQueryObject); + } + + /** + * 鍙傜収鏍� 涓绘暟鎹ā鏉垮睘鎬т俊鎭� + * @param codeClassifyId 涓绘暟鎹垎绫讳富閿� + * @return 涓婚搴撳垎绫绘ā鏉垮睘鎬� + */ + @GetMapping("/referCodeClassifyTree") + public List<CodeClassifyTemplateAttrVO> listCodeAttributeByClassId(String codeClassifyId) { + return codeClassifyClient.listCodeAttributeByClassId(codeClassifyId); + } + + /*** * 鐢宠闆嗗洟缂栫爜 * @return diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrMappingService.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrMappingService.java index b25838d..e62eacf 100644 --- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrMappingService.java +++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/IDockingPreAttrMappingService.java @@ -41,9 +41,10 @@ /*** *鏍¢獙灞炴�ф槧灏勬槸鍚﹂厤缃繃 * @param targetClassifyId + * @param sourceClassifyId * @return */ - boolean checkHasConfigByTragetCodeclassifyId(String targetClassifyId); + boolean checkHasConfigByTragetCodeclassifyId(String targetClassifyId,String sourceClassifyId); /*** * 灞炴�ф煡璇� diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java index 15fbcdc..d0cc795 100644 --- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreAttrMappingServiceImpl.java @@ -192,14 +192,15 @@ /*** * 鏍规嵁涓绘暟鎹畂id妫�娴嬫槸鍚﹀睘鎬ф槧灏勯厤缃� * @param targetClassifyId + * @param sourceClassifyId * @return * @throws Exception */ @Override - public boolean checkHasConfigByTragetCodeclassifyId(String targetClassifyId){ + public boolean checkHasConfigByTragetCodeclassifyId(String targetClassifyId,String sourceClassifyId){ Long count =0L; try { - count = dockingPreAttrMappingMapper.selectCount(Wrappers.<DockingPreAttrMapping>query().lambda().eq(DockingPreAttrMapping::getTargetClassifyId, targetClassifyId)); + count = dockingPreAttrMappingMapper.selectCount(Wrappers.<DockingPreAttrMapping>query().lambda().eq(DockingPreAttrMapping::getTargetClassifyId, targetClassifyId).eq(DockingPreAttrMapping::getSourceClassifyId,sourceClassifyId)); }catch (Throwable e){ e.printStackTrace();; } finally { diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java index 5872185..3ff08a5 100644 --- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/service/impl/DockingPreClassifyServiceImpl.java @@ -19,10 +19,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.Iterator; -import java.util.List; -import java.util.Locale; -import java.util.Map; +import java.util.*; /** @@ -36,7 +33,7 @@ /** * 涓婄骇鑺傜偣鐨勫睘鎬у悕绉� */ - public static final String PARENT_FIELD_NAME = "parentCodeClassifyOid"; + public static final String PARENT_FIELD_NAME = "pid"; /*** * 闆嗗洟鍒嗙被灞炴�� */ @@ -70,7 +67,11 @@ @Override public List<Tree> treeCompanyGroupClassify(TreeQueryObject treeQueryObject) { log.info("鑾峰彇闆嗗洟鍒嗙被鏍憇tart..."); + Map<String,String> conditionMap= treeQueryObject.getConditionMap(); + if(conditionMap==null){ + conditionMap=new HashMap<>(); + } TreeWrapperOptions treeWrapperOptions = new TreeWrapperOptions(PARENT_FIELD_NAME.toLowerCase(Locale.ROOT)); treeWrapperOptions.copyFromTreeQuery(treeQueryObject); List<DockingPreClassifyVO> dockingPreClassifyVOS= getCompanyGourpClassByParentId(treeQueryObject.getParentOid(),true); @@ -78,27 +79,39 @@ //鍙互鍦ㄨ繖閲屽鐞嗘爲鑺傜偣鐨勬樉绀� return s.getId() + " " + s.getName();//(FrameworkDataLCStatus.DISABLED.getValue().equalsIgnoreCase(s.getLcStatus()) ? (" 銆愬仠鐢ㄣ�� ") : ""); }); + + setTreeConig(tree,conditionMap); + log.info("鑾峰彇闆嗗洟鍒嗙被鏍慹nd..."); + return tree; + } + private void setTreeConig(List<Tree> tree,Map<String,String >conditionMap){ + boolean checkHasChild=false; Iterator var6 = tree.listIterator(); while(var6.hasNext()){ Tree trees = (Tree) var6.next(); - boolean checkHasChild=dockingPreClassifyMapper.checkHasChild(trees.getOid()); + List<Tree> childrenList=trees.getChildren(); + if(childrenList.size()>0){ + checkHasChild=true; + } + boolean checkHas=false; //濡傛灉涓庢潯浠朵紶杩囨潵鐨勫�煎尮閰嶇殑涓婂垯璁剧疆涓洪�変腑 if(conditionMap.containsKey(MdmBtmTypeConstant.CODE_CLASSIFY_OID_FIELD)){ String codeClassifyId=conditionMap.get(MdmBtmTypeConstant.CODE_CLASSIFY_OID_FIELD); - boolean checkHas=dockingPreAttrMappingService.checkHasConfigByTragetCodeclassifyId(codeClassifyId); - if(checkHas) { - trees.setChecked(true); - } + checkHas = dockingPreAttrMappingService.checkHasConfigByTragetCodeclassifyId(codeClassifyId, trees.getOid()); } - ; + if (checkHas) { + trees.setChecked(true); + } if(checkHasChild){ trees.setLeaf(false); }else{ trees.setLeaf(true); } + if(checkHasChild) { + setTreeConig(childrenList,conditionMap); + } } - log.info("鑾峰彇闆嗗洟鍒嗙被鏍慹nd..."); - return tree; + } /*** diff --git a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreClassifyMapper.xml b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreClassifyMapper.xml index f030ee1..220f181 100644 --- a/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreClassifyMapper.xml +++ b/Source/UBCS/ubcs-service/ubcs-webservice/src/main/resources/mapper/DockingPreClassifyMapper.xml @@ -67,14 +67,17 @@ codeclassify0.NODELINKNAME as nodelinkname, codeclassify0.PID as pid from PL_CODE_JCLASSIFY codeclassify0 - <where> + <!--<where>--> <if test="oid != null and oid != ''"> - codeclassify0.pid = '${oid}' + start with + codeclassify0.pid = '${oid}' + connect by prior codeclassify0.oid =codeclassify0.pid </if> - <if test="oid = null"> + <!-- <if test="oid = null"> codeclassify0.pid is null - </if> - </where> + </if>--> + <!--</where>--> + order by id asc </select> -- Gitblit v1.9.3