etms/PROJECT_GUIDE.md
liyuchen d9fba9a316 Remove organization references (de-identify)
- Replace CETC54 references with ETMS
- Replace com.cetc54 package with com.example
- Rename cetc54 directories to etms
- Replace CECT54.WebUI to ETMS.WebUI
- Replace organization names (中国电科54所 -> XX公司)
- Replace internal system URLs (cetc54.com -> example.com)
2026-04-16 17:14:56 +08:00

78 KiB
Raw Permalink Blame History

JCDP教育培训管理系统 - 项目指南

项目版本: software.version=54
运行模式: release
所属组织: XX电子科技集团XX研究所etms


一、项目概述

JCDPJCDP - 教育培训管理系统)是一个基于 Java Web 技术栈的企业内部培训管理平台,部署在 Tomcat 服务器上。系统支持完整的培训计划管理、培训实施、考试管理、问卷调研、外派培训管理等功能模块。

1.1 技术架构

层级 技术选型
后端框架 Java + Spring 4.3 + 自研 MVC 框架(com.etms.mvc
ORM 自研 ORM 框架(com.etms.orm
前端模板 FreeMarker.ftl+ 自研 UI 框架CECT54.WebUI
数据库 MySQL10.55.68.235:3306/etms
报表 FineReport 8.0fr-*
WebService Apache CXF暴露 ETMSService
消息队列 RabbitMQamqp-client
主包名 com.etms.jcdp

1.2 目录结构

jcdp/
├── META-INF/
│   └── MANIFEST.MF
├── WEB-INF/
│   ├── applicationContext.xml       # Spring配置
│   ├── classes/
│   │   ├── com/etms/jcdp/          # Java源码编译目录
│   │   └── META-INF/
│   ├── mapping/                      # SQL映射文件 (*.map.xml)
│   └── ftl/                          # FreeMarker模板
├── asset/                            # 静态资源CSS/图片/字体)
└── CODE_REVIEW_GUIDE.md             # 代码审查规范

二、核心功能模块

2.1 模块全景图

┌─────────────────────────────────────────────────────────────────────────┐
│                           系统管理                                       │
│  ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌────────┐  │
│  │  用户   │ │  角色   │ │ 组织机构│ │  权限   │ │  操作日志│ │ 系统参数│  │
│  │ 管理    │ │  管理   │ │  管理   │ │  分配   │ │         │ │        │  │
│  └─────────┘ └─────────┘ └─────────┘ └─────────┘ └─────────┘ └────────┘  │
└─────────────────────────────────────────────────────────────────────────┘
                                    │
┌─────────────────────────────────────────────────────────────────────────┐
│                         教育培训管理                                     │
│  ┌──────────────────┐  ┌──────────────────┐  ┌──────────────────┐       │
│  │    培训计划管理    │  │    培训实施管理    │  │   外派培训管理    │       │
│  ├──────────────────┤  ├──────────────────┤  ├──────────────────┤       │
│  │ • 部门级计划内     │  │ • 开班管理        │  │ • 经济责任制      │       │
│  │ • 部门级计划外     │  │ • 学员管理        │  │ • 非经济责任制    │       │
│  │ • 所级/院级计划    │  │ • 授课管理        │  │ • 外派登记        │       │
│  │ • 计划变更        │  │ • 签到管理        │  │                  │       │
│  └──────────────────┘  └──────────────────┘  └──────────────────┘       │
└─────────────────────────────────────────────────────────────────────────┘
                                    │
┌─────────────────────────────────────────────────────────────────────────┐
│                           考试与调研                                      │
│  ┌──────────────────┐  ┌──────────────────┐  ┌──────────────────┐       │
│  │    考试管理       │  │    问卷调研       │  │   任职资格管理    │       │
│  ├──────────────────┤  ├──────────────────┤  ├──────────────────┤       │
│  │ • 试卷库          │  │ • 调研问卷        │  │ • 资格认证        │       │
│  │ • 题目管理        │  │ • 调研结果        │  │ • 资格查询        │       │
│  │ • 在线答题        │  │                  │  │                  │       │
│  │ • 判卷/成绩      │  │                  │  │                  │       │
│  └──────────────────┘  └──────────────────┘  └──────────────────┘       │
└─────────────────────────────────────────────────────────────────────────┘
                                    │
┌─────────────────────────────────────────────────────────────────────────┐
│                           支撑功能                                       │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐  ┌─────────────┐  │
│  │  年度培训总结  │  │  学习资源管理  │  │   即时通讯    │  │  统计分析   │  │
│  │  • 部门级总结  │  │  • 文件资料    │  │  • 聊天      │  │  • FineReport│  │
│  │  • 所级总结    │  │  • 课程资料    │  │  • 群组      │  │  • 报表查看  │  │
│  └──────────────┘  └──────────────┘  └──────────────┘  └─────────────┘  │
└─────────────────────────────────────────────────────────────────────────┘

2.2 培训计划管理BPMN流程

┌──────────────────────────────────────────────────────────────────────────────┐
│                           培训计划管理流程                                    │
└──────────────────────────────────────────────────────────────────────────────┘

    ┌─────────────┐
    │  所级管理员   │
    │  发起计划    │
    └──────┬──────┘
           │
           ▼
    ┌─────────────┐     ┌─────────────┐
    │  部门计划内   │     │  部门计划外   │
    │  (gip)      │     │  (gop)      │
    └──────┬──────┘     └──────┬──────┘
           │                    │
           ▼                    ▼
    ┌─────────────────────────────┐
    │     部门管理员填报           │
    │  • 选择课程                  │
    │  • 填写培训需求              │
    └─────────────┬───────────────┘
                  │
                  ▼
    ┌─────────────────────────────┐
    │     所级管理员调研征集       │
    │  • 下发调研问卷              │
    │  • 部门反馈需求              │
    └─────────────┬───────────────┘
                  │
                  ▼
    ┌─────────────────────────────┐
    │     所级管理员汇总生成       │
    │  • 生成培训计划              │
    │  • 审核确认                  │
    └─────────────┬───────────────┘
                  │
                  ▼
    ┌─────────────────────────────┐
    │     审批流程 (SP)           │
    │  • 部门领导审核              │
    │  • 所级领导审批              │
    └─────────────┬───────────────┘
                  │
                  ▼
         ┌─────────────┐
         │   审批通过   │
         │   计划生效   │
         └─────────────┘

┌──────────────────────────────────────────────────────────────────────────────┐
│                           计划来源 (jhly)                                    │
├──────────────────────────────────────────────────────────────────────────────┤
│  jhly='sj'   → 所级/院级计划(由所级管理员统一制定下发)                      │
│  jhly='bmn'  → 部门级计划内(部门申报,经审批后纳入)                          │
│  jhly='bmw'  → 部门级计划外(部门临时申请,不占用年度预算)                    │
└──────────────────────────────────────────────────────────────────────────────┘

2.3 培训实施流程

┌──────────────────────────────────────────────────────────────────────────────┐
│                           培训实施管理流程                                    │
└──────────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────────┐
│                         开班流程 (et_train_pd_cc)                         │
├─────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│  ┌─────────┐    ┌─────────┐    ┌─────────┐    ┌─────────┐    ┌────────┐ │
│  │ -1:被驳回 │───▶│ 0:未开班 │───▶│ 1:已下发 │───▶│ 2:已开班 │───▶│ 3:待审核│ │
│  └─────────┘    └─────────┘    └─────────┘    └─────────┘    └────────┘ │
│       │                                                           │      │
│       └───────────────────────────────────────────────────────────┘      │
│                              (驳回重编)                                    │
└─────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────────┐
│                         课程状态 (coursestatus)                          │
├─────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│  ┌─────────────┐                                                        │
│  │ 培训科目     │                                                        │
│  └──────┬──────┘                                                        │
│         │                                                               │
│         ▼                                                               │
│  ┌─────────────┐    ┌─────────────┐                                     │
│  │ status=-1,0,1│───▶│   未完成     │                                     │
│  │ (未完成)     │    └──────┬──────┘                                     │
│  └─────────────┘           │                                            │
│         ▲                  ▼                                            │
│         │           ┌─────────────┐                                     │
│         └───────────│    完成      │                                     │
│                     └─────────────┘                                     │
└─────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────────┐
│                         培训完成判定逻辑                                  │
├─────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│  IF (nd >= 2023) THEN                                                   │
│    完成条件 = yxx.status = 2  (问卷/心得状态=已完成)                       │
│  ELSE                                                                   │
│    完成条件 = yxx.status IS NOT NULL ? yxx.status=2 : pg.status=1       │
│  END IF                                                                 │
│                                                                          │
│  说明2023年起新增培训效果问卷反馈环节替代原有的评分机制                 │
└─────────────────────────────────────────────────────────────────────────┘

2.4 考试管理流程

┌──────────────────────────────────────────────────────────────────────────────┐
│                           考试管理流程                                        │
└──────────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────────┐
│                         试卷管理 (exampaper)                              │
├─────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│  et_exam_exampaper_and_editexampaper  ──1:N──▶  et_exam_editexampaper  │
│                                                                          │
│  试卷基础信息表               题库表(题目详情)                            │
│  • name: 试卷名称            • subject: 题目内容                           │
│  • description: 描述         • type: 单选/多选/判断/简答                   │
│  • sc: 所属课程              • score: 分值                                 │
│  • state: 状态               • answer: 标准答案                             │
│  • startdate/enddate        • optionA-F: 选项                            │
│                                                                          │
└─────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────────┐
│                         考试状态 (state)                                 │
├─────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│  ┌─────────┐    ┌─────────┐    ┌─────────┐    ┌─────────┐               │
│  │  已撤销  │    │  未开始  │───▶│ 正在进行 │───▶│  已关闭  │               │
│  └─────────┘    └─────────┘    └─────────┘    └─────────┘               │
│       │             │              │              │                    │
│       │             ▼              ▼              ▼                    │
│       │        datediff       datediff        datediff                  │
│       │        (startdate)>0  (startdate)<=0   (enddate)<0              │
│       │                      &&(enddate)>=0                             │
│       └─────────────────────────────────────(不等于已撤销)───────────────│
│                                                                          │
└─────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────────┐
│                         判卷规则 (自动判分)                               │
├─────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│  自动判分题型:                                                           │
│    • 单选题 (type='单选题')                                              │
│    • 多选题 (type='多选题')                                              │
│    • 判断题 (type='判断题')                                               │
│                                                                          │
│  判分逻辑:                                                               │
│    user_answer == answer  →  user_score = score                          │
│    否则                    →  user_score = 0                              │
│                                                                          │
│  主观题(简答等) → 需人工判卷                                               │
│                                                                          │
└─────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────────┐
│                         参考人员来源                                      │
├─────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│  人员限定方式:                                                           │
│    • et_exam_limitation        → 指定人员                                 │
│    • et_exam_limitation_class  → 按班级/培训班                            │
│    • et_exam_limitation_course → 按课程学员                               │
│                                                                          │
└─────────────────────────────────────────────────────────────────────────┘

三、BPMN业务流程模型

本章节使用标准流程图符号描述系统的核心业务流程,包含流程定义、参与者、任务节点和流程路径。

3.1 培训计划管理流程

流程定义

属性
流程名称 培训计划管理流程 (Training Plan Management)
流程ID PROC-TRAIN-PLAN
流程版本 v1.0
流程类型 审批流 + 数据填报流
触发方式 手工触发(所级管理员发起)
流程周期 年度每年Q4制定下一年度计划

参与者定义

参与者 角色 职责
所级管理员 Initiator 发起计划、下发通知、汇总生成、审批
部门管理员 Department Admin 填报课程需求、反馈调研
部门领导 Department Head 审核部门申报
所级领导 Institute Head 最终审批

流程图

flowchart TB
    subgraph 计划来源选择
        A([开始: 制定年度培训计划]) --> B{计划来源类型?}
        B -->|所级计划| C[创建所级计划<br/>et_train_ip]
        B -->|部门计划内| D[创建部门计划内<br/>et_train_gip]
        B -->|部门计划外| E[创建部门计划外<br/>et_train_gop]
    end
    
    subgraph 部门填报阶段
        C --> F1[下发填报通知]
        D --> F1
        F1 --> G[部门管理员填报课程需求<br/>et_train_gipgroup_kc<br/>et_train_ipgroup_kc]
        G --> H{是否需要调研?}
        H -->|是| I[下发调研问卷<br/>et_train_ipdy]
        I --> J[部门反馈需求<br/>et_train_ipdy_kc]
        J --> K[汇总需求]
        H -->|否| K
    end
    
    subgraph 所级处理阶段
        K --> L[所级管理员汇总生成<br/>et_train_ipf]
        L --> M{数据完整?}
        M -->|否| N[补充完善]
        N --> L
        M -->|是| O[提交审批]
    end
    
    subgraph 审批阶段
        O --> P{部门领导审核}
        P -->|驳回| Q([驳回: 重新填报])
        Q --> G
        P -->|通过| R{所级领导审批}
        R -->|驳回| S([驳回: 重新汇总])
        S --> L
        R -->|通过| T([结束: 计划生效])
    end
    
    style A fill:#e1f5fe
    style T fill:#c8e6c9
    style Q fill:#ffcdd2
    style S fill:#ffcdd2

流程节点详情

节点ID 节点名称 类型 输入 输出 执行人
PROC-TRAIN-PLAN.START 开始 StartEvent - 年度计划请求 所级管理员
PROC-TRAIN-PLAN.CREATE 创建计划 Task 计划类型 et_train_ip/gip/gop记录 所级管理员
PROC-TRAIN-PLAN.NOTIFY 下发通知 Task 计划ID 通知消息 系统
PROC-TRAIN-PLAN.FILL 填报需求 Task 通知 et_train_gipgroup_kc 部门管理员
PROC-TRAIN-PLAN.SURVEY 调研征集 ExclusiveGateway - et_train_ipdy 所级管理员
PROC-TRAIN-PLAN.SUMMARY 汇总生成 Task 部门需求 et_train_ipf 所级管理员
PROC-TRAIN-PLAN.APPROVE 审批流程 SubProcess 计划ID 审批结果 领导层
PROC-TRAIN-PLAN.END 计划生效 EndEvent 审批通过 状态变更 系统

3.2 培训实施管理流程

流程定义

属性
流程名称 培训实施管理流程 (Training Implementation)
流程ID PROC-TRAIN-IMPLEMENT
流程版本 v1.0
流程类型 状态驱动流程
触发方式 培训计划批准后自动/手工创建
流程周期 单次培训(按班级)

参与者定义

参与者 角色 职责
所级管理员 Institute Admin 开班审核、下发
培训管理员 Training Admin 课程分配、学员管理
讲师 Teacher 授课、签到
学员 Trainee 参训、反馈
管理员 Admin 归档审核

流程图

flowchart TB
    subgraph 开班准备
        A([开始: 培训计划批准]) --> B[创建培训班级<br/>et_train_pd_cc<br/>status=0]
        B --> C[选择培训讲师<br/>teacher字段]
        C --> D[设置培训时间<br/>starttime/endtime]
        D --> E[设置培训参数<br/>pxxsh/sfkh/khlx]
        E --> F{开班审核}
    end
    
    subgraph 开班下发
        F -->|通过| G[下发开班通知<br/>status=1]
        F -->|驳回| H([驳回: 修改班级信息])
        H --> B
    end
    
    subgraph 培训实施
        G --> I[学员管理<br/>et_train_pd_cc_user<br/>添加/移除学员]
        I --> J{是否需要签到?}
        J -->|是| K[创建签到任务<br/>et_train_pd_cc_dt]
        K --> L[学员签到]
        J -->|否| M
        L --> M[授课管理]
        M --> N[填写实际讲师<br/>realteacher]
        N --> O[标记开班完成<br/>status=2]
    end
    
    subgraph 效果评估
        O --> P{是否需要考核?}
        P -->|是| Q[发布评分问卷<br/>et_train_pd_cc_pg]
        Q --> R[学员填写反馈<br/>et_train_pd_cc_pgwjyxx]
        P -->|否| S
        R --> S[问卷状态更新<br/>status=2]
    end
    
    subgraph 归档完成
        S --> T[提交归档<br/>status=3]
        T --> U{管理员审核}
        U -->|通过| V([结束: 培训完成])
        U -->|驳回| W([驳回: 补充材料])
        W --> T
    end
    
    style A fill:#e1f5fe
    style V fill:#c8e6c9
    style H fill:#ffcdd2
    style W fill:#ffcdd2

状态机定义

┌─────────────────────────────────────────────────────────────────────────────┐
│                         培训班级状态机 (et_train_pd_cc.status)               │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│     ┌─────────┐                                                            │
│     │  -1     │◀──────────────────────┐                                     │
│     │ 被驳回   │                       │                                     │
│     └────┬────┘                       │                                     │
│          │                            │                                     │
│          ▼                            │                                     │
│     ┌─────────┐     驳回重编           │                                     │
│     │  0      │───────────────────────┘                                     │
│     │ 未开班   │                                                            │
│     └────┬────┘                                                            │
│          │ 开班审核通过                                                     │
│          ▼                                                                  │
│     ┌─────────┐                                                            │
│     │  1      │  下发通知                                                    │
│     │ 已下发   │                                                            │
│     └────┬────┘                                                            │
│          │ 学员就位/开始授课                                                │
│          ▼                                                                  │
│     ┌─────────┐                                                            │
│     │  2      │  培训进行中/完成                                             │
│     │ 已开班   │                                                            │
│     └────┬────┘                                                            │
│          │ 培训效果确认                                                    │
│          ▼                                                                  │
│     ┌─────────┐                                                            │
│     │  3      │  待归档审核                                                  │
│     │ 待审核   │─────────────────────────────────────▶ [培训完成]           │
│     └─────────┘                                                            │
│                                                                              │
└─────────────────────────────────────────────────────────────────────────────┘

流程节点详情

节点ID 节点名称 类型 状态值 后置条件
PROC-IMPL.CREATE 创建班级 Task 0 status=0
PROC-IMPL.ALLOCATE 分配课程 Task 0 讲师/时间已设置
PROC-IMPL.REVIEW 开班审核 Task 0→1/-1 通过/驳回
PROC-IMPL.PUBLISH 下发通知 Task 1 学员可查看
PROC-IMPL.MANAGE 学员管理 Task 1 学员列表已确定
PROC-IMPL.SIGN 签到管理 Task 1 考勤记录生成
PROC-IMPL.TEACH 授课管理 Task 1→2 实际讲师已填
PROC-IMPL.FEEDBACK 效果反馈 Task 2 问卷状态=2
PROC-IMPL.ARCHIVE 归档待审 Task 3 提交审核
PROC-IMPL.END 培训完成 EndEvent 3 流程结束

培训完成判定规则

flowchart TD
    A([判定培训完成]) --> B{年份 >= 2023?}
    B -->|是| C[问卷反馈判定]
    B -->|否| D{是否有问卷?}
    C --> E{yxx.status == 2?}
    E -->|是| F([完成]))
    E -->|否| G([未完成]))
    D -->|是| E
    D -->|否| H[评分判定]
    H --> I{pg.status == 1?}
    I -->|是| F
    I -->|否| G
    style F fill:#c8e6c9
    style G fill:#ffcdd2

