From cc3682641685022d2f0400b30408cf3cb5a0a93d Mon Sep 17 00:00:00 2001 From: ludc Date: 星期一, 18 十二月 2023 17:31:04 +0800 Subject: [PATCH] 主数据管理:高级查询,状态查询,快速查询,当查询出多页时,点击分页的页码能够保留上一次的查询条件进行分页,点击分类树节点时则置空查询条件。 --- Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue | 176 ++++++++++++++++++++++++++++++++++------------------------ 1 files changed, 104 insertions(+), 72 deletions(-) diff --git a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue index 76fc6c0..420cd25 100644 --- a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue +++ b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue @@ -46,15 +46,15 @@ <el-table-column v-if="tableData.length != 0" fixed label="搴忓彿" type="index" width="55"> </el-table-column> <!-- 鐢熷懡鍛ㄦ湡--> -<!-- <el-table-column v-for="(item,index) in lcstatusArray"--> -<!-- v-if=" lcstatusArray.length >= 0 && !item.hidden"--> -<!-- key="index" :show-overflow-tooltip="true" :sortable="item.sortable"--> -<!-- :width="item.width" align="center" label="鐢熷懡鍛ㄦ湡鍊�"--> -<!-- prop="lcstatus">--> -<!-- <template slot-scope="scope">--> -<!-- <span>{{ scope.row.lcstatus_text }}</span>--> -<!-- </template>--> -<!-- </el-table-column>--> + <!-- <el-table-column v-for="(item,index) in lcstatusArray"--> + <!-- v-if=" lcstatusArray.length >= 0 && !item.hidden"--> + <!-- key="index" :show-overflow-tooltip="true" :sortable="item.sortable"--> + <!-- :width="item.width" align="center" label="鐢熷懡鍛ㄦ湡鍊�"--> + <!-- prop="lcstatus">--> + <!-- <template slot-scope="scope">--> + <!-- <span>{{ scope.row.lcstatus_text }}</span>--> + <!-- </template>--> + <!-- </el-table-column>--> <!-- 缂栧彿--> <el-table-column v-for="(item, index) in CodeArray" v-if="CodeArray.length !== 0 && !item.hidden" key="index" :label="item.label" :prop="item.prop" @@ -345,9 +345,10 @@ }, // 涓绘暟鎹寜閽� masterVrBtnList: [], - fileOptions:{}, + fileOptions: {}, result: '', elapsedTime: '', + conditionMap: [], }; }, computed: { @@ -397,7 +398,7 @@ this.tableData = newval; this.searchResults = newval this.doLayout(); - this.fileOptions= { + this.fileOptions = { ownbizOid: "0", ownbizBtm: "0", fileDocClassify: '!=processAuditSuggest', @@ -427,7 +428,8 @@ } if (_index == 0) { - this.keyWordFind = record.queryField + this.keyWordFind = record.queryField; + //console.log(record) } }) this.tableHeadFindDatas = newval; @@ -467,6 +469,7 @@ templateOid: { handler(newval, oldval) { this.fileOptions.ownbizOid = "0"; + this.statusSelect = 'all' }, deep: true, }, @@ -478,11 +481,15 @@ }, }, methods: { + // 缃┖鏌ヨ鏉′欢 + resetConditionMap() { + this.conditionMap = {}; + }, + CodeLinkHandler(row) { this.LinkObject = row; this.LinkVisible = true; this.LinkList = Object.keys(row).map(property => property) - }, //鐘舵�佹悳绱� cellSelectHandler(row) { @@ -494,6 +501,7 @@ }, cellStatusFind(lcstatus) { this.isLoading = true; + this.conditionMap["conditionMap[lcstatus]"] = lcstatus; TableData({ templateOid: this.templateOid, codeClassifyOid: this.codeClassifyOid, @@ -590,7 +598,7 @@ func.downloadFileByBlobHandler(res); this.$message.success('涓嬭浇鎴愬姛锛岃鏌ョ湅锛�'); this.isLoading = false; - }).catch(error=>{ + }).catch(error => { this.$message.error(error); }); }, @@ -853,6 +861,7 @@ codeClassifyOid: this.codeClassifyOid, page: this.page.currentPage, limit: this.page.pageSize, + ...this.conditionMap, /**甯︿笂鍒嗛〉鏌ヨ鏉′欢 */ }); const endTime = performance.now(); this.elapsedTime = Math.floor(endTime - startTime) * 1; @@ -914,7 +923,7 @@ }); }); }, - // 灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null 锛屽嵆閫�鍑虹紪杈戠姸鎬� + //灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null 锛屽嵆閫�鍑虹紪杈戠姸鎬� saveRow() { this.editingRow = null; }, @@ -927,40 +936,46 @@ }) }, // 鎺掑簭 - sortChange(val) { - // console.log(val) - this.isLoading = true; - let order = ""; - if (val.order == "ascending") { - order = "asc"; - } else { - order = "desc"; + async sortChange(val) { + try { + this.isLoading = true; + const order = val.order == 'ascending' ? 'asc' : 'desc'; + const {data} = await TableData({ + templateOid: this.templateOid, + codeClassifyOid: this.codeClassifyOid, + order: order, + sort: val.prop, + page: this.page.currentPage, + limit: this.page.pageSize, + ...this.conditionMap + }); + this.data = data.data; + } finally { + this.isLoading = false; } - TableData({ - templateOid: this.templateOid, - codeClassifyOid: this.codeClassifyOid, - order: order, - sort: val.prop, - page: this.page.currentPage, - limit: this.page.pageSize, - }).then((res) => { - setTimeout(() => { - this.data = res.data.data; - this.isLoading = false; - }, 100); - }); }, //鍒嗛〉鍒锋柊 async onLoad(val) { - await TableData({ - templateOid: this.templateOid, - codeClassifyOid: this.codeClassifyOid, - page: this.page.currentPage, - limit: this.page.pageSize, - }).then((res) => { + this.isLoading = true; + try { + let conditionMap = {}; + if (this.statusSelect !== 'all') { + conditionMap.lcstatus = this.statusSelect; + } + const res = await TableData({ + templateOid: this.templateOid, + codeClassifyOid: this.codeClassifyOid, + page: this.page.currentPage, + limit: this.page.pageSize, + conditionMap + }); this.tableData = res.data.data; - this.doLayout() - }); + this.doLayout(); + } catch (error) { + this.$message.error(error) + } finally { + this.isLoading = false; + } }, //澶氶�� handleSelectionChange(list) { @@ -993,38 +1008,50 @@ this.findvisible = true; }, // 楂樼骇鏌ヨ - echoContion(val) { - FindData({ - templateOid: this.templateOid, - codeClassifyOid: this.codeClassifyOid, - ...val, - }).then((res) => { + async echoContion(val) { + this.conditionMap = val; + try { + const res = await FindData({ + templateOid: this.templateOid, + codeClassifyOid: this.codeClassifyOid, + ...val, + page: this.page.currentPage = 1,/** 姣忔鐐瑰嚮楂樼骇鏌ヨ閮藉簲璇ヤ粠绗竴椤靛紑濮�*/ + limit: this.page.pageSize + }); this.tableData = res.data.data; this.page.total = res.data.total - }); + } catch (error) { + + } }, //鐩镐技椤规煡璇� similarHandler() { if (this.selectRow.length <= 0) { this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); - } else if (this.selectRow.length > 1) { - this.$message.warning("鍙兘閫夋嫨涓�鏉℃暟鎹�"); - } else { - this.similarVisible = true; + return; } + if (this.selectRow.length > 1) { + this.$message.warning("鍙兘閫夋嫨涓�鏉℃暟鎹�"); + return; + } + this.similarVisible = true; }, //鏁版嵁鏇存敼 DataChange() { if (this.selectRow.length <= 0) { this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�"); - } else if (this.selectRow.length > 1) { - this.$message.warning("鍙兘閫夋嫨涓�鏉℃暟鎹�"); - } else if (this.selectRow[0].lcstatus != "Released") { - this.$message.warning("鍙湁鐘舵�佷负宸插彂甯冪殑鏁版嵁鎵嶈兘杩涜鏁版嵁鏇存敼"); - } else { - this.DataVisible = true; - this.rowOid = this.selectRow[0]['oid'] + return } + if (this.selectRow.length > 1) { + this.$message.warning("鍙兘閫夋嫨涓�鏉℃暟鎹�"); + return; + } + if (this.selectRow[0].lcstatus != "Released") { + this.$message.warning("鍙湁鐘舵�佷负宸插彂甯冪殑鏁版嵁鎵嶈兘杩涜鏁版嵁鏇存敼"); + return; + } + this.DataVisible = true; + this.rowOid = this.selectRow[0]['oid'] }, //澧炲姞淇濆瓨 AddSumbit(val) { @@ -1071,17 +1098,22 @@ //杈撳叆鍥炶溅鎼滅储 tableFindInp() { this.isLoading = true; - TableData({ - templateOid: this.templateOid, - codeClassifyOid: this.codeClassifyOid, - page: this.page.currentPage, - limit: this.page.pageSize, - ['conditionMap[' + this.keyWordFind + ']']: '*' + this.WupinFindValue + '*' - }).then(res => { - this.tableData = res.data.data; - this.page.total = res.data.total; + try { + // 瀛樺偍鏌ヨ鏉′欢锛屼富瑕佹槸涓轰簡鐐瑰嚮椤电爜鏃跺甫涓婅繖涓潯浠� + this.conditionMap["conditionMap[" + this.keyWordFind + "]"] = '*' + this.WupinFindValue + '*'; + TableData({ + templateOid: this.templateOid, + codeClassifyOid: this.codeClassifyOid, + page: this.page.currentPage, + limit: this.page.pageSize, + ['conditionMap[' + this.keyWordFind + ']']: '*' + this.WupinFindValue + '*' + }).then(res => { + this.tableData = res.data.data; + this.page.total = res.data.total; + }) + } finally { this.isLoading = false; - }) + } } } -- Gitblit v1.9.3