哇三号那个文档
This commit is contained in:
@@ -6,11 +6,21 @@ offerpie/back-end
|
|||||||
│
|
│
|
||||||
├─ pom.xml # 父 Maven 项目,统一管理依赖、插件、属性
|
├─ pom.xml # 父 Maven 项目,统一管理依赖、插件、属性
|
||||||
│
|
│
|
||||||
├─ client‑api/ # **C 端**(面向用户)API 服务,包含业务控制器(如 LoginController)、DTO/VO(如 LoginVo、SmsLoginDto)以及服务器实现(LoginServer 等)
|
├─ client‑api/ # **C 端**(面向用户)API 服务
|
||||||
│ ├─ pom.xml
|
│ ├─ pom.xml
|
||||||
│ └─ src/main/java
|
│ └─ src/main/java
|
||||||
│ └─ org.jiayunet
|
│ └─ org.jiayunet
|
||||||
│ └─ ClientApplication.java # Spring Boot 主入口
|
│ ├─ ClientApplication.java # Spring Boot 主入口
|
||||||
|
│ ├─ controller/
|
||||||
|
│ │ └─ LoginController.java # 登录相关接口(发送验证码、短信登录)
|
||||||
|
│ ├─ server/
|
||||||
|
│ │ ├─ LoginServer.java # 登录业务逻辑(验证码校验、自动注册、JWT生成、Cookie设置)
|
||||||
|
│ │ └─ WxPayNotifyMessageAbstractImpl.java # 微信支付回调实现
|
||||||
|
│ └─ pojo/
|
||||||
|
│ ├─ dto/
|
||||||
|
│ │ └─ SmsLoginDto.java # 短信登录入参(mobileNumber + code)
|
||||||
|
│ └─ vo/
|
||||||
|
│ └─ LoginVo.java # 登录返回(userId + nick)
|
||||||
│
|
│
|
||||||
├─ common/ # **共享层**:被 C 端和 B 端共同使用的代码库
|
├─ common/ # **共享层**:被 C 端和 B 端共同使用的代码库
|
||||||
│ ├─ pom.xml
|
│ ├─ pom.xml
|
||||||
@@ -42,7 +52,7 @@ offerpie/back-end
|
|||||||
## 2️⃣ 各层模块职责
|
## 2️⃣ 各层模块职责
|
||||||
| 层级 | 主要职责 | 关键类/包 |
|
| 层级 | 主要职责 | 关键类/包 |
|
||||||
|------|----------|-----------|
|
|------|----------|-----------|
|
||||||
| **client‑api** | - 面向终端用户的 REST API <br> - 启动 Spring Boot 应用 | `ClientApplication`、`controller/*`、`application.yml` |
|
| **client‑api** | - 面向终端用户的 REST API <br> - 启动 Spring Boot 应用 <br> - 短信验证码登录(含自动注册) | `ClientApplication`、`LoginController`、`LoginServer`、`SmsLoginDto`、`LoginVo`、`application.yml` |
|
||||||
| **common** | - **统一配置**:OSS、Redis、Security、WxPay、Sms 等 <br> - **跨层工具**:HTTP、IP、认证、验证码、Redis Server 等 <br> - **全局拦截/切面**:日志、TraceId、黑名单、SQL 打印 <br> - **统一异常/响应**:`GlobalExceptionAdvice`、`UnifiedResponse` <br> - **业务抽象**:邮件发送、微信支付(Native/JS/Transfer) <br> - **公共 POJO**:登录令牌、防重放信息等 | `config/`, `tool/`, `interceptor/`, `aop/`, `exception/`, `email/`, `wxPay/`, `pojo/` |
|
| **common** | - **统一配置**:OSS、Redis、Security、WxPay、Sms 等 <br> - **跨层工具**:HTTP、IP、认证、验证码、Redis Server 等 <br> - **全局拦截/切面**:日志、TraceId、黑名单、SQL 打印 <br> - **统一异常/响应**:`GlobalExceptionAdvice`、`UnifiedResponse` <br> - **业务抽象**:邮件发送、微信支付(Native/JS/Transfer) <br> - **公共 POJO**:登录令牌、防重放信息等 | `config/`, `tool/`, `interceptor/`, `aop/`, `exception/`, `email/`, `wxPay/`, `pojo/` |
|
||||||
| **manager** | - **业务实体**(`User`、`OssFile` 等) <br> - **MyBatis Mapper**(`UserMapper`、`OssFileMapper`) <br> - **业务 API**:文件上传/下载、健康检查等 <br> - **业务逻辑**:服务层、工具类等 <br> - **既供 B 端 UI(待实现)使用,也供 C 端 业务直接调用** | `controller/`, `mapper/`, `pojo/po/`, `pojo/vo/` |
|
| **manager** | - **业务实体**(`User`、`OssFile` 等) <br> - **MyBatis Mapper**(`UserMapper`、`OssFileMapper`) <br> - **业务 API**:文件上传/下载、健康检查等 <br> - **业务逻辑**:服务层、工具类等 <br> - **既供 B 端 UI(待实现)使用,也供 C 端 业务直接调用** | `controller/`, `mapper/`, `pojo/po/`, `pojo/vo/` |
|
||||||
|
|
||||||
@@ -52,6 +62,8 @@ offerpie/back-end
|
|||||||
| `User` | `manager/src/main/java/.../pojo/po/User.java` | 记录用户基础信息(手机号、邮箱、密码、昵称、微信绑定等),配合 `UserMapper` 完成持久化。 |
|
| `User` | `manager/src/main/java/.../pojo/po/User.java` | 记录用户基础信息(手机号、邮箱、密码、昵称、微信绑定等),配合 `UserMapper` 完成持久化。 |
|
||||||
| `OssFile` | `manager/src/main/java/.../pojo/po/OssFile.java` | 描述 OSS(对象存储)中文件的元数据(路径、大小、标签等),通过 `OssFileMapper` 进行增删改查。 |
|
| `OssFile` | `manager/src/main/java/.../pojo/po/OssFile.java` | 描述 OSS(对象存储)中文件的元数据(路径、大小、标签等),通过 `OssFileMapper` 进行增删改查。 |
|
||||||
| `OssUrlVo` | `manager/src/main/java/.../pojo/vo/OssUrlVo.java` | 对外返回的 OSS 访问 URL 结构体,供前端直接使用。 |
|
| `OssUrlVo` | `manager/src/main/java/.../pojo/vo/OssUrlVo.java` | 对外返回的 OSS 访问 URL 结构体,供前端直接使用。 |
|
||||||
|
| `LoginVo` | `client-api/src/main/java/.../pojo/vo/LoginVo.java` | 登录成功后返回的用户信息(userId、nick)。 |
|
||||||
|
| `SmsLoginDto` | `client-api/src/main/java/.../pojo/dto/SmsLoginDto.java` | 短信验证码登录的请求参数(mobileNumber、code)。 |
|
||||||
> 这些实体位于 **manager**,因为它们属于业务模型,`manager` 负责提供完整的业务实现;同时它们可以被 **C 端**(如 `client‑api`)直接调用,体现了 B 端 + C 端共享的设计初衷。
|
> 这些实体位于 **manager**,因为它们属于业务模型,`manager` 负责提供完整的业务实现;同时它们可以被 **C 端**(如 `client‑api`)直接调用,体现了 B 端 + C 端共享的设计初衷。
|
||||||
|
|
||||||
## 4️⃣ 共享技术栈(位于 `common`)
|
## 4️⃣ 共享技术栈(位于 `common`)
|
||||||
|
|||||||
Reference in New Issue
Block a user