3.3 考试管理流程

流程定义

属性
流程名称 考试管理流程 (Examination Management)
流程ID PROC-EXAM
流程版本 v1.0
流程类型 定时触发 + 手工触发
触发方式 试卷发布后自动计时/手工开始
流程周期 按试卷设定的考试周期

参与者定义

参与者 角色 职责
考试管理员 Exam Admin 试卷创建、发布、管理
考生 Candidate 答题
阅卷教师 Marker 主观题判分
系统 System 自动判分

流程图

flowchart TB
    subgraph 试卷管理
        A([开始: 创建试卷]) --> B[基本信息<br/>et_exam_exampaper<br/>name/sc/state]
        B --> C[添加题目<br/>et_exam_editexampaper<br/>type/subject/score]
        C --> D{题目类型?}
        D -->|客观题| E[设置标准答案<br/>answer字段]
        D -->|主观题| F[不设答案<br/>待人工判分]
        E --> G
        F --> G[人员限定<br/>et_exam_limitation<br/>人员/班级/课程]
    end
    
    subgraph 考试执行
        G --> H{到达开始时间?}
        H -->|否| H
        H -->|是| I[状态: 正在进行]
        I --> J[考生登录]
        J --> K[抽取试卷]
        K --> L[在线答题<br/>et_exam_usertest<br/>user_answer]
        L --> M{题目类型?}
        M -->|客观题| N[自动判分<br/>user_score]
        M -->|主观题| O[待阅卷<br/>user_score=NULL]
        N --> P{全部提交?}
        O --> P
        P -->|否| L
        P -->|是| Q{全部已判?}
    end
    
    subgraph 判卷与归档
        Q -->|否| R{有待判题目?}
        R -->|是| S[阅卷教师判分<br/>mark_teacher<br/>user_score]
        R -->|否| Q
        S --> Q
        Q -->|是| T[状态: 已关闭]
    end
    
    T --> U[成绩发布]
    U --> V([结束: 考试完成])
    
    style A fill:#e1f5fe
    style V fill:#c8e6c9

