From fd2f31c79972bf1fc5f500a6f36b96546b2768d6 Mon Sep 17 00:00:00 2001 From: fujunling <2984387807@qq.com> Date: 星期五, 02 六月 2023 16:34:24 +0800 Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs --- Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java | 10 + Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java | 16 ++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateAttrServiceImpl.java | 6 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyTemplateAttrVO.java | 5 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java | 12 + Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeClassifyTemplateAttr.java | 5 Source/UBCS-WEB/src/views/integration/integrationIndex.vue | 224 ++++++++++++++++++------------- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java | 9 + Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineFallback.java | 7 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 35 +++++ Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml | 14 ++ Source/UBCS-WEB/src/api/integration/integration.js | 14 + Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/UIFormItemVO.java | 11 + 13 files changed, 269 insertions(+), 99 deletions(-) diff --git a/Source/UBCS-WEB/src/api/integration/integration.js b/Source/UBCS-WEB/src/api/integration/integration.js index 4135761..64339d1 100644 --- a/Source/UBCS-WEB/src/api/integration/integration.js +++ b/Source/UBCS-WEB/src/api/integration/integration.js @@ -50,9 +50,19 @@ } // 灞炴�ф槧灏勪繚瀛樻柟娉� export const batchAddSave = (params) => { + console.log(params) return request({ url: '/api/ubcs-applyjtcodeservice/DockingPreApplyCode/batchAddSave', - method: 'get', - params: params + method: 'post', + data: params + }) +} +// 鍚屾闆嗗洟灞炴�фā鍨嬭鍥� +export const syncClassifyModel = (params) => { + console.log(params) + return request({ + url: '/api/ubcs-applyjtcodeservice/DockingPreApplyCode/syncClassifyModel', + method: 'post', + data: params }) } \ No newline at end of file diff --git a/Source/UBCS-WEB/src/views/integration/integrationIndex.vue b/Source/UBCS-WEB/src/views/integration/integrationIndex.vue index c18063d..9e65713 100644 --- a/Source/UBCS-WEB/src/views/integration/integrationIndex.vue +++ b/Source/UBCS-WEB/src/views/integration/integrationIndex.vue @@ -18,7 +18,7 @@ <el-form-item label="闆嗗洟鍒嗙被" label-width="70px" size="small"> <el-select clearable ref="selectTree" v-model="form.groupValue" placeholder="璇烽�夋嫨" popper-class="popperTreeSelect"> - <el-option :value="groupVal" :label="groupVal"> + <el-option :value="groupVal" :label="groupVal"> <el-tree ref="groupTree" :data="groupTreeData" empty-text="鏆傛棤鏁版嵁" :props="defaultProps" @node-click="handleNodeClick"> </el-tree> @@ -27,24 +27,22 @@ </el-form-item> </el-form> - <avue-crud :table-loading="loading" :data="tableData" :option="option" ref="crud" @cell-class-name="handelCellRow" - @cell-click="handleCellClick"> - <template slot="menuLeft"> - <el-button icon="el-icon-plus" size="small" type="primary" @click="dialogPush = true">鏂� 澧� - </el-button> - <el-button icon="el-icon-check" size="small" type="primary" @click="handleSave">淇� 瀛� - </el-button> - <el-button icon="el-icon-connection" size="small" type="primary" @click="handleSync">鍚屾妯″瀷 - </el-button> - </template> - <template slot="defaultValue" slot-scope="{scope}"> - <!-- <el-input v-model="scope.row.defaultValue" v-if="scope.row.index === tableRowIndex && scope.column.index === tableColumnIndex" @blur="inputBlur"> </el-input> --> - <span>{{ scope }}</span> - </template> - </avue-crud> + <el-card> + <avue-crud :table-loading="loading" :data="mappingData" :option="optionMapping" ref="crudMapping" + @row-update="handleUpdate" @row-click="handleMapingRowClick"> + <template slot="menuLeft"> + <el-button icon="el-icon-plus" size="small" type="primary" @click="dialogPush = true">鏂� 澧� + </el-button> + <el-button icon="el-icon-check" size="small" type="primary" @click="handleSave">淇� 瀛� + </el-button> + <el-button icon="el-icon-connection" size="small" type="primary" @click="handleSync">鍚屾妯″瀷 + </el-button> + </template> + </avue-crud> + </el-card> <el-card :style="{ marginTop: '20px' }"> - <avue-crud :data="tablesData" :option="optinos" ref="crud" - @cell-click="handleCellClick"> + <avue-crud :data="rangeData" :option="optinoRange" ref="crudRange" @row-update="handleUpdate" + @row-dblclick="handleRowClick"> </avue-crud> </el-card> </el-card> @@ -59,7 +57,7 @@ </el-form> <p class="text_tip">*閫夋嫨鍒嗙被杩涜灞炴�ц繃婊�, 鎴栬�呰緭鍏ュ睘鎬х殑鍏ㄦ嫾鎴栬�呯畝鎷艰繘琛屾煡璇�! 濡�: 濮撳悕 (鍙緭鍏m鎴杧inming )</p> <transfer v-model="transferValue" :data="transferData" :filter-method="filterMethod" - filter-placeholder="璇疯緭鍏ュ睘鎬ф嫾闊冲叏鎷兼垨鑰呮嫾闊崇缉鍐�" @left-check-change="handelLeftCheck"></transfer> + filter-placeholder="璇疯緭鍏ユ嫾闊冲叏鎷兼垨鑰呮嫾闊崇缉鍐�" @left-check-change="handelLeftCheck"></transfer> <span slot="footer" class="dialog-footer"> <el-button @click="dialogPush = false">鍙� 娑�</el-button> <el-button type="primary" @click="dialogPush = false">淇� 瀛�</el-button> @@ -70,7 +68,7 @@ <script> import transfer from '@/components/transfer/index' import pinyin from 'js-pinyin' -import { referCodeClassifyTree, referTree, gridAttrMapping } from '@/api/integration/integration.js' +import { referCodeClassifyTree, referTree, gridAttrMapping, gridAttrRanges, batchAddSave, listCodeAttributeByClassId, syncClassifyModel } from '@/api/integration/integration.js' export default { components: { transfer @@ -90,6 +88,20 @@ }); return data; }; + const options = { + menu: false, + delBtn: false, + addBtn: false, + index: true, + columnBtn: false, + searchShow: true, + emptyBtn: false, + searchBtn: false, + searchShowBtn: false, + cellBtn: true, + border: true, + searchMenuSpan: 8, + } return { form: { name: '', @@ -101,65 +113,37 @@ transferData: generateData(), transferValue: [], dialogPush: false, - tableData: [], - tablesData: [ - { - id:'01', - groupTypeName:'鏉庡洓', - codeView:'寮犱笁', - sex:'', - typeName:'' - } - ], + mappingData: [], + rangeData: [], filterText: '', - tableRowIndex:null, - tableColumnIndex:null, - optinos: { + tableRowIndex: null, + tableColumnIndex: null, + optinoRange: { title: '闆嗗洟灞炴��', maxHeight: '300px', - menu: true, - delBtn: false, - addBtn: false, - index: true, header: false, - columnBtn: false, - searchShow: true, - emptyBtn: false, - searchBtn: false, - searchShowBtn: false, - cellBtn: true, - border: true, - searchMenuSpan: 8, + rowKey: 'oid', column: [ - { label: '灞炴�ч泦鍥㈡灇涓惧��', prop: 'groupTypeName', minWidth: 80, }, - { label: '闆嗗洟灞炴�ф灇涓炬樉绀哄悕绉�', prop: 'codeView', minWidth: 80 }, - { label: 'MDM鏋氫妇鍊�', prop: 'sex', minWidth: 80, cell: true }, - { label: 'MDM鏋氫妇鏄剧ず鍚嶇О', prop: 'typeName', minWidth: 80, cell: true }, - ] + { label: '灞炴�ч泦鍥㈡灇涓惧��', prop: 'numTextValue', minWidth: 80 }, + { label: '闆嗗洟灞炴�ф灇涓炬樉绀哄悕绉�', prop: 'numText', minWidth: 80 }, + { label: 'MDM鏋氫妇鍊�', prop: 'targetNumTextValue', minWidth: 80, cell: true, blur: (value) => window.handleBlur(value, 'range') }, + { label: 'MDM鏋氫妇鏄剧ず鍚嶇О', prop: 'targetNumText', minWidth: 80, cell: true, blur: (value) => window.handleBlur(value, 'range') }, + ], + ...options }, - option: { + optionMapping: { maxHeight: '500px', - menu: true, - delBtn: false, - addBtn: false, - index: true, header: true, - columnBtn: false, - searchShow: true, - emptyBtn: false, - searchBtn: false, - searchShowBtn: false, - cellBtn: false, - border: true, - searchMenuSpan: 8, + rowKey: 'oid', column: [ - { label: '闆嗗洟鍒嗙被', prop: 'sourceClassifyName', minWidth: 80, }, + { label: '闆嗗洟鍒嗙被', prop: 'sourceClassifyName', minWidth: 80 }, { label: '鎵�灞炶鍥�', prop: 'viewName', minWidth: 80 }, { label: '闆嗗洟灞炴��', prop: 'sourceAttrName', minWidth: 80 }, - { label: '鍒嗙被鍚嶇О', prop: 'targetClassifyName', minWidth: 80, overHidden: true }, - { label: '灞炴�у悕绉�', prop: 'targetAttrName', minWidth: 80}, - { label: '榛樿鍊�', prop: 'defaultValue', minWidth: 140, cell: true }, - ] + { label: '鍒嗙被鍚嶇О', prop: 'targetClassifyName', minWidth: 80 }, + { label: '灞炴�у悕绉�', prop: 'targetAttrName', minWidth: 80 }, + { label: '榛樿鍊�', prop: 'defaultValue', minWidth: 140, cell: true, blur: (value) => window.handleBlur(value, 'mapping') }, + ], + ...options }, treeData: [], groupTreeData: [], @@ -170,7 +154,9 @@ isLeaf: '' }, groupVal: '', - treeParam: {} + treeParam: {}, + rangeForm: {}, + mappingForm: {}, } }, watch: { @@ -182,10 +168,12 @@ created() { this.getReferCodeClassifyTree() pinyin.setOptions({ checkPolyphone: false, charCase: 1 }); - console.log(pinyin.getFullChars('绠$悊鍛�')) - console.log(pinyin.getCamelChars('绠$悊鍛�')) + }, + mounted() { + window.handleBlur = this.handleBlur }, methods: { + // 鎺ュ彛宸︿晶鏍� async getReferCodeClassifyTree() { const param = { parentBtmName: "jclass", @@ -200,16 +188,33 @@ this.treeData = data.map(item => item.children ? { ...item, ...{ isLeaf: false } } : { ...item, ...{ isLeaf: true } }) } }, - async getlistCodeAttributeByClassId(oid) { + // 鎺ュ彛鑾峰彇灞炴�ф槧灏� + async getGridAttrMapping(oid) { this.loading = true console.log(this.treeParam) const response = await gridAttrMapping({ sourceClassifyId: oid, ...this.treeParam }) console.log(response) if (response.status === 200) { this.loading = false - this.tableData = response.data.data + this.mappingData = response.data.data } }, + // 鎺ュ彛鑾峰彇灞炴�ф槧灏勫彇鍊艰寖鍥� + async getGridAttrRanges(oid) { + this.tablesData = [] + const response = await gridAttrRanges({ meatId: oid }) + console.log(response) + if (response.status === 200) { + this.rangeData = response.data + } + }, + // 鎺ュ彛鑾峰彇涓绘暟鎹垎绫诲睘鎬т俊鎭� + async getListCodeByClassId(oid) { + // this.tablesData = [] + const response = await listCodeAttributeByClassId({ codeClassifyId: oid }) + console.log(response) + }, + // 鎺ュ彛鑾峰彇闆嗗洟鍒嗙被鏍� async referTree(oid, checked) { this.groupTreeData = [] const response = await referTree({ 'conditionMap[codeclsfid]': oid, parentOid: null }) @@ -229,25 +234,26 @@ } } }, + // 宸︿晶鏍戣繃婊ゆ悳绱� filterNode(value, data) { - console.log(value) - console.log(data) if (!value) return true; return data.name.indexOf(value) !== -1; }, - handleSave() { - + // 淇濆瓨鎸夐挳 + async handleSave() { + console.log(this.mappingData) + // const response = await batchAddSave({ dockingPreAttrMappingVOList: this.tableData }) + // console.log(response) }, - handlePush() { - + // 鍚屾鏁版嵁 + async handleSync() { + const response = await syncClassifyModel({ dockingPreAttrMappingVOList: this.tableData }) + console.log(response) }, handelLeftCheck(event) { console.log(event) }, - handelCellRow( {row, column, rowIndex, columnIndex }) { - row.index = rowIndex - column.index = columnIndex - }, + // 鏂板寮圭獥鏌ヨ鎸夐挳 handleQuery(event) { console.log(event) this.form.name = event @@ -255,34 +261,66 @@ filterMethod(item) { return item.pinyins.indexOf(this.form.name) > -1; }, + // 宸︿晶鏍戠偣鍑� handelTreeCell(event) { - console.log(event) if (event.leaf) { this.treeParam.codeClassifyId = event.oid this.form.groupValue = '' this.groupVal = '' this.tableData = [] this.referTree(event.oid, event.checked) + this.getListCodeByClassId(event.oid) } }, + // 闆嗗洟鍒嗙被鏍戠偣鍑� handleNodeClick(data) { console.log(data) this.form.groupValue = data.name this.groupVal = data.name this.$refs.selectTree.blur() - this.getlistCodeAttributeByClassId(data.oid) - }, - handleCellClick(row, column,cell, event) { - console.log(row) - console.log(column) - console.log(cell) - console.log(event) - this.tableRowIndex = row.index - this.tableColumnIndex = column.index + this.getGridAttrMapping(data.oid) }, inputBlur() { this.tableColumnIndex = '' this.tableRowIndex = null + }, + // 灞炴�ф槧灏勭偣鍑绘瘡琛� + handleCellClick(event) { + console.log('鍗曞嚮', event) + // this.tableRowIndex = row.index + // this.tableColumnIndex = column.index + // this.getGridAttrRanges(event.metaListId) + }, + handleBlur(value, event) { + console.log(value) + if (event === 'range') this.$refs.crudRange.rowCell(this.rangeForm, this.rangeForm.$index) + if (event === 'mapping') this.$refs.crudMapping.rowCell(this.mappingForm, this.mappingForm.$index) + }, + // 灞炴�у彇鍊艰寖鍥村崟鍏冩牸缂栬緫 + handleMapingRowClick(row, column, cell, event) { + this.mappingForm = row + if (column.label === '榛樿鍊�') this.$refs.crudMapping.rowCell(row, row.$index) + else this.getGridAttrRanges(row.metaListId) + + }, + // 灞炴�у彇鍊艰寖鍥村崟鍏冩牸缂栬緫 + handleRowClick(row, column, cell, event) { + this.rangeForm = row + console.log('鍗曞嚮', row) + this.$refs.crudRange.rowCell(row, row.$index) + }, + // 灞炴�у彇鍊艰寖鍥村崟鍏冩牸缂栬緫 + handleUpdate(row, index, done, loading) { + const findRow = this.mappingData.findIndex(item => item.metaListId === row.metaListId) + console.log(findRow) + this.mappingData[0].dockingPreAttrRangeVoList = [row] + console.log('淇敼鍚�', row) + this.$message({ + showClose: true, + message: "淇敼鎴愬姛", + type: "success", + }); + done(); } } } diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeClassifyTemplateAttr.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeClassifyTemplateAttr.java index 2089d52..2c6bb97 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeClassifyTemplateAttr.java +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeClassifyTemplateAttr.java @@ -158,6 +158,11 @@ */ //@Column(columnDefinition = "鎵�灞炲睘鎬у垎缁�") private String attributeGroup; + /** + * 杈撳叆鏄剧ず + */ + //@Column(columnDefinition = "杈撳叆鏄剧ず") + private String inputTip; /** * 浣跨敤鏋氫妇鑻辨枃缂栧彿 diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java index 74564c5..529a4ef 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineClient.java @@ -39,6 +39,7 @@ String API_PREFIX = "/mdmEngineClient"; String SELECT_BY_TYPE_OID = API_PREFIX + "/selectByTypeAndOid"; String INSERT_BATCH_BY_TYPE = API_PREFIX + "/insertBatchByType"; + String UPDATE_BATCH_BY_TYPE = API_PREFIX + "/updateBatchByType"; /** * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩竜id闆嗗悎鏌ヨ鏁版嵁杩涜杩斿洖 @@ -60,4 +61,13 @@ */ @PostMapping(INSERT_BATCH_BY_TYPE) R<Integer> insertBatchByType(@RequestParam("btmType")String btmType,@RequestBody List<BaseModel> baseModels); + /** + * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鏇存柊鎿嶄綔 + * + * @param btmType 涓氬姟绫诲瀷 + * @param baseModels 澶勭悊鏁版嵁 + * @return 澶勭悊鐘舵�� + */ + @PostMapping(UPDATE_BATCH_BY_TYPE) + R<Integer> updateBatchByType(@RequestParam("btmType")String btmType,@RequestBody List<BaseModel> baseModels); } diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineFallback.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineFallback.java index 7571929..59c2c3f 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineFallback.java +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/IMdmEngineFallback.java @@ -36,6 +36,11 @@ @Override public R<Integer> insertBatchByType(String btmType, List<BaseModel> baseModels){ - return R.fail("鑾峰彇鏁版嵁澶辫触"); + return R.fail("鎻掑叆鏁版嵁澶辫触"); + } + + @Override + public R<Integer> updateBatchByType(String btmType, List<BaseModel> baseModels) { + return R.fail("鏇存柊鏁版嵁澶辫触"); } } diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyTemplateAttrVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyTemplateAttrVO.java index 8898595..8134943 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyTemplateAttrVO.java +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/CodeClassifyTemplateAttrVO.java @@ -290,6 +290,10 @@ * 绾ц仈鏌ヨ灞炴�� */ private String parentQueryAttr; + /** + * 杈撳叆鎻愮ず + */ + private String inputTip; @Override public String toString() { @@ -348,6 +352,7 @@ ", libraryIdentification='" + libraryIdentification + '\'' + ", parentCode='" + parentCode + '\'' + ", parentName='" + parentName + '\'' + + ", inputTip='" + inputTip + '\'' + ", parentQueryAttr='" + parentQueryAttr + '\'' + '}'; } diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/UIFormItemVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/UIFormItemVO.java index a4fa296..60da3d6 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/UIFormItemVO.java +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/UIFormItemVO.java @@ -133,6 +133,10 @@ * 鍚庣紑 */ private String suffix; + /** + * 杈撳叆鎻愮ず + */ + private String inputTip; public boolean isKeyAttr() { return keyAttr; @@ -149,6 +153,13 @@ public void setField(String field) { this.field = field; } + public String getInputTip() { + return inputTip; + } + + public void setInputTip(String inputTip) { + this.inputTip = inputTip; + } public String getText() { return text; diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java index e4b173e..5cc9423 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmEngineClient.java @@ -78,5 +78,21 @@ throw new RuntimeException(e); } } + /** + * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鎻掑叆鎿嶄綔 + * + * @param btmType 涓氬姟绫诲瀷 + * @param baseModels 澶勭悊鏁版嵁 + * @return 澶勭悊鐘舵�� + */ + @Override + @PostMapping(UPDATE_BATCH_BY_TYPE) + public R<Integer> updateBatchByType(String btmType, List<BaseModel> baseModels) { + try { + return mdmEngineService.updateBatchByBaseModel(btmType,baseModels); + } catch (Exception e) { + throw new RuntimeException(e); + } + } } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java index 039a162..1dcbecf 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java @@ -1,5 +1,6 @@ package com.vci.ubcs.code.mapper; +import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import org.apache.ibatis.annotations.MapKey; import org.apache.ibatis.annotations.Param; @@ -22,12 +23,19 @@ List<Map> selectBySql(@Param("inSql") String inSql); /** - * 浼犲叆琛ㄦ槑锛宮ap锛宭ist<map>瀹屾垚鎵归噺鏇存柊鎿嶄綔 + * 浼犲叆琛ㄥ悕锛宮ap锛宭ist<map>瀹屾垚鎵归噺鏇存柊鎿嶄綔 * @param tableName 琛ㄥ悕 * @param columnMap 鍗曟潯map鐢ㄤ簬鑾峰彇key浣滀负瀛楁 * @param mapList 闇�瑕佹彃鍏ョ殑鎵�鏈夎褰� * @return 鎻掑叆鎴愬姛鐨勬潯鏁� */ - Integer insertByBaseModel(String tableName,Map<String,String> columnMap,List<Map<String,String>> mapList); + Integer insertByBaseModel(String tableName,Map<String,String> columnMap,List<Map<String,String>> mapList);/** + * 浼犲叆琛ㄥ悕锛宮ap锛宭ist<map>瀹屾垚鎵归噺鏇存柊鎿嶄綔 + * @param tableName 琛ㄥ悕 + * @param mapList 闇�瑕佹洿鏂扮殑鎵�鏈夎褰� + * @return 鎻掑叆鎴愬姛鐨勬潯鏁� + */ + @InterceptorIgnore(tenantLine = "true") + Integer updateBatchByBaseModel(String tableName,List<Map<String,String>> mapList); } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java index 78843da..bacba02 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmEngineService.java @@ -386,4 +386,13 @@ * @return 鏌ヨ鍑虹殑鏁版嵁 */ List<BaseModel> selectByTypeAndOid(String btmType, String oids) throws IllegalAccessException, NoSuchFieldException, InstantiationException, InvocationTargetException, IntrospectionException, SQLException; + /** + * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鏇存柊鎿嶄綔 + * + * @param btmType 涓氬姟绫诲瀷 + * @param baseModels 澶勭悊鏁版嵁 + * @return 澶勭悊鐘舵�� + */ + R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels) throws Exception; + } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateAttrServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateAttrServiceImpl.java index ec03bc6..8db0bd8 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateAttrServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateAttrServiceImpl.java @@ -153,7 +153,11 @@ // conditionMap.put("classifytemplateoid", QueryOptionConstant.IN + "(" + VciBaseUtil.toInSql(templateOids.toArray(new String[0])) + ")"); // PageHelper pageHelper = new PageHelper(-1); // pageHelper.addDefaultAsc("orderNum"); - List<CodeClassifyTemplateAttr> attrDOS = baseMapper.selectByClassifytemplateoid(VciBaseUtil.toInSql(templateOids.toArray(new String[0]))); + QueryWrapper<CodeClassifyTemplateAttr> wrapper = new QueryWrapper<>(); + wrapper.in("classifytemplateoid",templateOids); + wrapper.orderByAsc("orderNum"); + List<CodeClassifyTemplateAttr> attrDOS = baseMapper.selectList(wrapper); +// baseMapper.selectByClassifytemplateoid(VciBaseUtil.toInSql(templateOids.toArray(new String[0]))); if(!CollectionUtils.isEmpty(attrDOS)){ attrDOList.addAll(attrDOS); 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 5f36b78..0cf501f 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 @@ -1064,6 +1064,7 @@ itemVO.setPrefix(attrVO.getPrefixValue()); itemVO.setSuffix(attrVO.getSuffixValue()); itemVO.setTooltips(attrVO.getExplain()); + itemVO.setInputTip(attrVO.getInputTip()); itemVO.setSelectLibFlag(attrVO.getLibraryIdentification()); //鐪嬬湅鏄惁鏈夋灇涓� if ((StringUtils.isNotBlank(attrVO.getEnumString()) @@ -3059,4 +3060,38 @@ } return ""; } + + /** + * 浼犲叆涓氬姟绫诲瀷浠ュ強鐩稿叧鏁版嵁杩涜鎵归噺鏇存柊鎿嶄綔 + * + * @param btmType 涓氬姟绫诲瀷 + * @param baseModels 澶勭悊鏁版嵁 + * @return 澶勭悊鐘舵�� + */ + @Override + public R updateBatchByBaseModel(String btmType, List<BaseModel> baseModels) throws Exception { + //浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃 + R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType)); + if(listR.getData().size() == 0){ + throw new VciBaseException("浼犲叆涓氬姟绫诲瀷鏈煡璇㈠埌鐩稿簲琛ㄥ崟锛岃妫�鏌ワ紒"); + } + //灏哹ean杞负map,mybatis缁熶竴澶勭悊 + List<Map<String,String>> maps = new ArrayList<>(); + + baseModels.stream().forEach(model-> { + try { + maps.add(VciBaseUtil.convertBean2Map(model)); + } catch (Exception e) { + throw new VciBaseException("绫诲瀷杞崲閿欒锛�" + e.getMessage()); + } + }); + try { + //娉ㄦ剰姝ゅ鏇存柊鎴愬姛鏄繑鍥炵殑-1 + commonsMapper.updateBatchByBaseModel(listR.getData().get(0).getTableName(), maps); + }catch (Exception e){ + return R.fail("鏇存柊澶辫触锛�"+e.getMessage()); + } + + return R.success("鏇存柊鎴愬姛锛�"); + } } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml index 7aee99d..9f357d7 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml @@ -37,4 +37,18 @@ </foreach> </insert> + <update id="updateBatchByBaseModel" parameterType="java.util.List" > + BEGIN + <foreach collection="mapList" item="columnMap" index="index" separator=";"> + update ${tableName} + <set> + <foreach collection="columnMap" item="value" index="key" separator=","> + ${key} = #{value} + </foreach> + </set> + where oid = #{columnMap.oid} + </foreach>; + END; + </update > + </mapper> -- Gitblit v1.9.3