瀏覽代碼

feat(财务): 添加商城账户总览数据和商城明细选项

在财务概览页面添加商城账户总览数据展示,包括累计成交金额等5个指标
在资金流水页面添加商城明细筛选选项,完善财务模块功能
ylong 3 天之前
父節點
當前提交
2816759cf7
共有 2 個文件被更改,包括 115 次插入76 次删除
  1. 65 76
      src/views/finance/cashFlow/index.vue
  2. 50 0
      src/views/finance/overview/index.vue

+ 65 - 76
src/views/finance/cashFlow/index.vue

@@ -10,12 +10,10 @@
 
         <common-table ref="pageRef" :pageConfig="pageConfig" :columns="columns">
             <template #toolbar>
-                <el-radio-group
-                    @change="handleStatusChange"
-                    v-model="useStatus"
-                >
+                <el-radio-group @change="handleStatusChange" v-model="useStatus">
                     <el-radio-button label="全部明细" value="" />
                     <el-radio-button label="佣金明细" value="1" />
+                    <el-radio-button label="商城明细" value="5" />
                     <el-radio-button label="书款明细" value="2" />
                     <el-radio-button label="提现明细" value="3" />
                     <el-radio-button label="其他" value="4" />
@@ -28,18 +26,14 @@
                         row.plat == 1
                             ? '微信余额'
                             : row.plat == 2
-                              ? '支付宝余额'
-                              : '--'
+                                ? '支付宝余额'
+                                : '--'
                     }}
                 </div>
             </template>
 
             <template #changeType="{ row }">
-                <dict-data
-                    code="account_change_type"
-                    type="text"
-                    :model-value="row.changeType"
-                />
+                <dict-data code="account_change_type" type="text" :model-value="row.changeType" />
             </template>
 
             <template #orderId="{ row }">
@@ -50,12 +44,7 @@
 
             <template #action="{ row }">
                 <div>
-                    <el-button
-                        type="primary"
-                        link
-                        v-permission="'finance:cashFlow:detail'"
-                        @click="handleDetail(row)"
-                    >
+                    <el-button type="primary" link v-permission="'finance:cashFlow:detail'" @click="handleDetail(row)">
                         [详情]
                     </el-button>
                 </div>
@@ -67,71 +56,71 @@
 </template>
 
 <script setup>
-    import { ref, reactive } from 'vue';
-    import CommonTable from '@/components/CommonPage/CommonTable.vue';
-    import pageSearch from './components/page-search.vue';
-    import OrderDetail from '@/views/recycleOrder/components/order-detail.vue';
+import { ref, reactive } from 'vue';
+import CommonTable from '@/components/CommonPage/CommonTable.vue';
+import pageSearch from './components/page-search.vue';
+import OrderDetail from '@/views/recycleOrder/components/order-detail.vue';
 
-    defineOptions({ name: 'Withdrawal' });
-    const checkList = ref([]);
+defineOptions({ name: 'Withdrawal' });
+const checkList = ref([]);
 