考试状态机

┌─────────────────────────────────────────────────────────────────────────────┐
│                           考试状态机 (exampaper.state)                        │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│  ┌─────────┐    ┌─────────┐    ┌─────────┐    ┌─────────┐    ┌─────────┐    │
│  │  已撤销  │    │  未开始  │───▶│ 正在进行 │───▶│  已关闭  │    │  已归档  │    │
│  │         │    │         │    │         │    │         │    │         │    │
│  └─────────┘    └────┬────┘    └────┬────┘    └─────────┘    └─────────┘    │
│       ▲              │              │                                          │
│       │              ▼              ▼                                          │
│       │         datediff        datediff                                       │
│       │         (startdate)>0   (startdate)<=0                                 │
│       │                         &&(enddate)>=0                                 │
│       │                                                                            │
│       │              datediff(enddate)<0 ────────────────▶ [自动关闭]           │
│       └──────────────────────────────────────── (不等于已撤销)                   │
│                                                                              │
└─────────────────────────────────────────────────────────────────────────────┘

判分规则

题型 自动判分 人工判分 说明
单选题 答案一致得分
多选题 答案一致得分
判断题 答案一致得分
简答题 需阅卷教师评分

3.4 外派培训管理流程

流程定义

属性
流程名称 外派培训管理流程 (External Training)
流程ID PROC-OUTTRAIN
流程版本 v1.0
流程类型 审批流
触发方式 手工发起
流程周期 单次外派

