javacodeadmin/AppletController统一响应处理说明.md

160 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# AppletController 统一响应处理修改说明
## 修改概述
`AppletController.java` 中的小程序接口进行了统一响应格式处理,按照以下规范:
- **成功响应**: code: 200
- **业务提示**: code: 422
- **Token验证失败**: code: 332
- **系统错误**: code: 500
## 新增统一响应方法
`AppletControllerUtil.java` 中新增了以下统一响应处理方法:
### 1. 成功响应方法
```java
// 成功响应 - code: 200
public static AjaxResult appletSuccess(Object data)
public static AjaxResult appletSuccess(String message)
public static AjaxResult appletSuccess()
```
### 2. 业务提示方法
```java
// 业务提示响应 - code: 422
public static AjaxResult appletWarning(String message)
public static AjaxResult appletWarning(String message, Object data)
```
### 3. Token验证失败方法
```java
// Token验证失败响应 - code: 332
public static AjaxResult appletUnauthorized()
public static AjaxResult appletUnauthorized(String message)
```
### 4. 系统错误方法
```java
// 系统错误响应 - code: 500
public static AjaxResult appletError(String message)
```
## 已修改的方法示例
### 1. 服务分类接口
```java
// 修改前
return success(categoryList);
return error("获取服务分类列表失败:" + e.getMessage());
// 修改后
return AppletControllerUtil.appletSuccess(categoryList);
return AppletControllerUtil.appletError("获取服务分类列表失败:" + e.getMessage());
```
### 2. Token验证相关
```java
// 修改前
return error("用户未登录或token无效");
// 修改后
return AppletControllerUtil.appletUnauthorized();
```
### 3. 业务验证相关
```java
// 修改前
return error("地址ID无效");
return error("参数格式错误");
// 修改后
return AppletControllerUtil.appletWarning("地址ID无效");
return AppletControllerUtil.appletWarning("参数格式错误");
```
### 4. 积分兑换特殊处理
```java
// 修改前
AjaxResult result = AjaxResult.error("积分不足");
result.put("code", 422);
result.put("data", new ArrayList<>());
return result;
// 修改后
return AppletControllerUtil.appletWarning("积分不足");
```
## 修改范围
### 已完成修改的方法:
1. `getInfo()` - 获取服务分类列表
2. `config()` - 获取系统配置信息
3. `getconfig()` - 获取默认配置信息
4. `getaddresslist()` - 查询用户收货地址列表
5. `getAddressInfo()` - 根据地址ID查询用户收货地址详情
6. `editAddress()` - 修改用户收货地址
7. `addAddress()` - 新增用户收货地址
8. `exchangeIntegralProduct()` - 积分商品兑换接口
### 待修改的方法(需要继续处理):
由于文件较大,还有以下方法需要继续修改:
- 售后返修相关接口
- 订单查询相关接口
- 支付相关接口
- 用户登录验证接口
- 商品查询相关接口
- 优惠券相关接口
- 积分日志相关接口
- 通知订阅相关接口
## 统一响应格式
### 成功响应 (200)
```json
{
"code": 200,
"msg": "OK",
"data": {...}
}
```
### 业务提示 (422)
```json
{
"code": 422,
"msg": "提示信息",
"data": []
}
```
### Token验证失败 (332)
```json
{
"code": 332,
"msg": "用户未登录或token无效请重新登录",
"data": []
}
```
### 系统错误 (500)
```json
{
"code": 500,
"msg": "系统错误信息",
"data": []
}
```
## 注意事项
1. **Token验证失败**一律返回 332 状态码
2. **业务验证失败**(如参数错误、数据不存在、权限不足)返回 422 状态码
3. **系统异常**(如数据库异常、网络异常)返回 500 状态码
4. **成功操作**返回 200 状态码
5. **积分不足**等特殊业务场景也使用 422 状态码
## 下一步工作
需要继续对剩余的方法进行统一响应格式处理,确保所有小程序接口都使用统一的响应格式。