新增课程起止日期管理
This commit is contained in:
@@ -85,7 +85,7 @@
|
||||
|
||||
### C009 Excel 导入字段
|
||||
|
||||
- 决定:导入模板只保留姓名、手机号、项目代码、发证日期。
|
||||
- 决定:导入模板保留姓名、手机号、项目代码、课程开始日期、课程结束日期、发证日期。
|
||||
- 原因:证书名称、课程名称、阶段名称、发证单位属于项目配置,不应该在每一行 Excel 里重复填写。
|
||||
- 备注:导入备注字段一期移除;批量导入后的备注缺少明确展示和业务使用场景。
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
|
||||
- Decision: keep `certificate-template-lab` as a standalone visual tuning page.
|
||||
- Decision: production PDF rendering now uses the approved certificate image as the base layer, then renders learner/course/date/certificate number dynamically with Pillow.
|
||||
- Current limitation: the data model only has `issue_date`; until separate training start/end dates are added, the rendered course date range uses `issue_date` for both start and end.
|
||||
- Current behavior: the rendered course date range uses the separate course start/end dates; legacy certificates without them fall back to `issue_date`.
|
||||
- Current limitation: mentor, issuer names, and QR area remain from the approved base image for visual consistency.
|
||||
|
||||
### C012 PDF 批量预生成
|
||||
@@ -107,3 +107,10 @@
|
||||
- 策略:预生成继续使用系统设置里的 `PDF 生成并发限制`,不单独开无限制后台任务。
|
||||
- 原因:大批量学员毕业前先生成缓存,可以降低公开查询高峰的等待时间和 CPU 压力。
|
||||
- 当前限制:任务进度保存在后端进程内,服务重启后只保留已生成的 PDF 缓存,不恢复历史进度。
|
||||
|
||||
### C013 课程起止日期独立建模
|
||||
|
||||
- 决定:证书增加“课程开始日期”和“课程结束日期”两个独立字段,不再用发证日期代替课程时间。
|
||||
- 原因:课程学习周期与证书签发日期含义不同,拆分后可校验时间顺序,也便于后续按开班、结业周期统计。
|
||||
- 导入约定:两个课程日期与发证日期均必填,模板统一推荐 `YYYY-MM-DD`,例如 `2026-06-01`;课程结束日期不得早于开始日期。
|
||||
- 兼容策略:历史证书没有课程日期时,展示和 PDF 继续回退到发证日期,避免升级后旧证书无法查看或下载。
|
||||
|
||||
Reference in New Issue
Block a user