2026_01_07_chenxiaofei_create.sql 6.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. -- 1. 用户基础信息表
  2. CREATE TABLE `users` (
  3. `id` BIGINT UNSIGNED PRIMARY KEY COMMENT '雪花ID',
  4. `ent_id` BIGINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '关联企业ID',
  5. `username` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '登录账号',
  6. `password_hash` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '加密存储的密码',
  7. `full_name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '用户姓名',
  8. `avatar_url` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '头像URL地址',
  9. `phone` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '联系电话',
  10. `role_type` TINYINT NOT NULL DEFAULT 1 COMMENT '角色: 1-铲车司机(监管员), 2-门卫',
  11. `status` TINYINT NOT NULL DEFAULT 0 COMMENT '状态: 0-注册, 1-启用, 2-注销',
  12. `reason` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '注销原因',
  13. `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '注册时间',
  14. `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  15. UNIQUE KEY `uk_username` (`username`)
  16. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户信息表';
  17. -- 2. 登录日志表
  18. CREATE TABLE `login_logs` (
  19. `id` BIGINT UNSIGNED PRIMARY KEY COMMENT '雪花ID',
  20. `user_id` BIGINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '关联用户ID',
  21. `device_info` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '设备型号/标识',
  22. `login_ip` VARCHAR(45) NOT NULL DEFAULT '' COMMENT '登录IP',
  23. `login_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  24. `login_type` TINYINT NOT NULL DEFAULT 1 COMMENT '1-首次登录, 2-切换账号登录',
  25. INDEX `idx_user_id` (`user_id`)
  26. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='登录日志表';
  27. -- 3. 物料信息字典表
  28. CREATE TABLE `materials` (
  29. `id` BIGINT UNSIGNED PRIMARY KEY COMMENT '雪花ID',
  30. `material_name` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '物料名称',
  31. `category` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '物料分类',
  32. `unit` VARCHAR(20) NOT NULL DEFAULT '吨' COMMENT '计量单位',
  33. UNIQUE KEY `uk_material_name` (`material_name`)
  34. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='物料信息表';
  35. -- 4. 装载作业记录表 (核心业务表)
  36. CREATE TABLE `loading_records` (
  37. `id` BIGINT UNSIGNED PRIMARY KEY COMMENT '雪花ID',
  38. `operator_id` BIGINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '操作员ID',
  39. `license_plate` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '车牌号',
  40. `customer_name` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '客户名称',
  41. `load_type` TINYINT NOT NULL DEFAULT 1 COMMENT '装载类型: 1-装载, 2-补货',
  42. `material_id` INT UNSIGNED NOT NULL DEFAULT 0 COMMENT '物料ID',
  43. `quantity` DECIMAL(12, 2) NOT NULL DEFAULT 0.00 COMMENT '装载数量/重量',
  44. `work_date` DATE NOT NULL DEFAULT '1000-01-01' COMMENT '作业日期',
  45. `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间',
  46. INDEX `idx_query_composite` (`work_date`, `load_type`, `license_plate`),
  47. INDEX `idx_operator` (`operator_id`),
  48. INDEX `idx_customer` (`customer_name`)
  49. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='铲车装载记录表';
  50. -- 5. 意见反馈表
  51. CREATE TABLE `feedbacks` (
  52. `id` BIGINT UNSIGNED PRIMARY KEY COMMENT '雪花ID',
  53. `user_id` BIGINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '反馈人ID',
  54. `content` TEXT NOT NULL COMMENT '反馈正文',
  55. `images` JSON NOT NULL COMMENT '图片附件地址',
  56. `contact_info` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '联系方式',
  57. `is_processed` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否已处理',
  58. `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
  59. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户反馈表';
  60. -- 6. 系统版本管理表
  61. CREATE TABLE `app_versions` (
  62. `id` BIGINT UNSIGNED PRIMARY KEY COMMENT '雪花ID',
  63. `version_code` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '版本号',
  64. `platform` TINYINT NOT NULL DEFAULT 1 COMMENT '平台类型(1-Android,2-iOS)',
  65. `update_log` TEXT NOT NULL COMMENT '更新日志',
  66. `download_url` VARCHAR(255) NOT NULL DEFAULT '' COMMENT '安装包下载地址',
  67. `is_force_update` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否强制更新',
  68. `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
  69. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='版本控制表';
  70. -- 系统内容配置表
  71. CREATE TABLE `sys_articles` (
  72. `id` BIGINT UNSIGNED PRIMARY KEY COMMENT '雪花ID',
  73. `article_key` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '条款唯一标识 (如: REG_AGREEMENT, PRIVACY_POLICY)',
  74. `title` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '条款标题',
  75. `content` LONGTEXT NOT NULL COMMENT '条款详细内容 (富文本/HTML)',
  76. `version` VARCHAR(20) NOT NULL DEFAULT '1.0.0' COMMENT '版本号',
  77. `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  78. UNIQUE KEY `uk_key` (`article_key`)
  79. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='法律条款配置表';