risk_tables.sql 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397
  1. -- ============================================
  2. -- 风控平台数据库建表脚本 (对齐前端 types.ts)
  3. -- 创建时间: 2026-06-18
  4. -- 数据库: risk_control (需要先创建)
  5. -- 字段命名规则: 与前端 camelCase 字段名 snake_case 化保持一致
  6. -- ============================================
  7. -- 0. 修复 sys_menu.menu_id 非自增问题(让 menu_id 变 AUTO_INCREMENT)
  8. ALTER TABLE sys_menu MODIFY COLUMN menu_id BIGINT NOT NULL AUTO_INCREMENT;
  9. -- 1. 安全隐患表 risk_hidden_danger
  10. DROP TABLE IF EXISTS `risk_hidden_danger`;
  11. CREATE TABLE `risk_hidden_danger` (
  12. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  13. `tenant_id` VARCHAR(20) DEFAULT '000000' COMMENT '租户编号',
  14. `danger_code` VARCHAR(50) COMMENT '隐患编号',
  15. `danger_title` VARCHAR(200) NOT NULL COMMENT '隐患标题',
  16. `danger_type` VARCHAR(50) NOT NULL COMMENT '隐患类型',
  17. `danger_level` VARCHAR(20) NOT NULL COMMENT '风险等级',
  18. `danger_source` VARCHAR(200) COMMENT '隐患来源',
  19. `danger_desc` TEXT COMMENT '隐患描述',
  20. `store_id` BIGINT COMMENT '门店ID',
  21. `store_name` VARCHAR(100) COMMENT '门店名称',
  22. `discoverer_id` BIGINT COMMENT '发现人ID',
  23. `discoverer_name` VARCHAR(50) COMMENT '发现人',
  24. `discover_time` DATETIME NOT NULL COMMENT '发现时间',
  25. `handle_status` VARCHAR(20) DEFAULT '待处理' COMMENT '处理状态',
  26. `handler_id` BIGINT COMMENT '处理人ID',
  27. `handler_name` VARCHAR(50) COMMENT '处理人',
  28. `handle_time` DATETIME COMMENT '处理时间',
  29. `handle_result` TEXT COMMENT '处理结果',
  30. `handle_measures` TEXT COMMENT '处理措施',
  31. `finish_time` DATETIME COMMENT '完成时间',
  32. `photo_list` TEXT COMMENT '现场照片(JSON数组)',
  33. `remark` VARCHAR(500) COMMENT '备注',
  34. `create_dept` BIGINT COMMENT '创建部门',
  35. `create_by` BIGINT COMMENT '创建者',
  36. `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  37. `update_by` BIGINT COMMENT '更新者',
  38. `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  39. `del_flag` CHAR(1) DEFAULT '0' COMMENT '删除标志',
  40. PRIMARY KEY (`id`),
  41. UNIQUE KEY `uk_danger_code` (`danger_code`),
  42. KEY `idx_danger_type` (`danger_type`),
  43. KEY `idx_danger_level` (`danger_level`),
  44. KEY `idx_handle_status` (`handle_status`),
  45. KEY `idx_discover_time` (`discover_time`)
  46. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='安全隐患表';
  47. -- 2. 危险源表 risk_danger_source
  48. DROP TABLE IF EXISTS `risk_danger_source`;
  49. CREATE TABLE `risk_danger_source` (
  50. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  51. `tenant_id` VARCHAR(20) DEFAULT '000000' COMMENT '租户编号',
  52. `source_code` VARCHAR(50) COMMENT '危险源编号',
  53. `source_name` VARCHAR(100) NOT NULL COMMENT '危险源名称',
  54. `source_type` VARCHAR(50) NOT NULL COMMENT '危险源类型',
  55. `risk_level` VARCHAR(20) NOT NULL COMMENT '风险等级',
  56. `store_id` BIGINT COMMENT '门店ID',
  57. `store_name` VARCHAR(100) COMMENT '门店名称',
  58. `location` VARCHAR(200) NOT NULL COMMENT '位置',
  59. `source_desc` TEXT COMMENT '危险源描述',
  60. `control_measures` TEXT COMMENT '控制措施',
  61. `report_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '上报时间',
  62. `responsible_id` BIGINT COMMENT '负责人ID',
  63. `responsible_name` VARCHAR(50) COMMENT '负责人',
  64. `status` VARCHAR(20) DEFAULT '正常' COMMENT '状态',
  65. `remark` VARCHAR(500) COMMENT '备注',
  66. `create_dept` BIGINT COMMENT '创建部门',
  67. `create_by` BIGINT COMMENT '创建者',
  68. `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  69. `update_by` BIGINT COMMENT '更新者',
  70. `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  71. `del_flag` CHAR(1) DEFAULT '0' COMMENT '删除标志',
  72. PRIMARY KEY (`id`),
  73. UNIQUE KEY `uk_source_code` (`source_code`),
  74. KEY `idx_source_type` (`source_type`),
  75. KEY `idx_risk_level` (`risk_level`),
  76. KEY `idx_status` (`status`)
  77. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='危险源表';
  78. -- 3. 作业上报表 risk_work_report
  79. DROP TABLE IF EXISTS `risk_work_report`;
  80. CREATE TABLE `risk_work_report` (
  81. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  82. `tenant_id` VARCHAR(20) DEFAULT '000000' COMMENT '租户编号',
  83. `report_code` VARCHAR(50) COMMENT '上报编号',
  84. `work_type` VARCHAR(50) NOT NULL COMMENT '作业类型',
  85. `work_title` VARCHAR(200) NOT NULL COMMENT '作业标题',
  86. `work_content` TEXT COMMENT '作业内容',
  87. `store_id` BIGINT COMMENT '门店ID',
  88. `store_name` VARCHAR(100) COMMENT '门店名称',
  89. `work_location` VARCHAR(200) COMMENT '作业位置',
  90. `work_start_time` DATETIME NOT NULL COMMENT '作业开始时间',
  91. `work_end_time` DATETIME NOT NULL COMMENT '作业结束时间',
  92. `duration_days` INT DEFAULT NULL COMMENT '工期(单位:天,与开始/结束时间联动计算)',
  93. `reporter_id` BIGINT COMMENT '上报人ID',
  94. `reporter_name` VARCHAR(50) COMMENT '上报人',
  95. `report_time` DATETIME NOT NULL COMMENT '上报时间',
  96. `contact_phone` VARCHAR(20) COMMENT '联系电话',
  97. `photo_list` TEXT COMMENT '现场施工图片(JSON数组)',
  98. `cert_file` VARCHAR(500) COMMENT '施工证件URL',
  99. `cert_name` VARCHAR(100) COMMENT '施工证件名称',
  100. `participants` VARCHAR(500) COMMENT '参与人员',
  101. `risk_measures` TEXT COMMENT '风险措施',
  102. `work_result` TEXT COMMENT '作业结果',
  103. `audit_status` VARCHAR(20) DEFAULT '待审核' COMMENT '审核状态',
  104. `auditor_id` BIGINT COMMENT '审核人ID',
  105. `auditor_name` VARCHAR(50) COMMENT '审核人',
  106. `audit_time` DATETIME COMMENT '审核时间',
  107. `audit_opinion` TEXT COMMENT '审核意见',
  108. `remark` VARCHAR(500) COMMENT '备注',
  109. `create_dept` BIGINT COMMENT '创建部门',
  110. `create_by` BIGINT COMMENT '创建者',
  111. `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  112. `update_by` BIGINT COMMENT '更新者',
  113. `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  114. `del_flag` CHAR(1) DEFAULT '0' COMMENT '删除标志',
  115. PRIMARY KEY (`id`),
  116. UNIQUE KEY `uk_report_code` (`report_code`),
  117. KEY `idx_work_type` (`work_type`),
  118. KEY `idx_audit_status` (`audit_status`),
  119. KEY `idx_work_start_time` (`work_start_time`)
  120. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='作业上报表';
  121. -- 4. 人员信息表 risk_personnel
  122. DROP TABLE IF EXISTS `risk_personnel`;
  123. CREATE TABLE `risk_personnel` (
  124. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  125. `tenant_id` VARCHAR(20) DEFAULT '000000' COMMENT '租户编号',
  126. `personnel_code` VARCHAR(50) COMMENT '人员编号',
  127. `personnel_name` VARCHAR(50) NOT NULL COMMENT '姓名',
  128. `gender` CHAR(1) DEFAULT '0' COMMENT '性别(0男 1女)',
  129. `id_card` VARCHAR(18) COMMENT '身份证号',
  130. `age` INT COMMENT '年龄',
  131. `phone` VARCHAR(20) COMMENT '手机号',
  132. `email` VARCHAR(100) COMMENT '邮箱',
  133. `store_id` BIGINT COMMENT '门店ID',
  134. `store_name` VARCHAR(100) COMMENT '门店名称',
  135. `department` VARCHAR(100) COMMENT '部门',
  136. `position` VARCHAR(100) COMMENT '岗位',
  137. `insurance_status` VARCHAR(20) DEFAULT '未投保' COMMENT '保险状态',
  138. `insurance_start_date` DATETIME COMMENT '保险有效期开始',
  139. `insurance_expire_date` DATETIME COMMENT '保险有效期结束',
  140. `job_type` VARCHAR(50) COMMENT '工种',
  141. `entry_date` DATE COMMENT '入职日期',
  142. `leave_date` DATE COMMENT '离职日期',
  143. `status` VARCHAR(20) DEFAULT '在职' COMMENT '状态',
  144. `health_status` VARCHAR(50) COMMENT '健康状况',
  145. `address` VARCHAR(500) COMMENT '地址',
  146. `emergency_contact` VARCHAR(50) COMMENT '紧急联系人',
  147. `emergency_phone` VARCHAR(20) COMMENT '紧急联系电话',
  148. `remark` VARCHAR(500) COMMENT '备注',
  149. `create_dept` BIGINT COMMENT '创建部门',
  150. `create_by` BIGINT COMMENT '创建者',
  151. `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  152. `update_by` BIGINT COMMENT '更新者',
  153. `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  154. `del_flag` CHAR(1) DEFAULT '0' COMMENT '删除标志',
  155. PRIMARY KEY (`id`),
  156. UNIQUE KEY `uk_personnel_code` (`personnel_code`),
  157. KEY `idx_personnel_name` (`personnel_name`),
  158. KEY `idx_store_id` (`store_id`),
  159. KEY `idx_status` (`status`)
  160. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='人员信息表';
  161. -- 5. 人员证书表 risk_personnel_cert
  162. DROP TABLE IF EXISTS `risk_personnel_cert`;
  163. CREATE TABLE `risk_personnel_cert` (
  164. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  165. `tenant_id` VARCHAR(20) DEFAULT '000000' COMMENT '租户编号',
  166. `personnel_id` BIGINT NOT NULL COMMENT '人员ID',
  167. `personnel_name` VARCHAR(50) COMMENT '人员姓名',
  168. `cert_type` VARCHAR(50) NOT NULL COMMENT '证书类型',
  169. `cert_name` VARCHAR(100) NOT NULL COMMENT '证书名称',
  170. `cert_no` VARCHAR(100) COMMENT '证书编号',
  171. `issue_org` VARCHAR(200) COMMENT '颁发机构',
  172. `issue_date` DATE COMMENT '颁发日期',
  173. `expire_date` DATE COMMENT '过期日期',
  174. `cert_status` VARCHAR(20) DEFAULT '有效' COMMENT '证书状态',
  175. `cert_file` VARCHAR(500) COMMENT '证书附件',
  176. `remark` VARCHAR(500) COMMENT '备注',
  177. `create_dept` BIGINT COMMENT '创建部门',
  178. `create_by` BIGINT COMMENT '创建者',
  179. `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  180. `update_by` BIGINT COMMENT '更新者',
  181. `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  182. `del_flag` CHAR(1) DEFAULT '0' COMMENT '删除标志',
  183. PRIMARY KEY (`id`),
  184. KEY `idx_personnel_id` (`personnel_id`),
  185. KEY `idx_cert_type` (`cert_type`),
  186. KEY `idx_cert_status` (`cert_status`)
  187. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='人员证书表';
  188. -- 6. 人员变动表 risk_personnel_change
  189. DROP TABLE IF EXISTS `risk_personnel_change`;
  190. CREATE TABLE `risk_personnel_change` (
  191. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  192. `tenant_id` VARCHAR(20) DEFAULT '000000' COMMENT '租户编号',
  193. `change_code` VARCHAR(50) COMMENT '变动编号',
  194. `personnel_id` BIGINT NOT NULL COMMENT '人员ID',
  195. `personnel_name` VARCHAR(50) COMMENT '人员姓名',
  196. `change_type` VARCHAR(50) NOT NULL COMMENT '变动类型',
  197. `change_reason` TEXT COMMENT '变动原因',
  198. `change_date` DATE NOT NULL COMMENT '变动日期',
  199. `before_store_id` BIGINT COMMENT '变动前门店ID',
  200. `before_store_name` VARCHAR(100) COMMENT '变动前门店',
  201. `before_dept` VARCHAR(100) COMMENT '变动前部门',
  202. `before_position` VARCHAR(100) COMMENT '变动前岗位',
  203. `after_store_id` BIGINT COMMENT '变动后门店ID',
  204. `after_store_name` VARCHAR(100) COMMENT '变动后门店',
  205. `after_dept` VARCHAR(100) COMMENT '变动后部门',
  206. `after_position` VARCHAR(100) COMMENT '变动后岗位',
  207. `handler_id` BIGINT COMMENT '经办人ID',
  208. `handler_name` VARCHAR(50) COMMENT '经办人',
  209. `audit_status` VARCHAR(20) DEFAULT '待审核' COMMENT '审核状态',
  210. `auditor_id` BIGINT COMMENT '审核人ID',
  211. `auditor_name` VARCHAR(50) COMMENT '审核人',
  212. `audit_time` DATETIME COMMENT '审核时间',
  213. `audit_opinion` TEXT COMMENT '审核意见',
  214. `remark` VARCHAR(500) COMMENT '备注',
  215. `create_dept` BIGINT COMMENT '创建部门',
  216. `create_by` BIGINT COMMENT '创建者',
  217. `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  218. `update_by` BIGINT COMMENT '更新者',
  219. `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  220. `del_flag` CHAR(1) DEFAULT '0' COMMENT '删除标志',
  221. PRIMARY KEY (`id`),
  222. UNIQUE KEY `uk_change_code` (`change_code`),
  223. KEY `idx_personnel_id` (`personnel_id`),
  224. KEY `idx_change_type` (`change_type`),
  225. KEY `idx_audit_status` (`audit_status`)
  226. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='人员变动表';
  227. -- 7. 审计文件表 risk_audit_file
  228. DROP TABLE IF EXISTS `risk_audit_file`;
  229. CREATE TABLE `risk_audit_file` (
  230. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  231. `tenant_id` VARCHAR(20) DEFAULT '000000' COMMENT '租户编号',
  232. `file_code` VARCHAR(50) COMMENT '文件编号',
  233. `change_id` BIGINT COMMENT '关联人员变动ID',
  234. `file_name` VARCHAR(200) NOT NULL COMMENT '文件名',
  235. `file_type` VARCHAR(50) COMMENT '文件类型',
  236. `file_url` VARCHAR(500) NOT NULL COMMENT '文件URL',
  237. `file_size` BIGINT COMMENT '文件大小(字节)',
  238. `upload_by` BIGINT COMMENT '上传人ID',
  239. `upload_name` VARCHAR(50) COMMENT '上传人',
  240. `upload_time` DATETIME NOT NULL COMMENT '上传时间',
  241. `audit_result` VARCHAR(20) COMMENT '审核结果',
  242. `audit_opinion` TEXT COMMENT '审核意见',
  243. `remark` VARCHAR(500) COMMENT '备注',
  244. `create_dept` BIGINT COMMENT '创建部门',
  245. `create_by` BIGINT COMMENT '创建者',
  246. `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  247. `update_by` BIGINT COMMENT '更新者',
  248. `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  249. `del_flag` CHAR(1) DEFAULT '0' COMMENT '删除标志',
  250. PRIMARY KEY (`id`),
  251. KEY `idx_change_id` (`change_id`),
  252. KEY `idx_file_type` (`file_type`)
  253. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='审计文件表';
  254. -- 8. 风险警示表 risk_warning
  255. DROP TABLE IF EXISTS `risk_warning`;
  256. CREATE TABLE `risk_warning` (
  257. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  258. `tenant_id` VARCHAR(20) DEFAULT '000000' COMMENT '租户编号',
  259. `warning_code` VARCHAR(50) COMMENT '警示编号',
  260. `warning_title` VARCHAR(200) NOT NULL COMMENT '警示标题',
  261. `warning_type` VARCHAR(50) NOT NULL COMMENT '警示类型',
  262. `warning_level` VARCHAR(20) NOT NULL COMMENT '警示等级',
  263. `warning_source` VARCHAR(200) COMMENT '警示来源',
  264. `warning_content` TEXT COMMENT '警示内容',
  265. `store_id` BIGINT COMMENT '门店ID',
  266. `store_name` VARCHAR(100) COMMENT '门店名称',
  267. `release_time` DATETIME NOT NULL COMMENT '发布时间',
  268. `expire_time` DATETIME COMMENT '过期时间',
  269. `releaser_id` BIGINT COMMENT '发布人ID',
  270. `releaser_name` VARCHAR(50) COMMENT '发布人',
  271. `publish_scope` VARCHAR(50) DEFAULT '全部' COMMENT '发布范围',
  272. `status` VARCHAR(20) DEFAULT '已发布' COMMENT '状态',
  273. `read_count` INT DEFAULT 0 COMMENT '阅读数',
  274. `remark` VARCHAR(500) COMMENT '备注',
  275. `attachment_url` VARCHAR(500) COMMENT '附件访问URL(MinIO对象存储路径)',
  276. `attachment_name` VARCHAR(200) COMMENT '附件原始文件名',
  277. `create_dept` BIGINT COMMENT '创建部门',
  278. `create_by` BIGINT COMMENT '创建者',
  279. `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  280. `update_by` BIGINT COMMENT '更新者',
  281. `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  282. `del_flag` CHAR(1) DEFAULT '0' COMMENT '删除标志',
  283. PRIMARY KEY (`id`),
  284. UNIQUE KEY `uk_warning_code` (`warning_code`),
  285. KEY `idx_warning_type` (`warning_type`),
  286. KEY `idx_warning_level` (`warning_level`),
  287. KEY `idx_status` (`status`),
  288. KEY `idx_release_time` (`release_time`)
  289. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风险警示表';
  290. -- 9. 特种设备表 risk_special_equipment
  291. DROP TABLE IF EXISTS `risk_special_equipment`;
  292. CREATE TABLE `risk_special_equipment` (
  293. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  294. `tenant_id` VARCHAR(20) DEFAULT '000000' COMMENT '租户编号',
  295. `equipment_code` VARCHAR(50) COMMENT '设备编号',
  296. `equipment_name` VARCHAR(100) NOT NULL COMMENT '设备名称',
  297. `equipment_type` VARCHAR(50) NOT NULL COMMENT '设备类型',
  298. `model` VARCHAR(100) COMMENT '型号',
  299. `specification` VARCHAR(200) COMMENT '规格',
  300. `manufacturer` VARCHAR(200) COMMENT '制造商',
  301. `manufacture_date` DATE COMMENT '出厂日期',
  302. `purchase_date` DATE COMMENT '采购日期',
  303. `store_id` BIGINT COMMENT '门店ID',
  304. `store_name` VARCHAR(100) COMMENT '门店名称',
  305. `location` VARCHAR(200) COMMENT '位置',
  306. `photo_list` TEXT COMMENT '设备照片(JSON数组)',
  307. `install_date` DATE COMMENT '安装日期',
  308. `use_status` VARCHAR(20) DEFAULT '在用' COMMENT '使用状态',
  309. `inspection_status` VARCHAR(20) DEFAULT '未检' COMMENT '检验状态',
  310. `next_inspection_date` DATE COMMENT '下次检验日期',
  311. `responsible_id` BIGINT COMMENT '负责人ID',
  312. `responsible_name` VARCHAR(50) COMMENT '负责人',
  313. `remark` VARCHAR(500) COMMENT '备注',
  314. `create_dept` BIGINT COMMENT '创建部门',
  315. `create_by` BIGINT COMMENT '创建者',
  316. `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  317. `update_by` BIGINT COMMENT '更新者',
  318. `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  319. `del_flag` CHAR(1) DEFAULT '0' COMMENT '删除标志',
  320. PRIMARY KEY (`id`),
  321. UNIQUE KEY `uk_equipment_code` (`equipment_code`),
  322. KEY `idx_equipment_type` (`equipment_type`),
  323. KEY `idx_use_status` (`use_status`),
  324. KEY `idx_inspection_status` (`inspection_status`)
  325. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='特种设备表';
  326. -- 10. 特种设备维护记录表 risk_equipment_maintenance
  327. DROP TABLE IF EXISTS `risk_equipment_maintenance`;
  328. CREATE TABLE `risk_equipment_maintenance` (
  329. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  330. `tenant_id` VARCHAR(20) DEFAULT '000000' COMMENT '租户编号',
  331. `equipment_id` BIGINT NOT NULL COMMENT '设备ID',
  332. `equipment_code` VARCHAR(50) COMMENT '设备编号',
  333. `equipment_name` VARCHAR(100) COMMENT '设备名称',
  334. `maintenance_status` VARCHAR(20) DEFAULT '待维护' COMMENT '维护状态(待维护/维护中/已维护)',
  335. `plan_start_time` DATETIME COMMENT '预计开始时间',
  336. `plan_end_time` DATETIME COMMENT '预计结束时间',
  337. `actual_start_time` DATETIME COMMENT '实际开始时间',
  338. `actual_end_time` DATETIME COMMENT '实际结束时间',
  339. `maintainer_name` VARCHAR(50) COMMENT '维护人员',
  340. `site_name` VARCHAR(50) COMMENT '现场人员',
  341. `maintenance_content` TEXT COMMENT '维护内容',
  342. `maintenance_result` TEXT COMMENT '维护结果',
  343. `photo_list` TEXT COMMENT '维护照片(JSON数组)',
  344. `remark` VARCHAR(500) COMMENT '备注',
  345. `create_dept` BIGINT COMMENT '创建部门',
  346. `create_by` BIGINT COMMENT '创建者',
  347. `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  348. `update_by` BIGINT COMMENT '更新者',
  349. `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  350. `del_flag` CHAR(1) DEFAULT '0' COMMENT '删除标志',
  351. PRIMARY KEY (`id`),
  352. KEY `idx_equipment_id` (`equipment_id`),
  353. KEY `idx_maintenance_status` (`maintenance_status`),
  354. KEY `idx_plan_start_time` (`plan_start_time`)
  355. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='特种设备维护记录表';
  356. -- 11. 舆情推送表 risk_public_opinion
  357. DROP TABLE IF EXISTS `risk_public_opinion`;
  358. CREATE TABLE `risk_public_opinion` (
  359. `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  360. `tenant_id` VARCHAR(20) DEFAULT '000000' COMMENT '租户编号',
  361. `opinion_title` VARCHAR(200) NOT NULL COMMENT '舆情标题',
  362. `source` VARCHAR(100) NOT NULL COMMENT '舆情来源',
  363. `publish_time` DATETIME NOT NULL COMMENT '舆情原文发布时间',
  364. `risk_level` VARCHAR(20) NOT NULL COMMENT '风险等级(重大/较大/一般)',
  365. `responsible_person` VARCHAR(50) COMMENT '负责人',
  366. `opinion_link` VARCHAR(500) COMMENT '舆情外部链接',
  367. `opinion_content` TEXT COMMENT '舆情内容',
  368. `disposal_suggestion` TEXT COMMENT '处置建议',
  369. `status` VARCHAR(20) DEFAULT '待处理' COMMENT '处置状态(待处理/处理中/已处理)',
  370. `handle_result` TEXT COMMENT '处理结果',
  371. `handle_time` DATETIME COMMENT '处理时间',
  372. `remark` VARCHAR(500) COMMENT '备注',
  373. `create_dept` BIGINT COMMENT '创建部门',
  374. `create_by` BIGINT COMMENT '创建者',
  375. `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  376. `update_by` BIGINT COMMENT '更新者',
  377. `update_time` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  378. `del_flag` CHAR(1) DEFAULT '0' COMMENT '删除标志(0存在 1删除)',
  379. PRIMARY KEY (`id`),
  380. KEY `idx_source` (`source`),
  381. KEY `idx_risk_level` (`risk_level`),
  382. KEY `idx_status` (`status`),
  383. KEY `idx_publish_time` (`publish_time`),
  384. KEY `idx_responsible_person` (`responsible_person`)
  385. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='舆情推送表';