From 795b4cacb10ec7f89154b9ce9e19bf7878051d8d Mon Sep 17 00:00:00 2001 From: ludc Date: 星期三, 24 一月 2024 16:25:53 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/com/vci/ubcs/code/applyjtcodeservice/vo/DockingMainData.java | 5 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/Scheduling/SearchDataSyncForERPScheduling.java | 59 ++ Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue | 178 ++++---- Source/UBCS-WEB/src/const/code/codeKeyAttrRepeat.js | 9 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java | 96 ++++ Source/UBCS-WEB/src/components/Theme/ThemeClassifyTreeform.vue | 286 ++++++------ Source/UBCS-WEB/src/views/integration/integrationIndex.vue | 194 ++++++-- Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemDataVO.java | 49 ++ Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemParam.java | 24 + Source/UBCS-WEB/src/views/docking/loge.vue | 5 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java | 133 +++-- Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemVO.java | 19 Source/UBCS-WEB/src/views/docking/info.vue | 1 Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/MdmSearchItemCodeProvider.java | 28 + Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java | 146 ++++- Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue | 7 Source/UBCS-WEB/src/api/integration/integration.js | 4 Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeDuckingSyncService.java | 2 Source/UBCS-WEB/src/components/Theme/ThemeTemplatePro.vue | 16 19 files changed, 856 insertions(+), 405 deletions(-) diff --git a/Source/UBCS-WEB/src/api/integration/integration.js b/Source/UBCS-WEB/src/api/integration/integration.js index 5700480..32beeff 100644 --- a/Source/UBCS-WEB/src/api/integration/integration.js +++ b/Source/UBCS-WEB/src/api/integration/integration.js @@ -50,7 +50,6 @@ } // 灞炴�ф槧灏勪繚瀛樻柟娉� export const batchAddSave = (params) => { - console.log(params) return request({ url: '/api/ubcs-applyjtcodeservice/DockingPreApplyCode/batchAddSave', method: 'post', @@ -59,10 +58,9 @@ } // 鍚屾闆嗗洟灞炴�фā鍨嬭鍥� export const syncClassifyModel = (params) => { - console.log(params) return request({ url: '/api/ubcs-applyjtcodeservice/DockingPreApplyCode/syncClassifyModel', method: 'post', params: params }) -} \ No newline at end of file +} diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue b/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue index d13d14f..982fa57 100644 --- a/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue +++ b/Source/UBCS-WEB/src/components/Theme/ThemeAttrCrud.vue @@ -276,8 +276,8 @@ </el-dialog> <!-- 鍏ㄥ睆缂栬緫--> <el-dialog :before-close="escEdit" :visible.sync="attrEditVisible" append-to-body fullscreen="true"> - <attrCrud :ProData="this.ProData" :attrFlagChiledren="this.attrFlag" :crudArrayFlag="this.crudArrayFlag" - :editOpenFlag="editOpenFlag" :editStyleFlag="editStyleFlag" :btnAuthList="btnAuthList" + <attrCrud :ProData="this.ProData" :attrFlagChiledren="this.attrFlag" :btnAuthList="btnAuthList" + :crudArrayFlag="this.crudArrayFlag" :editOpenFlag="editOpenFlag" :editStyleFlag="editStyleFlag" @editCloseChildren="editClose"></attrCrud> </el-dialog> <!-- 缁勫悎瑙勫垯--> @@ -321,82 +321,83 @@ </div> - <el-table v-if="this.crudArrayFlag" - ref="referAttrCrud" - v-loading="loading" - :data="ProData" - :height="this.tableHeight" - :header-cell-style="{background:'#FAFAFA',color:'#505050'}" - border - style="width: 100%" - @select="selectHandle" - @cell-click="handleCellClicks" - @selection-change="selectionChange" - @row-click="rowClick" + <el-table v-if="this.crudArrayFlag" + ref="referAttrCrud" + v-loading="loading" + :data="ProData" + :header-cell-style="{background:'#FAFAFA',color:'#505050'}" + :height="this.tableHeight" + border + style="width: 100%" + @select="selectHandle" + @cell-click="handleCellClicks" + @selection-change="selectionChange" + @row-click="rowClick" + > + <el-table-column + :fixed="!editStyleFlag ? 'left' : undefined" + type="selection" width="55"> + </el-table-column> + <!--<el-table-column fixed label="搴忓彿" type="index" width="55"></el-table-column>--> + <el-table-column v-for="(item,index) in this.option.column" v-if="item.edit !='referName'" + :key="item.id" + :fixed="!editStyleFlag ? item.fixed : undefined" + :formatter="formAttr" + :label="item.label" + :prop="item.prop" + :show-overflow-tooltip="true" + :sortable="item.sortable" + :width="item.width||(item.label.length >=4 ?'160':item.label.length==3 ?'130':'100')" + align="center" > - <el-table-column - :fixed="!editStyleFlag ? 'left' : undefined" - type="selection" width="55"> - </el-table-column> - <!--<el-table-column fixed label="搴忓彿" type="index" width="55"></el-table-column>--> - <el-table-column v-for="(item,index) in this.option.column" v-if="item.edit !='referName'" - :key="item.id" - :fixed="!editStyleFlag ? item.fixed : undefined" - :formatter="formAttr" - :label="item.label" - :prop="item.prop" - :show-overflow-tooltip="true" - :sortable="item.sortable" - :width="item.width||(item.label.length >=4 ?'160':item.label.length==3 ?'130':'100')" - align="center" - > - <template slot-scope="{ row }"> - <el-input - v-if="editingRows === row && editShows== item.prop && item.prop != 'codeDateFormat' && (item.edit == 'text' ||item.edit == 'refer' )" - v-show="!AddCellFlag" - :ref="'input' + row.oid" - v-model="row[item.prop]" - @blur="saveRows(row)" - ></el-input> - <el-input-number v-if="editingRows === row && editShows== item.prop && item.edit == 'number'" - v-show="!AddCellFlag" - v-model="row[item.prop]" - :style="{width:(item.width-10)+'px'}" - controls-position="right" - size="small" @blur="saveRows"></el-input-number> - <el-select v-if="editingRows === row && editShows== item.prop && item.edit == 'select' " slot="prepend" :clearable="true" - v-model="row[item.prop]" allow-create default-first-option - filterable v-show="!AddCellFlag" - @blur="selectChangeHandler(item.editConfig,index)"> - <el-option - v-for="optionItem in item.data" - :key="optionItem.dictValue" - :label="optionItem.dictValue" - :value="optionItem.dictValue"> - </el-option> - </el-select> - <el-switch - v-if="item.edit === 'switch'" v-model="row[item.prop]" :disabled="!editOpenFlag" active-value="true" - inactive-value="false"> - </el-switch> - <span v-else>{{ row[item.prop] }}</span> - </template> - </el-table-column> - <el-table-column - fixed="right" - label="鎿嶄綔" - width="70"> - <template slot-scope="scope"> - <el-button - size="small" - type="text" - @click.native.prevent="CrudRowDel(scope.$index)"> - 绉婚櫎 - </el-button> - </template> - </el-table-column> - </el-table> - </div> + <template slot-scope="{ row }"> + <el-input + v-if="editingRows === row && editShows== item.prop && item.prop != 'codeDateFormat' && (item.edit == 'text' ||item.edit == 'refer' )" + v-show="!AddCellFlag" + :ref="'input' + row.oid" + v-model="row[item.prop]" + @blur="saveRows(row)" + ></el-input> + <el-input-number v-if="editingRows === row && editShows== item.prop && item.edit == 'number'" + v-show="!AddCellFlag" + v-model="row[item.prop]" + :style="{width:(item.width-10)+'px'}" + controls-position="right" + size="small" @blur="saveRows"></el-input-number> + <el-select v-if="editingRows === row && editShows== item.prop && item.edit == 'select' " v-show="!AddCellFlag" + slot="prepend" + v-model="row[item.prop]" :clearable="true" allow-create + default-first-option filterable + @blur="selectChangeHandler(item.editConfig,index)"> + <el-option + v-for="optionItem in item.data" + :key="optionItem.dictValue" + :label="optionItem.dictValue" + :value="optionItem.dictValue"> + </el-option> + </el-select> + <el-switch + v-if="item.edit === 'switch'" v-model="row[item.prop]" :disabled="!editOpenFlag" active-value="true" + inactive-value="false"> + </el-switch> + <span v-else>{{ row[item.prop] }}</span> + </template> + </el-table-column> + <el-table-column + fixed="right" + label="鎿嶄綔" + width="70"> + <template slot-scope="scope"> + <el-button + size="small" + type="text" + @click.native.prevent="CrudRowDel(scope.$index)"> + 绉婚櫎 + </el-button> + </template> + </el-table-column> + </el-table> + </div> </template> <script> @@ -452,7 +453,7 @@ default: false }, btnAuthList: { - type:Array + type: Array } }, watch: { @@ -1110,10 +1111,10 @@ indexClassName: "搴忓彿", indexLabelClassName: '搴忓彿', index: true, - indexFixed:false, - selectionFixed:false, + indexFixed: false, + selectionFixed: false, columnBtn: false, - refreshBtn:false, + refreshBtn: false, border: true, addBtn: false, menu: false, @@ -1563,7 +1564,7 @@ ...mapGetters(["permission"]), permissionList() { return { - busineStatus: this.vaildData(this.btnAuthList.attr_add, false) , + busineStatus: this.vaildData(this.btnAuthList.attr_add, false), fullscreenStatus: this.vaildData(this.btnAuthList.attr_view_edit, false), ruleStatus: this.vaildData(this.btnAuthList.attr_rule, false), attrStatus: this.vaildData(this.btnAuthList.attr_group, false), @@ -1597,7 +1598,7 @@ if (this.editStyleFlag) { return '800px' } else { - return 'calc(100vh - 595px)' + return 'calc(100vh - 565px)' } } }, @@ -1724,8 +1725,8 @@ ts: "" }) // 灏嗚嫳鏂囩紪鍙疯浆鎹负灏忓啓 - let { id, ...res } = this.busineAddList; - this.busineAddList = { id: id.toLowerCase(), ...res }; + let {id, ...res} = this.busineAddList; + this.busineAddList = {id: id.toLowerCase(), ...res}; this.ProData.push(JSON.parse(JSON.stringify(this.busineAddList))); } }) @@ -2072,7 +2073,7 @@ const regex = new RegExp(this.rulesData.ruleRowBds); if (regex.test(this.RulesForm.TestContent)) { this.$message.success('鏍¢獙鎴愬姛') - }else { + } else { this.$message.error('鏍¢獙澶辫触') } }, @@ -2084,7 +2085,8 @@ } if (this.attrSelectList.length < 1) { this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉挎暟鎹�') - return;; + return; + ; } if (this.attrSelectList.length === 1) { this.injectVisible = true; @@ -2244,7 +2246,7 @@ <style lang="scss" scoped> //鍥哄畾鍒楅珮搴� /deep/ .el-table__fixed { - height: calc(100vh - 612px) !important; + height: calc(100vh - 584px) !important; } ///deep/ .el-table__fixed[v-if='editStyleFlag'] { diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTreeform.vue b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTreeform.vue index 3219fe6..b9801cc 100644 --- a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTreeform.vue +++ b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTreeform.vue @@ -1,23 +1,23 @@ <template> <div> - <avue-form v-model="loneTreeNewForm" :option="renonlyOption" v-if="flag == 'renonly'"> + <avue-form v-if="flag == 'renonly'" v-model="loneTreeNewForm" :option="renonlyOption"> </avue-form> - <avue-form v-model="loneTreeNewForm" :option="this.editOption" @submit="submits" v-else-if="flag == 'edit'"> + <avue-form v-else-if="flag == 'edit'" v-model="loneTreeNewForm" :option="this.editOption" @submit="submits"> </avue-form> <div> -<!-- 缂栫爜瑙勫垯--> + <!-- 缂栫爜瑙勫垯--> <ThemeChildren ref="ThemeMasterChildren" - dialogTitle="缂栫爜瑙勫垯" - codeName="codeRuleOidName" - codeType="coderule" - code-lcstatus="Released" - :visible.sync="MasterdialogVisible" :SelectOption="SelectOption" :TreeAddform="loneTreeNewForm" + :visible.sync="MasterdialogVisible" + code-lcstatus="Released" + codeName="codeRuleOidName" + codeType="coderule" + dialogTitle="缂栫爜瑙勫垯" @defineHandler="handlerDefine" ></ThemeChildren> -<!-- 鍏抽敭灞炴�ф煡璇㈣鍒�--> + <!-- 鍏抽敭灞炴�ф煡璇㈣鍒�--> <ThemeChildren ref="ThemeKeyChildren" :SelectOption="SelectOption" @@ -41,7 +41,7 @@ dialogTitle="鐩镐技椤规煡璇㈣鍒�" @defineHandler="handlerDefine" ></ThemeChildren> -<!-- 瀛樺偍鐨勪笟鍔$被鍨�--> + <!-- 瀛樺偍鐨勪笟鍔$被鍨�--> <ThemeChildren ref="ThemeBtmChildren" :SelectOption="btmSelectOption" @@ -57,19 +57,20 @@ </template> <script> -import {defaultReferDataGrid,referDataGrid} from '@/api/MasterData/master' +import {defaultReferDataGrid, referDataGrid} from '@/api/MasterData/master' import {TreeEditSave} from '@/api/template/templateAttr' import ThemeChildren from '@/components/FormTemplate/ThemeChildren' + export default { components: {ThemeChildren}, name: "classifyTreeform.vue", - props: ['loneTreeNewForm','flag','Editclose','TreeFlag','nodeClickList'], + props: ['loneTreeNewForm', 'flag', 'Editclose', 'TreeFlag', 'nodeClickList'], data() { return { - masterRow:null, - masterInput:'', - MasterSearchSelects:"", - SelectOption:[ + masterRow: null, + masterInput: '', + MasterSearchSelects: "", + SelectOption: [ { value: 'name', label: '涓枃鍚嶇О' @@ -79,7 +80,7 @@ label: '鑻辨枃鍚嶇О' } ], - btmSelectOption:[ + btmSelectOption: [ { value: 'id', label: '涓氬姟绫诲瀷缂栧彿' @@ -89,23 +90,23 @@ label: '涓氬姟绫诲瀷鍚嶇О' }, ], - MasterdialogVisible:false, - KeydialogVisible:false, - SimidialogVisible:false, - BtmdialogVisible:false, + MasterdialogVisible: false, + KeydialogVisible: false, + SimidialogVisible: false, + BtmdialogVisible: false, form: { name: "鍝堝搱", sex: "鐢�" }, renonlyOption: { - submitBtn:false, - emptyBtn:false, - columnBtn:false, + submitBtn: false, + emptyBtn: false, + columnBtn: false, column: [ { label: '涓婚搴�/鍒嗙被缂栧彿', prop: 'id', - labelWidth:135, + labelWidth: 135, disabled: true, rules: [{ required: true, @@ -117,7 +118,7 @@ label: '涓婚搴�/鍒嗙被鍚嶇О', prop: 'name', disabled: true, - labelWidth:135, + labelWidth: 135, rules: [{ required: true, message: "涓婚搴�/鍒嗙被鍚嶇О", @@ -125,15 +126,15 @@ }] }, { - label:"鎻忚堪", - prop:"description", - labelWidth:128, + label: "鎻忚堪", + prop: "description", + labelWidth: 128, disabled: true, }, { label: '瀛樺偍鐨勪笟鍔$被鍨�', prop: 'btmTypeName', - labelWidth:128, + labelWidth: 128, disabled: true, rules: [{ required: true, @@ -142,21 +143,21 @@ }] }, { - label:"缂栫爜瑙勫垯", - prop:"codeRuleOidName", - labelWidth:128, + label: "缂栫爜瑙勫垯", + prop: "codeRuleOidName", + labelWidth: 128, disabled: true, }, { - label:"鍏抽敭灞炴�ф煡璇㈣鍒�", - prop:"codeKeyAttrRepeatOidName", - labelWidth:128, + label: "鍏抽敭灞炴�ф煡璇㈣鍒�", + prop: "codeKeyAttrRepeatOidName", + labelWidth: 128, disabled: true, }, { - label:"鐩镐技鏌ヨ瑙勫垯", - prop:"codeResembleRuleOidName", - labelWidth:128, + label: "鐩镐技鏌ヨ瑙勫垯", + prop: "codeResembleRuleOidName", + labelWidth: 128, disabled: true, }, { @@ -165,7 +166,7 @@ type: 'switch', activeColor: "#13ce66", inactiveColor: "#ff4949", - labelWidth:160, + labelWidth: 160, disabled: true, dicData: [{ label: '鍚�', @@ -180,99 +181,106 @@ }, FormList: {}, - masterSelectList:[], - KeySelectLIst:[], - simSelectList:[], - btmSelectList:[] + masterSelectList: [], + KeySelectLIst: [], + simSelectList: [], + btmSelectList: [] } }, - computed:{ - editOption(){ - return{ - column: [ - { - label: '涓婚搴�/鍒嗙被缂栧彿', - prop: 'id', - labelWidth:128, - rules: [{ - required: true, - message: "涓婚搴�/鍒嗙被缂栧彿", - trigger: "blur" - }] - }, - { - label: '涓婚搴�/鍒嗙被鍚嶇О', - prop: 'name', - labelWidth:128, - rules: [{ - required: true, - message: "涓婚搴�/鍒嗙被鍚嶇О", - trigger: "blur" - }] - }, - { - label:"鎻忚堪", - prop:"description", - labelWidth:128, - }, - { - label: '瀛樺偍鐨勪笟鍔$被鍨�', - prop: 'btmTypeName', - labelWidth:128, - focus:this.btmFoucus, - // readonly: true, - display:this.TreeFlag, - rules: [{ - required: true, - message: "瀛樺偍鐨勪笟鍔$被鍨�", - trigger: "blur" - }] - }, - { - label:"缂栫爜瑙勫垯", - prop:"codeRuleOidName", - labelWidth:128, - focus:this.CodeFocus, - readonly: true, - }, - { - label:"鍏抽敭灞炴�ф煡璇㈣鍒�", - prop:"codeKeyAttrRepeatOidName", - labelWidth:128, - focus:this.Keyfouce, - readonly: true, - }, - { - label:"鐩镐技鏌ヨ瑙勫垯", - prop:"codeResembleRuleOidName", - labelWidth:128, - focus: this.simFouce, - readonly: true, - }, - { - label: '鏄惁鍙備笌鍏抽敭灞炴�ф牎楠�', - prop: 'isParticipateCheck', - type: 'switch', - activeColor: "#13ce66", - inactiveColor: "#ff4949", - labelWidth:160, - dicData: [{ - label: '鍚�', - value: 0 - }, { - label: '鏄�', - value: 1 + computed: { + editOption() { + return { + column: [ + { + label: '涓婚搴�/鍒嗙被缂栧彿', + prop: 'id', + labelWidth: 128, + rules: [{ + required: true, + message: "涓婚搴�/鍒嗙被缂栧彿", + trigger: "blur" + }] + }, + { + label: '涓婚搴�/鍒嗙被鍚嶇О', + prop: 'name', + labelWidth: 128, + rules: [{ + required: true, + message: "涓婚搴�/鍒嗙被鍚嶇О", + trigger: "blur" + }] + }, + { + label: "鎻忚堪", + prop: "description", + labelWidth: 128, + }, + { + label: '瀛樺偍鐨勪笟鍔$被鍨�', + prop: 'btmTypeName', + labelWidth: 128, + focus: this.btmFoucus, + display: this.TreeFlag, + rules: [{ + required: true, + message: "瀛樺偍鐨勪笟鍔$被鍨�", + trigger: "blur" + }] + }, + { + label: "缂栫爜瑙勫垯", + prop: "codeRuleOidName", + labelWidth: 128, + focus: this.CodeFocus, + readonly: true, + }, + { + label: "鍏抽敭灞炴�ф煡璇㈣鍒�", + prop: "codeKeyAttrRepeatOidName", + labelWidth: 128, + focus: this.Keyfouce, + change: (data) => { + if (data.value === "") { + this.loneTreeNewForm.codeKeyAttrRepeatOid = "" } - ] } - ] + }, + { + label: "鐩镐技鏌ヨ瑙勫垯", + prop: "codeResembleRuleOidName", + labelWidth: 128, + focus: this.simFouce, + change: (data) => { + if (data.value === "") { + this.loneTreeNewForm.codeResembleRuleOid = "" + } + } + }, + { + label: '鏄惁鍙備笌鍏抽敭灞炴�ф牎楠�', + prop: 'isParticipateCheck', + type: 'switch', + activeColor: "#13ce66", + inactiveColor: "#ff4949", + labelWidth: 160, + dicData: [{ + label: '鍚�', + value: 0 + }, { + label: '鏄�', + value: 1 + } + ] + } + ] } } }, - watch:{ - TreeFlag:{ - handler(newval,oldval){ + watch: { + TreeFlag: { + handler(newval, oldval) { // console.log(newval) } } @@ -308,19 +316,19 @@ this.$emit('MasterHandler', this.loneTreeNewForm); } }, - submits(form,done){ - if(this.TreeFlag){ - TreeEditSave(this.loneTreeNewForm).then(res=>{ + submits(form, done) { + if (this.TreeFlag) { + TreeEditSave(this.loneTreeNewForm).then(res => { this.$message.success('淇敼鎴愬姛'); this.Editclose() this.$emit('referTreeForm'); this.$emit('flushed'); done() }) - }else { - this.loneTreeNewForm.btmTypeName=''; - this.loneTreeNewForm.btmTypeId=''; - TreeEditSave(this.loneTreeNewForm).then(res=>{ + } else { + this.loneTreeNewForm.btmTypeName = ''; + this.loneTreeNewForm.btmTypeId = ''; + TreeEditSave(this.loneTreeNewForm).then(res => { this.$message.success('淇敼鎴愬姛'); this.Editclose() this.$emit('referTreeForm'); @@ -333,23 +341,23 @@ this.$message.success(err); }, //缂栫爜瑙勫垯澶辩劍 - CodeFocus(){ - this.MasterdialogVisible=true; + CodeFocus() { + this.MasterdialogVisible = true; this.$refs.ThemeMasterChildren.defaultSearchRend() }, //鍏抽敭灞炴�уけ鐒� - Keyfouce(){ - this.KeydialogVisible=true; + Keyfouce() { + this.KeydialogVisible = true; this.$refs.ThemeKeyChildren.defaultSearchRend(); }, //鐩镐技椤瑰け鐒� - simFouce(){ - this.SimidialogVisible=true; + simFouce() { + this.SimidialogVisible = true; this.$refs.ThemeSimChildren.defaultSearchRend(); }, //涓氬姟绫诲瀷澶辩劍 - btmFoucus(){ + btmFoucus() { this.BtmdialogVisible = true; this.$refs.ThemeBtmChildren.btmDefaultRend(); }, diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue index 24b45f4..44d1c34 100644 --- a/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue +++ b/Source/UBCS-WEB/src/components/Theme/ThemeClassifyTrees.vue @@ -122,9 +122,9 @@ ></classify-auth-dialog> <!-- 鏁版嵁鎺堟潈瀵硅瘽妗� --> <data-auth-dialog + :TreeNode="TreeEditObj" :classifyData="classifyData" :visible.sync="dataAuthVisible" - :TreeNode="TreeEditObj" ></data-auth-dialog> </basic-container> </el-aside> @@ -708,7 +708,8 @@ index: true, border: true, columnBtn: false, - height: 180, + height: 150, + refreshBtn: false, addBtn: this.Formlist.length <= 0 && this.nodeClickList != "", editBtn: false, delBtn: false, @@ -1142,7 +1143,7 @@ }, //鏍戠偣鍑讳簨浠� async nodeClick(data) { - getAuthButtonList({classifyId: data.oid,code: "classifyTree",authType: "classify_auth"}).then(res => { + getAuthButtonList({classifyId: data.oid, code: "classifyTree", authType: "classify_auth"}).then(res => { this.btnAuthList = res.data.data; }).catch(error => { console.log(error) diff --git a/Source/UBCS-WEB/src/components/Theme/ThemeTemplatePro.vue b/Source/UBCS-WEB/src/components/Theme/ThemeTemplatePro.vue index 5886b02..5f830ed 100644 --- a/Source/UBCS-WEB/src/components/Theme/ThemeTemplatePro.vue +++ b/Source/UBCS-WEB/src/components/Theme/ThemeTemplatePro.vue @@ -2,13 +2,16 @@ <basic-container> <avue-tabs :option="Taboption" @change="handleChange"></avue-tabs> <span v-if="type.prop==='tab1'"> - <attrCrud :ProData="ProData" :btnAuthList="btnAuthList" :crudOid="crudOid" :checkStatus="checkStatus" :crudLCStatus="crudLCStatus" :crudArray="crudArray" :Formlist="Formlist" :codeClassifyOid="codeClassifyOid"></attrCrud> + <attrCrud :Formlist="Formlist" :ProData="ProData" :btnAuthList="btnAuthList" :checkStatus="checkStatus" + :codeClassifyOid="codeClassifyOid" :crudArray="crudArray" :crudLCStatus="crudLCStatus" + :crudOid="crudOid"></attrCrud> </span> <span v-else-if="type.prop==='tab2'"> - <FlowPath ref="FlowPath" :code="this.crudOid" :checkStatus="checkStatus" :crudLCStatus="crudLCStatus" :Formlist="Formlist"></FlowPath> + <FlowPath ref="FlowPath" :Formlist="Formlist" :checkStatus="checkStatus" :code="this.crudOid" + :crudLCStatus="crudLCStatus"></FlowPath> </span> <span v-else-if="type.prop==='tab3'"> - <stage ref="stage" :code="this.crudOid" :Formlist="Formlist"></stage> + <stage ref="stage" :Formlist="Formlist" :code="this.crudOid"></stage> </span> </basic-container> @@ -18,7 +21,7 @@ <script> export default { name: "TemplatePro.vue", - props: ['ProData','crudOid','crudLCStatus','crudArray','Formlist','codeClassifyOid','rowIndex','crudArrayFlag','btnAuthList'], + props: ['ProData', 'crudOid', 'crudLCStatus', 'crudArray', 'Formlist', 'codeClassifyOid', 'rowIndex', 'crudArrayFlag', 'btnAuthList'], data: function () { return { type: {}, @@ -34,7 +37,7 @@ prop: 'tab3', }] }, - checkStatus:false,//鏄惁闇�瑕侀獙璇佹ā鏉跨姸鎬�,false涓哄叧闂潈闄� + checkStatus: false,//鏄惁闇�瑕侀獙璇佹ā鏉跨姸鎬�,false涓哄叧闂潈闄� } }, created() { @@ -42,8 +45,7 @@ this.type = this.Taboption.column[0]; this.type.prop = "tab1"; }, - watch:{ - }, + watch: {}, methods: { // Tab鏍忓垏鎹� handleChange(column) { diff --git a/Source/UBCS-WEB/src/const/code/codeKeyAttrRepeat.js b/Source/UBCS-WEB/src/const/code/codeKeyAttrRepeat.js index 693c4bb..4aba109 100644 --- a/Source/UBCS-WEB/src/const/code/codeKeyAttrRepeat.js +++ b/Source/UBCS-WEB/src/const/code/codeKeyAttrRepeat.js @@ -329,14 +329,5 @@ trigger: "blur" }], }, - { - required: true, - label: '娣锋穯瀛楃杞崲', - prop:'confound', - labelWidth : 110, - search: false, - formslot:true, - display:true - } ] } diff --git a/Source/UBCS-WEB/src/views/docking/info.vue b/Source/UBCS-WEB/src/views/docking/info.vue index 3fa22d8..5d28a3d 100644 --- a/Source/UBCS-WEB/src/views/docking/info.vue +++ b/Source/UBCS-WEB/src/views/docking/info.vue @@ -121,6 +121,7 @@ indexFixed: false, selectionFixed:false, searchShow: false, + refreshBtn:false, searchMenuSpan: 6, rowKey: "id", tabs: true, diff --git a/Source/UBCS-WEB/src/views/docking/loge.vue b/Source/UBCS-WEB/src/views/docking/loge.vue index c20a3f9..4fdffbe 100644 --- a/Source/UBCS-WEB/src/views/docking/loge.vue +++ b/Source/UBCS-WEB/src/views/docking/loge.vue @@ -127,6 +127,7 @@ option: { height:'auto', calcHeight: 20, + menuWidth:120, tip: false, searchShow: false, border: true, @@ -134,9 +135,10 @@ indexFixed:false, selection: false, dialogClickModal: false, - menuFixed:false, + menuFixed:'right', dialogType: 'drawer', viewBtn: true, + stripe: true, addBtn:false, editBtn:false, delBtn:false, @@ -227,6 +229,7 @@ { label: '杩斿洖msg', prop: 'msg', + width: 150, overHidden: true }, { diff --git a/Source/UBCS-WEB/src/views/integration/integrationIndex.vue b/Source/UBCS-WEB/src/views/integration/integrationIndex.vue index 6b902af..d175b2d 100644 --- a/Source/UBCS-WEB/src/views/integration/integrationIndex.vue +++ b/Source/UBCS-WEB/src/views/integration/integrationIndex.vue @@ -5,8 +5,8 @@ <el-aside style="background-color: #fff;" width="210px"> <el-input v-model="filterText" placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�"> </el-input> - <el-menu :default-openeds="['1', '3']" > - <el-tree ref="tree" :data="treeData" :filter-node-method="filterNode" :props="defaultProps" + <el-menu :default-openeds="['1', '3']"> + <el-tree ref="tree" :data="treeData" :filter-node-method="filterNode" :props="defaultProps" accordion class="filter-tree" empty-text="鏆傛棤鏁版嵁" @node-click="handelTreeCell"> <template slot-scope="{ node, data }" class="el-tree-node__label"> <el-tooltip :content="$createElement('div', { domProps: { innerHTML: node.label } })" class="item" @@ -22,25 +22,33 @@ </el-menu> </el-aside> </el-card> - <el-main > + <el-main> <el-card style="height: calc(100vh - 128px)"> <el-form :model="form"> <el-form-item label="闆嗗洟鍒嗙被" label-width="80px" size="small"> <el-select ref="selectTree" v-model="groupVal" clearable placeholder="璇烽�夋嫨" popper-class="popperTreeSelect"> - <el-option :label="groupVal" :value="groupVal"> - <el-tree ref="groupTree" :data="groupTreeData" :props="defaultProps" empty-text="鏆傛棤鏁版嵁" - @node-click="handleNodeClick"> + <el-option :disabled="true" :label="groupVal" :value="groupVal"> + <el-tree ref="groupTree" + :data="groupTreeData" + :default-checked-keys="defaultCheckedKeys" + :default-expanded-keys="defaultCheckedKeys" + :props="defaultProps" + empty-text="鏆傛棤鏁版嵁" + node-key="oid" + show-checkbox + @check="handleCheck"> </el-tree> </el-option> </el-select> </el-form-item> </el-form> - <el-card style="height:38vh"> + <el-card style="height:38vh"> <avue-crud ref="crudMapping" :data="mappingData" :option="optionMapping" :table-loading="loading" @select="setCurrentRow" @row-update="handleMapingUpdate" - @row-click="handleMapingClick" @row-dblclick="handleMapingRowClick" @selection-change="selectionChange" + @row-click="handleMapingClick" @row-dblclick="handleMapingRowClick" + @selection-change="selectionChange" @select-all="handleSelectAll"> <template slot="menuLeft"> <el-button :disabled="disabledPush" icon="el-icon-plus" size="small" type="primary" @@ -105,6 +113,8 @@ highlightCurrentRow: true, } return { + defaultCheckedKeys: [], + isNodeDisabled: true, // 琛ㄥ崟鍊� form: { // 闆嗗洟鏍戞樉绀哄�� @@ -156,6 +166,7 @@ header: true, rowKey: 'oid', selection: false, + refreshBtn: false, column: [ {label: '闆嗗洟鍒嗙被', prop: 'sourceClassifyName', minWidth: 80}, {label: '鎵�灞炶鍥�', prop: 'viewName', minWidth: 80}, @@ -180,12 +191,15 @@ treeData: [], // 闆嗗洟鍒嗙被鏍� groupTreeData: [], - // 鏍憄opos鏇挎崲鍊� + // 鏍憄rpos鏇挎崲鍊� defaultProps: { children: 'children', label: 'name', id: 'oid', - isLeaf: '' + isLeaf: '', + // disabled:()=>{ + // return true + // } }, transferProps: { key: 'oid', @@ -201,6 +215,7 @@ mappingForm: {}, // 瀹氭椂鍣� times: null, + TreeSelectOid: "" } }, @@ -277,25 +292,80 @@ } }, // 鎺ュ彛鑾峰彇闆嗗洟鍒嗙被鏍� - async referTree(oid, checked) { - this.groupTreeData = [] - const response = await referTree({'conditionMap[codeclsfid]': oid, parentOid:'0'}) + async referTree(oid) { + this.groupTreeData = []; + const response = await referTree({'conditionMap[codeclsfid]': oid, parentOid: '0'}); if (response.status === 200) { - if (checked) { - let items = response.data.map(item => { - let obj = {} - if (item.checked) obj = {...item} - else obj = null - return obj - }) - var r = items.filter(s => { - return s && s.trim() - }); - this.groupTreeData = r - } else { - this.groupTreeData = response.data + this.groupTreeData = response.data; // 灏嗚幏鍙栧埌鐨勬暟鎹祴鍊肩粰闆嗗洟鍒嗙被鏍戞暟鎹� + + await this.filterCheckedNodes(this.groupTreeData, this.defaultCheckedKeys); + await this.$nextTick(() => { + this.$refs.groupTree.setCheckedKeys(this.defaultCheckedKeys); + }); + + this.handlerTreeData(this.groupTreeData); + + this.defaultCheckedKeys = []; + } + }, + // 杩囨护鍑烘潵checked涓簍rue鐨勮妭鐐� + filterCheckedNodes(data, checkedNodes) { + data.forEach(node => { + if (node.checked) { + checkedNodes.push(node.oid); + this.getGridAttrMapping(node.oid); + this.form.groupValue = node.oid; + this.groupVal = node.name; + } + + if (node.children && node.children.length > 0) { + this.filterCheckedNodes(node.children, checkedNodes); + } + }); + }, + // 杩囨护澶勭悊姣忎釜鑺傜偣 + handlerTreeNode(node) { + // 鏍规嵁鑺傜偣绂佺敤鐘舵�佽缃妭鐐规槸鍚︾鐢� + this.$set(node, 'disabled', !node.checked); + if (node.children && node.children.length > 0) { + // 閫掑綊寰幆澶勭悊鎵�鏈夊瓙鑺傜偣 + node.children.forEach(child => this.handlerTreeNode(child)); + } + }, + // 妫�鏌ユ墍鏈夎妭鐐规槸鍚﹂兘鏄湭绂佺敤鐘舵�� + allNodeChecked(data) { + for (const node of data) { + // 濡傛灉瀛樺湪绂佺敤鑺傜偣杩斿洖false + if (node.checked) { + return false; + } + // 濡傛灉瀛樺湪瀛愯妭鐐逛笖瀛愯妭鐐瑰瓨鍦ㄧ鐢ㄨ妭鐐癸紝鍒欒繑鍥瀎alse + if (node.children && !this.allNodeChecked(node.children)) { + return false; } } + // 娌℃湁绂佺敤鑺傜偣杩斿洖true + return true; + }, + // 闆嗗洟鍒嗙被鏍戠鐢ㄦ暟鎹鐞嗘暣鍚堟柟娉� + handlerTreeData(data) { + if (this.allNodeChecked(data)) { + // 濡傛灉鎵�鏈夎妭鐐归兘鏈鐢ㄥ皢鎵�鏈夎妭鐐硅缃负false + data.forEach(node => { + this.$set(node, 'disabled', false); // Vue 3 涓彲鑳戒笉闇�瑕佽繖鏍峰仛 + }); + return; + } + // 鏌ユ壘绂佺敤鑺傜偣 + let checkedNode = data.find(node => node.checked); + data.forEach(node => { + // 濡傛灉鑺傜偣涓嶆槸绂佺敤鑺傜偣璁剧疆涓簍rue + this.$set(node, 'disabled', node !== checkedNode); + if (node.children && node.children.length > 0) { + // 璋冪敤寰幆鑺傜偣 + this.handlerTreeNode(node); + } + }); }, // 宸︿晶鏍戣繃婊ゆ悳绱� filterNode(value, data) { @@ -324,9 +394,13 @@ message: "璇烽�夋嫨涓�鏉¢泦鍥㈠垎绫�" }); } else { - const response = await syncClassifyModel(param) - if (response.status === 200) { - console.log(response) + try { + const response = await syncClassifyModel(param); + if (response.status === 200) { + this.$message.success(response.data.msg) + } + } catch (error) { + console.error(error); } } }, @@ -350,17 +424,16 @@ }, // 宸︿晶鏍戠偣鍑� handelTreeCell(event) { - if (event.leaf) { - this.treeParam.codeClassifyId = event.oid - this.form.groupValue = '' - this.groupVal = '' - this.tableData = [] - this.referTree(event.oid, event.checked) - this.getListCodeByClassId(event.oid) - } + this.treeParam.codeClassifyId = event.oid + this.form.groupValue = '' + this.groupVal = '' + this.tableData = [] + this.mappingData = [] + this.referTree(event.oid) + this.getListCodeByClassId(event.oid) }, - // 闆嗗洟鍒嗙被鏍戠偣鍑� - handleNodeClick(data) { + // 闆嗗洟鍒嗙被鏍戦�夋嫨 + handleCheck(data) { this.form.groupValue = data.oid this.groupVal = data.name this.$refs.selectTree.blur() @@ -438,27 +511,30 @@ } </script> <style lang="scss" scoped> - .setstyle { - min-height: 200px; - padding: 0 !important; - margin: 0; - overflow: auto; - cursor: default !important; +.setstyle { + min-height: 200px; + padding: 0 !important; + margin: 0; + overflow: auto; + cursor: default !important; +} + +::v-deep { + .el-transfer-panel__list { + width: 100%; + height: 370px; } - ::v-deep{ - .el-transfer-panel__list { - width: 100%; - height: 370px; - } - .el-transfer-panel__body { - height: 370px; - } - .el-input { - width: auto; - } - .el-transfer-panel { - width: 270px; - } + .el-transfer-panel__body { + height: 370px; } + + .el-input { + width: auto; + } + + .el-transfer-panel { + width: 270px; + } +} </style> diff --git a/Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/com/vci/ubcs/code/applyjtcodeservice/vo/DockingMainData.java b/Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/com/vci/ubcs/code/applyjtcodeservice/vo/DockingMainData.java index 9415317..e8ffe25 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/com/vci/ubcs/code/applyjtcodeservice/vo/DockingMainData.java +++ b/Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/com/vci/ubcs/code/applyjtcodeservice/vo/DockingMainData.java @@ -28,6 +28,10 @@ */ private String className; /*** + * 闆嗗洟鐮� + */ + private String customCoding; + /*** * 妯″瀷瑙嗗浘淇℃伅 */ private List<DockingViewVO> viewInfos; @@ -41,6 +45,7 @@ ", createBy='" + createBy + '\'' + ", className='" + className + '\'' + ", viewInfos=" + viewInfos + + ", customCoding=" + customCoding + '}'; } } diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/MdmSearchItemCodeProvider.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/MdmSearchItemCodeProvider.java new file mode 100644 index 0000000..6eb55d2 --- /dev/null +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/feign/MdmSearchItemCodeProvider.java @@ -0,0 +1,28 @@ +package com.vci.ubcs.code.feign; + +import com.vci.ubcs.code.vo.pagemodel.SearchItemParam; +import com.vci.ubcs.code.vo.pagemodel.SearchItemVO; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import javax.validation.constraints.NotNull; + +/**** + * 浠庡閮ㄨ幏鍙栧瀷鍙蜂唬鍙凤紝鎴栬�呴」鐩唬鍙� + * @author xiejun + * @date 2023-05-26 + */ +@FeignClient(name = "erpIntegration", + url = "${erp.item.url:http://127.0.0.1:8080}", + path = "") +public interface MdmSearchItemCodeProvider { + + /*** + * 鏌ヨ椤圭洰浠e彿鎴栬�呭瀷鍙蜂唬鍙� + * @param searchItemParam + * @return 鎵ц缁撴灉 + */ + @PostMapping("/api/pp/pp/ext/extend/v1.0/getppModelByElem") + SearchItemVO getppModelByElem(@NotNull @RequestBody SearchItemParam searchItemParam); +} diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemDataVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemDataVO.java new file mode 100644 index 0000000..e5c434e --- /dev/null +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemDataVO.java @@ -0,0 +1,49 @@ +package com.vci.ubcs.code.vo.pagemodel; + +import lombok.Data; + +import java.util.Date; + +@Data +public class SearchItemDataVO { + /*** + * 鏁版嵁鐘舵�� 瀛楃鍨嬶紝鏋氫妇鍊硷紱鍒跺崟锛�0锛涘鎵逛腑锛�1锛涢�氳繃锛�2锛涢┏鍥烇細3锛� + */ + private String status; + /** + * 鍒堕�犲瀷鍙蜂唬鍙� + */ + private String mmodelcode; + /** + * 椤圭洰浠e彿 + */ + private String projectitem; + /*** + * 椤圭洰缂栫爜 + */ + private String projectcode; + /*** + * 浜у搧缂栫爜 + */ + private String materialcode; + /*** + * 鍒涘缓鑰� + */ + private String creatby; + /*** + * 鍒涘缓鏃ユ湡 鏃ユ湡鍨嬶紝濡傦細2023-09-08 19:24:11 + */ + private Date createdon; + /*** + * 鏇存敼鑰� + */ + private String lastchangedby; + /*** + * 鏇存敼鏃堕棿 鏃ユ湡鍨嬶紝濡傦細2023-09-08 19:24:11 + */ + private Date lastchangedon; + /*** + * 瀛楃鍨嬶紝鏋氫妇鍊硷紱鍋滅敤锛�0锛涘惎鐢細1锛� + */ + private String isenabled; +} diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemParam.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemParam.java new file mode 100644 index 0000000..bcf4e58 --- /dev/null +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemParam.java @@ -0,0 +1,24 @@ +package com.vci.ubcs.code.vo.pagemodel; + +import lombok.Data; + +import java.util.Date; +@Data +public class SearchItemParam { + /*** + * 璋冪敤绯荤粺鏍囪瘑 + */ + private String systag; + /** + * 鏁版嵁鐘舵�� + */ + private String status; + /** + * 鏄惁鍋滅敤 + */ + private String isenabled; + /** + * 鏈�鍚庝慨鏀规棩鏈� + */ + private Date lastchangedon; +} diff --git a/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemVO.java b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemVO.java new file mode 100644 index 0000000..8a4d891 --- /dev/null +++ b/Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/SearchItemVO.java @@ -0,0 +1,19 @@ +package com.vci.ubcs.code.vo.pagemodel; + +import lombok.Data; + +import java.util.List; + +@Data +public class SearchItemVO { + /*** + * 杩斿洖鏍囪瘑 + */ + private String code; + /*** + * 娑堟伅淇℃伅 + */ + private String msg; + + private List<SearchItemDataVO> data; +} diff --git a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java index 3e9a87c..7267079 100644 --- a/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java @@ -1,5 +1,6 @@ package com.vci.ubcs.code.applyjtcodeservice.service.impl; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -10,6 +11,8 @@ import com.vci.ubcs.code.applyjtcodeservice.service.IGroupMdmInterService; import com.vci.ubcs.code.applyjtcodeservice.vo.*; import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO; +import com.vci.ubcs.code.vo.webserviceModel.apply.ApplyDataVO; +import com.vci.ubcs.code.vo.webserviceModel.apply.InterParameterVO; import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultDataObjectDetailDO; import com.vci.ubcs.starter.util.MdmBtmTypeConstant; import com.vci.ubcs.code.applyjtcodeservice.feign.MdmApplyGroupCodeProvider; @@ -19,8 +22,10 @@ import com.vci.ubcs.starter.web.util.BeanUtilForVCI; import com.vci.ubcs.starter.web.util.VciBaseUtil; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.map.CaseInsensitiveMap; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; +import org.springblade.core.tool.utils.Func; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -43,11 +48,11 @@ private String code=""; private String msg=""; - @Value("${docking.apply.partCoe:10}") + @Value("${docking.apply.partCode:101}") public String partCoe; - @Value("${docking.apply.userFlag:false}") + @Value("${docking.apply.usedFlag:false}") public boolean usedFlag; - @Value("${docking.apply.unitCode:41000}") + @Value("${docking.apply.unitCode:4100}") public String dockingApplyUnitCode; @Value("${docking.apply.sysName:410-MDM}") @@ -119,18 +124,33 @@ Map<String, DockingPreApplyForm> addDockingPreApplyFormMap = new HashMap<String, DockingPreApplyForm>(); Map<String, DockingPreApplyForm> editDockingPreApplyFormMap = new HashMap<String, DockingPreApplyForm>(); Map<String, BaseModel> baseModelMap = new HashMap<String, BaseModel>(); + //鏁版嵁搴撲笉瀛樺湪鐨� + /*List<BaseModel> newDdataModelList = dataModelList.stream().filter(cbo -> { + String groupcode =cbo.getData().getOrDefault("GROUPCODE",""); + return StringUtils.isBlank(groupcode); + }).collect(Collectors.toList()); + if(newDdataModelList.size()==0) + return R.fail("鐢宠鎺ュ彛璋冪敤鎴愬姛,鎵�鏈夋暟鎹凡缁忓瓨鍦ㄩ泦鍥㈢爜");*/ + //缁勭粐鏁版嵁 dockingGroupDataVO = queryApplycodeDataObjects(1, dataModelList, addDockingPreApplyFormMap, editDockingPreApplyFormMap, baseModelMap); - DockingResultVO resultDataObject = mdmApplyGroupCodeProvider.receiveAddApply(dockingGroupDataVO); + Object object = JSONObject.toJSON(dockingGroupDataVO); + String resultStr = object.toString(); + log.info("鐢宠闆嗗洟鐮佹暟鎹牸寮�:->"+resultStr); + DockingResultVO resultDataObject =new DockingResultVO(); + resultDataObject= mdmApplyGroupCodeProvider.receiveAddApply(dockingGroupDataVO); code = resultDataObject.getCode(); msg = resultDataObject.getMsg(); + boolean res=false; if ("1".equals(resultDataObject.getCode())) {//缁撴灉姝g‘鐨勬儏鍐� List<DockingDataVO> dataObjectVOList = resultDataObject.getData(); + res=true; dataObjectVOList.stream().forEach(dataObject -> { boolean isEditDatas = false; String code2 = dataObject.getCode(); DockingMainDataVO data2 = dataObject.getData(); String applyId = data2.getApplyId();//鐢宠鍗昳d + BaseModel baseModel = baseModelMap.get(applyId); String customCoding = StringUtils.isBlank(data2.getCustomCoding()) ? "" : data2.getCustomCoding();//闆嗗洟鐮佹 msg = dataObject.getMsg(); if (code2.equals("1")) {//缁撴灉姝g‘鐨勬儏鍐� @@ -142,8 +162,16 @@ if (editDockingPreApplyFormMap.containsKey(applyId)) { DockingPreApplyForm dockingPreApplyForm = editDockingPreApplyFormMap.get(applyId); dockingPreApplyForm.setCode(code2); + //dockingPreApplyForm.setDescription(baseModel.getId()); dockingPreApplyForm.setMsg("鐢宠锛�" + msg); - dockingPreApplyForm.setGroupCode(customCoding); + if(StringUtils.isBlank(dockingPreApplyForm.getGroupCode())) { + dockingPreApplyForm.setGroupCode(customCoding); + }else{ + isEditDatas = true; + if (StringUtils.isBlank(customCoding)) { + customCoding=dockingPreApplyForm.getGroupCode(); + } + } ObjectMapper mp = new ObjectMapper(); String writeValueAsString = null; try { @@ -151,11 +179,13 @@ dockingPreApplyForm.setContent(writeValueAsString); } catch (JsonProcessingException e) { } + DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm); } //鏂板鐨勭敵璇峰崟鏁版嵁 if (addDockingPreApplyFormMap.containsKey(applyId)) { DockingPreApplyForm dockingPreApplyForm = addDockingPreApplyFormMap.get(applyId); dockingPreApplyForm.setCode(code2); + dockingPreApplyForm.setDescription(baseModel.getId()); dockingPreApplyForm.setMsg("鐢宠锛�" + msg); dockingPreApplyForm.setGroupCode(customCoding); ObjectMapper mp = new ObjectMapper(); @@ -165,25 +195,28 @@ dockingPreApplyForm.setContent(writeValueAsString); } catch (JsonProcessingException e) { } + DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM); } //濡傛灉鏈夐泦鍥㈢爜鍒欐洿鏂版暟鎹� if (isEditDatas) { if (baseModelMap.containsKey(applyId)) { - BaseModel baseModel = baseModelMap.get(applyId); - String classOid=baseModel.getData().getOrDefault("CODECLSFID",""); + baseModel = baseModelMap.get(applyId); + Map<String,String> dataValueMap=new CaseInsensitiveMap<>(baseModel.getData()); + String classOid=dataValueMap.getOrDefault("CODECLSFID",""); if(partCoe.equals(classOid)){ baseModel.setId(10+customCoding); + customCoding=10+customCoding; } BeanUtilForVCI.copyDeclaredIgnoreCase(baseModel, baseModel); DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel); - DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel); - - baseModel.getData().getOrDefault("groupCode", customCoding); + // DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel); + baseModel.getData().put("GROUPCODE",customCoding); updateCbos.add(baseModel);//鏇存柊鏁版嵁闆嗗洟code } } }); } else { + res=false; editDockingPreApplyFormMap.forEach((key, dockingPreApplyForm) -> { dockingPreApplyForm.setCode("2"); dockingPreApplyForm.setMsg("鐢宠锛�" + msg); @@ -208,6 +241,9 @@ //淇濆瓨琛ㄥ崟鏁版嵁 dockingPreApplyFormService.saveOrUpdateBatch(dockingPreAttrMappings); mdmEngineClient.updateBatchBtypeDatas(btmName, updateCbos);//淇濆瓨鏁版嵁 + if(!res){ + throw new VciBaseException(msg); + } } return R.success("鐢宠鎺ュ彛璋冪敤鎴愬姛"); } catch (VciBaseException e) { @@ -227,7 +263,7 @@ @Transactional(rollbackFor = VciBaseException.class) @Override public R receiveEditApply(String oids, String btmName) throws VciBaseException { - if(usedFlag) { + if(!usedFlag) { log.info("鏇存柊鎺ュ彛鍔熻兘宸插叧闂紒->"+usedFlag); R.success("鏇存柊鎺ュ彛鍔熻兘宸插叧闂紒"); } @@ -273,7 +309,9 @@ DockingPreApplyForm dockingPreApplyForm = editDockingPreApplyFormMap.get(applyId); dockingPreApplyForm.setCode(code2); dockingPreApplyForm.setMsg("淇敼锛�" + msg); - dockingPreApplyForm.setGroupCode(customCoding); + if(StringUtils.isBlank(dockingPreApplyForm.getGroupCode())) { + dockingPreApplyForm.setGroupCode(customCoding); + } ObjectMapper mp = new ObjectMapper(); String writeValueAsString = null; try { @@ -281,13 +319,16 @@ dockingPreApplyForm.setContent(writeValueAsString); } catch (JsonProcessingException e) { } + DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm); } //鏂板鐨勭敵璇峰崟鏁版嵁 if (addDockingPreApplyFormMap.containsKey(applyId)) { DockingPreApplyForm dockingPreApplyForm = addDockingPreApplyFormMap.get(applyId); dockingPreApplyForm.setCode(code2); dockingPreApplyForm.setMsg("淇敼锛�" + msg); - dockingPreApplyForm.setGroupCode(customCoding); + if(StringUtils.isBlank(dockingPreApplyForm.getGroupCode())) { + dockingPreApplyForm.setGroupCode(customCoding); + } ObjectMapper mp = new ObjectMapper(); String writeValueAsString = null; try { @@ -295,6 +336,7 @@ dockingPreApplyForm.setContent(writeValueAsString); } catch (JsonProcessingException e) { } + DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM); } //濡傛灉鏈夐泦鍥㈢爜鍒欐洿鏂版暟鎹� if (isEditDatas) { @@ -307,7 +349,7 @@ } DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel); // baseModel.setId(customCoding); - baseModel.getData().put("groupCode", customCoding); + baseModel.getData().put("GROUPCODE", customCoding); updateCbos.add(baseModel);//鏇存柊鏁版嵁闆嗗洟code } } @@ -354,7 +396,7 @@ public R queryClassModel(String groupClassifyId) throws Throwable { log.info("鑾峰彇闆嗗洟妯″瀷璇︾粏淇℃伅鎵ц淇濆瓨start"); String message="鎵ц鎴愬姛锛�"; - if(usedFlag){ + if(!usedFlag){ log.info("鑾峰彇闆嗗洟妯″瀷璇︾粏淇℃伅鎵ц淇濆瓨鍔熻兘宸插叧闂紒->"+usedFlag); return R.fail("鑾峰彇闆嗗洟妯″瀷璇︾粏淇℃伅鎺ュ彛宸插叧闂�!"); } @@ -406,7 +448,7 @@ public R queryMdmModel() throws Throwable { String message="鎵ц鎴愬姛锛�"; log.info("浠庨泦鍥㈣幏鍙栦富妯″瀷淇℃伅鎵ц淇濆瓨鎺ュ彛statr"); - if(usedFlag){ + if(!usedFlag){ log.info("浠庨泦鍥㈣幏鍙栦富妯″瀷淇℃伅鎵ц淇濆瓨鎺ュ彛鍔熻兘宸插叧闂紒->"+usedFlag); return R.fail("鏌ヨ妯″瀷瑙嗗浘鎺ュ彛宸插叧闂�!"); } @@ -493,7 +535,7 @@ */ @Override public R queryApplyState(String dataOids) throws VciBaseException { - if(usedFlag){ + if(!usedFlag){ log.info("鏌ヨ鐢宠鍗曠姸鎬佹帴鍙e紑鍏冲凡鍏抽棴"); return R.fail("鏌ヨ鐢宠鍗曠姸鎬佹帴鍙e紑鍏冲凡鍏抽棴"); } @@ -518,8 +560,9 @@ int code=dockingApplyFormQueryStatusVO.getCode(); String mesg=dockingApplyFormQueryStatusVO.getMsg(); if(code==1){ + message=mesg; List<DockingApplyFormStatusVO> dockingApplyFormStatusVOList=dockingApplyFormQueryStatusVO.getData(); - if(CollectionUtils.isEmpty(dockingApplyFormStatusVOList)){ + if(!CollectionUtils.isEmpty(dockingApplyFormStatusVOList)){ for (DockingApplyFormStatusVO applyFormDataState : dockingApplyFormStatusVOList) { String applyId=applyFormDataState.getApplyNum(); String state= applyFormDataState.getFormState(); @@ -531,20 +574,23 @@ } } boolean res=this.dockingPreApplyFormService.saveOrUpdateBatch(dockingPreApplyFormList); - if(res){ - R.success("鐢宠闆嗗洟鐮佺姸鎬佹煡璇㈡垚鍔�:"+mesg); - } }else{ throw new Throwable("娌℃湁鑾峰彇鍒扮浉鍏虫暟鎹俊鎭�"); } }else{ - throw new Throwable(mesg); + message=mesg; + dockingPreApplyFormList.stream().forEach(dockingPreApplyForm -> { + dockingPreApplyForm.setMsg("鐢宠鍗曟煡鐪嬪け璐ワ細"+mesg); + }); + this.dockingPreApplyFormService.saveOrUpdateBatch(dockingPreApplyFormList); + throw new Throwable(message); } }catch (Throwable e){ e.printStackTrace(); + //message=""+e; log.error("鑾峰彇鐢宠鍗曠姸鎬佸け璐�"+e); - throw new VciBaseException(message); + throw new VciBaseException(e.getMessage()); } log.info("鏌ヨ鐢宠鍗曠姸鎬佹帴鍙nd"); return R.success(message); @@ -559,7 +605,7 @@ */ @Override public R syncClassifyModel(String classifyId, String operationType) throws VciBaseException { - if(usedFlag){ + if(!usedFlag){ log.info("鍚屾闆嗗洟妯″瀷淇℃伅寮�鍏冲凡鍏抽棴"); return R.fail("鍚屾闆嗗洟妯″瀷淇℃伅寮�鍏冲凡鍏抽棴"); } @@ -608,6 +654,7 @@ log.info("classify:-------------->閾炬帴鍚嶇О:"+nodeLinkName); if (dockingPreClassify == null || StringUtils.isBlank(dockingPreClassify.getOid())) { + dockingPreClassify=new DockingPreClassify(); DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreClassify,MdmBtmTypeConstant.DOCKING_PRE_JCLASSIFY); } else { DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreClassify); @@ -703,7 +750,7 @@ .eq(DockingPreMetaAttr::getSourceClassifyId,jclassId).eq(DockingPreMetaAttr::getViewModelId,jviewModelObject.getOid()) .eq(DockingPreMetaAttr:: getPid,pid)); Map<String,DockingPreMetaAttr> jmetaattrMap = dockingPreMetaAttrList.stream().filter( - s -> com.alibaba.cloud.commons.lang.StringUtils.isNotBlank(s.getEnglishName())).collect(Collectors.toMap(s -> s.getEnglishName().toLowerCase(Locale.ROOT), t -> t)); + s -> com.alibaba.cloud.commons.lang.StringUtils.isNotBlank(s.getEnglishName())).collect(Collectors.toMap(s -> s.getEnglishName(), t -> t)); for (DockingClassifyMetaAttrVO dockingClassifyMetaAttrVO : metaList) { String chineseName = com.alibaba.cloud.commons.lang.StringUtils.isBlank(dockingClassifyMetaAttrVO.getChineseName())?"":dockingClassifyMetaAttrVO.getChineseName();// 灞炴�у悕绉� @@ -772,6 +819,7 @@ */ private void getRange(DockingPreMetaAttr metaAttrObject,Map<String, String> range) throws Throwable { String metaAttrOid = com.alibaba.cloud.commons.lang.StringUtils.isBlank(metaAttrObject.getOid())?"":metaAttrObject.getOid();// 灞炴�х殑oid + String jchinesename = com.alibaba.cloud.commons.lang.StringUtils.isBlank(metaAttrObject.getChineseName())?"":metaAttrObject.getChineseName(); Map<String, DockingPreAttrRange> rangeMap = new HashMap<>(); try { @@ -779,7 +827,9 @@ condtionMa.put("jmetalistid", metaAttrOid); List<DockingPreAttrRange> jmetaattrList = dockingPreAttrRangeService.selectByWrapper(Wrappers.<DockingPreAttrRange>query().lambda() .eq(DockingPreAttrRange::getMetaListId,metaAttrOid));// 鏍规嵁鍒嗙被鏌ヨ妯″瀷瑙嗗浘瀵硅薄 - rangeMap= jmetaattrList.stream().collect(Collectors.toMap(s -> com.alibaba.cloud.commons.lang.StringUtils.isNotBlank(s.getNumText().toLowerCase(Locale.ROOT))?"":s.getNumText().toLowerCase(Locale.ROOT), t -> t)); + log.info("鑾峰彇灞炴�х編鍓� 灞炴�d------->"+metaAttrOid); + //rangeMap= jmetaattrList.stream().collect(Collectors.toMap(s ->StringUtils.isNotBlank(s.getNumText())?"":s.getNumText(), t -> t)); + rangeMap=jmetaattrList.stream().filter(data -> data != null && StringUtils.isNotBlank(data.getNumText())).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getNumText(), t -> t)); for (String rangeKey : range.keySet()) { DockingPreAttrRange rangeObject = new DockingPreAttrRange(); @@ -809,43 +859,42 @@ } } - - - /** * 缁勭粐鏁版嵁 * */ private DockingGroupDataVO queryApplycodeDataObjects(int optationtype,List<BaseModel> codeWupins,Map<String,DockingPreApplyForm> addDockingPreApplyFormMap,Map<String,DockingPreApplyForm> editDockingPreApplyFormMap,Map<String,BaseModel> codeWupinMap) throws VciBaseException{ try { - String curUserName = AuthUtil.getUser().getUserName(); + String curUserName ="28201728"; //AuthUtil.getUser().getUserName(); //鐢宠鐨勬暟鎹� List<DockingMainData> mainDataList=new ArrayList<DockingMainData>(); for (BaseModel dataBusinessObject : codeWupins) { String format = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()); - String codeclsfid = dataBusinessObject.getData().getOrDefault("codeclsfid",""); + //String codeclsfid = dataBusinessObject.getData().getOrDefault("codeclsfid".toUpperCase(Locale.ROOT),""); + Map<String,String> dataMap=new CaseInsensitiveMap<>(dataBusinessObject.getData()); + String codeclsfid=dataMap.getOrDefault("codeclsfid",""); String btmName = dataBusinessObject.getBtmname(); String oid = dataBusinessObject.getOid(); - DockingPreApplyForm dockingPreApplyForm = new DockingPreApplyForm(); String dataOid = dataBusinessObject.getOid(); Map<String, String> conditionsMap = new HashMap<String, String>(); - List<DockingPreApplyForm> applyFormObjects = dockingPreApplyFormService.list(Wrappers.<DockingPreApplyForm>query().lambda().eq(DockingPreApplyForm::getDataOid, dataOid).eq(DockingPreApplyForm::getOperationType, optationtype)); + //List<DockingPreApplyForm> applyFormObjects = dockingPreApplyFormService.list(Wrappers.<DockingPreApplyForm>query().lambda().eq(DockingPreApplyForm::getDataOid, dataOid).eq(DockingPreApplyForm::getOperationType, optationtype)); + // DockingPreApplyForm dockingPreApplyForm=new DockingPreApplyForm(); String apllyCode = ""; - if (!CollectionUtils.isEmpty(applyFormObjects)) { + /*if (!CollectionUtils.isEmpty(applyFormObjects)) { dockingPreApplyForm = applyFormObjects.get(0); apllyCode = dockingPreApplyForm.getId(); editDockingPreApplyFormMap.put(apllyCode, dockingPreApplyForm);//鐢宠鍗曞拰鐢宠鍗曞璞″叧绯� - } else { + } else {*/ apllyCode = dockingApplyUnitCode + "-" + format; dockingPreApplyForm.setId(apllyCode); dockingPreApplyForm.setName(""); dockingPreApplyForm.setOperationType(optationtype+""); - dockingPreApplyForm.setDescription(dataBusinessObject.getDescription());//鑾峰彇鏁版嵁鎻忚堪淇℃伅 + dockingPreApplyForm.setDescription(dataBusinessObject.getId());//鑾峰彇鏁版嵁鎻忚堪淇℃伅 dockingPreApplyForm.setDataOid(oid); dockingPreApplyForm.setDataBtmName(btmName); addDockingPreApplyFormMap.put(apllyCode, dockingPreApplyForm);//鐢宠鍗曞拰鐢宠鍗曞璞″叧绯� - } + // } codeWupinMap.put(apllyCode, dataBusinessObject);//鐢宠鍗曞拰瀵瑰簲鏁版嵁鍏崇郴 conditionsMap = new HashMap<String, String>(); @@ -863,6 +912,11 @@ mainData.setApplyId(apllyCode);//鐢宠鍗曞彿 mainData.setClassName(dockingPreClassify.getNodeLinkName());//鍒嗙被鍚嶇О mainData.setCreateBy(curUserName);// + if(optationtype==2) { + String groucode=dataBusinessObject.getData().getOrDefault("GROUPCODE",""); + dockingPreApplyForm.setGroupCode(groucode); + mainData.setCustomCoding(groucode); + } mainData.setSecretLevel("鍐呴儴");//瀵嗙骇锛岄粯璁や负鍐呴儴 mainData.setViewInfos(getviewInfos(optationtype,dockingPreClassify, dataBusinessObject));//鑾峰彇瑙嗗浘妯″瀷 mainDataList.add(mainData); @@ -917,7 +971,7 @@ //鏋勯�犳ā鍨嬭鍥炬暟鎹� List<Map<String, Object>> viewValueList=new ArrayList<Map<String,Object>>(); String oid = dockingPreViewModel.getOid(); - Map<String,String> dataValueMap=dataBusinessObject.getData(); + Map<String,String> dataValueMap=new CaseInsensitiveMap<>(dataBusinessObject.getData()); String codeClassifyId=dataValueMap.get("codeclsfid"); Map<String,String>conditionsMap=new HashMap<String, String>(); List<DockingPreAttrMapping> dockingPreAttrMappingList = dockingPreAttrMappingMapper.selectList(Wrappers.<DockingPreAttrMapping>query().lambda() @@ -944,7 +998,16 @@ Object newVaue=null; if(StringUtils.isNotBlank(jtargetattrkey)){ getAttrRange(dockingPreMetaAttr);//鑾峰彇瀛楁鍙栧�艰寖鍥� - String value=dataValueMap.get(jtargetattrkey)==null?"":dataValueMap.getOrDefault(jtargetattrkey,""); + String value=""; + if(jtargetattrkey.toLowerCase(Locale.ROOT).equals("name")){ + value=dataBusinessObject.getName(); + }else if(jtargetattrkey.toLowerCase(Locale.ROOT).equals("id")){ + value=dataBusinessObject.getId(); + }else if(jtargetattrkey.toLowerCase(Locale.ROOT).equals("description")){ + value=dataBusinessObject.getDescription(); + }else{ + value=dataValueMap.get(jtargetattrkey)==null?"":dataValueMap.getOrDefault(jtargetattrkey,""); + } newVaue = getVaue(dockingPreMetaAttr, value); }else{ newVaue = getVaue(dockingPreMetaAttr, ""); @@ -952,6 +1015,7 @@ if(newVaue==null||"".equals(newVaue)){ newVaue= dockingPreMetaAttr.getDefaultValue(); } + //newVaue= Func.isNotEmpty(newVaue)?newVaue:""; viewValueMap.put(jenglishname, newVaue); } } @@ -1017,7 +1081,7 @@ return null; }else { try { - return simpleDateFormat.parse(value); + return simpleDateFormat.format(simpleDateFormat.parse(value)); } catch (ParseException e) { throw new VciBaseException("date", new String[]{"鏃ユ湡鏍煎紡杞崲閿欒"}); } @@ -1028,7 +1092,7 @@ return null; }else{ try { - return simpleDateFormat.parse(value); + return simpleDateFormat.format(simpleDateFormat.parse(value)); } catch (ParseException e) { throw new VciBaseException("date", new String[]{"鏃ユ湡鏍煎紡杞崲閿欒"}); } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/Scheduling/SearchDataSyncForERPScheduling.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/Scheduling/SearchDataSyncForERPScheduling.java new file mode 100644 index 0000000..145f6aa --- /dev/null +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/Scheduling/SearchDataSyncForERPScheduling.java @@ -0,0 +1,59 @@ +package com.vci.ubcs.code.Scheduling; + +import com.vci.ubcs.code.service.ICodeDuckingSyncService; +import com.vci.ubcs.code.service.UniversalInterfaceI; +import com.vci.ubcs.starter.web.enumpck.BooleanEnum; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import javax.annotation.PostConstruct; +import javax.annotation.Resource; +import java.text.SimpleDateFormat; +import java.util.Date; + +/*** + * 闆嗘垚浠诲姟瀹氭椂鍣� + * 浠嶦RP鏌ヨ鍨嬪彿浠e彿,椤圭洰浠e彿 + * @author xj + * @date 2024-01-19 + */ +@Component +@Slf4j +public class SearchDataSyncForERPScheduling { + @Resource + private ICodeDuckingSyncService codeDuckingSyncServiceI; + + @Value("${erp.item.isStart:false}") + public boolean ERP_ITEM_ISSTARE; + + @Value("${erp.item.btmName:XHDH}") + public String ERP_ITEM_BTMNAME; + /** + * 鏄惁鍒濆鍖栧畬鎴愪簡 + */ + public static volatile String FINISH_INIT = "false"; + /** + * 鍦ㄥ垵濮嬪寲瀹屾垚鍚庢墽琛� + */ + @PostConstruct() + public void onInit(){ + FINISH_INIT = "true"; + } + + //榛樿姣忓崄鍒嗛挓鎵ц鏂规硶 + @Scheduled(cron = "${dataSyncPush.cronTime:0 0/10 * * * ?}") + public void scheduled() { + log.info("鎵ц浠嶦RP椤圭洰浠e彿/鍨嬪彿浠e彿鏁版嵁 start:"); + log.info("鎵ц涓绘暟鎹泦鎴愭暟鎹帹閫� end: "+ "寮�鍏虫槸鍚﹀紑鍚�:" +ERP_ITEM_ISSTARE); + if(ERP_ITEM_ISSTARE && BooleanEnum.TRUE.getValue().equalsIgnoreCase(FINISH_INIT)) { + SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss."); + String time = formatter.format(new Date()); + codeDuckingSyncServiceI.saveItemDataSyncScheduing(ERP_ITEM_BTMNAME); + String outInfo = "============ 鎵ц浜嗕粠ERP椤圭洰浠e彿/鍨嬪彿浠e彿鏁版嵁 end;"; + log.info(outInfo+time); + } + + } +} diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeDuckingSyncService.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeDuckingSyncService.java index 21f6d55..6762ec7 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeDuckingSyncService.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeDuckingSyncService.java @@ -47,5 +47,7 @@ * @return */ R sendData(String oids); + + void saveItemDataSyncScheduing(String btmName); } diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java index 56b35b8..e963093 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.thoughtworks.xstream.XStream; import com.thoughtworks.xstream.io.xml.DomDriver; +import com.vci.ubcs.code.applyjtcodeservice.feign.MdmApplyGroupCodeProvider; import com.vci.ubcs.code.constant.MdmDuckingConstant; import com.vci.ubcs.code.dto.datapush.classify.JsonRootDataDTO; import com.vci.ubcs.code.dto.datapush.classify.NodeClassifyDTO; @@ -21,19 +22,23 @@ import com.vci.ubcs.code.dto.datapush.result.ResultNodeObjectDTO; import com.vci.ubcs.code.entity.*; import com.vci.ubcs.code.enumpack.SysIntegrationDataFlowTypeEnum; +import com.vci.ubcs.code.feign.MdmSearchItemCodeProvider; +import com.vci.ubcs.code.mapper.CommonsMapper; import com.vci.ubcs.code.service.*; +import com.vci.ubcs.code.vo.pagemodel.*; +import com.vci.ubcs.omd.feign.IBtmTypeClient; +import com.vci.ubcs.omd.vo.BtmTypeVO; import com.vci.ubcs.starter.util.HttpUtils; import com.vci.ubcs.code.util.WsErpClientUtil; -import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO; -import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateVO; -import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO; import com.vci.ubcs.starter.web.enumpck.UserSecretEnum; import com.vci.ubcs.starter.web.pagemodel.SessionInfo; import com.vci.ubcs.starter.web.util.VciBaseUtil; import com.vci.ubcs.starter.web.util.WebUtil; import lombok.extern.slf4j.Slf4j; +import org.apache.poi.util.StringUtil; import org.springblade.core.redis.cache.BladeRedis; import org.springblade.core.tool.api.R; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -62,6 +67,20 @@ public String DATA_PARAM_NAME; @Value("${dataSyncPush.dataId:itemid}") private String itemId; + + @Value("${erp.item.attrKey:xhdh}") + public String attrKey; + + /** + * 涓氬姟绫诲瀷鐨勬湇鍔� + */ + @Autowired + private IBtmTypeClient btmTypeClient; + /** + * 閫氱敤鏌ヨ + */ + @Resource + private CommonsMapper commonsMapper; @Resource private MdmEngineService mdmEngineServiceI; @@ -84,7 +103,8 @@ private IDockingSysIntParamService dockingSysIntParamService; @Resource private IDockingSysIntHeaderService dockingSysIntHeaderService; - + @Autowired(required = false) + private MdmSearchItemCodeProvider mdmSearchItemCodeProvider; @Override @@ -149,6 +169,74 @@ return R.success("鎵嬪姩鎺ㄩ�佸畬鎴�,璇锋牳瀵规槸鍚︽帹閫佹垚鍔�"); } + /*** + * 鍚屾鍨嬪彿浠e彿 + */ + @Override + public void saveItemDataSyncScheduing(String btmName) { + SearchItemParam searchItemParam=new SearchItemParam(); + searchItemParam.setSystag("CODE"); //璋冪敤绯荤粺鏍囪瘑 + searchItemParam.setLastchangedon(new Date()); + searchItemParam.setStatus("1");// + SearchItemVO searchItemVO= mdmSearchItemCodeProvider.getppModelByElem(searchItemParam); + if(searchItemVO!=null) { + searchItemVO.getCode(); + searchItemVO.getMsg(); + List<CodeClassify> codeClassifyList = codeClassifyService.selectByWrapper(Wrappers.<CodeClassify>query().lambda().in(CodeClassify::getId, btmName)); + try { + if (CollectionUtils.isEmpty(codeClassifyList)) { + throw new Throwable("鍒嗙被鏈煡璇㈠埌"); + } + CodeClassify codeClassify= codeClassifyList.get(0); + List<SearchItemDataVO> dataList = searchItemVO.getData(); + Map<String, SearchItemDataVO> dataVOMap = new HashMap<>(); + List<String> itemCodeList = new ArrayList<>(); + if (!CollectionUtils.isEmpty(dataList)) { + dataList.stream().forEach(searchItemDataVO -> { + String itemCode = StringUtils.isNotBlank(searchItemDataVO.getProjectitem()) ? searchItemDataVO.getProjectitem() : searchItemDataVO.getMmodelcode();//椤圭洰浠e彿 + dataVOMap.put(itemCode, searchItemDataVO); + itemCodeList.add(itemCode); + }); + String tableName = ""; + R<BtmTypeVO> r = btmTypeClient.getAllAttributeByBtmId(btmName); + if (!r.isSuccess()) { + throw new Throwable(r.getMsg()); + } + BtmTypeVO btmTypeVO = r.getData(); + if (btmTypeVO == null) { + throw new Throwable("鏍规嵁涓氬姟绫诲瀷鏈煡璇㈠埌涓氬姟绫诲瀷瀵硅薄锛�"); + } + tableName = btmTypeVO.getTableName(); + if (com.alibaba.nacos.common.utils.StringUtils.isBlank(tableName)) { + throw new Throwable("鏍规嵁涓氬姟绫诲瀷鏈煡璇㈠埌涓氬姟绫诲瀷鐩稿叧鑱旂殑琛�"); + } + StringBuffer sb = new StringBuffer(); + sb.append(" select * from "); + sb.append(tableName); + sb.append(" where 1=1"); + sb.append(" and lastr=1 and lastv=1"); + sb.append(" and codeclsfid = '" + codeClassify.getOid() + "'"); + List<Map<String, String>> newDataList = commonsMapper.queryByOnlySqlForMap(sb.toString()); + newDataList.stream().forEach(dataMap->{ + String value= dataMap.getOrDefault(attrKey,""); + if(dataVOMap.containsKey(attrKey)){ + SearchItemDataVO searchItemDataVO=dataVOMap.get(attrKey); + + }else{ + + + } + + }); + + } + } + catch (Throwable e){ + log.error("鏌ヨ澶辫触--->"+e); + } + } + } + /*** * 鏌ヨredis涓暟鎹紝瀵规瘮鍚庢彃鍏ockingtask diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java index 59d595a..486c729 100644 --- a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java @@ -2431,41 +2431,58 @@ return codeOrderSecDTOList; } + /*** + * 璇诲彇灞炴�ф槧灏勯厤缃俊鎭� + * @param systemId + * @param libray + * @param applyDatasVO + * @param codeClassifyTemplateAttrVOList + * @param dataObjectVO + * @throws Throwable + */ public void getConfigDatas(String systemId,String libray, ApplyBZDatasVO applyDatasVO,List<CodeClassifyTemplateAttrVO> codeClassifyTemplateAttrVOList,DataObjectVO dataObjectVO) throws Throwable { LinkedHashMap<String,LinkedHashMap<String,String>> dataKeyValueMap=new LinkedHashMap<>(); //濡傛灉灏嗘暟鎹浆鎹㈡垚鎵�闇�瑕佺殑鏁版嵁瀵硅薄 Map<String, String> attrMapConfigMap=new HashMap<>(); Map<String, String> propMaps=new HashMap<>(); - try { - log.info("寮�濮嬭鍙栫郴缁熼厤缃枃浠� start"); - Map<String, String> stringStringMap=attributeMapConfig.getSystem_attrmap(); - log.info("闆嗘垚绯荤粺灞炴�ф槧灏勯厤缃枃浠舵潯鐩暟-銆�"+stringStringMap.size()); - //stringStringMap.put("RLM","D:\\RLM.xml"); - if(!CollectionUtils.isEmpty(stringStringMap)) { + log.info("寮�濮嬭鍙栫郴缁熼厤缃枃浠� start"); + Map<String, String> stringStringMap=attributeMapConfig.getSystem_attrmap(); + log.info("闆嗘垚绯荤粺灞炴�ф槧灏勯厤缃枃浠舵潯鐩暟-銆�"+stringStringMap.size()); + //stringStringMap.put("RLM","D:\\RLM.xml"); + if(!CollectionUtils.isEmpty(stringStringMap)) { + List<LibraryClsfDO> libraryClsfDOList=new ArrayList<>(); + try { log.info("info锛氶渶瑕佽鍙栭厤缃枃浠�"); LibraryDO libraryDO = gennerAttrMapUtil.getNewInstance().gennerAttrMapBySystem(systemId, stringStringMap); - List<LibraryClsfDO> libraryClsfDOList = libraryDO.getClsf(); - if(!CollectionUtils.isEmpty(libraryClsfDOList)) { - Map<String, List<ClsfAttrMappingDO>> libPropMaps = libraryClsfDOList.stream().collect(Collectors.toMap(LibraryClsfDO::getLibrary, LibraryClsfDO::getProp, (key1, key2) -> key2)); - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃�"); - String path=stringStringMap.get(systemId); - if (libPropMaps.containsKey(libray.toUpperCase(Locale.ROOT))) { - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�"); - List<ClsfAttrMappingDO> clsfAttrMappingDOList = libPropMaps.get(libray.toUpperCase(Locale.ROOT)); - propMaps = clsfAttrMappingDOList.stream().collect(Collectors.toMap(ClsfAttrMappingDO::getSourceKey, ClsfAttrMappingDO::getTargetKey, (key1, key2) -> key2)); - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�,灞炴�ф槧灏勬潯鐩暟+" + clsfAttrMappingDOList.size()); - }else{ - throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�"+systemId+"銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�"+path+"銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��"+libray+"銆戝睘鎬ф槧灏勪俊鎭厤缃�"); - } - } + libraryClsfDOList = libraryDO.getClsf(); + } catch (Throwable e) { + objerrorCode = "1"; + e.printStackTrace(); + throw new Throwable("闆嗘垚绯荤粺鏍囪瘑涓猴細銆�" + systemId + "銆戯紝鍒嗙被搴撲负:銆�" + libray + "銆戠殑闆嗘垚灞炴�ч厤缃枃浠惰鍙栧け璐�"); } - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�"+libray+"浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃� end "); - }catch (Throwable e){ - objerrorCode="1"; - e.printStackTrace(); - throw new Throwable("闆嗘垚绯荤粺鏍囪瘑涓猴細銆�"+systemId+"銆戯紝鍒嗙被搴撲负:銆�"+libray+"銆戠殑闆嗘垚灞炴�ч厤缃枃浠惰鍙栧け璐�"); + String path = stringStringMap.get(systemId); + if (!CollectionUtils.isEmpty(libraryClsfDOList)) { + Map<String, List<ClsfAttrMappingDO>> libPropMaps = libraryClsfDOList.stream().collect(Collectors.toMap(LibraryClsfDO::getLibrary, LibraryClsfDO::getProp, (key1, key2) -> key2)); + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃�"); + if (libPropMaps.containsKey(libray.toUpperCase(Locale.ROOT))) { + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�"); + List<ClsfAttrMappingDO> clsfAttrMappingDOList = libPropMaps.get(libray.toUpperCase(Locale.ROOT)); + propMaps = clsfAttrMappingDOList.stream().collect(Collectors.toMap(ClsfAttrMappingDO::getSourceKey, ClsfAttrMappingDO::getTargetKey, (key1, key2) -> key2)); + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�,灞炴�ф槧灏勬潯鐩暟+" + clsfAttrMappingDOList.size()); + } else { + objerrorCode = "1"; + throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�" + systemId + "銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�" + path + "銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��" + libray + "銆戝睘鎬ф槧灏勪俊鎭厤缃�"); + } + }else{ + objerrorCode = "1"; + throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�" + systemId + "銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�" + path + "銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��" + libray + "銆戝睘鎬ф槧灏勪俊鎭厤缃�"); + } + }else{ + objerrorCode = "1"; + throw new Throwable("鏈幏鍙栧埌闆嗘垚灞炴�ф槧灏勭郴缁熼厤缃俊鎭�"); } + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�"+libray+"浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃� end "); LinkedList<String> rowNameList=new LinkedList<>(); LinkedHashMap<String,Integer> filedIndexMap=new LinkedHashMap<>(); //鏍规嵁鍒嗙被妯℃澘缁勭粐鏁版嵁 @@ -2540,7 +2557,13 @@ } /*** - * 鏍规嵁灞炴�ф槧灏勮浆鎹㈢紪鐮佹墍闇�瀛楁 + * 璇诲彇灞炴�ф槧灏勯厤缃俊鎭� + * @param systemId + * @param libray + * @param applyDatasVO + * @param codeClassifyTemplateAttrVOList + * @param dataObjectVO + * @throws Throwable */ public void getConfigDatas(String systemId,String libray, ApplyDatasVO applyDatasVO,List<CodeClassifyTemplateAttrVO> codeClassifyTemplateAttrVOList,DataObjectVO dataObjectVO) throws Throwable { @@ -2548,35 +2571,43 @@ //濡傛灉灏嗘暟鎹浆鎹㈡垚鎵�闇�瑕佺殑鏁版嵁瀵硅薄 Map<String, String> attrMapConfigMap=new HashMap<>(); Map<String, String> propMaps=new HashMap<>(); - try { - log.info("寮�濮嬭鍙栫郴缁熼厤缃枃浠� start"); - Map<String, String> stringStringMap=attributeMapConfig.getSystem_attrmap(); - log.info("闆嗘垚绯荤粺灞炴�ф槧灏勯厤缃枃浠舵潯鐩暟-銆�"+stringStringMap.size()); - //stringStringMap.put("RLM","D:\\RLM.xml"); - if(!CollectionUtils.isEmpty(stringStringMap)) { + log.info("寮�濮嬭鍙栫郴缁熼厤缃枃浠� start"); + Map<String, String> stringStringMap=attributeMapConfig.getSystem_attrmap(); + log.info("闆嗘垚绯荤粺灞炴�ф槧灏勯厤缃枃浠舵潯鐩暟-銆�"+stringStringMap.size()); + //stringStringMap.put("RLM","D:\\RLM.xml"); + if(!CollectionUtils.isEmpty(stringStringMap)) { + List<LibraryClsfDO> libraryClsfDOList=new ArrayList<>(); + try { log.info("info锛氶渶瑕佽鍙栭厤缃枃浠�"); LibraryDO libraryDO = gennerAttrMapUtil.getNewInstance().gennerAttrMapBySystem(systemId, stringStringMap); - List<LibraryClsfDO> libraryClsfDOList = libraryDO.getClsf(); - if(!CollectionUtils.isEmpty(libraryClsfDOList)) { - Map<String, List<ClsfAttrMappingDO>> libPropMaps = libraryClsfDOList.stream().collect(Collectors.toMap(LibraryClsfDO::getLibrary, LibraryClsfDO::getProp, (key1, key2) -> key2)); - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃�"); - String path=stringStringMap.get(systemId); - if (libPropMaps.containsKey(libray.toUpperCase(Locale.ROOT))) { - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�"); - List<ClsfAttrMappingDO> clsfAttrMappingDOList = libPropMaps.get(libray.toUpperCase(Locale.ROOT)); - propMaps = clsfAttrMappingDOList.stream().collect(Collectors.toMap(ClsfAttrMappingDO::getSourceKey, ClsfAttrMappingDO::getTargetKey, (key1, key2) -> key2)); - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�,灞炴�ф槧灏勬潯鐩暟+" + clsfAttrMappingDOList.size()); - }else{ - throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�"+systemId+"銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�"+path+"銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��"+libray+"銆戝睘鎬ф槧灏勪俊鎭厤缃�"); - } - } + libraryClsfDOList = libraryDO.getClsf(); + } catch (Throwable e) { + objerrorCode = "1"; + e.printStackTrace(); + throw new Throwable("闆嗘垚绯荤粺鏍囪瘑涓猴細銆�" + systemId + "銆戯紝鍒嗙被搴撲负:銆�" + libray + "銆戠殑闆嗘垚灞炴�ч厤缃枃浠惰鍙栧け璐�"); } - log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�"+libray+"浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃� end "); - }catch (Throwable e){ - objerrorCode="1"; - e.printStackTrace(); - throw new Throwable("闆嗘垚绯荤粺鏍囪瘑涓猴細銆�"+systemId+"銆戯紝鍒嗙被搴撲负:銆�"+libray+"銆戠殑闆嗘垚灞炴�ч厤缃枃浠惰鍙栧け璐�"); + String path = stringStringMap.get(systemId); + if (!CollectionUtils.isEmpty(libraryClsfDOList)) { + Map<String, List<ClsfAttrMappingDO>> libPropMaps = libraryClsfDOList.stream().collect(Collectors.toMap(LibraryClsfDO::getLibrary, LibraryClsfDO::getProp, (key1, key2) -> key2)); + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃�"); + if (libPropMaps.containsKey(libray.toUpperCase(Locale.ROOT))) { + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�"); + List<ClsfAttrMappingDO> clsfAttrMappingDOList = libPropMaps.get(libray.toUpperCase(Locale.ROOT)); + propMaps = clsfAttrMappingDOList.stream().collect(Collectors.toMap(ClsfAttrMappingDO::getSourceKey, ClsfAttrMappingDO::getTargetKey, (key1, key2) -> key2)); + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�" + libray + "鍖归厤鍒扮浉搴旂殑灞炴�ф槧灏勪俊鎭�,灞炴�ф槧灏勬潯鐩暟+" + clsfAttrMappingDOList.size()); + } else { + objerrorCode = "1"; + throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�" + systemId + "銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�" + path + "銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��" + libray + "銆戝睘鎬ф槧灏勪俊鎭厤缃�"); + } + }else{ + objerrorCode = "1"; + throw new Throwable("鏍规嵁绯荤粺鏍囪瘑銆�" + systemId + "銆戞壘鍒板搴旂殑閰嶇疆鏂囦欢:銆�" + path + "銆戯紝浣嗘湭鑾峰彇鍒板搴旂殑搴撱��" + libray + "銆戝睘鎬ф槧灏勪俊鎭厤缃�"); + } + }else{ + objerrorCode = "1"; + throw new Throwable("鏈幏鍙栧埌闆嗘垚灞炴�ф槧灏勭郴缁熼厤缃俊鎭�"); } + log.info("鏍规嵁鍙傛暟锛歭ibray锛�-銆�"+libray+"浠庨厤缃枃浠朵腑鎵惧搴斿睘鎬ф槧灏勯厤缃� end "); LinkedList<String> rowNameList=new LinkedList<>(); LinkedHashMap<String,Integer> filedIndexMap=new LinkedHashMap<>(); //鏍规嵁鍒嗙被妯℃澘缁勭粐鏁版嵁 -- Gitblit v1.9.3