fix: 审批详情页表单字段标签显示中文
- 添加表单字段映射表(formFieldLabelMap) - 将英文key(如reason)翻译成中文标签(如"出差事由") Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -39,6 +39,20 @@ const businessTypeConfig: Record<string, string> = {
|
|||||||
purchase: '采购申请',
|
purchase: '采购申请',
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 表单字段映射(英文key -> 中文label)
|
||||||
|
const formFieldLabelMap: Record<string, string> = {
|
||||||
|
reason: '出差事由',
|
||||||
|
itineraries: '行程安排',
|
||||||
|
destination: '目的地',
|
||||||
|
start_date: '开始日期',
|
||||||
|
end_date: '结束日期',
|
||||||
|
estimated_cost: '预计费用',
|
||||||
|
approvers: '审批人',
|
||||||
|
cc_users: '抄送人',
|
||||||
|
attachment: '附件',
|
||||||
|
remark: '备注',
|
||||||
|
}
|
||||||
|
|
||||||
interface ApprovalRecord {
|
interface ApprovalRecord {
|
||||||
id: number
|
id: number
|
||||||
node_id: number
|
node_id: number
|
||||||
@@ -312,14 +326,18 @@ export default function ApprovalDetail() {
|
|||||||
<div className={styles.formData}>
|
<div className={styles.formData}>
|
||||||
{Object.entries(detail.form_data)
|
{Object.entries(detail.form_data)
|
||||||
.filter(([key]) => !['approvers', 'cc_users'].includes(key))
|
.filter(([key]) => !['approvers', 'cc_users'].includes(key))
|
||||||
.map(([key, value]) => (
|
.map(([key, value]) => {
|
||||||
|
// 获取字段标签,优先使用映射表,没有则使用原始key
|
||||||
|
const label = formFieldLabelMap[key] || key
|
||||||
|
return (
|
||||||
<div key={key} className={styles.formRow}>
|
<div key={key} className={styles.formRow}>
|
||||||
<span className={styles.formLabel}>{key}:</span>
|
<span className={styles.formLabel}>{label}:</span>
|
||||||
<span className={styles.formValue}>
|
<span className={styles.formValue}>
|
||||||
{Array.isArray(value) ? value.join(', ') : String(value)}
|
{Array.isArray(value) ? value.join(', ') : String(value)}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
))}
|
)
|
||||||
|
})}
|
||||||
</div>
|
</div>
|
||||||
</Card>
|
</Card>
|
||||||
)}
|
)}
|
||||||
|
|||||||
Reference in New Issue
Block a user