From 75007678d3d1c03d8a6b99bd84332e7ad91f38fd Mon Sep 17 00:00:00 2001 From: weidy <lastanimals@163.com> Date: 星期五, 09 六月 2023 18:32:42 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS-WEB/src/views/integration/applicationForm.vue | 42 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyTemplateAttrMapper.java | 7 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemService.java | 2 Source/UBCS-WEB/src/views/integration/systemInfo.vue | 224 ++++ Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateAttrServiceImpl.java | 8 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LinkTypeServiceImpl.java | 2 Source/UBCS-WEB/src/api/integration/application.js | 10 Source/UBCS-WEB/src/api/GetItem.js | 2 Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue | 1 Source/UBCS-WEB/vue.config.js | 6 Source/UBCS-WEB/src/api/template/templateAttr.js | 10 Source/UBCS-WEB/src/api/integration/sysInfo.js | 34 Source/UBCS-WEB/src/views/modeling/Version.vue | 57 Source/UBCS/ubcs-service/ubcs-omd/pom.xml | 6 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java | 11 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IRevisionRuleService.java | 6 Source/UBCS-WEB/src/views/modeling/LinkTypeAdd.vue | 6 Source/UBCS/ubcs-service/ubcs-code/pom.xml | 12 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeResembleRuleServiceImpl.java | 53 + Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeClassifyTemplateAttrMapper.xml | 8 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CommonsMapper.java | 2 Source/UBCS-WEB/src/views/MasterData/items.vue | 15 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeResembleRule.java | 110 ++ Source/UBCS-WEB/src/views/modeling/Versionpackage.vue | 128 +- Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java | 58 + Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/AttributeMapper.xml | 3 Source/UBCS-WEB/src/components/FormTemplate/ResembleQuery.vue | 2 Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue | 21 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml | 4 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/LinkTypeWrapper.java | 1 Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/MenuServiceImpl.java | 8 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyMapper.java | 15 Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/IMenuService.java | 9 Source/UBCS-WEB/src/views/modeling/LinkType.vue | 13 Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/RevisionRuleServiceImpl.java | 12 Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/mapper/MenuMapper.java | 6 Source/UBCS-WEB/src/components/Tree/classifyTrees.vue | 62 + Source/UBCS-WEB/src/components/Crud/Crud.vue | 89 + Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/RevisionRuleController.java | 12 Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml | 9 Source/UBCS-WEB/src/api/omd/revisionRule.js | 18 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java | 14 Source/UBCS-WEB/src/views/modeling/Business.vue | 8 Source/UBCS-WEB/src/components/Master/MasterTree.vue | 54 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java | 65 + Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/feign/ISysClient.java | 10 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeCLassifyMapper.xml | 56 + Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java | 34 Source/UBCS-WEB/src/views/modeling/classifyTree.vue | 30 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeResembleRuleMapper.java | 20 Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeResembleRule.xml | 40 Source/UBCS-WEB/src/views/modeling/original.vue | 411 ++++----- Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue | 22 Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/feign/SysClient.java | 10 Source/UBCS-WEB/src/views/modeling/status.vue | 12 Source/UBCS-WEB/src/components/FormTemplate/index.vue | 1 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java | 199 +++- Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/feign/ISysClientFallback.java | 5 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java | 93 + Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeResembleRuleService.java | 17 Source/UBCS-WEB/src/components/Tree/TemplatePro.vue | 4 Source/UBCS-WEB/src/components/Tree/attrCrud.vue | 476 ++++++++-- 62 files changed, 1,992 insertions(+), 693 deletions(-) diff --git a/Source/UBCS-WEB/src/api/GetItem.js b/Source/UBCS-WEB/src/api/GetItem.js index 91f6755..6f4b1ac 100644 --- a/Source/UBCS-WEB/src/api/GetItem.js +++ b/Source/UBCS-WEB/src/api/GetItem.js @@ -2,7 +2,7 @@ export const MasterTable =(params)=>{ return request({ - url: 'api/ubcs-code/ubcs-code//mdmEngineController/getUIInfoByClassifyOid', + url: 'api/ubcs-code/ubcs-code/mdmEngineController/getUIInfoByClassifyOid', method: 'get', params:{ ...params diff --git a/Source/UBCS-WEB/src/api/integration/application.js b/Source/UBCS-WEB/src/api/integration/application.js index d95b8a2..796aab9 100644 --- a/Source/UBCS-WEB/src/api/integration/application.js +++ b/Source/UBCS-WEB/src/api/integration/application.js @@ -7,4 +7,12 @@ method: 'get', params: params }) - } \ No newline at end of file + } + // 鐢抽鍗曠姸鎬� +export const queryApplyStat = (params) => { + return request({ + url: '/api/ubcs-applyjtcodeservice/DockingPreApplyCode/queryApplyState', + method: 'get', + params: params + }) +} \ No newline at end of file diff --git a/Source/UBCS-WEB/src/api/integration/sysInfo.js b/Source/UBCS-WEB/src/api/integration/sysInfo.js new file mode 100644 index 0000000..83449bc --- /dev/null +++ b/Source/UBCS-WEB/src/api/integration/sysInfo.js @@ -0,0 +1,34 @@ +import request from '@/router/axios'; + +// 闆嗘垚绯荤粺淇℃伅绠$悊鍒楄〃 +export const getSysInfoList = (params) => { + return request({ + url: '/api/ubcs-code/dockingManagement/gridSysIntBase', + method: 'get', + params: params + }) + } + // 闆嗘垚绯荤粺淇℃伅绠$悊鏂板 +export const sysInfoAdd = (params) => { + return request({ + url: '/api/ubcs-code/dockingManagement/addSave', + method: 'post', + data: params + }) +} + // 闆嗘垚绯荤粺淇℃伅绠$悊鏂板 + export const sysInfoEdit = (params) => { + return request({ + url: '/api/ubcs-code/dockingManagement/editSave', + method: 'put', + data: params + }) + } + // 闆嗘垚绯荤粺淇℃伅绠$悊鏂板 +export const sysInfoDel = (params) => { + return request({ + url: '/api/ubcs-code/dockingManagement/deleteDataById', + method: 'delete', + params: params + }) + } \ No newline at end of file diff --git a/Source/UBCS-WEB/src/api/omd/revisionRule.js b/Source/UBCS-WEB/src/api/omd/revisionRule.js index ac3ce70..19f0d6d 100644 --- a/Source/UBCS-WEB/src/api/omd/revisionRule.js +++ b/Source/UBCS-WEB/src/api/omd/revisionRule.js @@ -1,6 +1,10 @@ import request from '@/router/axios'; -export const getPage = (current,size,params) => { +var model = '/api/ubcs-omd'; +var controller = '/revision-rule'; + + +export const getPage = (current, size, params) => { return request({ url: '/api/ubcs-omd/revision-rule/page', method: 'get', @@ -62,7 +66,7 @@ }) } -export const refList = (currentPage,pageSize,params) => { +export const refList = (currentPage, pageSize, params) => { return request({ url: '/api/ubcs-omd/revision-rule/ref', method: 'get', @@ -72,4 +76,14 @@ pageSize } }) +} + +export const getAppayRange = (id) => { + return request({ + url: model + controller + '/get-apply-range', + method: 'get', + params: { + id + } + }) } \ No newline at end of file diff --git a/Source/UBCS-WEB/src/api/template/templateAttr.js b/Source/UBCS-WEB/src/api/template/templateAttr.js index 225cc20..d58256e 100644 --- a/Source/UBCS-WEB/src/api/template/templateAttr.js +++ b/Source/UBCS-WEB/src/api/template/templateAttr.js @@ -138,3 +138,13 @@ data:data }) } +//浠庝笟鍔$被鍨嬩腑閫夋嫨鏁版嵁 +export const AttrByBtm = (params) =>{ + return request({ + url:'/api/ubcs-code/codeClassifyTempAttrController/codeClassifyTemplateAttrByBtm', + method: 'get', + params:{ + ...params + } + }) +} diff --git a/Source/UBCS-WEB/src/components/Crud/Crud.vue b/Source/UBCS-WEB/src/components/Crud/Crud.vue index 6d66a84..c0be479 100644 --- a/Source/UBCS-WEB/src/components/Crud/Crud.vue +++ b/Source/UBCS-WEB/src/components/Crud/Crud.vue @@ -6,11 +6,10 @@ <FormTemplateDialog :visible.sync="addvisible" :type="add" - :templateOid="this.templateOids" - :codeClassifyOid="this.codeClassifyOids" + :templateOid="this.templateOid" + :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" :disabledProp="disabledProp" - :rowOid="rowOid" > </FormTemplateDialog></el-button> <el-button size="small" type="primary" plain @click="editvisible=true">缂栬緫 @@ -18,7 +17,7 @@ :visible.sync="editvisible" :type="edit" :templateOid="this.templateOids" - :codeClassifyOid="this.codeClassifyOids" + :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" :disabledProp="disabledProp" :rowOid="rowOid" @@ -32,8 +31,9 @@ <el-button size="small" type="primary" plain>鍙戝竷</el-button> <el-button size="small" type="primary" plain>鏁版嵁鏇存敼</el-button> <el-button size="small" type="primary" plain>鍥炴敹</el-button> - <el-button size="small" type="primary" plain>瀵煎嚭 - <transfer filter-placeholder="璇疯緭鍏ユ嫾闊冲叏鎷兼垨鑰呮嫾闊崇缉鍐�" ></transfer> + <el-button size="small" type="primary" plain @click="openD">瀵煎嚭 + <integration-transfer :visible.sync="dialogPush" :data="transferData" + :props="transferProps" @save="handelTransferSave"></integration-transfer> </el-button> <el-button size="small" type="primary" plain @click="findvisible=true">鏌ヨ <advancedQuery :visible.sync="findvisible" :options="this.options"></advancedQuery> @@ -88,7 +88,13 @@ </template> <script> import {MasterTable, TableData} from "@/api/GetItem"; +import {listCodeAttributeByClassId} from '@/api/integration/integration.js' +import integrationTransfer from '@/views/integration/integrationTransfer' +import pinyin from "js-pinyin"; export default { + components: { + integrationTransfer + }, name: "Crud.vue", props:{ page:{ @@ -108,17 +114,28 @@ tableDataArray:{ type:Array, default:[] + }, + total:{ + type:String, + default:"" + }, + tableHeadDataFateher:{ + type:Array, + default:[] } }, data() { return { + transferData:[], + transferProps: { + key: 'oid', + label: 'name' + }, templateOid:"", addvisible:false, editvisible:false, findvisible:false, - templateOids: "78B8C7C5-A042-0B96-FE6D-65421451782A", - codeClassifyOids: "4524E801-6CC6-92E8-1AC3-2AB9604E8F96", - codeRuleOid: "B95872A6-9CEA-D490-8F1B-9D26548CAF96", + dialogPush:false, rowOid: '6EF696C3-CD87-0E7C-1EA1-8DE3913A95C9', disabledProp: ["id"], editingRow:null, @@ -140,15 +157,16 @@ }, tableData:[], tableHeadData:[], + tableHeadDataFateher:[], items:{}, - aaa:"" + seniorQueryColumns:[] } }, computed:{ }, created() { - this.CrudHeaderRend(); - this.$emit('tableData',this.tableData) + // this.CrudHeaderRend(); + // this.tableHeadHandle() }, mounted() { @@ -167,11 +185,33 @@ tableDataArray:{ handler(newval,oldval){ this.tableData=newval; - this.CrudRend() + // + } + }, + total:{ + handler(newval,oldval){ + this.page.total=newval; + } + }, + tableHeadData:{ + handler(newval,oldval){ + this.tableHeadDataFateher=newval } } }, methods: { + openD(){ + this.dialogPush=true; + this.getListCodeByClassId() + }, + async getListCodeByClassId() { + this.transferData = [] + const response = await listCodeAttributeByClassId({ codeClassifyId: this.codeClassifyOid }) + if (response.status === 200) { + const data = response.data.data + this.transferData = data + } + }, rend(){ this.tableData=this.tableHeadData }, @@ -179,16 +219,21 @@ this.page.pageSize=val this.$emit('pageSize',val) this.CrudRend() + console.log(this.tableData) }, handleCurrentChange(val){ this.page.currentPage=val this.$emit('currentPage',val) this.CrudRend() + console.log(val) + console.log(this.tableData) }, // 鐩戝惉鍗曞厓鏍肩偣鍑讳簨浠跺苟瀛樺偍姝e湪缂栬緫鐨勮 handleCellClick(row, column) { this.editingRow = row; this.editShow = column.property; + console.log(row) + this.rowOid=row.oid }, //鍒犻櫎 enumDeleteRow(row) { @@ -203,6 +248,21 @@ this.$nextTick(() => { this.$refs.crud.doLayout(); }); + }, + tableHeadHandle(){ + this.options=this.tableHeadDataFateher.tableDefineVO.seniorQueryColumns + this.List = this.tableHeadDataFateher.tableDefineVO.cols[0]; + this.List.forEach(item => { + let columnItem = { + label: item.title, + prop: item.field, + type: this.columnType[item.type], + sortable: item.sort, + width: item.minWidth + }; + this.option.column.push(columnItem); + this.option.column=this.tableHeadData; + }) }, //琛ㄦ牸澶存覆鏌� CrudHeaderRend() { @@ -225,6 +285,7 @@ this.option.column=this.tableHeadData; this.templateOid=res.data.tableDefineVO.oid this.$emit('templateOid',this.templateOid) + console.log(this.templateOid) }) }) } @@ -235,7 +296,7 @@ templateOid: this.templateOid, codeClassifyOid: this.codeClassifyOid, page: this.page.currentPage, - limit:this.page.pageSize, + limit: this.page.pageSize, }).then(res => { this.page.total = res.data.total; this.data = res.data.data; diff --git a/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue b/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue index 6afac39..c8e5b43 100644 --- a/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue +++ b/Source/UBCS-WEB/src/components/FormTemplate/FormTempalte.vue @@ -564,9 +564,6 @@ placeholder: formItem.inputTip, options:formItem.referConfig }:{}, - change: () => { - this.changeFun(formItem.displayExtension, formItem.prop); - }, span: formItem.type === "textarea" ? 24 : this.trendsSpan, rules: [ { @@ -597,7 +594,9 @@ this.$set(this.option, "column", column); this.$set(this.option, "group", group); this.formIndex++; - this.loading = false; + if (this.type === 'add') { + this.loading = false; + } this.geDictData(dictKeys); this.getFormDetail(); }, @@ -646,11 +645,6 @@ return val; } }, - changeFun(displayExtension, prop) { - // executeCode({displayExtension, data: this.form}).then(res => { - // this.form[prop] = res.data.data - // }) - }, // 鑾峰彇swich鍜屽凡鎷垮埌鐨勪笅鎷夋暟鎹� getDataList(type, dicData) { if (type === "truefalse") { @@ -692,8 +686,7 @@ // 琛ㄥ崟鏍¢獙 validate() { return new Promise((resolve) => { - this.$refs.form.validate((valid, done, msg) => { - console.error(msg, valid); + this.$refs.form.validate((valid, done) => { if (valid) { done(); resolve(true); @@ -706,11 +699,10 @@ // 鑾峰彇琛ㄥ崟璇︽儏鏁版嵁 getFormDetail() { if (this.type === 'add') return - if (this.type === "add") return; - getFormDetail({ templateOid: this.templateOid, oid: '213D13D5-76D3-6B42-0932-705693F6B6E4' }).then( + getFormDetail({ templateOid: this.templateOid, oid: this.rowOid }).then( (res) => { - this.form = Object.assign(this.form, res.obj) - console.log(res, "res"); + this.form = Object.assign(this.form, res.data.data[0]) + this.loading = false; } ); }, diff --git a/Source/UBCS-WEB/src/components/FormTemplate/ResembleQuery.vue b/Source/UBCS-WEB/src/components/FormTemplate/ResembleQuery.vue index 3891fc5..da90c5c 100644 --- a/Source/UBCS-WEB/src/components/FormTemplate/ResembleQuery.vue +++ b/Source/UBCS-WEB/src/components/FormTemplate/ResembleQuery.vue @@ -144,7 +144,7 @@ openFormTemlpate(row) { this.resembleTemplateOid = row.codetemplateoid this.resembleCodeClassifyOid = row.codeClassifyOid - this.rowOid = row.iod + this.rowOid = row.oid this.formTemplateVisible = true; }, getDefaultValueAndFormValues(form) { diff --git a/Source/UBCS-WEB/src/components/FormTemplate/index.vue b/Source/UBCS-WEB/src/components/FormTemplate/index.vue index 3977502..a5e99a0 100644 --- a/Source/UBCS-WEB/src/components/FormTemplate/index.vue +++ b/Source/UBCS-WEB/src/components/FormTemplate/index.vue @@ -1,6 +1,7 @@ <template> <el-dialog :visible.sync="dialogVisible" + v-if="dialogVisible" v-dialogDrag top="0vh" :title="title" diff --git a/Source/UBCS-WEB/src/components/Master/MasterTree.vue b/Source/UBCS-WEB/src/components/Master/MasterTree.vue index e6f5bd5..c24335f 100644 --- a/Source/UBCS-WEB/src/components/Master/MasterTree.vue +++ b/Source/UBCS-WEB/src/components/Master/MasterTree.vue @@ -9,7 +9,7 @@ <script> import {getTreeList} from "@/api/MasterData/master"; import {mapMutations, mapState} from "vuex"; -import {TableData} from "@/api/GetItem"; +import {TableData,MasterTable} from "@/api/GetItem"; export default { name: "MasterTree", @@ -29,6 +29,8 @@ }, data(){ return{ + tableHeadDataFateher:[], + templateOids:"", tableDataArray:[], codeClassifyOid:"", coderuleoid:"", @@ -80,6 +82,7 @@ this.coderuleoid=res.data[0].attributes.coderuleoid; this.$emit("codeClassifyOid", this.codeClassifyOid ) this.$emit("coderuleoid", this.coderuleoid ) + this.TableHeadRends() }).catch(res=>{ console.log(res) }) @@ -97,23 +100,52 @@ } } }, - //鏍戠偣鍑讳簨浠� - nodeClick(data){ - this.nodeClickList = data; - console.log(this.currentPage,this.pageSize) + //琛ㄦ牸鍒锋柊 + TableRend(){ TableData({ - templateOid: this.templateOid, - codeClassifyOid: this.codeClassifyOid, - page: this.pageSize, - limit:this.currentPage, + templateOid: this.templateOids, + codeClassifyOid: this.nodeClickList.oid, + page: this.currentPage, + limit: this.pageSize, }).then(res => { - console.log(res) // this.page.total = res.data.total; // this.data = res.data.data; this.tableDataArray=res.data.data; this.$emit('tableDataArray',this.tableDataArray) - console.log(this.tableDataArray) + this.$emit('total',res.data.total) }) + }, + //琛ㄦ牸澶撮儴 + TableHeadRend(){ + MasterTable({ + codeClassifyOid:this.nodeClickList.oid, + functionId: 5, + }).then(res=>{ + this.tableHeadDataFateher=res.data; + this.templateOids=res.data.tableDefineVO.oid + this.$emit("tableHeadDataFateher",this.tableHeadDataFateher) + console.log("123",res) + }) + }, + TableHeadRends(){ + MasterTable({ + codeClassifyOid:this.codeClassifyOid, + functionId: 5, + }).then(res=>{ + this.tableHeadDataFateher=res.data; + this.templateOids=res.data.tableDefineVO.oid + this.$emit("tableHeadDataFateher",this.tableHeadDataFateher) + console.log("123",res) + }) + }, + //鏍戠偣鍑讳簨浠� + nodeClick(data){ + this.nodeClickList = data; + this.TableHeadRend() + this.TableRend() + console.log('code',this.nodeClickList.oid) + console.log('teoid',this.templateOids) + console.log() } } } diff --git a/Source/UBCS-WEB/src/components/Tree/TemplatePro.vue b/Source/UBCS-WEB/src/components/Tree/TemplatePro.vue index 67047ed..0649477 100644 --- a/Source/UBCS-WEB/src/components/Tree/TemplatePro.vue +++ b/Source/UBCS-WEB/src/components/Tree/TemplatePro.vue @@ -2,7 +2,7 @@ <basic-container> <avue-tabs :option="Taboption" @change="handleChange"></avue-tabs> <span v-if="type.prop==='tab1'"> - <attrCrud :ProData="ProData"></attrCrud> + <attrCrud :ProData="ProData" :crudOid="crudOid" :crudArray="crudArray" :Formlist="Formlist"></attrCrud> </span> <span v-else-if="type.prop==='tab2'">妯℃澘娴佺▼</span> <span v-else-if="type.prop==='tab3'">妯℃澘闃舵</span> @@ -13,7 +13,7 @@ <script> export default { name: "TemplatePro.vue", - props: ['ProData'], + props: ['ProData','crudOid','crudArray','Formlist'], data: function () { return { type: {}, diff --git a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue index 4121adf..9f9fca4 100644 --- a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue +++ b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue @@ -1,10 +1,26 @@ <template> <avue-crud :data="ProData" :option="option" @sort-change="sortChange" @row-update="addUpdate" - @cell-click="handleRowClick"> + @cell-click="handleRowClick" @select="selectHandle"> <template slot="menuLeft"> - <el-button v-if="attrEditVisible == false" size="small" type="primary" @click="addVisible=true">锛� 娣诲姞 {{msg}}</el-button> + <el-button v-if="attrEditVisible == false" size="small" type="primary" @click="busineHandle">锛� 娣诲姞 {{msg}}</el-button> <el-dialog :visible.sync="addVisible" append-to-body title="浠庝笟鍔$被鍨嬩腑閫夋嫨灞炴��"> - <avue-crud :data="businessData" :option="businessOption"></avue-crud> + <avue-crud :data="businessData" :option="businessOption"> + <template slot="menuLeft"> + <div style="display: flex;"> + <el-select> + <el-option>灞炴�ц嫳鏂囧悕绉�</el-option> + <el-option>灞炴�т腑鏂囧悕绉�</el-option> + </el-select> + <el-input style="width: 300px;margin-left: 20px"></el-input> + <el-button size="small" style="margin-left: 10px">鏌ヨ</el-button> + </div> + + </template> + </avue-crud> + <div style="display: flex;justify-content: flex-end;margin-top: 15px"> + <el-button size="small" type="primary">淇濆瓨</el-button> + <el-button size="small" type="primary">鍙栨秷</el-button> + </div> </el-dialog> </template> <!-- 鍏ㄥ睆缂栬緫--> @@ -14,6 +30,12 @@ <el-dialog :visible.sync="attrEditVisible" append-to-body fullscreen="true"> <attrCrud></attrCrud> </el-dialog> + </template> +<!-- 缁勫悎瑙勫垯--> + <template slot="menuLeft"> + <el-button size="small" @click="isShowformulaEdit=true">缁勫悎瑙勫垯</el-button> + <formula-editor :visible="isShowformulaEdit" :systemVariableTableData="systemVariableTableData" :thisSceneTableData="thisSceneTableData"></formula-editor> + </template> <!-- 楠岃瘉瑙勫垯--> <template slot="menuLeft"> @@ -133,7 +155,7 @@ </template> <!-- 绾ц仈灞炴��--> <template slot="menuLeft"> - <el-button size="small" @click="CascadeVisible=true">绾ц仈灞炴��</el-button> + <el-button size="small" @click="CascadeHandle">绾ц仈灞炴��</el-button> <el-dialog :visible.sync="CascadeVisible" append-to-body title="璇烽�夋嫨绾ц仈灞炴��"> <avue-crud ref="crud" :data="CascadeData" :option="CascadeOption" @row-click="CascaderowClick"> <template slot="radio" @@ -168,31 +190,115 @@ </template> <!-- 鍚屾鍒板叾浠栨ā鏉�--> <template slot="menuLeft"> - <el-button size="small">鍚屾鍒板叾浠栨ā鏉�</el-button> + <el-button size="small" style="margin-top: 10px">鍚屾鍒板叾浠栨ā鏉�</el-button> </template> </avue-crud> </template> <script> +import {AttrByBtm,gridCodeClassifyTemplateAttr} from '@/api/template/templateAttr' export default { name: "attrCrud .vue", - props: ['ProData'], + props: ['ProData','crudOid','crudArray','Formlist'], data() { return { + //琛ㄦ牸鍗曢�夋暟缁� + CrudSelect:[], + //琛ㄦ牸oid + CrudOid:"", + //鍦烘櫙鍙橀噺 + thisSceneTableData:[ + { + formula: "lcstatus", + desc: "鐘舵��", + }, + { + formula: "name", + desc: "闆嗗洟鐮�", + }, + { + formula: "materialname", + desc: "閮ㄩ棬鍚嶇О", + }, + { + formula: "parentcode", + desc: "涓婄骇閮ㄩ棬缂栧彿", + }, + { + formula: "parentname", + desc: "涓婄骇閮ㄩ棬鍚嶇О", + }, + { + formula: "description", + desc: "鎻忚堪", + }, + ], + // 绯荤粺鍙橀噺 + systemVariableTableData:[ + { + formula: "#CURRENTUSER.OID#", + desc: "褰撳墠鐢ㄦ埛鐨勪富閿�", + }, + { + formula:"#CURRENTUSER.ID", + desc:"褰撳墠鐢ㄦ埛鐨勮处鎴�" + }, + { + formula:"#CURRENTTIME#", + desc:"褰撳墠鏃堕棿" + }, + { + formula:"#CURRENTDATE#", + desc:"褰撳墠鏃ユ湡" + }, + { + formula:"#CURRENTDATETIME#", + desc:"褰撳墠鏃ユ湡鏃堕棿" + }, + { + formula:"#CURRENTUSER_NAME#", + desc:"褰撳墠鐢ㄦ埛鐨勫鍚�" + }, + { + formula:"#CURRENTUSER.SECRETGRADE#", + desc:"褰撳墠鐢ㄦ埛瀵嗙骇" + }, + { + formula:"#CURRENTUSER.IPSECRET#", + desc:"褰撳墠鐢ㄦ埛鐨処P瀵嗙骇" + }, + { + formula:"#CURRENTUSER.BUSINESSUNIT#", + desc:"褰撳墠鐢ㄦ埛鎵�灞炰笟鍔″崟鍏�" + }, + { + formula:"#CURRENTUSER.BUSINESSUNITNAME#", + desc:"褰撳墠鐢ㄦ埛鎵�灞炰笟鍔″崟鍏冨悕绉�" + }, + { + formula:"#CURRENTUSER.GROUPOID#", + desc:"褰撳墠鐢ㄦ埛鐨勯儴闂ㄤ富閿�" + }, + { + formula:"#CURRENTUSER.GROUPNAME#", + desc:"褰撳墠鐢ㄦ埛鎵�灞為儴闂ㄥ悕绉�" + }, + { + formula:"#CURRENTUSER.EMAIL#", + desc:"褰撳墠鐢ㄦ埛閭欢鍦板潃" + }, + { + formula:"#CURRENTUSER.ROLENAME#", + desc:"褰撳墠鐢ㄦ埛鎵�灞炶鑹插悕绉� " + }, + ], CascadeVisible: false, attrEditVisible: false, + isShowformulaEdit:false, // 绾ц仈鍗曢�� selectRow: '', // 绾ц仈data - CascadeData: [{ - id: 1, - name: '寮犱笁', - attrIn: '娴嬭瘯涓�' - }, { - id: 2, - name: '鏉庡洓', - attrIn: '娴嬭瘯浜�' - }], + CascadeData: [], // 绾ц仈option CascadeOption: { menu: false, @@ -208,18 +314,19 @@ }, { label: '灞炴�ц嫳鏂囩紪鍙�', - prop: 'nid' - }, { - label: '鎬у埆', + prop: 'id' + }, + { + label: '灞炴�т腑鏂囧悕绉�', prop: 'name' }, { label: '灞炴�у垎缁�', - prop: 'attrIn' + prop: 'attributeGroup' }, { label: '绫诲瀷', - prop: 'type' + prop: 'attributeDataTypeText' }, { label: '鍒楄〃瀹藉害', @@ -227,19 +334,63 @@ }, { label: '鍏抽敭灞炴��', - prop: 'keyattrflag' + prop: 'keyAttrFlag', + type:'text', + dicData:[ + { + label:"鏄�", + value:'true' + }, + { + label:"鍚�", + value:'false' + } + ] }, { label: '鏌ヨ灞炴��', - prop: 'queryattrflag' + prop: 'queryAttrFlag', + type:'text', + dicData:[ + { + label:"鏄�", + value:'true' + }, + { + label:"鍚�", + value:'false' + } + ] }, { label: '楂樼骇鏌ヨ灞炴��', - prop: 'seniorqueryattrflag' + prop: 'seniorQueryAttrFlag', + type:'text', + dicData:[ + { + label:"鏄�", + value:'true' + }, + { + label:"鍚�", + value:'false' + } + ] }, { label: '鐩镐技鏌ラ噸灞炴��', - prop: 'samerepeatattrflag' + prop: 'sameRepeatAttrFlag', + type:'text', + dicData:[ + { + label:"鏄�", + value:'true' + }, + { + label:"鍚�", + value:'false' + } + ] }, { label: '涓�缁寸爜', @@ -248,6 +399,170 @@ { label: '浜岀淮鐮�', prop: 'TwoDimensional' + }, + { + label: '蹇呰緭', + prop: 'requireFlag', + type:'text', + dicData:[ + { + label:"鏄�", + value:'true' + }, + { + label:"鍚�", + value:'false' + } + ] + }, + { + label: "琛ㄥ崟鏄剧ず", + prop: "formDisplayFlag", + type:'text', + dicData:[ + { + label:"鏄�", + value:'true' + }, + { + label:"鍚�", + value:'false' + } + ] + }, + { + label: "鍒楄〃鏄剧ず", + prop: "tableDisplayFlag", + type:'text', + dicData:[ + { + label:"鏄�", + value:'true' + }, + { + label:"鍚�", + value:'false' + } + ] + }, + { + label: "鍙", + prop: "readonlyFlag", + }, + { + label: "鍒楄〃鎺掑簭", + prop: "sortAttrFlag", + type:'text', + dicData:[ + { + label:"鏄�", + value:'true' + }, + { + label:"鍚�", + value:'false' + } + ] + }, + + { + label: "澶氳鏂囨湰", + prop: "textAreaFlag", + type:'text', + dicData:[ + { + label:"鏄�", + value:'true' + }, + { + label:"鍚�", + value:'false' + } + ] + }, + { + label: "榛樿鍊�", + prop: "defaultValue", + }, + { + label: "鍓嶇紑", + prop: "prefixValue", + }, + { + label: "鍚庣紑", + prop: "suffixValue", + }, + { + label: "缁勫悎瑙勫垯", + prop: "componentRule", + }, + { + label: "楠岃瘉瑙勫垯", + prop: "verifyRule", + }, + { + label: "鏃堕棿鏍煎紡", + prop: "codeDateFormat", + }, + { + label: "鍒嗙被娉ㄥ叆", + prop: "classifyInvokeLevel", + }, + { + label: "鏋氫妇娉ㄥ叆", + prop: "enumString", + }, + { + label: "绾ц仈灞炴��", + prop: "parentCode", + }, + { + label: "鍙傜収閰嶇疆", + prop: "referConfig", + }, + { + label: "绾ц仈鏌ヨ灞炴��", + prop: "parentQueryAttr", + }, + { + label: "閫夋嫨搴撴爣璇�", + prop: "libraryIdentification", + }, + { + label: "濉啓鎻愮ず", + prop: "explain", + }, + { + label: "琛ㄥ崟鏄剧ず鏍峰紡", + prop: "formDisplayStyle", + }, + { + label: "琛ㄦ牸鏄剧ず鏍峰紡", + prop: "tableDisplayStyle", + }, + { + label: "琛ㄥ崟瓒呴摼鎺�", + prop: "formHref", + }, + { + label: "琛ㄦ牸瓒呴摼鎺�", + prop: "tableHref", + }, + { + label: "琛ㄦ牸鏄剧ずjs", + prop: "tableDisplayJs", + }, + { + label: "闀垮害", + prop: "controlLength", + }, + { + label: "灏忔暟绮惧害", + prop: "precisionLength", + }, + { + label: "鍙栧�艰寖鍥�", + prop: "valueArea", }, ] }, @@ -359,90 +674,14 @@ bds: "娴嬭瘯涓�", shiyong: "娴嬭瘯涓�" }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - }, - { - bds: "娴嬭瘯浜�", - shiyong: "娴嬭瘯浜�" - } ], // 鏂板涓氬姟绫诲瀷 - businessData: [ - { - id: "娴嬭瘯涓�", - name: "娴嬭瘯涓�", - attributeLength: "娴嬭瘯涓�", - attrDataType: "娴嬭瘯涓�" - }, - { - id: "娴嬭瘯浜�", - name: "娴嬭瘯浜�", - attributeLength: "娴嬭瘯浜�", - attrDataType: "娴嬭瘯浜�" - }, - { - id: "娴嬭瘯涓�", - name: "娴嬭瘯涓�", - attributeLength: "娴嬭瘯涓�", - attrDataType: "娴嬭瘯涓�", - }, - { - id: "娴嬭瘯涓�", - name: "娴嬭瘯涓�", - attributeLength: "娴嬭瘯涓�", - attrDataType: "娴嬭瘯涓�", - } - ], + businessData: [], businessOption: { index: true, border: true, - addBtn: true, + addBtn: false, + menu:false, column: [ { label: "灞炴�ц嫳鏂囧悕绉�", @@ -522,6 +761,7 @@ index: true, border: true, editBtn: false, + selection:true, labelWidth: 110, cellBtn: true, cancelBtn: false, @@ -756,6 +996,36 @@ console.log(this.ProData) }, methods: { + // 浠庝笟鍔$被鍨嬩腑閫夋嫨鏁版嵁 + busineHandle(){ + if(this.crudArray.length<1){ + this.$message.error('璇烽�夋嫨涓�鏉℃ā鏉�') + }else { + this.addVisible=true; + AttrByBtm({'conditionMap[oid]': this.crudOid}).then(res=>{ + this.businessData=res.data.data; + console.log(res.data) + }) + } + }, + // 绾ц仈灞炴�� + CascadeHandle(){ + if(this.CrudSelect.length >0){ + this.CascadeVisible=true; + gridCodeClassifyTemplateAttr({'conditionMap[classifyTemplateOid]': this.Formlist[0].oid, + 'conditionMap[oid_notequal]':this.CrudOid + }).then(res=>{ + this.CascadeData=res.data.data + }) + }else { + this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉垮睘鎬�') + } + }, + //琛ㄦ牸鍗曢�� + selectHandle(selection,row){ + this.CrudOid=row.oid; + this.CrudSelect=selection + }, addsHandler(){ }, diff --git a/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue b/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue index 5ff1791..e0a2f86 100644 --- a/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue +++ b/Source/UBCS-WEB/src/components/Tree/classifyTreeform.vue @@ -17,6 +17,7 @@ option: { submitBtn:false, emptyBtn:false, + column: [ { label: '涓婚搴�/鍒嗙被缂栧彿', diff --git a/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue b/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue index 71747d3..13cd051 100644 --- a/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue +++ b/Source/UBCS-WEB/src/components/Tree/classifyTrees.vue @@ -74,6 +74,7 @@ @row-del="CrudRowDel" @row-update="CrudRowUpdata" :before-close="beforeClose" + @select="selectHandle" > <template slot="menuLeft"> <el-button plain size="small" type="primary" @click="FindFormVisible = true;">鏌ヨ</el-button> @@ -168,7 +169,7 @@ </avue-crud> </basic-container> - <templatePro :ProData="this.ProData"></templatePro> + <templatePro :ProData="this.ProData" :crudOid="this.crudOid" :crudArray="this.crudArray" :Formlist="this.Formlist"></templatePro> </span> </basic-container> </el-main> @@ -202,9 +203,44 @@ //浣跨敤inject鎺ユ敹鍙傛暟 //Treeoption宸︿晶鏍戞柊澧炶〃鍗曢」 Treedata宸︿晶鏍戣妭鐐� 閰嶇疆椤� crudTreeOption鍙充晶琛ㄦ牸閰嶇疆椤� crudTreeData鍙充晶琛ㄦ牸鏄剧ず鍐呭 //Treeform鍙充晶琛ㄥ崟閰嶇疆椤� - inject: ['crudTreeOption', "crudTreeData"], + inject: [, "crudTreeData"], data() { return { + //琛ㄦ牸option閰嶇疆椤� + crudTreeOption: { + index: true, + border: true, + height:180, + selection:true, + addBtn:this.addFlag, + column: [ + { + label: "妯℃澘缂栧彿", + prop: "id" + }, + { + label:"妯℃澘鍚嶇О", + prop:"name" + }, + { + label: "妯℃澘鎻忚堪", + prop:"description" + }, + { + label:"鐗堟湰鍙�", + prop:"revisionSeq" + }, + { + label:"鐘舵��", + prop:"lcStatusText" + } + ] + }, + addFlag:false, + // 琛ㄦ牸褰撳墠琛宨d + crudOid:"", + //琛ㄦ牸褰撳墠閫夋嫨鏁扮粍 + crudArray:[], //妯℃澘灞炴�у睍绀哄唴瀹� ProData: [], //鍥炶溅閿悳绱㈢粦瀹氬�� @@ -399,6 +435,11 @@ this.getAttr(); }, methods: { + //琛屽崟閫変簨浠� + selectHandle(selection,row){ + this.crudOid=row.oid + this.crudArray=selection + }, //鍒嗙被鏍戞暟鎹鐞� getAttr() { getAtrrList().then(res => { @@ -607,19 +648,20 @@ return item.codeclassifyoid == this.nodeClickList.oid } }) - gridCodeClassifyTemplateAttr({'conditionMap[classifyTemplateOid]': this.Formlist[0].oid}).then(res => { - this.ProData = res.data.data - console.log(this.ProData) - }).catch(res => { - this.$message.error(res) - }) + if(this.Formlist.length >0){ + gridCodeClassifyTemplateAttr({'conditionMap[classifyTemplateOid]': this.Formlist[0].oid}).then(res => { + this.ProData = res.data.data; + console.log(this.ProData) + }).catch(res => { + this.$message.error(res) + }) + } }).catch(res => { console.log(res) }) // 鍩烘湰淇℃伅琛ㄥ崟鏁版嵁 await getObjectByOid(this.nodeClickList.oid).then(res => { - this.TreeList = res.data.data - // eslint-disable-next-line no-const-assig + this.TreeList = res.data.data; }).catch(res => { this.$message.error(res) }) diff --git a/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue b/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue index dc5648d..2bfd2cc 100644 --- a/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue +++ b/Source/UBCS-WEB/src/components/code-dialog-page/formulaEditor.vue @@ -312,9 +312,9 @@ :show-header="false" style="width: 100%" > - <el-table-column prop="formula" width="40"> + <el-table-column prop="formula" width="120"> </el-table-column> - <el-table-column prop="desc" width="100"> </el-table-column> + <el-table-column prop="desc" width="200"> </el-table-column> </el-table> </el-tab-pane> <el-tab-pane label="绯荤粺鍙橀噺" name="second"> @@ -324,9 +324,9 @@ :show-header="false" style="width: 100%" > - <el-table-column prop="formula" width="150"> + <el-table-column prop="formula" width="200"> </el-table-column> - <el-table-column prop="desc" width="150"> </el-table-column> + <el-table-column prop="desc" width="200"> </el-table-column> </el-table> </el-tab-pane> </el-tabs> @@ -338,7 +338,7 @@ </el-dialog> </template> - + <script> export default { name: "formulaEditor", @@ -675,14 +675,14 @@ } //鍏紡鍐呭鍥炴樉 // 瑙﹀彂update:data灏嗗瓙缁勪欢鍊间紶閫掔粰鐖剁粍浠� - this.$emit('updateFormulaContent', this.formulaContent) - this.isShowformulaEdit = false; + this.$emit('updateFormulaContent', this.formulaContent) + this.isShowformulaEdit = false; }, }, }; </script> - + <style scoped> .formula-box-card >>> .el-card__body { @@ -690,7 +690,7 @@ height: 85%; width: 100%; } - + .formula-editor-total { /* margin-top: 3px; */ height: 100%; @@ -718,7 +718,7 @@ height: auto; justify-content: space-between; align-items: center; - } + } .formula-editor-btn-sm { width: 4.5vw; @@ -732,4 +732,3 @@ } </style> - \ No newline at end of file diff --git a/Source/UBCS-WEB/src/views/MasterData/items.vue b/Source/UBCS-WEB/src/views/MasterData/items.vue index 02ff88b..33241d3 100644 --- a/Source/UBCS-WEB/src/views/MasterData/items.vue +++ b/Source/UBCS-WEB/src/views/MasterData/items.vue @@ -9,7 +9,8 @@ :currentPage="this.currentPage" :templateOid="this.templateOid" @tableDataArray="tableDataArrays" - + @tableHeadDataFateher="tableHeadDatas" + @total="totals" ></master-tree> </basic-container> </el-aside> @@ -22,6 +23,8 @@ @currentPage="currentPages" @templateOid="templateOids" :tableDataArray="tableDataArray" + :total="this.total" + :tableHeadDataFateher="this.tableHeadDataFateher" ></TableCrud> </el-main> </el-container> @@ -44,7 +47,9 @@ codeClassifyOid:"", coderuleoid:"", templateOid:"", - tableDataArray:[] + tableDataArray:[], + tableHeadDataFateher:[], + total:"" } }, created() { @@ -68,6 +73,12 @@ }, tableDataArrays(val){ this.tableDataArray=val + }, + totals(val){ + this.total=val + }, + tableHeadDatas(val){ + this.tableHeadDataFateher=val } } } diff --git a/Source/UBCS-WEB/src/views/integration/applicationForm.vue b/Source/UBCS-WEB/src/views/integration/applicationForm.vue index 7a3c48b..db577fa 100644 --- a/Source/UBCS-WEB/src/views/integration/applicationForm.vue +++ b/Source/UBCS-WEB/src/views/integration/applicationForm.vue @@ -2,7 +2,8 @@ <basic-container> <avue-crud :table-loading="loading" :data="data" :option="option" :search.sync="searchParam" :page.sync="page" ref="crud" @refresh-change="getDataList" @search-change="handleSearch" @search-reset="handleReset" - @size-change="handleSizePage" @current-change="handleCurrentPage" @on-load="getDataList"> + @size-change="handleSizePage" @current-change="handleCurrentPage" @on-load="getDataList" + @selection-change="selectionChange" @row-click="handleRowClick"> <template slot="menuLeft"> <el-button icon="el-icon-document" size="small" type="primary" @click="handleStatus">闆嗗洟鐢宠鐘舵�� </el-button> @@ -12,7 +13,7 @@ </template> <script> -import { getList } from '@/api/integration/application.js' +import { getList, queryApplyStat } from '@/api/integration/application.js' import { dateFormat } from '@/util/date.js' export default { data() { @@ -25,6 +26,7 @@ total: 0 }, searchParam: {}, + stateParam: {}, option: { height: "auto", index: true, @@ -33,7 +35,8 @@ columnBtn: false, searchMenuSpan: 8, highlightCurrentRow: true, - menu:false, + menu: false, + selection: true, column: [ { label: '鐢宠鍗曞彿', @@ -77,9 +80,6 @@ prop: 'lastModifyTime', type: 'datetime', search: true, - formatter: () => { - - } }, { label: '杩斿洖鏍囪瘑', width: 100, @@ -100,8 +100,20 @@ } }, methods: { - handleStatus() { - + async handleStatus() { + const { oids } = this.stateParam + if (this.$utilFunc.isEmpty(oids)) { + this.$message({ + type: "error", + message: "璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�!" + }) + } else { + console.log(this.stateParam) + const response = await queryApplyStat(this.stateParam) + if (response.status === 200) { + console.log(response) + } + } }, async getDataList() { this.loading = true @@ -140,7 +152,19 @@ this.page.currentPage = 1 this.getDataList() done() - } + }, + selectionChange(list) { + console.log(list) + let newData = list.map(item => { + const { dataOid } = item + return dataOid + }) + this.stateParam = { oids: newData.toString() } + console.log(newData) + }, + handleRowClick(row) { + this.$refs.crud.toggleRowSelection(row, true) + }, } } </script> \ No newline at end of file diff --git a/Source/UBCS-WEB/src/views/integration/systemInfo.vue b/Source/UBCS-WEB/src/views/integration/systemInfo.vue new file mode 100644 index 0000000..f1f2b78 --- /dev/null +++ b/Source/UBCS-WEB/src/views/integration/systemInfo.vue @@ -0,0 +1,224 @@ +<template> + <basic-container> + <avue-crud ref="crud" :table-loading="loading" :data="data" :option="option" :page.sync="page" :search.sync="search" + @on-load="getDataList" @row-save="handleSave" @row-del="handleDelete" @row-update="handleEdit" + @refresh-change="handleRefresh" @size-change="handleSizePage" @current-change="handleCurrentPage" + @selection-change="selectionChange" @row-click="handleRowClick"> + <template slot="menuLeft"> + <el-button icon="el-icon-search" size="small" type="primary" @click="handleStatus">鏌� 璇� + </el-button> + <el-button icon="el-icon-delete" size="small" type="danger" @click="handleDeleteByIds">鍒� 闄� + </el-button> + </template> + <template slot="search" slot-scope="{row,size}"> + <el-select v-model="selectValue" size="small" @change="handleSelect"> + <el-option v-for="item in selectOption" :key="item.value" :label="item.label" :value="item.value"> + </el-option> + </el-select> + <el-input :placeholder="`璇疯緭鍏�${selectValue === 'id' ? '绯荤粺缂栧彿' : '绯荤粺鍚嶇О'}骞舵寜鍥炶溅鏌ヨ`" :size="size" + style="width:300px;margin-left: 10px;" v-model="search[selectValue]" clearable + @keyup.enter.native="handleEnter" @clear="handleClear"></el-input> + </template> + </avue-crud> + </basic-container> +</template> +<script> +import { getSysInfoList, sysInfoAdd, sysInfoEdit, sysInfoDel } from '@/api/integration/sysInfo.js' +export default { + data() { + return { + loading: false, + page: { + currentPage: 1, + pageSize: 10, + total: 0 + }, + selectOption: [{ + value: 'id', + label: '绯荤粺缂栧彿' + }, { + value: 'name', + label: '绯荤粺鍚嶇О' + }], + selectValue: 'id', + search: {}, + delIds: [], + data: [], + option: { + height: "auto", + border: true, + align: 'center', + menuAlign: 'center', + index: true, + searchMenuSpan: 8, + searchBtn: false, + emptyBtn: false, + columnBtn: false, + defaultSort: { + prop: 'id,name', + order: 'descending' + }, + selection: true, + column: [ + { + label: '绯荤粺缂栧彿', + prop: 'id', + sortable: true, + rules: [{ + required: true, + message: '绯荤粺缂栧彿涓嶈兘涓虹┖', + trigger: 'blur' + }] + }, { + label: '绯荤粺鍚嶇О', + prop: 'name', + sortable: true, + rules: [{ + required: true, + message: '绯荤粺鍚嶇О涓嶈兘涓虹┖', + trigger: 'blur' + }] + }, + { + label: '绯荤粺鎻忚堪', + prop: 'description', + type: 'textarea' + } + ] + }, + } + }, + methods: { + // 鑾峰彇鍒楄〃 + async getDataList() { + this.loading = true + console.log(this.search) + const { pageSize, currentPage } = this.page + let param = { size: pageSize, current: currentPage } + const response = await getSysInfoList({ ...param, ...this.search }) + if (response.status === 200) { + console.log(response) + this.loading = false + const data = response.data.data + this.data = data.records + this.page.total = data.total + } else this.loading = false + }, + // 鏂板 + async handleSave(row, done, loading) { + const response = await sysInfoAdd(row) + if (response.status === 200) { + loading() + this.$message({ + type: 'success', + message: '鏂板鏁版嵁鎴愬姛锛�' + }) + done() + this.$refs.crud.refreshTable() + this.getDataList() + } + }, + // 缂栬緫 + async handleEdit(row, index, done, loading) { + console.log(row) + const { oid, id, name, description } = row + const response = await sysInfoEdit({ oid, id, name, description }) + if (response.status === 200) { + loading() + this.$message({ + type: 'success', + message: '淇敼鏁版嵁鎴愬姛锛�' + }) + done() + this.getDataList() + } + }, + // 鍒犻櫎鍗曟潯 + handleDelete(row) { + const { oid } = row + this.deleteSysInfo({ oids: oid }) + }, + // 澶氭潯鏁版嵁鍒犻櫎 + handleDeleteByIds() { + const { oids } = this.delIds + if (this.$utilFunc.isEmpty(oids)) { + this.$message({ + type: "error", + message: "璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�!" + }) + } else { + this.deleteSysInfo(this.delIds) + } + }, + // 鍒犻櫎鎺ュ彛 + deleteSysInfo(param) { + this.$confirm('鏄惁纭畾鍒犻櫎閫夋嫨鐨勯泦鎴愮郴缁�?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(async () => { + const response = await sysInfoDel(param) + if (response.status === 200) { + console.log(response) + this.$message({ + type: 'success', + message: '鍒犻櫎鎴愬姛!' + }); + this.getDataList() + } + }) + }, + // 閫夋嫨妗嗗唴瀹归�夋嫨鍚� + handleSelect(event) { + this.selectValue = event + if (this.selectValue === 'id') { + this.search['name'] = '' + delete this.search['name'] + } else { + this.search['id'] = '' + delete this.search['id'] + } + }, + // enter鎼滅储 + handleEnter() { + if (this.search[this.selectValue] === '') return + else this.getDataList() + + }, + // 杈撳叆妗嗘竻绌� + handleClear() { + this.search = {} + this.getDataList() + }, + // 鍒锋柊鎸夐挳 + handleRefresh() { + this.getDataList() + }, + handleSizePage(event) { + this.page.pageSize = event + }, + handleCurrentPage(event) { + this.page.currentPage = event + }, + // 鐐瑰嚮閫夋嫨 + handleRowClick(row) { + this.$refs.crud.toggleRowSelection(row, true) + }, + // 澶氶�� + selectionChange(list) { + console.log(list) + let newData = list.map(item => { + const { oid } = item + return oid + }) + this.delIds = { oids: newData.toString() } + console.log(this.delIds) + }, + } +} +</script> +<style lang="scss" scoped> +::v-deep(.avue-crud .el-select) { + width: 100px !important; +} +</style> \ No newline at end of file diff --git a/Source/UBCS-WEB/src/views/modeling/Business.vue b/Source/UBCS-WEB/src/views/modeling/Business.vue index 7b12feb..807155a 100644 --- a/Source/UBCS-WEB/src/views/modeling/Business.vue +++ b/Source/UBCS-WEB/src/views/modeling/Business.vue @@ -258,10 +258,7 @@ } ] }, - data: [{ - tableName: '1', - description: '2' - }] + data: [], } } }, @@ -338,7 +335,8 @@ this.ifRefreshBtmAddRefresh(); }, businessEdit(){ - this.$refs.btmAdd.btmType = this.obj; + var json = JSON.stringify(this.obj); + this.$refs.btmAdd.btmType = JSON.parse(json); this.$refs.btmAdd.showSubmitDialog = true; this.ifRefreshBtmAddRefresh(); }, diff --git a/Source/UBCS-WEB/src/views/modeling/LinkType.vue b/Source/UBCS-WEB/src/views/modeling/LinkType.vue index eec03bf..afadda5 100644 --- a/Source/UBCS-WEB/src/views/modeling/LinkType.vue +++ b/Source/UBCS-WEB/src/views/modeling/LinkType.vue @@ -156,7 +156,9 @@ data() { return { addOption: { - linkType: {}, + linkType: { + attributes:[] + }, }, domain: null, domainOptions: [], @@ -240,13 +242,20 @@ }, // 娣诲姞鎸夐挳鐐瑰嚮浜嬩欢 linkTypeAdd() { + this.$refs.linkAdd.linkType = {}; this.$refs.linkAdd.showSubmitDialog = true; }, // 缂栬緫鎸夐挳鐐瑰嚮浜嬩欢 linkTypeEdit() { - this.addOption.linkType = this.obj; + var linktype = this.obj; + linktype.fromBtmValues = this.obj.fromBtmTypes; + linktype.toBtmValues = this.obj.toBtmTypes; + linktype.attributes = this.obj.attributes; + var json = JSON.stringify(linktype); + this.addOption.linkType = JSON.parse(json); this.$refs.linkAdd.linkType = this.addOption.linkType; this.$refs.linkAdd.showSubmitDialog = true; + console.log(this.obj); }, // 浠庡凡鏈変腑鑾峰彇鎸夐挳鐐瑰嚮浜嬩欢 selectFromTable() { diff --git a/Source/UBCS-WEB/src/views/modeling/LinkTypeAdd.vue b/Source/UBCS-WEB/src/views/modeling/LinkTypeAdd.vue index 8c7753a..4f1ea88 100644 --- a/Source/UBCS-WEB/src/views/modeling/LinkTypeAdd.vue +++ b/Source/UBCS-WEB/src/views/modeling/LinkTypeAdd.vue @@ -20,7 +20,7 @@ </el-form-item> <el-form-item label="From绔被鍨�" label-width="100px"> <!-- from绔笟鍔$被鍨嬮�夋嫨 --> - <el-select v-model="fromBtmValues" :value="fromBtmTypes" value-key="oid" placeholder="璇烽�夋嫨From绔被鍨�" filterable multiple collapse-tags @change="fromSelectChange"> + <el-select v-model="linkType.fromBtmValues" :value="linkType.fromBtmTypes" value-key="oid" placeholder="璇烽�夋嫨From绔被鍨�" filterable multiple collapse-tags @change="fromSelectChange"> <el-option-group v-for="domain in domainList" :key="domain.id" :label="domain.name"> <el-option v-for="item in domain.childList" :key="item.oid" :label="item.id + item.name" :value="item"> @@ -30,7 +30,7 @@ </el-form-item> <el-form-item label="To绔被鍨�" label-width="100px"> <!-- to绔笟鍔$被鍨嬮�夋嫨 --> - <el-select v-model="toBtmValues" :value="toBtmTypes" value-key="oid" placeholder="璇烽�夋嫨To绔被鍨�" filterable multiple collapse-tags @change="toSelectChange"> + <el-select v-model="linkType.toBtmValues" :value="linkType.toBtmTypes" value-key="oid" placeholder="璇烽�夋嫨To绔被鍨�" filterable multiple collapse-tags @change="toSelectChange"> <el-option-group v-for="domain in domainList" :key="domain.id" :label="domain.name"> <el-option v-for="item in domain.childList" :key="item.oid" :label="item.id + item.name" :value="item"> @@ -331,6 +331,7 @@ row.$cellEdit = false; }, fromSelectChange(dataList){ + console.log(dataList); this.linkType.fromBtmTypes = []; var fromBtmName = ""; var fromBtmType = ""; @@ -341,6 +342,7 @@ }) this.linkType.fromBtmTypeName = fromBtmName; this.linkType.fromBtmType = fromBtmType; + console.log(this.linkType); }, toSelectChange(dataList){ console.log(dataList); diff --git a/Source/UBCS-WEB/src/views/modeling/Version.vue b/Source/UBCS-WEB/src/views/modeling/Version.vue index 3941b86..5898873 100644 --- a/Source/UBCS-WEB/src/views/modeling/Version.vue +++ b/Source/UBCS-WEB/src/views/modeling/Version.vue @@ -11,36 +11,41 @@ @row-del="rowDel" @refresh-change="refreshChange" @search-reset="searchChange" - @search-change="searchChange"> + @search-change="searchChange" + @row-click="rowClick"> <template slot="menuLeft"> <el-tooltip class="item" effect="dark" content="鏌ユ壘鐗堟湰瑙勫垯浣跨敤鑼冨洿" placement="top"> <el-button size="small" plain type="primary" icon="el-icon-zoom-in" - @click="handleSearch">鏌ョ湅浣跨敤鑼冨洿 + @click="applyRangeSearch">鏌ョ湅浣跨敤鑼冨洿 </el-button> </el-tooltip> - </template>> + </template> + <template slot="radio" + slot-scope="{row}"> + <el-radio v-model="selectRow" + :label="row.$index"> + </el-radio> + </template> </avue-crud> - <el-dialog title="鏌ョ湅浣跨敤鑼冨洿" - append-to-body - :visible.sync="packageSearchBox" - width="1200px"> - <versionpackage></versionpackage> - </el-dialog> + <versionpackage :rangeData="applyRangeData" ref="applyRange"></versionpackage> </basic-container> </template> <script> -import { getPage,add,update,remove } from '../../api/omd/revisionRule'; +import { getPage,add,update,remove,getAppayRange } from '../../api/omd/revisionRule'; export default { name: "Version", data(){ return { //鏌ョ湅浣跨敤鑼冨洿 packageSearchBox:false, + // 鐐瑰嚮鏁版嵁 + selectRow: '', + selectRowData: {}, //鍒嗛〉鏁版嵁 page: { pageSize: 10, @@ -56,7 +61,14 @@ border: true, index: true, searchMenuSpan:5, + highlightCurrentRow: true, + stripe:true, column:[ + { + label: '', + prop: 'radio', + width: 120 + }, { label:'鑻辨枃鍚嶇О', prop: 'id' @@ -92,12 +104,31 @@ type:"textarea" } ] - } + }, + applyRangeData: [] } }, methods:{ - handleSearch(){ - this.packageSearchBox=true + // 琛岀偣鍑� + rowClick(row){ + this.selectRow = row.$index; + this.selectRowData = row; + }, + // 鏌ョ湅搴旂敤鑼冨洿 + applyRangeSearch(){ + if (!this.selectRow && this.selectRow != 0){ + console.log(this.selectRow); + this.$message({ + type:"warning", + message: "璇峰厛閫夋嫨灞炴��" + }) + } + getAppayRange(this.selectRowData.id).then(res => { + this.applyRangeData = res.data.data; + this.$refs.applyRange.rangeData = this.applyRangeData; + this.$refs.applyRange.showDialog = true; + }) + // this.packageSearchBox=true }, getList() { this.loading = true; diff --git a/Source/UBCS-WEB/src/views/modeling/Versionpackage.vue b/Source/UBCS-WEB/src/views/modeling/Versionpackage.vue index 8ba8e45..c068fd7 100644 --- a/Source/UBCS-WEB/src/views/modeling/Versionpackage.vue +++ b/Source/UBCS-WEB/src/views/modeling/Versionpackage.vue @@ -1,103 +1,69 @@ <template> - <basic-container> - <avue-crud ref="crud" - v-model="form" - :data="data" - :option="option" - @on-load="getList" - @refresh-change="refreshChange" - @search-change="searchChange" - > - </avue-crud> - </basic-container> + <el-dialog title="鏌ョ湅搴旂敤鑼冨洿" :visible.sync="showDialog" append-to-body @close="closeDialog" width="65%" + style="height: 115vh;"> + <basic-container> + <avue-crud ref="crud" :data="rangeData" :option="option"> + </avue-crud> + </basic-container> + </el-dialog> </template> <script> export default { name: "Versionpackage.vue", - data(){ - return { + props: { + rangeData: { + type: Array + }, - data:[ - { - name:"娴嬭瘯1", - source:"娴嬭瘯1", - shows:"娴嬭瘯1" - }, - { - name:"娴嬭瘯2", - source:"娴嬭瘯2", - shows:"娴嬭瘯2" - }, - { - name:"娴嬭瘯3", - source:"娴嬭瘯3", - shows:"娴嬭瘯3" - }, - { - name:"娴嬭瘯4", - source:"娴嬭瘯4", - shows:"娴嬭瘯4" - }, - ], - form:{}, - option:{ - height:300, - headerAlign:'center', + }, + data() { + return { + showDialog: false, + option: { + height: 300, + headerAlign: 'center', align: 'center', border: true, menu: false, index: true, - searchMenuSpan:6, - addBtn:false, - indexFixed:false, - menuFixed:false, - column:[ - { - label:"鍚嶇О", - prop:"name", - }, - { - label:"鏉ユ簮", - prop:"source", - search:true - }, - { - label:"璇存槑", - prop:"shows", - }, + addBtn: false, + indexFixed: false, + menuFixed: false, + header: false, + highlightCurrentRow: true, + column: [{ + label: '鑻辨枃鍚嶇О', + prop: 'id' + }, + { + label: '涓枃鍚嶇О', + prop: 'name', + }, + { + label: '鎵�灞為鍩�', + prop: 'domainText', + },{ + label: '鏁版嵁琛ㄥ悕', + prop: 'tableName', + width: 200 + }, + { + label: '璇存槑', + prop: 'descirption', + }, ] } } }, - methods:{ - // getList () { - // this.loading = true; - // const data = Object.assign({ - // pageNum: this.page.currentPage, - // pageSize: this.page.pageSize, - // }, this.params) - // this.data = []; - // getList(data).then(res => { - // const data = res.data.data - // this.loading = false; - // this.page.total = data.total; - // const result = data.list; - // this.data = result; - // }) - // }, - //鎼滅储 - searchChange(params, done) { - if (done) done(); - this.params = params; - this.page.currentPage = 1; - this.getList(); - this.$message.success('鎼滅储鎴愬姛') + methods: { + closeDialog() { + this.rangeData = []; + this.showDialog = false; }, } } </script> <style scoped> - </style> diff --git a/Source/UBCS-WEB/src/views/modeling/classifyTree.vue b/Source/UBCS-WEB/src/views/modeling/classifyTree.vue index d3596ee..621ad5b 100644 --- a/Source/UBCS-WEB/src/views/modeling/classifyTree.vue +++ b/Source/UBCS-WEB/src/views/modeling/classifyTree.vue @@ -1,6 +1,5 @@ <template> - <classifyTrees :crudData="crudTreeData" :crudoption="crudTreeOption" :data="Treedata" - :option="Treeoption" + <classifyTrees :crudData="crudTreeData" ></classifyTrees> </template> @@ -12,33 +11,6 @@ //鐖朵紶瀛愭湁闂锛屾殏鏃舵病瑙e喅锛岀敤provide浠f浛鐖朵紶瀛愶紝瀛愪紶鐖惰繕鏄敤$emit浼犻�掞紝娉ㄦ剰锛侊紒锛佸叾浠栫粍浠朵笉鑳戒娇鐢ㄥ悓鏍风殑绫诲悕鍚﹀垯浼氭姤閿欍�� provide() { return { - crudTreeOption: { - index: true, - border: true, - height:180, - column: [ - { - label: "妯℃澘缂栧彿", - prop: "id" - }, - { - label:"妯℃澘鍚嶇О", - prop:"name" - }, - { - label: "妯℃澘鎻忚堪", - prop:"description" - }, - { - label:"鐗堟湰鍙�", - prop:"revisionSeq" - }, - { - label:"鐘舵��", - prop:"lcStatusText" - } - ] - }, crudTreeData: this.crudTreeData, } diff --git a/Source/UBCS-WEB/src/views/modeling/original.vue b/Source/UBCS-WEB/src/views/modeling/original.vue index 9757875..eaf8f50 100644 --- a/Source/UBCS-WEB/src/views/modeling/original.vue +++ b/Source/UBCS-WEB/src/views/modeling/original.vue @@ -2,101 +2,90 @@ <el-container> <el-main> <basic-container> - <avue-crud v-model="form" - ref="crud" - :option="option" - :data="data" - @on-load="onLoad" - :page.sync="page" - @refresh-change="refreshChange" - @row-click="rowClick"> - <template slot="radio" - slot-scope="{row}"> - <el-radio v-model="selectRow" - :label="row.$index"> - </el-radio> - </template> - <template slot="menu"> - <el-button icon="el-icon-edit" size="small" type="text" @click="updateSave">缂栬緫</el-button> - <el-button icon="el-icon-delete" size="small" type="text" @click="deleteSave">鍒犻櫎</el-button> + <avue-crud v-model="form" ref="crud" :option="option" :data="data" @on-load="onLoad" :page.sync="page" + @refresh-change="refreshChange" @row-click="rowClick"> + <template slot="radio" slot-scope="{row}"> + <el-radio v-model="selectRow" :label="row.$index"> + </el-radio> </template> - <template slot="menuLeft"> - <el-button size="small" - type="primary" - icon="el-icon-plus" - @click="addSave">鏂� 澧� + <template slot="menu"> + <el-button icon="el-icon-edit" size="small" type="text" @click="updateSave">缂栬緫</el-button> + <el-button icon="el-icon-delete" size="small" type="text" @click="deleteSave">鍒犻櫎</el-button> + </template> + <template slot="menuLeft"> + <el-button size="small" type="primary" icon="el-icon-plus" @click="addSave">鏂� 澧� </el-button> - <el-button size="small" - plain - type="primary" - icon="el-icon-zoom-in" - @click="applyRangeOpen">鏌ョ湅浣跨敤鑼冨洿 + <el-button size="small" plain type="primary" icon="el-icon-zoom-in" @click="applyRangeOpen">鏌ョ湅浣跨敤鑼冨洿 </el-button> + </template> + <template slot="typeValue" slot-scope="{row}"> + <el-tag>{{ row.typeValue }}</el-tag> </template> </avue-crud> - <el-dialog :visible.sync="applyRange.display" append-to-body :title="applyRange.title" width="600px" + <!-- <el-dialog :visible.sync="applyRange.display" append-to-body :title="applyRange.title" width="600px" @close="applyRangeClose"> <avue-crud v-model="applyRange.model" :option="applyRange.option" :data="applyRange.data" class="applyRangeTable" ></avue-crud> - </el-dialog> + </el-dialog> --> + <Versionpackage :rangeData="applyRangeData" ref="applyRange"></Versionpackage> </basic-container> </el-main> <el-aside> <basic-container class="itemForm"> - <el-descriptions class="margin-top" :column="1" size="medium" border title="灞炴�ч」"> - <el-descriptions-item> - <template slot="label"> - 灞炴�х紪鍙� - </template> - {{ itemForm.itemData.id }} - </el-descriptions-item> - <el-descriptions-item> - <template slot="label"> - 灞炴�у悕绉� - </template> - {{ itemForm.itemData.name }} - </el-descriptions-item> - <el-descriptions-item> - <template slot="label"> - 灞炴�х被鍨� - </template> - {{ itemForm.itemData.typeValue }} - </el-descriptions-item> - <el-descriptions-item> - <template slot="label"> - 鏍囩 - </template> - {{ itemForm.itemData.hashtag }} - </el-descriptions-item> - <el-descriptions-item> - <template slot="label"> - 榛樿鍊� - </template> - {{ itemForm.itemData.defaultValue }} - </el-descriptions-item> - <el-descriptions-item> - <template slot="label"> - 鍏佽涓虹┖ - </template> - {{ itemForm.itemData.nullable }} - </el-descriptions-item> - <el-descriptions-item> - <template slot="label"> - 闀垮害 - </template> - {{ itemForm.itemData.maxLength }} - </el-descriptions-item> - <el-descriptions-item> - <template slot="label"> - 鎻忚堪 - </template> - {{ itemForm.itemData.description }} - </el-descriptions-item> - </el-descriptions> - <div style="height:15px"></div> + <el-descriptions class="margin-top" :column="1" size="medium" border title="灞炴�ч」"> + <el-descriptions-item> + <template slot="label"> + 灞炴�х紪鍙� + </template> + {{ itemForm.itemData.id }} + </el-descriptions-item> + <el-descriptions-item> + <template slot="label"> + 灞炴�у悕绉� + </template> + {{ itemForm.itemData.name }} + </el-descriptions-item> + <el-descriptions-item> + <template slot="label"> + 灞炴�х被鍨� + </template> + {{ itemForm.itemData.typeValue }} + </el-descriptions-item> + <el-descriptions-item> + <template slot="label"> + 鏍囩 + </template> + {{ itemForm.itemData.hashtag }} + </el-descriptions-item> + <el-descriptions-item> + <template slot="label"> + 榛樿鍊� + </template> + {{ itemForm.itemData.defaultValue }} + </el-descriptions-item> + <el-descriptions-item> + <template slot="label"> + 鍏佽涓虹┖ + </template> + {{ itemForm.itemData.nullable }} + </el-descriptions-item> + <el-descriptions-item> + <template slot="label"> + 闀垮害 + </template> + {{ itemForm.itemData.maxLength }} + </el-descriptions-item> + <el-descriptions-item> + <template slot="label"> + 鎻忚堪 + </template> + {{ itemForm.itemData.description }} + </el-descriptions-item> + </el-descriptions> + <div style="height:15px"></div> <el-descriptions class="margin-top" :column="1" size="medium" border title="灞炴�ч厤缃�"></el-descriptions> <el-tabs v-model="itemForm.activeName" @tab-click="handleClick" stretch="true" style="height:235px"> - <el-tab-pane label="鍙傜収" name="referTab"> + <el-tab-pane label="鍙傜収" name="referTab"> <el-descriptions class="margin-top" :column="1" size="medium" border> <el-descriptions-item> <template slot="label"> @@ -148,173 +137,136 @@ add, update, getPage, getApplyRange } from "@/api/omd/OmdAttribute"; +import Versionpackage from "./Versionpackage.vue"; export default { name: "original", data() { - return { + return { page: { pageSize: 10, currentPage: 1, total: 100 }, - selectRow: '', + selectRow: "", data: [], - form:{}, + form: {}, attribute: { nullable: true }, + applyRangeData: [], option: { height: "550px", - headerAlign: 'center', + headerAlign: "center", border: true, index: true, - rowKey: 'id', + rowKey: "id", tabs: true, - stripe:true, + stripe: true, indexFixed: false, menuWidth: 150, highlightCurrentRow: true, - addBtn:false, - editBtn:false, - delBtn:false, + addBtn: false, + editBtn: false, + delBtn: false, column: [{ - label: '閫夋嫨', - prop: 'radio', - width: 60, - hide: false, - display: false - }, - { - label: '灞炴�х紪鍙�', - prop: 'id', - align: 'left', - display: false, - width: 200, - required: true + label: "閫夋嫨", + prop: "radio", + width: 60, + hide: false, + display: false + }, { + label: "灞炴�х紪鍙�", + prop: "id", + align: "left", + display: false, + width: 200, + required: true + }, { + label: "灞炴�у悕绉�", + prop: "name", + align: "left", + display: false + }, { + label: "鏍囩", + prop: "hashtag", + // hide: true, + display: false + }, { + label: "鏄惁浣跨敤鏋氫妇", + prop: "usingDict", + type: "switch", + hide: true, + labelWidth: 132, + display: false, + dicData: [{ + label: "鏄�", + value: "true" }, { - label: '灞炴�у悕绉�', - prop: 'name', - align: 'left', - display: false - }, - { - label: '鏍囩', - prop: 'hashtag', - // hide: true, - display: false - }, - { - label: '鏄惁浣跨敤鏋氫妇', - prop: 'usingDict', - type: 'switch', - hide: true, - labelWidth: 132, - display: false, - dicData: [{ - label: '鏄�', - value: 'true' - }, { - label: '鍚�', - value: 'false' - }] - }, - { - label: '灞炴�х被鍨�', - prop: 'typeValue', - display: false, - // hide: true - }, - { - label: '榛樿鍊�', - prop: 'defaultValue', - display: false - }, - { - label: '鍏佽涓虹┖', - prop: 'nullable', - type: 'switch', - display: false, - hide: true, - labelWidth: 132, - dicData: [{ - label: '鍚�', - value: 'false' - }, { - label: '鏄�', - value: 'true' - }] - }, - { - label: "闀垮害", - prop: "maxLength", - hide: true, - display: false - }, - { - label: '鎻忚堪', - prop: 'description', - type: "textarea", - display: false - }, + label: "鍚�", + value: "false" + }] + }, { + label: "灞炴�х被鍨�", + prop: "typeValue", + display: false, + // hide: true + }, { + label: "榛樿鍊�", + prop: "defaultValue", + display: false + }, { + label: "鍏佽涓虹┖", + prop: "nullable", + type: "switch", + display: false, + hide: true, + labelWidth: 132, + dicData: [{ + label: "鍚�", + value: "false" + }, { + label: "鏄�", + value: "true" + }] + }, { + label: "闀垮害", + prop: "maxLength", + hide: true, + display: false + }, { + label: "鎻忚堪", + prop: "description", + type: "textarea", + display: false + }, ] }, - applyRange: { - model: "", - title: "搴旂敤鐨勪笟鍔$被鍨�", - option: { - height: 360, - addBtn: false, - refreshBtn: false, - columnBtn: false, - menu: false, - border: true, - reserveSelection: true, - searchMenuSpan:8, - searchShowBtn: false, - highlightCurrentRow: true, - column: [ - { - label: '涓氬姟绫诲瀷缂栧彿', - prop: 'id', - align: 'left', - }, - { - label: '涓氬姟绫诲瀷鍚嶇О', - prop: 'name', - align: 'left', - }, - ] - }, - data: [], - display: false, - }, - itemForm:{ + itemForm: { itemData: {}, - activeName: 'referTab', - form:{} + activeName: "referTab", + form: {} } - } + }; }, created() { - }, methods: { refreshChange() { this.onLoad(this.pageParent, this.query); }, - addSave(){ + addSave() { this.$refs.originalAdd.showSubmitDialog = true; this.$refs.originalAdd.attribute = {}; }, - updateSave(){ + updateSave() { this.$refs.originalAdd.showSubmitDialog = true; this.$refs.originalAdd.attribute = this.attribute; }, - deleteSave(){ + deleteSave() { remove(this.itemForm.itemData).then(res => { this.$message.success("鍒犻櫎鎴愬姛"); - }) + }); }, onLoad(page, params = {}) { this.loading = true; @@ -323,42 +275,41 @@ this.page.total = data.total; this.data = data.records; this.loading = false; - this.data = res.data.data.records + this.data = res.data.data.records; this.itemData = this.data[0]; - }) + }); }, rowClick(row) { this.itemForm.itemData = row; this.selectRow = row.$index; this.attribute = row; - } - ,selectBtmType(){ - this.referType.display = true; - this.referType.title = "璇烽�夋嫨" + this.referType.value }, - applyRangeOpen(){ - if (!this.selectRow){ - this.$message({ - type:"warning", - message: "璇峰厛閫夋嫨灞炴��" - }) - } - var oid = this.data[this.selectRow].oid; - getApplyRange(oid).then(res => { - this.applyRange.data = res.data.data; - }) - this.applyRange.display = true; + selectBtmType() { + this.referType.display = true; + this.referType.title = "璇烽�夋嫨" + this.referType.value; }, - applyRangeClose(){ - this.applyRange.data = []; - this.applyRange.display = false; - } + applyRangeOpen() { + if (!this.selectRow && this.selectRow != 0) { + this.$message({ + type: "warning", + message: "璇峰厛閫夋嫨灞炴��" + }); + } + var oid = this.data[this.selectRow].oid; + getApplyRange(oid).then(res => { + this.applyRangeData = res.data.data; + this.$refs.applyRange.rangeData = this.applyRangeData; + this.$refs.applyRange.showDialog = true; + + }); + }, }, + components: { Versionpackage } } </script> <style lang="scss"> -.applyRangeTable > .el-card:nth-of-type(2) > .el-card__body > .avue-crud__menu{ - display: none !important; +.applyRangeTable>.el-card:nth-of-type(2)>.el-card__body>.avue-crud__menu { + display: none !important; } </style> diff --git a/Source/UBCS-WEB/src/views/modeling/status.vue b/Source/UBCS-WEB/src/views/modeling/status.vue index b6fac49..4fb492e 100644 --- a/Source/UBCS-WEB/src/views/modeling/status.vue +++ b/Source/UBCS-WEB/src/views/modeling/status.vue @@ -63,14 +63,14 @@ search: true }, { - label:"涓枃鍚嶇О", - prop:"name", + label:'涓枃鍚嶇О', + prop:'name', search:true, }, { - label: "鎻忚堪", - prop:"description", - type:"textarea" + label: '鎻忚堪', + prop:'description', + type:'textarea' } ] } @@ -78,7 +78,7 @@ }, methods:{ handleSearch(){ - this.packageSearchBox=true + // this.packageSearchBox=true }, getList() { this.loading = true; diff --git a/Source/UBCS-WEB/vue.config.js b/Source/UBCS-WEB/vue.config.js index 98c3012..d206271 100644 --- a/Source/UBCS-WEB/vue.config.js +++ b/Source/UBCS-WEB/vue.config.js @@ -26,10 +26,10 @@ proxy: { '/api': { //鏈湴鏈嶅姟鎺ュ彛鍦板潃 - target: 'http://localhost:37000', // target: 'http://localhost:37000', - //target: 'http://192.168.1.51:37000', - //target: 'http://192.168.3.7:37000', + // target: 'http://localhost:37000', + // target: 'http://192.168.1.51:37000', + target: 'http://192.168.1.46:37000', // target: 'http://dev.vci-tech.com:37000', // target: 'http://192.168.1.51:37000/', // target: 'http://localhost:37000', diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeResembleRule.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeResembleRule.java new file mode 100644 index 0000000..f018f42 --- /dev/null +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/entity/CodeResembleRule.java @@ -0,0 +1,110 @@ +package com.vci.ubcs.code.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.vci.ubcs.starter.annotation.Transient; +import com.vci.ubcs.starter.revision.model.BaseModel; +import io.swagger.annotations.ApiModel; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 鐩镐技椤� + * @author weidy + * @date 2022-1-14 + */ +//@VciBtmType(name = MdmBtmTypeConstant.CODE_CLASSIFY,text = "涓婚搴撳垎绫�",lifeCycle = FrameWorkLcStatusConstant.FRAME_WORK_LIFE_CYCLE_NAME) +@Data +@TableName("PL_CODE_RESEMBLERULE") +@ApiModel(value = "CodeResemblerule瀵硅薄", description = "鐩镐技椤�") +@EqualsAndHashCode(callSuper = true) +public class CodeResembleRule extends BaseModel { + + /** + * 搴忓垪鍖� + */ + private static final long serialVersionUID = 7375719926432663351L; + + /** + * 鏄惁蹇界暐澶у皬鍐� + */ +// @Column(columnDefinition = "鏄惁蹇界暐澶у皬鍐�") + private String ignoreCaseFlag; + + /** + * 鏄惁蹇界暐绌烘牸 + */ +// @Column(columnDefinition = "鏄惁蹇界暐绌烘牸") + private String ignoreSpaceFlag; + + /** + * 鏄惁蹇界暐鍏ㄩ儴绌烘牸 + */ +// @Column(columnDefinition = "鏄惁蹇界暐鍏ㄩ儴绌烘牸") + private String ignoreAllSpaceFlag; + + /** + * 鏄惁蹇界暐鍏ㄥ崐瑙� + */ +// @Column(columnDefinition = "鏄惁蹇界暐鍏ㄥ崐瑙�") + private String ignoreWidthFlag; + + /** + * 杩炴帴绗� + */ +// @Column(columnDefinition = "杩炴帴绗�",length = 200) + private String linkCharacter; + + public String getIgnoreWidthFlag() { + return ignoreWidthFlag; + } + + public void setIgnoreWidthFlag(String ignoreWidthFlag) { + this.ignoreWidthFlag = ignoreWidthFlag; + } + + public String getIgnoreCaseFlag() { + return ignoreCaseFlag; + } + + public void setIgnoreCaseFlag(String ignoreCaseFlag) { + this.ignoreCaseFlag = ignoreCaseFlag; + } + + public String getIgnoreSpaceFlag() { + return ignoreSpaceFlag; + } + + public void setIgnoreSpaceFlag(String ignoreSpaceFlag) { + this.ignoreSpaceFlag = ignoreSpaceFlag; + } + + public String getIgnoreAllSpaceFlag() { + return ignoreAllSpaceFlag; + } + + public void setIgnoreAllSpaceFlag(String ignoreAllSpaceFlag) { + this.ignoreAllSpaceFlag = ignoreAllSpaceFlag; + } + + + public String getLinkCharacter() { + return linkCharacter; + } + + public void setLinkCharacter(String linkCharacter) { + this.linkCharacter = linkCharacter; + } + + @Override + public String toString() { + return "CodeResembleRuleDO{" + + " ignoreCaseFlag='" + ignoreCaseFlag + '\'' + + ", ignoreSpaceFlag='" + ignoreSpaceFlag + '\'' + + ", ignoreAllSpaceFlag='" + ignoreAllSpaceFlag + '\'' + + ", ignoreWidthFlag='" + ignoreWidthFlag + '\'' + + ", linkCharacter='" + linkCharacter + '\'' + + "} " + super.toString(); + } + +} diff --git a/Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/feign/ISysClient.java b/Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/feign/ISysClient.java index b72209a..2b17dbb 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/feign/ISysClient.java +++ b/Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/feign/ISysClient.java @@ -40,6 +40,7 @@ String API_PREFIX = "/client"; String MENU = API_PREFIX + "/menu"; + String MENU_BUTTON = API_PREFIX + "/menu-button"; String DEPT = API_PREFIX + "/dept"; String DEPT_IDS = API_PREFIX + "/dept-ids"; String DEPT_IDS_FUZZY = API_PREFIX + "/dept-ids-fuzzy"; @@ -79,6 +80,15 @@ R<Menu> getMenu(@RequestParam("id") Long id); /** + * 鑾峰彇鑿滃崟涓嬮潰鐨勬寜閽� + * + * @param btmType 涓氬姟绫诲瀷 + * @return List<Menu> + */ + @GetMapping(MENU_BUTTON) + R<List<Menu>> getMenuButtonByType(@RequestParam("btmType") String btmType); + + /** * 鑾峰彇閮ㄩ棬 * * @param id 涓婚敭 diff --git a/Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/feign/ISysClientFallback.java b/Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/feign/ISysClientFallback.java index 2cf5e43..738acdf 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/feign/ISysClientFallback.java +++ b/Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/feign/ISysClientFallback.java @@ -36,6 +36,11 @@ } @Override + public R<List<Menu>> getMenuButtonByType(String btmType) { + return R.fail("鑾峰彇鏁版嵁澶辫触"); + } + + @Override public R<Dept> getDept(Long id) { return R.fail("鑾峰彇鏁版嵁澶辫触"); } diff --git a/Source/UBCS/ubcs-service/ubcs-code/pom.xml b/Source/UBCS/ubcs-service/ubcs-code/pom.xml index 369d597..65412a1 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/pom.xml +++ b/Source/UBCS/ubcs-service/ubcs-code/pom.xml @@ -73,6 +73,18 @@ </exclusion> </exclusions> </dependency> + <dependency> + <groupId>com.vci.ubcs</groupId> + <artifactId>ubcs-user-api</artifactId> + <version>3.0.1.RELEASE</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>com.vci.ubcs</groupId> + <artifactId>ubcs-system-api</artifactId> + <version>3.0.1.RELEASE</version> + <scope>compile</scope> + </dependency> <!--<dependency> <groupId>com.vci.ubcs</groupId> <artifactId>ubcs-webservice</artifactId> 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 07131a6..e3e0864 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 @@ -14,6 +14,7 @@ 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.exception.VciBaseException; import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -84,12 +85,17 @@ /** * 鍒犻櫎绯荤粺闆嗘垚鐨勭郴缁熶俊鎭� - * @param dockingSystemDTO 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞★紝oid鍜宼s闇�瑕佷紶杈� + * @param oids 绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹紶杈撳璞★紝oid鍜宼s闇�瑕佷紶杈� * @return 鍒犻櫎缁撴灉鍙嶉锛氾細success锛氭垚鍔燂紝fail锛氬け璐� */ - @DeleteMapping( "/deleteData") - public R delSystemData( DockingSystemDTO dockingSystemDTO) { - return R.status(dockingSystemService.delSystemData(dockingSystemDTO)); + @DeleteMapping( "/deleteDataById") + public R deleteDataById( String oids) { + try { + return R.status(dockingSystemService.deleteDataById(oids)); + }catch (VciBaseException e){ + R.fail(e.getMessage()); + } + return R.success("鎿嶄綔鎴愬姛"); } /** * 绯荤粺闆嗘垚鍩虹淇℃伅鍒楄〃 diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java index 87aa4dd..ee01f3b 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java @@ -31,9 +31,7 @@ import java.io.File; import java.io.IOException; import java.nio.charset.StandardCharsets; -import java.util.Collections; -import java.util.List; -import java.util.Map; +import java.util.*; @RestController //@AllArgsConstructor @@ -96,20 +94,20 @@ String excelFileName = LocalFileUtil.getDefaultTempFolder() + File.separator + LocalFileUtil.getFileNameForIE(file.getOriginalFilename()); File file1 = new File(excelFileName); try { -// file.transferTo(new File(excelFileName)); -// CodeImProtRusultVO codeImProtRusultVO = mdmIOService.batchImportCode(orderDTO,file1); -// if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())||StringUtils.isNotBlank(codeImProtRusultVO.getRedisUuid())){ -// //鏀惧埌map閲� -// R result = R.fail("瀵煎叆澶辫触"); -// if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())) { -// String filedUUid = ControllerUtil.putErrorFile(codeImProtRusultVO.getFilePath()); -// codeImProtRusultVO.setFileOid(filedUUid); -// } -// result.setData(codeImProtRusultVO); -// return result; -// }else { -// return R.success("鎿嶄綔鎴愬姛锛�"); -// } + file.transferTo(new File(excelFileName)); + CodeImProtRusultVO codeImProtRusultVO = mdmIOService.batchImportCode(orderDTO,file1); + if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())||StringUtils.isNotBlank(codeImProtRusultVO.getRedisUuid())){ + //鏀惧埌map閲� + R result = R.fail("瀵煎叆澶辫触"); + if(StringUtils.isNotBlank(codeImProtRusultVO.getFilePath())) { + String filedUUid = ControllerUtil.putErrorFile(codeImProtRusultVO.getFilePath()); + codeImProtRusultVO.setFileOid(filedUUid); + } + result.setData(codeImProtRusultVO); + return result; + }else { + return R.success("鎿嶄綔鎴愬姛锛�"); + } }catch (Throwable e) { logger.error("瀵煎叆閿欒",e); String errorFile = LocalFileUtil.getDefaultTempFolder() + File.separator + "閿欒.txt"; @@ -126,7 +124,7 @@ }finally { file1.delete(); } - return null; +// return null; } @@ -474,8 +472,63 @@ @GetMapping("/thisistest") @ResponseBody - public List<BaseModel> thisistest(String codeClassifyOid, String functionId) throws Exception { - return engineService.selectByTypeAndOid("wupin", "b1511bb3-a773-43e2-ac85-a7fde7314a0f,3e08970024835e69f6c2b2ecd90c48c3,582ff205-0dfb-43e0-8223-e772ff1851ab,db0400fe-cc90-4d9d-8da7-1edf06b1481b"); + public Integer thisistest(String codeClassifyOid, String functionId) throws Exception { +// return engineService.selectByTypeAndOid("wupin", "b1511bb3-a773-43e2-ac85-a7fde7314a0f,3e08970024835e69f6c2b2ecd90c48c3,582ff205-0dfb-43e0-8223-e772ff1851ab,db0400fe-cc90-4d9d-8da7-1edf06b1481b"); + + List<BaseModel> models = new ArrayList<>(); + BaseModel baseModel = new BaseModel(); + Map<String,String > map = new HashMap<>(); + map.put("JZL","6789"); + map.put("JZRXX","67891"); + map.put("JZXZB","67892"); + map.put("JSZGL","67893"); + map.put("JSSXT","67894"); + baseModel.setBtmname("djii"); + baseModel.setCreator("fjivis"); + baseModel.setId("vcia"); + baseModel.setOid("0d86b1ba-9e9e-4d3d-9ae4-f862c3684e74"); + baseModel.setCreateTime(new Date()); + baseModel.setTs(new Date()); + baseModel.setData(map); + models.add(baseModel); + + BaseModel baseModel1 = new BaseModel(); + Map<String,String > map1 = new HashMap<>(); + map1.put("JZL","6789z"); + map1.put("JZRXX","67891z"); + map1.put("JZXZB","67892z"); + map1.put("JSZGL","67893z"); + map1.put("JSSXT","67894z"); + baseModel1.setBtmname("djiiz"); + baseModel1.setCreator("fjivisz"); + baseModel1.setId("vciaz"); + baseModel1.setTs(new Date()); + baseModel1.setOid("4a00be07-f5a8-4a9b-88fb-d52a0d9cf546"); + baseModel1.setCreateTime(new Date()); + baseModel1.setData(map1); + models.add(baseModel1); + + BaseModel baseModel2 = new BaseModel(); + Map<String,String > map2 = new HashMap<>(); + map2.put("JZL","67892"); + map2.put("JZRXX","678912"); + map2.put("JZXZB","678922"); + map2.put("JSZGL","678932"); + map2.put("JSSXT","678942"); + baseModel2.setBtmname("djii2"); + baseModel2.setCreator("fjivis2"); + baseModel2.setTs(new Date()); + baseModel2.setId("vcia2"); + baseModel2.setOid("fa430ff9-f141-4dcf-8809-6f87905c1dea"); + baseModel2.setCreateTime(new Date()); + baseModel2.setData(map2); + models.add(baseModel2); + + return 0; + + + +// return engineService.updateBatchByBaseModel("wupin", models); // return engineService.getUIInfoByClassifyOid(codeClassifyOid,functionId); } } 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 ea1d998..ee1824a 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 @@ -72,6 +72,21 @@ /** * 鏌ユ壘鏍戝舰缁撴瀯 * + * @return 鏁版嵁闆嗗悎 + */ + List<CodeClassify> selectCodeClassifyDOByTree(@Param("id") String id,@Param("lcstatus") String lcstatus,@Param("parentcodeclassifyoid") String parentcodeclassifyoid); + + /** + * 鏌ヨ鏁版嵁涓嶱L_CODE_KEYATTRREPEAT銆丳L_CODE_RESEMBLERULE銆丳L_CODE_RULE鑱旀煡 + * + * @param oids 鍒嗙被鐨勪富閿� + * @return 鏁版嵁闆嗗悎 + */ + List<CodeClassify> selectClassifyByKeyAndReseRel(@Param("oids") String oids); + + /** + * 鏌ユ壘鏍戝舰缁撴瀯 + * * @param oid 鍒嗙被鐨勪富閿� * @return 鏁版嵁闆嗗悎 */ diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyTemplateAttrMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyTemplateAttrMapper.java index 9a21e18..aff8458 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyTemplateAttrMapper.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeClassifyTemplateAttrMapper.java @@ -39,5 +39,12 @@ List<CodeClassifyTemplateAttr> selectRefByOid(String oid); + /** + * 鏉′欢,鍏宠仈鏌ヨ鎺掑簭 + * + * @param classifytemplateoids + * @return + */ + List<CodeClassifyTemplateAttr> selectByClassifytemplateoidRel(String classifytemplateoids); } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeResembleRuleMapper.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeResembleRuleMapper.java new file mode 100644 index 0000000..c7197e7 --- /dev/null +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeResembleRuleMapper.java @@ -0,0 +1,20 @@ +package com.vci.ubcs.code.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.github.yulichang.base.MPJBaseMapper; +import com.vci.ubcs.code.entity.CodeResembleRule; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 涓绘暟鎹紪鐮佽鍒欐暟鎹搷浣滃眰 + * + * @author ludc + * @date 2022-01-24 + */ +public interface CodeResembleRuleMapper extends BaseMapper<CodeResembleRule>, MPJBaseMapper<CodeResembleRule> { + + +} 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 1dcbecf..e2f6a78 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 @@ -22,6 +22,8 @@ List<Map> selectBySql(@Param("inSql") String inSql); + List<Map<String,String>> queryByOnlySqlForMap(@Param("inSql") String inSql); + /** * 浼犲叆琛ㄥ悕锛宮ap锛宭ist<map>瀹屾垚鎵归噺鏇存柊鎿嶄綔 * @param tableName 琛ㄥ悕 diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeResembleRuleService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeResembleRuleService.java index dfe100c..8454cc0 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeResembleRuleService.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeResembleRuleService.java @@ -1,7 +1,20 @@ package com.vci.ubcs.code.service; +import com.github.yulichang.base.MPJBaseService; +import com.vci.ubcs.code.entity.CodeReferConfig; +import com.vci.ubcs.code.entity.CodeResembleRule; import com.vci.ubcs.code.vo.pagemodel.CodeResembleRuleVO; +import com.vci.ubcs.starter.exception.VciBaseException; -public interface ICodeResembleRuleService { +public interface ICodeResembleRuleService extends MPJBaseService<CodeResembleRule> { CodeResembleRuleVO getObjectByOid(String codeResembleRuleOid); -} + + /** + * 鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞� + * @param codeResembleRuleDO 鏁版嵁瀵硅薄 + * @return 鏄剧ず瀵硅薄 + * @throws VciBaseException 鎷疯礉灞炴�у嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父 + */ + CodeResembleRuleVO codeResembleRuleDO2VO(CodeResembleRule codeResembleRuleDO) throws VciBaseException; + + } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemService.java index b53618f..f9ff701 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemService.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemService.java @@ -26,5 +26,5 @@ DockingSystemVO editSave(DockingSystemDTO dockingSystemDTO); - boolean delSystemData(DockingSystemDTO dockingSystemDTO); + boolean deleteDataById(String oids); } 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 24ae819..21cfeb8 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 @@ -47,7 +47,7 @@ import org.slf4j.LoggerFactory; import org.springblade.core.cache.utils.CacheUtil; import org.springblade.core.launch.constant.AppConstant; -import org.springblade.core.log.exception.ServiceException; +import com.vci.ubcs.core.log.exception.ServiceException; import org.springblade.core.mp.support.Condition; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; @@ -438,13 +438,34 @@ } /** + * 涓婚敭鏌ヨ鏁版嵁瀵硅薄,鍏宠仈鏌ヨ + * @param oid 涓婚敭 + * @return 鏁版嵁瀵硅薄 + */ + private CodeClassify selectByOidRel(String oid){ + + List<CodeClassify> codeClassifyList = codeClassifyMapper.selectClassifyByKeyAndReseRel("'"+oid.trim()+"'"); +// CodeClassify codeClassifyEntity = (CodeClassify) codeClassifyList; + if(codeClassifyList.size() == 0 ){ + throw new ServiceException("dataNotExist");//鏍规嵁涓婚敭id鏈煡鍒扮浉鍏虫暟鎹� + } +// if(codeClassifyEntity == null || StringUtils.isBlank(codeClassifyEntity.getOid())){ +// throw new ServiceException("dataOidNotExist");//鏍规嵁涓婚敭id鏈煡鍒扮浉鍏虫暟鎹� +// } + return codeClassifyList.get(0); + } + + /** * 鏌ヨ涓婚搴撳垎绫� 鏍� * @param treeQueryObject 鏍戞煡璇㈠璞� * @return 涓婚搴撳垎绫� 鏄剧ず鏍� */ @Override public List<Tree> treeCodeClassify(TreeQueryObject treeQueryObject) { - List<CodeClassify> doList =codeClassifyMapper.selectCodeClassifyVOByTree(treeQueryObject.getParentOid()); + List<CodeClassify> doList =codeClassifyMapper + .selectCodeClassifyDOByTree(treeQueryObject.getConditionMap().get("id"),treeQueryObject.getConditionMap().get("lcStatus"),treeQueryObject.getParentOid()); +// List<CodeClassify> doList =codeClassifyMapper.selectCodeClassifyVOByTree(treeQueryObject.getParentOid()); + List<CodeClassifyVO> voList = codeClassifyDO2VOs(doList); TreeWrapperOptions treeWrapperOptions = new TreeWrapperOptions(PARENT_FIELD_NAME.toLowerCase(Locale.ROOT)); treeWrapperOptions.copyFromTreeQuery(treeQueryObject); @@ -993,10 +1014,15 @@ } //浣跨敤涓婚敭鏌ヨ涓�涓� - List<CodeClassify> classifyDOS = codeClassifyMapper.selectBatchIds(oidLevelMap.keySet()); + String oids = ""; + for (String s : oidLevelMap.keySet()) { + oids += "'"+s+"',"; + } + List<CodeClassify> classifyDOS = codeClassifyMapper.selectClassifyByKeyAndReseRel(oids.substring(0,oids.length()-1)); if(!CollectionUtils.isEmpty(classifyDOS)){ classifyDOS.stream().forEach(classifyDO->{ classifyDO.setDataLevel(VciBaseUtil.getInt(oidLevelMap.getOrDefault(classifyDO.getOid(),"0"))); + classifyDO.setLcStatusText(EnumCache.getValue("codeLcstatus",classifyDO.getLcStatus())); }); } return classifyDOS; @@ -1123,7 +1149,7 @@ public CodeClassifyFullInfoBO getClassifyFullInfo(String codeClassifyOid) { VciBaseUtil.alertNotNull(codeClassifyOid,"鍒嗙被鐨勪富閿�"); CodeClassifyFullInfoBO fullInfo = new CodeClassifyFullInfoBO(); - CodeClassify classifyDO = selectByOid(codeClassifyOid); + CodeClassify classifyDO = selectByOidRel(codeClassifyOid); //鏌ヨ涓婄骇 fullInfo.setCurrentClassifyVO(codeClassifyDO2VO(classifyDO)); // List<Map<String, Object>> maps = codeClassifyMapper.selectAllLevelParentByOid(codeClassifyOid); 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 a89d482..f24d9d7 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 @@ -160,10 +160,10 @@ // conditionMap.put("classifytemplateoid", QueryOptionConstant.IN + "(" + VciBaseUtil.toInSql(templateOids.toArray(new String[0])) + ")"); // PageHelper pageHelper = new PageHelper(-1); // pageHelper.addDefaultAsc("orderNum"); - QueryWrapper<CodeClassifyTemplateAttr> wrapper = new QueryWrapper<>(); - wrapper.in("classifytemplateoid",templateOids); - wrapper.orderByAsc("orderNum"); - List<CodeClassifyTemplateAttr> attrDOS = baseMapper.selectList(wrapper); +// QueryWrapper<CodeClassifyTemplateAttr> wrapper = new QueryWrapper<>(); +// wrapper.in("classifytemplateoid",templateOids); +// wrapper.orderByAsc("orderNum"); + List<CodeClassifyTemplateAttr> attrDOS = baseMapper.selectByClassifytemplateoidRel(VciBaseUtil.toInSql(templateOids.toArray(new String[0]))); // baseMapper.selectByClassifytemplateoid(VciBaseUtil.toInSql(templateOids.toArray(new String[0]))); if(!CollectionUtils.isEmpty(attrDOS)){ diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeResembleRuleServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeResembleRuleServiceImpl.java index fb58ad2..896e759 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeResembleRuleServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeResembleRuleServiceImpl.java @@ -1,8 +1,20 @@ package com.vci.ubcs.code.service.impl; +import com.github.yulichang.base.MPJBaseServiceImpl; +import com.vci.ubcs.code.entity.CodeReferConfig; +import com.vci.ubcs.code.entity.CodeResembleRule; +import com.vci.ubcs.code.enumpack.FrameworkDataLCStatus; +import com.vci.ubcs.code.mapper.CodeReferConfigMapper; +import com.vci.ubcs.code.mapper.CodeResembleRuleMapper; import com.vci.ubcs.code.service.ICodeResembleRuleService; import com.vci.ubcs.code.vo.pagemodel.CodeResembleRuleVO; +import com.vci.ubcs.starter.exception.VciBaseException; +import com.vci.ubcs.starter.web.util.BeanUtilForVCI; +import com.vci.ubcs.starter.web.util.VciBaseUtil; +import net.logstash.logback.encoder.org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; + +import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.DATA_OID_NOT_EXIST; /** * 鐩镐技鏌ヨ瑙勫垯鏈嶅姟 @@ -10,9 +22,44 @@ * @date 2022-04-10 */ @Service -public class CodeResembleRuleServiceImpl implements ICodeResembleRuleService { +public class CodeResembleRuleServiceImpl extends MPJBaseServiceImpl<CodeResembleRuleMapper, CodeResembleRule> implements ICodeResembleRuleService { @Override - public CodeResembleRuleVO getObjectByOid(String codeResembleRuleOid) { - return null; + public CodeResembleRuleVO getObjectByOid(String oid) { + return codeResembleRuleDO2VO(selectByOid(oid)); + } + + /** + * 涓婚敭鏌ヨ鏁版嵁瀵硅薄 + * @param oid 涓婚敭 + * @return 鏁版嵁瀵硅薄 + * @throws VciBaseException 鍙傛暟涓虹┖锛屽苟涓旀暟鎹笉瀛樺湪鐨勬椂鍊欎細鎶涘嚭寮傚父 + */ + private CodeResembleRule selectByOid(String oid) throws VciBaseException { + VciBaseUtil.alertNotNull(oid,"涓婚敭"); + CodeResembleRule codeResembleRuleDO = baseMapper.selectById(oid.trim()); +// CodeResembleRule codeResembleRuleDO = codeResembleRuleMapper.selectByPrimaryKey(oid.trim()); + if(codeResembleRuleDO == null || StringUtils.isBlank(codeResembleRuleDO.getOid())){ + throw new VciBaseException(DATA_OID_NOT_EXIST); + } + return codeResembleRuleDO; + } + + + /** + * 鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞� + * @param codeResembleRuleDO 鏁版嵁瀵硅薄 + * @return 鏄剧ず瀵硅薄 + * @throws VciBaseException 鎷疯礉灞炴�у嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父 + */ + @Override + public CodeResembleRuleVO codeResembleRuleDO2VO(CodeResembleRule codeResembleRuleDO) throws VciBaseException{ + CodeResembleRuleVO vo = new CodeResembleRuleVO(); + if(codeResembleRuleDO != null){ + BeanUtilForVCI.copyPropertiesIgnoreCase(codeResembleRuleDO,vo); + //濡傛灉鏈塴cstatus鐨勭被鐨勮瘽 + vo.setLcStatusText(FrameworkDataLCStatus.getTextByValue(vo.getLcStatus())); + + } + return vo; } } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java index 46a17e6..f71967b 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemServiceImpl.java @@ -1,14 +1,18 @@ package com.vci.ubcs.code.service.impl; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.vci.ubcs.code.constant.MdmBtmTypeConstant; 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.mapper.DockingSystemConfigMapper; import com.vci.ubcs.code.mapper.DockingSystemMapper; import com.vci.ubcs.code.service.IDockingSystemService; import com.vci.ubcs.code.vo.pagemodel.DockingSystemVO; import com.vci.ubcs.code.wrapper.DockingSystemWrapper; +import com.vci.ubcs.starter.exception.VciBaseException; import com.vci.ubcs.starter.revision.service.RevisionModelUtil; import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil; import com.vci.ubcs.starter.web.util.VciBaseUtil; @@ -17,8 +21,10 @@ import org.springblade.core.tool.utils.BeanUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; -import java.util.Objects; +import java.util.*; +import java.util.stream.Collectors; import static com.vci.ubcs.code.constant.FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_EDITING; import static com.vci.ubcs.code.constant.MdmLifeCycleConstant.CODE_RULE_LC; @@ -35,6 +41,12 @@ */ @Autowired(required = false) private DockingSystemMapper dockingSystemMapper; + + /*** + * 闆嗘垚绯荤粺绠$悊鏈嶅姟 + */ + @Autowired(required = false) + private DockingSystemConfigMapper dockingSystemConfigMapper; /** * 瀵硅薄鐨勬搷浣� @@ -69,20 +81,40 @@ return DockingSystemWrapper.build().entityVO(dockingSystem); } + /*** + * 鏍规嵁绯荤粺涓婚敭鍒犻櫎绯荤粺鍚嶇О + * @param oids + * @return + * @throws VciBaseException + */ @Override - public boolean delSystemData(DockingSystemDTO dockingSystemDTO) { - VciBaseUtil.alertNotNull(dockingSystemDTO,"绯荤粺闆嗘垚鐨勭郴缁熶俊鎭暟鎹璞�",dockingSystemDTO.getOid(),"绯荤粺闆嗘垚鐨勭郴缁熶俊鎭殑涓婚敭"); - /*DockingSystem dockingSystem = dockingSystemMapper.selectById(dockingSystemDTO.getOid()); - BaseResult baseResult = checkIsCanDeleteForDO(sysIntBaseDTO,sysIntBaseDO); - if(baseResult.isSuccess()) { + public boolean deleteDataById(String oids) throws VciBaseException { + String message=""; + try { + VciBaseUtil.alertNotNull(oids, "绯荤粺闆嗘垚鐨勭郴缁熶俊鎭殑涓婚敭"); + List<DockingSystem> dockingSystemList = dockingSystemMapper.selectBatchIds(VciBaseUtil.str2List(oids)); + Map<String/**绯荤粺oid**/, String/**绯荤粺鍚嶇О**/> systemNameMap = dockingSystemList.stream().collect(Collectors.toMap(s -> s.getOid(), t -> t.getName(),(o1, o2)->o2)); + List<DockingSystemConfig> dockingSystemConfigList = dockingSystemConfigMapper.selectList(Wrappers.<DockingSystemConfig>query().lambda().in(DockingSystemConfig::getSourceSystemOid, VciBaseUtil.str2List(oids))); + Set<String> systemOidList=new HashSet<>(); + Map<String,String> errorMap = new HashMap<>(); + if (!CollectionUtils.isEmpty(dockingSystemConfigList)) { + dockingSystemConfigList.stream().forEach(dockingSystemConfig -> { + if(!systemOidList.contains(dockingSystemConfig.getSourceSystemOid())&& + systemNameMap.containsKey(dockingSystemConfig.getSourceSystemOid())){ + String systemName=systemNameMap.get(dockingSystemConfig.getSourceSystemOid()); + errorMap.put("error",errorMap.getOrDefault("error","") + ";"+systemName); + } + systemOidList.add(dockingSystemConfig.getSourceSystemOid()); + }); + } + if(errorMap.size()>0){ + throw new Throwable(errorMap.getOrDefault("error","")); + } + return dockingSystemMapper.deleteBatchIds(VciBaseUtil.str2List(oids))>0; + }catch (Throwable e){ + e.printStackTrace(); + throw new VciBaseException(e.getMessage()); - }else{ - return baseResult; } - //鎵ц鍒犻櫎鎿嶄綔 - BatchCBO batchCBO = sysIntBaseMapper.deleteByPrimaryKey(sysIntBaseDO.getOid()); - return (batchCBO!=null && batchCBO.getDeleteCbos() !=null &&batchCBO.getDeleteCbos().size() > 0)?BaseResult.successMsg(DELETE_SUCCESS):BaseResult.fail(DELETE_FAIL); -*/ - return false; } } 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 3837b3e..a660ef9 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 @@ -24,6 +24,7 @@ import com.vci.ubcs.omd.feign.IBtmTypeClient; import com.vci.ubcs.omd.feign.IEnumClient; import com.vci.ubcs.omd.feign.IRevisionRuleClient; +import com.vci.ubcs.omd.vo.BtmTypeAttributeVO; import com.vci.ubcs.omd.vo.BtmTypeVO; import com.vci.ubcs.omd.vo.EnumVO; import com.vci.ubcs.omd.vo.RevisionRuleVO; @@ -40,7 +41,11 @@ import com.vci.ubcs.starter.web.toolmodel.DateConverter; import com.vci.ubcs.starter.web.util.*; import com.vci.ubcs.system.entity.DictBiz; +import com.vci.ubcs.system.entity.Menu; import com.vci.ubcs.system.feign.IDictBizClient; +import com.vci.ubcs.system.feign.ISysClient; +import com.vci.ubcs.system.user.entity.User; +import com.vci.ubcs.system.user.feign.IUserClient; import net.logstash.logback.encoder.org.apache.commons.lang3.StringUtils; import oracle.sql.TIMESTAMP; import org.slf4j.Logger; @@ -50,6 +55,7 @@ import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.StringPool; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cache.Cache; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -69,6 +75,7 @@ import java.time.ZonedDateTime; import java.util.*; import java.util.concurrent.ConcurrentHashMap; +import java.util.function.Supplier; import java.util.stream.Collectors; import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.DATA_OID_NOT_EXIST; @@ -105,7 +112,16 @@ */ @Resource IDictBizClient iDictBizClient; - + /** + * 绯荤粺鐨勬湇鍔� + */ + @Resource + ISysClient iSysClient; + /** + * 鐢ㄦ埛鏈嶅姟 + */ + @Resource + IUserClient iUserClient; /** * 瀛楀吀鐨勬湇鍔� */ @@ -780,6 +796,11 @@ data.put(CODE_TEMPLATE_OID_FIELD,templateVO.getOid()); data.put(CODE_FULL_PATH_FILED,fullPath); cbo.setData(data); + cbo.setOid(VciBaseUtil.getPk()); + cbo.setCreateTime(new Date()); + cbo.setLastModifyTime(new Date()); + cbo.setCreator(AuthUtil.getUser().getUserName()); + cbo.setLastModifier(AuthUtil.getUser().getUserName()); // cbo.setCodeclsfid(classifyFullInfo.getCurrentClassifyVO().getOid()); // cbo.setTemplateOid(templateVO.getOid()); // cbo.setCodeclsfpath(fullPath); @@ -792,7 +813,7 @@ // cbo.setLcStatus("Editing"); //// cbo.setLcStatus(lifeCycleVO.getStartStatus()); // } else { - cbo.setLcStatus(CodeDefaultLC.EDITING.getValue()); + cbo.setLcStatus(CodeDefaultLC.EDITING.getValue()); // } } else { cbo.setLcStatus(CodeDefaultLC.EDITING.getValue()); @@ -801,7 +822,7 @@ } int secret = VciBaseUtil.getInt(String.valueOf(cbo.getSecretGrade())); - //鎻掍釜鐐癸紝鍚庣画鐪嬪瘑绾ф湇鍔℃槸鍚﹀彲鐢� + //鍚庣画鐪嬪瘑绾ф湇鍔℃槸鍚﹀彲鐢� // if (secret == 0 || !secretService.checkDataSecret(secret)) { if (secret == 0 ) { Integer userSecret = VciBaseUtil.getCurrentUserSecret(); @@ -828,12 +849,14 @@ btmName = btmName.trim().toLowerCase(); } try { - String keyPrefix = BTM_NAME.concat(StringPool.DASH).concat(AuthUtil.getTenantId()).concat(StringPool.COLON); - String finalBtmName = btmName; - return CacheUtil.get(BTM_INIT_CACHE, keyPrefix, btmName, () -> { - BaseModel baseModel = createBaseModel(finalBtmName); - return baseModel; - }); + String keyPrefix = BTM_INIT_CACHE.concat(StringPool.COLON).concat(AuthUtil.getTenantId()).concat(StringPool.COLON); +// String finalBtmName = btmName; + Cache.ValueWrapper valueWrapper = CacheUtil.getCache(keyPrefix).get(keyPrefix.concat(String.valueOf(btmName))); + if(valueWrapper == null){ + CacheUtil.getCache(keyPrefix).put(keyPrefix.concat(String.valueOf(btmName)), createBaseModel(btmName)); + valueWrapper = CacheUtil.getCache(keyPrefix).get(keyPrefix.concat(String.valueOf(btmName))); + } + return (BaseModel) valueWrapper.get(); } catch (Exception e) { logger.error("鍒涘缓涓氬姟绫诲瀷瀵硅薄",e); throw new VciBaseException("initBtmError",new String[]{btmName}); @@ -940,15 +963,15 @@ } } - @Override - public MdmUIInfoVO getFormDefineByTemplateOid(String templateOid, String codeClassifyOid) { + @Override + public MdmUIInfoVO getFormDefineByTemplateOid(String templateOid, String codeClassifyOid) { CodeClassifyTemplateVO templateVO = templateService.getObjectHasAttrByOid(templateOid); MdmUIInfoVO uiInfoVO = new MdmUIInfoVO(); uiInfoVO.setTemplateVO(templateVO); uiInfoVO.setFormDefineVO(wrapperFormDefineByTemplate(templateVO, codeClassifyOid)); wrapperResemble(templateVO, uiInfoVO); return uiInfoVO; - } + } /** @@ -1270,10 +1293,10 @@ //娌℃湁闄愬埗鍒嗙被锛屼絾鏄竴涓ā鏉垮彧鍙兘鍦ㄤ竴涓笟鍔$被鍨嬮噷闈紝鎵�浠ョ洿鎺ユ煡璇㈣繖涓笟鍔$被鍨嬪嵆鍙� if (!CollectionUtils.isEmpty(conditionMap)) { Map<String, String> andConditionMap = new HashMap<>(); - andConditionMap.put("lastr", "1"); - andConditionMap.put("lastv", "1"); + andConditionMap.put("t.lastr", "1"); + andConditionMap.put("t.lastv", "1"); if (StringUtils.isNotBlank(orderDTO.getOid())) { - andConditionMap.put("oid", QueryOptionConstant.NOTEQUAL + orderDTO.getOid()); + andConditionMap.put("t.oid", QueryOptionConstant.NOTEQUAL + orderDTO.getOid()); } conditionMap.putAll(andConditionMap); PageHelper pageHelper = new PageHelper(-1); @@ -1380,21 +1403,33 @@ public DataGrid<Map<String, String>> queryGrid(String btmType, CodeClassifyTemplateVO templateVO, Map<String, String> conditionMap, PageHelper pageHelper) { CodeTemplateAttrSqlBO sqlBO = getSqlByTemplateVO(btmType, templateVO, conditionMap, pageHelper); // List<Map> maps = boService.queryByOnlySqlForMap(sqlBO.getSqlHasPage()); - List<Map> maps = commonsMapper.selectBySql(sqlBO.getSqlHasPage()); + List<Map<String,String>> maps = commonsMapper.queryByOnlySqlForMap(sqlBO.getSqlHasPage()); + DataGrid<Map<String, String>> dataGrid = new DataGrid<>(); List<Map<String, String>> dataList = new ArrayList<>(); +// if (!CollectionUtils.isEmpty(maps)) { +// maps.stream().forEach(map -> { +// Map<String, String> data = new HashMap<>(); +// map.forEach((key, value) -> { +// data.put(((String) key).toLowerCase(Locale.ROOT), String.valueOf(value)); +// }); +// dataList.add(data); +// }); +// } +// dataGrid.setData(dataList); if (!CollectionUtils.isEmpty(maps)) { + wrapperData(maps, templateVO, sqlBO.getSelectFieldList(), false); maps.stream().forEach(map -> { Map<String, String> data = new HashMap<>(); - map.forEach((key, value) -> { - data.put(((String) key).toLowerCase(Locale.ROOT), String.valueOf(value)); - }); +// map.forEach((key, value) -> { +// data.put(((String) key).toLowerCase(Locale.ROOT), String.valueOf(value)); +// }); + for (String s : map.keySet()) { + data.put(((String) s).toLowerCase(Locale.ROOT), String.valueOf(map.get(s))); + } dataList.add(data); }); - } - dataGrid.setData(dataList); - if (!CollectionUtils.isEmpty(dataList)) { - wrapperData(dataGrid.getData(), templateVO, sqlBO.getSelectFieldList(), false); + dataGrid.setData(dataList); dataGrid.setTotal(Long.parseLong(commonsMapper.selectBySql(sqlBO.getSqlCount()).get(0).values().toArray()[0].toString())); } return dataGrid; @@ -1457,17 +1492,27 @@ } }); if (!CollectionUtils.isEmpty(userIds)) { + Map<String, User> userVOMap = new HashMap<>(); + for (String userId : userIds) { + if(!StringUtils.isNumeric(userId)){ + continue; + } + User data = iUserClient.userInfoById(Long.valueOf(userId)).getData(); + if(data != null){ + userVOMap.put(String.valueOf(data.getId()),data); + } + } // Map<String, SmUserVO> userVOMap = Optional.ofNullable(userQueryService.listUserByUserIds(userIds)).orElseGet(() -> new ArrayList<>()).stream().collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t)); -// dataMap.stream().forEach(data -> { -// String creator = data.getOrDefault("creator", null); -// if (StringUtils.isNotBlank(creator) && userVOMap.containsKey(creator.toLowerCase(Locale.ROOT))) { -// data.put("creator", creator + "(" + userVOMap.get(creator.toLowerCase(Locale.ROOT)).getName() + ")"); -// } -// String lastmodifier = data.getOrDefault("lastmodifier", null); -// if (StringUtils.isNotBlank(lastmodifier) && userVOMap.containsKey(lastmodifier.toLowerCase(Locale.ROOT))) { -// data.put("lastmodifier", lastmodifier + "(" + userVOMap.get(lastmodifier.toLowerCase(Locale.ROOT)).getName() + ")"); -// } -// }); + dataMap.stream().forEach(data -> { + String creator = data.getOrDefault("creator", null); + if (StringUtils.isNotBlank(creator) && userVOMap.containsKey(creator.toLowerCase(Locale.ROOT))) { + data.put("creator", creator + "(" + userVOMap.get(creator.toLowerCase(Locale.ROOT)).getRealName() + ")"); + } + String lastmodifier = data.getOrDefault("lastmodifier", null); + if (StringUtils.isNotBlank(lastmodifier) && userVOMap.containsKey(lastmodifier.toLowerCase(Locale.ROOT))) { + data.put("lastmodifier", lastmodifier + "(" + userVOMap.get(lastmodifier.toLowerCase(Locale.ROOT)).getRealName() + ")"); + } + }); } } @@ -1510,8 +1555,9 @@ //澶勭悊鏋氫妇鐨勫唴瀹癸紝涓轰簡鍏煎浠ュ墠鐨勬暟鎹�,濡傛灉鏁版嵁涓嶈兘浣跨敤鏋氫妇杞崲鐨勮瘽锛岄偅杩樻槸鏄剧ず浠ュ墠鐨勫�� if (!CollectionUtils.isEmpty(enumAttrVOs)) { enumAttrVOs.stream().forEach(enumAttrVO -> { +// String attrId = enumAttrVO.getId().toUpperCase(Locale.ROOT); String attrId = enumAttrVO.getId().toLowerCase(Locale.ROOT); - String oldValue = data.getOrDefault(attrId, null); + String oldValue = String.valueOf(data.getOrDefault(attrId, null)); if (StringUtils.isNotBlank(oldValue)) { List<KeyValue> comboxKVs = listComboboxItems(enumAttrVO); String newValue = oldValue; @@ -1560,9 +1606,11 @@ referVO.setValueField(VciQueryWrapperForDO.OID_FIELD); referVO.setTextField("name"); } - //琛ㄩ渶瑕佹敼 + //浣跨敤浼犲叆鐨勪笟鍔$被鍨嬫煡璇㈣〃 + R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(referVO.getReferType())); // String referTable = VciBaseUtil.getTableName(referVO.getReferType()); - String referTable = "pl_code_wupin"; + String referTable = listR.getData().get(0).getTableName(); +// String referTable = "pl_code_classify"; String referTableNick = attrVO.getId() + "0"; String left = " left join " + referTable + " " + referTableNick + " on " + referTableNick + "." + referVO.getValueField() + " = t." + attrVO.getId(); joinTableList.put(attrVO.getId(), left); @@ -1578,12 +1626,20 @@ selectFieldList.add(referTableNick + "." + showFieldInSource + " as " + referShowField); }); } - // 寰呭畬鍠� -// Optional.ofNullable(attributeService.getDefaultAttributeVOMap()).orElseGet(() -> new HashMap<>()).keySet().stream().forEach(attrId -> { -// if (!selectFieldList.contains(attrId) && !"secretgrade".equalsIgnoreCase(attrId)) { -// selectFieldList.add(attrId); + R<BtmTypeVO> allAttributeByBtmId = btmTypeClient.getDefaultAttrByBtmId(btmType); +// Optional.ofNullable(allAttributeByBtmId.getData()).orElseGet(allAttributeByBtmId.getData().getAttributes()).stream().forEach(attrId -> { +// if (!selectFieldList.contains(attrId.getOid()) && !"secretgrade".equalsIgnoreCase(attrId.getOid())) { +// selectFieldList.add(attrId.getOid()); // } // }); + if(allAttributeByBtmId.getData() != null ){ + for (BtmTypeAttributeVO attribute : allAttributeByBtmId.getData().getAttributes()) { + if (!selectFieldList.contains(attribute.getId()) && !"secretgrade".equalsIgnoreCase(attribute.getId())) { + selectFieldList.add(attribute.getId()); + } + } + } + if (!selectFieldList.contains(CODE_FIELD)) { selectFieldList.add(CODE_FIELD); } @@ -1653,7 +1709,10 @@ } //瑕佹敼锛岃〃鏄庤幏鍙栨湁闂 // String tableName = VciBaseUtil.getTableName(btmType); - String tableName = "pl_code_wupin"; +// String tableName = "pl_code_wupin"; + R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(btmType)); +// String referTable = VciBaseUtil.getTableName(referVO.getReferType()); + String tableName = listR.getData().get(0).getTableName(); String sql = "select " + selectFieldList.stream().map(s -> (s.contains(".") ? s : ("t." + s))).collect(Collectors.joining(",")) + " from " + tableName + SPACE + "t" + SPACE + joinTableList.values().stream().collect(Collectors.joining(SPACE)) @@ -1786,7 +1845,7 @@ */ private String getSqlByValue(String selectKey, String value, Map<String, CodeClassifyTemplateAttrVO> attrVOMap) { StringBuilder sql = new StringBuilder(); - // 寰呭畬鍠� + //寰呭畬鍠� // if (!selectKey.contains(".") && (attrVOMap.containsKey(selectKey.toLowerCase(Locale.ROOT)) || attributeService.isDefaultAttr(selectKey) || selectKey.matches(RegExpConstant.LETTER))) { // sql.append("t."); // } @@ -2420,10 +2479,20 @@ CodeClassifyVO topClassifyVO = classifyService.getTopClassifyVO(templateVO.getCodeclassifyoid()); String btmId = topClassifyVO.getBtmtypeid(); //鏌ヨ鏁版嵁 - Map<String, String> conditionMap = WebUtil.getOidQuery(oid); + Map<String, String> conditionMap = new HashMap<>(); + conditionMap.put("t.oid",oid); CodeTemplateAttrSqlBO sqlBO = getSqlByTemplateVO(btmId, templateVO, conditionMap, new PageHelper(-1)); //鎴戜滑浣跨敤鍜屼笟鍔$被鍨嬬殑鏉ユ煡璇� - List<Map> cbos = commonsMapper.selectBySql(sqlBO.getSqlUnPage()); + List<Map> cbosB = commonsMapper.selectBySql(sqlBO.getSqlUnPage()); + List<Map<String,String>> cbos = new ArrayList<>(); + cbosB.stream().forEach(map -> { + Map<String, String> data = new HashMap<>(); + for (Object o : map.keySet()) { + data.put(((String) o).toLowerCase(Locale.ROOT), String.valueOf(map.get(o))); + } + cbos.add(data); + }); + // List<ClientBusinessObject> cbos = boService.queryByOnlySql(sqlBO.getSqlUnPage()); if (CollectionUtils.isEmpty(cbos)) { throw new VciBaseException("鏁版嵁鍦ㄧ郴缁熶腑涓嶅瓨鍦紝鏄惁鍥犱负淇敼杩囦笟鍔$被鍨嬶紵"); @@ -2436,7 +2505,7 @@ wrapperData(dataList, templateVO, sqlBO.getSelectFieldList(), true); R<List<Map<String, String>>> result = R.data(Collections.singletonList(cbo)); //鎴戜滑瑕佺湅鏄惁涓嶆槸鍗囩増鐨勶紝鍗囩増鐨勮瘽锛岄渶瑕佸姣斾笉鐩哥瓑鐨勫睘鎬� - String copy = String.valueOf(cbo.get("COPYFROMVERSION")); + String copy = cbo.get("copyfromversion"); // if (StringUtils.isBlank(copy)) { // copy = cbo.getAttributeValue("copyfromversion"); // } @@ -2860,27 +2929,31 @@ MdmUIInfoVO uiInfoVO = getTableDefineByTemplateVO(getUsedTemplateByClassifyOid(codeClassifyOid)); uiInfoVO.setLeaf(classifyService.countChildrenByClassifyOid(codeClassifyOid) == 0); if (StringUtils.isNotBlank(functionId) && !"~".equalsIgnoreCase(functionId)) { + List<Menu> buttonVOS = iSysClient.getMenuButtonByType(uiInfoVO.getTemplateVO().getBtmTypeId()).getData(); + //鍔熻兘鎸夐挳鏈嶅姟杩樻湭瀹炵幇锛岀瓑瀹炵幇浜嗭紝鍦ㄨ繘琛岃皟鐢� - //List<SmOperationVO> operationVOS = operationService.listButtonByFunctionId(functionId); +// List<SmOperationVO> operationVOS = operationService.listButtonByFunctionId(functionId); // if (operationVOS == null) { // operationVOS = new ArrayList<>(); // } - //鏌ヨ鎵╁睍鎸夐挳 +// //鏌ヨ鎵╁睍鎸夐挳 // List<CodeButtonVO> buttonVOS = listButtonInToolbarByClassifyOid(codeClassifyOid); -// if (!CollectionUtils.isEmpty(buttonVOS)) { -// for (int i = 0; i < buttonVOS.size(); i++) { -// CodeButtonVO buttonVO = buttonVOS.get(i); -// SmOperationVO operationVO = new SmOperationVO(); -// operationVO.setModuleNo(functionId); -// operationVO.setUniqueFlag(buttonVO.getId()); -// operationVO.setName(buttonVO.getName()); -// operationVO.setAlias(operationVO.getName()); -// operationVO.setExecuteJs(buttonVO.getExecutejs()); -// operationVO.setIconCls(buttonVO.getIconcls()); -// operationVOS.add(operationVO); -// } -// } -// uiInfoVO.setButtons(operationVOS); + List<SmOperationVO> operationVOS = new ArrayList<>(); + if (!CollectionUtils.isEmpty(buttonVOS)) { + for (int i = 0; i < buttonVOS.size(); i++) { + Menu buttonVO = buttonVOS.get(i); + SmOperationVO operationVO = new SmOperationVO(); + operationVO.setModuleNo(functionId); + operationVO.setUniqueFlag(buttonVO.getCode()); + operationVO.setName(buttonVO.getName()); + operationVO.setAlias(buttonVO.getAlias()); + operationVO.setOrderNo(String.valueOf(buttonVO.getSort())); +// operationVO.setExecuteJs(buttonVO.getExecuteJs()); +// operationVO.setIconCls(buttonVO.getIconCls()); + operationVOS.add(operationVO); + } + } + uiInfoVO.setButtons(operationVOS); } return uiInfoVO; } @@ -3013,7 +3086,7 @@ R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(boName)); String userName = AuthUtil.getUser().getUserName(); BaseModel bo = new BaseModel(); - bo.setOid(VciBaseUtil.getPk()); +// bo.setOid(VciBaseUtil.getPk()); // bo.setRevisionid(VciBaseUtil.getPk()); // bo.setNameoid(VciBaseUtil.getPk()); bo.setBtmname(boName); @@ -3038,7 +3111,7 @@ bo.setLctid(listR.getData().get(0).getLifeCycleId()); // if(StringUtils.isNotBlank(listR.getData().get(0).getLifeCycleId())){ // OsLifeCycleVO lifeCycleVO = lifeService.getLifeCycleById(listR.getData().get(0).getLifeCycleId()); - bo.setLcStatus("Editing"); + bo.setLcStatus("Editing"); // } bo.setId(""); bo.setName(""); 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 689147f..526c013 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 @@ -21,6 +21,7 @@ import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum; import com.vci.ubcs.starter.web.pagemodel.DataGrid; import com.vci.ubcs.starter.web.pagemodel.KeyValue; +import com.vci.ubcs.starter.web.util.LangBaseUtil; import com.vci.ubcs.starter.web.util.VciBaseUtil; import com.vci.ubcs.starter.web.util.VciDateUtil; import lombok.AllArgsConstructor; @@ -37,6 +38,7 @@ import javax.annotation.Resource; import java.io.File; +import java.io.IOException; import java.util.*; import java.util.stream.Collectors; @@ -255,15 +257,60 @@ String redisUUid=batchImportCodes(orderDTO,templateVO,dataSet,errorMap,true); CodeImProtRusultVO codeImProtRusultVO = new CodeImProtRusultVO(); List<String> needRowIndexList = new ArrayList<>(); -// String filePath = returnErrorToExcel(dataSet.getRowData(), errorMap, needRowIndexList, dataSet.getColName()); -// if(StringUtils.isNotBlank(filePath)) { -// codeImProtRusultVO.setFilePath(filePath); -// } -// if(StringUtils.isNotBlank(redisUUid)){ -// codeImProtRusultVO.setRedisUuid(redisUUid); -// } - return null; -// return codeImProtRusultVO; + String filePath = returnErrorToExcel(dataSet.getRowData(), errorMap, needRowIndexList, dataSet.getColName()); + if(StringUtils.isNotBlank(filePath)) { + codeImProtRusultVO.setFilePath(filePath); + } + if(StringUtils.isNotBlank(redisUUid)){ + codeImProtRusultVO.setRedisUuid(redisUUid); + } +// return null; + return codeImProtRusultVO; + } + + /** + * 閿欒淇℃伅杩斿洖excel + * @param rowDataList 鎵�鏈夌殑瀵煎叆鏁版嵁 + * @param errorMap 閿欒鐨勪俊鎭� + * @param needRowIndexList 闇�瑕佸啓鍏ョ殑鏁版嵁鐨勮鍙� + * @param titleRowData 鏍囬琛� + * + * @return 閿欒鐨別xcel鏂囦欢锛屾病鏈夐敊璇細杩斿洖绌� + */ + private String returnErrorToExcel(Collection<SheetRowData> rowDataList, + Map<String,String> errorMap, + List<String> needRowIndexList,List<String> titleRowData){ + if(CollectionUtils.isEmpty(errorMap)){ + return ""; + } + Map<String, SheetRowData> rowIndexDataMap = rowDataList.stream().filter(s -> !needRowIndexList.contains(s.getRowIndex())).collect(Collectors.toMap(s -> s.getRowIndex(), t -> t)); + List<WriteExcelData> errorDataList = new ArrayList<>(); + errorDataList.add(new WriteExcelData(0,0,"閿欒淇℃伅")); + for (int i = 0; i < titleRowData.size(); i++) { + //閿欒淇℃伅鍦ㄦ渶鍚� + errorDataList.add(new WriteExcelData(0,i+1,titleRowData.get(i))); + } + Integer[] newRowIndex = new Integer[]{1}; + errorMap.forEach((index,error)->{ + //閿欒淇℃伅鍏ㄩ儴缁勫悎鍒颁竴璧� + SheetRowData rowData = rowIndexDataMap.getOrDefault(index, null); + if(rowData!=null){ + errorDataList.add(new WriteExcelData(newRowIndex[0],0,error)); + rowData.getData().forEach((colIndex,value)->{ + errorDataList.add(new WriteExcelData(newRowIndex[0],colIndex+1,value)); + }); + newRowIndex[0]++; + } + }); + String excelFileName = LocalFileUtil.getDefaultTempFolder() + File.separator + "閿欒淇℃伅.xls"; + WriteExcelOption eo = new WriteExcelOption(errorDataList); + try { + new File(excelFileName).createNewFile(); + } catch (IOException e) { + throw new VciBaseException(LangBaseUtil.getErrorMsg(e)); + } + ExcelUtil.writeDataToFile(excelFileName,eo); + return excelFileName; } /** 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 dc5e143..88358b5 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 @@ -240,4 +240,60 @@ order by id asc </select> + <select id="selectCodeClassifyDOByTree" resultMap="plCodeClassifyResultMap"> + select codeclassify0.OWNER as owner, + codeclassify0.BTMTYPEID as btmtypeid, + codeclassify0.CREATOR as creator, + codeclassify0.CREATETIME as createtime, + codeclassify0.LASTMODIFIER as lastmodifier, + codeclassify0.DESCRIPTION as description, + codeclassify0.ORDERNUM as ordernum, + codeclassify0.CODERULEOID as coderuleoid, + codeclassify0.OID as oid, + codeclassify0.BTMNAME as btmname, + codeclassify0.BTMTYPENAME as btmtypename, + codeclassify0.CODEKEYATTRREPEATOID as codekeyattrrepeatoid, + codeclassify0.PARENTCODECLASSIFYOID as parentcodeclassifyoid, + codeclassify0.NAME as name, + codeclassify0.LASTMODIFYTIME as lastmodifytime, + codeclassify0.ID as id, + codeclassify0.CODERESEMBLERULEOID as coderesembleruleoid, + codeclassify0.LCSTATUS as lcstatus, + codeclassify0.TS as ts, + coderuleoid.name as codeRuleOidName, + codekeyattrrepeatoid.name as codeKeyAttrRepeatOidName, + coderesembleruleoid.name as codeResembleRuleOidName + from pl_code_classify codeclassify0 + left join pl_code_rule coderuleoid + on codeclassify0.codeRuleOid = coderuleoid.oid + left join pl_code_keyattrrepeat codekeyattrrepeatoid + on codeclassify0.codeKeyAttrRepeatOid = codekeyattrrepeatoid.oid + left join pl_code_resemblerule coderesembleruleoid + on codeclassify0.codeResembleRuleOid = coderesembleruleoid.oid + where codeclassify0.lcstatus = #{lcstatus} + <if test="parentcodeclassifyoid != null and parentcodeclassifyoid != ''"> + and codeclassify0.parentcodeclassifyoid = #{parentcodeclassifyoid} + </if> + <if test="parentcodeclassifyoid == null or parentcodeclassifyoid == ''"> + and codeclassify0.parentcodeclassifyoid is null + and codeclassify0.id = #{id} + </if> + order by id asc + </select> + + <select id="selectClassifyByKeyAndReseRel" resultMap="plCodeClassifyResultMap"> + SELECT PCC.*, + PCK.NAME AS CODEKEYATTRREPEATOIDNAME, + PCR.NAME AS CODERESEMBLERULEOIDNAME, + PCE.NAME CODERULEOIDNAME + FROM PL_CODE_CLASSIFY PCC + LEFT JOIN PL_CODE_KEYATTRREPEAT PCK + ON PCC.CODEKEYATTRREPEATOID = PCK.OID + LEFT JOIN PL_CODE_RESEMBLERULE PCR + ON PCC.CODERESEMBLERULEOID = PCR.OID + LEFT JOIN PL_CODE_RULE PCE + ON PCC.CODERULEOID = PCE.OID + WHERE PCC.OID IN (${oids}) + </select> + </mapper> diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeClassifyTemplateAttrMapper.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeClassifyTemplateAttrMapper.xml index 640e301..c94b4c4 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeClassifyTemplateAttrMapper.xml +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeClassifyTemplateAttrMapper.xml @@ -100,5 +100,13 @@ where codeclstempattr0.classifytemplateoid = #{oid} </select> + <select id="selectByClassifytemplateoidRel" resultMap="CodeClstempattrResultMap"> + select PCC.*, PLT.NAME classifyTemplateOidName + from PL_CODE_CLSTEMPATTR PCC, PL_CODE_CLSTEMPLATE PLT + where PCC.CLASSIFYTEMPLATEOID = PLT.OID + AND PCC.classifytemplateoid IN (${oid}) + ORDER BY PCC.ORDERNUM ASC + </select> + </mapper> diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeResembleRule.xml b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeResembleRule.xml new file mode 100644 index 0000000..16a84be --- /dev/null +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeResembleRule.xml @@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.vci.ubcs.code.mapper.CodeResembleRuleMapper"> + + <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 --> + <resultMap id="CodeResembleRuleResultMap" type="com.vci.ubcs.code.entity.CodeResembleRule"> + <id property="oid" column="OID"/> + <result property="btmname" column="BTMNAME"/> + <result property="revisionOid" column="REVISIONOID"/> + <result property="nameOid" column="NAMEOID"/> + <result property="lastR" column="LASTR"/> + <result property="firstR" column="FIRSTR"/> + <result property="lastV" column="LASTV"/> + <result property="firstV" column="FIRSTV"/> + <result property="creator" column="CREATOR"/> + <result property="createTime" column="CREATETIME"/> + <result property="lastModifier" column="LASTMODIFIER"/> + <result property="lastModifyTime" column="LASTMODIFYTIME"/> + <result property="revisionRule" column="REVISIONVALUE"/> + <result property="versionRule" column="VISIONRULE"/> + <result property="revisionValue" column="REVISIONRULE"/> + <result property="versionValue" column="VERSIONVALUE"/> + <result property="revisionSeq" column="REVISIONSEQ"/> + <result property="versionSeq" column="VERSIONSEQ"/> + <result property="lctid" column="LCTID"/> + <result property="lcStatus" column="LCSTATUS"/> + <result property="ts" column="TS"/> + <result property="id" column="ID"/> + <result property="name" column="NAME"/> + <result property="description" column="DESCRIPTION"/> + <result property="owner" column="OWNER"/> + <result property="copyFromVersion" column="COPYFROMVERSION"/> + <result property="ignoreCaseFlag" column="IGNORECASEFLAG"/> + <result property="ignoreSpaceFlag" column="IGNORESPACEFLAG"/> + <result property="ignoreAllSpaceFlag" column="IGNOREALLSPACEFLAG"/> + <result property="ignoreWidthFlag" column="IGNOREWIDTHFLAG"/> + <result property="linkCharacter" column="LINKCHARACTER"/> + </resultMap> + +</mapper> 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 9f357d7..e53c1fc 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 @@ -22,6 +22,10 @@ ${inSql} </select> + <select id="queryByOnlySqlForMap" resultType="java.util.Map"> + ${inSql} + </select> + <insert id="insertByBaseModel" parameterType="java.util.Map"> insert into ${tableName} ( diff --git a/Source/UBCS/ubcs-service/ubcs-omd/pom.xml b/Source/UBCS/ubcs-service/ubcs-omd/pom.xml index 64fa44e..5b2fc51 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/pom.xml +++ b/Source/UBCS/ubcs-service/ubcs-omd/pom.xml @@ -69,6 +69,12 @@ <artifactId>orai18n</artifactId> <version>${orai18n.version}</version> </dependency> + <dependency> + <groupId>com.vci.ubcs</groupId> + <artifactId>ubcs-code-api</artifactId> + <version>3.0.1.RELEASE</version> + <scope>compile</scope> + </dependency> </dependencies> <build> diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/RevisionRuleController.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/RevisionRuleController.java index 5df32ff..96e0c27 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/RevisionRuleController.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/controller/RevisionRuleController.java @@ -94,4 +94,16 @@ revisionRuleService.batchDelete(revisionRuleVOList); return R.status(true); } + + /** + * 鏌ョ湅浣跨敤鑼冨洿 + * @param id 鐗堟湰瑙勫垯id + * @return 鎵ц缁撴灉 + */ + @GetMapping("/get-apply-range") + @ApiOperationSupport(order = 6) + @ApiOperation(value = "鐗堟湰瑙勫垯id",notes = "浼犲叆id") + public R getApplyRange(String id){ + return R.data(revisionRuleService.getApplyRange(id)); + } } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IRevisionRuleService.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IRevisionRuleService.java index 3310980..21c6c00 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IRevisionRuleService.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/IRevisionRuleService.java @@ -188,4 +188,10 @@ */ IPage<RevisionRuleVO> pageQueryVO(BaseQueryObject baseQueryObject) throws VciBaseException; + /** + * 鏌ョ湅搴旂敤鑼冨洿 + * @param id id + * @return 鎵ц缁撴灉 + */ + List<BtmTypeVO> getApplyRange(String id); } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java index c5f1306..d98174c 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/AttributeServiceImpl.java @@ -116,15 +116,10 @@ @Override public List<BtmTypeVO> applyRange(String oid) { List<BtmType> btmTypes = baseMapper.selectApplyRange(oid); - if (!CollectionUtils.isEmpty(btmTypes)){ - return btmTypes.stream().map(btm -> { - BtmTypeVO vo = new BtmTypeVO(); - vo.setId(btm.getId()); - vo.setName(btm.getName()); - return vo; - }).collect(Collectors.toList()); + if (CollectionUtils.isEmpty(btmTypes)){ + return null; } - return null; + return BtmTypeWrapper.build().listEntityVO(btmTypes); } /** 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 571c89d..409b4f2 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 @@ -845,7 +845,7 @@ }else { throw new VciBaseException("棰嗗煙鍚嶇О涓嶇鍚堣鍒�"); } - return PL + StringPool.UNDERSCORE + domain + StringPool.UNDERSCORE + id; + return PL + StringPool.UNDERSCORE + domain.toUpperCase(Locale.ROOT) + StringPool.UNDERSCORE + id.toUpperCase(Locale.ROOT); } /** diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/RevisionRuleServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/RevisionRuleServiceImpl.java index 6bd5b0d..a662529 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/RevisionRuleServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/RevisionRuleServiceImpl.java @@ -560,4 +560,16 @@ beanMap.putAll(conditionMap); return RevisionRuleWrapper.build().pageVO(baseMapper.selectPage(Condition.getPage(query),Condition.getQueryWrapper(queryConditionObj).lambda().orderByAsc(RevisionRule::getId))); } + + /** + * 鏌ョ湅搴旂敤鑼冨洿 + * + * @param id id + * @return 鎵ц缁撴灉 + */ + @Override + public List<BtmTypeVO> getApplyRange(String id) { + VciBaseUtil.alertNotNull(id,"鐗堟湰瑙勫垯鑻辨枃鍚嶇О"); + return BtmTypeWrapper.build().listEntityVO(btmTypeMapper.selectList(Wrappers.<BtmType>query().lambda().eq(BtmType::getRevisionRuleId,id))); + } } diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/LinkTypeWrapper.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/LinkTypeWrapper.java index 7406ba9..47620ec 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/LinkTypeWrapper.java +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/LinkTypeWrapper.java @@ -49,6 +49,7 @@ }); vo.setFromBtmTypes(fromBtm); vo.setToBtmTypes(toBtm); + vo.setTableName(vo.getTableName().toUpperCase(Locale.ROOT)); // 鏋氫妇澶勭悊 vo.setDomainText(NewAppConstantEnum.getTextByName(vo.getDomain())); return vo; diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/AttributeMapper.xml b/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/AttributeMapper.xml index 2baadc1..15d3763 100644 --- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/AttributeMapper.xml +++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/resources/mapper/AttributeMapper.xml @@ -51,8 +51,7 @@ </select> <select id="selectApplyRange" resultType="com.vci.ubcs.omd.entity.BtmType"> select - btm.name, - btm.ID + btm.* from pl_omd_btm_type btm join pl_omd_btm_type_attribute btmAttr on btmAttr.pk_btm_type = btm.oid join <include refid="tableName"/> attr on attr.id = btmAttr.id diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/feign/SysClient.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/feign/SysClient.java index 5f1dca7..4480390 100644 --- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/feign/SysClient.java +++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/feign/SysClient.java @@ -21,10 +21,7 @@ import lombok.AllArgsConstructor; import org.springblade.core.tenant.annotation.NonDS; import org.springblade.core.tool.api.R; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import springfox.documentation.annotations.ApiIgnore; import java.util.List; @@ -65,6 +62,11 @@ public R<Menu> getMenu(Long id) { return R.data(menuService.getById(id)); } + @Override + @GetMapping(MENU_BUTTON) + public R<List<Menu>> getMenuButtonByType(String btmType) { + return R.data(menuService.getMenuButtonByType(btmType)); + } @Override @GetMapping(DEPT) diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/mapper/MenuMapper.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/mapper/MenuMapper.java index 64bfdc7..f66512a 100644 --- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/mapper/MenuMapper.java +++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/mapper/MenuMapper.java @@ -124,6 +124,12 @@ * @return */ List<Menu> allMenu(); + /** + * 鏍规嵁涓氬姟绫诲瀷鏌ヨ鑿滃崟鐨勫瓙鎸夐挳 + * + * @return + */ + List<Menu> selectMenuChildByBtnType(String btmType); /** * 鏉冮檺閰嶇疆鑿滃崟 diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/IMenuService.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/IMenuService.java index ea50eeb..b6b738a 100644 --- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/IMenuService.java +++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/IMenuService.java @@ -18,6 +18,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import org.springblade.core.secure.BladeUser; +import org.springblade.core.tool.api.R; import org.springblade.core.tool.node.TreeNode; import org.springblade.core.tool.support.Kv; import com.vci.ubcs.system.entity.Menu; @@ -162,5 +163,11 @@ * @return */ boolean submit(Menu menu); - + /** + * 鑾峰彇鑿滃崟涓嬮潰鐨勬寜閽� + * + * @param btmType 涓氬姟绫诲瀷 + * @return List<Menu> + */ + List<Menu> getMenuButtonByType(String btmType); } diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/MenuServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/MenuServiceImpl.java index b926374..dc5af71 100644 --- a/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/MenuServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/MenuServiceImpl.java @@ -30,9 +30,10 @@ import com.vci.ubcs.system.service.ITopMenuSettingService; import com.vci.ubcs.system.wrapper.MenuWrapper; import lombok.AllArgsConstructor; -import org.springblade.core.log.exception.ServiceException; +import com.vci.ubcs.core.log.exception.ServiceException; import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; +import org.springblade.core.tool.api.R; import org.springblade.core.tool.constant.BladeConstant; import org.springblade.core.tool.node.ForestNodeMerger; import org.springblade.core.tool.node.TreeNode; @@ -294,4 +295,9 @@ return saveOrUpdate(menu); } + @Override + public List<Menu> getMenuButtonByType(String btmType) { + return baseMapper.selectMenuChildByBtnType(btmType); + } + } diff --git a/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml b/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml index bda18b0..50d8103 100644 --- a/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml +++ b/Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/MenuMapper.xml @@ -475,4 +475,13 @@ GROUP BY m.path </select> + <select id="selectMenuChildByBtnType" resultMap="menuResultMap"> + select pm.* + from pl_sys_menu ps, pl_sys_menu pm + where ps.is_deleted = 0 + and ps.category = 1 + and ps.alias = #{btmType} + and ps.id = pm.parent_id order by pm.sort asc + </select> + </mapper> -- Gitblit v1.9.3