init_mysql.sql 4.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. CREATE DATABASE IF NOT EXISTS iwb_railway_costing_v1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
  2. USE iwb_railway_costing_v1;
  3. -- 创建项目任务表
  4. CREATE TABLE IF NOT EXISTS project_task (
  5. id INT AUTO_INCREMENT PRIMARY KEY,
  6. task_name VARCHAR(255) NOT NULL COMMENT '任务名称',
  7. task_sort INT DEFAULT 0 COMMENT '任务排序',
  8. task_desc VARCHAR(1000) COMMENT '任务描述',
  9. is_cover TINYINT DEFAULT 0 COMMENT '是否覆盖',
  10. project_id VARCHAR(50) NOT NULL COMMENT '项目编号',
  11. budget_id INT NOT NULL DEFAULT 0 COMMENT '概算序号',
  12. item_id INT NOT NULL COMMENT '条目序号',
  13. item_code VARCHAR(255) NOT NULL COMMENT '条目编号',
  14. file_path TEXT COMMENT '文件路径',
  15. process_status INT NOT NULL DEFAULT 0 COMMENT '处理状态(0:草稿, 1:待运行, 2:运行中, 200:运行成功, 4:运行失败 5:取消运行)',
  16. process_time DATETIME COMMENT '处理时间',
  17. process_error VARCHAR(4000) COMMENT '处理错误信息',
  18. send_status INT NOT NULL DEFAULT 0 COMMENT '推送状态(0:未推送, 1:推送中 ,2:推送成功, 3:推送失败, 4:已修改)',
  19. send_time DATETIME COMMENT '推送时间',
  20. send_error VARCHAR(4000) COMMENT '推送错误信息',
  21. is_del TINYINT NOT NULL DEFAULT 0 COMMENT '是否删除(0:否, 1:是)',
  22. deleted_by VARCHAR(50) COMMENT '删除人',
  23. deleted_at DATETIME COMMENT '删除时间',
  24. created_by VARCHAR(50) COMMENT '创建人',
  25. created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  26. updated_by VARCHAR(50) COMMENT '更新人',
  27. updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  28. INDEX idx_project_id (project_id),
  29. INDEX idx_budget_id (budget_id),
  30. INDEX idx_item_id (item_id),
  31. INDEX idx_item_code (item_code),
  32. INDEX idx_created_at (created_at)
  33. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='项目任务表';
  34. -- 创建项目定额表
  35. CREATE TABLE IF NOT EXISTS project_quota (
  36. id INT AUTO_INCREMENT PRIMARY KEY,
  37. task_id INT NOT NULL COMMENT '任务编号',
  38. project_id VARCHAR(50) NOT NULL COMMENT '项目编号',
  39. budget_id INT NOT NULL COMMENT '概算序号',
  40. budget_code VARCHAR(50) COMMENT '概算编号',
  41. item_id INT NOT NULL COMMENT '条目序号',
  42. item_code VARCHAR(255) NOT NULL COMMENT '条目编号',
  43. quota_id INT NULL DEFAULT 0 COMMENT '定额序号',
  44. quota_code VARCHAR(50) COMMENT '定额编号',
  45. entry_name VARCHAR(255) COMMENT '工程或费用项目名称',
  46. units VARCHAR(20) COMMENT '单位',
  47. amount FLOAT COMMENT '数量',
  48. ex_file VARCHAR(4000) COMMENT 'excel文件',
  49. ex_cell VARCHAR(50) COMMENT '数量单元格位置',
  50. ex_row VARCHAR(4000) COMMENT '该行内容',
  51. ex_unit VARCHAR(50) COMMENT 'excel中给出的单位',
  52. ex_amount FLOAT COMMENT 'excel中给出的数量',
  53. send_status INT NOT NULL DEFAULT 0 COMMENT '推送状态(0:未推送,1:推送中 ,2:已推送, 3:推送失败, 4:已修改)',
  54. send_time DATETIME COMMENT '推送时间',
  55. send_error VARCHAR(4000) COMMENT '推送错误信息',
  56. is_del TINYINT NOT NULL DEFAULT 0 COMMENT '是否删除(0:否, 1:是)',
  57. deleted_by VARCHAR(50) COMMENT '删除人',
  58. deleted_at DATETIME COMMENT '删除时间',
  59. created_by VARCHAR(50) COMMENT '创建人',
  60. created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  61. updated_by VARCHAR(50) COMMENT '更新人',
  62. updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  63. INDEX idx_project_id (project_id),
  64. INDEX idx_budget_id (budget_id),
  65. INDEX idx_item_id (item_id),
  66. INDEX idx_item_code (item_code),
  67. INDEX idx_created_at (created_at)
  68. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='项目定额表';
  69. -- 创建日志表
  70. CREATE TABLE IF NOT EXISTS sys_log (
  71. id INT AUTO_INCREMENT PRIMARY KEY,
  72. username VARCHAR(255) NOT NULL COMMENT '用户名',
  73. operation_type VARCHAR(50) NOT NULL COMMENT '操作类型',
  74. operation_desc VARCHAR(1000) COMMENT '操作描述',
  75. operation_result TINYINT COMMENT '操作结果',
  76. operation_module VARCHAR(100) COMMENT '操作模块',
  77. operation_data TEXT COMMENT '操作数据',
  78. data_changes TEXT COMMENT '数据变更记录',
  79. operation_ip VARCHAR(50) COMMENT '操作IP',
  80. created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  81. INDEX idx_username (username),
  82. INDEX idx_created_at (created_at)
  83. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='操作日志表';