From 3ae270ee2e6518522dce3153f483b8c5b3d3428d Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期五, 28 十一月 2025 16:42:05 +0800
Subject: [PATCH] fix: bug

---
 src/views/ServiceChargeManage/ServiceChargeDetail.vue |   34 ++++++++++++++++++++++------------
 1 files changed, 22 insertions(+), 12 deletions(-)

diff --git a/src/views/ServiceChargeManage/ServiceChargeDetail.vue b/src/views/ServiceChargeManage/ServiceChargeDetail.vue
index 59b4f1f..6748247 100644
--- a/src/views/ServiceChargeManage/ServiceChargeDetail.vue
+++ b/src/views/ServiceChargeManage/ServiceChargeDetail.vue
@@ -79,7 +79,7 @@
         </ProTableQueryFilterBar>
         <ProTableV2
           v-bind="proTableProps"
-          :columns="SettlementListColumns"
+          :columns="column"
           :operationBtns="operationBtns"
           :auto-height="false"
           ref="proTable"
@@ -138,7 +138,6 @@
   BlFileUpload,
   UploadUserFile,
 } from '@bole-core/components';
-import { SettlementListColumns } from './constants';
 import { useQuery } from '@tanstack/vue-query';
 import * as taskServices from '@/services/api/task';
 import * as taskUserServices from '@/services/api/taskUser';
@@ -149,6 +148,7 @@
 import {
   downloadFile,
   downloadFileByUrl,
+  hiddenIDNumberForEnd4,
   paginateList,
   setOssFileName,
   setOSSLink,
@@ -162,12 +162,8 @@
 
 const { closeViewPush } = useRouteView();
 const eventContext = useGlobalEventContext();
-const operationBtns = defineOperationBtns([
-  {
-    data: {
-      enCode: 'editBtn',
-      name: '缂栬緫',
-    },
+const operationBtnMap: Record<string, OperationBtnType> = {
+  editBtn: {
     emits: {
       onClick: (role) => openDialog(role),
     },
@@ -175,7 +171,10 @@
       hide: () => !isSettlement.value,
     },
   },
-]);
+};
+const { column, operationBtns, checkSubModuleItemShow } = useAccess({
+  operationBtnMap,
+});
 const route = useRoute();
 const id = (route.params.id as string) ?? '';
 const settlement = (route.query.settlement as string) ?? '';
@@ -314,6 +313,11 @@
       },
       timeoutFee: { type: 'money' },
       otherFee: { type: 'money' },
+      identity: {
+        formatter: (row: API.GetSettlementTaskUsersQueryResultItem) => {
+          return hiddenIDNumberForEnd4(row.identity);
+        },
+      },
     },
   }
 );
@@ -433,13 +437,19 @@
 }
 
 function handleSubmit() {
+  let actualList = form.settlementTaskUsers.filter((x) => x.actualSettlementAmount > 0);
+  const actualSettlementAmount = actualList.reduce(
+    (pre, cur) => pre + cur.actualSettlementAmount,
+    0
+  );
+  const settlementAmount = actualList.reduce((pre, cur) => pre + cur.settlementAmount, 0);
   handleSettleEdit({
     id: id,
     name: form.name,
     code: form.code,
-    settlementUserCount: form.settlementTaskUsers.length,
-    actualSettlementAmount: form.actualSettlementAmount,
-    settlementAmount: form.settlementAmount,
+    settlementUserCount: actualList.length,
+    actualSettlementAmount: actualSettlementAmount,
+    settlementAmount: settlementAmount,
     settlementAccess: form.settlementAccess,
     supplierEnterpriseId: form.supplierEnterpriseId,
   });

--
Gitblit v1.9.1