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

---
 src/views/ServiceChargeManage/ServiceChargeDetail.vue |   43 ++++++++++++++++++++++++++++++++++++-------
 1 files changed, 36 insertions(+), 7 deletions(-)

diff --git a/src/views/ServiceChargeManage/ServiceChargeDetail.vue b/src/views/ServiceChargeManage/ServiceChargeDetail.vue
index f19dca6..7889c48 100644
--- a/src/views/ServiceChargeManage/ServiceChargeDetail.vue
+++ b/src/views/ServiceChargeManage/ServiceChargeDetail.vue
@@ -91,11 +91,21 @@
         <div class="chuck-add-or-edit-actions">
           <el-button class="chuck-add-or-edit-actions" @click="handleBack">鍙栨秷</el-button>
           <el-button
-            v-if="isSettlement"
+            v-if="
+              isSettlement &&
+              (!!form.auditStatus || form.auditStatus === EnumTaskSettlementAuditStatus.Fail)
+            "
             class="chuck-add-or-edit-actions"
             type="primary"
             @click="handleSubmit()"
-            >缁撶畻</el-button
+            >缁撶畻鐢宠</el-button
+          >
+          <el-button
+            v-if="isSettlement && form.auditStatus === EnumTaskSettlementAuditStatus.Pass"
+            class="chuck-add-or-edit-actions"
+            type="primary"
+            @click="handleSubmit()"
+            >鎻愪氦缁撶畻</el-button
           >
         </div>
       </ChunkCell>
@@ -134,7 +144,7 @@
 import EditAccountInfoDialog from './components/EditAccountInfoDialog.vue';
 import SettleDetailDialog from './components/SettleDetailDialog.vue';
 import { Message } from '@bole-core/core';
-import { SettlementReceiveStatusText } from '@/constants';
+import { SettlementReceiveStatusText, EnumTaskSettlementAuditStatus } from '@/constants';
 import {
   downloadFile,
   downloadFileByUrl,
@@ -168,7 +178,7 @@
 const route = useRoute();
 const id = (route.params.id as string) ?? '';
 const settlement = (route.query.settlement as string) ?? '';
-const settlementAccess = route.query.settlementAccess ?? '';
+// const settlementAccess = route.query.settlementAccess ?? '';
 const isSettlement = computed(() => !!settlement);
 
 const form = reactive({
@@ -181,6 +191,11 @@
   settlementTaskUsers: [] as API.GetSettlementTaskUsersQueryResultItem[],
 
   settlementUrl: [] as UploadUserFile[],
+
+  settlementAccess: '' as any as EnumEnterpriseWalletAccess,
+  isSettlement: isSettlement.value,
+
+  auditStatus: '' as any as EnumTaskSettlementAuditStatus,
 });
 
 const BaseState = {
@@ -190,13 +205,16 @@
 const state = reactive({ ...BaseState });
 
 const { isLoading, refetch } = useQuery({
-  queryKey: ['taskUserServices/getSettlementTaskUsers', id, settlementAccess],
+  queryKey: ['taskUserServices/getSettlementTaskUsers', id, toRef(form, 'isSettlement')],
   queryFn: async () => {
     let params: API.APIgetSettlementTaskUsersParams = {
       id: id,
     };
-    if (settlementAccess) {
-      params.settlementAccess = Number(settlementAccess);
+    // if (form.settlementAccess) {
+    //   params.settlementAccess = Number(form.settlementAccess);
+    // }
+    if (form.isSettlement) {
+      params.isImport = true;
     }
     return await taskUserServices.getSettlementTaskUsers(params, {
       showLoading: false,
@@ -210,6 +228,8 @@
       form.settlementAmount = res?.detail?.settlementAmount ?? 0;
       form.actualSettlementAmount = res?.detail?.actualSettlementAmount ?? 0;
       form.code = res?.detail?.code;
+      form.settlementAccess = res?.detail?.settlementAccess;
+      form.auditStatus = res?.detail?.auditStatus;
       // form.settlementOrderName = setOssFileName(res?.detail?.settlementOrderName);
       // form.settlementOrderTime = res?.detail?.settlementOrderTime ?? '';
     }
@@ -292,6 +312,8 @@
     actualSettlementAmount: null as number,
     receiveAccount: '',
     bank: '',
+    totalWorkHours: null as number,
+    settlementAccess: form.settlementAccess,
     // bankBranch: '',
   },
 });
@@ -304,6 +326,8 @@
       actualSettlementAmount: row?.actualSettlementAmount ?? null,
       receiveAccount: row?.receiveAccount ?? '',
       bank: row?.bank ?? '',
+      totalWorkHours: null as number,
+      settlementAccess: form.settlementAccess,
       // bankBranch: row?.bankBranch ?? '',
     });
   }
@@ -317,11 +341,13 @@
       actualSettlementAmount: editForm.actualSettlementAmount,
       receiveAccount: editForm.receiveAccount,
       bank: editForm.bank,
+      totalWorkHours: editForm.totalWorkHours,
       // bankBranch: editForm.bankBranch,
     };
     let res = await taskServices.editTaskSettlementOrderRoster(params);
     if (res) {
       Message.successMessage('鎿嶄綔鎴愬姛');
+      form.isSettlement = false;
       refetch();
       getList(paginationState.pageIndex);
     }
@@ -343,6 +369,7 @@
     let res = await taskServices.importTaskSettlementOrderRosters(params);
     if (res) {
       Message.successMessage('鎿嶄綔鎴愬姛');
+      form.isSettlement = false;
       refetch();
       getList(paginationState.pageIndex);
       if (res?.errors?.length > 0) {
@@ -378,6 +405,7 @@
     code: form.code,
     settlementUserCount: form.settlementTaskUsers.length,
     actualSettlementAmount: form.actualSettlementAmount,
+    settlementAccess: form.settlementAccess,
   });
 }
 
@@ -393,6 +421,7 @@
     code: '',
     settlementUserCount: 0,
     actualSettlementAmount: 0,
+    settlementAccess: '' as any as EnumEnterpriseWalletAccess,
   },
 });
 

--
Gitblit v1.9.1