# PostgreSQL 数据库初始化文件 本目录包含数据库初始化和重置相关的 SQL 脚本。 ## 📁 文件说明 ### `data.sql` - 种子数据 包含系统运行所需的基础数据: - 管理员账号 (admin / 123456) - 设备类型和设备配置 - 产品类型和工艺路线 - 接驳台槽位配置 - Recipe(12步工艺路线) ### `reset.sql` - 重置数据 清空工单、作业等运行时数据,恢复设备和槽位到初始状态。 ### `INIT_DATABASE.md` - 详细初始化指南 完整的数据库初始化步骤说明。 ## 🚀 快速使用 ### 方法 1: 使用自动化脚本 (推荐) 在项目根目录执行: ```powershell .\scripts\init-db.ps1 ``` ### 方法 2: 手动执行 ```powershell # 1. 创建数据库 psql -U postgres -c "CREATE DATABASE back_cover;" # 2. 启动应用以自动创建表结构 go run hougai.go -f etc/hougai-api.yaml # 等待表创建完成后 Ctrl+C 停止 # 3. 插入种子数据 psql -U postgres -d back_cover -f doc/data.sql # 4. 重启应用 go run hougai.go -f etc/hougai-api.yaml ``` ## ⚠️ 注意事项 1. **先建库后导入**: 必须先创建 `back_cover` 数据库,再导入 SQL 2. **Ent ORM 自动建表**: 首次启动应用时,Ent 会自动创建所有表结构 3. **种子数据只需导入一次**: 除非需要重置数据 4. **密码哈希**: 管理员密码使用 bcrypt 加密,由 Go 代码的 `auth.HashPassword` 生成 ## 🔄 重置运行时数据 如果需要清空工单和生产数据,但保留基础配置: ```powershell psql -U postgres -d back_cover -f doc/reset.sql ``` 这会: - 删除所有 Job 和 WorkOrder - 重置所有设备和暂存台槽位为 EMPTY - 保留用户、设备、产品类型等基础配置 ## 📊 默认数据概览 | 数据类型 | 数量 | 说明 | |---------|------|------| | 用户角色 | 1 | Admin | | 设备类型 | 9 | ROBOT, CNC, WASHER_HP 等 | | 设备 | 9 | CNC-1~4, 高压清洗机等 | | 设备槽位 | 27 | 各设备的加工槽位 | | 产品类型 | 5 | A6VM107/160/200 系列 | | Recipe 步骤 | 12 | 标准 12 步工艺路线 | | 接驳台槽位 | 90 | 10个接驳台 × 每台9槽 |