safety-eval-service/docs/db/phase2/数据库设计文档-二期.md

9.6 KiB
Raw Blame History

安全评价系统二期数据库设计文档

日期 版本 说明
2026.07.20 v1.0.0 二期建表(八节点专表,无流程引擎)

脚本:docs/db/phase2/init-phase2.sql


一、设计约定

约定
字符集 utf8mb4 / utf8mb4_0900_ai_ci
命名 小写 + 下划线,表名 ≤32 字符
外键 禁止物理外键;逻辑关联由业务层维护
标识 xxx_flag1是 / 2否
金额 单位bigint
文件 仅存 URL
逻辑删除 delete_enumtrue / false
公共字段 delete_enum、remarks、create_name、update_name、tenant_id、org_id视表、version、create_time、update_time、create_id、update_id、env
消息 复用 GBS本库不建消息表
项目节点 按原型 8 个法定节点各建专表;节点定义/实例/通用表单引擎表

二、一期复用表

表名 作用 原型端 一级菜单 二级菜单
org_* / account 机构主数据与账号 监管 / 机构 基础信息管理 / 企业信息管理 机构账号、已备案机构、评价师、机构/资质/人员/装备等
qual_filing* / qual_filing_expert 资质申请备案变更专家 监管 / 机构 资质审核 / 资质申请和备案告知 资质备案审核、确认、专家核验、公示、变更;资质申请、已有资质备案、现场审查通知

三、二期新建表23— 表名、作用与原型菜单

1. 监管支撑5

表名 作用 原型端 一级菜单 二级菜单
eval_report 报告库主表 监管 / 机构 安评机构监督管理 / 安评报告库管理 安评报告数据库;报告库
eval_report_spotcheck 报告抽查整改 监管 安评机构监督管理 安评报告数据库
org_profile_score 安全评价画像得分 监管 安评机构监督管理 安全评价画像
insp_notice 监督检查告知 监管 / 机构 — / 监督检查通知管理 监督检查告知;监督检查通知
insp_notice_material 检查材料反馈 监管 / 机构 — / 监督检查通知管理 监督检查告知;监督检查通知

2. 安评项目与八节点18

