1. 立项背景和目标
职业技能培训机构在学员管理、补贴申报、鉴定组织、档案归档等环节长期面临大量重复性手工操作,
学员信息分散、材料命名混乱、补贴对账易出错。TST系统旨在通过信息化手段实现"一次录入、多处
复用、批量输出"的管理目标,覆盖培训→鉴定→补贴申报全流程。
2. 核心功能模块
系统分为三大子系统共10个功能模块:培训管理(学员材料重命名、补贴管理、数据统计Dashboard)、
鉴定管理(照片批量重命名、工作证明生成、评价表生成、鉴定表生成)、综合培训(签到表自动生成、
岗位推送表生成、职业工种查询)。另含用户认证、个人中心、操作日志、多标签导航、主题切换等
系统基础功能。
3. 业务流程描述
培训管理员创建班期→批量导入学员信息→配置命名规则/排期/岗位→系统自动批量生成各类文档
(评价表、签到表、工作证明、岗位推送表等)→补贴汇总统计→导出Excel/HTML报表归档。
全流程支持状态追踪与操作审计。
1. 整体架构和设计思路
前端采用Vue 3 Composition API + Vite 8构建SPA,Element Plus组件库,SCSS模块化样式,
支持亮/暗/跟随系统三种主题。后端采用Spring Boot 3.4 + JPA/Hibernate自动建表,
Spring Security + JWT实现认证鉴权,MySQL 8存储数据,Apache POI处理Excel批量导入导出。
前后端通过RESTful API对接,共12个Controller、67个接口端点。数据库设计14个实体、
12张业务表,以培训班期和学员为核心进行关联。
2. "我"的负责模块和结果
独立负责全栈开发(前后端+数据库设计+部署)。完成10个核心业务功能模块的开发,
实现67个RESTful API端点和17个前端页面。批量文件处理能力达500条/3秒,
照片管理支持LONGBLOB二进制存储。系统已迭代至v2.3.0版本,经历4个大版本演进。
3. 遇到的难点和解决方案
- Excel大批量导入性能问题:通过Apache POI的SXSSFWorkbook流式写入+分批事务提交,
将500条数据处理时间从8秒优化至3秒内。
- 照片二进制存储内存溢出:采用LONGBLOB字段+数据库级流式读取,避免一次性加载全部
照片数据到JVM内存。
- 文档状态机设计:工作证明(DRAFT→ISSUED→APPROVED→ARCHIVED)等多状态流转需要
严格的转换校验,通过Service层状态机模式+枚举约束实现可靠的状态管理。
- 材料重命名模板引擎:设计支持{name}、{idCard}等变量的命名规则引擎,通过正则替换
实现跨材料类型的灵活批量重命名。