# 安全评价系统二期数据库设计文档 | 日期 | 版本 | 说明 | |------|------|------| | 2026.07.17 | v1.0.0 | 二期建表设计 | 脚本:`docs/db/phase2/init-phase2.sql` 节点引擎专项:`docs/db/phase2/节点引擎设计与使用说明.md` --- ## 一、设计约定 | 项 | 约定 | |----|------| | 字符集 | utf8mb4 / utf8mb4_0900_ai_ci | | 命名 | 库表字段小写 + 下划线,表名 ≤32 字符 | | 外键 | 禁止物理外键;逻辑关联由业务层维护 | | 标识字段 | `xxx_flag`,tinyint(1=是,2=否) | | 字典字段 | `xxx_code` + `xxx_name` | | 金额 | 单位:分,类型 bigint | | 文件 | 仅存 URL / 文件服务地址 | | 逻辑删除 | `delete_enum`:`true` / `false` | | 业务主表公共字段 | delete_enum、remarks、create_name、update_name、tenant_id、org_id、version、create_time、update_time、create_id、update_id、env | | 站内消息 | 复用 GBS `jjb-saas-message`(站内信 / 待办 / 催办 / 短信),本库不建消息表 | 本脚本仅新增二期表,不改建一期已有表与业务代码。 --- ## 二、一期复用表 | 表 | 用途 | |----|------| | org_info | 机构主数据 | | org_qualification | 资质证照 | | org_department / org_position | 部门岗位 | | org_personnel / org_personnel_cert | 人员与证书 | | org_equipment | 装备 | | org_personnel_change / org_resign_apply | 人员变更、离职 | | qual_filing 及材料/承诺/人员/装备/变更子表 | 资质申请、备案、变更 | | qual_filing_expert | 专家库 | | account | 账号 | --- ## 三、二期新建表(30) | 序号 | 表名 | 域 | 作用 | |------|------|----|------| | 1 | qual_review_task | 资质审核 | 多阶段审核任务 | | 2 | qual_review_action | 资质审核 | 审核/确认/反馈动作流水 | | 3 | qual_review_expert_assign | 资质审核 | 专家指派与核验 | | 4 | qual_site_review_notice | 资质审核 | 现场审查通知(含机构确认与反馈) | | 5 | qual_publicity | 资质审核 | 备案公示 | | 6 | biz_rule | 规则 | 资质保持 / 风险预警规则(domain_code 区分) | | 7 | qual_keep_check | 资质保持 | 机构维度校验结果头 | | 8 | qual_keep_check_item | 资质保持 | 分项结论与来源快照 | | 9 | risk_warning | 风险预警 | 预警主单 | | 10 | risk_warning_action | 风险预警 | 处置流水 | | 11 | eval_customer | 安评业务 | 安评客户 | | 12 | eval_project | 安评业务 | 安评项目主表 | | 13 | eval_project_member | 安评业务 | 项目成员 | | 14 | eval_project_doc | 安评业务 | 项目资料协同 | | 15 | eval_project_doc_ver | 安评业务 | 资料版本 | | 16 | eval_node_def | 节点引擎 | 节点定义(可配置增删) | | 17 | eval_node_inst | 节点引擎 | 项目节点实例 | | 18 | eval_node_form | 节点引擎 | 通用节点表单 | | 19 | eval_node_form_item | 节点引擎 | 表单分项 / 参与人 | | 20 | eval_node_file | 节点引擎 | 节点附件 | | 21 | eval_survey | 踏勘专表 | 现场踏勘主单 | | 22 | eval_survey_checkin | 踏勘专表 | 现场打卡(含 APP 任务状态) | | 23 | eval_report_draft | 报告专表 | 报告编制稿 | | 24 | eval_sign_task | 签字 | 签字任务 | | 25 | eval_sign_record | 签字 | 签字记录 | | 26 | eval_report | 报告库 | 报告主表 | | 27 | eval_report_spotcheck | 报告库 | 抽查与整改复核 | | 28 | org_profile_score | 画像 | 机构画像得分(含 metric_json) | | 29 | insp_notice | 监督检查 | 告知主单(含检查结果) | | 30 | insp_notice_material | 监督检查 | 材料清单与反馈 | --- ## 四、逻辑关联 ``` org_info ├── qual_filing ── qual_review_task ──┬── qual_review_action │ ├── qual_review_expert_assign │ ├── qual_site_review_notice │ └── qual_publicity ├── biz_rule(KEEP) ── qual_keep_check ── qual_keep_check_item ├── biz_rule(WARNING) ── risk_warning ── risk_warning_action ├── eval_customer ── eval_project ──┬── eval_project_member │ ├── eval_project_doc ── eval_project_doc_ver │ ├── eval_node_inst ← eval_node_def │ │ ├── eval_node_form ── item / file │ │ ├── eval_survey ── eval_survey_checkin │ │ ├── eval_report_draft │ │ └── eval_sign_task ── eval_sign_record │ └── eval_report ── eval_report_spotcheck ├── org_profile_score └── insp_notice ── insp_notice_material ``` | 逻辑字段 | 指向 | |----------|------| | org_id | org_info.id | | filing_id | qual_filing.id | | expert_id | qual_filing_expert.id | | customer_id | eval_customer.id | | project_id | eval_project.id | | node_def_id / node_code | eval_node_def | | node_inst_id | eval_node_inst.id | | form_id | eval_node_form.id | | survey_id | eval_survey.id | | warning_id / source_warning_id | risk_warning.id | | sign_task_id | eval_sign_task.id | | report_id | eval_report.id | | rule_id | biz_rule.id | | personnel_id | org_personnel.id | | account_id | account.id | --- ## 五、业务数据流 ### 5.1 资质审核与保持预警 机构填报 `qual_filing` → 生成 `qual_review_task` → 审核动作 / 专家核验 / 现场审查通知 → 公示 `qual_publicity` → 按 `biz_rule(KEEP)` 校验写入 `qual_keep_check*` → 异常生成 `risk_warning` → `risk_warning_action` 闭环。 ### 5.2 安评项目 维护 `eval_customer` → 创建 `eval_project` 及成员、资料 → 按 `eval_node_def` 生成 `eval_node_inst` → 通用节点办理表单;踏勘 / 报告编辑 / 签字走专表 → 归档生成 `eval_report` → 抽查与画像计分。 ### 5.3 监督检查 创建 `insp_notice`(可关联预警或项目)→ 机构确认与材料反馈 → 结果回写告知主表。 ### 5.4 消息通知 业务状态变更后调用 GBS `MessageFacade` 发送站内信 / 待办 / 短信;本库不落消息实体。 --- ## 六、状态字典 | 对象 | 字段 | 取值 | |------|------|------| | 审核任务 | stage_code | 1初审 2专家核验 3现场审查 4会审 5许可审批 6已办结 | | 审核任务 | result_code | 1通过 2打回 3进行中 | | 预警 | category_code | 1人员 2机构资质 3项目风险 4资质临期 | | 预警 | handle_stage_code | 1未处理 2已发机构 3待复核 4已闭环 | | 项目 | status_code | 1草稿 2进行中 3已归档 4已作废 | | 节点实例 | node_status_code | 1未开始 2进行中 3已完成 4退回 | | 监督检查 | status_code | 1已下发 2已确认 3已反馈 4已办结 | 默认项目节点编码见《节点引擎设计与使用说明》。 --- ## 七、执行说明 ```bash mysql -u -p < docs/db/phase2/init-phase2.sql ``` 在测试库验证后再用于正式环境;勿对一期生产表做破坏性变更。