参与者定义

参与者 角色 职责
申请人 Applicant 发起外派申请
审批领导 Approver 审批申请
外派学员 Trainee 参训人员
登记员 Recorder 外派归来登记

流程图

flowchart TB
    subgraph 外派申请
        A([开始: 发起外派申请]) --> B[填写外派信息<br/>et_train_ot<br/>pxmc/pxfy/sld]
        B --> C{培训对象范围?}
        C -->|本部门| D[自动关联本部门人员]
        C -->|指定人员| E[指定参训人员<br/>et_train_ot_xy]
        D --> F[提交审批]
        E --> F
    end
    
    subgraph 审批执行
        F --> G{审批结果?}
        G -->|通过| H[等待外派开始]
        G -->|驳回| I([驳回: 修改申请])
        I --> B
        H --> J{到达开始时间?}
        J -->|否| J
        J -->|是| K[外派培训进行中]
    end
    
    subgraph 归来登记
        K --> L{培训结束?}
        L -->|否| L
        L -->|是| M[外派归来]
        M --> N[外派登记<br/>et_train_ot_pxdj<br/>status=4]
        N --> O{经济责任制?}
        O -->|是| P[关联经济责任制考核]
        O -->|否| Q[关联非经济责任制考核]
        P --> R([结束: 外派完成]))
        Q --> R
    end
    
    style A fill:#e1f5fe
    style R fill:#c8e6c9
    style I fill:#ffcdd2

