feat(reimbursement-small-team-form-validation): 完善小团队报销填报校验

这个提交包含在:
2026-08-04 23:28:56 +08:00
父节点 f33c67eb20
当前提交 50c14c1b85
共修改 28 个文件,包含 1095 行新增和 30 行删除
+9
查看文件
@@ -64,6 +64,14 @@ function getConfig() {
min: nodeEnv === "production" ? 1 : 0,
max: nodeEnv === "production" ? 1 : 8,
});
const reimbursementMaxAgeDays = parseBoundedInteger(
"REIMBURSEMENT_MAX_AGE_DAYS",
process.env.REIMBURSEMENT_MAX_AGE_DAYS ?? 365,
{ min: 180, max: 365 },
);
if (![180, 365].includes(reimbursementMaxAgeDays)) {
throw new Error("Invalid REIMBURSEMENT_MAX_AGE_DAYS");
}
const passwordResetCodeTtlSeconds = parseBoundedInteger(
"PASSWORD_RESET_CODE_TTL_SECONDS",
@@ -192,6 +200,7 @@ function getConfig() {
wecomApprovalCallbackEvidenceFile: process.env.WECOM_APPROVAL_CALLBACK_EVIDENCE_FILE ?? "",
appTimezone: process.env.APP_TIMEZONE ?? "Asia/Shanghai",
reimbursementMaxAgeDays,
storageDir: path.resolve(serverRoot, storageDir),
storageDriver: process.env.STORAGE_DRIVER ?? "local",
s3Endpoint: process.env.S3_ENDPOINT ?? "",