表名 作用 原型端 一级菜单 二级菜单 / 页面
eval_customer 安评客户 机构 安评业务管理 安评客户管理
eval_project 项目主表 机构 / 监管 安评业务管理 / 安评项目管理 安评项目管理、我的项目、项目进度管理;安评项目实时监控
eval_project_member 项目成员 机构 安评业务管理 安评项目管理、我的项目03 项目组成立)
eval_project_doc 项目资料协同 机构 安评业务管理 项目资料协同库
eval_risk_analysis 01 风险分析 机构 / 监管 安评业务管理 / 安评项目管理 我的项目 → 01 风险分析;项目实时监控(查看)
eval_risk_participant 01 参与人签字 机构 安评业务管理 我的项目 → 01 风险分析
eval_contract 02 业务合同 机构 / 监管 安评业务管理 / 安评项目管理 我的项目 → 02 业务合同;项目实时监控
eval_team 03 项目组成立 机构 / 监管 安评业务管理 / 安评项目管理 我的项目 → 03 项目组成立;项目实时监控
eval_survey 04 现场踏勘主表 机构 / 监管 / APP 安评业务管理 / 安评项目管理 我的项目 → 04 现场踏勘项目踏勘监管APP 现场踏勘
eval_survey_notice 04 从业告知 机构 / 监管 安评业务管理 / 安评项目管理 我的项目 → 04项目踏勘监管
eval_survey_checkin 04 现场打卡 机构 / 监管 / APP 安评业务管理 / 安评项目管理 我的项目 → 04项目踏勘监管APP 现场踏勘
eval_survey_attach 04 踏勘附件 机构 / 监管 安评业务管理 / 安评项目管理 我的项目 → 04检查表/整改/复查等)
eval_report_draft 05 报告编制稿 机构 / 监管 安评业务管理 / 安评项目管理 我的项目 → 05 报告编制;项目实时监控
eval_internal_review 06 内部审核 机构 / 监管 安评业务管理 / 安评项目管理 我的项目 → 06 内部审核
eval_tech_review 07 技术审核 机构 / 监管 安评业务管理 / 安评项目管理 我的项目 → 07 技术审核
eval_process_control 08 过程控制 机构 / 监管 安评业务管理 / 安评项目管理 我的项目 → 08 过程控制
eval_sign_task 签字任务 机构 / APP 安评业务管理 我的项目(报告/审核签字APP 签字管理
eval_sign_record 签字记录 机构 / APP 安评业务管理 同上

培训、风险预警中心、资质保持监控、机构端风险预警管理不在二期库表范围。


四、ER 图一:监管支撑(第 1 组)

erDiagram
  insp_notice ||--o{ insp_notice_material : "notice_id"
  eval_report ||--o{ eval_report_spotcheck : "report_id"
  org_info ||--o{ org_profile_score : "org_id"
  org_info ||--o{ insp_notice : "org_id"
  org_info ||--o{ eval_report : "org_id"

  eval_report {
    bigint id PK
    bigint org_id
    bigint project_id
  }
  eval_report_spotcheck {
    bigint id PK
    bigint report_id
  }
  org_profile_score {
    bigint id PK
    bigint org_id
    string score_period
  }
  insp_notice {
    bigint id PK
    bigint org_id
    bigint source_ref_id
  }
  insp_notice_material {
    bigint id PK
    bigint notice_id
  }

五、ER 图二:安评项目与八节点(第 2 组)

erDiagram
  eval_customer ||--o{ eval_project : "customer_id"
  eval_project ||--o{ eval_project_member : "project_id"
  eval_project ||--o{ eval_project_doc : "project_id"
  eval_project ||--o| eval_risk_analysis : "project_id"
  eval_risk_analysis ||--o{ eval_risk_participant : "risk_id"
  eval_project ||--o| eval_contract : "project_id"
  eval_project ||--o| eval_team : "project_id"
  eval_project ||--o| eval_survey : "project_id"
  eval_survey ||--o| eval_survey_notice : "survey_id"
  eval_survey ||--o{ eval_survey_checkin : "survey_id"
  eval_survey ||--o{ eval_survey_attach : "survey_id"
  eval_project ||--o{ eval_report_draft : "project_id"
  eval_project ||--o| eval_internal_review : "project_id"
  eval_project ||--o| eval_tech_review : "project_id"
  eval_project ||--o| eval_process_control : "project_id"
  eval_report_draft ||--o| eval_internal_review : "draft_id"
  eval_report_draft ||--o| eval_tech_review : "draft_id"
  eval_project ||--o{ eval_sign_task : "project_id"
  eval_sign_task ||--o{ eval_sign_record : "sign_task_id"
  eval_project ||--o{ eval_report : "project_id"

  eval_customer {
    bigint id PK
    string customer_name
  }
  eval_project {
    bigint id PK
    bigint customer_id
    string project_no
    int status_code
  }
  eval_project_member {
    bigint id PK
    bigint project_id
    bigint personnel_id
    string role_code
  }
  eval_project_doc {
    bigint id PK
    bigint project_id
    string latest_file_url
  }
  eval_risk_analysis {
    bigint id PK
    bigint project_id
    int risk_level_code
    int status_code
  }
  eval_risk_participant {
    bigint id PK
    bigint risk_id
    bigint personnel_id
  }
  eval_contract {
    bigint id PK
    bigint project_id
    string contract_no
    bigint amount_fen
  }
  eval_team {
    bigint id PK
    bigint project_id
    bigint leader_personnel_id
  }
  eval_survey {
    bigint id PK
    bigint project_id
    int status_code
  }
  eval_survey_notice {
    bigint id PK
    bigint survey_id
  }
  eval_survey_checkin {
    bigint id PK
    bigint survey_id
  }
  eval_survey_attach {
    bigint id PK
    bigint survey_id
    string attach_type_code
  }
  eval_report_draft {
    bigint id PK
    bigint project_id
    int draft_version_no
  }
  eval_internal_review {
    bigint id PK
    bigint project_id
  }
  eval_tech_review {
    bigint id PK
    bigint project_id
  }
  eval_process_control {
    bigint id PK
    bigint project_id
    tinyint precheck_pass_flag
  }
  eval_sign_task {
    bigint id PK
    bigint project_id
    string biz_node_code
  }
  eval_sign_record {
    bigint id PK
    bigint sign_task_id
  }

六、我的项目八节点 ↔ 表

入口:机构端 · 安评业务管理 · 我的项目(监管端 · 安评项目管理 · 安评项目实时监控 / 项目踏勘监管 只读查看)。

节点 原型页面要点
01 风险分析 风险分析记录表、符合性、结论、参与人签字、批准 eval_risk_analysis、eval_risk_participant
02 业务合同 合同与企业信息、金额、扫描件 PDF eval_contract
03 项目组成立 多角色选人;负责人/过程控制负责人各 1 人 eval_team、eval_project_member
04 现场踏勘 从业告知→勘查打卡→整改→企业报告→复查 eval_survey、eval_survey_notice、eval_survey_checkin、eval_survey_attach
05 报告编制 编辑器、模板、版本、责任页签字 eval_report_draft、eval_sign_task、eval_sign_record
06 内部审核 审核意见与结论 eval_internal_review
07 技术审核 审核意见与结论 eval_tech_review
08 过程控制 前 7 节点完成后办理、归档 eval_process_control → eval_report

七、执行说明

mysql -u<user> -p <database> < docs/db/phase2/init-phase2.sql

测试库验证后再用于正式环境。