From 802f66b88ace684090611382f26effdf340fa00c Mon Sep 17 00:00:00 2001 From: 康东 <98470202+kangdong59@users.noreply.github.com> Date: 星期二, 20 六月 2023 14:13:48 +0800 Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs --- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmIOService.java | 2 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java | 30 +++- Source/UBCS-WEB/src/util/func.js | 14 ++ Source/UBCS-WEB/src/views/MasterData/items.vue | 2 Source/UBCS-WEB/vue.config.js | 7 Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java | 2 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml | 9 + Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java | 4 Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue | 2 Source/UBCS-WEB/src/components/FormTemplate/index.vue | 267 +++++++++++++++++++++++++++++++++++-- Source/UBCS-WEB/src/api/batchImport/index.js | 11 + Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue | 30 ++- Source/UBCS-WEB/src/views/MasterData/FormTempalteTest.vue | 5 Source/UBCS-WEB/src/components/BatchImport/index.vue | 7 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java | 2 15 files changed, 342 insertions(+), 52 deletions(-) diff --git a/Source/UBCS-WEB/src/api/batchImport/index.js b/Source/UBCS-WEB/src/api/batchImport/index.js index f48426a..69c3f05 100644 --- a/Source/UBCS-WEB/src/api/batchImport/index.js +++ b/Source/UBCS-WEB/src/api/batchImport/index.js @@ -6,7 +6,8 @@ return request({ url: '/api/ubcs-code/mdmEngineController/downloadImportExcelHistory', method: 'get', - params + params, + responseType: 'blob' }) } // 涓嬭浇閿欒鏃ュ織 @@ -16,4 +17,12 @@ method: 'get', params }) +} +// 瀵煎叆鏁版嵁灞曠ず +export const importDataShow = (redisOid) => { + return request({ + url: '/api/ubcs-code/mdmEngineController/gridclassifys', + method: 'get', + params: {redisOid: redisOid + "-class"} + }) } \ No newline at end of file diff --git a/Source/UBCS-WEB/src/components/BatchImport/index.vue b/Source/UBCS-WEB/src/components/BatchImport/index.vue index a5bacf6..c94a9ed 100644 --- a/Source/UBCS-WEB/src/components/BatchImport/index.vue +++ b/Source/UBCS-WEB/src/components/BatchImport/index.vue @@ -53,6 +53,7 @@ import { downloadHistoryImportTemplate, downloadErrorFile, + importDataShow } from "../../api/batchImport/index"; import { getToken } from "@/util/auth"; export default { @@ -69,7 +70,7 @@ }, codeClassifyOid: { type: String, - default: "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B", + default: "", }, type: { type: String, @@ -124,11 +125,11 @@ downloadTemplateFun() { this.downloadLoading = true; downloadHistoryImportTemplate({ - codeClassifyOid: "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B", + codeClassifyOid: this.codeClassifyOid, }) .then((res) => { this.downloadLoading = false; - console.log(res); + this.$utilFunc.downloadFileByBlob(res.data, "鍘嗗彶鏁版嵁瀵煎叆妯℃澘.xls"); }) .catch(() => { this.downloadLoading = false; diff --git a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue index b17dbae..f895fb8 100644 --- a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue +++ b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue @@ -34,7 +34,7 @@ <el-button plain size="small" type="primary">鏌ョ湅娴佺▼鍘嗗彶</el-button> <el-button plain size="small" type="primary">鍒犻櫎</el-button> <el-button plain size="small" type="primary" @click="setHandler">鍙戝竷</el-button> - <set-personnel :visible.sync="visibleFlow" :parameter="parameter" + <set-personnel :visible.sync="visibleFlow" :parameter="this.parameter" ></set-personnel> <el-button plain size="small" type="primary" @click="DataChange">鏁版嵁鏇存敼</el-button> <FormTemplateDialog @@ -150,6 +150,7 @@ }, templateOid: { type: String, + default:'' }, tableHeadDataFateher: { type: Array, @@ -168,8 +169,8 @@ similarVisible:false, //鍙戝竷 parameter:{ - ids:['0000','22222222'], - code:this.templateOid, + ids:[], + code:'', type:'PUBLIC', template:'妯℃澘template' }, @@ -180,7 +181,6 @@ label: 'name' }, tableHeadFindDatas:[], - templateOid: "", addvisible: false, editvisible: false, findvisible: false, @@ -213,11 +213,9 @@ }, computed: {}, created() { - // this.CrudHeaderRend(); - // this.tableHeadHandle() + }, mounted() { - }, activated() { this.doLayout() @@ -245,13 +243,21 @@ this.page.total = newval; } }, + templateOid:{ + handler(newval,oldval) { + this.parameter.code=newval; + }, + deep:true + } }, methods: { setHandler() { - this.visibleFlow = true; - }, - huishouHandler() { + if (this.selectRow.length <= 0) { + this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�') + } else { + this.visibleFlow = true; + } }, openD() { this.dialogPush = true; @@ -386,6 +392,10 @@ } this.selectRow = row; console.log(row) + row.forEach(item=>{ + this.parameter.ids.push(item.oid) + console.log( this.parameter.ids) + }) }, //缂栬緫 editHandler() { diff --git a/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue b/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue index acb2ed6..c8ab6a3 100644 --- a/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue +++ b/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue @@ -712,7 +712,7 @@ if(data.field){ this.form[data.field]=data.value || ''; this.form[data.showField]=data.text || ''; - this.$emit("getFormData", this.form); + this.$emit("referConfigDataUpdate", data); } } }, diff --git a/Source/UBCS-WEB/src/components/FormTemplate/index.vue b/Source/UBCS-WEB/src/components/FormTemplate/index.vue index b910397..a908408 100644 --- a/Source/UBCS-WEB/src/components/FormTemplate/index.vue +++ b/Source/UBCS-WEB/src/components/FormTemplate/index.vue @@ -30,7 +30,7 @@ " > <el-tabs v-model="activeName" type="border-card" @tab-click="handleClick"> - <el-tab-pane label="鐮佸�肩敵璇�" name="codeApply" v-if="showCodeApply"> + <el-tab-pane label="鐮佸�肩敵璇�" name="codeApply"> <FormTempalte v-bind="$attrs" :type="type" @@ -38,6 +38,7 @@ :selfColumnConfig="selfColumnConfig" ref="CodeApply" @getFormData="getFormData" + @referConfigDataUpdate="referConfigDataUpdate" ></FormTempalte> </el-tab-pane> <el-tab-pane @@ -59,9 +60,9 @@ </div> <div class="avue-dialog__footer" v-if="type !== 'detail'"> <el-button @click="close()">鍙� 娑�</el-button> - <el-button @click="submit()" type="primary" :loading="submitBtnLoading" - >{{ submitText }}</el-button - > + <el-button @click="submit()" type="primary" :loading="submitBtnLoading">{{ + submitText + }}</el-button> <el-button @click="resembleQuerySubmit" type="primary" @@ -107,8 +108,8 @@ }, submitText: { type: String, - default: '纭� 瀹�' - } + default: "纭� 瀹�", + }, }, data() { return { @@ -132,6 +133,8 @@ required: this.isRequired, dicData: this.getOptionList, type: this.getType, + referConfig: this.getReferConfig, + readOnly: this.getDisabled, }, exchange: { text: "name", @@ -167,7 +170,7 @@ methods: { openDialog() { this.getFormTemplate(); - if (this.type === 'add') { + if (this.type === "add") { this.getCodeRule(); } }, @@ -188,8 +191,8 @@ res.data.resembleTableVO.cols.length > 0; this.resembleTableColumn = res.data.resembleTableVO.cols || []; if (this.hasResemble) { - this.activeName = 'resembleQuery' - this.showResembleQuery = true + this.activeName = "resembleQuery"; + this.showResembleQuery = true; } this.$refs.FormTempalte.templateRender(res.data.formDefineVO.items); } @@ -209,16 +212,179 @@ "codevariablesec", "coderefersec", ]; - this.secVOList = (res.data.data.secVOList || []).filter((item) => - typeList.includes(item) - ); + + this.secVOList = [ + { + btmname: "codebasicsec", + checkInBy: "", + checkInTime: null, + checkOutBy: "", + checkOutTime: null, + codeDateFormatStr: "", + codeFillFlag: "", + codeFillLength: "", + codeFillLimit: 0, + codeFillSeparator: "", + codeFillType: "", + codeFillTypeText: "", + codeGetValueType: "", + codeGetValueTypeText: "", + codeLevelType: "", + codeLevelTypeText: "", + codeLevelValue: 0, + codeSecLength: "10", + codeSecLengthType: "code_sec_length_variable", + codeSecLengthTypeText: "", + componentCodeFlag: "false", + copyFromVersion: "", + createTime: "2023-06-06 14:10:27.000", + creator: "1", + customCodeSerialClass: "", + data: null, + description: "", + displayFlag: "false", + filterSql: "", + firstR: "1", + firstV: "1", + fixedValueVOList: null, + getValueClass: "", + id: "0001", + lastModifier: "1", + lastModifyTime: "2023-06-06 14:10:27.000", + lastR: "1", + lastV: "1", + lcStatus: "Exist", + lcStatusText: "瀛樺湪", + lctid: "defaultLC", + matchClassifyValueFlag: "false", + name: "鍒嗙被鐮佹鐖�", + nameOid: "C2998D32-E89E-6D41-0782-88E97E9EC65B", + nullableFlag: "false", + oid: "1668926002119708672", + orderNum: 1, + owner: "1", + parentClassifySecOid: "", + parentClassifySecText: "", + pkCodeRule: "B4766355-E4E1-490A-833B-D5AB73E9B877", + referAttributeId: "", + referAttributeName: "", + referBtmId: "", + referBtmName: "", + referCodeClassifyOid: "", + referCodeClassifyOidName: "", + referConfig: "", + referValueInfo: "", + revisionOid: "F0049108-6AAE-EAAD-BC76-E6714C2B8F2A", + revisionRule: "", + revisionSeq: 1, + revisionValue: "", + secretGrade: null, + secretGradeText: "", + sectype: "codeclassifysec", + sectypeText: "鍒嗙被鐮佹", + serialDependFlag: "false", + serialDependOrder: 0, + serialStart: "", + serialStep: 0, + ts: "2023-06-06 14:10:27.716", + valueCutLength: 0, + valueCutType: "", + valueCutTypeText: "", + versionRule: "0", + versionSeq: 1, + versionValue: "1", + }, + { + btmname: "codebasicsec", + checkInBy: "", + checkInTime: null, + checkOutBy: "", + checkOutTime: null, + codeDateFormatStr: "", + codeFillFlag: "", + codeFillLength: "", + codeFillLimit: 0, + codeFillSeparator: "", + codeFillType: "", + codeFillTypeText: "", + codeGetValueType: "", + codeGetValueTypeText: "", + codeLevelType: "", + codeLevelTypeText: "", + codeLevelValue: 0, + codeSecLength: "10", + codeSecLengthType: "code_sec_length_variable", + codeSecLengthTypeText: "", + componentCodeFlag: "false", + copyFromVersion: "", + createTime: "2023-06-06 14:10:50.000", + creator: "1", + customCodeSerialClass: "", + data: null, + description: "", + displayFlag: "false", + filterSql: "", + firstR: "1", + firstV: "1", + fixedValueVOList: null, + getValueClass: "", + id: "000101", + lastModifier: "1", + lastModifyTime: "2023-06-06 14:10:50.000", + lastR: "1", + lastV: "1", + lcStatus: "Exist", + lcStatusText: "瀛樺湪", + lctid: "defaultLC", + matchClassifyValueFlag: "false", + name: "鍒嗙被鐮佹瀛�", + nameOid: "1FDB20E3-9F68-A5B0-D097-2142EA054F9B", + nullableFlag: "false", + oid: "00AD9FE0-A31D-7962-10DF-DC6115EF80A5", + orderNum: 2, + owner: "1", + parentClassifySecOid: "1668926002119708672", + parentClassifySecText: "鍒嗙被鐮佹", + pkCodeRule: "B4766355-E4E1-490A-833B-D5AB73E9B877", + referAttributeId: "", + referAttributeName: "", + referBtmId: "", + referBtmName: "", + referCodeClassifyOid: "", + referCodeClassifyOidName: "", + referConfig: "", + referValueInfo: "", + revisionOid: "95183EF9-C9AD-2941-1C99-9E9024330D40", + revisionRule: "", + revisionSeq: 1, + revisionValue: "", + secretGrade: null, + secretGradeText: "", + sectype: "codeclassifysec", + sectypeText: "鍒嗙被鐮佹", + serialDependFlag: "false", + serialDependOrder: 0, + serialStart: "", + serialStep: 0, + ts: "2023-06-06 14:10:50.084", + valueCutLength: 0, + valueCutType: "", + valueCutTypeText: "", + versionRule: "0", + versionSeq: 1, + versionValue: "1", + }, + ]; + // this.secVOList = (res.data.data.secVOList || []).filter((item) => + // typeList.includes(item) + // ); this.$nextTick(() => { - if (this.secVOList.length > 0 && this.type === 'add') { - this.showCodeApply = true - this.activeName = 'codeApply' + if (this.secVOList.length > 0 && this.type === "add") { + this.showCodeApply = true; + this.activeName = "codeApply"; this.$refs.CodeApply.templateRender(this.secVOList); } else { - this.showCodeApply = false + this.showCodeApply = false; } }); } @@ -226,6 +392,17 @@ }, getFormData(form) { this.form = form; + }, + // 鍙傜収缁勪欢鏁版嵁鍙樻洿 + referConfigDataUpdate(data) { + const { field } = data; + this.secVOList = this.secVOList.map((item) => { + if (item.parentClassifySecOid === field) { + this.$refs.CodeApply.form[item.oid] = undefined; + this.$refs.CodeApply.form[item.name] = undefined; + } + }); + this.$refs.CodeApply.templateRender(); }, resembleQuerySubmit() { this.activeName = "resembleQuery"; @@ -271,6 +448,64 @@ getType(item) { return this.selfColumnType[item.sectype]; }, + getReferConfig(item) { + let params = {}; + if (item.sectype == "codeclassifysec") { + params = { + isMuti: false, + type: "grid", + tableConfig: { + limit: -1, + cols: [ + { + field: "id", + title: "鑻辨枃鍚嶇О", + sort: true, + width: 150, + }, + { + field: "name", + title: "涓枃鍚嶇О", + sort: true, + width: 150, + }, + { + field: "description", + title: "鎻忚堪", + width: 250, + }, + ], + queryColumns: [ + { + field: "id", + title: "鑻辨枃鍚嶇О", + }, + { + field: "name", + title: "涓枃鍚嶇О", + }, + ], + }, + url: "api/ubcs-code/ubcs-code/mdmEngineController/listCodeClassifyValueBySecOid", + extraParams: { + classifySecOid: item.oid, + parentClassifyValueOid: "", + }, + }; + } + return item.referConfig || params; + }, + getDisabled(item) { + if (item.sectype === "codeclassifysec") { + if (item.parentClassifySecOid) { + if (!this.form[item.parentClassifySecOid]) { + return true; + } else { + return false; + } + } + } + }, isRequired(item) { return item.nullableFlag != "true"; }, diff --git a/Source/UBCS-WEB/src/util/func.js b/Source/UBCS-WEB/src/util/func.js index 12f731b..1a95b3b 100644 --- a/Source/UBCS-WEB/src/util/func.js +++ b/Source/UBCS-WEB/src/util/func.js @@ -110,4 +110,18 @@ static isValuableObj(value) { return typeof value === 'object' && value !== null && Object.keys(value).length > 0; } + /** + * 鑾峰彇娴佹枃浠惰繘琛屾枃浠朵笅 + * @param value + * @returns {Boolean} + */ + static downloadFileByBlob(blobData, name) { + const url = URL.createObjectURL(blobData); // 鐢熸垚涓嬭浇閾炬帴 + const link = document.createElement("a"); + link.href = url; + link.download = name; // 鎸囧畾鏂囦欢鍚嶅拰鏍煎紡 + document.body.appendChild(link); // 娣诲姞涓嬭浇閾炬帴鍒伴〉闈� + link.click(); // 瑙﹀彂涓嬭浇 + document.body.removeChild(link); //鍒犻櫎涓嬭浇 + } } diff --git a/Source/UBCS-WEB/src/views/MasterData/FormTempalteTest.vue b/Source/UBCS-WEB/src/views/MasterData/FormTempalteTest.vue index efffed5..1443fdc 100644 --- a/Source/UBCS-WEB/src/views/MasterData/FormTempalteTest.vue +++ b/Source/UBCS-WEB/src/views/MasterData/FormTempalteTest.vue @@ -26,6 +26,7 @@ :visible="visible3" type="historyImport" :downloadTemplateFun="downloadTemplateFun" + :codeClassifyOid="codeClassifyOid" ></BatchImport> <fileInHtml :options="{}"></fileInHtml> <fileinDialog @@ -53,9 +54,9 @@ // 榛樿绂佺敤鐨勮〃鍏冪礌 disabledProp: ["id", "lcstatus"], // 琛ㄥ崟绫诲瀷 - type: "edit", + type: "add", templateOid: "f441b131-5ea0-4672-ab74-735b11161928", - codeClassifyOid: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96", + codeClassifyOid: "535FC9B6-FE27-241F-5FCA-ED4DC17CF95B", codeRuleOid: "B95872A6-9CEA-D490-8F1B-9D26548CAF96", rowOid: "551FBA49-9A94-2F83-9126-9DD4F9BB14B5", }; diff --git a/Source/UBCS-WEB/src/views/MasterData/items.vue b/Source/UBCS-WEB/src/views/MasterData/items.vue index e6b5d52..0ca87ed 100644 --- a/Source/UBCS-WEB/src/views/MasterData/items.vue +++ b/Source/UBCS-WEB/src/views/MasterData/items.vue @@ -62,7 +62,6 @@ methods:{ codeClassifyOidList(val){ this.codeClassifyOid=val; - console.log(val) }, coderuleoidList(val){ this.coderuleoid=val; @@ -87,7 +86,6 @@ }, nodeClick(val){ this.templateOid=val; - console.log('val',val) this.isLoading=true; setTimeout(() => { this.isLoading = false; diff --git a/Source/UBCS-WEB/vue.config.js b/Source/UBCS-WEB/vue.config.js index 1a031f6..22b7880 100644 --- a/Source/UBCS-WEB/vue.config.js +++ b/Source/UBCS-WEB/vue.config.js @@ -26,12 +26,13 @@ proxy: { '/api': { //鏈湴鏈嶅姟鎺ュ彛鍦板潃 - target: 'http://localhost:37000', + // target: 'http://localhost:37000', + // target: 'http://localhost:37000', // target: 'http://192.168.1.51:37000', - // target: 'http://192.168.1.46:37000', + target: 'http://192.168.1.46:37000', // target: 'http://dev.vci-tech.com:37000', // target: 'http://192.168.1.51:37000/', - // target: 'http://192.168.1.104:37000', + // target: 'http://192.168.1.104:37000', // target: 'http://192.168.1.63:37000', //target: 'http://192.168.3.7:37000', // target: 'http://dev.vci-tech.com:37000', diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java index 72c68e0..f43e99d 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java +++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java @@ -869,7 +869,7 @@ } public static String getTableName(String btmname) { - return (VciQueryWrapperForDO.USER_TABLE_COMPATIBILITY ? "pl_code_" : "vcibt_") + btmname.trim().toLowerCase(); + return (VciQueryWrapperForDO.USER_TABLE_COMPATIBILITY ? "vcibt_" : "pl_code_") + btmname.trim().toLowerCase(); } public static Field getTsField(Class c) { diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java index d0fa083..f6ecf27 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java @@ -90,7 +90,7 @@ * @param oid 鍒嗙被鐨勪富閿� * @return 鏁版嵁闆嗗悎 */ - List<CodeClassify> selectAllLevelChildHasPath(@Param("oid") String oid); + List<CodeClassify> selectAllLevelChildHasPath(@Param("oid") String oid,@Param("fieldInPath")String fieldInPath); @MapKey("OID") diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmIOService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmIOService.java index 2147bf2..3ae08fb 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmIOService.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/MdmIOService.java @@ -58,7 +58,7 @@ * @param file excel鏂囦欢鐨勪俊鎭� * @return 鏈夐敊璇俊鎭殑excel */ - CodeImProtRusultVO batchImportHistoryData(String codeClassifyOid,String classifyAttr, File file); + CodeImProtRusultVO batchImportHistoryData(String codeClassifyOid,String classifyAttr, File file) throws Throwable; /*** * 浠巖edis缂撳瓨閲岃幏鍙栧埌瀵煎叆鐨勬暟鎹� * @param codeClassifyOid diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java index feb23b2..a943f7b 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java @@ -662,7 +662,7 @@ @Override public List<CodeClassifyVO> listChildrenClassify(String codeClassifyOid, boolean allLevel, String fieldInPath, boolean enable) { if(allLevel){ - List<CodeClassify> classifyDOS = codeClassifyMapper.selectAllLevelChildHasPath(codeClassifyOid); + List<CodeClassify> classifyDOS = codeClassifyMapper.selectAllLevelChildHasPath(codeClassifyOid,fieldInPath); if(!CollectionUtils.isEmpty(classifyDOS)){ classifyDOS = classifyDOS.stream().filter(s->FRAMEWORK_DATA_ENABLED.equalsIgnoreCase(s.getLcStatus())).collect(Collectors.toList()); } @@ -782,7 +782,7 @@ Map<String/**璺緞**/,String/**涓婚敭**/> oidPathMap = new HashMap<>(); //鎴戜滑闇�瑕佹煡璇㈡墍鏈夊凡缁忓瓨鍦ㄧ殑鍒嗙被锛屼富瑕佹槸璺緞锛岀敤鏉ュ垽鏂垎绫荤殑鏁版嵁 - List<CodeClassify> existClassifyDOs = codeClassifyMapper.selectAllLevelChildHasPath(""); + List<CodeClassify> existClassifyDOs = codeClassifyMapper.selectAllLevelChildHasPath("",null); Map<String/**璺緞**/, CodeClassify/**宸茬粡瀛樺湪鐨勬暟鎹�**/> pathDOMap = Optional.ofNullable(existClassifyDOs).orElse(new ArrayList<>()).stream().collect(Collectors.toMap(s -> { String path = s.getPath(); if(StringUtils.isNotBlank(path) && path.startsWith("#")){ diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java index f5714e3..c324801 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java @@ -759,7 +759,7 @@ * @return 鏈夐敊璇俊鎭殑excel */ @Override - public CodeImProtRusultVO batchImportHistoryData(String codeClassifyOid, String classifyAttr,File file) { + public CodeImProtRusultVO batchImportHistoryData(String codeClassifyOid, String classifyAttr,File file) throws Throwable{ VciBaseUtil.alertNotNull(codeClassifyOid,"鍒嗙被鐨勪富閿�"); ReadExcelOption reo = new ReadExcelOption(); reo.setReadAllSheet(true); @@ -2978,21 +2978,35 @@ * @param cboList 鏁版嵁鐨勫垪琛� * @param errorMap 閿欒鐨勪俊鎭� */ - private void batchCheckIdExistOnOrder(CodeClassifyTemplateVO templateVO,List<ClientBusinessObject> cboList,Map<String ,String> errorMap){ + private void batchCheckIdExistOnOrder(CodeClassifyTemplateVO templateVO,List<ClientBusinessObject> cboList,Map<String ,String> errorMap) throws Throwable{ List<String> existIds = new ArrayList<>(); + String tableName =""; + try { + R<BtmTypeVO> r = btmTypeClient.getAllAttributeByBtmId(templateVO.getBtmTypeId()); + if(r.getCode()!=200) { + throw new Throwable(r.getMsg()); + } + BtmTypeVO btmTypeVO = r.getData(); + if (btmTypeVO == null) { + throw new Throwable("鏍规嵁涓氬姟绫诲瀷鏈煡璇㈠埌涓氬姟绫诲瀷瀵硅薄锛�"); + } + tableName = btmTypeVO.getTableName(); + if (StringUtils.isBlank(tableName)) { + throw new Throwable("鏍规嵁涓氬姟绫诲瀷鏈煡璇㈠埌涓氬姟绫诲瀷鐩稿叧鑱旂殑琛�"); + } + }catch (Throwable e){ + throw e; + } + String finalTableName = tableName; VciBaseUtil.switchCollectionForOracleIn(cboList).stream().forEach(cbos -> { Map<String, String> conditionMap = new HashMap<>(); conditionMap.put("id", QueryOptionConstant.IN + "(" + VciBaseUtil.toInSql(cbos.stream().map(s -> s.getId()).collect(Collectors.toSet()).toArray(new String[0])) + ")"); - R<BtmTypeVO> r= btmTypeClient.getDetail(templateVO.getBtmTypeId()); - BtmTypeVO btmTypeVO =r.getData(); - String tableName=btmTypeVO.getTableName(); - StringBuffer sb=new StringBuffer(); sb.append(" select id from "); - sb.append(tableName); + sb.append(finalTableName); sb.append(" where 1=1 "); - sb.append(" id in ("); + sb.append(" and id in ("); sb.append(VciBaseUtil.toInSql(cbos.stream().map(s -> s.getId()).collect(Collectors.toSet()).toArray(new String[0]))); sb.append(")"); List<String> idList= commonsMapper.selectById(sb.toString()); diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml index b9be386..ee1922b 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml @@ -122,7 +122,14 @@ codekeyattrrepeatoid.name as codeKeyAttrRepeatOidName, coderesembleruleoid.name as codeResembleRuleOidName, level as datalevel, - SYS_CONNECT_BY_PATH(codeclassify0.id, '#') as path + <choose> + <when test='fieldInPath=="name"'> + SYS_CONNECT_BY_PATH(codeclassify0.name, '#') as path + </when> + <otherwise> + SYS_CONNECT_BY_PATH(codeclassify0.id, '#') as path + </otherwise> + </choose> from pl_code_classify codeclassify0 left join pl_code_rule coderuleoid on codeclassify0.codeRuleOid = coderuleoid.oid -- Gitblit v1.9.3