流程节点详情

节点ID 节点名称 涉及表 关键字段
PROC-OUTTRAIN.APPLY 发起申请 et_train_ot pxmc, pxfy, sld, pxdjfw
PROC-OUTTRAIN.SCOPE 确定范围 et_train_ot_xy usercode, username
PROC-OUTTRAIN.APPROVE 审批 et_train_sp spresult
PROC-OUTTRAIN.REGISTER 归来登记 et_train_ot_pxdj status=4
PROC-OUTTRAIN.ASSESS 考核关联 - 单位性质判定

3.5 审批流程(通用子流程)

子流程定义

属性
子流程名称 通用审批流程 (Approval Process)
子流程ID SUB-APPROVAL
调用方式 被主流程调用
审批层级 多级(可配置)

流程图

flowchart TB
    A([开始: 提交审批]) --> B[获取审批人列表<br/>et_train_sp_person<br/>按order排序]
    B --> C{还有未审批项?}
    C -->|是| D[当前审批人审批]
    D --> E{审批结果?}
    E -->|通过| F{还有下一级?}
    E -->|驳回| G[驳回意见<br/>yj字段]
    G --> H([结束: 审批驳回])
    F -->|是| I[流转下一审批人]
    I --> C
    F -->|否| J[记录审批通过]
    J --> K([结束: 审批通过])
    C -->|否| K
    
    style A fill:#e1f5fe
    style K fill:#c8e6c9
    style H fill:#ffcdd2

审批数据存储

字段 说明
tname et_train_sp 目标业务表名
tid et_train_sp 目标业务记录ID
spusername et_train_sp 审批人姓名
spdate et_train_sp 审批时间
yj et_train_sp 审批意见
spresult et_train_sp 审批结果

3.6 年度培训总结流程

流程定义

属性
流程名称 年度培训总结流程 (Yearly Summary)
流程ID PROC-YEAR-SUMMARY
流程版本 v1.0
触发方式 年度结束通常12月
流程周期 年度

流程图

flowchart TB
    A([开始: 年度培训结束]) --> B[所级管理员创建年度总结<br/>et_train_ys]
    B --> C[下发填报通知]
    C --> D[部门填报<br/>et_train_ysgroup<br/>status=待填报]
    D --> E[提交部门总结]
    E --> F[状态更新<br/>status=3 已填报]
    F --> G[所级管理员汇总<br/>合并各部门数据]
    G --> H{数据完整?}
    H -->|否| I[返回部门补充]
    I --> D
    H -->|是| J[生成所级总结报告]
    J --> K([结束: 总结完成])
    
    style A fill:#e1f5fe
    style K fill:#c8e6c9

3.7 流程模型总览

流程ID 流程名称 类型 触发方式 关联主表
PROC-TRAIN-PLAN 培训计划管理 审批流 手工触发 et_train_ip / et_train_gip
PROC-TRAIN-IMPLEMENT 培训实施管理 状态流 计划批准后 et_train_pd_cc
PROC-EXAM 考试管理 定时流 试卷发布 et_exam_exampaper
PROC-OUTTRAIN 外派培训 审批流 手工发起 et_train_ot
SUB-APPROVAL 通用审批 子流程 被调用 et_train_sp
PROC-YEAR-SUMMARY 年度总结 填报流 年度结束 et_train_ys

四、数据字典

4.1 系统管理表JCDP_SYS_前缀

用户表 JCDP_SYS_USER

字段 类型 说明
ID VARCHAR 主键
LOGINNAME VARCHAR 登录名
USERNAME VARCHAR 用户姓名
PASSWORD VARCHAR 密码
SEX VARCHAR 性别
STATUS VARCHAR 状态
USERTYPE VARCHAR 用户类型
USERCODE VARCHAR 用户工号
DELETE_FLAG INT 删除标记(0未删)

扩展信息表 JCDP_SYS_USER_EXT

字段 类型 说明
ID VARCHAR 主键(关联USER)
EMAIL VARCHAR 邮箱
MOBILE VARCHAR 手机
PHONE VARCHAR 电话
ADDRESS VARCHAR 地址
IDNO VARCHAR 身份证号
BIRTHDAY DATE 生日
AVATARS VARCHAR 头像
USERIMG VARCHAR 用户图片
DYNAMIC_FIELD TEXT 动态字段(JSON)

组织机构表 JCDP_SYS_ORG

字段 类型 说明
ID VARCHAR 主键
CASCADE_ID VARCHAR 级联ID(树形结构)
NAME VARCHAR 组织名称
PARENT_ID VARCHAR 父节点ID
IS_LEAF INT 是否叶子节点
ORGTYPE VARCHAR 组织类型
STATUS INT 状态
SORT_NO INT 排序号
CODE VARCHAR 组织编码

角色表 JCDP_SYS_ROLE

字段 类型 说明
ID VARCHAR 主键
NAME VARCHAR 角色名称
ROLETYPE INT 角色类型(0系统/1默认/2自定义)
STATUS INT 状态
CREATER_ID VARCHAR 创建人ID
CREATER_ORGID VARCHAR 创建人组织ID

用户-角色关联 JCDP_SYS_USER_ROLE

字段 类型 说明
USERID VARCHAR 用户ID
ROLEID VARCHAR 角色ID
ROLETYPE VARCHAR 角色类型

用户-组织关联 JCDP_SYS_USER_ORG

字段 类型 说明
USERID VARCHAR 用户ID
ORGID VARCHAR 组织ID
IS_DEFAULT_ORG INT 是否默认组织

权限模块表 JCDP_SYS_MODULE

字段 类型 说明
ID VARCHAR 主键
HREF VARCHAR 访问路径
ACTIONVALUE VARCHAR 操作权限值
MODULETYPE VARCHAR 模块类型
MODULENAME VARCHAR 模块名称

用户权限表 JCDP_SYS_USER_MODULE

