From 5f6eb6a26d5b4f13668a9f267edc2848a3246645 Mon Sep 17 00:00:00 2001 From: lifenlong Date: Thu, 20 Nov 2025 15:32:46 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E7=A7=AF=E5=88=86=E5=95=86=E5=93=81?= =?UTF-8?q?=E5=88=86=E7=B1=BB):=20=E6=B7=BB=E5=8A=A0=E5=88=86=E9=A1=B5?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E5=B9=B6=E6=94=AF=E6=8C=81=E6=8C=89=E6=8E=92?= =?UTF-8?q?=E5=BA=8F=E5=80=BC=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在积分商品分类页面添加分页组件,支持分页查询和排序 新增排序值字段展示,并对分类列表按排序值进行递归排序 --- .../points-goods-category.vue | 51 ++++++++++++++++++- 1 file changed, 49 insertions(+), 2 deletions(-) diff --git a/manager/src/views/promotions/points-goods-category/points-goods-category.vue b/manager/src/views/promotions/points-goods-category/points-goods-category.vue index da6246d4..b11b3e64 100644 --- a/manager/src/views/promotions/points-goods-category/points-goods-category.vue +++ b/manager/src/views/promotions/points-goods-category/points-goods-category.vue @@ -22,6 +22,20 @@ + + + { + getPointsGoodsCategoryList(this.searchForm).then((res) => { this.loading = false; if (res.success) { - this.tableData = res.result.records; + const records = res.result.records || []; + const sortFn = (a, b) => (a.sortOrder || 0) - (b.sortOrder || 0); + const sortRecursively = (list = []) => { + list.sort(sortFn); + list.forEach((item) => { + if (Array.isArray(item.children) && item.children.length) { + sortRecursively(item.children); + } + }); + return list; + }; + this.tableData = sortRecursively(records); + this.total = res.result.total || 0; } }); }, + changePage(v) { + this.searchForm.pageNumber = v; + this.getAllList(); + }, + changePageSize(v) { + this.searchForm.pageNumber = 1; + this.searchForm.pageSize = v; + this.getAllList(); + } }, mounted() { this.init();