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

---
 apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue |    7 ++
 apps/bMiniApp/src/subpackages/payrollManage/payrollChange/InnerPage.vue       |  104 ++++++++++++++++++++++++++++++----
 apps/bMiniApp/project.private.config.json                                     |   28 +++++++--
 3 files changed, 118 insertions(+), 21 deletions(-)

diff --git a/apps/bMiniApp/project.private.config.json b/apps/bMiniApp/project.private.config.json
index dfc4842..661be4b 100644
--- a/apps/bMiniApp/project.private.config.json
+++ b/apps/bMiniApp/project.private.config.json
@@ -23,6 +23,27 @@
         "miniprogram": {
             "list": [
                 {
+                    "name": "鍙戣柂淇敼",
+                    "pathName": "subpackages/payrollManage/payrollChange/payrollChange",
+                    "query": "orderRosterId=5262960e-a190-4419-9943-08de11389ea2&settleId=225c2ed0-aefc-43aa-ff08-08de11385920&operatorToken=04e6c650-4240-4fc4-8ae6-7e96231780b2",
+                    "scene": null,
+                    "launchMode": "default"
+                },
+                {
+                    "name": "鍙戣柂璇︽儏",
+                    "pathName": "subpackages/payrollManage/payrollManageDetail/payrollManageDetail",
+                    "query": "id=225c2ed0-aefc-43aa-ff08-08de11385920&operatorToken=5b571348-e388-4ce1-b718-baa0257184de",
+                    "launchMode": "default",
+                    "scene": null
+                },
+                {
+                    "name": "楠屾敹璇︽儏",
+                    "pathName": "subpackages/task/taskCheckDetail/taskCheckDetail",
+                    "query": "id=d1061ab6-9431-49cd-8840-08de0f9d7fb0&date=2025-10-22&checkReceiveStatus=20",
+                    "launchMode": "default",
+                    "scene": null
+                },
+                {
                     "name": "鍙戝竷浠诲姟",
                     "pathName": "subpackages/task/publishTask/publishTask",
                     "query": "",
@@ -33,13 +54,6 @@
                     "name": "楠屾敹绠$悊",
                     "pathName": "subpackages/task/taskCheck/taskCheck",
                     "query": "",
-                    "launchMode": "default",
-                    "scene": null
-                },
-                {
-                    "name": "楠屾敹璇︽儏",
-                    "pathName": "subpackages/task/taskCheckDetail/taskCheckDetail",
-                    "query": "id=927b9898-1e9f-4aec-99aa-08ddf4e125c9&date=2025-10-19&checkReceiveStatus=10",
                     "launchMode": "default",
                     "scene": null
                 }
diff --git a/apps/bMiniApp/src/subpackages/payrollManage/payrollChange/InnerPage.vue b/apps/bMiniApp/src/subpackages/payrollManage/payrollChange/InnerPage.vue
index bdf8ebf..51217d1 100644
--- a/apps/bMiniApp/src/subpackages/payrollManage/payrollChange/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/payrollManage/payrollChange/InnerPage.vue
@@ -11,28 +11,30 @@
             :max="999999999999"
             :precision="2"
             type="text"
+            disabled
           />
           <div class="form-input-unit">鍏�</div>
         </div>
       </nut-form-item>
-      <nut-form-item label="瓒呮椂:" class="bole-form-item" prop="serviceFee" label-width="90px">
+      <nut-form-item label="瓒呮椂:" class="bole-form-item" prop="timeoutHours" label-width="90px">
         <div class="bole-form-input-wrapper">
           <NumberInput
-            v-model.trim="form.serviceFee"
+            v-model.trim="form.timeoutHours"
             class="nut-input-text bole-input-text"
             placeholder="璇疯緭鍏ヨ秴鏃舵椂闀�"
             :min="0"
             :max="999999999999"
             :precision="2"
             type="text"
+            @change="onTimeoutHoursChange"
           />
           <div class="form-input-unit">灏忔椂</div>
         </div>
       </nut-form-item>
-      <nut-form-item label="瓒呮椂璐圭敤:" class="bole-form-item" prop="serviceFee" label-width="90px">
+      <nut-form-item label="瓒呮椂璐圭敤:" class="bole-form-item" prop="timeoutFee" label-width="90px">
         <div class="bole-form-input-wrapper">
           <NumberInput
-            v-model.trim="form.serviceFee"
+            v-model.trim="form.timeoutFee"
             class="nut-input-text bole-input-text"
             placeholder="璇疯緭鍏ヨ秴鏃惰垂鐢�"
             :min="0"
@@ -43,10 +45,10 @@
           <div class="form-input-unit">鍏�</div>
         </div>
       </nut-form-item>
-      <nut-form-item label="鍏朵粬璐圭敤:" class="bole-form-item" prop="serviceFee" label-width="90px">
+      <nut-form-item label="鍏朵粬璐圭敤:" class="bole-form-item" prop="otherFee" label-width="90px">
         <div class="bole-form-input-wrapper">
           <NumberInput
-            v-model.trim="form.serviceFee"
+            v-model.trim="form.otherFee"
             class="nut-input-text bole-input-text"
             placeholder="璇疯緭鍏ュ叾浠栬垂鐢�"
             :min="0"
@@ -57,10 +59,10 @@
           <div class="form-input-unit">鍏�</div>
         </div>
       </nut-form-item>
-      <nut-form-item label="寮�鎴疯:" class="bole-form-item" prop="bank" label-width="90px">
-        {{ `缁撶畻璐圭敤${0}鍏僠 }}
+      <nut-form-item label="缁撶畻閲戦:" class="bole-form-item" prop="bank" label-width="90px">
+        {{ `${settlementAmount}鍏僠 }}
       </nut-form-item>
-      <nut-form-item label="澶囨敞:" class="bole-form-item" prop="remark" label-width="90px">
+      <nut-form-item label="澶囨敞:" class="bole-form-item alignTop" prop="remark" label-width="90px">
         <nut-textarea v-model="form.remark" rows="4" placeholder="璇疯緭鍏ュ娉�"> </nut-textarea>
       </nut-form-item>
     </nut-form>
@@ -75,18 +77,74 @@
 import { NumberInput } from '@12333/components';
 import { FormValidator, Message } from '@12333/utils';
 import * as userServices from '@12333/services/apiV2/user';
-import { EnumUserBankCardAccess } from '@12333/constants';
+import { EnumEnterpriseWalletAccess, EnumUserBankCardAccess } from '@12333/constants';
 import { goBack } from '@/utils';
+import Taro from '@tarojs/taro';
+import * as taskUserServices from '@12333/services/apiV2/taskUser';
+import { useQuery } from '@tanstack/vue-query';
+import * as taskServices from '@12333/services/apiV2/task';
+import { useEventChannel } from 'senin-mini/hooks';
 
 defineOptions({
   name: 'InnerPage',
 });
-const { userDetail, updateUserInfo } = useUser();
+
+const router = Taro.useRouter();
+//缁撶畻鍗昳d
+const settleId = router.params?.settleId ?? '';
+//浜哄憳id
+const orderRosterId = router.params?.orderRosterId ?? '';
+const operatorToken = router.params?.operatorToken ?? '';
+
+const { isLoading, refetch } = useQuery({
+  queryKey: ['taskUserServices/getSettlementTaskUsers', settleId, operatorToken],
+  queryFn: async () => {
+    let params: API.APIgetSettlementTaskUsersParams = {
+      id: settleId,
+      operatorToken: operatorToken,
+    };
+
+    return await taskUserServices.getSettlementTaskUsers(params, {
+      showLoading: false,
+    });
+  },
+  placeholderData: () => ({} as API.GetSettlementTaskUsersQueryResult),
+  onSuccess(res) {
+    const settlementTaskUser = res.data.find((x) => x.id === orderRosterId);
+    if (res?.detail) {
+      form.serviceFee = settlementTaskUser?.serviceFee ?? 0;
+      form.actualSettlementAmount = settlementTaskUser?.actualSettlementAmount ?? 0;
+      form.receiveAccount = settlementTaskUser?.receiveAccount ?? '';
+      form.bank = settlementTaskUser?.bank ?? '';
+      form.settlementAccess = res?.detail?.settlementAccess;
+      form.timeoutServiceFee = res?.detail?.timeoutServiceFee ?? 0;
+      form.timeoutHours = settlementTaskUser?.timeoutHours ?? ('' as any as number);
+      form.timeoutFee = settlementTaskUser?.timeoutFee ?? ('' as any as number);
+      form.otherFee = settlementTaskUser?.otherFee ?? ('' as any as number);
+      form.remark = settlementTaskUser?.remark ?? '';
+
+      // form.settlementOrderName = setOssFileName(res?.detail?.settlementOrderName);
+      // form.settlementOrderTime = res?.detail?.settlementOrderTime ?? '';
+    }
+  },
+});
 
 const form = reactive({
   serviceFee: '' as any as number,
+  actualSettlementAmount: '' as any as number,
+  receiveAccount: '',
+  bank: '',
+  settlementAccess: EnumEnterpriseWalletAccess.PingAnPay,
+  timeoutServiceFee: 0,
+  timeoutHours: '' as any as number,
+  timeoutFee: '' as any as number,
+  otherFee: '' as any as number,
   remark: '',
 });
+
+const settlementAmount = computed(
+  () => Number(form.timeoutFee ?? 0) + Number(form.serviceFee ?? 0) + Number(form.otherFee ?? 0)
+);
 
 const rules = reactive<FormRules>({
   code: [
@@ -101,6 +159,10 @@
   verifyCode: [{ required: true, message: '璇疯緭鍏ラ獙璇佺爜' }],
 });
 
+function onTimeoutHoursChange(event: any) {
+  form.timeoutFee = form.timeoutServiceFee * event.detail.value;
+}
+
 const formRef = ref<any>(null);
 function handleConfirm() {
   if (!formRef.value) return;
@@ -111,16 +173,32 @@
   });
 }
 
+const eventChannel = useEventChannel();
+
 async function confirm() {
   try {
-    let params: API.SavePersonalUserBankCardCommand = {};
-    let res = await userServices.savePersonalUserBankCard(params);
+    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) {}
 }
diff --git a/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue b/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
index c7075ee..db3cc10 100644
--- a/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
+++ b/apps/bMiniApp/src/subpackages/payrollManage/payrollManageDetail/InnerPage.vue
@@ -192,7 +192,12 @@
 
 function goPayrollChange(item: API.GetSettlementTaskUsersQueryResultItem) {
   Taro.navigateTo({
-    url: `${RouterPath.payrollChange}?id=${item.id}`,
+    url: `${RouterPath.payrollChange}?orderRosterId=${item.id}&settleId=${id}&operatorToken=${operatorToken}`,
+    events: {
+      update: function () {
+        refetch();
+      },
+    },
   });
 }
 </script>

--
Gitblit v1.9.1