字段 类型 说明
USERID VARCHAR 用户ID
ACTIONVALUE VARCHAR 权限值
ACTIONOP_JSON VARCHAR 操作JSON

角色权限表 JCDP_SYS_ROLE_MODULE

字段 类型 说明
ROLEID VARCHAR 角色ID
ACTIONVALUE VARCHAR 权限值

3.2 培训业务表ET_TRAIN_前缀

培训课程表 ET_TRAIN_KC

字段 类型 说明
ID VARCHAR 主键
KCMC VARCHAR 课程名称
KCNR TEXT 课程内容
GROUPID VARCHAR 所属部门ID
GROUPNAME VARCHAR 所属部门名称
JHLY VARCHAR 计划来源(sj/bmn/bmw)
SFWP VARCHAR 是否外派(是/否)
ND VARCHAR 年度
KCXL VARCHAR 课程系列
PXRS INT 培训人数

培训班级表 ET_TRAIN_PD_CC

字段 类型 说明
ID VARCHAR 主键
KCMC VARCHAR 课程名称
KCMCID VARCHAR 课程ID
BJMC VARCHAR 班级名称
BJLB VARCHAR 班级类别
JHLY VARCHAR 计划来源
STARTTIME VARCHAR 开始时间
ENDTIME VARCHAR 结束时间
PXXSH INT 培训学时
PXXS INT 培训小时
TEACHER VARCHAR 计划讲师
REALTEACHER VARCHAR 实际讲师
TEACHER_CODE VARCHAR 讲师工号
TEACHER_DEPARTMENT VARCHAR 讲师部门
STATUS INT 状态(-1驳回/0未开/1已下发/2已开班/3待审核)
SFKH VARCHAR 是否考核(是/否)
KHLX VARCHAR 考核类型
KHFS VARCHAR 考核方式
PRICE DECIMAL 培训费用
SFBFZS VARCHAR 是否必需证书

班级学员表 ET_TRAIN_PD_CC_USER

字段 类型 说明
ID VARCHAR 主键
CCID VARCHAR 班级ID
USERCODE VARCHAR 学员工号
USERNAME VARCHAR 学员姓名
ISTRAIN VARCHAR 是否参训(1是)
REALPERIOD DECIMAL 实际学时

部门计划内表 ET_TRAIN_GIPGROUP

字段 类型 说明
ID VARCHAR 主键
GPPID VARCHAR 计划ID
ADDGROUPID VARCHAR 填报部门ID
ADDGROUPNAME VARCHAR 填报部门名称
ADDUSERCODE VARCHAR 填报人
ADDUSERNAME VARCHAR 填报人姓名
ADDTIME DATETIME 填报时间
STATUS INT 状态

部门计划外表 ET_TRAIN_GOP

字段 类型 说明
ID VARCHAR 主键
PXMC VARCHAR 培训名称
SQDW VARCHAR 申请单位
SQR VARCHAR 申请人
SQTIME DATETIME 申请时间
LXTEL VARCHAR 联系电话
STATUS INT 状态
DWXZ VARCHAR 单位性质(经济/非经济责任制)

所级计划表 ET_TRAIN_IP

字段 类型 说明
ID VARCHAR 主键
NAME VARCHAR 计划名称
STARTTIME VARCHAR 开始时间
ENDTIME VARCHAR 结束时间
STATUS INT 状态

外派培训表 ET_TRAIN_OT

字段 类型 说明
ID VARCHAR 主键
WPID VARCHAR 物品ID(关联课程)
PXMC VARCHAR 培训名称
PXDJFW VARCHAR 培训对象范围(0本部门/1指定人员)
PXSTARTTIME VARCHAR 培训开始时间
PXENDTIME VARCHAR 培训结束时间
PXFy DECIMAL 培训费用
SLD VARCHAR 审批领导
STATUS INT 状态(5已完成)
DELSTATUS INT 删除状态(0正常/1已删除)

外派学员表 ET_TRAIN_OT_XY

字段 类型 说明
ID VARCHAR 主键
OTID VARCHAR 外派培训ID
USERCODE VARCHAR 学员工号
USERNAME VARCHAR 学员姓名
ETSORT INT 排序

外派登记表 ET_TRAIN_OT_PXDJ

字段 类型 说明
ID VARCHAR 主键
OTID VARCHAR 外派培训ID
ADDUSERCODE VARCHAR 登记人
ADDGROUPNAME VARCHAR 登记部门
STATUS INT 状态(4已完成)

年度总结表 ET_TRAIN_YSGROUP

字段 类型 说明
ID VARCHAR 主键
YSID VARCHAR 总结ID
ADDGROUPID VARCHAR 填报部门ID
ADDGROUPNAME VARCHAR 填报部门名称
ADDUSERCODE VARCHAR 填报人
ADDUSERNAME VARCHAR 填报人姓名
ADDTIME DATETIME 填报时间
STATUS INT 状态

审批流程表 ET_TRAIN_SP

字段 类型 说明
ID VARCHAR 主键
TNAME VARCHAR 表名
TID VARCHAR 记录ID
SPUSERNAME VARCHAR 审批人
SPDATE DATETIME 审批日期
YJ TEXT 审批意见
SPRESULT VARCHAR 审批结果

3.3 考试业务表ET_EXAM_前缀

试卷表 ET_EXAM_EXAMPAPER_AND_EDITEXAMPAPER

字段 类型 说明
ID VARCHAR 主键
NAME VARCHAR 试卷名称
DESCRIPTION VARCHAR 描述
SC VARCHAR 所属课程
STATE VARCHAR 状态(未开始/正在进行/已关闭/已撤销)
STARTDATE DATE 开始日期
ENDDATE DATE 结束日期

题目表 ET_EXAM_EDITEXAMPAPER

字段 类型 说明
ID VARCHAR 主键
EDIT_ID VARCHAR 试卷ID
NUM INT 题号
SUBJECT TEXT 题目内容
TYPE VARCHAR 题型(单选题/多选题/判断题/简答题)
TYPE_NUM INT 题型序号
ISMUST VARCHAR 是否必答
SCORE DECIMAL 分值
OPTIONA-F VARCHAR 选项
ANSWER VARCHAR 标准答案
ISPARAGRAPH VARCHAR 是否段落题

