From f9b6865fafcad274edb9f89a43e0535a9b4eff40 Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期三, 08 一月 2025 14:46:40 +0800
Subject: [PATCH] add:物流发货针对散户更改微信发货方式,保存物流单号,未发送之前可更改

---
 pages/order/list/index.vue |   96 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 93 insertions(+), 3 deletions(-)

diff --git a/pages/order/list/index.vue b/pages/order/list/index.vue
index f61a996..753861e 100644
--- a/pages/order/list/index.vue
+++ b/pages/order/list/index.vue
@@ -1,6 +1,6 @@
 <template>
   <div>
-    <el-bus-crud
+<!--    <el-bus-crud
       ref="crud"
       v-bind="tableConfig"
       :extra-query="{ levelDown: checkedLevelDown }"
@@ -14,7 +14,11 @@
           >未处理的质检异常订单</el-checkbox
         >
       </template>
-    </el-bus-crud>
+    </el-bus-crud>-->
+     <el-bus-crud
+      ref="crud"
+      v-bind="tableConfig"
+    ></el-bus-crud>
     <div id="print-container">
       <print-list ref="printList" :order-list="orderList" />
     </div>
@@ -60,6 +64,12 @@
               // 组件内部不会修改这个prop直接修改可忽略警告
               statusComp.extraQuery = { ...params, statusBackend: '' }
               statusComp.getOtherOptions()
+            }
+            const abnormalOrderStatusComp = searchForm.getComponentById('abnormalOrderStatus')
+            if (abnormalOrderStatusComp) {
+              // 组件内部不会修改这个prop直接修改可忽略警告
+              abnormalOrderStatusComp.extraQuery = { ...params, abnormalOrderStatus: '' }
+              abnormalOrderStatusComp.getOtherOptions()
             }
           }
         },
@@ -143,6 +153,41 @@
                 },
               },
               {
+                label: '异常订单:',
+                id: 'abnormalOrderStatus',
+                type: 'bus-radio',
+                el: {
+                  hasAll: true,
+                  otherInterfaceUri: 'flower/api/order/abnormal/status/count',
+                  childType: 'el-radio-button',
+                  filterOptions: (list) => {
+                    return list.map((item) => {
+                      return {
+                        ...item,
+                        label: `${item.label}(${item.orderCount})`,
+                      }
+                    })
+                  },
+                  // code: 'ORDER_STATUS_BACKEND',
+                },
+                default: this.$route.query.abnormalOrderStatus || '',
+                span: 24,
+                searchImmediately: true,
+                on: {
+                  optionsChange: (e, updateForm, { currentComp }) => {
+                    if (Array.isArray(e[0]) && e[0].length > 0) {
+                      const totalCount = e[0].reduce((total, current) => {
+                        return (total += current.orderCount)
+                      }, 0)
+                      // 组件内部不会修改这个prop直接修改可忽略警告
+                      currentComp.props = {
+                        allLabel: `不限(${totalCount})`,
+                      }
+                    }
+                  },
+                },
+              },
+              {
                 label: '下单日期:',
                 id: 'dateType',
                 component: CustomDateRange,
@@ -180,6 +225,17 @@
                   message: '请输入合法的用户账号',
                   trigger: 'blur',
                 },
+              },
+              {
+                label: '地区',
+                id: 'province',
+                component: 'el-bus-select-area',
+                el: {
+                  clearable: true,
+                },
+                commonFormat: true,
+                commonFormatProps: ['province', 'city', 'region'],
+                customClass: 'in-bus-form',
               },
             ],
           },
@@ -304,6 +360,14 @@
         ],
         extraButtons: [
           {
+            text: '快递单号',
+            show: (row) => !row.partnerName && row.statusBackend === 'SEND',
+            atClick: (row) => {
+              this.$refs.crud.$refs.extraDialog[1].show(row)
+              return false
+            },
+          },
+          {
             text: '发货',
             show: (row) => !row.partnerName && row.statusBackend === 'SEND',
             atClick: (row) => {
@@ -342,7 +406,8 @@
               {
                 label: '快递号:',
                 id: 'deliveryNo',
-                type: 'input',
+                type: 'text',
+                readonly: true,
                 rules: {
                   required: true,
                   message: '请输入快递号',
@@ -360,6 +425,31 @@
               }
             },
           },
+          {
+            title: '快递单号录入',
+            hiddenReverseItems: [],
+            form: [
+              {
+                label: '快递号:',
+                id: 'deliveryNo',
+                type: 'input',
+                rules: {
+                  required: true,
+                  message: '请输入快递号',
+                  trigger: 'blur',
+                },
+              },
+            ],
+            atConfirm: async (val) => {
+              const { code } = await this.$elBusHttp.request(
+                'flower/api/order/list/saveDeliveryNo',
+                { method: 'post', data: val }
+              )
+              if (code === 0) {
+                this.$message.success('快递单号录入成功')
+              }
+            },
+          },
         ],
       },
     }

--
Gitblit v1.9.3