434c63c6d34aa669f40a33e4fa3df2c6f4d29dc5
## 数据库 - ESignRecord 增加 signMethod 字段(ELECTRONIC/PAPER) - 增加线下手签专用字段:signedAt、signedLocation、witnessName、witnessPhone、scanFileUrls ## 后端 - esign.routes.ts 新增线下手签接口: - POST /esign/paper-upload:上传签署扫描件(multer多文件,10MB限制) - POST /esign/paper-sign:线下手签登记(创建COMPLETED记录+证据链+回写合同) - esign.service.ts:autoCreateEsignRecord 设置 signMethod=ELECTRONIC - 静态文件服务复用 /uploads 统一映射 ## 前端管理端 - ESign.tsx 新增"线下手签登记"按钮和 Modal: - 选择员工、文件类型、签署日期、地点、见证人 - 上传签署扫描件(多文件) - 登记后自动创建证据链 - 列表增加"签署方式"列(电子签/线下手签标签) - 详情页增加签署方式标签 + 线下手签信息卡片 + 扫描件列表 ## 前端员工端 - MyEsign.tsx 列表增加线下手签标签 - 详情页增加线下手签信息卡片(签署日期/地点/见证人/扫描件) - 签署操作区域:线下手签记录显示"线下手签已登记",不显示验证码签署 Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Description
AI HR Compliance Assistant
Languages
TypeScript
88.2%
HTML
11.3%
Shell
0.3%
Python
0.1%