Commit c1429dd3a0d395f79365202a054a262889a43098

Authored by YunaiV
1 parent e7186768

✨ 增加售后日志列表 API

yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/aftersale/vo/log/AfterSaleLogRespVO.java
@@ -14,26 +14,21 @@ public class AfterSaleLogRespVO { @@ -14,26 +14,21 @@ public class AfterSaleLogRespVO {
14 private Long id; 14 private Long id;
15 15
16 @Schema(description = "用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "22634") 16 @Schema(description = "用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "22634")
17 - @NotNull(message = "用户编号不能为空")  
18 private Long userId; 17 private Long userId;
19 18
20 @Schema(description = "用户类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") 19 @Schema(description = "用户类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
21 - @NotNull(message = "用户类型不能为空")  
22 private Integer userType; 20 private Integer userType;
23 21
24 @Schema(description = "售后编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "3023") 22 @Schema(description = "售后编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "3023")
25 - @NotNull(message = "售后编号不能为空")  
26 private Long afterSaleId; 23 private Long afterSaleId;
27 24
28 @Schema(description = "售后状态(之前)", example = "2") 25 @Schema(description = "售后状态(之前)", example = "2")
29 private Integer beforeStatus; 26 private Integer beforeStatus;
30 27
31 @Schema(description = "售后状态(之后)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") 28 @Schema(description = "售后状态(之后)", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
32 - @NotNull(message = "售后状态(之后)不能为空")  
33 private Integer afterStatus; 29 private Integer afterStatus;
34 30
35 @Schema(description = "操作明细", requiredMode = Schema.RequiredMode.REQUIRED, example = "维权完成,退款金额:¥37776.00") 31 @Schema(description = "操作明细", requiredMode = Schema.RequiredMode.REQUIRED, example = "维权完成,退款金额:¥37776.00")
36 - @NotNull(message = "操作明细不能为空")  
37 private String content; 32 private String content;
38 33
39 @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) 34 @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/aftersale/AppAfterSaleController.java
@@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.trade.controller.app.aftersale; @@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.trade.controller.app.aftersale;
3 import cn.iocoder.yudao.framework.common.pojo.CommonResult; 3 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
4 import cn.iocoder.yudao.framework.common.pojo.PageParam; 4 import cn.iocoder.yudao.framework.common.pojo.PageParam;
5 import cn.iocoder.yudao.framework.common.pojo.PageResult; 5 import cn.iocoder.yudao.framework.common.pojo.PageResult;
  6 +import cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo.log.AfterSaleLogRespVO;
6 import cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.AppAfterSaleCreateReqVO; 7 import cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.AppAfterSaleCreateReqVO;
7 import cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.AppAfterSaleDeliveryReqVO; 8 import cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.AppAfterSaleDeliveryReqVO;
8 import cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.AppAfterSaleRespVO; 9 import cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.AppAfterSaleRespVO;
@@ -17,6 +18,8 @@ import org.springframework.web.bind.annotation.*; @@ -17,6 +18,8 @@ import org.springframework.web.bind.annotation.*;
17 18
18 import jakarta.annotation.Resource; 19 import jakarta.annotation.Resource;
19 20
  21 +import java.util.List;
  22 +
20 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; 23 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
21 import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId; 24 import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
22 25
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/aftersale/AppAfterSaleLogController.java 0 → 100644
  1 +package cn.iocoder.yudao.module.trade.controller.app.aftersale;
  2 +
  3 +import cn.iocoder.yudao.framework.common.pojo.CommonResult;
  4 +import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
  5 +import cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.log.AppAfterSaleLogRespVO;
  6 +import cn.iocoder.yudao.module.trade.dal.dataobject.aftersale.AfterSaleLogDO;
  7 +import cn.iocoder.yudao.module.trade.service.aftersale.AfterSaleLogService;
  8 +import io.swagger.v3.oas.annotations.Operation;
  9 +import io.swagger.v3.oas.annotations.Parameter;
  10 +import io.swagger.v3.oas.annotations.tags.Tag;
  11 +import jakarta.annotation.Resource;
  12 +import lombok.extern.slf4j.Slf4j;
  13 +import org.springframework.validation.annotation.Validated;
  14 +import org.springframework.web.bind.annotation.GetMapping;
  15 +import org.springframework.web.bind.annotation.RequestMapping;
  16 +import org.springframework.web.bind.annotation.RequestParam;
  17 +import org.springframework.web.bind.annotation.RestController;
  18 +
  19 +import java.util.List;
  20 +
  21 +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
  22 +
  23 +@Tag(name = "管理后台 - 售后日志")
  24 +@RestController
  25 +@RequestMapping("/trade/after-sale-log")
  26 +@Validated
  27 +@Slf4j
  28 +public class AppAfterSaleLogController {
  29 +
  30 + @Resource
  31 + private AfterSaleLogService afterSaleLogService;
  32 +
  33 + @GetMapping("/list")
  34 + @Operation(summary = "获得售后日志列表")
  35 + @Parameter(name = "afterSaleId", description = "售后编号", required = true, example = "1")
  36 + public CommonResult<List<AppAfterSaleLogRespVO>> getAfterSaleLogList(
  37 + @RequestParam("afterSaleId") Long afterSaleId) {
  38 + List<AfterSaleLogDO> logs = afterSaleLogService.getAfterSaleLogList(afterSaleId);
  39 + return success(BeanUtils.toBean(logs, AppAfterSaleLogRespVO.class));
  40 + }
  41 +
  42 +}
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/aftersale/vo/AppAfterSaleRespVO.java
@@ -35,6 +35,12 @@ public class AppAfterSaleRespVO { @@ -35,6 +35,12 @@ public class AppAfterSaleRespVO {
35 @Schema(description = "补充凭证图片", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") 35 @Schema(description = "补充凭证图片", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
36 private List<String> applyPicUrls; 36 private List<String> applyPicUrls;
37 37
  38 + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
  39 + private LocalDateTime createTime;
  40 +
  41 + @Schema(description = "更新时间", requiredMode = Schema.RequiredMode.REQUIRED)
  42 + private LocalDateTime updateTime;
  43 +
38 // ========== 交易订单相关 ========== 44 // ========== 交易订单相关 ==========
39 45
40 @Schema(description = "交易订单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") 46 @Schema(description = "交易订单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/aftersale/vo/log/AppAfterSaleLogRespVO.java 0 → 100644
  1 +package cn.iocoder.yudao.module.trade.controller.app.aftersale.vo.log;
  2 +
  3 +import io.swagger.v3.oas.annotations.media.Schema;
  4 +import jakarta.validation.constraints.NotNull;
  5 +import lombok.Data;
  6 +
  7 +import java.time.LocalDateTime;
  8 +
  9 +@Schema(description = "管理后台 - App 交易售后日志 Response VO")
  10 +@Data
  11 +public class AppAfterSaleLogRespVO {
  12 +
  13 + @Schema(description = "编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "20669")
  14 + private Long id;
  15 +
  16 + @Schema(description = "操作明细", requiredMode = Schema.RequiredMode.REQUIRED, example = "维权完成,退款金额:¥37776.00")
  17 + private String content;
  18 +
  19 + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
  20 + private LocalDateTime createTime;
  21 +
  22 +}
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderDetailRespVO.java
1 package cn.iocoder.yudao.module.trade.controller.app.order.vo; 1 package cn.iocoder.yudao.module.trade.controller.app.order.vo;
2 2
3 import cn.iocoder.yudao.module.trade.controller.app.order.vo.item.AppTradeOrderItemRespVO; 3 import cn.iocoder.yudao.module.trade.controller.app.order.vo.item.AppTradeOrderItemRespVO;
  4 +import cn.iocoder.yudao.module.trade.enums.order.TradeOrderRefundStatusEnum;
4 import io.swagger.v3.oas.annotations.media.Schema; 5 import io.swagger.v3.oas.annotations.media.Schema;
5 import lombok.Data; 6 import lombok.Data;
6 7
@@ -20,6 +21,9 @@ public class AppTradeOrderDetailRespVO { @@ -20,6 +21,9 @@ public class AppTradeOrderDetailRespVO {
20 @Schema(description = "订单流水号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1146347329394184195") 21 @Schema(description = "订单流水号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1146347329394184195")
21 private String no; 22 private String no;
22 23
  24 + @Schema(description = "订单类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "0")
  25 + private Integer type;
  26 +
23 @Schema(description = "下单时间", requiredMode = Schema.RequiredMode.REQUIRED) 27 @Schema(description = "下单时间", requiredMode = Schema.RequiredMode.REQUIRED)
24 private LocalDateTime createTime; 28 private LocalDateTime createTime;
25 29
@@ -118,6 +122,12 @@ public class AppTradeOrderDetailRespVO { @@ -118,6 +122,12 @@ public class AppTradeOrderDetailRespVO {
118 122
119 // ========== 售后基本信息 ========== 123 // ========== 售后基本信息 ==========
120 124
  125 + @Schema(description = "售后状态", example = "0")
  126 + private Integer refundStatus;
  127 +
  128 + @Schema(description = "退款金额,单位:分", example = "100")
  129 + private Integer refundPrice;
  130 +
121 // ========== 营销基本信息 ========== 131 // ========== 营销基本信息 ==========
122 132
123 @Schema(description = "优惠劵编号", example = "1024") 133 @Schema(description = "优惠劵编号", example = "1024")