From 8b40022d423cb9734813326e60957ec513b8a942 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期三, 22 十月 2025 23:07:17 +0800
Subject: [PATCH] fix: bug

---
 packages/services/apiV2/typings.d.ts                                          |   19 +++++++++
 apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue |   33 ++++++++++++++--
 apps/bMiniApp/src/subpackages/payrollManage/payrollChange/InnerPage.vue       |   66 ++++++++++++++++++++------------
 3 files changed, 88 insertions(+), 30 deletions(-)

diff --git a/apps/bMiniApp/src/subpackages/payrollManage/payrollChange/InnerPage.vue b/apps/bMiniApp/src/subpackages/payrollManage/payrollChange/InnerPage.vue
index d36efd3..f431f7a 100644
--- a/apps/bMiniApp/src/subpackages/payrollManage/payrollChange/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/payrollManage/payrollChange/InnerPage.vue
@@ -182,31 +182,47 @@
 const eventChannel = useEventChannel();
 
 async function confirm() {
-  try {
-    let params: API.EditTaskSettlementOrderRosterCommand = {
-      id: orderRosterId,
-      settlementAmount: settlementAmount.value,
-      actualSettlementAmount: form.actualSettlementAmount,
-      receiveAccount: form.receiveAccount,
-      bank: form.bank,
-      // totalWorkHours: editForm.totalWorkHours,
-      // bankBranch: editForm.bankBranch,
-      serviceFee: form.serviceFee,
-      timeoutHours: form.timeoutHours,
-      timeoutFee: form.timeoutFee,
-      otherFee: form.otherFee,
-      remark: form.remark,
-    };
-    let res = await taskServices.editTaskSettlementOrderRoster(params);
-    if (res) {
-      Message.success('淇敼鎴愬姛', {
-        onClosed() {
-          goBack();
-        },
-      });
-      eventChannel.emit('update');
-    }
-  } catch (error) {}
+  let params: API.EditTaskSettlementOrderRosterCommand = {
+    id: orderRosterId,
+    settlementAmount: settlementAmount.value,
+    actualSettlementAmount: form.actualSettlementAmount,
+    receiveAccount: form.receiveAccount,
+    bank: form.bank,
+    // totalWorkHours: editForm.totalWorkHours,
+    // bankBranch: editForm.bankBranch,
+    serviceFee: form.serviceFee,
+    timeoutHours: form.timeoutHours,
+    timeoutFee: form.timeoutFee,
+    otherFee: form.otherFee,
+    remark: form.remark,
+  };
+  // try {
+  //   let params: API.EditTaskSettlementOrderRosterCommand = {
+  //     id: orderRosterId,
+  //     settlementAmount: settlementAmount.value,
+  //     actualSettlementAmount: form.actualSettlementAmount,
+  //     receiveAccount: form.receiveAccount,
+  //     bank: form.bank,
+  //     // totalWorkHours: editForm.totalWorkHours,
+  //     // bankBranch: editForm.bankBranch,
+  //     serviceFee: form.serviceFee,
+  //     timeoutHours: form.timeoutHours,
+  //     timeoutFee: form.timeoutFee,
+  //     otherFee: form.otherFee,
+  //     remark: form.remark,
+  //   };
+  //   let res = await taskServices.editTaskSettlementOrderRoster(params);
+  //   if (res) {
+  //     Message.success('淇敼鎴愬姛', {
+  //       onClosed() {
+  //         goBack();
+  //       },
+  //     });
+  //     eventChannel.emit('update');
+  //   }
+  // } catch (error) {}
+  goBack();
+  eventChannel.emit('update', params);
 }
 </script>
 
diff --git a/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue b/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
index 0dc276e..d82e12d 100644
--- a/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
@@ -117,6 +117,8 @@
   auditStatus: 0,
   billingMethod: 0,
   settlementStatus: 0,
+
+  settlementTaskUsers: [] as API.GetSettlementTaskUsersQueryResultItem[],
 });
 
 const {
@@ -147,6 +149,9 @@
     return res;
   },
   placeholderData: () => ({} as API.GetSettlementTaskUsersQueryResult),
+  onSuccess(res) {
+    form.settlementTaskUsers = res?.data ?? [];
+  },
 });
 
 const { infiniteLoadingProps, invalidateQueries } = useInfiniteLoading(
@@ -162,13 +167,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(() => !isLoading.value),
   }
 );
 
@@ -178,6 +183,15 @@
       id: id,
       operatorToken: operatorToken,
       auditStatus: auditStatus,
+      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) {
@@ -194,8 +208,17 @@
   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) {
+            return {
+              ...item,
+              ...params,
+            };
+          }
+          return item;
+        });
       },
     },
   });
diff --git a/packages/services/apiV2/typings.d.ts b/packages/services/apiV2/typings.d.ts
index 7364408..a039025 100644
--- a/packages/services/apiV2/typings.d.ts
+++ b/packages/services/apiV2/typings.d.ts
@@ -354,6 +354,25 @@
     auditRemark?: string;
     /** 鎿嶄綔浠ょ墝 */
     operatorToken?: string;
+    /** 鍚嶅崟 */
+    rosters?: AuditTaskSettlementCommandRoster[];
+  }
+
+  interface AuditTaskSettlementCommandRoster {
+    /** 鍚嶅崟Id */
+    id?: string;
+    /** 鏈嶅姟璐癸紙鍏冿級 */
+    serviceFee?: number;
+    /** 瓒呮椂锛堝皬鏃讹級 */
+    timeoutHours?: number;
+    /** 瓒呮椂璐圭敤锛堝厓锛� */
+    timeoutFee?: number;
+    /** 鍏朵粬璐圭敤锛堝厓锛� */
+    otherFee?: number;
+    /** 澶囨敞 */
+    remark?: string;
+    /** 缁撶畻閲戦 */
+    settlementAmount: number;
   }
 
   interface BaiduOcrBusinessLicenseResultModel {

--
Gitblit v1.9.1