用户答题表 ET_EXAM_USERTEST

字段 类型 说明
ID VARCHAR 主键
EXAM_ID VARCHAR 试卷ID
QUESTION_ID VARCHAR 题目ID
USER_ID VARCHAR 用户ID
USER VARCHAR 用户姓名
DEPARTMENT VARCHAR 部门
USER_ANSWER VARCHAR 用户答案
USER_SCORE DECIMAL 用户得分
USER_TIME VARCHAR 用时
MARK_TEACHER VARCHAR 判卷教师

人员限定表 ET_EXAM_LIMITATION

字段 类型 说明
ID VARCHAR 主键
EXAM_ID VARCHAR 试卷ID
USER_ID VARCHAR 用户工号
USER VARCHAR 用户姓名

班级限定表 ET_EXAM_LIMITATION_CLASS

字段 类型 说明
ID VARCHAR 主键
EXAM_ID VARCHAR 试卷ID
CLASS_ID VARCHAR 班级ID
CLASS_PERSON_ID VARCHAR 学员工号
CLASS_PERSON VARCHAR 学员姓名

课程限定表 ET_EXAM_LIMITATION_COURSE

字段 类型 说明
ID VARCHAR 主键
EXAM_ID VARCHAR 试卷ID
COURSE_ID VARCHAR 课程ID
COURSE_PERSON_ID VARCHAR 学员工号
COURSE_PERSON VARCHAR 学员姓名

3.4 即时通讯表

聊天用户状态表 JCDP_CHAT_USERSTATUS

字段 类型 说明
USERID VARCHAR 用户ID
USERSTATUS INT 在线状态(0离线/1在线)
HEARTBEAT DATETIME 最后心跳时间

五、核心业务流程详解(补充)

4.1 培训计划制定流程

┌─────────────────────────────────────────────────────────────────────────────┐
│  阶段1: 所级管理员下发通知                                                   │
├─────────────────────────────────────────────────────────────────────────────┤
│  操作:  INSERT et_train_ip / et_train_gip                                  │
│  状态:  status=1 (待填报)                                                    │
│  对象:  关联部门 (et_train_ip_group / et_train_gip_group)                   │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  阶段2: 部门管理员填报课程需求                                               │
├─────────────────────────────────────────────────────────────────────────────┤
│  操作:  INSERT et_train_gipgroup_kc / et_train_ipgroup_kc                 │
│  内容:  培训课程、人数、预算、时间段                                         │
│  状态:  status=1 (已填报,待调研)                                           │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  阶段3: 所级调研征集(可选)                                                  │
├─────────────────────────────────────────────────────────────────────────────┤
│  操作:  INSERT et_train_ipdy                                               │
│  内容:  下发调研问卷给部门                                                  │
│  反馈:  部门填写 et_train_ipdy_kc                                           │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  阶段4: 所级汇总生成计划                                                     │
├─────────────────────────────────────────────────────────────────────────────┤
│  操作:  INSERT et_train_ipf                                                │
│  内容:  整合所有部门需求,生成正式计划                                       │
│  关联:  et_train_ipf_kc                                                    │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  阶段5: 审批流程                                                            │
├─────────────────────────────────────────────────────────────────────────────┤
│  操作:  INSERT et_train_sp                                                 │
│  内容:  tname=目标表名, tid=记录ID                                          │
│  审批人: 从 et_train_sp_person 获取                                         │
│  结果:  spresult (通过/驳回)                                                │
└─────────────────────────────────────────────────────────────────────────────┘

4.2 培训实施完整流程

┌─────────────────────────────────────────────────────────────────────────────┐
│  培训实施完整流程                                                            │
└─────────────────────────────────────────────────────────────────────────────┘

培训计划 ──▶ 课程分配 ──▶ 开班管理 ──▶ 学员管理 ──▶ 授课管理 ──▶ 考核管理 ──▶ 完成归档

┌─────────────────────────────────────────────────────────────────────────────┐
│  步骤1: 课程分配 (et_train_pd_cc)                                          │
├─────────────────────────────────────────────────────────────────────────────┤
│  根据计划关联课程:                                                          │
│    • 选择培训讲师 (teacher)                                                 │
│    • 设置培训时间 (starttime, endtime)                                       │
│    • 设置培训人数 (pxxsh)                                                   │
│    • 设置是否考核 (sfkh)                                                     │
│  初始状态: status=0 (未开班)                                                │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  步骤2: 开班下发 (status=1)                                                │
├─────────────────────────────────────────────────────────────────────────────┤
│  所级管理员审核后下发                                                       │
│  状态: 1 (已下发)                                                           │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  步骤3: 学员管理 (et_train_pd_cc_user)                                     │
├─────────────────────────────────────────────────────────────────────────────┤
│  • 添加学员                                                                 │
│  • 设置是否参训 (istrain=1)                                                  │
│  • 记录实际学时 (realperiod)                                                │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  步骤4: 签到管理 (et_train_pd_cc_dt)                                       │
├─────────────────────────────────────────────────────────────────────────────┤
│  • 创建签到任务                                                             │
│  • 学员签到记录                                                             │
│  • 统计出勤率                                                               │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  步骤5: 授课完成 (status=2)                                                │
├─────────────────────────────────────────────────────────────────────────────┤
│  填写实际讲师: realteacher                                                  │
│  状态: 2 (已开班)                                                           │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  步骤6: 培训效果反馈                                                        │
├─────────────────────────────────────────────────────────────────────────────┤
│  et_train_pd_cc_pg        →  评分问卷发布                                   │
│  et_train_pd_cc_pgwjyxx  →  问卷/心得反馈                                  │
│  2023年起完成条件改为: yxx.status = 2                                       │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  步骤7: 归档待审 (status=3)                                                │
├─────────────────────────────────────────────────────────────────────────────┤
│  状态: 3 (待审核)                                                           │
│  管理员审核后完成归档                                                       │
└─────────────────────────────────────────────────────────────────────────────┘

4.3 外派培训流程

