import type { ReimbursementStatus } from "../api/reimbursements"; type ReimbursementDisplayInput = { formNumber?: string | null; id?: string | null; status?: ReimbursementStatus | string | null; reimbursementDate?: string | null; createdAt?: string | null; }; const UUID_PATTERN = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i; export function isUuidLike(value: string | null | undefined) { return Boolean(value && UUID_PATTERN.test(value)); } export function resolveReimbursementDisplayCode(item: ReimbursementDisplayInput) { const formNumber = item.formNumber?.trim(); if (formNumber && !isUuidLike(formNumber)) { return formNumber; } const date = item.reimbursementDate ?? item.createdAt?.slice(0, 10) ?? ""; if (item.status === "draft" || item.status === "rejected") { return date ? `草稿单 · ${date}` : "草稿单"; } return date ? `未编号报销 · ${date}` : "未编号报销"; }