Преглед на файлове

feat(接单中心): 新增我的分成筛选及接口调用

添加"我的分成"筛选选项并实现对应接口调用
切换筛选条件时重置状态筛选
优化错误提示信息
Yannay преди 2 месеца
родител
ревизия
675e4a30f7
променени са 2 файла, в които са добавени 40 реда и са изтрити 18 реда
  1. 1 1
      pages/orderDetailRefactored/components/OrderDetailView.vue
  2. 39 17
      pages/pagereceivecenter/pagereceivecenter.vue

+ 1 - 1
pages/orderDetailRefactored/components/OrderDetailView.vue

@@ -35,7 +35,7 @@
35 35
         :order-id="orderId"
36 36
         :current-receipt="currentReceipt"
37 37
         @next="handleNext"
38
-        @save="handleSave"
38
+        @save="handleNeedSave"
39 39
         @confirm-pay="handleConfirmPay"
40 40
         ref="pageThreeRef"
41 41
       />

+ 39 - 17
pages/pagereceivecenter/pagereceivecenter.vue

@@ -27,7 +27,8 @@ export default {
27 27
             //筛选条件
28 28
             filterList: [
29 29
                 { name: '全部列表', type: 1 },
30
-                { name: '我的接发单', type: 2 }
30
+                { name: '我的接发单', type: 2 },
31
+                { name: '我的分成', type: 3 }
31 32
             ],
32 33
 
33 34
             statisticsSendStatus: [],//中间统计数据
@@ -72,20 +73,33 @@ export default {
72 73
         //获取列表数据
73 74
         async getOrderList() {
74 75
             try {
75
-                const result = await uni.$u.api.selectClueOrderFormList({
76
-                    pageSize: this.page.pageSize,
77
-                    pageNum: this.page.pageNum,
78
-                }, {
79
-                    type: this.activeType,
80
-                    status: this.activeStatus,
81
-                });
82
-
83
-                console.log('接单列表', result);
84
-                // 把数组按照status的大小排序,从小到大
85
-                result.rows.sort((a, b) => {
86
-                    return a.status - b.status;
87
-                    // return b.status - a.status;
88
-                })
76
+                let result;
77
+                
78
+                // 如果是"我的分成",调用分成接口
79
+                if (this.activeType === 3) {
80
+                    result = await uni.$u.api.selectCommissionList({
81
+                        pageSize: this.page.pageSize,
82
+                        pageNum: this.page.pageNum,
83
+                    }, {
84
+                        type: '2',
85
+                    });
86
+                    console.log('分成列表', result);
87
+                } else {
88
+                    // 否则调用订单列表接口
89
+                    result = await uni.$u.api.selectClueOrderFormList({
90
+                        pageSize: this.page.pageSize,
91
+                        pageNum: this.page.pageNum,
92
+                    }, {
93
+                        type: this.activeType,
94
+                        status: this.activeStatus,
95
+                    });
96
+                    console.log('接单列表', result);
97
+                    // 把数组按照status的大小排序,从小到大
98
+                    result.rows.sort((a, b) => {
99
+                        return a.status - b.status;
100
+                        // return b.status - a.status;
101
+                    })
102
+                }
89 103
 
90 104
                 // 如果是第一页(下拉刷新或初始加载),直接替换列表
91 105
                 if (this.page.pageNum === 1) {
@@ -97,9 +111,10 @@ export default {
97 111
                 this.page.total = result.total;
98 112
 
99 113
             } catch (error) {
100
-                console.error('接单列表接口调用失败:', error);
114
+                console.error('列表接口调用失败:', error);
101 115
                 // 添加用户友好的错误提示
102
-                uni.$u.toast('获取订单列表失败,请稍后重试');
116
+                const errorMsg = this.activeType === 3 ? '获取分成列表失败,请稍后重试' : '获取订单列表失败,请稍后重试';
117
+                uni.$u.toast(errorMsg);
103 118
             }
104 119
         },
105 120
         // 下拉刷新
@@ -117,6 +132,11 @@ export default {
117 132
         },
118 133
         //获取统计数据
119 134
         async getStatisticsSendStatus() {
135
+            // 如果是"我的分成",不需要统计数据
136
+            if (this.activeType === 3) {
137
+                this.statisticsSendStatus = [];
138
+                return;
139
+            }
120 140
             const { data } = await uni.$u.api.statisticsSendStatus({ type: this.activeType });
121 141
             // console.log('统计数据是', data)
122 142
 
@@ -255,6 +275,8 @@ export default {
255 275
         // 切换筛选条件
256 276
         async changeFilter(param) {
257 277
             this.activeType = param.type;
278
+            // 切换筛选条件时,重置状态筛选
279
+            this.activeStatus = '';
258 280
 
259 281
             this.page.pageNum = 1;
260 282
             this.orderList = [];