From aaaa00f789b0987004fc8b7d3606c4cdf5a0ac87 Mon Sep 17 00:00:00 2001 From: lq Date: Mon, 14 Sep 2026 08:57:46 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BF=AE=E5=A4=8D=E4=BA=86=E5=85=AC?= =?UTF-8?q?=E8=B4=A6=E6=94=AF=E4=BB=98=E7=9A=84=E4=B8=9C=E8=A5=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../public-account-lock/LockPayPanel.vue | 56 +- .../PublicAccountLockOverlay.vue | 123 ++-- .../components/daily-upload-form.vue | 100 ++- .../components/daily-upload-modal.vue | 9 +- .../finance/public-account-pay/index.vue | 635 +++++++++--------- .../public-account-pay/utils/daily-upload.ts | 141 ++++ 6 files changed, 661 insertions(+), 403 deletions(-) create mode 100644 apps/web-antd/src/views/finance/public-account-pay/utils/daily-upload.ts diff --git a/apps/web-antd/src/components/public-account-lock/LockPayPanel.vue b/apps/web-antd/src/components/public-account-lock/LockPayPanel.vue index 7b0b7677..3db8ca3c 100644 --- a/apps/web-antd/src/components/public-account-lock/LockPayPanel.vue +++ b/apps/web-antd/src/components/public-account-lock/LockPayPanel.vue @@ -7,37 +7,43 @@ import { onMounted, ref } from 'vue'; import { Button } from 'ant-design-vue'; import DailyUploadForm from '#/views/finance/public-account-pay/components/daily-upload-form.vue'; +import { buildDailyUploadFormData } from '#/views/finance/public-account-pay/utils/daily-upload'; const props = defineProps<{ - dailyId: number; - storeName?: string; - platformAmount?: string; billDateTxt?: string; + dailyId: number; + platformAmount?: string; + storeName?: string; unlockMode?: string; }>(); const emit = defineEmits<{ back: []; - waiting: [payload?: { - bill_status?: number; - contact_phones?: { name?: string; phone: string }[]; - }]; + waiting: [ + payload?: { + bill_status?: number; + contact_phones?: { name?: string; phone: string }[]; + }, + ]; }>(); const formRef = ref>(); const submitting = ref(false); -const unlockHint = props.unlockMode === 'voucher' - ? '提交成功后立刻解锁,接诊和开方可继续。' - : '提交后仍锁定,需平台管理员确认到账后才会解锁。'; +const unlockHint = + props.unlockMode === 'voucher' + ? '提交成功后立刻解锁,接诊和开方可继续。' + : '提交后仍锁定,需平台管理员确认到账后才会解锁。'; onMounted(() => { - formRef.value?.load({ - id: props.dailyId, - store_name: props.storeName, - platform_amount: props.platformAmount, - bill_date_txt: props.billDateTxt, - }); + formRef.value?.load( + buildDailyUploadFormData({ + id: props.dailyId, + store_name: props.storeName, + platform_amount: props.platformAmount, + bill_date_txt: props.billDateTxt, + }), + ); }); /** 可无附件直接声明已支付;若已选文件一并提交 */ @@ -51,9 +57,9 @@ async function onDeclarePaid() { } function onFormSuccess(payload: { - unlocked: boolean; bill_status?: number; contact_phones?: { name?: string; phone: string }[]; + unlocked: boolean; }) { if (!payload.unlocked) { emit('waiting', payload); @@ -73,7 +79,9 @@ function onFormSuccess(payload: { @success="onFormSuccess" />
- +