refactor: 对齐后端样例工程规范

This commit is contained in:
2026-07-26 18:24:13 +08:00
parent 4382641e19
commit 4f2bb7e88b
66 changed files with 1869 additions and 660 deletions

View File

@@ -1,11 +1,12 @@
# 平台核心后端
# 后端服务仓
首期实现 M0 + M1 的平台总后台 API组织、服务人员、用户、安全事件和仪表盘。PostgreSQL 保存业务事实支付、地图、IoT、短信和 Redis 在本阶段均通过 Mock 边界预留,不连接生产外部服务
本目录严格采用 [sample/server](../../sample/server) 的 BSM-SDK Core 分层:每个 Go 进程均使用 `cmd``internal/config``internal/impl``internal/logic``internal/models``internal/routers``etc``scripts``test``Makefile` 约定
## 运行
| 目录 | 进程与职责 |
| --- | --- |
| `api` | Gin HTTP API / BFF、同步事务、JWT 鉴权与统一响应 |
| `worker` | Redis Streams 消费、Outbox 投递、超时扫描与 Mock 外部适配 |
| `iot` | MQTT 协议适配边界、遥测/命令契约校验与 Mock 设备接入 |
| `migrations` | PostgreSQL 迁移、中文注释、回滚说明和初始化数据 |
1.`.env.example` 复制为本地环境文件,设置 `DATABASE_URL`
2. 在 PowerShell 设置 `DATABASE_URL` 后执行 `go run ./cmd/api`
3. 服务启动时自动执行幂等迁移和演示数据初始化。
接口前缀为 `/api/v1`,例如:`GET /api/v1/dashboard/overview`
`sample/server` 的工程机制被直接沿用;但由于项目规范强制要求 `identity` 为 UUID V7 主键,领域模型使用自定义 `models.Entity`,不使用样例中含自增 `ID``types.Std_IICUDS`