R71-A4 澄清报销缺票提示并修复发票上传挂起

这个提交包含在:
2026-04-28 19:24:51 +08:00
父节点 a5eac04a06
当前提交 1c2aaedd78
共修改 5 个文件,包含 235 行新增和 44 行删除
@@ -578,6 +578,8 @@ export function ReimbursementDetailPage() {
const precheckStandardChecks = reimbursementPrecheckQuery.data?.standardChecks ?? [];
const blockStandardChecks = precheckStandardChecks.filter((item) => item.exceeded && item.controlMode === "block");
const warnStandardChecks = precheckStandardChecks.filter((item) => item.exceeded && item.controlMode === "warn");
const missingInvoiceSubmitMessage = "提交前需先绑定至少 1 张发票,可在“关联票据”区域添加。";
const submitInvoiceNotice = canEditItems && detail.invoices.length < 1 ? missingInvoiceSubmitMessage : "";
const selectedInvoiceEntries = Object.entries(selectedInvoices);
const expenseTypes = expenseTypesQuery.data?.items ?? [];
@@ -627,6 +629,11 @@ export function ReimbursementDetailPage() {
try {
setActionError("");
if (detail.invoices.length < 1) {
setActionError(missingInvoiceSubmitMessage);
toast.error(missingInvoiceSubmitMessage);
return;
}
const precheck = await precheckReimbursement(reimbursementId);
const message = buildPrecheckDialogMessage(precheck);
@@ -1214,6 +1221,7 @@ export function ReimbursementDetailPage() {
actionError={actionError}
submitDisabled={blockStandardChecks.length > 0}
submitHint={blockStandardChecks.length > 0 ? "请修改超标明细后提交" : ""}
submitNotice={submitInvoiceNotice}
isPending={mutation.isPending}
onSubmit={() => void handleSubmitAction()}
onWithdraw={(comment) => mutation.mutate({ action: "withdraw", comment })}