# Logic层 - 业务逻辑 ## 📋 目录结构 ``` internal/logic/ ├── auth/ # 认证逻辑 ├── category/ # 分类业务逻辑 ├── photo/ # 照片业务逻辑 ├── user/ # 用户业务逻辑 └── health/ # 健康检查逻辑 ``` ## 🎯 逻辑层职责 - **业务处理**: 核心业务逻辑实现 - **数据验证**: 业务规则验证 - **事务管理**: 数据库事务控制 - **错误处理**: 业务异常处理 ## 🚀 开发流程 1. **实现接口**: 根据API定义实现逻辑 2. **调用模型**: 使用model层操作数据 3. **处理异常**: 返回标准化错误 ## 📊 代码结构 ```go // 业务逻辑模板 func (l *CreatePhotoLogic) CreatePhoto(req types.CreatePhotoRequest) (*types.Photo, error) { // 1. 业务验证 // 2. 数据操作 // 3. 返回结果 } ``` ## 🔗 层级关系 ``` Handler → Logic → Model → Database ``` ## 🎯 最佳实践 - **单一职责**: 每个logic方法只做一件事 - **错误处理**: 使用pkg/errorx定义错误 - **日志记录**: 关键操作添加日志 - **事务边界**: 复杂操作使用事务