From 105fb2880c2bd2c7cacabdf407f0c6c8e9a2fcf0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B2=91=E6=BA=AA?= <1015733727@qq.com> Date: Fri, 26 Jun 2026 14:30:26 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=8E=9F=E5=9E=8B=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E9=85=8D=E5=A5=97=E6=94=B9=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/db/init-v2.sql | 1600 +++++++++-------- .../app/executor/OrgInfoExecutor.java | 27 + .../app/executor/OrgPersonnelExecutor.java | 63 +- .../app/executor/OrgResignApplyExecutor.java | 21 +- .../app/support/OrgPersonnelViewEnricher.java | 3 + .../qinan/safetyeval/client/co/OrgInfoCO.java | 27 + .../safetyeval/client/co/OrgPersonnelCO.java | 48 + .../safetyeval/client/dto/OrgInfoAddCmd.java | 27 + .../client/dto/OrgInfoModifyCmd.java | 27 + .../client/dto/OrgPersonnelAddCmd.java | 48 + .../client/dto/OrgPersonnelModifyCmd.java | 48 + .../domain/entity/OrgInfoEntity.java | 27 + .../domain/entity/OrgPersonnelEntity.java | 48 + .../service/OrgPersonnelDomainService.java | 40 + safety-eval-infrastructure/pom.xml | 6 + .../infrastructure/dataobject/OrgInfoDO.java | 9 + .../dataobject/OrgPersonnelDO.java | 16 + .../gatewayimpl/OrgInfoGatewayImpl.java | 25 +- .../gatewayimpl/OrgPersonnelGatewayImpl.java | 32 + .../src/main/resources/application-local.yml | 1 + 20 files changed, 1355 insertions(+), 788 deletions(-) diff --git a/docs/db/init-v2.sql b/docs/db/init-v2.sql index 3168656..73997e2 100644 --- a/docs/db/init-v2.sql +++ b/docs/db/init-v2.sql @@ -1,818 +1,854 @@ --- ============================================================ --- 字符集: utf8mb4 排序规则: utf8mb4_0900_ai_ci --- 禁止外键,关联由应用层维护 --- ============================================================ +/* + Navicat Premium Dump SQL + + Source Server : gbs + Source Server Type : MySQL + Source Server Version : 80035 (8.0.35) + Source Host : 192.168.20.100:33080 + Source Schema : jjb_saas_safety_eval + + Target Server Type : MySQL + Target Server Version : 80035 (8.0.35) + File Encoding : 65001 + + Date: 26/06/2026 11:56:18 +*/ + CREATE DATABASE IF NOT EXISTS `jjb_saas_safety_eval` CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci; USE `jjb_saas_safety_eval`; --- ------------------------------------------------------------ --- 1. org_info 机构信息表 --- 作用: 机构基本信息及认证状态(填写信息/审核中/通过) --- ------------------------------------------------------------ -create table org_info ( - id bigint not null comment '主键', - unit_name varchar(200) not null comment '生产经营单位名称', - credit_code varchar(18) not null comment '统一社会信用代码', - safety_industry_category_code varchar(32) default null comment '安全生产监管行业类别编码', - safety_industry_category_name varchar(50) default null comment '安全生产监管行业类别名称', - district_code varchar(32) default null comment '所属县区编码', - district_name varchar(50) default null comment '所属县区名称', - town_street varchar(200) default null comment '所属镇街道', - village_community varchar(200) default null comment '属村社区', - longitude decimal(10,6) default null comment '经度', - latitude decimal(10,6) default null comment '纬度', - register_address varchar(500) default null comment '注册地址', - business_address varchar(500) default null comment '经营地址', - ownership_type_code varchar(32) default null comment '归属类型编码', - ownership_type_name varchar(50) default null comment '归属类型名称', - legal_representative varchar(50) default null comment '法定代表人', - legal_representative_phone varchar(20) default null comment '法定代表人联系电话', - principal_name varchar(50) default null comment '主要负责人', - principal_phone varchar(20) default null comment '主要负责人联系电话', - safety_dept_manager varchar(50) default null comment '安全管理部门负责人', - safety_dept_manager_phone varchar(20) default null comment '安全管理部门负责人联系电话', - safety_deputy_phone varchar(20) default null comment '主管安全副总联系电话', - production_date date default null comment '投产日期', - business_status_code int default null comment '企业经营状态编码', - business_status_name varchar(50) default null comment '企业经营状态名称', - info_disclosure_url varchar(500) default null comment '信息公开网址', - workplace_area decimal(12,2) default null comment '工作场所建筑面积(平方米)', - archive_room_area decimal(12,2) default null comment '档案室面积(平方米)', - fulltime_evaluator_count int default null comment '专职安全评价师数量', - registered_engineer_count int default null comment '注册安全工程师数量', - economy_industry_code varchar(32) default null comment '国民经济行业分类编码', - economy_industry_name varchar(100) default null comment '国民经济行业分类名称', - auth_status_code int default null comment '认证状态编码(1填写信息2审核中3通过)', - auth_status_name varchar(50) default null comment '认证状态名称', - state int default 0 comment '状态(0启用1禁用)', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - org_id bigint default null comment '单位id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_org_info_tenant_id (tenant_id), - key idx_org_info_credit_code (credit_code), - key idx_org_info_auth_status (auth_status_code), - key idx_org_info_state (state) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='机构信息表'; --- ------------------------------------------------------------ --- 2. org_qualification 机构资质证书表 --- 作用: 机构资质证书维护(证照类型、有效期、发证机关等) --- 关联: org_id -> org_info.id --- ------------------------------------------------------------ -create table org_qualification ( - id bigint not null comment '主键', - org_id bigint not null comment '机构id', - license_type_code varchar(32) default null comment '证照类型编码', - license_type_name varchar(50) default null comment '证照类型名称', - cert_name varchar(200) default null comment '证书名称', - cert_no varchar(100) default null comment '证书编号', - issue_date date default null comment '发证日期', - issue_org varchar(200) default null comment '发证机关', - valid_start_date date default null comment '证书有效期开始日期', - valid_end_date date default null comment '证书有效期结束日期', - cert_image_url varchar(500) default null comment '证书图片地址', - enable_flag tinyint default 1 comment '启用标识(1启用2禁用)', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_org_qualification_org_id (org_id), - key idx_org_qualification_cert_no (cert_no) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='机构资质证书表'; +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; --- ------------------------------------------------------------ --- 3. org_department 部门表 --- 作用: 部门树形维护 --- 关联: org_id -> org_info.id; parent_id 自关联 --- ------------------------------------------------------------ -create table org_department ( - id bigint not null comment '主键', - org_id bigint not null comment '机构id', - parent_id bigint default 0 comment '上级部门id,0为根', - dept_name varchar(100) not null comment '部门名称', - manager_name varchar(50) default null comment '负责人姓名', - manager_account varchar(50) default null comment '负责人账号', - dept_level_code varchar(32) default null comment '部门级别编码', - dept_level_name varchar(50) default null comment '部门级别名称', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_org_department_org_id (org_id), - key idx_org_department_parent_id (parent_id) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='部门表'; +-- ---------------------------- +-- Table structure for org_department +-- ---------------------------- +DROP TABLE IF EXISTS `org_department`; +CREATE TABLE `org_department` ( + `id` bigint NOT NULL COMMENT '主键', + `org_id` bigint NOT NULL COMMENT '机构id', + `parent_id` bigint DEFAULT '0' COMMENT '上级部门id,0为根', + `dept_name` varchar(100) NOT NULL COMMENT '部门名称', + `manager_name` varchar(50) DEFAULT NULL COMMENT '负责人姓名', + `manager_account` varchar(50) DEFAULT NULL COMMENT '负责人账号', + `dept_level_code` varchar(32) DEFAULT NULL COMMENT '部门级别编码', + `dept_level_name` varchar(50) DEFAULT NULL COMMENT '部门级别名称', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_org_department_org_id` (`org_id`), + KEY `idx_org_department_parent_id` (`parent_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='部门表'; --- ------------------------------------------------------------ --- 4. org_position 岗位表 --- 作用: 部门下岗位维护 --- 关联: org_id -> org_info.id; dept_id -> org_department.id --- ------------------------------------------------------------ -create table org_position ( - id bigint not null comment '主键', - org_id bigint not null comment '机构id', - dept_id bigint not null comment '部门id', - position_name varchar(100) not null comment '岗位名称', - duty_desc varchar(500) default null comment '岗位职责', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_org_position_org_id (org_id), - key idx_org_position_dept_id (dept_id) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='岗位表'; +-- ---------------------------- +-- Records of org_department +-- ---------------------------- +BEGIN; +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (101, 1, 0, '综合管理部', '冯行政', '13800138014', NULL, '一级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (102, 1, 0, '评价一部', '陈评价', '13800138010', NULL, '一级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (103, 1, 0, '评价二部', '郑专项', '13800138013', NULL, '一级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (104, 1, 0, '技术质量部', '吴质量', '13800138012', NULL, '一级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (105, 1, 0, '市场开发部', '褚采样', '13800138015', NULL, '一级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (106, 1, 101, '行政组', '冯行政', '13800138014', NULL, '二级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (107, 1, 101, '人事组', '冯行政', '13800138014', NULL, '二级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (108, 1, 102, '现场评价一组', '林项目', '13800138011', NULL, '二级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (109, 1, 102, '现场评价二组', '陈评价', '13800138010', NULL, '二级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (110, 1, 102, '报告编制组', '林项目', '13800138011', NULL, '二级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (111, 1, 103, '专项评价组', '郑专项', '13800138013', NULL, '二级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (112, 1, 103, '综合评价组', '郑专项', '13800138013', NULL, '二级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (113, 1, 104, '质检组', '吴质量', '13800138012', NULL, '二级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (114, 1, 104, '档案管理组', '吴质量', '13800138012', NULL, '二级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_department` (`id`, `org_id`, `parent_id`, `dept_name`, `manager_name`, `manager_account`, `dept_level_code`, `dept_level_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (115, 1, 104, '设备管理组', '吴质量', '13800138012', NULL, '二级', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +COMMIT; --- ------------------------------------------------------------ --- 5. org_personnel 人员信息表 --- 作用: 机构人员信息维护 --- 关联: org_id -> org_info.id; dept_id -> org_department.id; post_id -> org_position.id --- ------------------------------------------------------------ -create table org_personnel ( - id bigint not null comment '主键', - org_id bigint not null comment '机构id', - dept_id bigint default null comment '部门id', - post_id bigint default null comment '岗位id', - user_name varchar(50) not null comment '用户名称/姓名', - account varchar(50) not null comment '账号', - gender_code tinyint default null comment '性别编码', - gender_name varchar(10) default null comment '性别名称', - birth_date date default null comment '出生日期', - id_card_no varchar(18) default null comment '身份证号', - current_address varchar(500) default null comment '现住地址', - office_address varchar(500) default null comment '办公地址', - education_code varchar(32) default null comment '学历编码', - education_name varchar(50) default null comment '学历名称', - graduate_school varchar(200) default null comment '毕业院校', - major varchar(100) default null comment '专业', - employment_status_code int default null comment '就职状态编码', - employment_status_name varchar(50) default null comment '就职状态名称', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_org_personnel_org_id (org_id), - key idx_org_personnel_dept_id (dept_id), - key idx_org_personnel_post_id (post_id), - key idx_org_personnel_account (account), - unique key uk_org_personnel_org_account (org_id, account) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='人员信息表'; +-- ---------------------------- +-- Table structure for org_equipment +-- ---------------------------- +DROP TABLE IF EXISTS `org_equipment`; +CREATE TABLE `org_equipment` ( + `id` bigint NOT NULL COMMENT '主键', + `org_id` bigint NOT NULL COMMENT '机构id', + `device_name` varchar(200) NOT NULL COMMENT '设备名称', + `device_model` varchar(100) DEFAULT NULL COMMENT '设备型号', + `instrument_type_code` varchar(32) DEFAULT NULL COMMENT '仪器类型编码', + `instrument_type_name` varchar(50) DEFAULT NULL COMMENT '仪器类型名称', + `device_type_code` varchar(32) DEFAULT NULL COMMENT '设备类型编码', + `device_type_name` varchar(50) DEFAULT NULL COMMENT '设备类型名称', + `manufacturer` varchar(200) DEFAULT NULL COMMENT '厂家', + `flow_desc` varchar(500) DEFAULT NULL COMMENT '设备流量说明', + `min_flow` decimal(12,4) DEFAULT NULL COMMENT '最小流量', + `max_flow` decimal(12,4) DEFAULT NULL COMMENT '最大流量', + `calibration_unit` varchar(200) DEFAULT NULL COMMENT '校准单位', + `calibration_init_value` varchar(100) DEFAULT NULL COMMENT '校准初始值', + `field_calibration_type_code` varchar(32) DEFAULT NULL COMMENT '现场校验类型编码', + `field_calibration_type_name` varchar(50) DEFAULT NULL COMMENT '现场校验类型名称', + `dual_channel_flag` tinyint DEFAULT '2' COMMENT '是否双路(1是2否)', + `enable_flag` tinyint DEFAULT '1' COMMENT '设备状态(1启用2禁用)', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_org_equipment_org_id` (`org_id`), + KEY `idx_org_equipment_device_name` (`device_name`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='装备信息表'; --- ------------------------------------------------------------ --- 6. org_personnel_cert 人员证书表 --- 作用: 人员持有的各类证书 --- 关联: personnel_id -> org_personnel.id --- ------------------------------------------------------------ -create table org_personnel_cert ( - id bigint not null comment '主键', - org_id bigint not null comment '机构id', - personnel_id bigint not null comment '人员id', - cert_name varchar(200) default null comment '证照名称', - cert_type_code varchar(32) default null comment '证书类型编码', - cert_type_name varchar(50) default null comment '证书类型名称', - cert_category_code varchar(32) default null comment '证书类别编码', - cert_category_name varchar(50) default null comment '证书类别名称', - operation_category_code varchar(32) default null comment '证书作业类别编码', - operation_category_name varchar(50) default null comment '证书作业类别名称', - cert_no varchar(100) default null comment '证书编号', - issue_org varchar(200) default null comment '发证机关', - valid_start_date date default null comment '证书有效开始日期', - valid_end_date date default null comment '证书有效结束日期', - review_date date default null comment '复核日期', - cert_attachment_url varchar(500) default null comment '证书附件地址', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_org_personnel_cert_personnel_id (personnel_id), - key idx_org_personnel_cert_org_id (org_id) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='人员证书表'; +-- ---------------------------- +-- Records of org_equipment +-- ---------------------------- +BEGIN; +INSERT INTO `org_equipment` (`id`, `org_id`, `device_name`, `device_model`, `instrument_type_code`, `instrument_type_name`, `device_type_code`, `device_type_name`, `manufacturer`, `flow_desc`, `min_flow`, `max_flow`, `calibration_unit`, `calibration_init_value`, `field_calibration_type_code`, `field_calibration_type_name`, `dual_channel_flag`, `enable_flag`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (801, 1, '四合一气体检测仪', 'PGM-6208', '检测仪器', '检测仪器', '便携式', '便携式', '英国ION Science', '0-100%LEL', 0.0000, 100.0000, '市计量院', '0', NULL, '定期校验', 2, 1, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_equipment` (`id`, `org_id`, `device_name`, `device_model`, `instrument_type_code`, `instrument_type_name`, `device_type_code`, `device_type_name`, `manufacturer`, `flow_desc`, `min_flow`, `max_flow`, `calibration_unit`, `calibration_init_value`, `field_calibration_type_code`, `field_calibration_type_name`, `dual_channel_flag`, `enable_flag`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (802, 1, '激光粉尘仪', 'LD-5K', '检测仪器', '检测仪器', '便携式', '便携式', '青岛众瑞', '0-10mg/m3', 0.0000, 10.0000, '市计量院', '0', NULL, '定期校验', 2, 1, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_equipment` (`id`, `org_id`, `device_name`, `device_model`, `instrument_type_code`, `instrument_type_name`, `device_type_code`, `device_type_name`, `manufacturer`, `flow_desc`, `min_flow`, `max_flow`, `calibration_unit`, `calibration_init_value`, `field_calibration_type_code`, `field_calibration_type_name`, `dual_channel_flag`, `enable_flag`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (803, 1, '声级计', 'AWA5688', '检测仪器', '检测仪器', '便携式', '便携式', '杭州爱华', '30-130dB', 0.0000, 130.0000, '市计量院', '0', NULL, '定期校验', 2, 1, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_equipment` (`id`, `org_id`, `device_name`, `device_model`, `instrument_type_code`, `instrument_type_name`, `device_type_code`, `device_type_name`, `manufacturer`, `flow_desc`, `min_flow`, `max_flow`, `calibration_unit`, `calibration_init_value`, `field_calibration_type_code`, `field_calibration_type_name`, `dual_channel_flag`, `enable_flag`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (804, 1, '万用表', 'Fluke87V', '电工仪器', '电工仪器', '手持式', '手持式', 'Fluke', '-', 0.0000, 0.0000, '市计量院', '0', NULL, '定期校验', 2, 1, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_equipment` (`id`, `org_id`, `device_name`, `device_model`, `instrument_type_code`, `instrument_type_name`, `device_type_code`, `device_type_name`, `manufacturer`, `flow_desc`, `min_flow`, `max_flow`, `calibration_unit`, `calibration_init_value`, `field_calibration_type_code`, `field_calibration_type_name`, `dual_channel_flag`, `enable_flag`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (805, 1, '风速仪', 'Testo410-2', '检测仪器', '检测仪器', '便携式', '便携式', '德图Testo', '0.4-20m/s', 0.4000, 20.0000, '市计量院', '0', NULL, '定期校验', 2, 1, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +COMMIT; --- ------------------------------------------------------------ --- 7. org_personnel_change 人员变更记录表 --- 作用: 人员信息修改历史 --- 关联: personnel_id -> org_personnel.id --- ------------------------------------------------------------ -create table org_personnel_change ( - id bigint not null comment '主键', - org_id bigint not null comment '机构id', - personnel_id bigint not null comment '人员id', - change_item varchar(200) not null comment '变更事项', - change_time datetime not null comment '变更时间', - operator_name varchar(50) default null comment '操作人', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_org_personnel_change_personnel_id (personnel_id), - key idx_org_personnel_change_org_id (org_id) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='人员变更记录表'; +-- ---------------------------- +-- Table structure for org_info +-- ---------------------------- +DROP TABLE IF EXISTS `org_info`; +CREATE TABLE `org_info` ( + `id` bigint NOT NULL COMMENT '主键', + `unit_name` varchar(200) NOT NULL COMMENT '生产经营单位名称', + `credit_code` varchar(18) NOT NULL COMMENT '统一社会信用代码', + `safety_industry_category_code` varchar(32) DEFAULT NULL COMMENT '安全生产监管行业类别编码', + `safety_industry_category_name` varchar(50) DEFAULT NULL COMMENT '安全生产监管行业类别名称', + `district_code` varchar(32) DEFAULT NULL COMMENT '所属县区编码', + `district_name` varchar(50) DEFAULT NULL COMMENT '所属县区名称', + `town_street` varchar(200) DEFAULT NULL COMMENT '所属镇街道', + `village_community` varchar(200) DEFAULT NULL COMMENT '属村社区', + `longitude` decimal(10,6) DEFAULT NULL COMMENT '经度', + `latitude` decimal(10,6) DEFAULT NULL COMMENT '纬度', + `register_address` varchar(500) DEFAULT NULL COMMENT '注册地址', + `business_address` varchar(500) DEFAULT NULL COMMENT '经营地址', + `ownership_type_code` varchar(32) DEFAULT NULL COMMENT '归属类型编码', + `ownership_type_name` varchar(50) DEFAULT NULL COMMENT '归属类型名称', + `legal_representative` varchar(50) DEFAULT NULL COMMENT '法定代表人', + `legal_representative_phone` varchar(20) DEFAULT NULL COMMENT '法定代表人联系电话', + `principal_name` varchar(50) DEFAULT NULL COMMENT '主要负责人', + `principal_phone` varchar(20) DEFAULT NULL COMMENT '主要负责人联系电话', + `safety_dept_manager` varchar(50) DEFAULT NULL COMMENT '安全管理部门负责人', + `safety_dept_manager_phone` varchar(20) DEFAULT NULL COMMENT '安全管理部门负责人联系电话', + `safety_deputy_phone` varchar(20) DEFAULT NULL COMMENT '主管安全副总联系电话', + `production_date` date DEFAULT NULL COMMENT '投产日期', + `business_status_code` int DEFAULT NULL COMMENT '企业经营状态编码', + `business_status_name` varchar(50) DEFAULT NULL COMMENT '企业经营状态名称', + `info_disclosure_url` varchar(500) DEFAULT NULL COMMENT '信息公开网址', + `workplace_area` decimal(12,2) DEFAULT NULL COMMENT '工作场所建筑面积(平方米)', + `archive_room_area` decimal(12,2) DEFAULT NULL COMMENT '档案室面积(平方米)', + `fulltime_evaluator_count` int DEFAULT NULL COMMENT '专职安全评价师数量', + `registered_engineer_count` int DEFAULT NULL COMMENT '注册安全工程师数量', + `economy_industry_code` varchar(32) DEFAULT NULL COMMENT '国民经济行业分类编码', + `economy_industry_name` varchar(100) DEFAULT NULL COMMENT '国民经济行业分类名称', + `auth_status_code` int DEFAULT NULL COMMENT '认证状态编码(1填写信息2审核中3通过)', + `auth_status_name` varchar(50) DEFAULT NULL COMMENT '认证状态名称', + `enterprise_status_code` int DEFAULT NULL COMMENT '企业状态编码(1正常2停业3注销)', + `enterprise_status_name` varchar(50) DEFAULT NULL COMMENT '企业状态名称', + `enterprise_scale_code` varchar(32) DEFAULT NULL COMMENT '企业规模编码', + `enterprise_scale_name` varchar(50) DEFAULT NULL COMMENT '企业规模名称(大/中/小/微型)', + `filing_type_code` varchar(32) DEFAULT '2' COMMENT '备案类型编码(1审核备案2确认备案)', + `filing_type_name` varchar(50) DEFAULT '确认备案' COMMENT '备案类型名称(审核备案/确认备案)', + `filing_record_status_code` int DEFAULT '2' COMMENT '备案状态编码(1已备案2未备案)', + `filing_record_status_name` varchar(50) DEFAULT '未备案' COMMENT '备案状态名称', + `attachment_urls` varchar(2000) DEFAULT NULL COMMENT '上传附件地址(多个逗号分隔)', + `state` int DEFAULT '0' COMMENT '状态(0启用1禁用)', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `org_id` bigint DEFAULT NULL COMMENT '单位id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_org_info_tenant_id` (`tenant_id`), + KEY `idx_org_info_credit_code` (`credit_code`), + KEY `idx_org_info_auth_status` (`auth_status_code`), + KEY `idx_org_info_state` (`state`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='机构信息表'; --- ------------------------------------------------------------ --- 8. org_resign_apply 人员离职申请表 --- 作用: 离职申请及审核 --- 关联: personnel_id -> org_personnel.id --- ------------------------------------------------------------ -create table org_resign_apply ( - id bigint not null comment '主键', - org_id bigint not null comment '机构id', - personnel_id bigint not null comment '人员id', - applicant_name varchar(50) not null comment '申请人', - apply_time datetime not null comment '申请时间', - resign_reason varchar(1000) default null comment '离职原因', - expected_resign_date date default null comment '预计离职日期', - report_file_url varchar(500) default null comment '离职通知报告附件地址', - audit_status_code int default null comment '离职申请审核状态编码', - audit_status_name varchar(50) default null comment '离职申请审核状态名称', - reject_reason varchar(500) default null comment '退回原因', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_org_resign_apply_personnel_id (personnel_id), - key idx_org_resign_apply_org_id (org_id), - key idx_org_resign_apply_audit_status (audit_status_code) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='人员离职申请表'; +-- ---------------------------- +-- Records of org_info +-- ---------------------------- +BEGIN; +INSERT INTO `org_info` (`id`, `unit_name`, `credit_code`, `safety_industry_category_code`, `safety_industry_category_name`, `district_code`, `district_name`, `town_street`, `village_community`, `longitude`, `latitude`, `register_address`, `business_address`, `ownership_type_code`, `ownership_type_name`, `legal_representative`, `legal_representative_phone`, `principal_name`, `principal_phone`, `safety_dept_manager`, `safety_dept_manager_phone`, `safety_deputy_phone`, `production_date`, `business_status_code`, `business_status_name`, `info_disclosure_url`, `workplace_area`, `archive_room_area`, `fulltime_evaluator_count`, `registered_engineer_count`, `economy_industry_code`, `economy_industry_name`, `auth_status_code`, `auth_status_name`, `enterprise_status_code`, `enterprise_status_name`, `enterprise_scale_code`, `enterprise_scale_name`, `filing_type_code`, `filing_type_name`, `filing_record_status_code`, `filing_record_status_name`, `attachment_urls`, `state`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `org_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (1, '重庆示例安全评价有限公司', '91500000MA0XXXXXX1', NULL, '安全评价', '渝北区', '渝北区', '龙溪街道', '龙脊社区', 106.512000, 29.602000, '重庆市渝北区示例路88号', '重庆市渝北区示例路88号', NULL, '民营企业', '张三', '023-88880001', '李四', '13800138001', '王五', '13800138002', '13800138003', '2018-06-01', NULL, '正常经营', 'https://example.com/disclosure', 1200.00, 80.00, 12, 5, 'M7491', NULL, 3, '通过', 1, '正常', '中', '中', '2', '确认备案', 2, '未备案', 'https://gd-hbimg.huaban.com/08aaeb96f1f7360a2016ab5da1d6dd2d8f9933b62f9137-uqfbvd_fw658webp', 0, 'false', NULL, NULL, NULL, 2069596397920849920, 1, NULL, '2026-06-26 11:18:22', '2026-06-26 11:42:53', 2069674237173436416, NULL, NULL); +COMMIT; --- ------------------------------------------------------------ --- 9. org_equipment 装备信息表 --- 作用: 评价机构装备维护 --- 关联: org_id -> org_info.id --- ------------------------------------------------------------ -create table org_equipment ( - id bigint not null comment '主键', - org_id bigint not null comment '机构id', - device_name varchar(200) not null comment '设备名称', - device_model varchar(100) default null comment '设备型号', - instrument_type_code varchar(32) default null comment '仪器类型编码', - instrument_type_name varchar(50) default null comment '仪器类型名称', - device_type_code varchar(32) default null comment '设备类型编码', - device_type_name varchar(50) default null comment '设备类型名称', - manufacturer varchar(200) default null comment '厂家', - flow_desc varchar(500) default null comment '设备流量说明', - min_flow decimal(12,4) default null comment '最小流量', - max_flow decimal(12,4) default null comment '最大流量', - calibration_unit varchar(200) default null comment '校准单位', - calibration_init_value varchar(100) default null comment '校准初始值', - field_calibration_type_code varchar(32) default null comment '现场校验类型编码', - field_calibration_type_name varchar(50) default null comment '现场校验类型名称', - dual_channel_flag tinyint default 2 comment '是否双路(1是2否)', - enable_flag tinyint default 1 comment '设备状态(1启用2禁用)', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_org_equipment_org_id (org_id), - key idx_org_equipment_device_name (device_name) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='装备信息表'; +-- ---------------------------- +-- Table structure for org_personnel +-- ---------------------------- +DROP TABLE IF EXISTS `org_personnel`; +CREATE TABLE `org_personnel` ( + `id` bigint NOT NULL COMMENT '主键', + `org_id` bigint NOT NULL COMMENT '机构id', + `dept_id` bigint DEFAULT NULL COMMENT '部门id', + `post_id` bigint DEFAULT NULL COMMENT '岗位id', + `user_name` varchar(50) NOT NULL COMMENT '用户名称/姓名', + `account` varchar(50) NOT NULL COMMENT '账号', + `gender_code` tinyint DEFAULT NULL COMMENT '性别编码', + `gender_name` varchar(10) DEFAULT NULL COMMENT '性别名称', + `birth_date` date DEFAULT NULL COMMENT '出生日期', + `id_card_no` varchar(18) DEFAULT NULL COMMENT '身份证号', + `current_address` varchar(500) DEFAULT NULL COMMENT '现住地址', + `office_address` varchar(500) DEFAULT NULL COMMENT '办公地址', + `education_code` varchar(32) DEFAULT NULL COMMENT '学历编码', + `education_name` varchar(50) DEFAULT NULL COMMENT '学历名称', + `graduate_school` varchar(200) DEFAULT NULL COMMENT '毕业院校', + `major` varchar(100) DEFAULT NULL COMMENT '专业', + `employment_status_code` int DEFAULT NULL COMMENT '就职状态编码', + `employment_status_name` varchar(50) DEFAULT NULL COMMENT '就职状态名称', + `person_type_code` varchar(32) DEFAULT '1' COMMENT '人员类型编码(1基础人员2专职评价师)', + `person_type_name` varchar(50) DEFAULT '基础人员' COMMENT '人员类型名称', + `qual_scope` varchar(500) DEFAULT NULL COMMENT '资质范围', + `professional_level_code` varchar(32) DEFAULT NULL COMMENT '职业等级编码', + `professional_level_name` varchar(200) DEFAULT NULL COMMENT '职业等级名称', + `evaluator_cert_no` varchar(100) DEFAULT NULL COMMENT '安全评价师证书编号', + `education_type_code` varchar(32) DEFAULT NULL COMMENT '学历类型编码(全日制/在职教育)', + `education_type_name` varchar(50) DEFAULT NULL COMMENT '学历类型名称', + `education_level_code` varchar(32) DEFAULT NULL COMMENT '学历层次编码(专科/本科/硕士/博士)', + `education_level_name` varchar(50) DEFAULT NULL COMMENT '学历层次名称', + `title_name` varchar(50) DEFAULT NULL COMMENT '职称', + `register_engineer_flag` tinyint DEFAULT '2' COMMENT '是否注册安全工程师(1是2否)', + `publications` varchar(1000) DEFAULT NULL COMMENT '出版学术专著专利获奖论文等', + `ability_declaration` varchar(1000) DEFAULT NULL COMMENT '自我申报的专业能力及认定方式', + `work_experience` text COMMENT '主要学习工作经历', + `proof_material_url` varchar(2000) DEFAULT NULL COMMENT '申报专业能力证明材料(多个逗号分隔)', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + UNIQUE KEY `uk_org_personnel_org_account` (`org_id`,`account`), + KEY `idx_org_personnel_org_id` (`org_id`), + KEY `idx_org_personnel_dept_id` (`dept_id`), + KEY `idx_org_personnel_post_id` (`post_id`), + KEY `idx_org_personnel_account` (`account`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='人员信息表'; --- ------------------------------------------------------------ --- 10. qual_filing 资质备案申请表 --- 作用: 资质备案申请/已备案资质管理主表 --- 关联: org_id -> org_info.id --- ------------------------------------------------------------ -create table qual_filing ( - id bigint not null comment '主键', - org_id bigint not null comment '机构id', - filing_territory_code varchar(32) default null comment '备案属地编码', - filing_territory_name varchar(100) default null comment '备案属地名称', - filing_unit_name varchar(200) default null comment '备案单位', - filing_unit_type_code varchar(32) default null comment '备案单位类型编码', - filing_unit_type_name varchar(50) default null comment '备案单位类型名称', - filing_no varchar(100) default null comment '备案编号', - business_scope varchar(1000) default null comment '备案安全评价业务范围', - register_address varchar(500) default null comment '注册地址', - office_address varchar(500) default null comment '办公地址', - credit_code varchar(18) default null comment '统一社会信用代码', - qual_cert_no varchar(100) default null comment '资质证书编号', - legal_person_phone varchar(100) default null comment '法人代表及电话', - contact_phone varchar(100) default null comment '联系人及电话', - info_disclosure_url varchar(500) default null comment '信息公开网址', - fixed_asset_amount bigint default null comment '固定资产总值(单位:分)', - archive_room_area decimal(12,2) default null comment '档案室面积(平方米)', - fulltime_evaluator_count int default null comment '专职安全评价师数量', - registered_engineer_count int default null comment '注册安全工程师数量', - workplace_area decimal(12,2) default null comment '工作场所建筑面积(平方米)', - unit_intro text default null comment '单位基本情况介绍', - attachment_url varchar(500) default null comment '单位基本情况附件地址', - filing_status_code int default null comment '备案状态编码', - filing_status_name varchar(50) default null comment '备案状态名称', - apply_type_code int default null comment '申请类型编码(1首次备案2变更备案)', - apply_type_name varchar(50) default null comment '申请类型名称', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_qual_filing_org_id (org_id), - key idx_qual_filing_no (filing_no), - key idx_qual_filing_status (filing_status_code) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='资质备案申请表'; +-- ---------------------------- +-- Records of org_personnel +-- ---------------------------- +BEGIN; +INSERT INTO `org_personnel` (`id`, `org_id`, `dept_id`, `post_id`, `user_name`, `account`, `gender_code`, `gender_name`, `birth_date`, `id_card_no`, `current_address`, `office_address`, `education_code`, `education_name`, `graduate_school`, `major`, `employment_status_code`, `employment_status_name`, `person_type_code`, `person_type_name`, `qual_scope`, `professional_level_code`, `professional_level_name`, `evaluator_cert_no`, `education_type_code`, `education_type_name`, `education_level_code`, `education_level_name`, `title_name`, `register_engineer_flag`, `publications`, `ability_declaration`, `work_experience`, `proof_material_url`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (401, 1, 102, 205, '陈评价', '13800138010', 1, '男', '1985-03-15', '130302198503151234', '重庆市渝北区', '重庆市渝北区示例路88号', '在职教育-硕士', '在职教育-硕士', '重庆大学', '安全工程', 1, '在职', '1', '专职评价师', '金属冶炼', '三级安全评价师(对应职业技能等级三级 / 高级工,入门级)', '三级安全评价师(对应职业技能等级三级 / 高级工,入门级)', 'SJP-2020-0001', '在职教育', '在职教育', '硕士', '硕士', '高级评价师', 1, '发表安全评价相关论文3篇', '化工工艺安全风险评估,通过注册安全工程师资格考试认定', '2008-2012 重庆大学 安全工程专业 本科; 2012-至今 重庆安评技术研究院有限公司 评价师', 'https://gd-hbimg.huaban.com/08aaeb96f1f7360a2016ab5da1d6dd2d8f9933b62f9137-uqfbvd_fw658webp', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:42:56', NULL, NULL, NULL); +INSERT INTO `org_personnel` (`id`, `org_id`, `dept_id`, `post_id`, `user_name`, `account`, `gender_code`, `gender_name`, `birth_date`, `id_card_no`, `current_address`, `office_address`, `education_code`, `education_name`, `graduate_school`, `major`, `employment_status_code`, `employment_status_name`, `person_type_code`, `person_type_name`, `qual_scope`, `professional_level_code`, `professional_level_name`, `evaluator_cert_no`, `education_type_code`, `education_type_name`, `education_level_code`, `education_level_name`, `title_name`, `register_engineer_flag`, `publications`, `ability_declaration`, `work_experience`, `proof_material_url`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (402, 1, 102, 206, '林项目', '13800138011', 1, '男', '1988-07-22', '130302198807221234', '重庆市渝北区', '重庆市渝北区示例路88号', NULL, '全日制-硕士', '中国矿业大学', '安全科学与工程', 1, '在职', '1', '基础人员', NULL, NULL, NULL, NULL, NULL, '全日制', NULL, '硕士', NULL, 2, NULL, NULL, NULL, NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel` (`id`, `org_id`, `dept_id`, `post_id`, `user_name`, `account`, `gender_code`, `gender_name`, `birth_date`, `id_card_no`, `current_address`, `office_address`, `education_code`, `education_name`, `graduate_school`, `major`, `employment_status_code`, `employment_status_name`, `person_type_code`, `person_type_name`, `qual_scope`, `professional_level_code`, `professional_level_name`, `evaluator_cert_no`, `education_type_code`, `education_type_name`, `education_level_code`, `education_level_name`, `title_name`, `register_engineer_flag`, `publications`, `ability_declaration`, `work_experience`, `proof_material_url`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (403, 1, 104, 215, '吴质量', '13800138012', 2, '女', '1990-11-08', '130302199011081234', '重庆市渝北区', '重庆市渝北区示例路88号', NULL, '全日制-本科', '河北工程大学', '安全工程', 1, '在职', '1', '基础人员', NULL, NULL, NULL, NULL, NULL, '全日制', NULL, '本科', NULL, 2, NULL, NULL, NULL, NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel` (`id`, `org_id`, `dept_id`, `post_id`, `user_name`, `account`, `gender_code`, `gender_name`, `birth_date`, `id_card_no`, `current_address`, `office_address`, `education_code`, `education_name`, `graduate_school`, `major`, `employment_status_code`, `employment_status_name`, `person_type_code`, `person_type_name`, `qual_scope`, `professional_level_code`, `professional_level_name`, `evaluator_cert_no`, `education_type_code`, `education_type_name`, `education_level_code`, `education_level_name`, `title_name`, `register_engineer_flag`, `publications`, `ability_declaration`, `work_experience`, `proof_material_url`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (404, 1, 103, 212, '郑专项', '13800138013', 1, '男', '1987-01-30', '130302198701301234', '重庆市渝北区', '重庆市渝北区示例路88号', NULL, '全日制-本科', '东北大学', '安全工程', 1, '在职', '1', '基础人员', NULL, NULL, NULL, NULL, NULL, '全日制', NULL, '本科', NULL, 2, NULL, NULL, NULL, NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel` (`id`, `org_id`, `dept_id`, `post_id`, `user_name`, `account`, `gender_code`, `gender_name`, `birth_date`, `id_card_no`, `current_address`, `office_address`, `education_code`, `education_name`, `graduate_school`, `major`, `employment_status_code`, `employment_status_name`, `person_type_code`, `person_type_name`, `qual_scope`, `professional_level_code`, `professional_level_name`, `evaluator_cert_no`, `education_type_code`, `education_type_name`, `education_level_code`, `education_level_name`, `title_name`, `register_engineer_flag`, `publications`, `ability_declaration`, `work_experience`, `proof_material_url`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (405, 1, 101, 202, '冯行政', '13800138014', 2, '女', '1992-05-18', '130302199205181234', '重庆市渝北区', '重庆市渝北区示例路88号', NULL, '全日制-专科', '重庆职业技术学院', '行政管理', 1, '在职', '1', '基础人员', NULL, NULL, NULL, NULL, NULL, '全日制', NULL, '专科', NULL, 2, NULL, NULL, NULL, NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel` (`id`, `org_id`, `dept_id`, `post_id`, `user_name`, `account`, `gender_code`, `gender_name`, `birth_date`, `id_card_no`, `current_address`, `office_address`, `education_code`, `education_name`, `graduate_school`, `major`, `employment_status_code`, `employment_status_name`, `person_type_code`, `person_type_name`, `qual_scope`, `professional_level_code`, `professional_level_name`, `evaluator_cert_no`, `education_type_code`, `education_type_name`, `education_level_code`, `education_level_name`, `title_name`, `register_engineer_flag`, `publications`, `ability_declaration`, `work_experience`, `proof_material_url`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (406, 1, 108, 222, '褚采样', '13800138015', 1, '男', '1995-09-03', '130302199509031234', '重庆市渝北区', '重庆市渝北区示例路88号', NULL, '全日制-本科', '重庆科技大学', '应用化学', 1, '在职', '1', '基础人员', NULL, NULL, NULL, NULL, NULL, '全日制', NULL, '本科', NULL, 2, NULL, NULL, NULL, NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel` (`id`, `org_id`, `dept_id`, `post_id`, `user_name`, `account`, `gender_code`, `gender_name`, `birth_date`, `id_card_no`, `current_address`, `office_address`, `education_code`, `education_name`, `graduate_school`, `major`, `employment_status_code`, `employment_status_name`, `person_type_code`, `person_type_name`, `qual_scope`, `professional_level_code`, `professional_level_name`, `evaluator_cert_no`, `education_type_code`, `education_type_name`, `education_level_code`, `education_level_name`, `title_name`, `register_engineer_flag`, `publications`, `ability_declaration`, `work_experience`, `proof_material_url`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (407, 1, 101, 201, '钱离职', '13800138016', 1, '男', '1980-01-01', '130302198001011234', '重庆市渝北区', '重庆市渝北区示例路88号', NULL, '全日制-本科', '重庆大学', '安全工程', 2, '离职', '1', '基础人员', NULL, NULL, NULL, NULL, NULL, '全日制', NULL, '本科', NULL, 2, NULL, NULL, NULL, NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel` (`id`, `org_id`, `dept_id`, `post_id`, `user_name`, `account`, `gender_code`, `gender_name`, `birth_date`, `id_card_no`, `current_address`, `office_address`, `education_code`, `education_name`, `graduate_school`, `major`, `employment_status_code`, `employment_status_name`, `person_type_code`, `person_type_name`, `qual_scope`, `professional_level_code`, `professional_level_name`, `evaluator_cert_no`, `education_type_code`, `education_type_name`, `education_level_code`, `education_level_name`, `title_name`, `register_engineer_flag`, `publications`, `ability_declaration`, `work_experience`, `proof_material_url`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (408, 1, 102, 205, '孙离职', '13800138017', 2, '女', '1986-06-12', '130302198606121234', '重庆市渝北区', '重庆市渝北区示例路88号', NULL, '全日制-本科', '重庆大学', '安全工程', 2, '离职', '1', '基础人员', NULL, NULL, NULL, NULL, NULL, '全日制', NULL, '本科', NULL, 2, NULL, NULL, NULL, NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel` (`id`, `org_id`, `dept_id`, `post_id`, `user_name`, `account`, `gender_code`, `gender_name`, `birth_date`, `id_card_no`, `current_address`, `office_address`, `education_code`, `education_name`, `graduate_school`, `major`, `employment_status_code`, `employment_status_name`, `person_type_code`, `person_type_name`, `qual_scope`, `professional_level_code`, `professional_level_name`, `evaluator_cert_no`, `education_type_code`, `education_type_name`, `education_level_code`, `education_level_name`, `title_name`, `register_engineer_flag`, `publications`, `ability_declaration`, `work_experience`, `proof_material_url`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (409, 1, 103, 212, '周离职', '13800138018', 1, '男', '1984-09-20', '130302198409201234', '重庆市渝北区', '重庆市渝北区示例路88号', NULL, '全日制-硕士', '重庆大学', '安全科学与工程', 2, '离职', '1', '基础人员', NULL, NULL, NULL, NULL, NULL, '全日制', NULL, '硕士', NULL, 2, NULL, NULL, NULL, NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +COMMIT; --- ------------------------------------------------------------ --- 11. qual_filing_material 备案申请材料表 --- 作用: 备案申请材料清单 --- 关联: filing_id -> qual_filing.id --- ------------------------------------------------------------ -create table qual_filing_material ( - id bigint not null comment '主键', - filing_id bigint not null comment '备案申请id', - material_content varchar(500) not null comment '材料内容', - material_format varchar(20) default null comment '材料格式', - attachment_url varchar(500) default null comment '上传附件地址', - material_remark varchar(1000) default null comment '注释', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - org_id bigint default null comment '单位id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_qual_filing_material_filing_id (filing_id) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='备案申请材料表'; +-- ---------------------------- +-- Table structure for org_personnel_cert +-- ---------------------------- +DROP TABLE IF EXISTS `org_personnel_cert`; +CREATE TABLE `org_personnel_cert` ( + `id` bigint NOT NULL COMMENT '主键', + `org_id` bigint NOT NULL COMMENT '机构id', + `personnel_id` bigint NOT NULL COMMENT '人员id', + `cert_name` varchar(200) DEFAULT NULL COMMENT '证照名称', + `cert_type_code` varchar(32) DEFAULT NULL COMMENT '证书类型编码', + `cert_type_name` varchar(50) DEFAULT NULL COMMENT '证书类型名称', + `cert_category_code` varchar(32) DEFAULT NULL COMMENT '证书类别编码', + `cert_category_name` varchar(50) DEFAULT NULL COMMENT '证书类别名称', + `operation_category_code` varchar(32) DEFAULT NULL COMMENT '证书作业类别编码', + `operation_category_name` varchar(50) DEFAULT NULL COMMENT '证书作业类别名称', + `cert_no` varchar(100) DEFAULT NULL COMMENT '证书编号', + `issue_org` varchar(200) DEFAULT NULL COMMENT '发证机关', + `valid_start_date` date DEFAULT NULL COMMENT '证书有效开始日期', + `valid_end_date` date DEFAULT NULL COMMENT '证书有效结束日期', + `review_date` date DEFAULT NULL COMMENT '复核日期', + `cert_attachment_url` varchar(500) DEFAULT NULL COMMENT '证书附件地址', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_org_personnel_cert_personnel_id` (`personnel_id`), + KEY `idx_org_personnel_cert_org_id` (`org_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='人员证书表'; --- ------------------------------------------------------------ --- 12. qual_filing_commitment 法定代表人承诺书表 --- 作用: 备案流程法定代表人承诺书 --- 关联: filing_id -> qual_filing.id (1:1) --- ------------------------------------------------------------ -create table qual_filing_commitment ( - id bigint not null comment '主键', - filing_id bigint not null comment '备案申请id', - commitment_content text default null comment '承诺内容', - legal_rep_signature_url varchar(500) default null comment '法定代表人签名图片地址', - sign_date date default null comment '签署日期', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - org_id bigint default null comment '单位id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - unique key uk_qual_filing_commitment_filing_id (filing_id) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='法定代表人承诺书表'; +-- ---------------------------- +-- Records of org_personnel_cert +-- ---------------------------- +BEGIN; +INSERT INTO `org_personnel_cert` (`id`, `org_id`, `personnel_id`, `cert_name`, `cert_type_code`, `cert_type_name`, `cert_category_code`, `cert_category_name`, `operation_category_code`, `operation_category_name`, `cert_no`, `issue_org`, `valid_start_date`, `valid_end_date`, `review_date`, `cert_attachment_url`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (501, 1, 401, '注册安全工程师证', NULL, NULL, NULL, '注册安全工程师', NULL, '金属非金属矿山', 'ZCAQ-2019-001', '应急管理部', '2019-06-01', '2025-06-01', NULL, NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_cert` (`id`, `org_id`, `personnel_id`, `cert_name`, `cert_type_code`, `cert_type_name`, `cert_category_code`, `cert_category_name`, `operation_category_code`, `operation_category_name`, `cert_no`, `issue_org`, `valid_start_date`, `valid_end_date`, `review_date`, `cert_attachment_url`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (502, 1, 402, '安全评价师证(一级)', NULL, NULL, NULL, '安全评价师', NULL, '安全评价', 'AQPJS-2020-002', '中国安全生产协会', '2020-03-01', '2026-03-01', NULL, NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +COMMIT; --- ------------------------------------------------------------ --- 13. qual_filing_personnel 备案申请人员表 --- 作用: 备案流程人员信息快照 --- 关联: filing_id -> qual_filing.id; source_personnel_id -> org_personnel.id --- ------------------------------------------------------------ -create table qual_filing_personnel ( - id bigint not null comment '主键', - filing_id bigint not null comment '备案申请id', - source_personnel_id bigint default null comment '来源人员id', - person_name varchar(50) not null comment '人员姓名', - person_type_code varchar(32) default null comment '人员类型编码', - person_type_name varchar(50) default null comment '人员类型名称', - position_name varchar(50) default null comment '职务', - title_name varchar(50) default null comment '职称', - gender_code tinyint default null comment '性别编码', - gender_name varchar(10) default null comment '性别名称', - birth_date date default null comment '出生日期', - id_card_no varchar(18) default null comment '身份证号', - current_address varchar(500) default null comment '现住地址', - office_address varchar(500) default null comment '办公地址', - education_code varchar(32) default null comment '学历编码', - education_name varchar(50) default null comment '学历名称', - graduate_school varchar(200) default null comment '毕业院校', - major varchar(100) default null comment '专业', - qual_scope varchar(500) default null comment '资质范围', - publications varchar(1000) default null comment '出版学术专著专利获奖论文等', - professional_level_cert varchar(200) default null comment '职业等级及证书编号', - register_engineer_flag tinyint default 2 comment '是否具有注册安全工程师资格(1是2否)', - ability_declaration varchar(1000) default null comment '自我申报的专业能力及认定方式', - work_experience text default null comment '主要学习工作经历', - proof_material_url varchar(500) default null comment '申报专业能力证明材料地址', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - org_id bigint default null comment '单位id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_qual_filing_personnel_filing_id (filing_id), - key idx_qual_filing_personnel_source_id (source_personnel_id) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='备案申请人员表'; +-- ---------------------------- +-- Table structure for org_personnel_change +-- ---------------------------- +DROP TABLE IF EXISTS `org_personnel_change`; +CREATE TABLE `org_personnel_change` ( + `id` bigint NOT NULL COMMENT '主键', + `org_id` bigint NOT NULL COMMENT '机构id', + `personnel_id` bigint NOT NULL COMMENT '人员id', + `change_item` varchar(200) NOT NULL COMMENT '变更事项', + `change_time` datetime NOT NULL COMMENT '变更时间', + `operator_name` varchar(50) DEFAULT NULL COMMENT '操作人', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_org_personnel_change_personnel_id` (`personnel_id`), + KEY `idx_org_personnel_change_org_id` (`org_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='人员变更记录表'; --- ------------------------------------------------------------ --- 14. qual_filing_personnel_cert 备案申请人员证书表 --- 作用: 备案流程人员证书快照 --- 关联: filing_personnel_id -> qual_filing_personnel.id --- ------------------------------------------------------------ -create table qual_filing_personnel_cert ( - id bigint not null comment '主键', - filing_id bigint not null comment '备案申请id', - filing_personnel_id bigint not null comment '备案人员id', - cert_name varchar(200) default null comment '证照名称', - cert_type_code varchar(32) default null comment '证书类型编码', - cert_type_name varchar(50) default null comment '证书类型名称', - cert_category_code varchar(32) default null comment '证书类别编码', - cert_category_name varchar(50) default null comment '证书类别名称', - operation_category_code varchar(32) default null comment '证书作业类别编码', - operation_category_name varchar(50) default null comment '证书作业类别名称', - cert_no varchar(100) default null comment '证书编号', - issue_org varchar(200) default null comment '发证机关', - valid_start_date date default null comment '证书有效开始日期', - valid_end_date date default null comment '证书有效结束日期', - review_date date default null comment '复核日期', - cert_attachment_url varchar(500) default null comment '证书附件地址', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - org_id bigint default null comment '单位id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_qual_filing_personnel_cert_filing_id (filing_id), - key idx_qual_filing_personnel_cert_personnel_id (filing_personnel_id) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='备案申请人员证书表'; +-- ---------------------------- +-- Records of org_personnel_change +-- ---------------------------- +BEGIN; +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (601, 1, 407, '修改联系电话', '2026-05-27 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (602, 1, 407, '调整所属岗位', '2026-06-06 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (603, 1, 407, '更新学历信息', '2026-06-16 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (604, 1, 408, '修改办公地址', '2026-06-01 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (605, 1, 408, '调整部门', '2026-06-14 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (606, 1, 409, '修改姓名', '2026-05-17 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (607, 1, 409, '修改账号', '2026-05-22 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (608, 1, 409, '修改性别', '2026-05-27 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (609, 1, 409, '修改出生日期', '2026-06-01 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (610, 1, 409, '修改身份证号', '2026-06-06 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (611, 1, 409, '修改现住地址', '2026-06-11 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (612, 1, 401, '修改联系电话', '2026-06-19 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (613, 1, 403, '修改办公地址', '2026-06-21 11:18:22', '管理员', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_personnel_change` (`id`, `org_id`, `personnel_id`, `change_item`, `change_time`, `operator_name`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (2070350684538765314, 1, 401, '学历', '2026-06-26 11:37:23', '系统', 'false', NULL, NULL, NULL, NULL, 0, '2026-06-26 11:37:23', '2026-06-26 11:37:23', NULL, NULL, 'prod'); +COMMIT; --- ------------------------------------------------------------ --- 15. qual_filing_equipment 备案申请装备表 --- 作用: 备案流程装备信息快照 --- 关联: filing_id -> qual_filing.id; source_equipment_id -> org_equipment.id --- ------------------------------------------------------------ -create table qual_filing_equipment ( - id bigint not null comment '主键', - filing_id bigint not null comment '备案申请id', - source_equipment_id bigint default null comment '来源装备id', - device_name varchar(200) not null comment '设备名称', - device_model varchar(100) default null comment '设备型号', - instrument_type_code varchar(32) default null comment '仪器类型编码', - instrument_type_name varchar(50) default null comment '仪器类型名称', - device_type_code varchar(32) default null comment '设备类型编码', - device_type_name varchar(50) default null comment '设备类型名称', - manufacturer varchar(200) default null comment '厂家', - flow_desc varchar(500) default null comment '设备流量说明', - min_flow decimal(12,4) default null comment '最小流量', - max_flow decimal(12,4) default null comment '最大流量', - calibration_unit varchar(200) default null comment '校准单位', - calibration_init_value varchar(100) default null comment '校准初始值', - field_calibration_type_code varchar(32) default null comment '现场校验类型编码', - field_calibration_type_name varchar(50) default null comment '现场校验类型名称', - dual_channel_flag tinyint default 2 comment '是否双路(1是2否)', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - org_id bigint default null comment '单位id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_qual_filing_equipment_filing_id (filing_id), - key idx_qual_filing_equipment_source_id (source_equipment_id) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='备案申请装备表'; +-- ---------------------------- +-- Table structure for org_position +-- ---------------------------- +DROP TABLE IF EXISTS `org_position`; +CREATE TABLE `org_position` ( + `id` bigint NOT NULL COMMENT '主键', + `org_id` bigint NOT NULL COMMENT '机构id', + `dept_id` bigint NOT NULL COMMENT '部门id', + `position_name` varchar(100) NOT NULL COMMENT '岗位名称', + `duty_desc` varchar(500) DEFAULT NULL COMMENT '岗位职责', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_org_position_org_id` (`org_id`), + KEY `idx_org_position_dept_id` (`dept_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='岗位表'; --- ------------------------------------------------------------ --- 16. qual_filing_change 备案变更表 --- 作用: 已备案信息变更申请 --- 关联: origin_filing_id -> qual_filing.id; org_id -> org_info.id --- ------------------------------------------------------------ -create table qual_filing_change ( - id bigint not null comment '主键', - org_id bigint not null comment '机构id', - origin_filing_id bigint not null comment '原备案申请id', - change_count int default 0 comment '变更次数', - filing_territory_code varchar(32) default null comment '备案属地编码', - filing_territory_name varchar(100) default null comment '备案属地名称', - filing_unit_name varchar(200) default null comment '备案单位', - filing_unit_type_code varchar(32) default null comment '备案单位类型编码', - filing_unit_type_name varchar(50) default null comment '备案单位类型名称', - filing_no varchar(100) default null comment '备案编号', - business_scope varchar(1000) default null comment '备案安全评价业务范围', - register_address varchar(500) default null comment '注册地址', - office_address varchar(500) default null comment '办公地址', - credit_code varchar(18) default null comment '统一社会信用代码', - qual_cert_no varchar(100) default null comment '资质证书编号', - legal_person_phone varchar(100) default null comment '法人代表及电话', - contact_phone varchar(100) default null comment '联系人及电话', - info_disclosure_url varchar(500) default null comment '信息公开网址', - fixed_asset_amount bigint default null comment '固定资产总值(单位:分)', - archive_room_area decimal(12,2) default null comment '档案室面积(平方米)', - fulltime_evaluator_count int default null comment '专职安全评价师数量', - registered_engineer_count int default null comment '注册安全工程师数量', - workplace_area decimal(12,2) default null comment '工作场所建筑面积(平方米)', - unit_intro text default null comment '单位基本情况介绍', - attachment_url varchar(500) default null comment '单位基本情况附件地址', - filing_status_code int default null comment '备案状态编码', - filing_status_name varchar(50) default null comment '备案状态名称', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_qual_filing_change_org_id (org_id), - key idx_qual_filing_change_origin_id (origin_filing_id) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='备案变更表'; +-- ---------------------------- +-- Records of org_position +-- ---------------------------- +BEGIN; +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (201, 1, 101, '部门经理', '负责综合管理部全面工作', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (202, 1, 106, '行政专员', '负责日常行政事务', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (203, 1, 107, '人事专员', '负责招聘与员工关系', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (204, 1, 102, '部门经理', '负责评价一部项目管理', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (205, 1, 108, '评价师', '负责现场安全评价', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (206, 1, 108, '项目负责人', '负责评价项目统筹', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (207, 1, 109, '评价师', '负责现场安全评价', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (208, 1, 109, '助理评价师', '协助现场评价工作', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (209, 1, 110, '报告编制员', '负责评价报告编制', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (210, 1, 110, '报告审核员', '负责报告质量审核', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (211, 1, 103, '部门经理', '负责评价二部全面工作', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (212, 1, 111, '专项评价师', '负责专项安全评价', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (213, 1, 112, '综合评价师', '负责综合安全评价', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (214, 1, 104, '质量管理员', '负责质量体系运行', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (215, 1, 113, '质检工程师', '负责报告与过程质检', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (216, 1, 114, '档案管理员', '负责档案归档与保管', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (217, 1, 115, '设备管理员', '负责仪器设备管理', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (218, 1, 105, '市场经理', '负责市场开拓', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (219, 1, 105, '客户经理', '负责客户关系维护', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (220, 1, 102, '技术负责人', '负责评价技术把关', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (221, 1, 103, '技术负责人', '负责评价技术把关', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (222, 1, 108, '采样员', '负责现场样品采集', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (223, 1, 109, '采样员', '负责现场样品采集', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_position` (`id`, `org_id`, `dept_id`, `position_name`, `duty_desc`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (224, 1, 110, '资料员', '负责项目资料整理', 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +COMMIT; --- ------------------------------------------------------------ --- 17. qual_filing_change_detail 备案变更明细表 --- 作用: 备案变更字段级明细(如法人由A变更为B) --- 关联: change_id -> qual_filing_change.id --- ------------------------------------------------------------ -create table qual_filing_change_detail ( - id bigint not null comment '主键', - change_id bigint not null comment '备案变更id', - change_field varchar(100) not null comment '变更字段', - change_content varchar(1000) not null comment '变更内容', - delete_enum varchar(32) default null comment '删除标识true false', - remarks varchar(255) default null comment '备注', - create_name varchar(50) default null comment '创建人姓名', - update_name varchar(50) default null comment '更新人姓名', - tenant_id bigint default null comment '租户id', - org_id bigint default null comment '单位id', - version int default null comment '版本', - create_time datetime default null comment '创建时间', - update_time datetime default null comment '修改时间', - create_id bigint default null comment '创建人id', - update_id bigint default null comment '修改人id', - env varchar(50) default null comment '环境', - primary key (id), - key idx_qual_filing_change_detail_change_id (change_id) -) engine=innodb default charset=utf8mb4 collate=utf8mb4_0900_ai_ci comment='备案变更明细表'; +-- ---------------------------- +-- Table structure for org_qualification +-- ---------------------------- +DROP TABLE IF EXISTS `org_qualification`; +CREATE TABLE `org_qualification` ( + `id` bigint NOT NULL COMMENT '主键', + `org_id` bigint NOT NULL COMMENT '机构id', + `license_type_code` varchar(32) DEFAULT NULL COMMENT '证照类型编码', + `license_type_name` varchar(50) DEFAULT NULL COMMENT '证照类型名称', + `cert_name` varchar(200) DEFAULT NULL COMMENT '证书名称', + `cert_no` varchar(100) DEFAULT NULL COMMENT '证书编号', + `issue_date` date DEFAULT NULL COMMENT '发证日期', + `issue_org` varchar(200) DEFAULT NULL COMMENT '发证机关', + `valid_start_date` date DEFAULT NULL COMMENT '证书有效期开始日期', + `valid_end_date` date DEFAULT NULL COMMENT '证书有效期结束日期', + `cert_image_url` varchar(500) DEFAULT NULL COMMENT '证书图片地址', + `enable_flag` tinyint DEFAULT '1' COMMENT '启用标识(1启用2禁用)', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_org_qualification_org_id` (`org_id`), + KEY `idx_org_qualification_cert_no` (`cert_no`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='机构资质证书表'; --- ============================================================ --- 企业信息管理模块 - 联调测试数据(手动执行) --- 执行前会清理本机构 org_id=1 下的旧联调数据,避免脏数据干扰 --- ============================================================ +-- ---------------------------- +-- Records of org_qualification +-- ---------------------------- +BEGIN; +INSERT INTO `org_qualification` (`id`, `org_id`, `license_type_code`, `license_type_name`, `cert_name`, `cert_no`, `issue_date`, `issue_org`, `valid_start_date`, `valid_end_date`, `cert_image_url`, `enable_flag`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (301, 1, '煤炭开采业', '金属冶炼', '安全评价机构资质证书(甲级)', 'AQPJ-2024-001', '2024-01-15', '重庆市应急管理局', '2024-01-15', '2027-01-14', NULL, 1, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:42:54', NULL, NULL, NULL); +INSERT INTO `org_qualification` (`id`, `org_id`, `license_type_code`, `license_type_name`, `cert_name`, `cert_no`, `issue_date`, `issue_org`, `valid_start_date`, `valid_end_date`, `cert_image_url`, `enable_flag`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (302, 1, NULL, '营业执照', '营业执照', '91130300MA0XXXXXX1', '2018-06-01', '秦皇岛市行政审批局', '2018-06-01', '2099-12-31', NULL, 1, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +COMMIT; --- 已有库增量:机构信息 state 字段(0启用1禁用) --- ALTER TABLE org_info ADD COLUMN state int DEFAULT 0 COMMENT '状态(0启用1禁用)' AFTER auth_status_name; --- CREATE INDEX idx_org_info_state ON org_info (state); +-- ---------------------------- +-- Table structure for org_resign_apply +-- ---------------------------- +DROP TABLE IF EXISTS `org_resign_apply`; +CREATE TABLE `org_resign_apply` ( + `id` bigint NOT NULL COMMENT '主键', + `org_id` bigint NOT NULL COMMENT '机构id', + `personnel_id` bigint NOT NULL COMMENT '人员id', + `applicant_name` varchar(50) NOT NULL COMMENT '申请人', + `apply_time` datetime NOT NULL COMMENT '申请时间', + `resign_reason` varchar(1000) DEFAULT NULL COMMENT '离职原因', + `expected_resign_date` date DEFAULT NULL COMMENT '预计离职日期', + `report_file_url` varchar(500) DEFAULT NULL COMMENT '离职通知报告附件地址', + `audit_status_code` int DEFAULT NULL COMMENT '离职申请审核状态编码', + `audit_status_name` varchar(50) DEFAULT NULL COMMENT '离职申请审核状态名称', + `reject_reason` varchar(500) DEFAULT NULL COMMENT '退回原因', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_org_resign_apply_personnel_id` (`personnel_id`), + KEY `idx_org_resign_apply_org_id` (`org_id`), + KEY `idx_org_resign_apply_audit_status` (`audit_status_code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='人员离职申请表'; -SET @tenant_id = 1001; -SET @org_id = 1; -SET @now = NOW(); +-- ---------------------------- +-- Records of org_resign_apply +-- ---------------------------- +BEGIN; +INSERT INTO `org_resign_apply` (`id`, `org_id`, `personnel_id`, `applicant_name`, `apply_time`, `resign_reason`, `expected_resign_date`, `report_file_url`, `audit_status_code`, `audit_status_name`, `reject_reason`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (701, 1, 407, '钱离职', '2026-06-21 11:18:22', '个人原因申请离职', '2026-07-26', NULL, 0, '未审核', NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_resign_apply` (`id`, `org_id`, `personnel_id`, `applicant_name`, `apply_time`, `resign_reason`, `expected_resign_date`, `report_file_url`, `audit_status_code`, `audit_status_name`, `reject_reason`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (702, 1, 408, '孙离职', '2026-04-27 11:18:22', '家庭原因', '2026-05-27', NULL, 1, '已审核', NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_resign_apply` (`id`, `org_id`, `personnel_id`, `applicant_name`, `apply_time`, `resign_reason`, `expected_resign_date`, `report_file_url`, `audit_status_code`, `audit_status_name`, `reject_reason`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (703, 1, 409, '周离职', '2026-06-23 11:18:22', '工作调动', '2026-07-11', NULL, 0, '未审核', NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +INSERT INTO `org_resign_apply` (`id`, `org_id`, `personnel_id`, `applicant_name`, `apply_time`, `resign_reason`, `expected_resign_date`, `report_file_url`, `audit_status_code`, `audit_status_name`, `reject_reason`, `delete_enum`, `remarks`, `create_name`, `update_name`, `tenant_id`, `version`, `create_time`, `update_time`, `create_id`, `update_id`, `env`) VALUES (704, 1, 403, '吴质量', '2026-06-18 11:18:22', '个人发展', '2026-07-16', NULL, 0, '未审核', NULL, 'false', NULL, NULL, NULL, 2069596397920849920, NULL, '2026-06-26 11:18:22', '2026-06-26 11:18:22', NULL, NULL, NULL); +COMMIT; -DELETE FROM org_personnel_change WHERE org_id = @org_id; -DELETE FROM org_personnel_cert WHERE org_id = @org_id; -DELETE FROM org_resign_apply WHERE org_id = @org_id; -DELETE FROM org_personnel WHERE org_id = @org_id; -DELETE FROM org_equipment WHERE org_id = @org_id; -DELETE FROM org_qualification WHERE org_id = @org_id; -DELETE FROM org_position WHERE org_id = @org_id; -DELETE FROM org_department WHERE org_id = @org_id; -DELETE FROM org_info WHERE id = @org_id; +-- ---------------------------- +-- Table structure for qual_filing +-- ---------------------------- +DROP TABLE IF EXISTS `qual_filing`; +CREATE TABLE `qual_filing` ( + `id` bigint NOT NULL COMMENT '主键', + `org_id` bigint NOT NULL COMMENT '机构id', + `filing_territory_code` varchar(32) DEFAULT NULL COMMENT '备案属地编码', + `filing_territory_name` varchar(100) DEFAULT NULL COMMENT '备案属地名称', + `filing_unit_name` varchar(200) DEFAULT NULL COMMENT '备案单位', + `filing_unit_type_code` varchar(32) DEFAULT NULL COMMENT '备案单位类型编码', + `filing_unit_type_name` varchar(50) DEFAULT NULL COMMENT '备案单位类型名称', + `filing_no` varchar(100) DEFAULT NULL COMMENT '备案编号', + `business_scope` varchar(1000) DEFAULT NULL COMMENT '备案安全评价业务范围', + `register_address` varchar(500) DEFAULT NULL COMMENT '注册地址', + `office_address` varchar(500) DEFAULT NULL COMMENT '办公地址', + `credit_code` varchar(18) DEFAULT NULL COMMENT '统一社会信用代码', + `qual_cert_no` varchar(100) DEFAULT NULL COMMENT '资质证书编号', + `legal_person_phone` varchar(100) DEFAULT NULL COMMENT '法人代表及电话', + `contact_phone` varchar(100) DEFAULT NULL COMMENT '联系人及电话', + `info_disclosure_url` varchar(500) DEFAULT NULL COMMENT '信息公开网址', + `fixed_asset_amount` bigint DEFAULT NULL COMMENT '固定资产总值(单位:分)', + `archive_room_area` decimal(12,2) DEFAULT NULL COMMENT '档案室面积(平方米)', + `fulltime_evaluator_count` int DEFAULT NULL COMMENT '专职安全评价师数量', + `registered_engineer_count` int DEFAULT NULL COMMENT '注册安全工程师数量', + `workplace_area` decimal(12,2) DEFAULT NULL COMMENT '工作场所建筑面积(平方米)', + `unit_intro` text COMMENT '单位基本情况介绍', + `attachment_url` varchar(500) DEFAULT NULL COMMENT '单位基本情况附件地址', + `filing_status_code` int DEFAULT NULL COMMENT '备案状态编码', + `filing_status_name` varchar(50) DEFAULT NULL COMMENT '备案状态名称', + `apply_type_code` int DEFAULT NULL COMMENT '申请类型编码(1首次备案2变更备案)', + `apply_type_name` varchar(50) DEFAULT NULL COMMENT '申请类型名称', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_qual_filing_org_id` (`org_id`), + KEY `idx_qual_filing_no` (`filing_no`), + KEY `idx_qual_filing_status` (`filing_status_code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='资质备案申请表'; --- ── 1. 机构信息 ── -INSERT INTO org_info ( - id, unit_name, credit_code, safety_industry_category_name, district_name, town_street, - village_community, longitude, latitude, register_address, business_address, - ownership_type_name, legal_representative, legal_representative_phone, - principal_name, principal_phone, safety_dept_manager, safety_dept_manager_phone, - safety_deputy_phone, production_date, business_status_name, info_disclosure_url, - workplace_area, archive_room_area, fulltime_evaluator_count, registered_engineer_count, - economy_industry_code, auth_status_code, auth_status_name, state, - delete_enum, tenant_id, org_id, create_time, update_time -) VALUES ( - @org_id, '秦皇岛示例安全评价有限公司', '91130300MA0XXXXXX1', '安全评价', '海港区', '白塔岭街道', - '文府里社区', 119.586000, 39.942000, - '河北省秦皇岛市海港区示例路88号', '河北省秦皇岛市海港区示例路88号', - '民营企业', '张三', '0335-88880001', '李四', '13800138001', '王五', '13800138002', - '13800138003', '2018-06-01', '正常经营', 'https://example.com/disclosure', - 1200.00, 80.00, 12, 5, 'M7491', 3, '通过', 0, - 'false', @tenant_id, @org_id, @now, @now -); +-- ---------------------------- +-- Records of qual_filing +-- ---------------------------- +BEGIN; +COMMIT; --- ── 2. 部门(含负责人账号,便于下拉回显) ── -INSERT INTO org_department (id, org_id, parent_id, dept_name, manager_name, manager_account, dept_level_name, delete_enum, tenant_id, create_time, update_time) VALUES -(101, @org_id, 0, '综合管理部', '冯行政', '13800138014', '一级', 'false', @tenant_id, @now, @now), -(102, @org_id, 0, '评价一部', '陈评价', '13800138010', '一级', 'false', @tenant_id, @now, @now), -(103, @org_id, 0, '评价二部', '郑专项', '13800138013', '一级', 'false', @tenant_id, @now, @now), -(104, @org_id, 0, '技术质量部', '吴质量', '13800138012', '一级', 'false', @tenant_id, @now, @now), -(105, @org_id, 0, '市场开发部', '褚采样', '13800138015', '一级', 'false', @tenant_id, @now, @now), -(106, @org_id, 101, '行政组', '冯行政', '13800138014', '二级', 'false', @tenant_id, @now, @now), -(107, @org_id, 101, '人事组', '冯行政', '13800138014', '二级', 'false', @tenant_id, @now, @now), -(108, @org_id, 102, '现场评价一组', '林项目', '13800138011', '二级', 'false', @tenant_id, @now, @now), -(109, @org_id, 102, '现场评价二组', '陈评价', '13800138010', '二级', 'false', @tenant_id, @now, @now), -(110, @org_id, 102, '报告编制组', '林项目', '13800138011', '二级', 'false', @tenant_id, @now, @now), -(111, @org_id, 103, '专项评价组', '郑专项', '13800138013', '二级', 'false', @tenant_id, @now, @now), -(112, @org_id, 103, '综合评价组', '郑专项', '13800138013', '二级', 'false', @tenant_id, @now, @now), -(113, @org_id, 104, '质检组', '吴质量', '13800138012', '二级', 'false', @tenant_id, @now, @now), -(114, @org_id, 104, '档案管理组', '吴质量', '13800138012', '二级', 'false', @tenant_id, @now, @now), -(115, @org_id, 104, '设备管理组', '吴质量', '13800138012', '二级', 'false', @tenant_id, @now, @now); +-- ---------------------------- +-- Table structure for qual_filing_change +-- ---------------------------- +DROP TABLE IF EXISTS `qual_filing_change`; +CREATE TABLE `qual_filing_change` ( + `id` bigint NOT NULL COMMENT '主键', + `org_id` bigint NOT NULL COMMENT '机构id', + `origin_filing_id` bigint NOT NULL COMMENT '原备案申请id', + `change_count` int DEFAULT '0' COMMENT '变更次数', + `filing_territory_code` varchar(32) DEFAULT NULL COMMENT '备案属地编码', + `filing_territory_name` varchar(100) DEFAULT NULL COMMENT '备案属地名称', + `filing_unit_name` varchar(200) DEFAULT NULL COMMENT '备案单位', + `filing_unit_type_code` varchar(32) DEFAULT NULL COMMENT '备案单位类型编码', + `filing_unit_type_name` varchar(50) DEFAULT NULL COMMENT '备案单位类型名称', + `filing_no` varchar(100) DEFAULT NULL COMMENT '备案编号', + `business_scope` varchar(1000) DEFAULT NULL COMMENT '备案安全评价业务范围', + `register_address` varchar(500) DEFAULT NULL COMMENT '注册地址', + `office_address` varchar(500) DEFAULT NULL COMMENT '办公地址', + `credit_code` varchar(18) DEFAULT NULL COMMENT '统一社会信用代码', + `qual_cert_no` varchar(100) DEFAULT NULL COMMENT '资质证书编号', + `legal_person_phone` varchar(100) DEFAULT NULL COMMENT '法人代表及电话', + `contact_phone` varchar(100) DEFAULT NULL COMMENT '联系人及电话', + `info_disclosure_url` varchar(500) DEFAULT NULL COMMENT '信息公开网址', + `fixed_asset_amount` bigint DEFAULT NULL COMMENT '固定资产总值(单位:分)', + `archive_room_area` decimal(12,2) DEFAULT NULL COMMENT '档案室面积(平方米)', + `fulltime_evaluator_count` int DEFAULT NULL COMMENT '专职安全评价师数量', + `registered_engineer_count` int DEFAULT NULL COMMENT '注册安全工程师数量', + `workplace_area` decimal(12,2) DEFAULT NULL COMMENT '工作场所建筑面积(平方米)', + `unit_intro` text COMMENT '单位基本情况介绍', + `attachment_url` varchar(500) DEFAULT NULL COMMENT '单位基本情况附件地址', + `filing_status_code` int DEFAULT NULL COMMENT '备案状态编码', + `filing_status_name` varchar(50) DEFAULT NULL COMMENT '备案状态名称', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_qual_filing_change_org_id` (`org_id`), + KEY `idx_qual_filing_change_origin_id` (`origin_filing_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='备案变更表'; --- ── 3. 岗位(24条) ── -INSERT INTO org_position (id, org_id, dept_id, position_name, duty_desc, delete_enum, tenant_id, create_time, update_time) VALUES -(201, @org_id, 101, '部门经理', '负责综合管理部全面工作', 'false', @tenant_id, @now, @now), -(202, @org_id, 106, '行政专员', '负责日常行政事务', 'false', @tenant_id, @now, @now), -(203, @org_id, 107, '人事专员', '负责招聘与员工关系', 'false', @tenant_id, @now, @now), -(204, @org_id, 102, '部门经理', '负责评价一部项目管理', 'false', @tenant_id, @now, @now), -(205, @org_id, 108, '评价师', '负责现场安全评价', 'false', @tenant_id, @now, @now), -(206, @org_id, 108, '项目负责人', '负责评价项目统筹', 'false', @tenant_id, @now, @now), -(207, @org_id, 109, '评价师', '负责现场安全评价', 'false', @tenant_id, @now, @now), -(208, @org_id, 109, '助理评价师', '协助现场评价工作', 'false', @tenant_id, @now, @now), -(209, @org_id, 110, '报告编制员', '负责评价报告编制', 'false', @tenant_id, @now, @now), -(210, @org_id, 110, '报告审核员', '负责报告质量审核', 'false', @tenant_id, @now, @now), -(211, @org_id, 103, '部门经理', '负责评价二部全面工作', 'false', @tenant_id, @now, @now), -(212, @org_id, 111, '专项评价师', '负责专项安全评价', 'false', @tenant_id, @now, @now), -(213, @org_id, 112, '综合评价师', '负责综合安全评价', 'false', @tenant_id, @now, @now), -(214, @org_id, 104, '质量管理员', '负责质量体系运行', 'false', @tenant_id, @now, @now), -(215, @org_id, 113, '质检工程师', '负责报告与过程质检', 'false', @tenant_id, @now, @now), -(216, @org_id, 114, '档案管理员', '负责档案归档与保管', 'false', @tenant_id, @now, @now), -(217, @org_id, 115, '设备管理员', '负责仪器设备管理', 'false', @tenant_id, @now, @now), -(218, @org_id, 105, '市场经理', '负责市场开拓', 'false', @tenant_id, @now, @now), -(219, @org_id, 105, '客户经理', '负责客户关系维护', 'false', @tenant_id, @now, @now), -(220, @org_id, 102, '技术负责人', '负责评价技术把关', 'false', @tenant_id, @now, @now), -(221, @org_id, 103, '技术负责人', '负责评价技术把关', 'false', @tenant_id, @now, @now), -(222, @org_id, 108, '采样员', '负责现场样品采集', 'false', @tenant_id, @now, @now), -(223, @org_id, 109, '采样员', '负责现场样品采集', 'false', @tenant_id, @now, @now), -(224, @org_id, 110, '资料员', '负责项目资料整理', 'false', @tenant_id, @now, @now); +-- ---------------------------- +-- Records of qual_filing_change +-- ---------------------------- +BEGIN; +COMMIT; --- ── 4. 机构资质证书 ── -INSERT INTO org_qualification ( - id, org_id, license_type_name, cert_name, cert_no, issue_date, issue_org, - valid_start_date, valid_end_date, enable_flag, delete_enum, tenant_id, create_time, update_time -) VALUES -(301, @org_id, '安全评价机构资质证书', '安全评价机构资质证书(甲级)', 'AQPJ-2024-001', '2024-01-15', '河北省应急管理厅', '2024-01-15', '2027-01-14', 1, 'false', @tenant_id, @now, @now), -(302, @org_id, '营业执照', '营业执照', '91130300MA0XXXXXX1', '2018-06-01', '秦皇岛市行政审批局', '2018-06-01', '2099-12-31', 1, 'false', @tenant_id, @now, @now); +-- ---------------------------- +-- Table structure for qual_filing_change_detail +-- ---------------------------- +DROP TABLE IF EXISTS `qual_filing_change_detail`; +CREATE TABLE `qual_filing_change_detail` ( + `id` bigint NOT NULL COMMENT '主键', + `change_id` bigint NOT NULL COMMENT '备案变更id', + `change_field` varchar(100) NOT NULL COMMENT '变更字段', + `change_content` varchar(1000) NOT NULL COMMENT '变更内容', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `org_id` bigint DEFAULT NULL COMMENT '单位id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_qual_filing_change_detail_change_id` (`change_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='备案变更明细表'; --- ── 5. 人员信息 ── -INSERT INTO org_personnel ( - id, org_id, dept_id, post_id, user_name, account, gender_code, gender_name, - birth_date, id_card_no, current_address, office_address, education_name, - graduate_school, major, employment_status_code, employment_status_name, - delete_enum, tenant_id, create_time, update_time -) VALUES -(401, @org_id, 102, 205, '陈评价', '13800138010', 1, '男', '1985-03-15', '130302198503151234', '秦皇岛市海港区', '秦皇岛市海港区示例路88号', '本科', '华北理工大学', '安全工程', 1, '在职', 'false', @tenant_id, @now, @now), -(402, @org_id, 102, 206, '林项目', '13800138011', 1, '男', '1988-07-22', '130302198807221234', '秦皇岛市海港区', '秦皇岛市海港区示例路88号', '硕士', '中国矿业大学', '安全科学与工程', 1, '在职', 'false', @tenant_id, @now, @now), -(403, @org_id, 104, 215, '吴质量', '13800138012', 2, '女', '1990-11-08', '130302199011081234', '秦皇岛市海港区', '秦皇岛市海港区示例路88号', '本科', '河北工程大学', '安全工程', 1, '在职', 'false', @tenant_id, @now, @now), -(404, @org_id, 103, 212, '郑专项', '13800138013', 1, '男', '1987-01-30', '130302198701301234', '秦皇岛市开发区', '秦皇岛市海港区示例路88号', '本科', '东北大学', '安全工程', 1, '在职', 'false', @tenant_id, @now, @now), -(405, @org_id, 101, 202, '冯行政', '13800138014', 2, '女', '1992-05-18', '130302199205181234', '秦皇岛市海港区', '秦皇岛市海港区示例路88号', '大专', '秦皇岛职业技术学院', '行政管理', 1, '在职', 'false', @tenant_id, @now, @now), -(406, @org_id, 108, 222, '褚采样', '13800138015', 1, '男', '1995-09-03', '130302199509031234', '秦皇岛市北戴河区', '秦皇岛市海港区示例路88号', '本科', '河北科技大学', '应用化学', 1, '在职', 'false', @tenant_id, @now, @now), -(407, @org_id, 101, 201, '钱离职', '13800138016', 1, '男', '1980-01-01', '130302198001011234', '秦皇岛市海港区', '秦皇岛市海港区示例路88号', '本科', '燕山大学', '安全工程', 2, '离职', 'false', @tenant_id, @now, @now), -(408, @org_id, 102, 205, '孙离职', '13800138017', 2, '女', '1986-06-12', '130302198606121234', '秦皇岛市海港区', '秦皇岛市海港区示例路88号', '本科', '河北工业大学', '安全工程', 2, '离职', 'false', @tenant_id, @now, @now), -(409, @org_id, 103, 212, '周离职', '13800138018', 1, '男', '1984-09-20', '130302198409201234', '秦皇岛市开发区', '秦皇岛市海港区示例路88号', '硕士', '天津大学', '安全科学与工程', 2, '离职', 'false', @tenant_id, @now, @now); +-- ---------------------------- +-- Records of qual_filing_change_detail +-- ---------------------------- +BEGIN; +COMMIT; --- ── 6. 人员证书 ── -INSERT INTO org_personnel_cert ( - id, org_id, personnel_id, cert_name, cert_category_name, operation_category_name, - cert_no, issue_org, valid_start_date, valid_end_date, delete_enum, tenant_id, create_time, update_time -) VALUES -(501, @org_id, 401, '注册安全工程师证', '注册安全工程师', '金属非金属矿山', 'ZCAQ-2019-001', '应急管理部', '2019-06-01', '2025-06-01', 'false', @tenant_id, @now, @now), -(502, @org_id, 402, '安全评价师证(一级)', '安全评价师', '安全评价', 'AQPJS-2020-002', '中国安全生产协会', '2020-03-01', '2026-03-01', 'false', @tenant_id, @now, @now); +-- ---------------------------- +-- Table structure for qual_filing_commitment +-- ---------------------------- +DROP TABLE IF EXISTS `qual_filing_commitment`; +CREATE TABLE `qual_filing_commitment` ( + `id` bigint NOT NULL COMMENT '主键', + `filing_id` bigint NOT NULL COMMENT '备案申请id', + `commitment_content` text COMMENT '承诺内容', + `legal_rep_signature_url` varchar(500) DEFAULT NULL COMMENT '法定代表人签名图片地址', + `sign_date` date DEFAULT NULL COMMENT '签署日期', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `org_id` bigint DEFAULT NULL COMMENT '单位id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + UNIQUE KEY `uk_qual_filing_commitment_filing_id` (`filing_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='法定代表人承诺书表'; --- ── 7. 人员变更记录(原型:3/2/6 条变更) ── -INSERT INTO org_personnel_change (id, org_id, personnel_id, change_item, change_time, operator_name, delete_enum, tenant_id, create_time, update_time) VALUES -(601, @org_id, 407, '修改联系电话', DATE_SUB(@now, INTERVAL 30 DAY), '管理员', 'false', @tenant_id, @now, @now), -(602, @org_id, 407, '调整所属岗位', DATE_SUB(@now, INTERVAL 20 DAY), '管理员', 'false', @tenant_id, @now, @now), -(603, @org_id, 407, '更新学历信息', DATE_SUB(@now, INTERVAL 10 DAY), '管理员', 'false', @tenant_id, @now, @now), -(604, @org_id, 408, '修改办公地址', DATE_SUB(@now, INTERVAL 25 DAY), '管理员', 'false', @tenant_id, @now, @now), -(605, @org_id, 408, '调整部门', DATE_SUB(@now, INTERVAL 12 DAY), '管理员', 'false', @tenant_id, @now, @now), -(606, @org_id, 409, '修改姓名', DATE_SUB(@now, INTERVAL 40 DAY), '管理员', 'false', @tenant_id, @now, @now), -(607, @org_id, 409, '修改账号', DATE_SUB(@now, INTERVAL 35 DAY), '管理员', 'false', @tenant_id, @now, @now), -(608, @org_id, 409, '修改性别', DATE_SUB(@now, INTERVAL 30 DAY), '管理员', 'false', @tenant_id, @now, @now), -(609, @org_id, 409, '修改出生日期', DATE_SUB(@now, INTERVAL 25 DAY), '管理员', 'false', @tenant_id, @now, @now), -(610, @org_id, 409, '修改身份证号', DATE_SUB(@now, INTERVAL 20 DAY), '管理员', 'false', @tenant_id, @now, @now), -(611, @org_id, 409, '修改现住地址', DATE_SUB(@now, INTERVAL 15 DAY), '管理员', 'false', @tenant_id, @now, @now), -(612, @org_id, 401, '修改联系电话', DATE_SUB(@now, INTERVAL 7 DAY), '管理员', 'false', @tenant_id, @now, @now), -(613, @org_id, 403, '修改办公地址', DATE_SUB(@now, INTERVAL 5 DAY), '管理员', 'false', @tenant_id, @now, @now); +-- ---------------------------- +-- Records of qual_filing_commitment +-- ---------------------------- +BEGIN; +COMMIT; --- ── 8. 离职申请(原型:未审核/已审核/未审核) ── -INSERT INTO org_resign_apply ( - id, org_id, personnel_id, applicant_name, apply_time, resign_reason, - expected_resign_date, audit_status_code, audit_status_name, delete_enum, tenant_id, create_time, update_time -) VALUES -(701, @org_id, 407, '钱离职', DATE_SUB(@now, INTERVAL 5 DAY), '个人原因申请离职', DATE_ADD(CURDATE(), INTERVAL 30 DAY), 0, '未审核', 'false', @tenant_id, @now, @now), -(702, @org_id, 408, '孙离职', DATE_SUB(@now, INTERVAL 60 DAY), '家庭原因', DATE_SUB(CURDATE(), INTERVAL 30 DAY), 1, '已审核', 'false', @tenant_id, @now, @now), -(703, @org_id, 409, '周离职', DATE_SUB(@now, INTERVAL 3 DAY), '工作调动', DATE_ADD(CURDATE(), INTERVAL 15 DAY), 0, '未审核', 'false', @tenant_id, @now, @now), -(704, @org_id, 403, '吴质量', DATE_SUB(@now, INTERVAL 8 DAY), '个人发展', DATE_ADD(CURDATE(), INTERVAL 20 DAY), 0, '未审核', 'false', @tenant_id, @now, @now); +-- ---------------------------- +-- Table structure for qual_filing_equipment +-- ---------------------------- +DROP TABLE IF EXISTS `qual_filing_equipment`; +CREATE TABLE `qual_filing_equipment` ( + `id` bigint NOT NULL COMMENT '主键', + `filing_id` bigint NOT NULL COMMENT '备案申请id', + `source_equipment_id` bigint DEFAULT NULL COMMENT '来源装备id', + `device_name` varchar(200) NOT NULL COMMENT '设备名称', + `device_model` varchar(100) DEFAULT NULL COMMENT '设备型号', + `instrument_type_code` varchar(32) DEFAULT NULL COMMENT '仪器类型编码', + `instrument_type_name` varchar(50) DEFAULT NULL COMMENT '仪器类型名称', + `device_type_code` varchar(32) DEFAULT NULL COMMENT '设备类型编码', + `device_type_name` varchar(50) DEFAULT NULL COMMENT '设备类型名称', + `manufacturer` varchar(200) DEFAULT NULL COMMENT '厂家', + `flow_desc` varchar(500) DEFAULT NULL COMMENT '设备流量说明', + `min_flow` decimal(12,4) DEFAULT NULL COMMENT '最小流量', + `max_flow` decimal(12,4) DEFAULT NULL COMMENT '最大流量', + `calibration_unit` varchar(200) DEFAULT NULL COMMENT '校准单位', + `calibration_init_value` varchar(100) DEFAULT NULL COMMENT '校准初始值', + `field_calibration_type_code` varchar(32) DEFAULT NULL COMMENT '现场校验类型编码', + `field_calibration_type_name` varchar(50) DEFAULT NULL COMMENT '现场校验类型名称', + `dual_channel_flag` tinyint DEFAULT '2' COMMENT '是否双路(1是2否)', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `org_id` bigint DEFAULT NULL COMMENT '单位id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_qual_filing_equipment_filing_id` (`filing_id`), + KEY `idx_qual_filing_equipment_source_id` (`source_equipment_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='备案申请装备表'; --- ── 9. 装备信息 ── -INSERT INTO org_equipment ( - id, org_id, device_name, device_model, instrument_type_code, instrument_type_name, - device_type_code, device_type_name, - manufacturer, flow_desc, min_flow, max_flow, calibration_unit, calibration_init_value, - field_calibration_type_name, dual_channel_flag, enable_flag, delete_enum, tenant_id, create_time, update_time -) VALUES -(801, @org_id, '四合一气体检测仪', 'PGM-6208', '检测仪器', '检测仪器', '便携式', '便携式', '英国ION Science', '0-100%LEL', 0.0000, 100.0000, '市计量院', '0', '定期校验', 2, 1, 'false', @tenant_id, @now, @now), -(802, @org_id, '激光粉尘仪', 'LD-5K', '检测仪器', '检测仪器', '便携式', '便携式', '青岛众瑞', '0-10mg/m3', 0.0000, 10.0000, '市计量院', '0', '定期校验', 2, 1, 'false', @tenant_id, @now, @now), -(803, @org_id, '声级计', 'AWA5688', '检测仪器', '检测仪器', '便携式', '便携式', '杭州爱华', '30-130dB', 0.0000, 130.0000, '市计量院', '0', '定期校验', 2, 1, 'false', @tenant_id, @now, @now), -(804, @org_id, '万用表', 'Fluke87V', '电工仪器', '电工仪器', '手持式', '手持式', 'Fluke', '-', 0.0000, 0.0000, '市计量院', '0', '定期校验', 2, 1, 'false', @tenant_id, @now, @now), -(805, @org_id, '风速仪', 'Testo410-2','检测仪器','检测仪器', '便携式', '便携式', '德图Testo', '0.4-20m/s', 0.4000, 20.0000, '市计量院', '0', '定期校验', 2, 1, 'false', @tenant_id, @now, @now); +-- ---------------------------- +-- Records of qual_filing_equipment +-- ---------------------------- +BEGIN; +COMMIT; --- ============================================================ --- 增量升级脚本(已有库按需执行) --- ============================================================ --- ALTER TABLE org_department ADD COLUMN manager_account varchar(50) DEFAULT NULL COMMENT '负责人账号' AFTER manager_name; --- ALTER TABLE org_personnel ADD UNIQUE KEY uk_org_personnel_org_account (org_id, account); --- UPDATE org_equipment SET instrument_type_code = instrument_type_name, device_type_code = device_type_name WHERE instrument_type_code IS NULL OR device_type_code IS NULL; --- UPDATE org_resign_apply SET audit_status_code = 0, audit_status_name = '未审核', reject_reason = NULL WHERE id = 701; +-- ---------------------------- +-- Table structure for qual_filing_material +-- ---------------------------- +DROP TABLE IF EXISTS `qual_filing_material`; +CREATE TABLE `qual_filing_material` ( + `id` bigint NOT NULL COMMENT '主键', + `filing_id` bigint NOT NULL COMMENT '备案申请id', + `material_content` varchar(500) NOT NULL COMMENT '材料内容', + `material_format` varchar(20) DEFAULT NULL COMMENT '材料格式', + `attachment_url` varchar(500) DEFAULT NULL COMMENT '上传附件地址', + `material_remark` varchar(1000) DEFAULT NULL COMMENT '注释', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `org_id` bigint DEFAULT NULL COMMENT '单位id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_qual_filing_material_filing_id` (`filing_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='备案申请材料表'; +-- ---------------------------- +-- Records of qual_filing_material +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for qual_filing_personnel +-- ---------------------------- +DROP TABLE IF EXISTS `qual_filing_personnel`; +CREATE TABLE `qual_filing_personnel` ( + `id` bigint NOT NULL COMMENT '主键', + `filing_id` bigint NOT NULL COMMENT '备案申请id', + `source_personnel_id` bigint DEFAULT NULL COMMENT '来源人员id', + `person_name` varchar(50) NOT NULL COMMENT '人员姓名', + `person_type_code` varchar(32) DEFAULT NULL COMMENT '人员类型编码', + `person_type_name` varchar(50) DEFAULT NULL COMMENT '人员类型名称', + `position_name` varchar(50) DEFAULT NULL COMMENT '职务', + `title_name` varchar(50) DEFAULT NULL COMMENT '职称', + `gender_code` tinyint DEFAULT NULL COMMENT '性别编码', + `gender_name` varchar(10) DEFAULT NULL COMMENT '性别名称', + `birth_date` date DEFAULT NULL COMMENT '出生日期', + `id_card_no` varchar(18) DEFAULT NULL COMMENT '身份证号', + `current_address` varchar(500) DEFAULT NULL COMMENT '现住地址', + `office_address` varchar(500) DEFAULT NULL COMMENT '办公地址', + `education_code` varchar(32) DEFAULT NULL COMMENT '学历编码', + `education_name` varchar(50) DEFAULT NULL COMMENT '学历名称', + `graduate_school` varchar(200) DEFAULT NULL COMMENT '毕业院校', + `major` varchar(100) DEFAULT NULL COMMENT '专业', + `qual_scope` varchar(500) DEFAULT NULL COMMENT '资质范围', + `publications` varchar(1000) DEFAULT NULL COMMENT '出版学术专著专利获奖论文等', + `professional_level_cert` varchar(200) DEFAULT NULL COMMENT '职业等级及证书编号', + `register_engineer_flag` tinyint DEFAULT '2' COMMENT '是否具有注册安全工程师资格(1是2否)', + `ability_declaration` varchar(1000) DEFAULT NULL COMMENT '自我申报的专业能力及认定方式', + `work_experience` text COMMENT '主要学习工作经历', + `proof_material_url` varchar(500) DEFAULT NULL COMMENT '申报专业能力证明材料地址', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `org_id` bigint DEFAULT NULL COMMENT '单位id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_qual_filing_personnel_filing_id` (`filing_id`), + KEY `idx_qual_filing_personnel_source_id` (`source_personnel_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='备案申请人员表'; + +-- ---------------------------- +-- Records of qual_filing_personnel +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for qual_filing_personnel_cert +-- ---------------------------- +DROP TABLE IF EXISTS `qual_filing_personnel_cert`; +CREATE TABLE `qual_filing_personnel_cert` ( + `id` bigint NOT NULL COMMENT '主键', + `filing_id` bigint NOT NULL COMMENT '备案申请id', + `filing_personnel_id` bigint NOT NULL COMMENT '备案人员id', + `cert_name` varchar(200) DEFAULT NULL COMMENT '证照名称', + `cert_type_code` varchar(32) DEFAULT NULL COMMENT '证书类型编码', + `cert_type_name` varchar(50) DEFAULT NULL COMMENT '证书类型名称', + `cert_category_code` varchar(32) DEFAULT NULL COMMENT '证书类别编码', + `cert_category_name` varchar(50) DEFAULT NULL COMMENT '证书类别名称', + `operation_category_code` varchar(32) DEFAULT NULL COMMENT '证书作业类别编码', + `operation_category_name` varchar(50) DEFAULT NULL COMMENT '证书作业类别名称', + `cert_no` varchar(100) DEFAULT NULL COMMENT '证书编号', + `issue_org` varchar(200) DEFAULT NULL COMMENT '发证机关', + `valid_start_date` date DEFAULT NULL COMMENT '证书有效开始日期', + `valid_end_date` date DEFAULT NULL COMMENT '证书有效结束日期', + `review_date` date DEFAULT NULL COMMENT '复核日期', + `cert_attachment_url` varchar(500) DEFAULT NULL COMMENT '证书附件地址', + `delete_enum` varchar(32) DEFAULT NULL COMMENT '删除标识true false', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注', + `create_name` varchar(50) DEFAULT NULL COMMENT '创建人姓名', + `update_name` varchar(50) DEFAULT NULL COMMENT '更新人姓名', + `tenant_id` bigint DEFAULT NULL COMMENT '租户id', + `org_id` bigint DEFAULT NULL COMMENT '单位id', + `version` int DEFAULT NULL COMMENT '版本', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `update_time` datetime DEFAULT NULL COMMENT '修改时间', + `create_id` bigint DEFAULT NULL COMMENT '创建人id', + `update_id` bigint DEFAULT NULL COMMENT '修改人id', + `env` varchar(50) DEFAULT NULL COMMENT '环境', + PRIMARY KEY (`id`), + KEY `idx_qual_filing_personnel_cert_filing_id` (`filing_id`), + KEY `idx_qual_filing_personnel_cert_personnel_id` (`filing_personnel_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='备案申请人员证书表'; + +-- ---------------------------- +-- Records of qual_filing_personnel_cert +-- ---------------------------- +BEGIN; +COMMIT; + +SET FOREIGN_KEY_CHECKS = 1; diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgInfoExecutor.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgInfoExecutor.java index 6b25084..5d5dde2 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgInfoExecutor.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgInfoExecutor.java @@ -67,6 +67,15 @@ public class OrgInfoExecutor implements OrgInfoApi { entity.setEconomyIndustryName(cmd.getEconomyIndustryName()); entity.setAuthStatusCode(cmd.getAuthStatusCode()); entity.setAuthStatusName(cmd.getAuthStatusName()); + entity.setEnterpriseStatusCode(cmd.getEnterpriseStatusCode()); + entity.setEnterpriseStatusName(cmd.getEnterpriseStatusName()); + entity.setEnterpriseScaleCode(cmd.getEnterpriseScaleCode()); + entity.setEnterpriseScaleName(cmd.getEnterpriseScaleName()); + entity.setFilingTypeCode(cmd.getFilingTypeCode()); + entity.setFilingTypeName(cmd.getFilingTypeName()); + entity.setFilingRecordStatusCode(cmd.getFilingRecordStatusCode()); + entity.setFilingRecordStatusName(cmd.getFilingRecordStatusName()); + entity.setAttachmentUrls(cmd.getAttachmentUrls()); OrgInfoEntity result = orgInfoDomainService.add(entity); return SingleResponse.success(toCO(result)); @@ -115,6 +124,15 @@ public class OrgInfoExecutor implements OrgInfoApi { entity.setEconomyIndustryName(cmd.getEconomyIndustryName()); entity.setAuthStatusCode(cmd.getAuthStatusCode()); entity.setAuthStatusName(cmd.getAuthStatusName()); + entity.setEnterpriseStatusCode(cmd.getEnterpriseStatusCode()); + entity.setEnterpriseStatusName(cmd.getEnterpriseStatusName()); + entity.setEnterpriseScaleCode(cmd.getEnterpriseScaleCode()); + entity.setEnterpriseScaleName(cmd.getEnterpriseScaleName()); + entity.setFilingTypeCode(cmd.getFilingTypeCode()); + entity.setFilingTypeName(cmd.getFilingTypeName()); + entity.setFilingRecordStatusCode(cmd.getFilingRecordStatusCode()); + entity.setFilingRecordStatusName(cmd.getFilingRecordStatusName()); + entity.setAttachmentUrls(cmd.getAttachmentUrls()); OrgInfoEntity result = orgInfoDomainService.modify(entity); return SingleResponse.success(toCO(result)); @@ -209,6 +227,15 @@ public class OrgInfoExecutor implements OrgInfoApi { co.setEconomyIndustryName(entity.getEconomyIndustryName()); co.setAuthStatusCode(entity.getAuthStatusCode()); co.setAuthStatusName(entity.getAuthStatusName()); + co.setEnterpriseStatusCode(entity.getEnterpriseStatusCode()); + co.setEnterpriseStatusName(entity.getEnterpriseStatusName()); + co.setEnterpriseScaleCode(entity.getEnterpriseScaleCode()); + co.setEnterpriseScaleName(entity.getEnterpriseScaleName()); + co.setFilingTypeCode(entity.getFilingTypeCode()); + co.setFilingTypeName(entity.getFilingTypeName()); + co.setFilingRecordStatusCode(entity.getFilingRecordStatusCode()); + co.setFilingRecordStatusName(entity.getFilingRecordStatusName()); + co.setAttachmentUrls(entity.getAttachmentUrls()); co.setState(entity.getState()); co.setTenantId(entity.getTenantId()); return co; diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgPersonnelExecutor.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgPersonnelExecutor.java index 67a9fe2..6f6cbf1 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgPersonnelExecutor.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgPersonnelExecutor.java @@ -4,6 +4,8 @@ import com.jjb.saas.system.client.user.facade.UserFacade; import com.jjb.saas.system.client.user.request.FacadeUserAddCmd; import com.jjb.saas.system.client.user.request.UserAddCmd; import com.jjb.saas.system.client.user.request.UserUpdatePasswordCmd; +import com.zcloud.gbscommon.utils.MD5; +import com.zcloud.gbscommon.utils.Sm2Util; import org.apache.dubbo.config.annotation.DubboReference; import org.qinan.safetyeval.app.support.OrgPersonnelChangeRecorder; import org.qinan.safetyeval.app.support.OrgPersonnelViewEnricher; @@ -54,6 +56,8 @@ public class OrgPersonnelExecutor implements OrgPersonnelApi { @Value("${def.password:a123456}") private String defPassword; + @Value("${def.publicKey:0402df2195296d4062ac85ad766994d73e871b887e18efb9a9a06b4cebc72372869b7da6c347c129dee2b46a0f279ff066b01c76208c2a052af75977c722a2ccee}") + private String publicKey; @Override @Transactional(rollbackFor = Exception.class) @@ -108,7 +112,8 @@ public class OrgPersonnelExecutor implements OrgPersonnelApi { // 联调阶段:密码重置占位,后续对接统一用户中心 UserUpdatePasswordCmd userUpdatePasswordCmd = new UserUpdatePasswordCmd(); userUpdatePasswordCmd.setId(entity.getId()); - userUpdatePasswordCmd.setPassword(defPassword); + String encrypt = Sm2Util.encryptHex(MD5.md5(defPassword), publicKey); + userUpdatePasswordCmd.setPassword(encrypt); userFacade.updatePassword(userUpdatePasswordCmd); return SingleResponse.success(); } @@ -165,6 +170,7 @@ public class OrgPersonnelExecutor implements OrgPersonnelApi { entity.setMajor(cmd.getMajor()); entity.setEmploymentStatusCode(cmd.getEmploymentStatusCode()); entity.setEmploymentStatusName(cmd.getEmploymentStatusName()); + applyPersonnelExtFields(entity, cmd); entity.setDeptId(cmd.getDeptId()); entity.setPostId(cmd.getPostId()); return entity; @@ -186,11 +192,50 @@ public class OrgPersonnelExecutor implements OrgPersonnelApi { entity.setMajor(cmd.getMajor()); entity.setEmploymentStatusCode(cmd.getEmploymentStatusCode()); entity.setEmploymentStatusName(cmd.getEmploymentStatusName()); + applyPersonnelExtFields(entity, cmd); entity.setDeptId(cmd.getDeptId()); entity.setPostId(cmd.getPostId()); return entity; } + private void applyPersonnelExtFields(OrgPersonnelEntity entity, OrgPersonnelAddCmd cmd) { + entity.setPersonTypeCode(cmd.getPersonTypeCode()); + entity.setPersonTypeName(cmd.getPersonTypeName()); + entity.setQualScope(cmd.getQualScope()); + entity.setProfessionalLevelCode(cmd.getProfessionalLevelCode()); + entity.setProfessionalLevelName(cmd.getProfessionalLevelName()); + entity.setEvaluatorCertNo(cmd.getEvaluatorCertNo()); + entity.setEducationTypeCode(cmd.getEducationTypeCode()); + entity.setEducationTypeName(cmd.getEducationTypeName()); + entity.setEducationLevelCode(cmd.getEducationLevelCode()); + entity.setEducationLevelName(cmd.getEducationLevelName()); + entity.setTitleName(cmd.getTitleName()); + entity.setRegisterEngineerFlag(cmd.getRegisterEngineerFlag()); + entity.setPublications(cmd.getPublications()); + entity.setAbilityDeclaration(cmd.getAbilityDeclaration()); + entity.setWorkExperience(cmd.getWorkExperience()); + entity.setProofMaterialUrl(cmd.getProofMaterialUrl()); + } + + private void applyPersonnelExtFields(OrgPersonnelEntity entity, OrgPersonnelModifyCmd cmd) { + entity.setPersonTypeCode(cmd.getPersonTypeCode()); + entity.setPersonTypeName(cmd.getPersonTypeName()); + entity.setQualScope(cmd.getQualScope()); + entity.setProfessionalLevelCode(cmd.getProfessionalLevelCode()); + entity.setProfessionalLevelName(cmd.getProfessionalLevelName()); + entity.setEvaluatorCertNo(cmd.getEvaluatorCertNo()); + entity.setEducationTypeCode(cmd.getEducationTypeCode()); + entity.setEducationTypeName(cmd.getEducationTypeName()); + entity.setEducationLevelCode(cmd.getEducationLevelCode()); + entity.setEducationLevelName(cmd.getEducationLevelName()); + entity.setTitleName(cmd.getTitleName()); + entity.setRegisterEngineerFlag(cmd.getRegisterEngineerFlag()); + entity.setPublications(cmd.getPublications()); + entity.setAbilityDeclaration(cmd.getAbilityDeclaration()); + entity.setWorkExperience(cmd.getWorkExperience()); + entity.setProofMaterialUrl(cmd.getProofMaterialUrl()); + } + private OrgPersonnelCO toCO(OrgPersonnelEntity entity) { if (entity == null) { return null; @@ -213,6 +258,22 @@ public class OrgPersonnelExecutor implements OrgPersonnelApi { co.setMajor(entity.getMajor()); co.setEmploymentStatusCode(entity.getEmploymentStatusCode()); co.setEmploymentStatusName(entity.getEmploymentStatusName()); + co.setPersonTypeCode(entity.getPersonTypeCode()); + co.setPersonTypeName(entity.getPersonTypeName()); + co.setQualScope(entity.getQualScope()); + co.setProfessionalLevelCode(entity.getProfessionalLevelCode()); + co.setProfessionalLevelName(entity.getProfessionalLevelName()); + co.setEvaluatorCertNo(entity.getEvaluatorCertNo()); + co.setEducationTypeCode(entity.getEducationTypeCode()); + co.setEducationTypeName(entity.getEducationTypeName()); + co.setEducationLevelCode(entity.getEducationLevelCode()); + co.setEducationLevelName(entity.getEducationLevelName()); + co.setTitleName(entity.getTitleName()); + co.setRegisterEngineerFlag(entity.getRegisterEngineerFlag()); + co.setPublications(entity.getPublications()); + co.setAbilityDeclaration(entity.getAbilityDeclaration()); + co.setWorkExperience(entity.getWorkExperience()); + co.setProofMaterialUrl(entity.getProofMaterialUrl()); co.setTenantId(entity.getTenantId()); return co; } diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgResignApplyExecutor.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgResignApplyExecutor.java index d75b452..9257220 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgResignApplyExecutor.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/OrgResignApplyExecutor.java @@ -41,9 +41,9 @@ public class OrgResignApplyExecutor implements OrgResignApplyApi { @Override public SingleResponse add(OrgResignApplyAddCmd cmd) { OrgResignApplyEntity entity = new OrgResignApplyEntity(); - // 申请人从当前登录用户自动获取,不从前端参数传入 - String currentUserName = AuthUserContextAdapter.getCurrentUserName(); - entity.setApplicantName(StringUtils.hasText(currentUserName) ? currentUserName : cmd.getApplicantName()); + Long personnelId = resolvePersonnelId(cmd.getPersonnelId(), cmd.getApplicantName()); + entity.setPersonnelId(personnelId); + entity.setApplicantName(resolveApplicantName(personnelId, cmd.getApplicantName())); entity.setApplyTime(cmd.getApplyTime()); entity.setResignReason(cmd.getResignReason()); entity.setExpectedResignDate(cmd.getExpectedResignDate()); @@ -52,7 +52,6 @@ public class OrgResignApplyExecutor implements OrgResignApplyApi { entity.setAuditStatusName(cmd.getAuditStatusName() != null ? cmd.getAuditStatusName() : "未审核"); entity.setRejectReason(cmd.getRejectReason()); entity.setRemark(cmd.getRemark()); - entity.setPersonnelId(resolvePersonnelId(cmd.getPersonnelId(), cmd.getApplicantName())); OrgResignApplyEntity result = orgResignApplyDomainService.add(entity); OrgResignApplyCO co = toCO(result); @@ -130,6 +129,20 @@ public class OrgResignApplyExecutor implements OrgResignApplyApi { } } + private String resolveApplicantName(Long personnelId, String applicantName) { + if (personnelId != null && orgPersonnelGateway != null) { + OrgPersonnelEntity personnel = orgPersonnelGateway.get(personnelId); + if (personnel != null && StringUtils.hasText(personnel.getUserName())) { + return personnel.getUserName(); + } + } + if (StringUtils.hasText(applicantName)) { + return applicantName; + } + String currentUserName = AuthUserContextAdapter.getCurrentUserName(); + return StringUtils.hasText(currentUserName) ? currentUserName : applicantName; + } + private Long resolvePersonnelId(Long personnelId, String applicantName) { if (personnelId != null) { return personnelId; diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/support/OrgPersonnelViewEnricher.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/support/OrgPersonnelViewEnricher.java index f6729a9..a0d70f6 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/support/OrgPersonnelViewEnricher.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/support/OrgPersonnelViewEnricher.java @@ -114,6 +114,9 @@ public class OrgPersonnelViewEnricher { if (personnel == null) { return; } + if (StringUtils.hasText(personnel.getUserName())) { + co.setApplicantName(personnel.getUserName()); + } co.setAccount(personnel.getAccount()); if (personnel.getDeptId() != null) { OrgDepartmentEntity dept = orgDepartmentGateway.get(personnel.getDeptId()); diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/OrgInfoCO.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/OrgInfoCO.java index a811887..6c944f0 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/OrgInfoCO.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/OrgInfoCO.java @@ -114,6 +114,33 @@ public class OrgInfoCO { /** authStatusName */ private String authStatusName; + /** enterpriseStatusCode */ + private Integer enterpriseStatusCode; + + /** enterpriseStatusName */ + private String enterpriseStatusName; + + /** enterpriseScaleCode */ + private String enterpriseScaleCode; + + /** enterpriseScaleName */ + private String enterpriseScaleName; + + /** filingTypeCode */ + private String filingTypeCode; + + /** filingTypeName */ + private String filingTypeName; + + /** filingRecordStatusCode */ + private Integer filingRecordStatusCode; + + /** filingRecordStatusName */ + private String filingRecordStatusName; + + /** attachmentUrls */ + private String attachmentUrls; + /** 状态(0启用1禁用) */ private Integer state; diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/OrgPersonnelCO.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/OrgPersonnelCO.java index 71b8a9e..c7317c1 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/OrgPersonnelCO.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/OrgPersonnelCO.java @@ -62,6 +62,54 @@ public class OrgPersonnelCO { /** employmentStatusName */ private String employmentStatusName; + /** personTypeCode */ + private String personTypeCode; + + /** personTypeName */ + private String personTypeName; + + /** qualScope */ + private String qualScope; + + /** professionalLevelCode */ + private String professionalLevelCode; + + /** professionalLevelName */ + private String professionalLevelName; + + /** evaluatorCertNo */ + private String evaluatorCertNo; + + /** educationTypeCode */ + private String educationTypeCode; + + /** educationTypeName */ + private String educationTypeName; + + /** educationLevelCode */ + private String educationLevelCode; + + /** educationLevelName */ + private String educationLevelName; + + /** titleName */ + private String titleName; + + /** registerEngineerFlag */ + private Integer registerEngineerFlag; + + /** publications */ + private String publications; + + /** abilityDeclaration */ + private String abilityDeclaration; + + /** workExperience */ + private String workExperience; + + /** proofMaterialUrl */ + private String proofMaterialUrl; + /** 部门名称(列表展示,非持久化) */ private String deptName; diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgInfoAddCmd.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgInfoAddCmd.java index 8b2c8a3..df8834f 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgInfoAddCmd.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgInfoAddCmd.java @@ -110,4 +110,31 @@ public class OrgInfoAddCmd { /** authStatusName */ private String authStatusName; + + /** enterpriseStatusCode */ + private Integer enterpriseStatusCode; + + /** enterpriseStatusName */ + private String enterpriseStatusName; + + /** enterpriseScaleCode */ + private String enterpriseScaleCode; + + /** enterpriseScaleName */ + private String enterpriseScaleName; + + /** filingTypeCode */ + private String filingTypeCode; + + /** filingTypeName */ + private String filingTypeName; + + /** filingRecordStatusCode */ + private Integer filingRecordStatusCode; + + /** filingRecordStatusName */ + private String filingRecordStatusName; + + /** attachmentUrls */ + private String attachmentUrls; } diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgInfoModifyCmd.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgInfoModifyCmd.java index 39a4358..ee8a3fc 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgInfoModifyCmd.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgInfoModifyCmd.java @@ -114,6 +114,33 @@ public class OrgInfoModifyCmd { /** authStatusName */ private String authStatusName; + /** enterpriseStatusCode */ + private Integer enterpriseStatusCode; + + /** enterpriseStatusName */ + private String enterpriseStatusName; + + /** enterpriseScaleCode */ + private String enterpriseScaleCode; + + /** enterpriseScaleName */ + private String enterpriseScaleName; + + /** filingTypeCode */ + private String filingTypeCode; + + /** filingTypeName */ + private String filingTypeName; + + /** filingRecordStatusCode */ + private Integer filingRecordStatusCode; + + /** filingRecordStatusName */ + private String filingRecordStatusName; + + /** attachmentUrls */ + private String attachmentUrls; + /** 租户ID */ private Long tenantId; } diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgPersonnelAddCmd.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgPersonnelAddCmd.java index 505d6be..1720c0c 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgPersonnelAddCmd.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgPersonnelAddCmd.java @@ -53,6 +53,54 @@ public class OrgPersonnelAddCmd { /** employmentStatusName */ private String employmentStatusName; + /** personTypeCode */ + private String personTypeCode; + + /** personTypeName */ + private String personTypeName; + + /** qualScope */ + private String qualScope; + + /** professionalLevelCode */ + private String professionalLevelCode; + + /** professionalLevelName */ + private String professionalLevelName; + + /** evaluatorCertNo */ + private String evaluatorCertNo; + + /** educationTypeCode */ + private String educationTypeCode; + + /** educationTypeName */ + private String educationTypeName; + + /** educationLevelCode */ + private String educationLevelCode; + + /** educationLevelName */ + private String educationLevelName; + + /** titleName */ + private String titleName; + + /** registerEngineerFlag */ + private Integer registerEngineerFlag; + + /** publications */ + private String publications; + + /** abilityDeclaration */ + private String abilityDeclaration; + + /** workExperience */ + private String workExperience; + + /** proofMaterialUrl */ + private String proofMaterialUrl; + /** deptId */ private Long deptId; diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgPersonnelModifyCmd.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgPersonnelModifyCmd.java index 24a7827..9e03fe0 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgPersonnelModifyCmd.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/OrgPersonnelModifyCmd.java @@ -56,6 +56,54 @@ public class OrgPersonnelModifyCmd { /** employmentStatusName */ private String employmentStatusName; + /** personTypeCode */ + private String personTypeCode; + + /** personTypeName */ + private String personTypeName; + + /** qualScope */ + private String qualScope; + + /** professionalLevelCode */ + private String professionalLevelCode; + + /** professionalLevelName */ + private String professionalLevelName; + + /** evaluatorCertNo */ + private String evaluatorCertNo; + + /** educationTypeCode */ + private String educationTypeCode; + + /** educationTypeName */ + private String educationTypeName; + + /** educationLevelCode */ + private String educationLevelCode; + + /** educationLevelName */ + private String educationLevelName; + + /** titleName */ + private String titleName; + + /** registerEngineerFlag */ + private Integer registerEngineerFlag; + + /** publications */ + private String publications; + + /** abilityDeclaration */ + private String abilityDeclaration; + + /** workExperience */ + private String workExperience; + + /** proofMaterialUrl */ + private String proofMaterialUrl; + /** deptId */ private Long deptId; diff --git a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/OrgInfoEntity.java b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/OrgInfoEntity.java index c759e73..422818c 100644 --- a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/OrgInfoEntity.java +++ b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/OrgInfoEntity.java @@ -115,6 +115,33 @@ public class OrgInfoEntity { /** 认证状态名称 */ private String authStatusName; + /** 企业状态编码 */ + private Integer enterpriseStatusCode; + + /** 企业状态名称 */ + private String enterpriseStatusName; + + /** 企业规模编码 */ + private String enterpriseScaleCode; + + /** 企业规模名称 */ + private String enterpriseScaleName; + + /** 备案类型编码 */ + private String filingTypeCode; + + /** 备案类型名称 */ + private String filingTypeName; + + /** 备案状态编码 */ + private Integer filingRecordStatusCode; + + /** 备案状态名称 */ + private String filingRecordStatusName; + + /** 上传附件地址(多个逗号分隔) */ + private String attachmentUrls; + /** 状态(0启用1禁用) */ private Integer state; diff --git a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/OrgPersonnelEntity.java b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/OrgPersonnelEntity.java index 19a624b..553be2d 100644 --- a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/OrgPersonnelEntity.java +++ b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/OrgPersonnelEntity.java @@ -66,6 +66,54 @@ public class OrgPersonnelEntity { /** 就职状态名称 */ private String employmentStatusName; + /** 人员类型编码 */ + private String personTypeCode; + + /** 人员类型名称 */ + private String personTypeName; + + /** 资质范围 */ + private String qualScope; + + /** 职业等级编码 */ + private String professionalLevelCode; + + /** 职业等级名称 */ + private String professionalLevelName; + + /** 安全评价师证书编号 */ + private String evaluatorCertNo; + + /** 学历类型编码 */ + private String educationTypeCode; + + /** 学历类型名称 */ + private String educationTypeName; + + /** 学历层次编码 */ + private String educationLevelCode; + + /** 学历层次名称 */ + private String educationLevelName; + + /** 职称 */ + private String titleName; + + /** 是否注册安全工程师(1是2否) */ + private Integer registerEngineerFlag; + + /** 出版学术专著专利获奖论文等 */ + private String publications; + + /** 自我申报的专业能力及认定方式 */ + private String abilityDeclaration; + + /** 主要学习工作经历 */ + private String workExperience; + + /** 申报专业能力证明材料(多个逗号分隔) */ + private String proofMaterialUrl; + /** 租户ID */ private Long tenantId; } diff --git a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/service/OrgPersonnelDomainService.java b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/service/OrgPersonnelDomainService.java index 9eb69ec..4e7231f 100644 --- a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/service/OrgPersonnelDomainService.java +++ b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/service/OrgPersonnelDomainService.java @@ -86,6 +86,46 @@ public class OrgPersonnelDomainService { if (patch.getPostId() != null) { target.setPostId(patch.getPostId()); } + if (StringUtils.hasText(patch.getPersonTypeCode())) { + target.setPersonTypeCode(patch.getPersonTypeCode()); + target.setPersonTypeName(patch.getPersonTypeName()); + } + if (patch.getQualScope() != null) { + target.setQualScope(patch.getQualScope()); + } + if (StringUtils.hasText(patch.getProfessionalLevelCode())) { + target.setProfessionalLevelCode(patch.getProfessionalLevelCode()); + target.setProfessionalLevelName(patch.getProfessionalLevelName()); + } + if (patch.getEvaluatorCertNo() != null) { + target.setEvaluatorCertNo(patch.getEvaluatorCertNo()); + } + if (StringUtils.hasText(patch.getEducationTypeCode())) { + target.setEducationTypeCode(patch.getEducationTypeCode()); + target.setEducationTypeName(patch.getEducationTypeName()); + } + if (StringUtils.hasText(patch.getEducationLevelCode())) { + target.setEducationLevelCode(patch.getEducationLevelCode()); + target.setEducationLevelName(patch.getEducationLevelName()); + } + if (patch.getTitleName() != null) { + target.setTitleName(patch.getTitleName()); + } + if (patch.getRegisterEngineerFlag() != null) { + target.setRegisterEngineerFlag(patch.getRegisterEngineerFlag()); + } + if (patch.getPublications() != null) { + target.setPublications(patch.getPublications()); + } + if (patch.getAbilityDeclaration() != null) { + target.setAbilityDeclaration(patch.getAbilityDeclaration()); + } + if (patch.getWorkExperience() != null) { + target.setWorkExperience(patch.getWorkExperience()); + } + if (patch.getProofMaterialUrl() != null) { + target.setProofMaterialUrl(patch.getProofMaterialUrl()); + } } public void delete(Long id) { diff --git a/safety-eval-infrastructure/pom.xml b/safety-eval-infrastructure/pom.xml index ccb30b9..fcc829d 100644 --- a/safety-eval-infrastructure/pom.xml +++ b/safety-eval-infrastructure/pom.xml @@ -73,5 +73,11 @@ com.jjb.saas jjb-saas-framework-facade + + + com.zcloud.gbscommon + zcloud_gbscommon + 1.0.0-SNAPSHOT + \ No newline at end of file diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/OrgInfoDO.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/OrgInfoDO.java index a0cac5a..d1bbcf6 100644 --- a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/OrgInfoDO.java +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/OrgInfoDO.java @@ -50,6 +50,15 @@ public class OrgInfoDO { private String economyIndustryName; private Integer authStatusCode; private String authStatusName; + private Integer enterpriseStatusCode; + private String enterpriseStatusName; + private String enterpriseScaleCode; + private String enterpriseScaleName; + private String filingTypeCode; + private String filingTypeName; + private Integer filingRecordStatusCode; + private String filingRecordStatusName; + private String attachmentUrls; private Integer state; // ---- GBS默认字段 ---- diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/OrgPersonnelDO.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/OrgPersonnelDO.java index 045ad2d..e55d434 100644 --- a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/OrgPersonnelDO.java +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/OrgPersonnelDO.java @@ -33,6 +33,22 @@ public class OrgPersonnelDO { private String major; private Integer employmentStatusCode; private String employmentStatusName; + private String personTypeCode; + private String personTypeName; + private String qualScope; + private String professionalLevelCode; + private String professionalLevelName; + private String evaluatorCertNo; + private String educationTypeCode; + private String educationTypeName; + private String educationLevelCode; + private String educationLevelName; + private String titleName; + private Integer registerEngineerFlag; + private String publications; + private String abilityDeclaration; + private String workExperience; + private String proofMaterialUrl; // ---- GBS默认字段 ---- private String deleteEnum; diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgInfoGatewayImpl.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgInfoGatewayImpl.java index a7c7d5d..b9bc657 100644 --- a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgInfoGatewayImpl.java +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgInfoGatewayImpl.java @@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jjb.saas.system.client.user.facade.UserFacade; import com.jjb.saas.system.client.user.request.UserUpdatePasswordCmd; import com.jjb.saas.system.client.user.request.UserUpdateQuitCmd; +import com.zcloud.gbscommon.utils.MD5; +import com.zcloud.gbscommon.utils.Sm2Util; import org.apache.dubbo.config.annotation.DubboReference; import org.qinan.safetyeval.domain.entity.OrgInfoEntity; import org.qinan.safetyeval.domain.gateway.OrgInfoGateway; @@ -47,6 +49,8 @@ public class OrgInfoGatewayImpl implements OrgInfoGateway { private UserFacade userFacade; @Value("${def.password:a123456}") private String defPassword; + @Value("${def.publicKey:0402df2195296d4062ac85ad766994d73e871b887e18efb9a9a06b4cebc72372869b7da6c347c129dee2b46a0f279ff066b01c76208c2a052af75977c722a2ccee}") + private String publicKey; @Override public OrgInfoEntity save(OrgInfoEntity entity) { @@ -175,7 +179,8 @@ public class OrgInfoGatewayImpl implements OrgInfoGateway { // 同步重置gbs用户密码 UserUpdatePasswordCmd userUpdatePasswordCmd = new UserUpdatePasswordCmd(); userUpdatePasswordCmd.setId(id); - userUpdatePasswordCmd.setPassword(defPassword); + String encrypt = Sm2Util.encryptHex(MD5.md5(defPassword), publicKey); + userUpdatePasswordCmd.setPassword(encrypt); userFacade.updatePassword(userUpdatePasswordCmd); } @@ -214,6 +219,15 @@ public class OrgInfoGatewayImpl implements OrgInfoGateway { dataObject.setEconomyIndustryName(entity.getEconomyIndustryName()); dataObject.setAuthStatusCode(entity.getAuthStatusCode()); dataObject.setAuthStatusName(entity.getAuthStatusName()); + dataObject.setEnterpriseStatusCode(entity.getEnterpriseStatusCode()); + dataObject.setEnterpriseStatusName(entity.getEnterpriseStatusName()); + dataObject.setEnterpriseScaleCode(entity.getEnterpriseScaleCode()); + dataObject.setEnterpriseScaleName(entity.getEnterpriseScaleName()); + dataObject.setFilingTypeCode(entity.getFilingTypeCode()); + dataObject.setFilingTypeName(entity.getFilingTypeName()); + dataObject.setFilingRecordStatusCode(entity.getFilingRecordStatusCode()); + dataObject.setFilingRecordStatusName(entity.getFilingRecordStatusName()); + dataObject.setAttachmentUrls(entity.getAttachmentUrls()); dataObject.setState(entity.getState()); dataObject.setTenantId(entity.getTenantId()); return dataObject; @@ -258,6 +272,15 @@ public class OrgInfoGatewayImpl implements OrgInfoGateway { entity.setEconomyIndustryName(dataObject.getEconomyIndustryName()); entity.setAuthStatusCode(dataObject.getAuthStatusCode()); entity.setAuthStatusName(dataObject.getAuthStatusName()); + entity.setEnterpriseStatusCode(dataObject.getEnterpriseStatusCode()); + entity.setEnterpriseStatusName(dataObject.getEnterpriseStatusName()); + entity.setEnterpriseScaleCode(dataObject.getEnterpriseScaleCode()); + entity.setEnterpriseScaleName(dataObject.getEnterpriseScaleName()); + entity.setFilingTypeCode(dataObject.getFilingTypeCode()); + entity.setFilingTypeName(dataObject.getFilingTypeName()); + entity.setFilingRecordStatusCode(dataObject.getFilingRecordStatusCode()); + entity.setFilingRecordStatusName(dataObject.getFilingRecordStatusName()); + entity.setAttachmentUrls(dataObject.getAttachmentUrls()); entity.setState(dataObject.getState()); entity.setTenantId(dataObject.getTenantId()); return entity; diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgPersonnelGatewayImpl.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgPersonnelGatewayImpl.java index 07d69c6..7261f62 100644 --- a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgPersonnelGatewayImpl.java +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gatewayimpl/OrgPersonnelGatewayImpl.java @@ -146,6 +146,22 @@ public class OrgPersonnelGatewayImpl implements OrgPersonnelGateway { dataObject.setMajor(entity.getMajor()); dataObject.setEmploymentStatusCode(entity.getEmploymentStatusCode()); dataObject.setEmploymentStatusName(entity.getEmploymentStatusName()); + dataObject.setPersonTypeCode(entity.getPersonTypeCode()); + dataObject.setPersonTypeName(entity.getPersonTypeName()); + dataObject.setQualScope(entity.getQualScope()); + dataObject.setProfessionalLevelCode(entity.getProfessionalLevelCode()); + dataObject.setProfessionalLevelName(entity.getProfessionalLevelName()); + dataObject.setEvaluatorCertNo(entity.getEvaluatorCertNo()); + dataObject.setEducationTypeCode(entity.getEducationTypeCode()); + dataObject.setEducationTypeName(entity.getEducationTypeName()); + dataObject.setEducationLevelCode(entity.getEducationLevelCode()); + dataObject.setEducationLevelName(entity.getEducationLevelName()); + dataObject.setTitleName(entity.getTitleName()); + dataObject.setRegisterEngineerFlag(entity.getRegisterEngineerFlag()); + dataObject.setPublications(entity.getPublications()); + dataObject.setAbilityDeclaration(entity.getAbilityDeclaration()); + dataObject.setWorkExperience(entity.getWorkExperience()); + dataObject.setProofMaterialUrl(entity.getProofMaterialUrl()); dataObject.setTenantId(entity.getTenantId()); return dataObject; } @@ -172,6 +188,22 @@ public class OrgPersonnelGatewayImpl implements OrgPersonnelGateway { entity.setMajor(dataObject.getMajor()); entity.setEmploymentStatusCode(dataObject.getEmploymentStatusCode()); entity.setEmploymentStatusName(dataObject.getEmploymentStatusName()); + entity.setPersonTypeCode(dataObject.getPersonTypeCode()); + entity.setPersonTypeName(dataObject.getPersonTypeName()); + entity.setQualScope(dataObject.getQualScope()); + entity.setProfessionalLevelCode(dataObject.getProfessionalLevelCode()); + entity.setProfessionalLevelName(dataObject.getProfessionalLevelName()); + entity.setEvaluatorCertNo(dataObject.getEvaluatorCertNo()); + entity.setEducationTypeCode(dataObject.getEducationTypeCode()); + entity.setEducationTypeName(dataObject.getEducationTypeName()); + entity.setEducationLevelCode(dataObject.getEducationLevelCode()); + entity.setEducationLevelName(dataObject.getEducationLevelName()); + entity.setTitleName(dataObject.getTitleName()); + entity.setRegisterEngineerFlag(dataObject.getRegisterEngineerFlag()); + entity.setPublications(dataObject.getPublications()); + entity.setAbilityDeclaration(dataObject.getAbilityDeclaration()); + entity.setWorkExperience(dataObject.getWorkExperience()); + entity.setProofMaterialUrl(dataObject.getProofMaterialUrl()); entity.setTenantId(dataObject.getTenantId()); return entity; } diff --git a/safety-eval-start/src/main/resources/application-local.yml b/safety-eval-start/src/main/resources/application-local.yml index 33c3c22..05ea71b 100644 --- a/safety-eval-start/src/main/resources/application-local.yml +++ b/safety-eval-start/src/main/resources/application-local.yml @@ -118,3 +118,4 @@ safety-eval: org-id: 1 def: passwrod: a123456 + publicKey: 0402df2195296d4062ac85ad766994d73e871b887e18efb9a9a06b4cebc72372869b7da6c347c129dee2b46a0f279ff066b01c76208c2a052af75977c722a2ccee