fix: 统一风险中心及全应用身份证号显示

后端:
- employee.routes.ts: all-lite 接口加上 idCardNumber 并解密
- special-status.routes.ts: 列表和详情查询加上 idCardNumber 并解密
- esign.routes.ts: 列表/pending/detail/remind 接口加上 idCardNumber 并解密
- risk.service.ts: getMonthlyCalendar 所有事件加上 employeeIdCardNumber
- termination.service.ts: batchTerminatePreview 加上 employeeIdCardNumber
- employee.routes.ts: preview-renew 加上 employeeIdCardNumber

前端:
- Roster.tsx: 批量续签/解聘预检结果加上身份证号
- SpecialStatus.tsx: 列表/下拉/删除确认加上身份证号
- Calendar.tsx: 日历事件姓名后显示身份证号
- ESign.tsx: 签署列表/详情/员工列表/提醒弹窗/下拉加上身份证号
- CommercialInsuranceTab.tsx: 参保选择列表加上身份证号
- OvertimeTab.tsx: 导入预览加上身份证号
This commit is contained in:
freedakgmail
2026-08-18 08:14:26 +08:00
parent 4d78eac5c2
commit eb91c2d8fb
11 changed files with 64 additions and 26 deletions
+7 -2
View File
@@ -56,10 +56,14 @@ router.get('/all-lite', authMiddleware, async (req: AuthRequest, res, next) => {
status: { in: status },
...(department && { department }),
},
select: { id: true, name: true, department: true, position: true, gender: true, status: true },
select: { id: true, name: true, department: true, position: true, gender: true, status: true, idCardNumber: true },
orderBy: { name: 'asc' },
})
res.json({ success: true, data: employees })
const data = employees.map((e: any) => ({
...e,
idCardNumber: (() => { try { const v = e.idCardNumber; return v ? (v.includes(':') ? decrypt(v) : v) : null } catch { return null } })(),
}))
res.json({ success: true, data })
} catch (err) {
next(err)
}
@@ -301,6 +305,7 @@ router.post('/contracts/preview-renew', authMiddleware, async (req: AuthRequest,
contractId: contract.id,
employeeId: contract.employeeId,
employeeName: employee.name,
employeeIdCardNumber: (() => { try { const v = employee.idCardNumber; return v ? (v.includes(':') ? decrypt(v) : v) : null } catch { return null } })(),
department: employee.department,
currentContractType: contract.contractType,
renewalCount,