994 lines
47 KiB
Markdown
994 lines
47 KiB
Markdown
|
|
# 巫溪县安全评价在线监管一件事 — 数据库设计文档
|
|||
|
|
|
|||
|
|
> 版本:v1.2
|
|||
|
|
> 依据:产品原型 PDF(设计文件 1–12)
|
|||
|
|
> 数据库:MySQL 8.0+ / InnoDB / utf8mb4_unicode_ci
|
|||
|
|
> ORM:MyBatis-Plus(通用字段与 `@TableLogic` 对齐)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 1. 文档说明
|
|||
|
|
|
|||
|
|
### 1.1 设计目标
|
|||
|
|
|
|||
|
|
| 业务域 | 原型模块 | 核心表 |
|
|||
|
|
|--------|----------|--------|
|
|||
|
|
| 机构认证 | 认证信息(填写→审核中→通过) | `org_info`、`org_certification_audit` |
|
|||
|
|
| 企业信息管理 | 机构信息、资质、人员、部门岗位、装备 | `org_*`、`staff_*`、`equip_info` |
|
|||
|
|
| 人员异动 | 人员变更、离职申请 | `staff_change_log`、`staff_resignation_apply` |
|
|||
|
|
| 资质备案 | 备案申请(4步)、变更、已备案 | `filing_*` |
|
|||
|
|
| 系统支撑 | 用户、附件、审核、字典、区划 | `sys_*`、`audit_record` |
|
|||
|
|
|
|||
|
|
> **阅读指引**:§2 ER 图与关联矩阵 → **§3 每张表作用与关系(核心)** → §4–§8 字段明细 → §11 表清单总览
|
|||
|
|
|
|||
|
|
### 1.2 命名规范
|
|||
|
|
|
|||
|
|
| 项 | 规范 |
|
|||
|
|
|----|------|
|
|||
|
|
| 表名 | 小写 + 下划线;前缀 `sys_` / `org_` / `staff_` / `filing_` / `equip_` |
|
|||
|
|
| 字段 | Java 驼峰 → 数据库下划线,如 `createTime` → `create_time` |
|
|||
|
|
| 主键 | `id` BIGINT UNSIGNED |
|
|||
|
|
| 外键 | `{实体}_id`,逻辑外键,应用层约束 |
|
|||
|
|
| 日期 | **DATE**:仅年月日(出生日期、证书有效期、签署日期等) |
|
|||
|
|
| 时间 | **DATETIME**:年月日时分秒(创建、提交、审核、登录等) |
|
|||
|
|
| 逻辑删除 | 字段名固定 **`deleted`**(不转下划线),`0` 未删 / `1` 已删 |
|
|||
|
|
|
|||
|
|
### 1.3 通用字段(与 MyBatis-Plus BaseEntity 对齐)
|
|||
|
|
|
|||
|
|
业务表(可增删改)均包含以下 5 个字段:
|
|||
|
|
|
|||
|
|
```java
|
|||
|
|
/** 创建时间 */
|
|||
|
|
@TableField(fill = FieldFill.INSERT)
|
|||
|
|
private LocalDateTime createTime;
|
|||
|
|
|
|||
|
|
/** 创建人 */
|
|||
|
|
@TableField(fill = FieldFill.INSERT)
|
|||
|
|
private String createBy;
|
|||
|
|
|
|||
|
|
/** 更新时间 */
|
|||
|
|
@TableField(fill = FieldFill.INSERT_UPDATE)
|
|||
|
|
private LocalDateTime updateTime;
|
|||
|
|
|
|||
|
|
/** 更新人 */
|
|||
|
|
@TableField(fill = FieldFill.INSERT_UPDATE)
|
|||
|
|
private String updateBy;
|
|||
|
|
|
|||
|
|
/** 删除标识 0-否 1-是 */
|
|||
|
|
@TableLogic(value = "0", delval = "1")
|
|||
|
|
@TableField(fill = FieldFill.INSERT)
|
|||
|
|
private Integer deleted;
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
对应 DDL:
|
|||
|
|
|
|||
|
|
```sql
|
|||
|
|
create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
|||
|
|
create_by VARCHAR(64) DEFAULT NULL COMMENT '创建人',
|
|||
|
|
update_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
|||
|
|
update_by VARCHAR(64) DEFAULT NULL COMMENT '更新人',
|
|||
|
|
deleted TINYINT NOT NULL DEFAULT 0 COMMENT '删除标识0-否1-是'
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**例外(只增不改的流水表)** 仅保留 `create_time`、`create_by`(及业务时间字段):
|
|||
|
|
|
|||
|
|
- `audit_record` — 审核流水
|
|||
|
|
- `org_certification_audit` — 认证审核历史
|
|||
|
|
- `staff_change_log` — 人员变更记录
|
|||
|
|
- `filing_change_detail` — 备案变更明细
|
|||
|
|
|
|||
|
|
### 1.4 附件设计
|
|||
|
|
|
|||
|
|
证书图片、材料扫描件、离职报告、单位介绍附件等 **不单独建业务字段存 URL**,统一走 `sys_attachment`:
|
|||
|
|
|
|||
|
|
| biz_type | 关联 biz_id | 原型场景 |
|
|||
|
|
|----------|-------------|----------|
|
|||
|
|
| org_intro | filing_application.id / org_info.id | 单位基本情况介绍上传 |
|
|||
|
|
| org_cert | org_qualification_cert.id | 机构资质证书图片 |
|
|||
|
|
| staff_cert | staff_certificate.id | 人员证书附件 |
|
|||
|
|
| filing_material | filing_application_material.id | 申请材料扫描件 |
|
|||
|
|
| filing_commitment_sign | filing_commitment.id | 法人签名 |
|
|||
|
|
| filing_commitment_seal | filing_commitment.id | 单位盖章 |
|
|||
|
|
| resign_report | staff_resignation_apply.id | 离职通知报告 PDF |
|
|||
|
|
| staff_ability_proof | staff_info.id | 申报专业能力证明材料 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 2. ER 关系总览
|
|||
|
|
|
|||
|
|
> 以下为全局 ER 与关联矩阵;**每张表的业务职责、上游引用、下游被引用** 见 [§3 数据表作用与关系说明](#3-数据表作用与关系说明)。
|
|||
|
|
|
|||
|
|
```mermaid
|
|||
|
|
erDiagram
|
|||
|
|
org_info ||--o{ org_department : "org_id"
|
|||
|
|
org_department ||--o{ org_position : "dept_id"
|
|||
|
|
org_info ||--o{ staff_info : "org_id"
|
|||
|
|
org_department ||--o{ staff_info : "dept_id"
|
|||
|
|
org_position ||--o{ staff_info : "position_id"
|
|||
|
|
staff_info ||--o{ staff_certificate : "staff_id"
|
|||
|
|
org_info ||--o{ org_qualification_cert : "org_id"
|
|||
|
|
org_info ||--o{ org_certification_audit : "org_id"
|
|||
|
|
org_info ||--o{ equip_info : "org_id"
|
|||
|
|
|
|||
|
|
org_info ||--o{ filing_application : "org_id"
|
|||
|
|
filing_application ||--o{ filing_application_material : "application_id"
|
|||
|
|
filing_application ||--o{ filing_application_staff : "application_id"
|
|||
|
|
filing_application_staff ||--o{ filing_application_staff_cert : "application_staff_id"
|
|||
|
|
filing_application ||--o| filing_commitment : "application_id"
|
|||
|
|
filing_application ||--o| filing_record : "application_id"
|
|||
|
|
filing_record ||--o{ filing_change_record : "filing_record_id"
|
|||
|
|
filing_change_record ||--o{ filing_change_detail : "change_record_id"
|
|||
|
|
|
|||
|
|
staff_info ||--o{ staff_change_log : "staff_id"
|
|||
|
|
staff_info ||--o{ staff_resignation_apply : "staff_id"
|
|||
|
|
sys_user ||--o| staff_info : "user_id"
|
|||
|
|
sys_user }o--|| org_info : "org_id"
|
|||
|
|
sys_region ||--o{ filing_record : "filing_region_id"
|
|||
|
|
sys_region ||--o{ org_info : "region_*_id"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 2.1 关联矩阵
|
|||
|
|
|
|||
|
|
| 主表 | 从表 | 关系 | 关联字段 | 说明 |
|
|||
|
|
|------|------|------|----------|------|
|
|||
|
|
| org_info | org_department | 1:N | org_id | 部门树 |
|
|||
|
|
| org_department | org_position | 1:N | dept_id | 部门下岗位 |
|
|||
|
|
| org_info | staff_info | 1:N | org_id | 机构人员 |
|
|||
|
|
| org_department | staff_info | 1:N | dept_id | 人员所属部门 |
|
|||
|
|
| org_position | staff_info | 1:N | position_id | 人员岗位 |
|
|||
|
|
| staff_info | staff_certificate | 1:N | staff_id | 人员证书 |
|
|||
|
|
| staff_info | staff_change_log | 1:N | staff_id | 变更追溯 |
|
|||
|
|
| staff_info | staff_resignation_apply | 1:N | staff_id | 离职申请 |
|
|||
|
|
| org_info | org_qualification_cert | 1:N | org_id | 机构资质 |
|
|||
|
|
| org_info | equip_info | 1:N | org_id | 装备 |
|
|||
|
|
| org_info | filing_application | 1:N | org_id | 备案申请 |
|
|||
|
|
| filing_application | filing_application_material | 1:N | application_id | 步骤2材料 |
|
|||
|
|
| filing_application | filing_application_staff | 1:N | application_id | 步骤3人员 |
|
|||
|
|
| filing_application_staff | filing_application_staff_cert | 1:N | application_staff_id | 步骤3人员证书 |
|
|||
|
|
| filing_application | filing_commitment | 1:1 | application_id | 步骤4承诺书 |
|
|||
|
|
| filing_application | filing_record | 1:1 | application_id | 审核通过后生成 |
|
|||
|
|
| filing_record | filing_change_record | 1:N | filing_record_id | 备案变更 |
|
|||
|
|
| filing_change_record | filing_change_detail | 1:N | change_record_id | 变更明细 |
|
|||
|
|
| filing_change_record | filing_application | N:1 | change_application_id | 变更类申请 |
|
|||
|
|
| sys_user | staff_info | 1:1 | user_id | 可选绑定 |
|
|||
|
|
| sys_attachment | 各业务 | N:1 | biz_type + biz_id | 附件 |
|
|||
|
|
| sys_region | org_info | 1:N | region_county_id 等 | 机构所属区划 |
|
|||
|
|
| sys_region | filing_application / filing_record | 1:N | filing_region_id | 备案属地 |
|
|||
|
|
| sys_dict | sys_dict_item | 1:N | dict_id | 字典项 |
|
|||
|
|
| audit_record | 各审核业务 | N:1 | biz_type + biz_id | 审核流水 |
|
|||
|
|
| org_info | org_certification_audit | 1:N | org_id | 认证审核历史 |
|
|||
|
|
| org_info | sys_user | 1:N | org_id | 机构用户 |
|
|||
|
|
| staff_info | filing_application_staff | 1:N | staff_id | 备案时引用人员(可选) |
|
|||
|
|
| staff_certificate | filing_application_staff_cert | 1:N | staff_cert_id | 备案时引用证书(可选) |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 3. 数据表作用与关系说明
|
|||
|
|
|
|||
|
|
> 本节按业务域列出 **全部 24 张表** 的职责及与其他表的关联,便于开发理解数据流向。
|
|||
|
|
> 箭头含义:`A → B` 表示 A 表通过外键字段引用 B 表(或多对一归属 B)。
|
|||
|
|
|
|||
|
|
### 3.1 系统支撑域
|
|||
|
|
|
|||
|
|
#### sys_user — 系统用户
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 存储平台登录账号,支撑机构端、监管端身份认证;人员开通账号、重置密码均操作此表。 |
|
|||
|
|
| **对应原型** | 人员信息管理(账号列、重置密码);认证/备案各模块的操作主体。 |
|
|||
|
|
| **引用(上游)** | `org_info`(`org_id`,机构用户必填;监管用户为空) |
|
|||
|
|
| **被引用(下游)** | `staff_info.user_id`(人员与账号 1:1 可选绑定) |
|
|||
|
|
| **关联方式** | 机构用户:`sys_user.org_id = org_info.id`;人员账号:`staff_info.user_id = sys_user.id` |
|
|||
|
|
|
|||
|
|
#### sys_region — 行政区划
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 维护省→市→区县→街道→社区树形区划,供机构地址、备案属地下拉选择与列表展示。 |
|
|||
|
|
| **对应原型** | 机构信息「所属县区/镇街道/村社区」;备案列表「备案属地」。 |
|
|||
|
|
| **引用(上游)** | 自关联 `parent_id → sys_region.id`(树形结构) |
|
|||
|
|
| **被引用(下游)** | `org_info.region_county_id / region_street_id / region_community_id`;`filing_application.filing_region_id`;`filing_record.filing_region_id` |
|
|||
|
|
| **关联方式** | 树查询:`parent_id`;机构/备案:`filing_region_id = sys_region.id` |
|
|||
|
|
|
|||
|
|
#### sys_dict — 数据字典
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 字典类型主表,定义下拉选项分类(备案状态、审核状态、设备状态等)。 |
|
|||
|
|
| **对应原型** | 各页面「请选择」类筛选项、状态标签的后端枚举来源。 |
|
|||
|
|
| **引用(上游)** | 无 |
|
|||
|
|
| **被引用(下游)** | `sys_dict_item.dict_id` |
|
|||
|
|
| **关联方式** | `sys_dict_item.dict_id = sys_dict.id` |
|
|||
|
|
|
|||
|
|
#### sys_dict_item — 字典项
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 字典具体选项值与展示标签,如「已备案」「未审核」「启用/禁用」。 |
|
|||
|
|
| **对应原型** | 备案状态、离职审核状态、设备状态等下拉框选项。 |
|
|||
|
|
| **引用(上游)** | `sys_dict`(`dict_id`) |
|
|||
|
|
| **被引用(下游)** | 业务表通过 `dict_code + item_value` 逻辑引用,无物理外键 |
|
|||
|
|
| **关联方式** | 查询:`sys_dict.dict_code = 'filing_status'` JOIN `sys_dict_item` |
|
|||
|
|
|
|||
|
|
#### sys_attachment — 通用附件
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 统一管理各业务上传文件(PDF 扫描件、证书图片、签名盖章等),避免各表重复存 URL。 |
|
|||
|
|
| **对应原型** | 资质证书图片、申请材料上传、离职通知报告、承诺书签章、单位介绍附件等。 |
|
|||
|
|
| **引用(上游)** | 无物理 FK;通过 `biz_type + biz_id` 逻辑关联各业务主键 |
|
|||
|
|
| **被引用(下游)** | 见 §1.4 `biz_type` 映射表 |
|
|||
|
|
| **关联方式** | `WHERE biz_type = 'org_cert' AND biz_id = org_qualification_cert.id` |
|
|||
|
|
|
|||
|
|
#### audit_record — 审核流水
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 记录各类业务的提交、通过、驳回、退回操作及意见,用于审计追溯与状态机还原。 |
|
|||
|
|
| **对应原型** | 机构认证审核、备案审核、离职审核、备案变更审核的状态流转历史。 |
|
|||
|
|
| **引用(上游)** | 无;`biz_type + biz_id` 指向具体业务记录 |
|
|||
|
|
| **被引用(下游)** | 无(只增不改的流水表) |
|
|||
|
|
| **关联方式** | `biz_type='filing_application' AND biz_id=filing_application.id` |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 3.2 机构与企业域
|
|||
|
|
|
|||
|
|
#### org_info — 机构基本信息
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | **核心主数据表**。存储安全评价机构主体信息,承载首次「认证信息」填报、日常「机构信息管理」维护,并为备案申请提供基础数据。 |
|
|||
|
|
| **对应原型** | 认证信息(填写→审核中→通过);机构信息管理;备案申请第一步单位信息。 |
|
|||
|
|
| **引用(上游)** | `sys_region`(三区划 ID) |
|
|||
|
|
| **被引用(下游)** | `sys_user`、`org_department`、`org_position`、`staff_info`、`org_qualification_cert`、`equip_info`、`filing_application`、`filing_record`、`org_certification_audit`、`staff_change_log`、`staff_resignation_apply`(均含 `org_id`) |
|
|||
|
|
| **关联方式** | 机构维度数据隔离:`*.org_id = org_info.id` |
|
|||
|
|
|
|||
|
|
#### org_certification_audit — 机构认证审核记录
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 每次提交机构认证时生成一条审核记录,保留提交快照与审核结果,支持「认证审核中/通过/驳回」历史查询。 |
|
|||
|
|
| **对应原型** | 认证信息步骤条:填写信息 → 认证审核中 → 认证通过。 |
|
|||
|
|
| **引用(上游)** | `org_info`(`org_id`) |
|
|||
|
|
| **被引用(下游)** | 无;可与 `audit_record`(`biz_type=org_certification`)并行写入 |
|
|||
|
|
| **关联方式** | `org_certification_audit.org_id = org_info.id` |
|
|||
|
|
|
|||
|
|
#### org_qualification_cert — 机构资质证书
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 维护机构持有的安全评价等资质证书(等级、编号、有效期、发证机关),证书图片走 `sys_attachment`。 |
|
|||
|
|
| **对应原型** | 企业信息管理 → 资质信息管理(新增/编辑/禁用/删除证书)。 |
|
|||
|
|
| **引用(上游)** | `org_info`(`org_id`);附件 `sys_attachment`(`biz_type=org_cert`) |
|
|||
|
|
| **被引用(下游)** | 备案变更:资质变更时触发 `filing_change_record`(`change_type=qualification`) |
|
|||
|
|
| **关联方式** | `org_qualification_cert.org_id = org_info.id` |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 3.3 组织与人员域
|
|||
|
|
|
|||
|
|
#### org_department — 部门
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 机构内部组织架构,支持多级部门树(原型左侧过滤树:第一级别、第二级别…)。 |
|
|||
|
|
| **对应原型** | 企业信息管理 → 部门岗位管理 → 部门列表/新增/编辑。 |
|
|||
|
|
| **引用(上游)** | `org_info`(`org_id`);自关联 `parent_id` |
|
|||
|
|
| **被引用(下游)** | `org_position.dept_id`;`staff_info.dept_id` |
|
|||
|
|
| **关联方式** | 树:`parent_id = 0` 为根;人员:`staff_info.dept_id = org_department.id` |
|
|||
|
|
|
|||
|
|
#### org_position — 岗位
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 定义部门下的岗位及职责,人员录入时选择岗位。 |
|
|||
|
|
| **对应原型** | 部门岗位管理 → 添加岗位/编辑岗位(岗位名称、岗位职责、备注)。 |
|
|||
|
|
| **引用(上游)** | `org_info`(`org_id`);`org_department`(`dept_id`) |
|
|||
|
|
| **被引用(下游)** | `staff_info.position_id` |
|
|||
|
|
| **关联方式** | `org_position.dept_id = org_department.id`;`staff_info.position_id = org_position.id` |
|
|||
|
|
|
|||
|
|
#### staff_info — 人员信息
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 机构从业人员主数据,含基本信息、学历经历、专业能力;列表展示部门/岗位/证照摘要;变更时写 `staff_change_log`。 |
|
|||
|
|
| **对应原型** | 人员信息管理(列表、新增、查看、编辑);备案向导第三步人员(可引用本表)。 |
|
|||
|
|
| **引用(上游)** | `org_info`、`org_department`、`org_position`、`sys_user`(均可空) |
|
|||
|
|
| **被引用(下游)** | `staff_certificate`、`staff_change_log`、`staff_resignation_apply`;`filing_application_staff.staff_id`(可选) |
|
|||
|
|
| **关联方式** | `staff_info.org_id = org_info.id`;证书:`staff_certificate.staff_id = staff_info.id` |
|
|||
|
|
|
|||
|
|
#### staff_certificate — 人员证书
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 人员持有的各类执业/作业证书,含类别、编号、有效期;证书附件走 `sys_attachment`。 |
|
|||
|
|
| **对应原型** | 人员信息管理 → 添加证书/编辑证书/查看证书详情。 |
|
|||
|
|
| **引用(上游)** | `staff_info`(`staff_id`);`org_info`(`org_id` 冗余便于按机构查);`sys_attachment`(`biz_type=staff_cert`) |
|
|||
|
|
| **被引用(下游)** | `filing_application_staff_cert.staff_cert_id`(备案快照可选来源) |
|
|||
|
|
| **关联方式** | `staff_certificate.staff_id = staff_info.id` |
|
|||
|
|
|
|||
|
|
#### staff_change_log — 人员变更记录
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 人员信息修改时逐字段记录变更前后值,支撑「人员变更管理」列表的变更次数与变更明细查看。 |
|
|||
|
|
| **对应原型** | 人员变更管理(变更事项、变更时间、操作人);变更内容如「法人:张三→李四」。 |
|
|||
|
|
| **引用(上游)** | `staff_info`(`staff_id`);`org_info`(`org_id`) |
|
|||
|
|
| **被引用(下游)** | 无;变更可能间接触发 `filing_change_record`(机构已有备案时) |
|
|||
|
|
| **关联方式** | `staff_change_log.staff_id = staff_info.id`;同步更新 `staff_info.change_count` |
|
|||
|
|
|
|||
|
|
#### staff_resignation_apply — 人员离职申请
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 人员离职申请单,含离职原因、预计离职日期、离职通知报告;机构管理员审核后更新人员就职状态。 |
|
|||
|
|
| **对应原型** | 人员离职申请(新增/查看);人员变更管理 → 离职审核(通过/退回)。 |
|
|||
|
|
| **引用(上游)** | `staff_info`(`staff_id`);`org_info`(`org_id`);`sys_attachment`(`biz_type=resign_report`) |
|
|||
|
|
| **被引用(下游)** | `audit_record`(`biz_type=staff_resignation`);审核通过 → 更新 `staff_info.employment_status=2` |
|
|||
|
|
| **关联方式** | `staff_resignation_apply.staff_id = staff_info.id` |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 3.4 装备域
|
|||
|
|
|
|||
|
|
#### equip_info — 装备信息
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 评价机构检测仪器设备台账,含分类、型号、流量、校准信息及启用/禁用状态。 |
|
|||
|
|
| **对应原型** | 企业信息管理 → 装备信息管理(新增/编辑/查看/启用禁用/删除)。 |
|
|||
|
|
| **引用(上游)** | `org_info`(`org_id`) |
|
|||
|
|
| **被引用(下游)** | 无(独立主数据;二期监控模块可引用) |
|
|||
|
|
| **关联方式** | `equip_info.org_id = org_info.id` |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 3.5 资质备案域
|
|||
|
|
|
|||
|
|
#### filing_application — 备案申请主表
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 备案业务**流程主表**,驱动 4 步向导(基本→材料→人员→承诺书),管理草稿/提交/审核状态;新备案与变更备案共用,通过后生成 `filing_record`。 |
|
|||
|
|
| **对应原型** | 资质申请管理 → 资质备案申请;备案变更管理中的编辑表单。 |
|
|||
|
|
| **引用(上游)** | `org_info`(`org_id`);`sys_region`(`filing_region_id`);`filing_record`(`parent_filing_record_id`,变更备案时) |
|
|||
|
|
| **被引用(下游)** | `filing_application_material`、`filing_application_staff`、`filing_commitment`;审核通过 → `filing_record`;`filing_change_record.change_application_id` |
|
|||
|
|
| **关联方式** | 子表均 `application_id = filing_application.id`;通过后 `filing_record.application_id = filing_application.id` |
|
|||
|
|
|
|||
|
|
#### filing_application_material — 备案申请材料
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 备案向导第 2 步「申请材料清单」行数据,每条材料对应扫描件附件。 |
|
|||
|
|
| **对应原型** | 资质备案申请 → 申请材料清单(内容、格式 pdf、注释、上传附件)。 |
|
|||
|
|
| **引用(上游)** | `filing_application`(`application_id`);`sys_attachment`(`biz_type=filing_material`) |
|
|||
|
|
| **被引用(下游)** | 无 |
|
|||
|
|
| **关联方式** | `filing_application_material.application_id = filing_application.id` |
|
|||
|
|
|
|||
|
|
#### filing_application_staff — 备案申请人员快照
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 备案向导第 3 步人员列表;申请提交时从 `staff_info` 复制或手工录入,**与主数据隔离**,保证备案历史不受后续人员变更影响。 |
|
|||
|
|
| **对应原型** | 资质备案申请 → 人员信息(姓名、类型、职务、职称、查看证书)。 |
|
|||
|
|
| **引用(上游)** | `filing_application`(`application_id`);`staff_info`(`staff_id`,可选) |
|
|||
|
|
| **被引用(下游)** | `filing_application_staff_cert`(`application_staff_id`) |
|
|||
|
|
| **关联方式** | `filing_application_staff.application_id = filing_application.id` |
|
|||
|
|
|
|||
|
|
#### filing_application_staff_cert — 备案申请人员证书快照
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 备案人员关联证书的时点快照,字段对齐 `staff_certificate`,支持「查看证书」而不回查已变更的主数据。 |
|
|||
|
|
| **对应原型** | 备案人员信息 → 查看证书(证书类型、作业类别、编号、有效期等)。 |
|
|||
|
|
| **引用(上游)** | `filing_application`(`application_id`);`filing_application_staff`(`application_staff_id`);`staff_certificate`(`staff_cert_id`,可选) |
|
|||
|
|
| **被引用(下游)** | `sys_attachment`(`biz_type=filing_staff_cert`) |
|
|||
|
|
| **关联方式** | `application_staff_id = filing_application_staff.id` |
|
|||
|
|
|
|||
|
|
#### filing_commitment — 法定代表人承诺书
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 备案向导第 4 步,记录法人签署信息;签名、盖章文件存 `sys_attachment`。 |
|
|||
|
|
| **对应原型** | 资质备案申请 → 申请单位法定代表人承诺书(签名、盖章、日期)。 |
|
|||
|
|
| **引用(上游)** | `filing_application`(`application_id`,1:1) |
|
|||
|
|
| **被引用(下游)** | `sys_attachment`(`filing_commitment_sign` / `filing_commitment_seal`) |
|
|||
|
|
| **关联方式** | `filing_commitment.application_id = filing_application.id`(唯一) |
|
|||
|
|
|
|||
|
|
#### filing_record — 已备案资质记录
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 备案审核通过后的**正式备案台账**,含备案编号、属地、业务范围、状态、变更次数;列表即「已备案资质管理」。 |
|
|||
|
|
| **对应原型** | 已备案资质管理;资质备案/变更列表中的「已备案」状态行。 |
|
|||
|
|
| **引用(上游)** | `org_info`(`org_id`);`filing_application`(`application_id`);`sys_region`(`filing_region_id`) |
|
|||
|
|
| **被引用(下游)** | `filing_application.filing_record_id`;`filing_change_record.filing_record_id`;`filing_application.parent_filing_record_id`(变更备案) |
|
|||
|
|
| **关联方式** | `filing_record.application_id = filing_application.id`;变更:`filing_change_record.filing_record_id = filing_record.id` |
|
|||
|
|
|
|||
|
|
#### filing_change_record — 备案变更记录
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 已备案机构发生人员/资质/单位信息变更时的变更批次主记录,对应「备案变更管理」与「历史变更记录」。 |
|
|||
|
|
| **对应原型** | 备案变更管理(变更次数、备案状态);说明:人员或资质变更后备案数据进入变更管理。 |
|
|||
|
|
| **引用(上游)** | `filing_record`(`filing_record_id`);`org_info`(`org_id`);`filing_application`(`change_application_id`,变更类申请) |
|
|||
|
|
| **被引用(下游)** | `filing_change_detail`(`change_record_id`);完成后 `filing_record.change_count + 1` |
|
|||
|
|
| **关联方式** | `filing_change_record.filing_record_id = filing_record.id` |
|
|||
|
|
|
|||
|
|
#### filing_change_detail — 备案变更明细
|
|||
|
|
|
|||
|
|
| 项 | 说明 |
|
|||
|
|
|----|------|
|
|||
|
|
| **作用** | 单次备案变更的字段级明细,展示「由 A 变更为 B」,如法人、联系电话变更。 |
|
|||
|
|
| **对应原型** | 备案变更查看 → 变更内容(由张三变更为李四、由152…变更为187…)。 |
|
|||
|
|
| **引用(上游)** | `filing_change_record`(`change_record_id`) |
|
|||
|
|
| **被引用(下游)** | 无(只增不改) |
|
|||
|
|
| **关联方式** | `filing_change_detail.change_record_id = filing_change_record.id` |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 3.6 表关系分层图
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
【租户根】 org_info
|
|||
|
|
├── sys_user 登录账号
|
|||
|
|
├── org_certification_audit 认证审核历史
|
|||
|
|
├── org_qualification_cert ──→ sys_attachment(org_cert)
|
|||
|
|
├── org_department
|
|||
|
|
│ └── org_position
|
|||
|
|
├── staff_info ──→ sys_user
|
|||
|
|
│ ├── staff_certificate ──→ sys_attachment(staff_cert)
|
|||
|
|
│ ├── staff_change_log
|
|||
|
|
│ └── staff_resignation_apply ──→ sys_attachment(resign_report)
|
|||
|
|
├── equip_info
|
|||
|
|
└── filing_application ──→ sys_region(备案属地)
|
|||
|
|
├── sys_attachment(org_intro)
|
|||
|
|
├── filing_application_material ──→ sys_attachment(filing_material)
|
|||
|
|
├── filing_application_staff ──→ staff_info(可选)
|
|||
|
|
│ └── filing_application_staff_cert ──→ staff_certificate(可选)
|
|||
|
|
├── filing_commitment ──→ sys_attachment(sign/seal)
|
|||
|
|
└── [审核通过] filing_record ──→ sys_region
|
|||
|
|
└── filing_change_record ──→ filing_application(变更类)
|
|||
|
|
└── filing_change_detail
|
|||
|
|
|
|||
|
|
【全局】 sys_region / sys_dict / sys_dict_item / sys_attachment / audit_record
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 4. 系统与基础表(字段明细)
|
|||
|
|
|
|||
|
|
### 4.1 sys_user — 系统用户
|
|||
|
|
|
|||
|
|
> **作用**:平台登录账号,机构用户绑定机构,人员可关联账号。
|
|||
|
|
> **关系**:`org_id → org_info`;被 `staff_info.user_id` 引用。
|
|||
|
|
|
|||
|
|
原型:人员列表「账号」、重置密码;机构/监管登录主体。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| id | BIGINT | PK |
|
|||
|
|
| org_id | BIGINT | 所属机构,监管用户 NULL |
|
|||
|
|
| username | VARCHAR(64) | 登录账号,UK(username, deleted) |
|
|||
|
|
| password_hash | VARCHAR(255) | 密码 |
|
|||
|
|
| real_name | VARCHAR(64) | 姓名 |
|
|||
|
|
| phone | VARCHAR(20) | 手机 |
|
|||
|
|
| user_type | TINYINT | 1机构 2监管 3管理员 |
|
|||
|
|
| status | TINYINT | 0禁用 1正常 |
|
|||
|
|
| last_login_time | **DATETIME** | 最后登录 |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 4.2 sys_region — 行政区划
|
|||
|
|
|
|||
|
|
> **作用**:省市区街道社区树形区划,支撑机构地址与备案属地下拉。
|
|||
|
|
> **关系**:自关联 `parent_id`;被 `org_info`、`filing_application`、`filing_record` 引用。
|
|||
|
|
|
|||
|
|
原型:备案属地列表(省市区)、机构「所属县区/镇街道/村社区」。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| id | BIGINT | PK |
|
|||
|
|
| parent_id | BIGINT | 父级 |
|
|||
|
|
| region_code | VARCHAR(12) | 国标码 |
|
|||
|
|
| region_name | VARCHAR(64) | 名称 |
|
|||
|
|
| region_level | TINYINT | 1省2市3区县4街道5社区 |
|
|||
|
|
| sort_order | INT | 排序 |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 4.3 sys_dict / sys_dict_item — 数据字典
|
|||
|
|
|
|||
|
|
> **作用**:`sys_dict` 定义字典类型;`sys_dict_item` 存储具体选项值,供各业务状态下拉与展示。
|
|||
|
|
> **关系**:`sys_dict_item.dict_id → sys_dict.id`;业务表通过 dict_code 逻辑引用。
|
|||
|
|
|
|||
|
|
| dict_code | 用途 |
|
|||
|
|
|-----------|------|
|
|||
|
|
| filing_status | 未备案 / 已备案 / 驳回 |
|
|||
|
|
| cert_audit_status | 草稿 / 审核中 / 已通过 / 已驳回 |
|
|||
|
|
| org_business_status | 开业 / 停业等 |
|
|||
|
|
| staff_employment_status | 在职 / 离职 |
|
|||
|
|
| resign_audit_status | 未审核 / 已审核 / 已退回 |
|
|||
|
|
| equip_enable_status | 启用 / 禁用 |
|
|||
|
|
| material_format | pdf 等 |
|
|||
|
|
|
|||
|
|
### 4.4 sys_attachment — 通用附件
|
|||
|
|
|
|||
|
|
> **作用**:各业务上传文件的统一存储入口,通过 `biz_type + biz_id` 关联业务记录。
|
|||
|
|
> **关系**:逻辑关联多表,无物理外键;详见 §1.4。
|
|||
|
|
|
|||
|
|
见 §1.4。
|
|||
|
|
|
|||
|
|
### 4.5 audit_record — 审核流水(无 deleted)
|
|||
|
|
|
|||
|
|
> **作用**:跨业务审核操作流水,记录提交/通过/驳回/退回及意见。
|
|||
|
|
> **关系**:`biz_type + biz_id` 指向 org_certification / filing_application / staff_resignation / filing_change 等业务记录。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| biz_type | VARCHAR(32) | org_certification / filing_application / staff_resignation / filing_change |
|
|||
|
|
| biz_id | BIGINT | 业务ID |
|
|||
|
|
| action | VARCHAR(16) | submit / approve / reject / return |
|
|||
|
|
| from_status / to_status | VARCHAR(32) | 状态流转 |
|
|||
|
|
| opinion | TEXT | 意见 |
|
|||
|
|
| operate_time | **DATETIME** | 操作时间 |
|
|||
|
|
| create_time | **DATETIME** | |
|
|||
|
|
| create_by | VARCHAR(64) | 操作人 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 5. 机构与企业信息(字段明细)
|
|||
|
|
|
|||
|
|
### 5.1 org_info — 机构基本信息
|
|||
|
|
|
|||
|
|
> **作用**:机构核心主数据,承载认证填报与日常维护,是多数业务表的租户根。
|
|||
|
|
> **关系**:`region_*_id → sys_region`;被 org/staff/filing/equip 等全部 `org_id` 子表引用。详见 §3.2。
|
|||
|
|
|
|||
|
|
原型:认证信息、机构信息管理、备案申请第一步字段。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 原型字段 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| org_name | VARCHAR(200) | 生产经营单位名称 |
|
|||
|
|
| credit_code | VARCHAR(18) | 统一社会信用代码 |
|
|||
|
|
| register_address | VARCHAR(500) | 注册地址 |
|
|||
|
|
| business_address | VARCHAR(500) | 经营地址 / 办公地址 |
|
|||
|
|
| longitude / latitude | DECIMAL | 所在地坐标 |
|
|||
|
|
| region_county_id / region_street_id / region_community_id | BIGINT | 所属县区、镇街道、村社区 |
|
|||
|
|
| safety_industry_category | VARCHAR(100) | 安全生产监管行业类别 |
|
|||
|
|
| ownership_type | VARCHAR(32) | 归属类型 |
|
|||
|
|
| gb_industry_code | VARCHAR(20) | 国民经济行业分类 |
|
|||
|
|
| legal_representative / legal_rep_phone | | 法定代表人及电话 |
|
|||
|
|
| principal / principal_phone | | 主要负责人 |
|
|||
|
|
| safety_dept_head / safety_dept_phone | | 安全管理部门负责人 |
|
|||
|
|
| safety_vp / safety_vp_phone | | 主管安全副总 |
|
|||
|
|
| production_date | **DATE** | 投产日期 |
|
|||
|
|
| business_status | VARCHAR(16) | 企业经营状态 |
|
|||
|
|
| disclosure_url | VARCHAR(500) | 信息公开网址 |
|
|||
|
|
| workplace_area / archive_room_area | DECIMAL | 工作场所/档案室面积 |
|
|||
|
|
| full_time_evaluator_count | INT | 专职安全评价师数量 |
|
|||
|
|
| registered_safety_engineer_count | INT | 注册安全工程师数量 |
|
|||
|
|
| fixed_asset_total | DECIMAL | 固定资产总值(万元) |
|
|||
|
|
| org_intro | TEXT | 单位基本情况介绍 |
|
|||
|
|
| cert_status | TINYINT | 0草稿1审核中2已通过3已驳回 |
|
|||
|
|
| cert_submit_time | **DATETIME** | 认证提交 |
|
|||
|
|
| cert_approve_time | **DATETIME** | 认证通过 |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 5.2 org_certification_audit — 机构认证审核
|
|||
|
|
|
|||
|
|
> **作用**:记录每次机构认证提交与审核结果,保留提交快照。
|
|||
|
|
> **关系**:`org_id → org_info`;可与 `audit_record`(biz_type=org_certification)并行。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| org_id | BIGINT | 机构 |
|
|||
|
|
| audit_status | TINYINT | 1审核中2通过3驳回 |
|
|||
|
|
| submit_snapshot | JSON | 提交快照 |
|
|||
|
|
| audit_opinion | TEXT | 意见 |
|
|||
|
|
| audit_by | VARCHAR(64) | 审核人 |
|
|||
|
|
| audit_time | **DATETIME** | 审核时间 |
|
|||
|
|
| create_time / create_by | | 仅创建字段 |
|
|||
|
|
|
|||
|
|
### 5.3 org_qualification_cert — 机构资质证书
|
|||
|
|
|
|||
|
|
> **作用**:机构持有的资质证书台账,变更时可触发备案变更流程。
|
|||
|
|
> **关系**:`org_id → org_info`;附件 `sys_attachment(biz_type=org_cert)`。
|
|||
|
|
|
|||
|
|
原型:资质信息管理(证照类型、证书名称、编号、有效期、发证机关、证书图片)。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| org_id | BIGINT | 机构 |
|
|||
|
|
| cert_type | VARCHAR(64) | 证照类型 |
|
|||
|
|
| cert_name | VARCHAR(128) | 证书名称 |
|
|||
|
|
| cert_no | VARCHAR(64) | 证明编号 |
|
|||
|
|
| issue_org | VARCHAR(128) | 发证机关 |
|
|||
|
|
| issue_date | **DATE** | 发证日期 |
|
|||
|
|
| valid_start_date / valid_end_date | **DATE** | 有效期 |
|
|||
|
|
| remark | VARCHAR(500) | 备注 |
|
|||
|
|
| enable_status | TINYINT | 1正常0禁用(原型「禁用」) |
|
|||
|
|
| 附件 | sys_attachment | biz_type=org_cert |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 6. 组织与人员(字段明细)
|
|||
|
|
|
|||
|
|
### 6.1 org_department — 部门
|
|||
|
|
|
|||
|
|
> **作用**:机构组织架构树,支撑部门岗位管理与人员部门归属。
|
|||
|
|
> **关系**:`org_id → org_info`;`parent_id` 自关联;被 `org_position`、`staff_info` 引用。
|
|||
|
|
|
|||
|
|
原型:部门岗位管理,树形筛选(第一级别、第二级别…)。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| org_id | BIGINT | 机构 |
|
|||
|
|
| parent_id | BIGINT | 父部门,0根 |
|
|||
|
|
| dept_name | VARCHAR(64) | 部门名称 |
|
|||
|
|
| dept_level | VARCHAR(32) | 部门级别 |
|
|||
|
|
| leader_name | VARCHAR(64) | 负责人 |
|
|||
|
|
| sort_order | INT | 排序 |
|
|||
|
|
| tree_path | VARCHAR(256) | 物化路径 |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 6.2 org_position — 岗位
|
|||
|
|
|
|||
|
|
> **作用**:部门下岗位定义,含岗位职责说明。
|
|||
|
|
> **关系**:`org_id → org_info`;`dept_id → org_department`;被 `staff_info.position_id` 引用。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| org_id / dept_id | BIGINT | 机构、部门 |
|
|||
|
|
| position_name | VARCHAR(64) | 岗位名称 |
|
|||
|
|
| duty_desc | VARCHAR(500) | 岗位职责 |
|
|||
|
|
| remark | VARCHAR(255) | 备注 |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 6.3 staff_info — 人员信息
|
|||
|
|
|
|||
|
|
> **作用**:机构从业人员主数据,关联部门岗位与账号,是证书/变更/离职的上游。
|
|||
|
|
> **关系**:`org_id → org_info`;`dept_id → org_department`;`position_id → org_position`;`user_id → sys_user`;下游见 staff_* / filing_application_staff。
|
|||
|
|
|
|||
|
|
原型:人员列表(用户名称、账号、部门、岗位、证照名称);详情(出生日期、性别、身份证、学历、资质范围、专业能力等)。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 原型 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| staff_name | VARCHAR(64) | 姓名 |
|
|||
|
|
| gender | TINYINT | 性别 |
|
|||
|
|
| id_card_no | VARCHAR(18) | 身份证号 |
|
|||
|
|
| birth_date | **DATE** | 出生日期 |
|
|||
|
|
| account | VARCHAR(32) | 账号 |
|
|||
|
|
| dept_id / position_id | BIGINT | 部门、岗位 |
|
|||
|
|
| education / graduate_school / major | | 学历、院校、专业 |
|
|||
|
|
| home_address / office_address | | 现住/办公地址 |
|
|||
|
|
| person_type | VARCHAR(32) | 人员类型 |
|
|||
|
|
| job_title / professional_title | | 职务、职称 |
|
|||
|
|
| qualification_scope | VARCHAR(255) | 资质范围 |
|
|||
|
|
| career_level_cert_no | VARCHAR(64) | 职业等级及证书编号 |
|
|||
|
|
| is_registered_safety_engineer | TINYINT | 是否注册安全工程师 |
|
|||
|
|
| self_declared_ability | TEXT | 自我申报专业能力 |
|
|||
|
|
| work_experience | TEXT | 主要学习工作经历 |
|
|||
|
|
| publications | TEXT | 专著专利论文等 |
|
|||
|
|
| employment_status | TINYINT | 1在职2离职 |
|
|||
|
|
| change_count | INT | 信息变更数(列表冗余) |
|
|||
|
|
| user_id | BIGINT | 关联 sys_user |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 6.4 staff_certificate — 人员证书
|
|||
|
|
|
|||
|
|
> **作用**:人员执业/作业证书明细,列表「证照名称」数据来源。
|
|||
|
|
> **关系**:`staff_id → staff_info`;`org_id → org_info`;附件 `sys_attachment(staff_cert)`;可被 `filing_application_staff_cert` 快照引用。
|
|||
|
|
|
|||
|
|
原型:证书类型、作业类别、编号、有效期、复核日期、证书图片。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| staff_id / org_id | BIGINT | 人员、机构 |
|
|||
|
|
| cert_name / cert_category / cert_work_category | | 证照名称、类别、作业类别 |
|
|||
|
|
| cert_no | VARCHAR(64) | 证书编号 |
|
|||
|
|
| issue_org | VARCHAR(128) | 发证机关 |
|
|||
|
|
| valid_start_date / valid_end_date / review_date | **DATE** | 有效期、复核 |
|
|||
|
|
| 附件 | sys_attachment | biz_type=staff_cert |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 6.5 staff_change_log — 人员变更记录
|
|||
|
|
|
|||
|
|
> **作用**:人员字段变更的审计日志,驱动「信息变更数」统计。
|
|||
|
|
> **关系**:`staff_id → staff_info`;`org_id → org_info`;只增不改,无 deleted。
|
|||
|
|
|
|||
|
|
原型:变更事项、变更时间、操作人;人员变更管理列表「信息变更数」。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| staff_id / org_id | BIGINT | |
|
|||
|
|
| change_item | VARCHAR(64) | 变更事项 |
|
|||
|
|
| field_name | VARCHAR(64) | 程序字段名 |
|
|||
|
|
| old_value / new_value | VARCHAR(500) | 变更前后 |
|
|||
|
|
| change_time | **DATETIME** | 变更时间 |
|
|||
|
|
| create_time / create_by | | 操作人 |
|
|||
|
|
|
|||
|
|
### 6.6 staff_resignation_apply — 人员离职申请
|
|||
|
|
|
|||
|
|
> **作用**:离职申请与审核,通过后更新 `staff_info.employment_status`。
|
|||
|
|
> **关系**:`staff_id → staff_info`;`org_id → org_info`;附件 `sys_attachment(resign_report)`;可写 `audit_record`。
|
|||
|
|
|
|||
|
|
原型:申请人、申请时间、离职原因、备注、预计离职日期、离职通知报告;审核状态、退回原因。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| staff_id / org_id | BIGINT | |
|
|||
|
|
| applicant_name | VARCHAR(64) | 申请人 |
|
|||
|
|
| apply_time | **DATETIME** | 申请时间 |
|
|||
|
|
| expected_leave_date | **DATE** | 预计离职日期 |
|
|||
|
|
| leave_reason / remark | TEXT | 离职原因、备注 |
|
|||
|
|
| audit_status | TINYINT | 0未审核1已审核2已退回 |
|
|||
|
|
| reject_reason | TEXT | 退回原因 |
|
|||
|
|
| audit_by / audit_time | | 审核人、审核时间 |
|
|||
|
|
| 附件 | sys_attachment | biz_type=resign_report |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 7. 装备管理(字段明细)
|
|||
|
|
|
|||
|
|
### 7.1 equip_info — 装备信息
|
|||
|
|
|
|||
|
|
> **作用**:评价机构仪器设备台账,独立主数据。
|
|||
|
|
> **关系**:`org_id → org_info`;无下游业务表(二期监控可引用)。
|
|||
|
|
|
|||
|
|
原型:仪器分类、设备类型、设备名称、型号、流量、厂家、校准单位/初值、现场校验类型、是否双路、启用/禁用。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| instrument_category / instrument_type / device_type | VARCHAR | 分类 |
|
|||
|
|
| device_name / model | | 名称、型号 |
|
|||
|
|
| flow_desc / min_flow / max_flow | | 流量说明 |
|
|||
|
|
| manufacturer | VARCHAR(128) | 厂家 |
|
|||
|
|
| calibration_unit / calibration_initial_value | | 校准 |
|
|||
|
|
| on_site_calibration_type | VARCHAR(64) | 现场校验类型 |
|
|||
|
|
| is_dual_channel | TINYINT | 是否双路 |
|
|||
|
|
| enable_status | TINYINT | 1启用0禁用 |
|
|||
|
|
| purchase_date | **DATE** | 登记日期 |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 8. 资质备案(字段明细)
|
|||
|
|
|
|||
|
|
### 8.1 filing_application — 备案申请主表
|
|||
|
|
|
|||
|
|
> **作用**:备案 4 步向导流程主表,串联材料/人员/承诺书子表,审核通过后生成 `filing_record`。
|
|||
|
|
> **关系**:`org_id → org_info`;`filing_region_id → sys_region`;子表 `application_id`;详见 §3.5。
|
|||
|
|
|
|||
|
|
原型:4 步向导 + 备案变更编辑;列表筛选项(备案编号、备案属地、备案状态、备案单位)。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 步骤/说明 |
|
|||
|
|
|------|------|-----------|
|
|||
|
|
| application_no | VARCHAR(32) | 申请编号 |
|
|||
|
|
| application_type | TINYINT | 1新备案2变更备案 |
|
|||
|
|
| filing_region_id | BIGINT | 备案属地 |
|
|||
|
|
| filing_unit_name / filing_unit_type | | 备案单位、类型 |
|
|||
|
|
| register_address / office_address | | 注册/办公地址 |
|
|||
|
|
| credit_code / qualification_cert_no | | 信用代码、资质证书编号 |
|
|||
|
|
| legal_rep_and_phone / contact_and_phone | | 法人及电话、联系人及电话 |
|
|||
|
|
| disclosure_url | | 信息公开网址 |
|
|||
|
|
| fixed_asset_total / archive_room_area | | 固定资产、档案室面积 |
|
|||
|
|
| full_time_evaluator_count / registered_safety_engineer_count | | 评价师、注安师数量 |
|
|||
|
|
| workplace_area / org_intro | | 建筑面积、单位介绍 |
|
|||
|
|
| business_scope | VARCHAR(500) | 备案安全评价业务范围 |
|
|||
|
|
| current_step | TINYINT | 1基本2材料3人员4承诺书 |
|
|||
|
|
| apply_status | TINYINT | 0草稿1提交2审核中3通过4驳回 |
|
|||
|
|
| filing_record_id | BIGINT | 通过后关联 |
|
|||
|
|
| parent_filing_record_id | BIGINT | 变更备案原记录 |
|
|||
|
|
| submit_time / approve_time | **DATETIME** | 提交、通过时间 |
|
|||
|
|
| 附件 | sys_attachment | biz_type=org_intro |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 8.2 filing_application_material — 申请材料(步骤2)
|
|||
|
|
|
|||
|
|
> **作用**:备案向导第 2 步材料清单行。
|
|||
|
|
> **关系**:`application_id → filing_application`;附件 `sys_attachment(filing_material)`。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 原型 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| material_content | VARCHAR(255) | 申请材料目录 |
|
|||
|
|
| material_type | VARCHAR(32) | 纸质版扫描件 |
|
|||
|
|
| file_format | VARCHAR(16) | pdf |
|
|||
|
|
| remark | VARCHAR(500) | 注释 |
|
|||
|
|
| sort_order | INT | 内容序号 |
|
|||
|
|
| 附件 | sys_attachment | biz_type=filing_material |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 8.3 filing_application_staff — 备案人员快照(步骤3)
|
|||
|
|
|
|||
|
|
> **作用**:备案时点人员快照,与 `staff_info` 隔离。
|
|||
|
|
> **关系**:`application_id → filing_application`;`staff_id → staff_info`(可选);下游 `filing_application_staff_cert`。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 原型 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| staff_id | BIGINT | 可选,来自 staff_info |
|
|||
|
|
| staff_name | VARCHAR(64) | 人员姓名 |
|
|||
|
|
| person_type / job_title / professional_title | | 类型、职务、职称 |
|
|||
|
|
| sort_order | INT | 序号 |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 8.4 filing_application_staff_cert — 备案人员证书快照
|
|||
|
|
|
|||
|
|
> **作用**:备案人员证书时点快照,支持「查看证书」。
|
|||
|
|
> **关系**:`application_staff_id → filing_application_staff`;`staff_cert_id → staff_certificate`(可选)。
|
|||
|
|
|
|||
|
|
原型:人员信息步骤「查看证书」— 与 `staff_certificate` 字段对齐,申请时独立快照。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| application_id | BIGINT | 备案申请 |
|
|||
|
|
| application_staff_id | BIGINT | 备案人员 |
|
|||
|
|
| staff_cert_id | BIGINT | 来源证书,可空 |
|
|||
|
|
| cert_name / cert_category / cert_work_category / cert_no | | 同 staff_certificate |
|
|||
|
|
| valid_start_date / valid_end_date / review_date | **DATE** | |
|
|||
|
|
| 附件 | sys_attachment | biz_type=filing_staff_cert |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 8.5 filing_commitment — 法定代表人承诺书(步骤4)
|
|||
|
|
|
|||
|
|
> **作用**:备案第 4 步法人承诺签署记录。
|
|||
|
|
> **关系**:`application_id → filing_application`(1:1);签章附件走 `sys_attachment`。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| application_id | BIGINT | 1:1 |
|
|||
|
|
| legal_rep_name | VARCHAR(64) | 法定代表人 |
|
|||
|
|
| sign_date | **DATE** | 签署日期 |
|
|||
|
|
| content_version | VARCHAR(16) | 模板版本 |
|
|||
|
|
| 签名/盖章 | sys_attachment | filing_commitment_sign / seal |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 8.6 filing_record — 已备案资质
|
|||
|
|
|
|||
|
|
> **作用**:备案通过后正式台账,「已备案资质管理」列表数据源。
|
|||
|
|
> **关系**:`org_id → org_info`;`application_id → filing_application`;`filing_region_id → sys_region`;下游 `filing_change_record`。
|
|||
|
|
|
|||
|
|
原型列表:备案属地、备案单位、备案编号、备案业务范围、备案状态、变更次数。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| org_id | BIGINT | 机构 |
|
|||
|
|
| application_id | BIGINT | 来源申请 |
|
|||
|
|
| filing_no | VARCHAR(32) | 备案编号 |
|
|||
|
|
| filing_region_id | BIGINT | 备案属地 |
|
|||
|
|
| filing_unit_name | VARCHAR(200) | 备案单位 |
|
|||
|
|
| business_scope | VARCHAR(500) | 备案业务范围 |
|
|||
|
|
| filing_status | VARCHAR(16) | 未备案/已备案/驳回 |
|
|||
|
|
| change_count | INT | 变更次数 |
|
|||
|
|
| filing_time | **DATETIME** | 备案时间 |
|
|||
|
|
| snapshot_json | JSON | 通过时全量快照 |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 8.7 filing_change_record — 备案变更
|
|||
|
|
|
|||
|
|
> **作用**:已备案机构变更批次主记录,含变更次数统计。
|
|||
|
|
> **关系**:`filing_record_id → filing_record`;`change_application_id → filing_application`;下游 `filing_change_detail`。
|
|||
|
|
|
|||
|
|
原型:备案变更管理;人员/资质变更后进入;历史变更记录。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| filing_record_id / org_id | BIGINT | |
|
|||
|
|
| change_application_id | BIGINT | 变更类 filing_application |
|
|||
|
|
| change_type | VARCHAR(32) | personnel / qualification / org_info / mixed |
|
|||
|
|
| change_summary | VARCHAR(500) | 摘要 |
|
|||
|
|
| change_status | TINYINT | 0进行中1完成2驳回 |
|
|||
|
|
| change_time | **DATETIME** | 完成时间 |
|
|||
|
|
| + 通用字段 | | |
|
|||
|
|
|
|||
|
|
### 8.8 filing_change_detail — 备案变更明细
|
|||
|
|
|
|||
|
|
> **作用**:备案变更字段级前后值对比明细。
|
|||
|
|
> **关系**:`change_record_id → filing_change_record`;只增不改。
|
|||
|
|
|
|||
|
|
原型:「由张三变更为李四」「由152…变更为187…」。
|
|||
|
|
|
|||
|
|
| 字段 | 类型 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| change_record_id | BIGINT | 变更记录 |
|
|||
|
|
| change_field / change_field_label | | 字段、展示名 |
|
|||
|
|
| old_value / new_value | VARCHAR(500) | 变更前后 |
|
|||
|
|
| create_time / create_by | | 仅创建 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 9. 业务流程与状态
|
|||
|
|
|
|||
|
|
### 9.1 机构认证(org_info.cert_status)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
0草稿 --暂存/提交--> 1审核中 --通过--> 2已通过
|
|||
|
|
└──驳回--> 3已驳回 --再提交--> 1审核中
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 9.2 备案申请向导
|
|||
|
|
|
|||
|
|
| current_step | 页面 | 表 |
|
|||
|
|
|:--:|------|-----|
|
|||
|
|
| 1 | 基本信息 + 上传附件 | filing_application + sys_attachment(org_intro) |
|
|||
|
|
| 2 | 申请材料清单 | filing_application_material + sys_attachment |
|
|||
|
|
| 3 | 人员信息 + 证书 | filing_application_staff + filing_application_staff_cert |
|
|||
|
|
| 4 | 法定代表人承诺书 | filing_commitment + sys_attachment |
|
|||
|
|
|
|||
|
|
提交后 `apply_status` → 1/2;监管审核通过 → 写入 `filing_record`,`filing_application.filing_record_id` 回写。
|
|||
|
|
|
|||
|
|
### 9.3 备案变更触发
|
|||
|
|
|
|||
|
|
机构存在有效 `filing_record` 时,以下变更应生成 `filing_change_record` + `filing_change_detail`,并 `change_count + 1`:
|
|||
|
|
|
|||
|
|
- `staff_info` / `staff_certificate` 增删改
|
|||
|
|
- `org_qualification_cert` 变更
|
|||
|
|
- `org_info` 法人、联系方式等关键字段变更
|
|||
|
|
|
|||
|
|
### 9.4 人员离职
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
staff_resignation_apply.audit_status:
|
|||
|
|
0未审核 --通过--> 1已审核 → staff_info.employment_status = 2
|
|||
|
|
└──退回--> 2已退回
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 10. 索引与查询建议
|
|||
|
|
|
|||
|
|
1. 列表:`org_id + deleted + 状态字段 + create_time DESC`
|
|||
|
|
2. 唯一键与逻辑删除:业务唯一键使用 `(code, deleted)` 组合,避免软删后无法重建
|
|||
|
|
3. MyBatis-Plus 全局:`@TableLogic` 自动追加 `deleted = 0`
|
|||
|
|
4. 流水表不加 `deleted`,不做更新
|
|||
|
|
5. 大 JSON(snapshot_json)可按年归档
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 11. 表清单总览(共 24 张)
|
|||
|
|
|
|||
|
|
| # | 表名 | 作用 | 主要关联 | 通用字段 |
|
|||
|
|
|---|------|------|----------|----------|
|
|||
|
|
| 1 | sys_user | 登录账号与权限主体 | org_info ← org_id;→ staff_info | 完整 |
|
|||
|
|
| 2 | sys_region | 行政区划树 | 自关联 parent_id;→ org_info / filing_* | 完整 |
|
|||
|
|
| 3 | sys_dict | 字典类型 | → sys_dict_item | 完整 |
|
|||
|
|
| 4 | sys_dict_item | 字典选项值 | sys_dict ← dict_id | 完整 |
|
|||
|
|
| 5 | sys_attachment | 统一文件存储 | 逻辑关联各业务 biz_type+biz_id | 完整 |
|
|||
|
|
| 6 | audit_record | 跨业务审核流水 | 逻辑关联各审核业务 | 仅 create |
|
|||
|
|
| 7 | org_info | **机构租户根**、认证与主数据 | → 几乎全部 org_id 子表 | 完整 |
|
|||
|
|
| 8 | org_certification_audit | 机构认证审核历史 | org_info ← org_id | 仅 create |
|
|||
|
|
| 9 | org_qualification_cert | 机构资质证书 | org_info ← org_id;→ sys_attachment | 完整 |
|
|||
|
|
| 10 | org_department | 部门组织树 | org_info ← org_id;→ org_position / staff_info | 完整 |
|
|||
|
|
| 11 | org_position | 部门岗位 | org_department ← dept_id;→ staff_info | 完整 |
|
|||
|
|
| 12 | staff_info | 人员主数据 | org_info / dept / position / sys_user;→ staff_* | 完整 |
|
|||
|
|
| 13 | staff_certificate | 人员证书 | staff_info ← staff_id;→ filing_staff_cert 快照 | 完整 |
|
|||
|
|
| 14 | staff_change_log | 人员变更审计 | staff_info ← staff_id | 仅 create |
|
|||
|
|
| 15 | staff_resignation_apply | 离职申请与审核 | staff_info ← staff_id;→ sys_attachment | 完整 |
|
|||
|
|
| 16 | equip_info | 仪器设备台账 | org_info ← org_id | 完整 |
|
|||
|
|
| 17 | filing_application | **备案流程主表** | org_info / sys_region;→ filing_* 子表 / filing_record | 完整 |
|
|||
|
|
| 18 | filing_application_material | 备案材料(步骤2) | filing_application ← application_id | 完整 |
|
|||
|
|
| 19 | filing_application_staff | 备案人员快照(步骤3) | filing_application ← application_id;→ staff_cert 快照 | 完整 |
|
|||
|
|
| 20 | filing_application_staff_cert | 备案人员证书快照 | filing_application_staff ← application_staff_id | 完整 |
|
|||
|
|
| 21 | filing_commitment | 法人承诺书(步骤4) | filing_application ← application_id(1:1) | 完整 |
|
|||
|
|
| 22 | filing_record | **已备案正式台账** | filing_application ← application_id;→ filing_change_record | 完整 |
|
|||
|
|
| 23 | filing_change_record | 备案变更批次 | filing_record ← filing_record_id;→ change_detail | 完整 |
|
|||
|
|
| 24 | filing_change_detail | 备案变更字段明细 | filing_change_record ← change_record_id | 仅 create |
|
|||
|
|
|
|||
|
|
> 各表详细说明见 **§3 数据表作用与关系说明**;字段定义见 **§4–§8**。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 12. DDL 脚本
|
|||
|
|
|
|||
|
|
完整建表见 [`database-schema.sql`](./database-schema.sql)。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 13. 修订记录
|
|||
|
|
|
|||
|
|
| 版本 | 日期 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| v1.0 | 2026-06-17 | 初版 |
|
|||
|
|
| v1.1 | 2026-06-17 | 对齐 MyBatis-Plus 通用字段;DATE/DATETIME 区分;新增 filing_application_staff_cert;附件统一 sys_attachment |
|
|||
|
|
| v1.2 | 2026-06-17 | 补充每张表作用与关系说明(§3)、表清单关联列(§11)、字段节引用块 |
|