From 762ee921146f8557c2b9ce96df36ad85959c0f18 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期五, 24 十月 2025 11:30:19 +0800
Subject: [PATCH] fix: bug

---
 apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue |   56 +++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 41 insertions(+), 15 deletions(-)

diff --git a/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue b/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
index 6674629..95f4321 100644
--- a/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
@@ -117,7 +117,12 @@
   auditStatus: 0,
   billingMethod: 0,
   settlementStatus: 0,
-  rosters: [] as API.AuditTaskSettlementCommandRoster[],
+
+  settlementTaskUsers: [] as API.GetSettlementTaskUsersQueryResultItem[],
+});
+
+const state = reactive({
+  isLoaded: false,
 });
 
 const {
@@ -144,18 +149,16 @@
       form.auditStatus = res.detail?.auditStatus;
       form.settlementStatus = res.detail?.settlementStatus;
       form.billingMethod = res.detail?.billingMethod;
-      form.rosters = res.data?.map((x) => ({
-        id: x.id,
-        name: x.name,
-        gender: x.gender,
-        isReal: x.isReal,
-        timeoutHours: x.timeoutHours,
-        settlementAmount: x.settlementAmount,
-      }));
     }
     return res;
   },
   placeholderData: () => ({} as API.GetSettlementTaskUsersQueryResult),
+  onSuccess(res) {
+    if (!state.isLoaded) {
+      form.settlementTaskUsers = res?.data ?? [];
+      state.isLoaded = true;
+    }
+  },
 });
 
 const { infiniteLoadingProps, invalidateQueries } = useInfiniteLoading(
@@ -171,13 +174,13 @@
       pageModel: {
         rows: 20,
         page: pageParam,
-        totalCount: detail.value?.data.length,
+        totalCount: form.settlementTaskUsers.length,
       },
-      data: paginateList(detail.value?.data, pageParam, 20),
+      data: paginateList(form.settlementTaskUsers, pageParam, 20),
     });
   },
   {
-    enabled: computed(() => !!detail.value?.data),
+    enabled: computed(() => form.settlementTaskUsers?.length > 0),
   }
 );
 
@@ -187,7 +190,15 @@
       id: id,
       operatorToken: operatorToken,
       auditStatus: auditStatus,
-      rosters: form.rosters,
+      rosters: form.settlementTaskUsers.map((item) => ({
+        id: item.id,
+        serviceFee: item.serviceFee,
+        timeoutHours: item.timeoutHours,
+        timeoutFee: item.timeoutFee,
+        otherFee: item.otherFee,
+        remark: item.remark,
+        settlementAmount: item.settlementAmount,
+      })),
     };
     let res = await taskServices.auditTaskSettlement(params);
     if (res) {
@@ -204,8 +215,23 @@
   Taro.navigateTo({
     url: `${RouterPath.payrollChange}?orderRosterId=${item.id}&settleId=${id}&operatorToken=${operatorToken}`,
     events: {
-      update: function () {
-        refetch();
+      update: function (params: API.EditTaskSettlementOrderRosterCommand) {
+        // refetch();
+        form.settlementTaskUsers = form.settlementTaskUsers.map((item) => {
+          if (item.id == params.id) {
+            item.settlementAmount = params.settlementAmount;
+            item.actualSettlementAmount = params.actualSettlementAmount;
+            item.receiveAccount = params.receiveAccount;
+            item.bank = params.bank;
+            item.serviceFee = params.serviceFee;
+            item.timeoutHours = params.timeoutHours;
+            item.timeoutFee = params.timeoutFee;
+            item.otherFee = params.otherFee;
+            item.remark = params.remark;
+            return item;
+          }
+          return item;
+        });
       },
     },
   });

--
Gitblit v1.9.1