79 lines
2.1 KiB
Markdown
79 lines
2.1 KiB
Markdown
# 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槽 |
|