From c6a54f63df671de4592e336b9b8cd8406d4e3b51 Mon Sep 17 00:00:00 2001 From: fujunling <2984387807@qq.com> Date: 星期五, 02 六月 2023 16:25:27 +0800 Subject: [PATCH] 解决动态模块冲突 --- Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/mapper/LinkTypeMapper.java | 11 Source/UBCS-WEB/src/components/refer/vciWebRefer.vue | 1 Source/UBCS-WEB/src/views/modeling/LinkType.vue | 263 +++++++++++++++ Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LinkTypeServiceImpl.java | 42 ++ Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/BtmTypeController.java | 4 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/feign/BtmTypeClient.java | 41 ++ Source/UBCS/ubcs-service/ubcs-webservice/src/main/java/com/vci/ubcs/code/webservice/controller/DockingPreApplyCodeController.java | 9 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java | 29 + Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/collection/DockingPreAttrMappingVOList.java | 29 + Source/UBCS-WEB/src/views/modeling/Business.vue | 10 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkType.java | 5 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/dto/LinkTypeDTO.java | 5 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IBtmTypeFallback.java | 51 ++ Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/LinkTypeController.java | 169 +++++++++ Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/LinkTypeMapper.xml | 8 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java | 96 +++++ Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/ILinkTypeService.java | 6 Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/LinkTypeVO.java | 5 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java | 1 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IBtmTypeAttributeService.java | 15 Source/UBCS-WEB/src/api/omd/linkType.js | 71 ++++ Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IBtmTypeClient.java | 43 ++ Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTreeVO.java | 6 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IBtmTypeService.java | 28 + Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java | 58 +++ 25 files changed, 956 insertions(+), 50 deletions(-) diff --git a/Source/UBCS-WEB/src/api/omd/linkType.js b/Source/UBCS-WEB/src/api/omd/linkType.js new file mode 100644 index 0000000..e69fc12 --- /dev/null +++ b/Source/UBCS-WEB/src/api/omd/linkType.js @@ -0,0 +1,71 @@ +import request from '@/router/axios'; + +export const initTree = () => { + return request({ + url: '/api/ubcs-omd/link-type/tree-domain', + method: 'get', + }) +} + +export const refOnLoad = (domain) => { + return request({ + url: '/api/ubcs-omd/link-type/get-from-table', + method: 'get', + params: { + domain: domain + } + }) +} + +export const getDomain = () => { + return request({ + url: '/api/ubcs-omd/link-type/domain', + method: 'get' + }) +} + +export const saveFromTable = (list,domain) => { + return request({ + url: '/api/ubcs-omd/link-type/save-from-table/' + domain, + method: 'post', + data: list + }) +} + +export const getDetail = (oid) => { + return request({ + url: '/api/ubcs-omd/link-type/detail', + method: 'get', + params: { + oid: oid + } + }) +} + +export const add = (linkType,auto) => { + return request({ + url: '/api/ubcs-omd/link-type/submit/' + auto, + method: 'post', + data: linkType + }) +} + +export const update = (linkType) => { + return request({ + url: '/api/ubcs-omd/link-type/submit/' + auto, + method: 'post', + data: linkType + }) +} + +export const btmPage = (current,size,params) => { + return request ({ + url: '/api/ubcs-omd/link-type/page', + method: 'get', + params: { + current, + size, + ...params + } + }) +} \ No newline at end of file diff --git a/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue b/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue index 9d6f311..90e7944 100644 --- a/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue +++ b/Source/UBCS-WEB/src/components/refer/vciWebRefer.vue @@ -18,6 +18,7 @@ }; }, created() { + console.log(this.refertype) if(this.refertype=='tree'){ console.log('referConfig:') console.log(this.options) diff --git a/Source/UBCS-WEB/src/views/modeling/Business.vue b/Source/UBCS-WEB/src/views/modeling/Business.vue index 483d1b1..476fe62 100644 --- a/Source/UBCS-WEB/src/views/modeling/Business.vue +++ b/Source/UBCS-WEB/src/views/modeling/Business.vue @@ -1,13 +1,16 @@ <template> <el-container> <el-header class="businessHeader" style="height: 40px;"> - <el-button type="primary" @click="businessAdd" size="small">鏂板</el-button> - <el-button type="primary" @click="businessEdit" size="small">淇敼</el-button> - <el-button type="primary" @click="selectFromTable" size="small">浠庡凡鏈変腑鑾峰彇</el-button> + <el-button-group> + <el-button type="primary" @click="businessAdd" size="small"> <i class="el-icon-plus"></i> 鏂板</el-button> + <el-button type="primary" @click="businessEdit" size="small"><i class="el-icon-edit"></i> 淇敼</el-button> + <el-button type="primary" @click="selectFromTable" size="small"><i class="el-icon-thumb"></i> 浠庡凡鏈変腑鑾峰彇</el-button> + </el-button-group> </el-header> <el-container> <el-aside width="240px"> <basic-container class="businessTreeContainer"> + <p style="margin-top: 10px;font-weight: 570;font-size: 19px">{{ treeOption.title }}</p> <avue-tree id="basic" :data="treeData" :option="treeOption" @node-click="nodeClick" class="businessTree"> <span class="el-tree-node__label" slot-scope="{ node, data }"> <span> @@ -161,6 +164,7 @@ treeOption: { defaultExpandAll: true, title: '涓氬姟绫诲瀷鏍�', + addBtn: false, props: { labelText: '', label: 'name', diff --git a/Source/UBCS-WEB/src/views/modeling/LinkType.vue b/Source/UBCS-WEB/src/views/modeling/LinkType.vue new file mode 100644 index 0000000..18e6791 --- /dev/null +++ b/Source/UBCS-WEB/src/views/modeling/LinkType.vue @@ -0,0 +1,263 @@ +<template> + <el-container> + <!-- 椤剁鎸夐挳 --> + <el-header class="businessHeader" style="height: 40px;"> + <el-button-group> + <el-button type="primary" @click="linkTypeAdd" size="small"> + <i class="el-icon-plus"></i> + 鏂板 + </el-button> + <el-button type="primary" @click="linkTypeEdit" size="small"> + <i class="el-icon-edit"></i> + 淇敼 + </el-button> + <el-button type="primary" @click="selectFromTable" size="small"> + <i class="el-icon-thumb"></i> + 浠庡凡鏈変腑鑾峰彇 + </el-button> + </el-button-group> + </el-header> + <!-- 渚ц竟鏍忔爲 --> + <el-container> + <el-aside width="240px"> + <basic-container class="businessTreeContainer"> + <p style="margin-top: 10px;font-weight: 570;font-size: 19px">{{ treeOption.title }}</p> + <avue-tree id="basic" :data="treeData" :option="treeOption" @node-click="nodeClick" + class="businessTree"> + <span class="el-tree-node__label" slot-scope="{ node, data }"> + <span> + <i class="el-icon-star-on"></i> + {{ (node || {}).label }} + </span> + </span> + </avue-tree> + </basic-container> + </el-aside> + <el-container> + <el-main> + <basic-container> + <p style="margin-top: 10px;font-weight: 570;font-size: 19px">鍩烘湰淇℃伅</p> + <el-descriptions class="margin-top" :column="2" size="medium" border> + <el-descriptions-item labelStyle="text-align:center;width:120px" + contentStyle="width:240px;text-align:center;word-break;break-all;"> + <template slot="label"> + <i class="el-icon-finished"></i> + 鑻辨枃鍚嶇О + </template> + {{ obj.id }} + </el-descriptions-item> + <el-descriptions-item labelStyle="text-align:center;width:120px" + contentStyle="width:240px;text-align:center;word-break;break-all;"> + <template slot="label"> + <i class="el-icon-info"></i> + 涓枃鍚嶇О + </template> + {{ obj.name }} + </el-descriptions-item> + <el-descriptions-item labelStyle="text-align:center;width:120px" + contentStyle="width:240px;text-align:center;word-break;break-all;"> + <template slot="label"> + <i class="el-icon-date"></i> + 鏁版嵁搴撹〃鍚� + </template> + {{ obj.tableName }} + </el-descriptions-item> + <el-descriptions-item labelStyle="text-align:center;width:120px" + contentStyle="width:240px;text-align:center;word-break;break-all;"> + <template slot="label"> + <i class="el-icon-folder-opened"></i> + 鎵�灞為鍩� + </template> + <el-tag size="small"> + {{ obj.domainText }} + </el-tag> + </el-descriptions-item> + </el-descriptions> + <el-descriptions class="margin-top" direction="vertical" :column="2" border> + <el-descriptions-item labelStyle="text-align:center;width:120px" + contentStyle="width:240px;text-align:center;word-break;break-all;"> + <template slot="label"> + <i class="el-icon-sort-down"></i> + From绔被鍨� + </template> + <span v-for="item in obj.fromBtmTypes" style="margin-left:2px;"> + <el-tag size="small" effect="plain" style="width:130px;margin-top: 2px;"> + {{ item.id + '锛�' + item.name + '锛�' }} + </el-tag> + </span> + </el-descriptions-item> + <el-descriptions-item labelStyle="text-align:center;width:120px" + contentStyle="width:240px;text-align:center;word-break;break-all;"> + <template slot="label"> + <i class="el-icon-sort-up"></i> + To娈电被鍨� + </template> + <span v-for="item in obj.toBtmTypes" style="height:26px;width:140px;margin-left:2px"> + <el-tag size="small" effect="plain" style="width:130px;margin-top: 2px;"> + {{ item.id + '锛�' + item.name + '锛�' }} + </el-tag> + </span> + </el-descriptions-item> + </el-descriptions> + + <el-descriptions class="margin-top" :column="2" size="medium" border> + <el-descriptions-item labelStyle="text-align:center;width:120px" + contentStyle="width:240px;text-align:center;word-break;break-all;"> + <template slot="label"> + <i class="el-icon-info"></i> + 涓荤被鍨� + </template> + {{ obj.fromBtmTypeName }} + </el-descriptions-item> + <el-descriptions-item labelStyle="text-align:center;width:120px" + contentStyle="width:240px;text-align:center;word-break;break-all;"> + <template slot="label"> + <i class="el-icon-info"></i> + 涓荤被鍨� + </template> + {{ obj.toBtmTypeName }} + </el-descriptions-item> + <el-descriptions-item span='2' labelStyle="text-align:center;width:120px"> + <template slot="label"> + <i class="el-icon-chat-line-square"></i> + 鎻忚堪 + </template> + {{ obj.description }} + </el-descriptions-item> + </el-descriptions> + </basic-container> + <!-- 灞炴�у垪琛�--> + <basic-container> + <p style="margin-top: 10px;font-weight: 570;font-size: 19px">灞炴�у垪琛�</p> + <avue-crud class="attributeCrud" v-model="obj" :data="obj.attributes" :option="loadOption"> + <template slot="attrDataType" slot-scope="{row}"> + <el-tag>{{ row.attrDataType }}</el-tag> + </template> + </avue-crud> + </basic-container> + </el-main> + </el-container> + </el-container> + + + </el-container> +</template> + +<script> +import { + initTree, + refOnLoad, + getDomain, + saveFromTable, + getDetail +} from "@/api/omd/linkType" +export default { + name: "LinkType", + data() { + return { + treeData: [ + { id: "1", name: "2", label: "label" }, + { id: "a", name: "b", label: "c" } + ], + loadOption: { + border: true, + height: 360, + editBtn: false, + addBtn: false, + menu: false, + highlightCurrentRow: true, + refreshBtn: false, + columnBtn: false, + column: [ + { + label: '鑻辨枃鍚嶇О', + prop: 'id', + align: 'center' + }, { + label: '涓枃鍚嶇О', + prop: 'name', + align: 'center' + }, + { + label: '绫诲瀷', + prop: 'attrDataType', + align: 'center', + slot: true + }, + { + label: '榛樿鍊�', + prop: 'defaultValue', + align: 'center' + }, + { + label: '璇存槑', + prop: 'description', + align: 'center' + } + ] + }, + obj: { + id: 'linkType', + name: '閾炬帴绫诲瀷', + tableName: 'PLLT_OMD_LINKTYPE', + domain: 'ubcs-omd', + domainText: '瀵硅薄寤烘ā', + fromBtmTypes: [ + { id: 'btm', name: '涓氬姟绫诲瀷' }, + { id: 'btm2', name: '涓氬姟绫诲瀷2' } + ], + toBtmTypes: [{ id: 'btm', name: '涓氬姟绫诲瀷' }, { id: 'btm2', name: '涓氬姟绫诲瀷2' }], + fromBtmTypeName: '', + toBtmTypeName: '', + }, + treeOption: { + defaultExpandAll: true, + title: '閾炬帴绫诲瀷鏍�', + addBtn: false, + props: { + labelText: '', + label: 'name', + value: 'oid', + children: 'childList', + } + }, + } + }, + created() { + this.initTreeOnLoad(); + // this.initDomainOption(); + }, + + methods: { + // 鏍戠偣鍑� + nodeClick(data) { + console.log(data); + }, + // 娣诲姞鎸夐挳鐐瑰嚮浜嬩欢 + linkTypeAdd() { + + }, + // 缂栬緫鎸夐挳鐐瑰嚮浜嬩欢 + linkTypeEdit() { + + }, + // 浠庡凡鏈変腑鑾峰彇鎸夐挳鐐瑰嚮浜嬩欢 + selectFromTable() { + + }, + initTreeOnLoad() { + initTree().then(res => { + this.treeData = res.data.data; + }); + } + + } +} +</script> + +<style lang="scss"> +.attributeCrud>.el-card:nth-of-type(2)>.el-card__body>.avue-crud__menu { + display: none !important; +} +</style> + \ No newline at end of file diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java index 528d94f..a4b5f02 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/DockingSystemConfig.java @@ -285,6 +285,7 @@ @TableField(value = "targname") private String targetName; + /*** * 鎺ㄩ�佺被鍨� 1:鏁版嵁鎺ㄩ��/2鍒嗙被鎺ㄩ�侊紝榛樿鏁版嵁鎺ㄩ�� */ diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/dto/LinkTypeDTO.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/dto/LinkTypeDTO.java index d0eab19..ab03c86 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/dto/LinkTypeDTO.java +++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/dto/LinkTypeDTO.java @@ -48,6 +48,11 @@ */ private String implClass; + /** + * 鏁版嵁琛ㄥ悕 + */ + private String tableName; + /** * from绔笟鍔$被鍨� */ diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkType.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkType.java index c8df463..6a409cc 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkType.java +++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/entity/LinkType.java @@ -53,6 +53,11 @@ */ private String implClass; + /** + * 鏁版嵁琛ㄥ悕 + */ + private String tableName; + /** * from绔笟鍔$被鍨� */ diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IBtmTypeClient.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IBtmTypeClient.java index 741d9bd..7fea663 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IBtmTypeClient.java +++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IBtmTypeClient.java @@ -1,10 +1,9 @@ package com.vci.ubcs.omd.feign; -import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.vci.ubcs.omd.vo.BtmTypeVO; import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject; import org.springblade.core.launch.constant.AppConstant; -import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; @@ -12,9 +11,7 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; -import java.util.Collection; import java.util.List; -import java.util.Map; /** * Description: 涓氬姟绫诲瀷Feign鎺ュ彛绫� @@ -53,6 +50,12 @@ */ String GET_BY_OIDS = API_PREFIX + "/btm-type/get-by-oids"; + String GET_DEFAULT_ATTR_BY_BTM_ID = API_PREFIX + "/btm-attribute/get-default-attr-by-btm-id"; + + String GET_ALL_ATTR_BY_BTM_ID = API_PREFIX + "/btm-attribute/get-all-attr-by-btm-id"; + + String GET_ALL_ATTR_BY_BTM_OID = API_PREFIX + "/btm-attribute/get-all-attr-by-btm-oid"; + /** * 鑾峰彇涓氬姟绫诲瀷璇︽儏淇℃伅 * @@ -64,11 +67,12 @@ /** * 鍙傜収鍒楄〃鏌ヨ + * * @param baseQueryObject 鏌ヨ鏉′欢瀵硅薄 * @return 鏌ヨ缁撴灉 */ - @GetMapping(GET_REF_PAGE) - R<IPage<BtmTypeVO>> getRefPage(@RequestBody BaseQueryObject baseQueryObject); + @PostMapping(GET_REF_PAGE) + R<Page<BtmTypeVO>> getRefPage(@RequestBody BaseQueryObject baseQueryObject); /** * 鍙傜収鍒楄〃鏌ヨ @@ -93,4 +97,31 @@ */ @PostMapping(GET_BY_OIDS) R<List<BtmTypeVO>> listBtmTypeByOidCollection(@RequestBody List<String> pkBtmTypeCollection); + + /** + * 鑾峰彇涓氬姟绫诲瀷锛屽彧鏈夐粯璁ゅ瓧娈� + * + * @param btmTypeId 涓氬姟绫诲瀷id + * @return 榛樿瀛楁灞炴�� + */ + @GetMapping(GET_DEFAULT_ATTR_BY_BTM_ID) + R<BtmTypeVO> getDefaultAttrByBtmId(@RequestParam("btmTypeId") String btmTypeId); + + /** + * 鑾峰彇涓氬姟绫诲瀷锛屾湁鎵�鏈夌殑瀛楁 + * + * @param btmTypeId 涓氬姟绫诲瀷id + * @return 鎵�鏈夊瓧娈� + */ + @GetMapping(GET_ALL_ATTR_BY_BTM_ID) + R<BtmTypeVO> getAllAttributeByBtmId(@RequestParam("btmTypeId") String btmTypeId); + + /** + * 鑾峰彇涓氬姟绫诲瀷锛屾湁鎵�鏈夌殑瀛楁 + * + * @param btmTypeOid 涓氬姟绫诲瀷涓婚敭 + * @return 鎵�鏈夊瓧娈� + */ + @GetMapping(GET_ALL_ATTR_BY_BTM_OID) + R<BtmTypeVO> getAllAttributeByBtmOid(@RequestParam("btmTypeOid") String btmTypeOid); } diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IBtmTypeFallback.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IBtmTypeFallback.java index 31f9b9a..6e1762c 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IBtmTypeFallback.java +++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/feign/IBtmTypeFallback.java @@ -16,17 +16,13 @@ */ package com.vci.ubcs.omd.feign; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.vci.ubcs.omd.entity.Attribute; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.vci.ubcs.omd.vo.BtmTypeVO; import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject; -import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springframework.stereotype.Component; -import java.util.Collection; import java.util.List; -import java.util.Map; /** * Feign澶辫触閰嶇疆 @@ -47,13 +43,13 @@ } /** - * 鍙傜収鍒楄〃鏌ヨ - * - * @param baseQueryObject 鏌ヨ鏉′欢瀵硅薄 - * @return 鏌ヨ缁撴灉 - */ + * 鍙傜収鍒楄〃鏌ヨ + * + * @param baseQueryObject 鏌ヨ鏉′欢瀵硅薄 + * @return 鏌ヨ缁撴灉 + */ @Override - public R<IPage<BtmTypeVO>> getRefPage(BaseQueryObject baseQueryObject) { + public R<Page<BtmTypeVO>> getRefPage(BaseQueryObject baseQueryObject) { return R.fail("鑾峰彇鏁版嵁澶辫触"); } @@ -89,4 +85,37 @@ public R<List<BtmTypeVO>> selectByIdCollection(List<String> ids) { return R.fail("鑾峰彇鏁版嵁澶辫触"); } + + /** + * 鎸夌収涓氬姟绫诲瀷鑾峰彇榛樿瀛楁 + * + * @param btmTypeId 涓氬姟绫诲瀷id + * @return 榛樿瀛楁灞炴�� + */ + @Override + public R<BtmTypeVO> getDefaultAttrByBtmId(String btmTypeId) { + return R.fail("鑾峰彇鏁版嵁澶辫触"); + } + + /** + * 鎸変笟鍔$被鍨媔d鑾峰彇鎵�鏈夌殑瀛楁 + * + * @param btmTypeId 涓氬姟绫诲瀷id + * @return 鎵�鏈夊瓧娈� + */ + @Override + public R<BtmTypeVO> getAllAttributeByBtmId(String btmTypeId) { + return R.fail("鑾峰彇鏁版嵁澶辫触"); + } + + /** + * 鎸変笟鍔$被鍨嬩富閿幏鍙栨墍鏈夌殑瀛楁 + * + * @param btmTypeOid 涓氬姟绫诲瀷涓婚敭 + * @return 鎵�鏈夊瓧娈� + */ + @Override + public R<BtmTypeVO> getAllAttributeByBtmOid(String btmTypeOid) { + return R.fail("鑾峰彇鏁版嵁澶辫触"); + } } diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTypeTreeVO.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTreeVO.java similarity index 77% rename from Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTypeTreeVO.java rename to Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTreeVO.java index 40ea05a..7e45251 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTypeTreeVO.java +++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTreeVO.java @@ -13,7 +13,7 @@ * @date 2023/5/5 */ @Data -public class BtmTypeTreeVO implements Serializable{ +public class BtmTreeVO implements Serializable{ /** * 搴忓垪鍖� */ @@ -25,5 +25,7 @@ private String oid; - private List<BtmTypeTreeVO> childList; + private String type; + + private List<BtmTreeVO> childList; } diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/LinkTypeVO.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/LinkTypeVO.java index 264ddb6..423bac7 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/LinkTypeVO.java +++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/LinkTypeVO.java @@ -119,6 +119,11 @@ */ private Date ts; + /** + * 棰嗗煙鍊� + */ + private String domain; + /** * 鍖呭惈灞炴�� */ diff --git a/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/collection/DockingPreAttrMappingVOList.java b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/collection/DockingPreAttrMappingVOList.java new file mode 100644 index 0000000..ecd85b1 --- /dev/null +++ b/Source/UBCS/ubcs-service-api/ubcs-webservice-api/src/main/java/com/vci/ubcs/code/webservice/vo/collection/DockingPreAttrMappingVOList.java @@ -0,0 +1,29 @@ +package com.vci.ubcs.code.webservice.vo.collection; + +import com.vci.ubcs.code.webservice.vo.DockingPreAttrMappingVO; + +import java.io.Serializable; +import java.util.List; + +/*** + * 灞炴�ф槧灏勪繚瀛樻椂鍊欓泦鍚堝璞℃槧灏� + */ +public class DockingPreAttrMappingVOList implements Serializable { + + private List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList; + + public List<DockingPreAttrMappingVO> getDockingPreAttrMappingVOList() { + return dockingPreAttrMappingVOList; + } + + public void setDockingPreAttrMappingVOList(List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList) { + this.dockingPreAttrMappingVOList = dockingPreAttrMappingVOList; + } + + @Override + public String toString() { + return "DockingPreAttrMappingVOList{" + + "dockingPreAttrMappingVOList=" + dockingPreAttrMappingVOList + + '}'; + } +} diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java index 014e1b4..07131a6 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java @@ -5,11 +5,16 @@ import com.vci.ubcs.code.dto.DockingSystemDTO; import com.vci.ubcs.code.entity.CodeRule; import com.vci.ubcs.code.entity.DockingSystem; +import com.vci.ubcs.code.entity.DockingSystemConfig; +import com.vci.ubcs.code.service.IDockingSystemConfigService; import com.vci.ubcs.code.service.IDockingSystemService; import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO; +import com.vci.ubcs.code.vo.pagemodel.DockingSystemConfigVO; import com.vci.ubcs.code.vo.pagemodel.DockingSystemVO; import com.vci.ubcs.code.wrapper.CodeRuleWrapper; +import com.vci.ubcs.code.wrapper.DockingSystemConfigWrapper; import com.vci.ubcs.code.wrapper.DockingSystemWrapper; +import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; @@ -29,7 +34,17 @@ @RequestMapping("/dockingManagement") @Api(value = "鎺ュ彛绠$悊", tags = "缂栫爜鐩稿叧鎺ュ彛绠$悊淇℃伅") public class DockingManagementController { + /*** + * 闆嗘垚绯荤粺绠$悊鏈嶅姟 + */ private final IDockingSystemService dockingSystemService; + /*** + * 闆嗘垚鎺ュ彛閰嶇疆鏈嶅姟 + */ + private final IDockingSystemConfigService dockingSystemConfigService; + + + /**绯荤粺闆嗘垚鐨勭郴缁熶俊鎭垪琛� * @param dockingSystem 鍩虹鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑 @@ -69,12 +84,24 @@ /** * 鍒犻櫎绯荤粺闆嗘垚鐨勭郴缁熶俊鎭� - * @param sysIntBaseDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞★紝oid鍜宼s闇�瑕佷紶杈� + * @param dockingSystemDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞★紝oid鍜宼s闇�瑕佷紶杈� * @return 鍒犻櫎缁撴灉鍙嶉锛氾細success锛氭垚鍔燂紝fail锛氬け璐� */ @DeleteMapping( "/deleteData") public R delSystemData( DockingSystemDTO dockingSystemDTO) { return R.status(dockingSystemService.delSystemData(dockingSystemDTO)); } + /** + * 绯荤粺闆嗘垚鍩虹淇℃伅鍒楄〃 + * @param DockingSystemConfig 鍩虹鏌ヨ瀵硅薄锛屽寘鍚煡璇㈡潯浠讹紝鍒嗛〉锛屾帓搴忕瓑 + * @return 绯荤粺闆嗘垚鍩虹淇℃伅鏄剧ず瀵硅薄鍒楄〃 + */ + @GetMapping("/gridSysIntInfo") + @ApiOperationSupport(order = 3) + @ApiOperation(value = "鍒嗛〉", notes = "DockingSystemConfig") + public R<IPage<DockingSystemConfigVO>> gridSysIntInfo(DockingSystemConfig DockingSystemConfig, Query query){ + IPage<DockingSystemConfig> pages = dockingSystemConfigService.page(Condition.getPage(query), Condition.getQueryWrapper(DockingSystemConfig)); + return R.data(DockingSystemConfigWrapper.build().pageVO(pages)); + } } 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 4613774..beee556 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 @@ -11,7 +11,7 @@ import com.vci.ubcs.omd.entity.BtmType; import com.vci.ubcs.omd.repeater.DomainRepeater; import com.vci.ubcs.omd.service.IBtmTypeService; -import com.vci.ubcs.omd.vo.BtmTypeTreeVO; +import com.vci.ubcs.omd.vo.BtmTreeVO; import com.vci.ubcs.omd.vo.BtmTypeVO; import com.vci.ubcs.omd.vo.DomainVO; import com.vci.ubcs.omd.wrapper.BtmTypeWrapper; @@ -161,7 +161,7 @@ @GetMapping("/tree-domain") @ApiOperationSupport(order = 7) @ApiOperation(value = "涓氬姟绫诲瀷鏍戝舰缁撴瀯", notes = "涓氬姟绫诲瀷鏍戝舰缁撴瀯") - public R<List<BtmTypeTreeVO>> treeDomain(){ + public R<List<BtmTreeVO>> treeDomain(){ return R.data(btmTypeService.treeDomain()); } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/LinkTypeController.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/LinkTypeController.java new file mode 100644 index 0000000..6d8170b --- /dev/null +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/LinkTypeController.java @@ -0,0 +1,169 @@ +package com.vci.ubcs.omd.controller; + +import com.alibaba.cloud.commons.lang.StringUtils; +import com.alibaba.nacos.api.exception.NacosException; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.vci.ubcs.omd.constant.OmdCacheConstant; +import com.vci.ubcs.omd.dto.LinkTypeDTO; +import com.vci.ubcs.omd.entity.LinkType; +import com.vci.ubcs.omd.repeater.DomainRepeater; +import com.vci.ubcs.omd.service.ILinkTypeService; +import com.vci.ubcs.omd.vo.BtmTreeVO; +import com.vci.ubcs.omd.vo.LinkTypeVO; +import com.vci.ubcs.omd.vo.DomainVO; +import com.vci.ubcs.omd.wrapper.LinkTypeWrapper; +import io.swagger.annotations.*; +import lombok.AllArgsConstructor; +import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.cache.utils.CacheUtil; +import org.springblade.core.mp.support.Condition; +import org.springblade.core.mp.support.Query; +import org.springblade.core.tenant.annotation.NonDS; +import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.core.tool.utils.Func; +import org.springblade.core.tool.utils.StringPool; +import org.springframework.web.bind.annotation.*; +import springfox.documentation.annotations.ApiIgnore; + +import javax.validation.Valid; +import java.util.*; +import java.util.stream.Collectors; + +/** + * Description:閾炬帴绫诲瀷鎺у埗鍣� + * + * @author LiHang + * @date 2023/5/29 + */ +@NonDS +@RestController +@AllArgsConstructor +@RequestMapping("/link-type") +@Api(value = "閾炬帴绫诲瀷鎺у埗鍣�", tags = "閾炬帴绫诲瀷鎺у埗鍣�") +public class LinkTypeController extends BladeController { + /** + * 閾炬帴绫诲瀷鏈嶅姟 + */ + private final ILinkTypeService linkTypeService; + + /** + * 鏌ョ湅璇︽儏 + * + * @param oid 涓婚敭 + * @return 鎵ц缁撴灉 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 1) + @ApiOperation(value = "鏌ョ湅璇︽儏", notes = "浼犲叆涓婚敭") + public R<LinkTypeVO> detail(String oid) { + return R.data(linkTypeService.getLinkTypeByOid(oid)); + } + + /** + * 鍒楄〃 + * + * @param condition 鏌ヨ鏉′欢 + * @return 鎵ц缁撴灉 + */ + @GetMapping("/list") + @ApiImplicitParams({ + @ApiImplicitParam(name = "oid", value = "涓婚敭", paramType = "query", dataType = "string"), + @ApiImplicitParam(name = "id", value = "閾炬帴绫诲瀷鑻辨枃鍚嶇О", paramType = "query", dataType = "string"), + @ApiImplicitParam(name = "name", value = "閾炬帴绫诲瀷涓枃鍚嶇О", paramType = "query", dataType = "string"), + @ApiImplicitParam(name = "tableName", value = "閾炬帴绫诲瀷鏁版嵁搴撹〃鍚�", paramType = "query", dataType = "string"), + }) + @ApiOperationSupport(order = 2) + @ApiOperation(value = "鏌ヨ鍒楄〃", notes = "浼犲叆鏌ヨ") + public R<List<LinkTypeVO>> list(@ApiIgnore @RequestParam Map<String, Object> condition) { + return R.data(LinkTypeWrapper.build().listEntityVO(linkTypeService.list(Condition.getQueryWrapper(condition, LinkType.class).lambda().orderByAsc(LinkType::getId)))); + } + + /** + * 鍒嗛〉鍒楄〃 + * + * @param condition 鏌ヨ鏉′欢 + */ + @GetMapping("/page") + @ApiImplicitParams({ + @ApiImplicitParam(name = "oid", value = "涓婚敭", paramType = "query", dataType = "string"), + @ApiImplicitParam(name = "id", value = "閾炬帴绫诲瀷鑻辨枃鍚嶇О", paramType = "query", dataType = "string"), + @ApiImplicitParam(name = "name", value = "閾炬帴绫诲瀷涓枃鍚嶇О", paramType = "query", dataType = "string"), + @ApiImplicitParam(name = "tableName", value = "閾炬帴绫诲瀷鏁版嵁搴撹〃鍚�", paramType = "query", dataType = "string"), + }) + @ApiOperationSupport(order = 3) + @ApiOperation(value = "鏌ヨ鍒楄〃", notes = "浼犲叆鏌ヨ") + public R<IPage<LinkTypeVO>> parentList(@ApiIgnore @RequestParam Map<String, Object> condition, Query query) { + IPage<LinkTypeVO> pageVO = new Page<>(); + IPage<LinkType> page = linkTypeService.page(Condition.getPage(query), Condition.getQueryWrapper(condition, LinkType.class).lambda().orderByAsc(LinkType::getId)); + BeanUtil.copy(page, pageVO); + pageVO.setRecords(LinkTypeWrapper.build().listEntityVO(page.getRecords())); + return R.data(pageVO); + } + + + /** + * 鏂板鎴栦慨鏀� + * + * @param dto 鍏冩暟鎹〉闈紶杈撳璞� + * @return 鎵ц缁撴灉 + */ + @PostMapping("/submit/{auto}") + @ApiOperationSupport(order = 4) + @ApiOperation(value = "鏂板鎴栦慨鏀�", notes = "浼犲叆閾炬帴绫诲瀷瀵硅薄") + public R submit(@Valid @RequestBody LinkTypeVO dto, @PathVariable(value = "auto") boolean auto) { + CacheUtil.clear(OmdCacheConstant.LINK_CACHE); + if (StringUtils.isNotBlank(dto.getOid())){ + return R.data(linkTypeService.editSave(dto)); + }else { + return R.data(linkTypeService.addSave(dto)); + } + } + + /** + * 鍒犻櫎 + * + * @param ids 涓婚敭闆嗗悎 + * @return 鎵ц缁撴灉 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 5) + @ApiOperation(value = "鍒犻櫎", notes = "涓婚敭闆嗗悎") + public R remove(@ApiParam(value = "涓婚敭闆嗗悎", required = true) @RequestParam String ids) { + CacheUtil.clear(OmdCacheConstant.LINK_CACHE); + List<String> oidList = new ArrayList<>(); + if (ids.contains(",")) { + oidList.addAll(Func.toStrList(",", ids)); + } else { + oidList.add(ids); + } + return R.status(linkTypeService.removeBatchByIds(oidList)); + } + + /** + * 鑾峰彇棰嗗煙鍊� + */ + @GetMapping("/domain") + @ApiOperationSupport(order = 6) + @ApiOperation(value = "鑾峰彇棰嗗煙鍊�") + public R<List<DomainVO>> getDomain(){ + try { + return R.data(DomainRepeater.getDomain()); + } catch (NacosException e) { + return R.fail(e.getErrMsg()); + } + } + + /** + * 鎸塪omain鍒嗙粍锛屾煡璇㈤摼鎺ョ被鍨嬬殑鏍戝舰缁撴瀯 + */ + @GetMapping("/tree-domain") + @ApiOperationSupport(order = 7) + @ApiOperation(value = "閾炬帴绫诲瀷鏍戝舰缁撴瀯", notes = "閾炬帴绫诲瀷鏍戝舰缁撴瀯") + public R<List<BtmTreeVO>> treeDomain(){ + return R.data(linkTypeService.treeDomain()); + } +} diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/feign/BtmTypeClient.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/feign/BtmTypeClient.java index 997bea0..84d76d9 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/feign/BtmTypeClient.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/feign/BtmTypeClient.java @@ -51,7 +51,7 @@ @Override @GetMapping(GET_DETAIL) public R<BtmTypeVO> getDetail(String oid) { - return R.data(btmTypeService.getBtmTypeByOid(oid)); + return R.data(btmTypeService.getAllAttributeByBtmOid(oid)); } /** @@ -62,7 +62,7 @@ */ @Override @PostMapping(GET_REF_PAGE) - public R<IPage<BtmTypeVO>> getRefPage(BaseQueryObject baseQueryObject) { + public R<Page<BtmTypeVO>> getRefPage(BaseQueryObject baseQueryObject) { Map<String, String> conditionMap = baseQueryObject.getConditionMap(); if (conditionMap == null){ conditionMap = new HashMap<>(16); @@ -83,10 +83,10 @@ query.setSize(pageHelper.getLimit()); query.setCurrent(pageHelper.getPage()); IPage<BtmType> page = btmTypeService.page(Condition.getPage(query), Condition.getQueryWrapper(queryObj).lambda().eq(BtmType::getDomain, domainValue).orderByAsc(BtmType::getId)); - IPage<BtmTypeVO> pageVO = new Page<>(); + Page<BtmTypeVO> pageVO = new Page<>(); BeanUtil.copy(page,pageVO); pageVO.setRecords(BtmTypeWrapper.build().listEntityVO(page.getRecords())); - R<IPage<BtmTypeVO>> r = R.data(pageVO); + R<Page<BtmTypeVO>> r = R.data(pageVO); r.setSuccess(true); return r; } @@ -152,4 +152,37 @@ ); return R.data(voList); } + + /** + * 鑾峰彇涓氬姟绫诲瀷锛屽彧鏈夐粯璁ゅ瓧娈� + * + * @param btmTypeId 涓氬姟绫诲瀷id + * @return 榛樿瀛楁灞炴�� + */ + @Override + public R<BtmTypeVO> getDefaultAttrByBtmId(String btmTypeId) { + return R.data(Optional.ofNullable(btmTypeService.getDefaultAttrByBtmId(btmTypeId)).orElseGet(BtmTypeVO::new)); + } + + /** + * 鑾峰彇涓氬姟绫诲瀷锛屾湁鎵�鏈夌殑瀛楁 + * + * @param btmTypeId 涓氬姟绫诲瀷id + * @return 鎵�鏈夊瓧娈� + */ + @Override + public R<BtmTypeVO> getAllAttributeByBtmId(String btmTypeId) { + return R.data(Optional.ofNullable(btmTypeService.getAllAttributeByBtmId(btmTypeId)).orElseGet(BtmTypeVO::new)); + } + + /** + * 鑾峰彇涓氬姟绫诲瀷锛屾湁鎵�鏈夌殑瀛楁 + * + * @param btmTypeOid 涓氬姟绫诲瀷涓婚敭 + * @return 鎵�鏈夊瓧娈� + */ + @Override + public R<BtmTypeVO> getAllAttributeByBtmOid(String btmTypeOid) { + return R.data(Optional.ofNullable(btmTypeService.getAllAttributeByBtmOid(btmTypeOid)).orElseGet(BtmTypeVO::new)); + } } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/mapper/LinkTypeMapper.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/mapper/LinkTypeMapper.java index aa779f4..38abcd1 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/mapper/LinkTypeMapper.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/mapper/LinkTypeMapper.java @@ -1,13 +1,22 @@ package com.vci.ubcs.omd.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.vci.ubcs.omd.entity.BtmType; import com.vci.ubcs.omd.entity.LinkType; +import java.util.List; + /** - * Description: + * Description: 閾炬帴绫诲瀷鏁版嵁灞� * * @author LiHang * @date 2023/5/24 */ public interface LinkTypeMapper extends BaseMapper<LinkType> { + + /** + * 鏌ヨ鍏ㄩ儴鐨勯摼鎺� + * @return 閾炬帴绫诲瀷鏁版嵁瀵硅薄鍒楄〃 + */ + List<LinkType> selectAll(); } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IBtmTypeAttributeService.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IBtmTypeAttributeService.java index 2e06c1f..a9a5392 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IBtmTypeAttributeService.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IBtmTypeAttributeService.java @@ -3,6 +3,7 @@ import com.vci.ubcs.omd.dto.BtmTypeLinkAttributesDTO; import com.vci.ubcs.omd.entity.BtmTypeAttribute; import com.vci.ubcs.omd.vo.BtmTypeAttributeVO; +import com.vci.ubcs.omd.vo.BtmTypeVO; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.base.BaseService; @@ -74,4 +75,18 @@ * @return 鍖呭惈鐨勫睘鎬� */ List<BtmTypeAttribute> selectByBtmTypeIds(List<String> idList); + + /** + * 鑾峰彇榛樿瀛楁 + * @param btmType 涓氬姟绫诲瀷 + * @return 鎵ц缁撴灉 + */ + List<BtmTypeAttributeVO> getDefaultAttribute(BtmTypeVO btmType); + + /** + * 鑾峰彇鎵�鏈夊瓧娈� + * @param btmType 涓氬姟绫诲瀷 + * @return 鎵ц缁撴灉 + */ + List<BtmTypeAttributeVO> getAllAttribute(BtmTypeVO btmType); } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IBtmTypeService.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IBtmTypeService.java index d47082a..0049267 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IBtmTypeService.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IBtmTypeService.java @@ -1,11 +1,9 @@ package com.vci.ubcs.omd.service; import com.vci.ubcs.omd.dto.BtmTypeDTO; -import com.vci.ubcs.omd.dto.BtmTypeLinkAttributesDTO; import com.vci.ubcs.omd.entity.BtmType; -import com.vci.ubcs.omd.entity.BtmTypeAttribute; import com.vci.ubcs.omd.entity.ModifyAttributeInfo; -import com.vci.ubcs.omd.vo.BtmTypeTreeVO; +import com.vci.ubcs.omd.vo.BtmTreeVO; import com.vci.ubcs.omd.vo.BtmTypeVO; import com.vci.ubcs.omd.vo.BtmTypeAttributeVO; import com.vci.ubcs.omd.vo.LinkTypeVO; @@ -14,7 +12,6 @@ import org.springblade.core.tool.api.R; import java.util.Collection; -import java.util.Date; import java.util.List; import java.util.Map; @@ -216,7 +213,7 @@ * 鎸塪omain鍒嗙粍锛屾煡璇笟鍔$被鍨嬪睘鎬х粨鏋� * @return 鏌ヨ缁撴灉 */ - List<BtmTypeTreeVO> treeDomain(); + List<BtmTreeVO> treeDomain(); /** * 浠庢暟鎹簱琛ㄤ腑鑾峰彇 @@ -232,4 +229,25 @@ * @return 鎵ц缁撴灉 */ List<BtmTypeVO> saveFromTable(List<BtmTypeDTO> btmTypeDTOList,String domain); + + /** + * 鎸夌収涓氬姟绫诲瀷id鑾峰彇榛樿灞炴�� + * @param btmTypeId 涓氬姟绫诲瀷id + * @return 涓氬姟绫诲瀷 + */ + BtmTypeVO getDefaultAttrByBtmId(String btmTypeId); + + /** + * 鎸夌収涓氬姟绫诲瀷id鑾峰彇鎵�鏈夌殑灞炴�� + * @param btmTypeId 涓氬姟绫诲瀷id + * @return 涓氬姟绫诲瀷 + */ + BtmTypeVO getAllAttributeByBtmId(String btmTypeId); + + /** + * 鎸夌収涓氬姟绫诲瀷涓婚敭鑾峰彇鎵�鏈夌殑灞炴�� + * @param btmTypeOid 涓氬姟绫诲瀷涓婚敭 + * @return 涓氬姟绫诲瀷 + */ + BtmTypeVO getAllAttributeByBtmOid(String btmTypeOid); } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/ILinkTypeService.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/ILinkTypeService.java index 716a052..203a3cd 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/ILinkTypeService.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/ILinkTypeService.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import com.vci.ubcs.omd.entity.LinkType; +import com.vci.ubcs.omd.vo.BtmTreeVO; import com.vci.ubcs.omd.vo.LinkTypeAttributeVO; import com.vci.ubcs.omd.vo.LinkTypeVO; import com.vci.ubcs.starter.exception.VciBaseException; @@ -203,4 +204,9 @@ * @return 鑻辨枃鍚嶇О鑻辨枃灏忓啓 */ Set<String> listUsedBtmType(); + /** + * 鎸塪omain鍒嗙粍锛屾煡璇笟鍔$被鍨嬪睘鎬х粨鏋� + * @return 鏌ヨ缁撴灉 + */ + List<BtmTreeVO> treeDomain(); } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java index a37c01c..6742b49 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java @@ -1,15 +1,20 @@ package com.vci.ubcs.omd.service.impl; +import com.alibaba.cloud.commons.lang.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.vci.ubcs.omd.constant.BtmTypeConstant; +import com.vci.ubcs.omd.constant.BtmTypeFieldConstant; import com.vci.ubcs.omd.dto.BtmTypeLinkAttributesDTO; import com.vci.ubcs.omd.entity.BtmTypeAttribute; import com.vci.ubcs.omd.mapper.BtmTypeAttributeMapper; import com.vci.ubcs.omd.service.IAttributeService; import com.vci.ubcs.omd.service.IBtmTypeAttributeService; import com.vci.ubcs.omd.vo.BtmTypeAttributeVO; +import com.vci.ubcs.omd.vo.BtmTypeVO; import com.vci.ubcs.omd.wrapper.BtmTypeAttributeWrapper; import com.vci.ubcs.starter.exception.VciBaseException; +import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum; import com.vci.ubcs.starter.web.util.VciBaseUtil; import org.springblade.core.tool.utils.Func; import org.springframework.beans.factory.annotation.Autowired; @@ -169,4 +174,95 @@ public List<BtmTypeAttribute> selectByBtmTypeIds(List<String> idList) { return baseMapper.selectByBtmTypeIds(idList); } + + /** + * 鑾峰彇榛樿瀛楁 + * + * @param btmType 涓氬姟绫诲瀷 + * @return 鎵ц缁撴灉 + */ + @Override + public List<BtmTypeAttributeVO> getDefaultAttribute(BtmTypeVO btmType) { + List<BtmTypeAttributeVO> list = new ArrayList<>(); + // 涓氬姟绫诲瀷鐨勫熀鏈瓧娈� + BtmTypeFieldConstant.BASIC_FIELD_MAP.forEach((id,name) -> { + BtmTypeAttributeVO vo = new BtmTypeAttributeVO(); + vo.setId(id); + vo.setName(name); + vo.setPkBtmType(btmType.getOid()); + if (StringUtils.equals(id,"oid")){ + vo.setNullableFlag(false); + }else { + vo.setNullableFlag(true); + } + if (Arrays.asList("createtime","lastmodifytime","owner").contains(id)){ + vo.setAttrDataType(VciFieldTypeEnum.VTDateTime.name()); + vo.setAttributeLength(6); + }else { + vo.setAttrDataType(VciFieldTypeEnum.VTString.name()); + vo.setAttributeLength(150); + } + list.add(vo); + }); + + // 鐗堟湰瑙勫垯瀛楁 + if (StringUtils.isNotBlank(btmType.getRevisionRuleId())){ + BtmTypeFieldConstant.REVISION_MANAGE_FIELD_MAP.forEach((id,name) -> { + BtmTypeAttributeVO vo = new BtmTypeAttributeVO(); + vo.setId(id); + vo.setName(name); + vo.setPkBtmType(btmType.getOid()); + if (Arrays.asList("lastr","firstr","lastv","firstv","revisionseq","versionseq","revisionvalue","versionvalue").contains(id)){ + vo.setAttributeLength(5); + vo.setAttrDataType(VciFieldTypeEnum.VTInteger.name()); + } + if (Arrays.asList("checkintime","checkouttime").contains(id)){ + vo.setAttrDataType(VciFieldTypeEnum.VTDateTime.name()); + vo.setAttributeLength(6); + } + list.add(vo); + }); + } + + // 鐢熷懡鍛ㄦ湡瀛楁 + if (StringUtils.isNotBlank(btmType.getLifeCycleId())){ + BtmTypeFieldConstant.LIFECYCLE_MANAGE_FIELD_MAP.forEach((id,name) -> { + BtmTypeAttributeVO vo = new BtmTypeAttributeVO(); + vo.setId(id); + vo.setName(name); + vo.setPkBtmType(btmType.getOid()); + vo.setAttributeLength(50); + vo.setAttrDataType(VciFieldTypeEnum.VTString.name()); + list.add(vo); + }); + } + + // 瀵嗙骇瀛楁 + if (btmType.isSecretFlag()){ + BtmTypeFieldConstant.SECRET_MANAGE_FIELD_MAP.forEach((id,name) -> { + BtmTypeAttributeVO vo = new BtmTypeAttributeVO(); + vo.setId(id); + vo.setName(name); + vo.setPkBtmType(btmType.getOid()); + vo.setAttributeLength(5); + vo.setAttrDataType(VciFieldTypeEnum.VTInteger.name()); + list.add(vo); + }); + } + + return list; + } + + /** + * 鑾峰彇鎵�鏈夊瓧娈� + * + * @param btmType 涓氬姟绫诲瀷 + * @return 鎵ц缁撴灉 + */ + @Override + public List<BtmTypeAttributeVO> getAllAttribute(BtmTypeVO btmType) { + List<BtmTypeAttributeVO> list = getAttributeByBtmTypeOid(btmType.getOid()); + list.addAll(getDefaultAttribute(btmType)); + return list; + } } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java index 266fe5a..2e7f48f 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmTypeServiceImpl.java @@ -88,7 +88,7 @@ /** * 琛ㄥ悕鍓嶇紑 */ - public static final String PL = "PL"; + public static final String PL = "PLBT"; /** * 璁剧疆骞冲彴鏈韩鐨勪笟鍔$被鍨� @@ -639,20 +639,20 @@ * @return 鏌ヨ缁撴灉 */ @Override - public List<BtmTypeTreeVO> treeDomain() { + public List<BtmTreeVO> treeDomain() { try { Map<String, String> domain = Optional.ofNullable(DomainRepeater.getDomain()).orElseGet(ArrayList::new).stream().collect(Collectors.toMap(s -> s.getValue(), t -> t.getLabel())); List<BtmTypeVO> vos = BtmTypeWrapper.build().listEntityVO(baseMapper.selectAll()); Map<String, List<BtmTypeVO>> domainMap = vos.stream().collect(Collectors.groupingBy(BtmTypeVO::getDomain)); - List<BtmTypeTreeVO> treeList = new ArrayList<>(); + List<BtmTreeVO> treeList = new ArrayList<>(); domainMap.forEach((k,v)-> { if (domain.containsKey(k)){ String label = domain.get(k); - BtmTypeTreeVO parent = new BtmTypeTreeVO(); + BtmTreeVO parent = new BtmTreeVO(); parent.setName(label); parent.setId(k); parent.setChildList(v.stream().map(s -> { - BtmTypeTreeVO child = new BtmTypeTreeVO(); + BtmTreeVO child = new BtmTreeVO(); child.setOid(s.getOid()); child.setName(s.getId() + " " + (s.getName() == null ? "" : s.getName())); child.setId(s.getId()); @@ -810,4 +810,52 @@ } return BtmTypeWrapper.build().listEntityVO(btmList); } + + /** + * 鎸夌収涓氬姟绫诲瀷id鑾峰彇榛樿灞炴�� + * + * @param btmTypeId 涓氬姟绫诲瀷id + * @return 涓氬姟绫诲瀷 + */ + @Override + public BtmTypeVO getDefaultAttrByBtmId(String btmTypeId) { + BtmTypeVO btmType = getBtmTypeById(btmTypeId); + if (btmType == null){ + return null; + } + btmType.setAttributes(btmTypeAttributeService.getDefaultAttribute(btmType)); + return btmType; + } + + /** + * 鎸夌収涓氬姟绫诲瀷id鑾峰彇鎵�鏈夌殑灞炴�� + * + * @param btmTypeId 涓氬姟绫诲瀷id + * @return 涓氬姟绫诲瀷 + */ + @Override + public BtmTypeVO getAllAttributeByBtmId(String btmTypeId) { + BtmTypeVO btmType = getBtmTypeById(btmTypeId); + if (btmType == null){ + return null; + } + btmType.setAttributes(btmTypeAttributeService.getAllAttribute(btmType)); + return btmType; + } + + /** + * 鎸夌収涓氬姟绫诲瀷涓婚敭鑾峰彇鎵�鏈夌殑灞炴�� + * + * @param btmTypeOid 涓氬姟绫诲瀷涓婚敭 + * @return 涓氬姟绫诲瀷 + */ + @Override + public BtmTypeVO getAllAttributeByBtmOid(String btmTypeOid) { + BtmTypeVO btmType = getBtmTypeByOid(btmTypeOid); + if (btmType == null){ + return null; + } + btmType.setAttributes(btmTypeAttributeService.getAllAttribute(btmType)); + return btmType; + } } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LinkTypeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LinkTypeServiceImpl.java index 80820f9..e616cd2 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LinkTypeServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LinkTypeServiceImpl.java @@ -26,8 +26,8 @@ import com.vci.ubcs.omd.mapper.LinkTypeMapper; import com.vci.ubcs.omd.repeater.DomainRepeater; import com.vci.ubcs.omd.service.*; -import com.vci.ubcs.omd.vo.LinkTypeAttributeVO; -import com.vci.ubcs.omd.vo.LinkTypeVO; +import com.vci.ubcs.omd.vo.*; +import com.vci.ubcs.omd.wrapper.BtmTypeWrapper; import com.vci.ubcs.omd.wrapper.LinkTypeAttributeWrapper; import com.vci.ubcs.omd.wrapper.LinkTypeWrapper; import com.vci.ubcs.starter.exception.VciBaseException; @@ -95,12 +95,10 @@ @Autowired private IModifyAttributeService modifyAttributeService; - public final String BTM_NAME = "linkType"; - /** * 琛ㄥ悕鍓嶇紑 */ - public static final String PL = "PL"; + public static final String PL = "PLLT"; /** @@ -865,4 +863,38 @@ } return btmTypeSet; } + + /** + * 鎸塪omain鍒嗙粍锛屾煡璇㈤摼鎺ョ被鍨嬪睘鎬х粨鏋� + * + * @return 鏌ヨ缁撴灉 + */ + @Override + public List<BtmTreeVO> treeDomain() { + try { + Map<String, String> domain = Optional.ofNullable(DomainRepeater.getDomain()).orElseGet(ArrayList::new).stream().collect(Collectors.toMap(DomainVO::getValue, DomainVO::getLabel)); + List<LinkTypeVO> vos = LinkTypeWrapper.build().listEntityVO(baseMapper.selectAll()); + Map<String, List<LinkTypeVO>> domainMap = vos.stream().collect(Collectors.groupingBy(LinkTypeVO::getDomain)); + List<BtmTreeVO> treeList = new ArrayList<>(); + domainMap.forEach((k,v)-> { + if (domain.containsKey(k)){ + String label = domain.get(k); + BtmTreeVO parent = new BtmTreeVO(); + parent.setName(label); + parent.setId(k); + parent.setChildList(v.stream().map(s -> { + BtmTreeVO child = new BtmTreeVO(); + child.setOid(s.getOid()); + child.setName(s.getId() + " " + (s.getName() == null ? "" : s.getName())); + child.setId(s.getId()); + return child; + }).collect(Collectors.toList())); + treeList.add(parent); + } + }); + return treeList; + } catch (NacosException e) { + throw new RuntimeException(e); + } + } } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/LinkTypeMapper.xml b/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/LinkTypeMapper.xml index c21779e..0034781 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/LinkTypeMapper.xml +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/LinkTypeMapper.xml @@ -23,7 +23,7 @@ </resultMap> <sql id="base_query_column"> - oid, id, name, descrption, shape, impl_class, from_btm_type, from_btm_type_name, + oid, id, name, description, shape, impl_class, from_btm_type, from_btm_type_name, to_btm_type, to_btm_type_name, btm_name, owner, creator, create_time, last_modifier, last_modify_time, ts, domain </sql> @@ -31,4 +31,10 @@ <sql id="tableName"> pl_omd_link_type </sql> + + <select id="selectAll" resultMap="BaseResultMap"> + select <include refid="base_query_column"/> + from <include refid="tableName" /> + </select> + </mapper> 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 08eebfe..d530041 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 @@ -4,9 +4,9 @@ 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.vo.collection.DockingPreAttrMappingVOList; import com.vci.ubcs.code.webservice.wrapper.DockingPreApplyFormWrapper; import com.vci.ubcs.starter.exception.VciBaseException; import com.vci.ubcs.starter.revision.model.TreeQueryObject; @@ -19,7 +19,7 @@ import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; + import java.util.ArrayList; import java.util.List; @@ -119,10 +119,11 @@ @PostMapping( "/batchAddSave") @ApiOperationSupport(order = 2) @ApiOperation(value = "淇濆瓨灞炴�ф槧灏勯厤缃�", notes = "dockingPreAttrMappingVOList") - public R batchSave(@Valid @RequestBody List<DockingPreAttrMappingVO> dockingPreAttrMappingVOList){ + public R batchSave(@RequestBody DockingPreAttrMappingVOList dockingPreAttrMappingVOList){ + List<DockingPreAttrMappingVO> dockingPreAttrMappingVOs = dockingPreAttrMappingVOList.getDockingPreAttrMappingVOList(); List<DockingPreAttrMappingVO> dockingPreAttrRangeVOS=new ArrayList<>(); try { - dockingPreAttrRangeVOS = dockingPreAttrMappingService.batchAddSave(dockingPreAttrMappingVOList); + dockingPreAttrRangeVOS = dockingPreAttrMappingService.batchAddSave(dockingPreAttrMappingVOs); }catch (Exception e){ return R.fail("闆嗗洟闆嗘垚灞炴�ф槧灏勯厤缃繚瀛樺け璐ワ細"+e.getMessage()); } -- Gitblit v1.9.3