From 49e4e604caf88afc0b90c1d8c9b7854e3847ee5c Mon Sep 17 00:00:00 2001 From: zlwu <704541015@qq.com> Date: Mon, 17 Aug 2026 16:03:17 +0800 Subject: [PATCH] feat(bx-mobile): add optional occur date on reimburse apply form Mirror web-admin detail lines with a clearable YYYY-MM-DD input. Co-authored-by: Cursor --- .../views/reimburse/ReimburseApplyPage.vue | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/bx-mobile/src/views/reimburse/ReimburseApplyPage.vue b/bx-mobile/src/views/reimburse/ReimburseApplyPage.vue index 0a2bf9cde..26d800372 100644 --- a/bx-mobile/src/views/reimburse/ReimburseApplyPage.vue +++ b/bx-mobile/src/views/reimburse/ReimburseApplyPage.vue @@ -133,6 +133,16 @@ /> + +
+ + +
+
@@ -373,6 +383,7 @@ interface DetailLine { expenseItemId: number | string amount: string remark: string + occurDate: string } const form = reactive({ @@ -380,7 +391,7 @@ const form = reactive({ remark: '', applicantId: '' as string, reimburseDate: todayYmd(), - details: [{ expenseItemId: '' as string | number, amount: '', remark: '' }] as DetailLine[], + details: [{ expenseItemId: '' as string | number, amount: '', remark: '', occurDate: '' }] as DetailLine[], }) const submitting = ref(false) @@ -729,7 +740,7 @@ function openExpensePicker(idx: number) { } function addDetailLine() { - form.details.push({ expenseItemId: '', amount: '', remark: '' }) + form.details.push({ expenseItemId: '', amount: '', remark: '', occurDate: '' }) } function removeDetailLine(index: number) { @@ -792,6 +803,7 @@ async function onSubmit() { expenseItemId: String(d.expenseItemId), amount: Number(d.amount), remark: String(d.remark).trim(), + occurDate: d.occurDate ? String(d.occurDate) : undefined, })), ...invoicePayload, } @@ -866,9 +878,10 @@ async function loadEditData() { expenseItemId: d.expenseId ?? d.expenseItemId ?? '', amount: String(d.amount ?? ''), remark: d.remark || '', + occurDate: d.occurDate || '', })) if (form.details.length === 0) { - form.details = [{ expenseItemId: '', amount: '', remark: '' }] + form.details = [{ expenseItemId: '', amount: '', remark: '', occurDate: '' }] } const linked = data.invoices || [] await refreshWallet()