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/views/MasterData/items.vue | 241 +++++++++++++++++++---------------------------- 1 files changed, 99 insertions(+), 142 deletions(-) diff --git a/Source/UBCS-WEB/src/views/MasterData/items.vue b/Source/UBCS-WEB/src/views/MasterData/items.vue index fb59b6c..49816c3 100644 --- a/Source/UBCS-WEB/src/views/MasterData/items.vue +++ b/Source/UBCS-WEB/src/views/MasterData/items.vue @@ -1,161 +1,118 @@ <template> - <el-container> - <el-aside> - <basic-container style="height: 85vh; max-height: 155vh; overflow-y: scroll;"> - <avue-tree ref="tree" v-model="CloneTreeAvueform" v-loading="loading" :data="CloneTreedata" :defaultExpandAll="false" - :option="Treeoption" - style="height: 80.5vh;padding-top: 5px;padding-bottom: 30px" - @node-click=" nodeClick" - @check-change="checkChange" - ></avue-tree> - </basic-container> - </el-aside> - <el-main> - <TableCrud></TableCrud> - </el-main> - </el-container> + <el-container> + <el-aside> + <basic-container style="overflow: hidden;"> + <!-- 鏍戠粍浠�--> + <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 + :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> <script> -import {getAtrrList, TreeCheckDel, TreeDel, TreeSave} from "@/api/template/templateAttr"; - export default { name: "items.vue", - data(){ - return{ - CloneTreeAvueform:{}, - loading:false, - CloneTreedata:[], - Treeoption: { - addBtn: false, - editBtn: false, - delBtn: false, - defaultExpandAll: false, - menu: false, - // //杩欎釜鏄閫� - // multiple: true, + data() { + return { + // 鍒嗛〉 + page: { + total: 0, + currentPage: 1, + pageSize: 100, + pageSizes: [10, 30, 50, 100, 200], }, - nodeClickList: "", + pageSize: "100", + currentPage: "1", + codeClassifyOid: "", + coderuleoid: "", + Treedata: [], + templateOid: "", + tableDataArray: [], + masterVrBtnList: [], + tableHeadDataFateher: [], + total: "", + isLoading: false, + tableHeadFindData: {}, + TreeValue: '' } }, created() { - this.getAttr() }, - methods:{ - getAttr() { - getAtrrList().then(res => { - this.Treedata = res.data; - this.CloneTreedata = res.data; - this.Treedata.forEach((item) => { - for (let i = 0; i < this.Treedata.length; i++) { - this.Treedata[i].value = i; - } - }) - //璋冪敤淇敼灞炴�у悕鏂规硶 - this.ModifyProperties(this.CloneTreedata, 'name', 'label'); - }).catch(res => { - this.$message.error(res) - }) + methods: { + TreeValueEmit(val) { + this.TreeValue = val }, - //瀹氫箟涓�涓慨鏀规暟鎹睘鎬у悕鐨勬柟娉� - ModifyProperties(obj, oldName, newName) { - for (let key in obj) { - if (key === oldName) { - obj[newName] = obj[key]; - delete obj[key]; - } - if (typeof obj[key] === 'object') { - this.ModifyProperties(obj[key], oldName, newName); - } - } + codeClassifyOidList(val) { + this.codeClassifyOid = val; }, - //鏍戣妭鐐规坊鍔犳寜閽� - TreeAdd() { - this.TreeAddFormVisible = true; - // 鍒ゆ柇褰撳墠鏄惁鏈夌偣鍑诲瓙椤� - if (this.nodeClickList !== "") { - this.TreeFlag = true - } + coderuleoidList(val) { + this.coderuleoid = val; }, - //鏍戣妭鐐规坊鍔犱簨浠� - TreeAddHandler() { - const data = this.TreeAddform - this.$set(data, "parentCodeClassifyOid", this.nodeClickList.oid) - TreeSave(data).then(() => { - this.$message({ - type: 'success', - message: '娣诲姞鎴愬姛!' - }); - this.getAttr(); - this.TreeAddFormVisible = false - this.TreeAddform = "" - }).catch(res => { - this.$message({ - type: 'warning', - message: res - }); - }) + TreedataList(val) { + this.Treedata = val }, - //鏍戣妭鐐瑰垹闄ゆ寜閽� - TreeDel() { - this.$confirm('鏄惁鍒犻櫎褰撳墠閫夋嫨鐨勫垎绫伙紝灏嗕細鎶婂瓙鍒嗙被涓�骞跺垹闄わ紝濡傛灉瀛樺湪缂栫爜鏁版嵁灏嗕笉鑳借鍒犻櫎锛屾槸鍚︾户缁紵', '鎻愮ず', { - confirmButtonText: '纭畾', - cancelButtonText: '鍙栨秷', - type: 'warning', - customClass: 'my-messagebox', - }).then(() => { - TreeCheckDel(this.nodeClickList).then(res => { - if (res.data.data) { - TreeDel(this.nodeClickList).then(() => { - this.$message({ - type: 'success', - message: '鍒犻櫎鎴愬姛!' - }); - this.getAttr(); - }).catch(res => { - this.$message({ - type: 'warning', - message: res - }); - }) - } else { - this.$confirm('褰撳墠鏁版嵁鍖呭惈鏈変笅绾ф暟鎹紝瑕佸垹闄ょ殑璇濅細鍜屼笅绾ф暟鎹竴璧峰垹闄わ紝浣犵‘璁ょ户缁�?', '鎻愮ず', { - confirmButtonText: '纭畾', - cancelButtonText: '鍙栨秷', - type: 'warning', - customClass: 'my-messageboxs', - }).then(() => { - TreeDel(this.nodeClickList).then(() => { - this.$message({ - type: 'success', - message: '鍒犻櫎鎴愬姛!' - }); - this.getAttr(); - }).catch(res => { - this.$message({ - type: 'warning', - message: res - }); - }) - }).catch(() => { - this.$message({ - type: 'info', - message: '宸插彇娑堝垹闄�' - }); - }); - } - }) - }).catch(() => { - this.$message({ - type: 'info', - message: '宸插彇娑堝垹闄�' - }); - }); + pageSizes(val) { + this.pageSize = val }, - nodeClick(data){ - this.nodeClickList = data - console.log(data) - } + currentPages(val) { + this.currentPage = val + }, + tableDataArrays(val) { + this.tableDataArray = val + }, + totals(val) { + this.total = val + }, + tableHeadDatas(val) { + this.tableHeadDataFateher = val + }, + tableHeadFindDatas(val) { + this.tableHeadFindData = val + }, + nodeClick(val) { + this.templateOid = val; + this.isLoading = true; + setTimeout(() => { + this.isLoading = false; + }, 2000); + }, + tableHeadBttoms(val) { + this.masterVrBtnList = val + }, } } </script> -- Gitblit v1.9.3