-    const useStatus = ref('');
-    function handleStatusChange(value) {
-        pageRef.value.reload({ type: value });
+const useStatus = ref('');
+function handleStatusChange(value) {
+    pageRef.value.reload({ type: value });
+}
+
+/** 表格列配置 */
+const columns = ref([
+    { label: '交易时间', prop: 'createTime', align: 'center', width: 180 },
+    { label: '用户UID', prop: 'userId', align: 'center' },
+    { label: '客户昵称', prop: 'nickName', align: 'center', width: 150 },
+    {
+        label: '支付单号/流水号',
+        prop: 'tradeNo',
+        align: 'center',
+        minWidth: 160
+    },
+    { label: '对方账户', prop: 'plat', align: 'center', slot: 'plat' },
+    { label: '变动金额', prop: 'changeMoney', align: 'center' },
+    { label: '变动后金额', prop: 'afterMoney', align: 'center' },
+    {
+        label: '订单编号',
+        prop: 'orderId',
+        align: 'center',
+        minWidth: 120,
+        slot: 'orderId'
+    },
+    {
+        label: '交易类型',
+        prop: 'changeTypeName',
+        align: 'center',
+        slot: 'changeType'
     }
+]);
 
-    /** 表格列配置 */
-    const columns = ref([
-        { label: '交易时间', prop: 'createTime', align: 'center', width: 180 },
-        { label: '用户UID', prop: 'userId', align: 'center' },
-        { label: '客户昵称', prop: 'nickName', align: 'center', width: 150 },
-        {
-            label: '支付单号/流水号',
-            prop: 'tradeNo',
-            align: 'center',
-            minWidth: 160
-        },
-        { label: '对方账户', prop: 'plat', align: 'center', slot: 'plat' },
-        { label: '变动金额', prop: 'changeMoney', align: 'center' },
-        { label: '变动后金额', prop: 'afterMoney', align: 'center' },
-        {
-            label: '订单编号',
-            prop: 'orderId',
-            align: 'center',
-            minWidth: 120,
-            slot: 'orderId'
-        },
-        {
-            label: '交易类型',
-            prop: 'changeTypeName',
-            align: 'center',
-            slot: 'changeType'
-        }
-    ]);
+/** 页面组件实例 */
+const pageRef = ref(null);
+const orderDetailRef = ref(null);
 
-    /** 页面组件实例 */
-    const pageRef = ref(null);
-    const orderDetailRef = ref(null);
+const pageConfig = reactive({
+    pageUrl: '/user/userAccountInfo/changeLogList',
+    exportUrl: '/user/userAccountInfo/export',
+    fileName: '用户账户流水记录',
+    cacheKey: 'userAccountChangeLogTable'
+});
 
-    const pageConfig = reactive({
-        pageUrl: '/user/userAccountInfo/changeLogList',
-        exportUrl: '/user/userAccountInfo/export',
-        fileName: '用户账户流水记录',
-        cacheKey: 'userAccountChangeLogTable'
-    });
+//刷新表格
+function reload(where) {
+    pageRef.value?.reload(where);
+}
 
-    //刷新表格
-    function reload(where) {
-        pageRef.value?.reload(where);
-    }
+//订单详情
+function handleOrderId(row) {
+    orderDetailRef.value?.handleOpen(row);
+}
 
-    //订单详情
-    function handleOrderId(row) {
-        orderDetailRef.value?.handleOpen(row);
-    }
-
-    //详情
-    function handleDetail(row) {
-        console.log(row);
-    }
+//详情
+function handleDetail(row) {
+    console.log(row);
+}
 </script>

+ 50 - 0
src/views/finance/overview/index.vue

@@ -81,6 +81,31 @@ function updateStateList(data) {
                 },
             ],
         },
+        {
+            title: "商城账户总览",
+            children: [
+                {
+                    name: "累计成交金额",
+                    number: data.mallTotalMoney || 0,
+                },
+                {
+                    name: "已支付未发货金额",
+                    number: data.mallPaidUnShippedMoney || 0,
+                },
+                {
+                    name: "已发货未收款金额",
+                    number: data.mallShippedUnCollectedMoney || 0,
+                },
+                {
+                    name: "已收款金额",
+                    number: data.mallCollectedMoney || 0,
+                },
+                {
+                    name: "退款金额",
+                    number: data.mallRefundMoney || 0,
+                },
+            ],
+        },
         {
             title: "佣金总览",
             children: [
@@ -152,6 +177,31 @@ const stateList = ref([
             },
         ],
     },
+    {
+        title: "商城账户总览",
+        children: [
+            {
+                name: "累计成交金额",
+                number: 0,
+            },
+            {
+                name: "已支付未发货金额",
+                number: 0,
+            },
+            {
+                name: "已发货未收款金额",
+                number: 0,
+            },
+            {
+                name: "已收款金额",
+                number: 0,
+            },
+            {
+                name: "退款金额",
+                number: 0,
+            },
+        ],
+    },
     {
         title: "佣金总览",
         children: [