From 169d64d8ac756e5dde85afc5673cf17aa890c8ce Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期五, 31 十月 2025 17:39:04 +0800
Subject: [PATCH] fix: bug

---
 apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue |   62 ++++++++++++++++++++++++++----
 1 files changed, 53 insertions(+), 9 deletions(-)

diff --git a/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue b/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
index 0dc276e..2bc7ca8 100644
--- a/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
@@ -11,7 +11,7 @@
           <div class="payroll-manage-detail-top-content-item">
             <div class="payroll-manage-detail-top-content-item-label">鏈嶅姟璐归噾棰濓細</div>
             <div class="payroll-manage-detail-top-content-item-text">
-              {{ `${form.serviceFee ?? 0}${EnumBillingMethodText[form.billingMethod]}` }}
+              {{ `${form.serviceFee ?? 0}${BillingMethodEnumUnit[form.billingMethod]}` }}
             </div>
           </div>
           <div class="payroll-manage-detail-top-content-item">
@@ -32,7 +32,7 @@
           >
             <div class="payroll-manage-detail-top-content-item-label">瀹℃牳鏃堕棿锛�</div>
             <div class="payroll-manage-detail-top-content-item-text">
-              {{ dayjs(form.auditTime).format('YYYY-MM-DD') }}
+              {{ form.auditTime ? dayjs(form.auditTime).format('YYYY-MM-DD') : '' }}
             </div>
           </div>
           <div
@@ -58,7 +58,7 @@
           :name="item.name"
           :gender="item.gender"
           :isReal="item.isReal"
-          :totalWorkHours="item.totalWorkHours"
+          :totalWorkHours="item.timeoutHours"
           :settlementAmount="item.settlementAmount"
         >
           <template #actions v-if="form.auditStatus === EnumTaskSettlementAuditStatus.Wait">
@@ -70,7 +70,7 @@
       </template>
     </InfiniteLoading>
     <PageFooter v-if="form.auditStatus === EnumTaskSettlementAuditStatus.Wait">
-      <PageFooterBtn type="primary" @click="auditTaskSettlement(EnumTaskSettlementAuditStatus.Pass)"
+      <!-- <PageFooterBtn type="primary" @click="auditTaskSettlement(EnumTaskSettlementAuditStatus.Pass)"
         >瀹℃牳閫氳繃</PageFooterBtn
       >
       <PageFooterBtn
@@ -78,7 +78,11 @@
         plain
         @click="auditTaskSettlement(EnumTaskSettlementAuditStatus.Fail)"
         >椹冲洖</PageFooterBtn
+      > -->
+      <PageFooterBtn type="primary" @click="auditTaskSettlement(EnumTaskSettlementAuditStatus.Pass)"
+        >纭</PageFooterBtn
       >
+      <PageFooterBtn type="primary" plain @click="goBack">鍙栨秷</PageFooterBtn>
     </PageFooter>
   </LoadingLayout>
 </template>
@@ -92,6 +96,7 @@
   EnumBillingMethodText,
   EnumTaskSettlementAuditStatus,
   EnumTaskSettlementStatus,
+  BillingMethodEnumUnit,
 } from '@12333/constants';
 import PayrollManageDetailCard from '../components/PayrollManageDetailCard.vue';
 import { Message, paginateList, setOSSLink, toThousand } from '@12333/utils';
@@ -117,6 +122,12 @@
   auditStatus: 0,
   billingMethod: 0,
   settlementStatus: 0,
+
+  settlementTaskUsers: [] as API.GetSettlementTaskUsersQueryResultItem[],
+});
+
+const state = reactive({
+  isLoaded: false,
 });
 
 const {
@@ -147,6 +158,12 @@
     return res;
   },
   placeholderData: () => ({} as API.GetSettlementTaskUsersQueryResult),
+  onSuccess(res) {
+    if (!state.isLoaded) {
+      form.settlementTaskUsers = res?.data ?? [];
+      state.isLoaded = true;
+    }
+  },
 });
 
 const { infiniteLoadingProps, invalidateQueries } = useInfiniteLoading(
@@ -162,13 +179,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),
   }
 );
 
@@ -178,7 +195,19 @@
       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,
+      })),
     };
+    // if(auditStatus===EnumTaskSettlementAuditStatus.Pass){
+    //   params.rosters
+    // }
     let res = await taskServices.auditTaskSettlement(params);
     if (res) {
       Message.success('鎿嶄綔鎴愬姛', {
@@ -194,8 +223,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