From ae01c3d1add7715afe9bfb348889eb0ae139701e Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期日, 19 十月 2025 14:42:30 +0800
Subject: [PATCH] feat: 1.2.0.1

---
 src/views/ServiceChargeManage/ServiceChargeManage.vue |   48 ++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 44 insertions(+), 4 deletions(-)

diff --git a/src/views/ServiceChargeManage/ServiceChargeManage.vue b/src/views/ServiceChargeManage/ServiceChargeManage.vue
index 541b305..ceb3bee 100644
--- a/src/views/ServiceChargeManage/ServiceChargeManage.vue
+++ b/src/views/ServiceChargeManage/ServiceChargeManage.vue
@@ -90,6 +90,7 @@
     <UploadStatementDialog v-bind="dialogProps" />
     <!-- <SettleDetailDialog v-bind="dialogSettleProps" /> -->
     <RechargeEnterpriseWalletDialog v-bind="dialogRechargeProps" />
+    <SettlMethodDialog v-bind="dialogSettlMethodProps" />
   </LoadingLayout>
 </template>
 
@@ -124,6 +125,7 @@
 import { ModelValueType } from 'element-plus';
 import UploadStatementDialog from './components/UploadStatementDialog.vue';
 import SettleDetailDialog from './components/SettleDetailDialog.vue';
+import SettlMethodDialog from './components/SettlMethodDialog.vue';
 import RechargeEnterpriseWalletDialog from './components/RechargeEnterpriseWalletDialog.vue';
 import { Message } from '@bole-core/core';
 
@@ -161,7 +163,7 @@
       name: '缁撶畻',
     },
     emits: {
-      onClick: (role: API.GetSettlementTasksQueryResultItem) => goDetail(role, 'settlement'),
+      onClick: (role: API.GetSettlementTasksQueryResultItem) => openSettleMethodDialog(role),
     },
     extraProps: {
       hide: (role: API.GetSettlementTasksQueryResultItem) =>
@@ -189,11 +191,24 @@
   },
   {
     data: {
+      enCode: 'settleAuditBtn',
+      name: '缁撶畻瀹℃牳',
+    },
+    emits: {
+      onClick: (role: API.GetSettlementTasksQueryResultItem) => goDetail(role.id),
+    },
+    extraProps: {
+      hide: (role: API.GetSettlementTasksQueryResultItem) =>
+        role.auditStatus !== EnumTaskSettlementAuditStatus.Wait,
+    },
+  },
+  {
+    data: {
       enCode: 'detailBtn',
       name: '璇︽儏',
     },
     emits: {
-      onClick: (role: API.GetSettlementTasksQueryResultItem) => goDetail(role),
+      onClick: (role: API.GetSettlementTasksQueryResultItem) => goDetail(role.id),
     },
     // extraProps: {
     //   hide: (role: API.GetSettlementTasksQueryResultItem) =>
@@ -279,6 +294,7 @@
       settlementOrderStatus: { type: 'enum', valueEnum: EnumTaskSettlementOrderStatusText },
       settlementStatus: { type: 'enum', valueEnum: EnumTaskSettlementStatusText },
       checkReceiveStatus: { type: 'enum', valueEnum: EnumTaskCheckReceiveStatusText },
+      auditStatus: { type: 'enum', valueEnum: EnumTaskSettlementAuditStatusText },
       actualSettlementAmount: { type: 'money' },
       settlementAmount: { type: 'money' },
       settlementTime: { type: 'date', format: 'YYYY-MM-DD HH:mm:ss' },
@@ -404,14 +420,38 @@
   editForm.settlementUrl = [] as UploadUserFile[];
 }
 
-function goDetail(row: API.GetSettlementTasksQueryResultItem, settlement?: string) {
+const {
+  dialogProps: dialogSettlMethodProps,
+  handleAdd: handleSettlMethodAdd,
+  editForm: settlMethodEditForm,
+} = useFormDialog({
+  onConfirm: handleSettlMethod,
+  defaultFormParams: {
+    id: '',
+    settlementAccess: '' as any as EnumEnterpriseWalletAccess,
+  },
+});
+
+function openSettleMethodDialog(row: API.GetSettlementTasksQueryResultItem) {
+  handleSettlMethodAdd({
+    id: row.id,
+    settlementAccess: '' as any as EnumEnterpriseWalletAccess,
+  });
+}
+
+async function handleSettlMethod() {
+  goDetail(settlMethodEditForm.id, 'settlement', settlMethodEditForm.settlementAccess);
+}
+
+function goDetail(id: string, settlement?: string, settlementAccess?: EnumEnterpriseWalletAccess) {
   router.push({
     name: 'ServiceChargeDetail',
     params: {
-      id: row?.id ?? '',
+      id: id ?? '',
     },
     query: {
       settlement: settlement ? settlement : '',
+      settlementAccess: settlementAccess ? settlementAccess : '',
     },
   });
 }

--
Gitblit v1.9.1