本模块用于管理二手交易平台的委托人信息,支持委托人信息的创建、查询、更新和删除操作。
路径: alien-entity/src/main/java/shop/alien/entity/second/SecondEntrustUser.java
功能: 委托人信息实体类,对应数据库表 second_entrust_user
主要字段:
id: 主键tradeId: 交易IDuserPhone: 委托人电话userName: 委托人姓名idCard: 委托人身份证idCardImg: 委托人身份证照片deleteFlag: 删除标记(逻辑删除)createdTime: 创建时间(自动填充)createdUserId: 创建人ID(自动填充)updatedTime: 修改时间(自动填充)updatedUserId: 修改人ID(自动填充)路径: alien-entity/src/main/java/shop/alien/entity/second/vo/SecondEntrustUserDTO.java
功能: 用于接收前端请求参数,包含参数校验
校验规则:
tradeId: 必填userPhone: 必填,不能为空userName: 必填,不能为空idCard: 可选idCardImg: 可选路径: alien-entity/src/main/java/shop/alien/mapper/second/SecondEntrustUserMapper.java
功能: 继承 MyBatis-Plus 的 BaseMapper,提供基础 CRUD 操作
路径: alien-entity/src/main/resources/mapper/second/SecondEntrustUserMapper.xml
功能: MyBatis 映射配置文件,定义结果集映射和通用 SQL
路径: alien-second/src/main/java/shop/alien/second/service/SecondEntrustUserService.java
功能: 定义委托人信息业务逻辑接口
方法列表:
createEntrustUser(SecondEntrustUserDTO dto): 创建委托人信息getByTradeId(Integer tradeId): 根据交易ID获取委托人信息updateEntrustUser(Integer id, SecondEntrustUserDTO dto): 更新委托人信息deleteEntrustUser(Integer id): 删除委托人信息(逻辑删除)getByUserPhone(String userPhone): 根据用户电话查询委托人信息列表路径: alien-second/src/main/java/shop/alien/second/service/impl/SecondEntrustUserServiceImpl.java
功能: 实现委托人信息业务逻辑
特性:
@Transactional 保证事务一致性路径: alien-second/src/main/java/shop/alien/second/controller/SecondEntrustUserController.java
功能: 提供 RESTful API 接口
接口列表:
POST /secondEntrustUser/create - 创建委托人信息GET /secondEntrustUser/getByTradeId - 根据交易ID获取委托人信息GET /secondEntrustUser/getById - 根据ID获取委托人信息PUT /secondEntrustUser/update/{id} - 更新委托人信息DELETE /secondEntrustUser/delete - 删除委托人信息GET /secondEntrustUser/getByUserPhone - 根据用户电话查询委托人信息列表特性:
@Validated)R 封装)CREATE TABLE `second_entrust_user` (
`id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
`trade_id` int NOT NULL COMMENT '交易ID',
`user_phone` varchar(50) COMMENT '委托人电话',
`user_name` varchar(20) COMMENT '委托人姓名',
`id_card` varchar(255) COMMENT '委托人身份证',
`id_card_img` varchar(255) COMMENT '委托人身份证照片',
`delete_flag` int NOT NULL DEFAULT '0' COMMENT '删除标记, 0:未删除, 1:已删除',
`created_time` datetime(1) NOT NULL COMMENT '创建时间',
`created_user_id` int DEFAULT NULL COMMENT '创建人ID',
`updated_time` datetime DEFAULT NULL COMMENT '修改时间',
`updated_user_id` int DEFAULT NULL COMMENT '修改人ID',
PRIMARY KEY (`id`) USING BTREE
);
delete_flag = 1)// Controller 调用
SecondEntrustUserDTO dto = new SecondEntrustUserDTO();
dto.setTradeId(1);
dto.setUserPhone("13800138000");
dto.setUserName("张三");
dto.setIdCard("110101199001011234");
dto.setIdCardImg("https://example.com/id_card.jpg");
boolean result = secondEntrustUserService.createEntrustUser(dto);
// 根据交易ID查询
SecondEntrustUser entrustUser = secondEntrustUserService.getByTradeId(1);
// 根据用户电话查询
List<SecondEntrustUser> list = secondEntrustUserService.getByUserPhone("13800138000");
SecondEntrustUserDTO dto = new SecondEntrustUserDTO();
dto.setTradeId(1);
dto.setUserPhone("13800138001");
dto.setUserName("李四");
boolean result = secondEntrustUserService.updateEntrustUser(1, dto);
boolean result = secondEntrustUserService.deleteEntrustUser(1);
启动项目后,访问 Swagger UI 查看完整的 API 文档:
http://localhost:端口/swagger-ui.html
在 Swagger 中搜索 "二手平台-委托人信息管理" 即可查看所有接口。
详细的测试文档和测试数据请参考:alien-second/API_TEST.md
如果需要扩展功能,可以考虑: