From 30dd1bcc069b31d417e738d57b5cd18ce9ed6871 Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期一, 06 十一月 2023 14:30:03 +0800 Subject: [PATCH] 主数据分页Loading优化 --- Source/UBCS-WEB/src/components/template/Stage.vue | 1 Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue | 82 ++++++++++----------------- Source/UBCS-WEB/src/views/integration/systemInfo.vue | 1 Source/UBCS-WEB/src/views/MasterData/items.vue | 52 ++++++++++++---- 4 files changed, 70 insertions(+), 66 deletions(-) diff --git a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue index af66e4b..2a5807d 100644 --- a/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue +++ b/Source/UBCS-WEB/src/components/MasterCrud/VciMasterCrud.vue @@ -319,7 +319,8 @@ hasUpload: true, height: 110 }, - result: '' + result: '', + elapsedTime:'', }; }, computed: { @@ -681,21 +682,37 @@ }); } }, - handleSizeChange(val) { - this.isLoading = true; - setTimeout(() => { - this.page.pageSize = val; - this.$emit("pageSize", val); - this.CrudRend(); - }, 3000); + async CrudRend() { + this.elapsedTime = 0; + const startTime = performance.now(); + const res = await TableData({ + templateOid: this.templateOid, + codeClassifyOid: this.codeClassifyOid, + page: this.page.currentPage, + limit: this.page.pageSize, + }); + const endTime = performance.now(); + this.elapsedTime = Math.floor(endTime - startTime) * 1; + console.log(this.elapsedTime) + this.page.total = res.data.total; + this.data = res.data.data; + this.tableData = res.data.data; }, - handleCurrentChange(val) { + + async handleSizeChange(val) { this.isLoading = true; - setTimeout(() => { - this.page.currentPage = val; - this.$emit("currentPage", val); - this.CrudRend(); - }, 3000); + await this.CrudRend(); + this.page.pageSize = val; + this.$emit("pageSize", val); + this.isLoading = false; + }, + + async handleCurrentChange(val) { + this.isLoading = true; + await this.CrudRend(); + this.page.currentPage = val; + this.$emit("currentPage", val); + this.isLoading = false; }, // 鐩戝惉鍗曞厓鏍肩偣鍑讳簨浠跺苟瀛樺偍姝e湪缂栬緫鐨勮 handleCellClick(row, column) { @@ -746,43 +763,6 @@ this.$refs.dataTable.doLayout(); } }) - }, - //琛ㄦ牸澶存覆鏌� - CrudHeaderRend() { - if (this.codeClassifyOid != "") { - MasterTable({ - codeClassifyOid: this.codeClassifyOid - }).then((res) => { - this.options = res.data.tableDefineVO.seniorQueryColumns; - this.List = res.data.tableDefineVO.cols[0]; - this.List.forEach((item) => { - let columnItem = { - label: item.title, - prop: item.queryField, - type: this.columnType[item.type], - sortable: item.sort, - width: item.minWidth, - }; - this.option.column.push(columnItem); - this.option.column = this.tableHeadData; - this.templateOid = res.data.tableDefineVO.oid; - this.$emit("templateOid", this.templateOid); - }); - }); - } - }, - //琛ㄦ牸鏁版嵁 - CrudRend() { - TableData({ - templateOid: this.templateOid, - codeClassifyOid: this.codeClassifyOid, - page: this.page.currentPage, - limit: this.page.pageSize, - }).then((res) => { - this.page.total = res.data.total; - this.data = res.data.data; - this.tableData = res.data.data; - }); }, // 鎺掑簭 sortChange(val) { diff --git a/Source/UBCS-WEB/src/components/template/Stage.vue b/Source/UBCS-WEB/src/components/template/Stage.vue index dcde53c..508d8fb 100644 --- a/Source/UBCS-WEB/src/components/template/Stage.vue +++ b/Source/UBCS-WEB/src/components/template/Stage.vue @@ -11,7 +11,6 @@ </template> </avue-crud> </div> - <el-dialog :visible.sync="dialogNode" append-to-body="true" title="妯℃澘闃舵" width="50%"> <avue-crud ref="crud" :data="stageData" :option="stageOption" :table-loading="loading" @on-load="getStagelist" @row-click="handleRowStageClick"> diff --git a/Source/UBCS-WEB/src/views/MasterData/items.vue b/Source/UBCS-WEB/src/views/MasterData/items.vue index 83996ca..49816c3 100644 --- a/Source/UBCS-WEB/src/views/MasterData/items.vue +++ b/Source/UBCS-WEB/src/views/MasterData/items.vue @@ -3,18 +3,42 @@ <el-aside> <basic-container style="overflow: hidden;"> <!-- 鏍戠粍浠�--> - <master-tree @codeClassifyOid="codeClassifyOidList" @coderuleoid="coderuleoidList" :pageSize="this.pageSize" - :currentPage="this.currentPage" @tableDataArray="tableDataArrays" @tableHeadDataFateher="tableHeadDatas" - @tableHeadBttoms="tableHeadBttoms" @total="totals" @nodeClick="nodeClick" - @tableHeadFindData="tableHeadFindDatas" @Treedata="TreedataList" @TreeValue="TreeValueEmit"></master-tree> + <master-tree + :currentPage="this.currentPage" + :pageSize="this.pageSize" + @TreeValue="TreeValueEmit" + @Treedata="TreedataList" + @codeClassifyOid="codeClassifyOidList" + @coderuleoid="coderuleoidList" + @nodeClick="nodeClick" + @tableDataArray="tableDataArrays" + @tableHeadBttoms="tableHeadBttoms" + @tableHeadDataFateher="tableHeadDatas" + @tableHeadFindData="tableHeadFindDatas" + @total="totals" + > + </master-tree> </basic-container> </el-aside> <el-main> <!-- 琛ㄦ牸缁勪欢--> - <VciMasterCrud :page="this.page" :codeClassifyOid="this.codeClassifyOid" :coderuleoid="this.coderuleoid" - @pageSize="pageSizes" @currentPage="currentPages" :tableDataArray="tableDataArray" :total="this.total" - :tableHeadDataFateher="this.tableHeadDataFateher" :isLoading="isLoading" :templateOid="templateOid" - :tableHeadFindData="tableHeadFindData" :tableHeadBtnData="masterVrBtnList" :Treedata="Treedata" :TreeValue="TreeValue"></VciMasterCrud> + <VciMasterCrud + :TreeValue="TreeValue" + :Treedata="Treedata" + :codeClassifyOid="this.codeClassifyOid" + :coderuleoid="this.coderuleoid" + :isLoading="isLoading" + :page="this.page" + :tableDataArray="tableDataArray" + :tableHeadBtnData="masterVrBtnList" + :tableHeadDataFateher="this.tableHeadDataFateher" + :tableHeadFindData="tableHeadFindData" + :templateOid="templateOid" + :total="this.total" + @currentPage="currentPages" + @pageSize="pageSizes" + > + </VciMasterCrud> </el-main> </el-container> </template> @@ -35,7 +59,7 @@ currentPage: "1", codeClassifyOid: "", coderuleoid: "", - Treedata:[], + Treedata: [], templateOid: "", tableDataArray: [], masterVrBtnList: [], @@ -43,14 +67,14 @@ total: "", isLoading: false, tableHeadFindData: {}, - TreeValue:'' + TreeValue: '' } }, created() { }, methods: { - TreeValueEmit(val){ - this.TreeValue=val + TreeValueEmit(val) { + this.TreeValue = val }, codeClassifyOidList(val) { this.codeClassifyOid = val; @@ -58,8 +82,8 @@ coderuleoidList(val) { this.coderuleoid = val; }, - TreedataList(val){ - this.Treedata=val + TreedataList(val) { + this.Treedata = val }, pageSizes(val) { this.pageSize = val diff --git a/Source/UBCS-WEB/src/views/integration/systemInfo.vue b/Source/UBCS-WEB/src/views/integration/systemInfo.vue index b3d2433..653321e 100644 --- a/Source/UBCS-WEB/src/views/integration/systemInfo.vue +++ b/Source/UBCS-WEB/src/views/integration/systemInfo.vue @@ -294,6 +294,7 @@ // this.ModifyProperties(this.TreeData, 'text', 'label'); // 鏍规嵁this.TreeData鐨勯暱搴﹁绠楀欢杩熸椂闂� const delayTime = this.TreeData.length * 1; + console.log(delayTime) setTimeout(() => { this.loading = false; this.reload = Math.random(); -- Gitblit v1.9.3