泰金科研项目管理系统(019_RPMSC)面向科研机构课题全生命周期管理,旨在解决传统模式下纸质文档流转繁琐、审批环节分散、工时与项目进度脱节、跨部门协同成本高、历史数据难以追溯等问题。建设目标是打造一体化、数字化的课题管理平台,贯通「立项—执行—验收」主线,并与工时记录、工作日志、经费执行等环节联动,实现无纸化流转、流程规范化、多角色协同及数据集中管控与自动汇总,提升科研管理效率与过程可追溯性。
系统功能覆盖课题管理全链条。项目管理中枢以课题主数据为核心,维护项目编号、负责人、成员、阶段状态及审批状态,支持按角色、部门、项目成员进行数据权限过滤,科研管理办公室可按部门分库查询。课题文档与审批涵盖课题申请、开题评审、课题计划、开题报告、阶段评审、结题评审、结题报告、变更申请、终止报告、试验验证报告等十余类业务单据,各模块独立列表管理并关联课题主键,支持在线填报、附件上传、Excel 导出及版本留痕。工作流引擎基于 Flowable 实现流程可视化配置、待办/已办任务处理、多级审批、驳回与流程跟踪,流程结束自动推进课题阶段。文档生成支持配置 Word 模板,通过书签机制将表单数据与审批意见自动填充,生成标准化科研文档。辅助管理包括工时统计、工作日志、经费执行台账、实验室样品/废料台账、实验记录、申报统计(Declare)及数据上传等模块。系统支撑提供用户、角色、部门、菜单权限管理,电子签章配置,流程与模板配置,以及定时任务等基础能力。
业务流程以课题主状态机驱动。课题创建后进入「课题申请」阶段,填报申请表并发起 Flowable 审批;审批通过后通过 commitProject 提交进入下一阶段,依次经历开题评审→课题计划→开题报告→阶段评审(可多次循环)→结题评审→结题,最终标记为「已完成」。各阶段典型路径为:在对应业务页面填写表单→保存→发起流程→审批人在待办中处理(可写入审批意见并回填 Word 书签)→流程结束由监听器更新业务表状态并推进课题阶段。分支流程包括:任意阶段可发起「课题变更」,变更审批结束后同步主数据并恢复至变更前状态;可发起「试验验证」,结束后通过 Redis 缓存恢复原有阶段;可发起「课题终止」,流程结束后标记为「已终止」。功能路径上,项目负责人从「项目信息管理」进入课题详情,按当前阶段跳转至对应业务菜单操作;审批人从「待办任务」统一处理各类型审批;管理员在「流程配置」「模板管理」「电子签章配置」中维护流程与文档规则;科研办通过申报统计模块汇总台账数据。系统通过「业务单据 + 流程实例 + 课题状态」三层联动,形成闭环管理路径。
系统采用前后端分离、Maven 多模块的微单体架构,基于若依(RuoYi-Vue 3.8.8)二次开发。整体架构分为四层:lt-ui前端展示层,采用 Vue2+Element UI+Vuex+Vue Router,集成bpmn-js实现流程设计器与流程图高亮展示;业务模块采用 Controller→Service→Mapper 分层,阶段推进使用策略模式(ProjectStatusContext + 各 *StartStrategy);lt-flowable 封装 Flowable 6.8 引擎,提供任务查询、审批、驳回、流程图生成及 ProcessEndListener 流程结束监听。数据层使用MySQL+Druid连接池+MyBatis,安全认证采用Spring Security+JWT。
本项目由本人独立完成需求分析、数据库设计、后端开发、前端开发、流程配置及联调部署。负责模块包括:课题全生命周期业务(全部Controller/Service/Mapper及40余个前端页面)、Flowable工作流集成(lt-flowable任务服务、流程监听、Flow镜像表同步)、Word模板报表生成、角色权限与数据范围控制、实验室台账、工时/日志模块,以及BPMN流程设计器前端集成。交付成果为可运行的完整管理系统,覆盖技术协议要求的项目管理系统核心功能,支持十余种科研文档的在线管理与审批,满足多角色协同与分权管控需求。
开发中遇到两个主要难点。难点一:Flowable 流程与课题阶段状态机的联动。系统有十余种业务单据对应不同流程定义,流程结束后需更新对应业务表、推进课题projectStatus、处理分支流程的状态恢复。解决方案:统一在ProcessEndListener中集中处理流程结束逻辑,按当前projectStatus分支更新对应Flow镜像表;主线阶段通过nextProjectMap映射推进下一状态;变更/试验验证等分支流程在发起时将原状态写入 Redis(tj:projectManagement:nextStatus:{id}),流程结束后从 Redis 恢复,变更流程额外同步项目名称、编号等主数据;课题计划阶段在 complete 时即标记完成(非仅结束时),兼顾计划审批的特殊业务规则。难点二:Word 模板书签动态填充与审批意见写入。 科研文档格式严格,需在审批通过时将表单字段、审批人意见、电子签章图片写入Word,且不同单据模板书签命名各异。解决方案:封装DocUtils.bookmarkReplace,统一处理段落/表格/页眉页脚中的书签替换及图片插入;根据流程类型读取对应业业务数据与审批意见,调用书签替换后回写文档路径;模板管理模块支持管理员上传维护Word模板,业务模块按模板生成初始文档,审批环节增量写入意见。