From cbcc6a8eecfc19e93da08500dcc898efdabf7836 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期三, 22 十月 2025 18:38:45 +0800
Subject: [PATCH] fix: s
---
src/views/ServiceChargeManage/ServiceChargeDetail.vue | 109 ++++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 88 insertions(+), 21 deletions(-)
diff --git a/src/views/ServiceChargeManage/ServiceChargeDetail.vue b/src/views/ServiceChargeManage/ServiceChargeDetail.vue
index fd799fc..440afdb 100644
--- a/src/views/ServiceChargeManage/ServiceChargeDetail.vue
+++ b/src/views/ServiceChargeManage/ServiceChargeDetail.vue
@@ -1,6 +1,6 @@
<template>
<LoadingLayout :loading="isLoading">
- <AppContainer>
+ <AppScrollContainer>
<ChunkCell title="缁撶畻鍗曡鎯�">
<ProForm :model="form" ref="formRef" label-width="120px" :is-read="true">
<ProFormCol>
@@ -84,22 +84,32 @@
:auto-height="false"
ref="proTable"
:tableProps="{
- maxHeight: '250px',
+ maxHeight: '400px',
}"
>
</ProTableV2>
<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.Pass)
+ "
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>
- </AppContainer>
+ </AppScrollContainer>
<EditAccountInfoDialog v-bind="dialogProps"></EditAccountInfoDialog>
<SettleDetailDialog v-bind="dialogSettleProps" />
</LoadingLayout>
@@ -108,6 +118,7 @@
import {
LoadingLayout,
AppContainer,
+ AppScrollContainer,
ChunkCell,
ProForm,
ProFormItemV2,
@@ -134,7 +145,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,6 +179,7 @@
const route = useRoute();
const id = (route.params.id as string) ?? '';
const settlement = (route.query.settlement as string) ?? '';
+// const settlementAccess = route.query.settlementAccess ?? '';
const isSettlement = computed(() => !!settlement);
const form = reactive({
@@ -180,6 +192,13 @@
settlementTaskUsers: [] as API.GetSettlementTaskUsersQueryResultItem[],
settlementUrl: [] as UploadUserFile[],
+
+ settlementAccess: '' as any as EnumEnterpriseWalletAccess,
+ isSettlement: isSettlement.value,
+
+ auditStatus: '' as any as EnumTaskSettlementAuditStatus,
+
+ timeoutServiceFee: 0,
});
const BaseState = {
@@ -189,14 +208,20 @@
const state = reactive({ ...BaseState });
const { isLoading, refetch } = useQuery({
- queryKey: ['taskUserServices/getSettlementTaskUsers', id],
+ queryKey: ['taskUserServices/getSettlementTaskUsers', id, toRef(form, 'isSettlement')],
queryFn: async () => {
- return await taskUserServices.getSettlementTaskUsers(
- { id: id },
- {
- showLoading: false,
- }
- );
+ let params: API.APIgetSettlementTaskUsersParams = {
+ id: id,
+ };
+ // if (form.settlementAccess) {
+ // params.settlementAccess = Number(form.settlementAccess);
+ // }
+ if (form.isSettlement) {
+ params.isImport = true;
+ }
+ return await taskUserServices.getSettlementTaskUsers(params, {
+ showLoading: false,
+ });
},
placeholderData: () => ({} as API.GetSettlementTaskUsersQueryResult),
onSuccess(res) {
@@ -206,6 +231,9 @@
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.timeoutServiceFee = res?.detail?.timeoutServiceFee ?? 0;
// form.settlementOrderName = setOssFileName(res?.detail?.settlementOrderName);
// form.settlementOrderTime = res?.detail?.settlementOrderTime ?? '';
}
@@ -276,6 +304,13 @@
settlementAmount: { type: 'money' },
actualSettlementAmount: { type: 'money' },
settlementReceiveStatus: { type: 'enum', valueEnum: SettlementReceiveStatusText },
+ serviceFee: { type: 'money' },
+ timeoutHours: {
+ formatter: (row: API.GetSettlementTaskUsersQueryResultItem) =>
+ row.timeoutHours ? `${row.timeoutHours}灏忔椂` : '',
+ },
+ timeoutFee: { type: 'money' },
+ otherFee: { type: 'money' },
},
}
);
@@ -288,7 +323,15 @@
actualSettlementAmount: null as number,
receiveAccount: '',
bank: '',
- bankBranch: '',
+ // totalWorkHours: null as number,
+ settlementAccess: form.settlementAccess,
+ // bankBranch: '',
+ timeoutServiceFee: 0,
+ serviceFee: null as number,
+ timeoutHours: null as number,
+ timeoutFee: null as number,
+ otherFee: null as number,
+ remark: '',
},
});
@@ -300,24 +343,41 @@
actualSettlementAmount: row?.actualSettlementAmount ?? null,
receiveAccount: row?.receiveAccount ?? '',
bank: row?.bank ?? '',
- bankBranch: row?.bankBranch ?? '',
+ // totalWorkHours: row?.totalWorkHours ?? null,
+ settlementAccess: form.settlementAccess,
+ // bankBranch: row?.bankBranch ?? '',
+ timeoutServiceFee: form.timeoutServiceFee,
+ serviceFee: row?.serviceFee ?? 0,
+ timeoutHours: row?.timeoutHours ?? null,
+ timeoutFee: row?.timeoutFee ?? null,
+ otherFee: row?.otherFee ?? null,
+ remark: row?.remark ?? '',
});
}
}
async function handleAddOrEdit() {
try {
+ const settlementAmount =
+ (editForm.timeoutFee ?? 0) + (editForm.serviceFee ?? 0) + (editForm.otherFee ?? 0);
let params: API.EditTaskSettlementOrderRosterCommand = {
id: editForm.id,
- settlementAmount: editForm.settlementAmount,
+ settlementAmount: settlementAmount,
actualSettlementAmount: editForm.actualSettlementAmount,
receiveAccount: editForm.receiveAccount,
bank: editForm.bank,
- bankBranch: editForm.bankBranch,
+ // totalWorkHours: editForm.totalWorkHours,
+ // bankBranch: editForm.bankBranch,
+ serviceFee: editForm.serviceFee,
+ timeoutHours: editForm.timeoutHours,
+ timeoutFee: editForm.timeoutFee,
+ otherFee: editForm.otherFee,
+ remark: editForm.remark,
};
let res = await taskServices.editTaskSettlementOrderRoster(params);
if (res) {
Message.successMessage('鎿嶄綔鎴愬姛');
+ form.isSettlement = false;
refetch();
getList(paginationState.pageIndex);
}
@@ -339,6 +399,7 @@
let res = await taskServices.importTaskSettlementOrderRosters(params);
if (res) {
Message.successMessage('鎿嶄綔鎴愬姛');
+ form.isSettlement = false;
refetch();
getList(paginationState.pageIndex);
if (res?.errors?.length > 0) {
@@ -349,12 +410,12 @@
workbookHeaderMap: {
name: '濮撳悕',
identity: '韬唤璇佸彿',
- taskName: '浠诲姟鍚嶇О',
+ contactPhoneNumber: '鎵嬫満鍙�',
+ bank: '鎵�灞為摱琛�',
+ bankBranch: '鎵�灞炴敮琛�',
+ receiveAccount: '鏀舵璐︽埛',
settlementAmount: '缁撶畻閲戦',
actualSettlementAmount: '瀹炲彂閲戦',
- receiveAccount: '鏀舵璐︽埛',
- bank: '鎵�灞為摱琛�',
- bankBranch: '寮�鎴锋敮琛屽悕绉�',
errorMessage: '閿欒淇℃伅',
},
});
@@ -374,6 +435,7 @@
code: form.code,
settlementUserCount: form.settlementTaskUsers.length,
actualSettlementAmount: form.actualSettlementAmount,
+ settlementAccess: form.settlementAccess,
});
}
@@ -389,6 +451,7 @@
code: '',
settlementUserCount: 0,
actualSettlementAmount: 0,
+ settlementAccess: '' as any as EnumEnterpriseWalletAccess,
},
});
@@ -452,6 +515,10 @@
}
}
}
+
+.chuck-add-or-edit-actions {
+ margin-bottom: 20px;
+}
</style>
<style lang="scss">
.text-over-tooltip-content {
--
Gitblit v1.9.1