init: initial commit
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
# Sundynix Plant Server 项目文档
|
||||
|
||||
## 项目简介
|
||||
本项目是一个基于 Go 语言 (Gin 框架) 开发的后台管理系统,主要用于植物领养、种植乐趣及周边社区的运营管理。项目采用了模块化的架构设计,集成了系统管理(RBAC、日志、OSS)与业务模块(植物图鉴、领养、订单、社区)。
|
||||
|
||||
## 目录结构
|
||||
```shell
|
||||
├── api # 接口控制层 (Controller)
|
||||
│ └── v1 # v1 版本接口
|
||||
├── config # 配置文件结构定义
|
||||
├── core # 核心组件初始化 (Zap, Viper, Server)
|
||||
├── global # 全局对象 (DB, Redis, Config)
|
||||
├── initialize # 初始化流程 (Router, Redis, Gorm, Validator, Timer)
|
||||
├── middleware # Gin 中间件
|
||||
├── model # 数据模型 (Structs)
|
||||
├── router # 路由定义
|
||||
│ ├── plant # 业务路由 (植物、订单、社区等)
|
||||
│ └── system # 系统路由 (用户、角色、菜单等)
|
||||
├── service # 业务逻辑层 (Service)
|
||||
└── utils # 工具函数集合
|
||||
```
|
||||
|
||||
## 基本功能逻辑
|
||||
|
||||
项目主要分为 **系统管理** 和 **业务管理 (Plant)** 两大模块:
|
||||
|
||||
### 1. 系统管理模块 (System)
|
||||
- **用户鉴权 (Auth/User)**: 支持用户注册、登录及 JWT 鉴权。
|
||||
- **权限管理 (RBAC)**: 基于角色 (Role) 和菜单 (Menu) 的权限控制体系,支持动态菜单。
|
||||
- **操作日志 (Operation Record)**: 记录用户的敏感操作行为,便于审计。
|
||||
- **文件上传 (OSS)**: 集成对象存储,用于处理图片、文件上传。
|
||||
- **客户端管理 (Client)**: 管理接入的客户端信息。
|
||||
|
||||
### 2. 业务管理模块 (Plant)
|
||||
- **植物图鉴 (Library/Classification)**: 维护植物的基础信息与分类,构建植物百科。
|
||||
- **植物领养 (Claim Plant)**:
|
||||
- 用户可以浏览并领养植物。
|
||||
- 支持配置领养规则。
|
||||
- 用户可查看 "我的领养" 记录。
|
||||
- **订单系统 (Order/Pay)**:
|
||||
- 处理领养或购买产生的订单。
|
||||
- 支持订单发货、详情查询、删除及导出功能。
|
||||
- 集成支付功能。
|
||||
- **社区互动 (Post/Comment)**:
|
||||
- 用户发布帖子 (Post) 分享种植心得。
|
||||
- 支持对帖子进行评论 (Comment)。
|
||||
- **其他功能**:
|
||||
- **徽章系统 (Badge)**: 用户成就体系。
|
||||
- **OCR 识别**: 植物图片识别功能。
|
||||
- **个人中心 (Personal)**: 用户个人数据管理。
|
||||
|
||||
## 基本流程 (Workflow)
|
||||
|
||||
### 1. 植物领养流程
|
||||
1. **浏览图鉴**: 用户查看植物图鉴 (Library),选择感兴趣的植物。
|
||||
2. **发起领养**: 用户发起领养请求 (Claim),系统根据配置 (`claimPlantApi`) 处理领养逻辑。
|
||||
3. **生成记录**: 成功后在 "我的领养" (`MyClaim`) 中生成记录,并可能关联具体的植物 ID。
|
||||
|
||||
### 2. 订单处理流程
|
||||
1. **创建订单**: 用户进行支付或确认领养后生成订单。
|
||||
2. **后台发货**: 管理员在后台查看订单列表 (`OrderPage`),核实信息后进行发货操作 (`ShipOrder`)。
|
||||
3. **订单完成**: 用户确认收货,订单流程结束。
|
||||
4. **数据导出**: 运营人员可将订单数据导出 (`ExportOrder`) 用于分析。
|
||||
|
||||
### 3. 内容社区流程
|
||||
1. **发布内容**: 用户上传植物照片或心得,发布帖子 (`Post`)。
|
||||
2. **互动交流**: 其他用户浏览帖子,并进行评论 (`PostComment`) 或点赞。
|
||||
3. **审核管理**: 管理员可对违规内容进行管理或删除。
|
||||
|
||||
## 部署说明 (参考)
|
||||
项目支持跨平台编译:
|
||||
- **Windows**: `GOOS=windows GOARCH=amd64 go build -o planting-fun.exe`
|
||||
- **Linux**: `GOOS=linux GOARCH=amd64 go build -o sundynix-plant`
|
||||
Reference in New Issue
Block a user