From 9675f1491ef23c4c6f69cb83cbf6de3fd6dac61b Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期三, 26 七月 2023 17:40:58 +0800 Subject: [PATCH] 主数据导出 --- Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue | 285 ++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 211 insertions(+), 74 deletions(-) diff --git a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue index 6747729..1449f62 100644 --- a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue +++ b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue @@ -29,7 +29,9 @@ </div> <el-row style="width: 100%;margin-bottom: 20px"> <div> - <el-button v-for="(item, index) in masterVrBtnList" v-if="!['PREVIEW', 'DELETEFILE', 'revisefile', 'DOWNLOADFILE', 'UPLOADFILE'].includes(item.uniqueFlag)" :key="index" plain size="small" + <el-button v-for="(item, index) in masterVrBtnList" + v-if="!['PREVIEW', 'DELETEFILE', 'revisefile', 'DOWNLOADFILE', 'UPLOADFILE'].includes(item.uniqueFlag)" + :key="index" plain size="small" type="primary" @click="handelBtnClick(item)">{{ item.name @@ -37,15 +39,15 @@ </el-button> <el-input v-model="WupinFindValue" placeholder="璇疯緭鍏ュ叧閿瓧鎸夊洖杞︽煡璇�" size="small" style="width: 180px; margin-left: 5px; margin-top: 10px" - @keyup.enter.native="tableFindInp"></el-input> + @keyup.enter.native="tableFindInp" v-if="tableData.length != 0"></el-input> </div> - <el-table v-if="tableData.length != 0" ref="dataTable" v-loading="isLoading" :data="tableData" + <el-table ref="dataTable" v-loading="isLoading" :data="tableData" :height="tableHeight" @select="handleSelection" @cell-click="handleCellClick" @row-click="handleRowClick" @select-all="handleSelectionAll" @selection-change="handleSelectionChange" @sort-change="sortChange"> - <el-table-column fixed type="selection" width="55"></el-table-column> - <el-table-column fixed label="搴忓彿" type="index" width="55"> + <el-table-column fixed type="selection" width="55" v-if="tableData.length != 0"></el-table-column> + <el-table-column fixed label="搴忓彿" type="index" width="55" v-if="tableData.length != 0"> </el-table-column> <el-table-column v-for="item in this.tableHeadFindData" :key="item.id" :formatter="item.formatter" :label="item.label" @@ -114,6 +116,7 @@ </template> <script> import {MasterTable, TableData, FindData, addSaveCode, editSaveCode} from "@/api/GetItem"; +import {processTS,changeStatus} from "@/api/template/setPersonnel" import {listCodeAttributeByClassId} from "@/api/integration/integration.js"; import integrationTransfer from "@/views/integration/integrationTransfer"; import SetPersonnel from "@/components/template/SetPersonnel"; @@ -173,7 +176,7 @@ }, data() { return { - searchResults:[], + searchResults: [], //棣栭〉鍙充晶鎼滅储 WupinFindValue: "", //鐩镐技椤规煡璇� @@ -258,9 +261,13 @@ created() { }, mounted() { + }, activated() { // this.doLayout(); + this.$nextTick(() => { + this.$refs.dataTable.doLayout() + }) }, watch: { tableHeadDataFateher: { @@ -278,6 +285,7 @@ tableDataArray: { handler(newval, oldval) { this.tableData = newval; + this.searchResults = newval }, }, tableHeadFindData: { @@ -334,7 +342,6 @@ } }, openVis(visible) { - console.log(visible) this[visible] = true }, handelBtnClick(event) { @@ -383,46 +390,104 @@ }, // 鍙戝竷 setHandler() { - // let EditFlag1=false - // let EditFlag2=false - // if(EditFlag1){ - // this.$message.warning('鍙湁鐘舵�佹槸銆愮紪杈戜腑銆戠殑鏁版嵁鎵嶅彲浠ュ彂璧锋祦绋�') - // }else if(EditFlag2){ - // this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愮紪杈戜腑銆戞墠鍙互鍙戣捣娴佺▼') - // } - this.selectRow.forEach(item => { - if (this.selectRow.length === 1 && item.lcstatus !== "Editing") { - this.$message.warning('鍙湁鐘舵�佹槸銆愮紪杈戜腑銆戠殑鏁版嵁鎵嶅彲浠ュ彂璧锋祦绋�') - } else if (item.lcstatus !== 'Editing') { - this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愮紪杈戜腑銆戞墠鍙互鍙戣捣娴佺▼') - } else { - this.userName = localStorage.getItem("username"); - this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; - this.parameter.type = 'PUBLIC' - this.title = '娴佺▼瀹℃壒' - this.visibleFlow = true; - } - }) - // if (this.selectRow.length <= 0) { - // this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); - // } else { - // this.userName = localStorage.getItem("username"); - // this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; - // this.parameter.type='PUBLIC' - // this.title='娴佺▼瀹℃壒' - // this.visibleFlow = true; - // } + if (this.selectRow.length > 0) { + let hasEditing = this.selectRow.some(item => item.lcstatus !== 'Editing'); + let showMessage = true; + this.selectRow.forEach(item => { + if (this.selectRow.length === 1 && item.lcstatus !== "Editing" && showMessage) { + this.$message.warning('鍙湁鐘舵�佹槸銆愮紪杈戜腑銆戠殑鏁版嵁鎵嶅彲浠ュ彂璧锋祦绋�'); + showMessage = false; + } else if (hasEditing && showMessage) { + this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愮紪杈戜腑銆戞墠鍙互鍙戣捣娴佺▼'); + showMessage = false; + } else if (showMessage) { + processTS({templateId: this.templateOid, buttonTypeKey: 'PUBLIC'}).then(res => { + if (res.data.records != [] && res.data.code != 200) { + this.userName = localStorage.getItem("username"); + this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; + this.parameter.type = 'PUBLIC' + this.title = '娴佺▼瀹℃壒' + this.visibleFlow = true; + this.onLoad() + } else { + this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + this.userName = localStorage.getItem("username"); + this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; + this.parameter.type = 'PUBLIC' + this.title = '娴佺▼瀹℃壒' + this.visibleFlow = true; + this.onLoad() + }).catch(() => { + this.$message({ + type: 'info', + message: '宸插彇娑�' + }); + }) + } + }) + } + }); + } else { + this.$message.warning('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�') + } }, //鍋滅敤 Deactivate() { if (this.selectRow.length <= 0) { this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); } else { - this.userName = localStorage.getItem("username"); - this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; - this.parameter.type = 'DISABLE' - this.title = '鍋滅敤锛堝喕缁擄級缂栫爜鏁版嵁' - this.visibleDeactivate = true; + let hasEditing = this.selectRow.every(item => item.lcstatus == 'Released'); + let showMessage = true; + this.selectRow.forEach(item => { + if (this.selectRow.length === 1 && item.lcstatus === "Disabled" && showMessage) { + this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�'); + showMessage = false; + } else if (this.selectRow.length >=1 && !hasEditing && showMessage) { + this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬彂甯冪姸鎬併�戞墠鍙互鍙戣捣娴佺▼'); + showMessage = false; + } else if (this.selectRow.length > 1 && hasEditing && showMessage) { + processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => { + if (res.data.records != [] && res.data.code != 200) { + this.userName = localStorage.getItem("username"); + this.parameter.template = this.userName + "鍋滅敤" + "[鐗╁搧]"; + this.parameter.type = 'DISABLE' + this.title = '鍋滅敤锛堝喕缁擄級缂栫爜鏁版嵁' + this.visibleDeactivate = true; + } else { + if (showMessage) { + showMessage = false; // 鏍囪宸叉墽琛岃繃鎿嶄綔 + this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + const index = this.$route.query.id.indexOf('@'); + const result = this.$route.query.id.substring(0, index); + const oid = this.selectRow.map(obj => obj.oid).join(","); + changeStatus({ oid: oid, btmname: result, lcStatus: 'Disabled' }).then(res => { + console.log(res); + if(res.data.code == 200 ){ + this.$message.success('鍋滅敤鎴愬姛') + this.onLoad() + } + }); + }).catch(() => { + this.$message({ + type: 'info', + message: '宸插彇娑�' + }); + }); + } + } + }); + }else { + this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹负銆愬彂甯冪姸鎬併�戞墠鍙互鍙戣捣娴佺▼') + } + }); } }, //鍚敤 @@ -430,11 +495,53 @@ if (this.selectRow.length <= 0) { this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); } else { - this.userName = localStorage.getItem("username"); - this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; - this.parameter.type = 'ENABLE' - this.title = '鍚敤锛堣В鍐伙級缂栫爜鏁版嵁' - this.visibleEnable = true; + let hasEditing = this.selectRow.every(item => item.lcstatus == 'Disabled'); + console.log('hasEditing',hasEditing) + let showMessage = true; + this.selectRow.forEach(item => { + if (this.selectRow.length === 1 && item.lcstatus !== "Disabled" && showMessage) { + this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�'); + showMessage = false; + } else if (this.selectRow.length >=1 && hasEditing && showMessage) { + processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => { + if (res.data.records != [] && res.data.code != 200) { + this.userName = localStorage.getItem("username"); + this.parameter.template = this.userName + "鍚敤" + "[鐗╁搧]"; + this.parameter.type = 'Released' + this.title = '鍚敤缂栫爜鏁版嵁' + this.visibleDeactivate = true; + } else { + if (showMessage) { + showMessage = false; // 鏍囪宸叉墽琛岃繃鎿嶄綔 + this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + const index = this.$route.query.id.indexOf('@'); + const result = this.$route.query.id.substring(0, index); + const oid = this.selectRow.map(obj => obj.oid).join(","); + changeStatus({ oid: oid, btmname: result, lcStatus: 'Released' }).then(res => { + console.log(res); + if(res.data.code == 200 ){ + this.$message.success('鍚敤鎴愬姛') + this.onLoad() + } + }); + }).catch(() => { + this.$message({ + type: 'info', + message: '宸插彇娑�' + }); + }); + } + } + }); + } else if (this.selectRow.length >1 && !hasEditing && showMessage) { + this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬仠鐢ㄧ姸鎬併�戞墠鍙互鍙戣捣娴佺▼'); + showMessage = false; + } + }); } }, //鍥炴敹 @@ -442,11 +549,59 @@ if (this.selectRow.length <= 0) { this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); } else { - this.userName = localStorage.getItem("username"); - this.parameter.template = this.userName + "-鍙戝竷" + "[鐗╁搧]"; - this.parameter.type = 'ROLLBACK' - this.title = '鍥炴敹缂栫爜鏁版嵁' - this.visibleRecovery = true; + // 缂栬緫涓�-鍙兘鍙戝竷锛屼笉鑳藉洖鏀� + // 瀹℃牳涓�-浠�涔堥兘涓嶈兘鍋� + // 宸插彂甯�-鍋滅敤銆佸洖鏀� + // 鍋滅敤-鍙兘鍚敤銆佸洖鏀� + const disabledCount = this.selectRow.filter(item => item.lcstatus === 'Disabled').length; + const releasedCount = this.selectRow.filter(item => item.lcstatus === 'Released').length; + console.log('hasEditing',disabledCount,releasedCount) + let showMessage = true; + this.selectRow.forEach(item => { + if (this.selectRow.length === 1 && item.lcstatus == "TakeBack" && showMessage) { + this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�'); + showMessage = false; + } else if (this.selectRow.length >=1 && (disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0) && showMessage) { + //disabledCount 鍜� releasedCount 涓换鎰忎竴涓瓑浜� this.selectRow 鏁扮粍鐨勯暱搴﹀垯琛ㄧず鍏ㄩ儴鏄悓涓�绉嶇姸鎬侊紝杩斿洖 true 濡傛灉disabledCount 鍜� releasedCount 閮藉ぇ浜�0锛屽垯琛ㄧず鏃㈡湁Disabled涔熸湁Released杩斿洖 true + processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => { + if (res.data.records != [] && res.data.code != 200) { + this.userName = localStorage.getItem("username"); + this.parameter.template = this.userName + "鍥炴敹" + "[鐗╁搧]"; + this.parameter.type = 'TakeBack' + this.title = '鍥炴敹缂栫爜鏁版嵁' + this.visibleDeactivate = true; + } else { + if (showMessage) { + showMessage = false; // 鏍囪宸叉墽琛岃繃鎿嶄綔 + this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + const index = this.$route.query.id.indexOf('@'); + const result = this.$route.query.id.substring(0, index); + const oid = this.selectRow.map(obj => obj.oid).join(","); + changeStatus({ oid: oid, btmname: result, lcStatus: 'TakeBack' }).then(res => { + console.log(res); + if(res.data.code == 200 ){ + this.$message.success('鍥炴敹鎴愬姛') + this.onLoad() + } + }); + }).catch(() => { + this.$message({ + type: 'info', + message: '宸插彇娑�' + }); + }); + } + } + }); + } else if (this.selectRow.length >=1 && !(disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0) && showMessage) { + this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬仠鐢ㄧ姸鎬佹垨鍙戝竷鐘舵�併�戞墠鍙互鍙戣捣娴佺▼'); + showMessage = false; + } + }); } }, handleSizeChange(val) { @@ -568,6 +723,7 @@ list.forEach((item) => { this.parameter.ids.push(item.oid); }); + console.log(this.selectRow) }, //閫夋嫨 handleSelection(list, row) { @@ -579,7 +735,6 @@ handleSelectionAll() { this.fileOptions.ownbizOid = '0'; this.fileOptions.ownbizBtm = '0'; - }, //缂栬緫 editHandler() { @@ -659,36 +814,18 @@ this.batchImportData.codeClassifyOid = this.codeClassifyOid }, //杈撳叆鍥炶溅鎼滅储 - tableFindInp(event) { - console.log('鍥炶溅閿鎸変笅'); - console.log(this.WupinFindValue) - console.log(this.tableData) - // 鍦ㄨ繖閲屾墽琛屼綘鐨勬搷浣� - // let referList=[] - // this.tableData.filter(item => { - // console.log(item.name.includes(this.WupinFindValue)) - // console.log(item.name.indexOf(this.WupinFindValue)>=0) - // }) - // const regex = new RegExp(this.WupinFindValue, 'i'); - // this.tableData.filter(item => { - // console.log(regex.test(item.name)) - // // return regex.test(item.name); - // }); + tableFindInp() { if (this.WupinFindValue.trim() === '') { - this.searchResults = []; // 杈撳叆鍊间负绌猴紝娓呯┖鎼滅储缁撴灉 + this.$message.warning('杈撳叆鍊间笉鑳戒负绌�') return; } - - this.tableData = this.tableData.filter(item => { + this.tableData = this.searchResults.filter(item => { if (typeof item.name === 'string') { return item.name.includes(this.WupinFindValue); - }else { + } else { return false; // item.name涓嶆槸瀛楃涓茬被鍨嬶紝杩斿洖false } - }); - console.log(this.searchResults); - } } -- Gitblit v1.9.3