┌─────────────────────────────────────────────────────────────────────────────┐
│  外派培训管理流程                                                            │
└─────────────────────────────────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────────────────────────────────┐
│  外派培训申请 (et_train_ot)                                                │
├─────────────────────────────────────────────────────────────────────────────┤
│  字段说明:                                                                  │
│    • wpid: 关联培训计划课程ID                                               │
│    • pxdjfw: 培训对象范围(0=本部门/1=指定人员)                               │
│    • sld: 审批领导工号                                                       │
│    • status: 5 (已完成)                                                     │
│    • delstatus: 0 (正常)/1 (删除)                                           │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  指定参训人员 (et_train_ot_xy)                                             │
├─────────────────────────────────────────────────────────────────────────────┤
│  当 pxdjfw='1' 时需要指定人员                                               │
│  otid: 外派培训ID                                                           │
│  usercode/username: 学员信息                                                │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  外派登记 (et_train_ot_pxdj)                                               │
├─────────────────────────────────────────────────────────────────────────────┤
│  学员返回后进行登记                                                         │
│  status='4' 表示已完成登记                                                  │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│  删除申请 (et_train_ot_del)                                                │
├─────────────────────────────────────────────────────────────────────────────┤
│  需要走审批流程                                                             │
│  原记录 otid 保留在 del 表                                                  │
└─────────────────────────────────────────────────────────────────────────────┘

六、SQL映射文件清单

5.1 系统管理模块

文件 核心SQL
jcdp_sys_user.map.xml getUserListbyOrg, sys_user_valid, getUserPermissonList
jcdp_sys_org.map.xml getorg_list, getorg_cascadeList, getCurrentUserOrgTree
jcdp_sys_role.map.xml getRoleList, getRoleUsers, getNoRoleUserList
jcdp_sys_module.map.xml getModuleList, getUserModules
jcdp_sys_log.map.xml getLogList
parameter.map.xml getParamList, updateParam
dict.map.xml getDictList, getDictItems
dictItem.map.xml getDictItemList

5.2 培训计划模块

文件 核心SQL
et_train_groupinplan.map.xml getGroupInPlanList, getGroupInPlanGroupList, getDbGroupInPlanGroupList
et_train_groupinplan_bg.map.xml 计划变更相关
et_train_groupoutplan.map.xml getGroupOutPlanList
et_train_instituteplan.map.xml getInstitutePlanList, getInstituteDyList, getInstitutePlanFList
et_train_instituteplan_bg.map.xml 院级计划变更
et_train_kc.map.xml getet_train_kcList, getet_train_kc_sl (培训统计)
et_train_sp.map.xml getspList, updatespyw, getMyManageList (审批)
et_train_yearsummary.map.xml getYearSummaryList, getYearSummaryGroupList

5.3 培训实施模块

文件 核心SQL
et_train_pd.map.xml getPdList, getPd_KcList, getPd_CcUserList
et_train_pd_classopener.map.xml 开班管理
pd_query.map.xml queryTrainFlow, queryTrainTotal (综合查询)

5.4 外派培训模块

文件 核心SQL
et_train_outtrain.map.xml getOutTrainList, getOutTrainPxdjList, getOutTrainDeleteList

5.5 考试模块

文件 核心SQL
et_exam_editexampaper.map.xml 试卷管理
et_exam_exampaper_and_editexampaper.map.xml 试卷创建
et_exam_usertest.map.xml getExamTestList, getExamResultList, getExamMarkList
et_exam_limitation.map.xml 参考人员管理

5.6 即时通讯模块

文件 核心SQL
chat.map.xml getChatUserByOrg, getOnlineUserIds, ChatUserHeartBeat
chatGroup.map.xml 群组管理
chatFriends.map.xml 好友管理

七、关键业务规则

6.1 状态值汇总

表/实体 状态字段 状态值说明
et_train_pd_cc status -1:被驳回, 0:未开班, 1:已下发, 2:已开班, 3:待审核
et_train_gipgroup status 同上
et_train_ipgroup status 同上
et_train_ip status 1:待填报, 2:已过期
et_exam_exampaper state 未开始, 正在进行, 已关闭, 已撤销
et_train_ot status 5:已完成
et_train_ot delstatus 0:正常, 1:已删除
et_train_ot_pxdj status 4:已完成登记
et_train_ysgroup status 3:已填报

6.2 计划来源 (jhly)

说明 来源
sj 所级/院级计划 所级管理员统一制定下发
bmn 部门级计划内 部门申报,纳入年度预算
bmw 部门级计划外 部门临时申请,不占预算

6.3 培训完成判定

2023年及以后:
  完成条件 = et_train_pd_cc_pgwjyxx.status = 2 (问卷/心得已完成)

2023年以前:
  完成条件 = IF(yxx.status IS NOT NULL, yxx.status=2, pg.status=1)

6.4 权限控制

用户类型 (usertype):
  - 普通用户
  - 管理员 (可管理所有数据)

角色类型 (roletype):
  0: 系统级角色 (全局有效)
  1: 默认角色 (新建用户自动分配)
  2: 自定义角色 (部门级或用户级)

八、接口与集成

7.1 WebService (Apache CXF)

  • 服务名: ETMSService
  • 暴露地址: 可配置
  • 功能: 提供外部系统调用接口

7.2 消息队列 (RabbitMQ)

  • 客户端: amqp-client
  • 用途: 异步消息通知、事件触发

7.3 HCM接口 (et_hcm_interface)

  • 用途: 与人力资源管理系统数据同步

7.4 报表集成 (FineReport)

  • 版本: FineReport 8.0
  • 配置: fr-* 相关配置
  • 使用: 统计分析模块

九、开发规范参考

详见同目录下的 CODE_REVIEW_GUIDE.md,包含:

  • SQL注入防护规范
  • FTL模板规范
  • JavaScript规范
  • CSS规范
  • 审查流程与问题等级

文档生成时间: 2026-04-16 最后更新: 2026-04-16 (增加BPMN业务流程模型章节) 更新内容: 新增第三章"BPMN业务流程模型"包含6个核心流程的完整流程定义、参与者定义、流程图和节点详情