Commit 7fc9689f07337a06398432d7a9b17eefc8b90d5c
1 parent
0b9ddddd
trade:定义管理后台的订单分页接口
Showing
18 changed files
with
327 additions
and
48 deletions
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/enums/TerminalEnum.java
| ... | ... | @@ -15,10 +15,9 @@ import java.util.Arrays; |
| 15 | 15 | @Getter |
| 16 | 16 | public enum TerminalEnum implements IntArrayValuable { |
| 17 | 17 | |
| 18 | - //TODO terminal 重复,请参考 '订单来源终端:[1:小程序 2:H5 3:iOS 4:安卓]' | |
| 19 | 18 | MINI_PROGRAM(1, "小程序"), |
| 20 | 19 | H5(2, "H5"), |
| 21 | - IOS(3, "iOS"), | |
| 20 | + IOS(3, "苹果"), | |
| 22 | 21 | ANDROID(3, "安卓"),; |
| 23 | 22 | |
| 24 | 23 | public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(TerminalEnum::getTerminal).toArray(); | ... | ... |
yudao-module-mall/yudao-module-trade-api/src/main/java/cn/iocoder/yudao/module/trade/enums/order/TradeOrderStatusEnum.java
| ... | ... | @@ -17,12 +17,11 @@ import java.util.Arrays; |
| 17 | 17 | @Getter |
| 18 | 18 | public enum TradeOrderStatusEnum implements IntArrayValuable { |
| 19 | 19 | |
| 20 | - UNPAID(0, "未付款"), | |
| 21 | - PAID(10, "已付款"), // 例如说,拼团订单,支付后,需要拼团成功后,才会处于待发货 | |
| 22 | - UNDELIVERED(20, "待发货"), | |
| 23 | - DELIVERED(30, "已发货"), | |
| 24 | - COMPLETED(40, "已完成"), | |
| 25 | - CANCELED(50, "已取消"); | |
| 20 | + UNPAID(0, "待支付"), | |
| 21 | + UNDELIVERED(10, "待发货"), | |
| 22 | + DELIVERED(20, "已发货"), | |
| 23 | + COMPLETED(30, "已完成"), | |
| 24 | + CANCELED(40, "已取消"); | |
| 26 | 25 | |
| 27 | 26 | // TODO 芋艿: TAKE("待核验"):虚拟订单需要核验商品 |
| 28 | 27 | |
| ... | ... | @@ -56,16 +55,6 @@ public enum TradeOrderStatusEnum implements IntArrayValuable { |
| 56 | 55 | } |
| 57 | 56 | |
| 58 | 57 | /** |
| 59 | - * 判断指定状态,是否正处于【已支付】状态 | |
| 60 | - * | |
| 61 | - * @param status 指定状态 | |
| 62 | - * @return 是否 | |
| 63 | - */ | |
| 64 | - public static boolean isPaid(Integer status) { | |
| 65 | - return ObjectUtil.equal(PAID.getStatus(), status); | |
| 66 | - } | |
| 67 | - | |
| 68 | - /** | |
| 69 | 58 | * 判断指定状态,是否正处于【待发货】状态 |
| 70 | 59 | * |
| 71 | 60 | * @param status 指定状态 |
| ... | ... | @@ -112,7 +101,7 @@ public enum TradeOrderStatusEnum implements IntArrayValuable { |
| 112 | 101 | * @return 是否 |
| 113 | 102 | */ |
| 114 | 103 | public static boolean havePaid(Integer status) { |
| 115 | - return ObjectUtils.equalsAny(status, PAID.getStatus(), UNDELIVERED.getStatus(), | |
| 104 | + return ObjectUtils.equalsAny(status, UNDELIVERED.getStatus(), | |
| 116 | 105 | DELIVERED.getStatus(), COMPLETED.getStatus()); |
| 117 | 106 | } |
| 118 | 107 | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/aftersale/vo/TradeAfterSaleBaseVO.java
| 1 | 1 | package cn.iocoder.yudao.module.trade.controller.admin.aftersale.vo; |
| 2 | 2 | |
| 3 | -import cn.iocoder.yudao.module.trade.controller.admin.base.product.property.ProductPropertyRespVO; | |
| 3 | +import cn.iocoder.yudao.module.trade.controller.admin.base.product.property.ProductPropertyValueDetailRespVO; | |
| 4 | 4 | import io.swagger.annotations.ApiModelProperty; |
| 5 | 5 | import lombok.Data; |
| 6 | 6 | import org.springframework.format.annotation.DateTimeFormat; |
| ... | ... | @@ -73,7 +73,7 @@ public class TradeAfterSaleBaseVO { |
| 73 | 73 | private Long skuId; |
| 74 | 74 | |
| 75 | 75 | @ApiModelProperty(value = "规格值数组") |
| 76 | - private List<ProductPropertyRespVO> properties; | |
| 76 | + private List<ProductPropertyValueDetailRespVO> properties; | |
| 77 | 77 | |
| 78 | 78 | @ApiModelProperty(value = "商品图片", example = "https://www.iocoder.cn/2.png") |
| 79 | 79 | private String picUrl; | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/base/product/property/ProductPropertyRespVO.java renamed to yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/base/product/property/ProductPropertyValueDetailRespVO.java
| ... | ... | @@ -4,14 +4,20 @@ import io.swagger.annotations.ApiModel; |
| 4 | 4 | import io.swagger.annotations.ApiModelProperty; |
| 5 | 5 | import lombok.Data; |
| 6 | 6 | |
| 7 | -@ApiModel("管理后台 - 商品规格 Response VO") | |
| 7 | +@ApiModel("管理后台 - 商品规格 + 规格值的明细 Response VO") | |
| 8 | 8 | @Data |
| 9 | -public class ProductPropertyRespVO { | |
| 9 | +public class ProductPropertyValueDetailRespVO { | |
| 10 | 10 | |
| 11 | - @ApiModelProperty(value = "属性编号", required = true, example = "1") | |
| 11 | + @ApiModelProperty(value = "属性的编号", required = true, example = "1") | |
| 12 | 12 | private Long propertyId; |
| 13 | 13 | |
| 14 | - @ApiModelProperty(value = "属性值编号", required = true, example = "2") | |
| 14 | + @ApiModelProperty(value = "属性的名称", required = true, example = "颜色") | |
| 15 | + private String propertyName; | |
| 16 | + | |
| 17 | + @ApiModelProperty(value = "属性值的编号", required = true, example = "1024") | |
| 15 | 18 | private Long valueId; |
| 16 | 19 | |
| 20 | + @ApiModelProperty(value = "属性值的名称", required = true, example = "红色") | |
| 21 | + private String valueName; | |
| 22 | + | |
| 17 | 23 | } | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/TradeOrderController.java
| 1 | 1 | package cn.iocoder.yudao.module.trade.controller.admin.order; |
| 2 | 2 | |
| 3 | 3 | import cn.iocoder.yudao.framework.common.pojo.CommonResult; |
| 4 | -import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; | |
| 4 | +import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 5 | 5 | import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderDeliveryReqVO; |
| 6 | +import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderPageItemRespVO; | |
| 7 | +import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderPageReqVO; | |
| 8 | +import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderDO; | |
| 6 | 9 | import cn.iocoder.yudao.module.trade.service.order.TradeOrderService; |
| 7 | 10 | import io.swagger.annotations.Api; |
| 8 | 11 | import io.swagger.annotations.ApiOperation; |
| 9 | 12 | import lombok.extern.slf4j.Slf4j; |
| 10 | 13 | import org.springframework.security.access.prepost.PreAuthorize; |
| 11 | 14 | import org.springframework.validation.annotation.Validated; |
| 12 | -import org.springframework.web.bind.annotation.PostMapping; | |
| 13 | -import org.springframework.web.bind.annotation.RequestBody; | |
| 14 | -import org.springframework.web.bind.annotation.RequestMapping; | |
| 15 | -import org.springframework.web.bind.annotation.RestController; | |
| 15 | +import org.springframework.web.bind.annotation.*; | |
| 16 | 16 | |
| 17 | 17 | import javax.annotation.Resource; |
| 18 | 18 | |
| ... | ... | @@ -29,6 +29,14 @@ public class TradeOrderController { |
| 29 | 29 | @Resource |
| 30 | 30 | private TradeOrderService tradeOrderService; |
| 31 | 31 | |
| 32 | + @GetMapping("/page") | |
| 33 | + @ApiOperation("获得交易订单分页") | |
| 34 | + @PreAuthorize("@ss.hasPermission('trade:order:query')") | |
| 35 | + public CommonResult<PageResult<TradeOrderPageItemRespVO>> getOrderPage(TradeOrderPageReqVO reqVO) { | |
| 36 | + PageResult<TradeOrderDO> pageResult = tradeOrderService.getOrderPage(reqVO); | |
| 37 | + return success(null); | |
| 38 | + } | |
| 39 | + | |
| 32 | 40 | @PostMapping("/delivery") |
| 33 | 41 | @ApiOperation("发货订单") |
| 34 | 42 | @PreAuthorize("@ss.hasPermission('trade:order:delivery')") | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderBaseVO.java
0 → 100755
| 1 | +package cn.iocoder.yudao.module.trade.controller.admin.order.vo; | |
| 2 | + | |
| 3 | +import io.swagger.annotations.ApiModelProperty; | |
| 4 | +import lombok.Data; | |
| 5 | + | |
| 6 | +import java.time.LocalDateTime; | |
| 7 | +import java.util.Date; | |
| 8 | + | |
| 9 | +/** | |
| 10 | +* 交易订单 Base VO,提供给添加、修改、详细的子 VO 使用 | |
| 11 | +* 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成 | |
| 12 | +*/ | |
| 13 | +@Data | |
| 14 | +public class TradeOrderBaseVO { | |
| 15 | + | |
| 16 | + // ========== 订单基本信息 ========== | |
| 17 | + | |
| 18 | + @ApiModelProperty(value = "订单编号", required = true, example = "1024") | |
| 19 | + private Long id; | |
| 20 | + | |
| 21 | + @ApiModelProperty(value = "订单流水号", required = true, example = "1146347329394184195") | |
| 22 | + private String no; | |
| 23 | + | |
| 24 | + @ApiModelProperty(value = "创建时间", required = true, notes = "下单时间") | |
| 25 | + private Date createTime; | |
| 26 | + | |
| 27 | + @ApiModelProperty(value = "订单来源", required = true, example = "1", notes = "参见 TerminalEnum 枚举") | |
| 28 | + private Integer terminal; | |
| 29 | + | |
| 30 | + @ApiModelProperty(value = "用户编号", required = true, example = "2048") | |
| 31 | + private Long userId; | |
| 32 | + | |
| 33 | + @ApiModelProperty(value = "用户 IP", required = true, example = "127.0.0.1") | |
| 34 | + private String userIp; | |
| 35 | + | |
| 36 | + @ApiModelProperty(value = "用户备注", required = true, example = "你猜") | |
| 37 | + private String userRemark; | |
| 38 | + | |
| 39 | + @ApiModelProperty(value = "订单状态", required = true, example = "1", notes = "参见 TradeOrderStatusEnum 枚举") | |
| 40 | + private Integer status; | |
| 41 | + | |
| 42 | + @ApiModelProperty(value = "购买的商品数量", required = true, example = "10") | |
| 43 | + private Integer productCount; | |
| 44 | + | |
| 45 | + @ApiModelProperty(value = "订单完成时间") | |
| 46 | + private LocalDateTime finishTime; | |
| 47 | + | |
| 48 | + @ApiModelProperty(value = "订单取消时间") | |
| 49 | + private LocalDateTime cancelTime; | |
| 50 | + | |
| 51 | + @ApiModelProperty(value = "取消类型", example = "10", notes = "参见 TradeOrderCancelTypeEnum 枚举") | |
| 52 | + private Integer cancelType; | |
| 53 | + | |
| 54 | + @ApiModelProperty(value = "商家备注", example = "你猜一下") | |
| 55 | + private String remark; | |
| 56 | + | |
| 57 | + // ========== 价格 + 支付基本信息 ========== | |
| 58 | + | |
| 59 | + @ApiModelProperty(value = "支付订单编号", required = true, example = "1024") | |
| 60 | + private Long payOrderId; | |
| 61 | + | |
| 62 | + @ApiModelProperty(value = "是否已支付", required = true, example = "true") | |
| 63 | + private Boolean payed; | |
| 64 | + | |
| 65 | + @ApiModelProperty(value = "付款时间") | |
| 66 | + private LocalDateTime payTime; | |
| 67 | + | |
| 68 | + @ApiModelProperty(value = "支付渠道", required = true, example = "wx_lite", notes = "参见 PayChannelEnum 枚举") | |
| 69 | + private String payChannelCode; | |
| 70 | + | |
| 71 | + @ApiModelProperty(value = "商品原价(总)", required = true, example = "1000", notes = "单位:分") | |
| 72 | + private Integer originalPrice; | |
| 73 | + | |
| 74 | + @ApiModelProperty(value = "订单原价(总)", required = true, example = "1000", notes = "单位:分") | |
| 75 | + private Integer orderPrice; | |
| 76 | + | |
| 77 | + @ApiModelProperty(value = "订单优惠(总)", required = true, example = "100", notes = "单位:分") | |
| 78 | + private Integer discountPrice; | |
| 79 | + | |
| 80 | + @ApiModelProperty(value = "运费金额", required = true, example = "100", notes = "单位:分") | |
| 81 | + private Integer deliveryPrice; | |
| 82 | + | |
| 83 | + @ApiModelProperty(value = "订单调价(总)", required = true, example = "100", notes = "单位:分") | |
| 84 | + private Integer adjustPrice; | |
| 85 | + | |
| 86 | + @ApiModelProperty(value = "应付金额(总)", required = true, example = "1000", notes = "单位:分") | |
| 87 | + private Integer payPrice; | |
| 88 | + | |
| 89 | + // ========== 收件 + 物流基本信息 ========== | |
| 90 | + | |
| 91 | + @ApiModelProperty(value = "配送模板编号", example = "1024") | |
| 92 | + private Long deliveryTemplateId; | |
| 93 | + | |
| 94 | + @ApiModelProperty(value = "发货物流公司编号", example = "1024") | |
| 95 | + private Long logisticsId; | |
| 96 | + | |
| 97 | + @ApiModelProperty(value = "发货物流单号", example = "1024") | |
| 98 | + private String logisticsNo; | |
| 99 | + | |
| 100 | + @ApiModelProperty(value = "发货状态", required = true, example = "1", notes = "参见 TradeOrderDeliveryStatusEnum 枚举") | |
| 101 | + private Integer deliveryStatus; | |
| 102 | + | |
| 103 | + @ApiModelProperty(value = "发货时间") | |
| 104 | + private LocalDateTime deliveryTime; | |
| 105 | + | |
| 106 | + @ApiModelProperty(value = "收货时间") | |
| 107 | + private LocalDateTime receiveTime; | |
| 108 | + | |
| 109 | + @ApiModelProperty(value = "收件人名称", required = true, example = "张三") | |
| 110 | + private String receiverName; | |
| 111 | + | |
| 112 | + @ApiModelProperty(value = "收件人手机", required = true, example = "13800138000") | |
| 113 | + private String receiverMobile; | |
| 114 | + | |
| 115 | + @ApiModelProperty(value = "收件人地区编号", required = true, example = "110000") | |
| 116 | + private Integer receiverAreaId; | |
| 117 | + | |
| 118 | + @ApiModelProperty(value = "收件人邮编", required = true, example = "100000") | |
| 119 | + private Integer receiverPostCode; | |
| 120 | + | |
| 121 | + @ApiModelProperty(value = "收件人详细地址", required = true, example = "中关村大街 1 号") | |
| 122 | + private String receiverDetailAddress; | |
| 123 | + | |
| 124 | + // ========== 售后基本信息 ========== | |
| 125 | + | |
| 126 | + @ApiModelProperty(value = "售后状态", example = "1", notes = "参见 TradeOrderAfterSaleStatusEnum 枚举") | |
| 127 | + private Integer afterSaleStatus; | |
| 128 | + | |
| 129 | + @ApiModelProperty(value = "退款金额", required = true, example = "100", notes = "单位:分") | |
| 130 | + private Integer refundPrice; | |
| 131 | + | |
| 132 | + // ========== 营销基本信息 ========== | |
| 133 | + | |
| 134 | + @ApiModelProperty(value = "优惠劵编号", example = "1024") | |
| 135 | + private Long couponId; | |
| 136 | + | |
| 137 | + @ApiModelProperty(value = "优惠劵减免金额", required = true, example = "100", notes = "单位:分") | |
| 138 | + private Integer couponPrice; | |
| 139 | + | |
| 140 | + @ApiModelProperty(value = "积分抵扣的金额", required = true, example = "100", notes = "单位:分") | |
| 141 | + private Integer pointPrice; | |
| 142 | +} | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderItemBaseVO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.trade.controller.admin.order.vo; | |
| 2 | + | |
| 3 | +import io.swagger.annotations.ApiModelProperty; | |
| 4 | +import lombok.Data; | |
| 5 | + | |
| 6 | +/** | |
| 7 | + * 交易订单项 Base VO,提供给添加、修改、详细的子 VO 使用 | |
| 8 | + * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成 | |
| 9 | + */ | |
| 10 | +@Data | |
| 11 | +public class TradeOrderItemBaseVO { | |
| 12 | + | |
| 13 | + // ========== 订单项基本信息 ========== | |
| 14 | + | |
| 15 | + @ApiModelProperty(value = "编号", required = true, example = "1") | |
| 16 | + private Long id; | |
| 17 | + | |
| 18 | + @ApiModelProperty(value = "用户编号", required = true, example = "1") | |
| 19 | + private Long userId; | |
| 20 | + | |
| 21 | + @ApiModelProperty(value = "订单编号", required = true, example = "1") | |
| 22 | + private Long orderId; | |
| 23 | + | |
| 24 | + // ========== 商品基本信息 ========== | |
| 25 | + | |
| 26 | + @ApiModelProperty(value = "商品 SPU 编号", required = true, example = "1") | |
| 27 | + private Long spuId; | |
| 28 | + | |
| 29 | + @ApiModelProperty(value = "商品 SPU 名称", required = true, example = "芋道源码") | |
| 30 | + private String spuName; | |
| 31 | + | |
| 32 | + @ApiModelProperty(value = "商品 SKU 编号", required = true, example = "1") | |
| 33 | + private Long skuId; | |
| 34 | + | |
| 35 | + @ApiModelProperty(value = "商品图片", required = true, example = "https://www.iocoder.cn/1.png") | |
| 36 | + private String picUrl; | |
| 37 | + | |
| 38 | + @ApiModelProperty(value = "购买数量", required = true, example = "1") | |
| 39 | + private Integer count; | |
| 40 | + | |
| 41 | + // ========== 价格 + 支付基本信息 ========== | |
| 42 | + | |
| 43 | + @ApiModelProperty(value = "商品原价(总)", required = true, example = "100", notes = "单位:分") | |
| 44 | + private Integer originalPrice; | |
| 45 | + | |
| 46 | + @ApiModelProperty(value = "商品原价(单)", required = true, example = "100", notes = "单位:分") | |
| 47 | + private Integer originalUnitPrice; | |
| 48 | + | |
| 49 | + @ApiModelProperty(value = "商品优惠(总)", required = true, example = "100", notes = "单位:分") | |
| 50 | + private Integer discountPrice; | |
| 51 | + | |
| 52 | + @ApiModelProperty(value = "商品实付金额(总)", required = true, example = "100", notes = "单位:分") | |
| 53 | + private Integer payPrice; | |
| 54 | + | |
| 55 | + @ApiModelProperty(value = "子订单分摊金额(总)", required = true, example = "100", notes = "单位:分") | |
| 56 | + private Integer orderPartPrice; | |
| 57 | + | |
| 58 | + @ApiModelProperty(value = "分摊后子订单实付金额(总)", required = true, example = "100", notes = "单位:分") | |
| 59 | + private Integer orderDividePrice; | |
| 60 | + | |
| 61 | + // ========== 营销基本信息 ========== | |
| 62 | + | |
| 63 | + // TODO 芋艿:在捉摸一下 | |
| 64 | + | |
| 65 | + // ========== 售后基本信息 ========== | |
| 66 | + | |
| 67 | + @ApiModelProperty(value = "售后状态", required = true, example = "1", notes = "参见 TradeOrderItemAfterSaleStatusEnum 枚举类") | |
| 68 | + private Integer afterSaleStatus; | |
| 69 | + | |
| 70 | +} | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderPageItemRespVO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.trade.controller.admin.order.vo; | |
| 2 | + | |
| 3 | +import cn.iocoder.yudao.module.trade.controller.admin.base.product.property.ProductPropertyValueDetailRespVO; | |
| 4 | +import io.swagger.annotations.ApiModel; | |
| 5 | +import lombok.Data; | |
| 6 | + | |
| 7 | +import java.util.List; | |
| 8 | + | |
| 9 | +@ApiModel("管理后台 - 交易订单的分页项 Response VO") | |
| 10 | +@Data | |
| 11 | +public class TradeOrderPageItemRespVO { | |
| 12 | + | |
| 13 | + /** | |
| 14 | + * 订单项列表 | |
| 15 | + */ | |
| 16 | + private List<Item> items; | |
| 17 | + | |
| 18 | + @ApiModel("管理后台 - 交易订单的分页项的订单项目") | |
| 19 | + @Data | |
| 20 | + public static class Item extends TradeOrderItemBaseVO { | |
| 21 | + | |
| 22 | + /** | |
| 23 | + * 规格值数组 | |
| 24 | + */ | |
| 25 | + private List<ProductPropertyValueDetailRespVO> properties; | |
| 26 | + | |
| 27 | + } | |
| 28 | + | |
| 29 | +} | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderPageReqVO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.trade.controller.admin.order.vo; | |
| 2 | + | |
| 3 | +import cn.iocoder.yudao.framework.common.validation.InEnum; | |
| 4 | +import cn.iocoder.yudao.module.trade.enums.order.TradeOrderStatusEnum; | |
| 5 | +import io.swagger.annotations.ApiModel; | |
| 6 | +import io.swagger.annotations.ApiModelProperty; | |
| 7 | +import lombok.Data; | |
| 8 | + | |
| 9 | +@ApiModel("管理后台 - 交易订单的分页 Request VO") | |
| 10 | +@Data | |
| 11 | +public class TradeOrderPageReqVO { | |
| 12 | + | |
| 13 | + @ApiModelProperty(value = "订单状态", example = "1", notes = "参见 TradeOrderStatusEnum 枚举") | |
| 14 | + @InEnum(value = TradeOrderStatusEnum.class, message = "订单状态必须是 {value}") | |
| 15 | + private Integer status; | |
| 16 | + | |
| 17 | +} | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/base/property/AppProductPropertyValueDetailRespVO.java
| ... | ... | @@ -4,7 +4,7 @@ import io.swagger.annotations.ApiModel; |
| 4 | 4 | import io.swagger.annotations.ApiModelProperty; |
| 5 | 5 | import lombok.Data; |
| 6 | 6 | |
| 7 | -@ApiModel("用户 App - 规格 + 规格值 Response VO") | |
| 7 | +@ApiModel("用户 App - 商品规格 + 规格值的明细 Response VO") | |
| 8 | 8 | @Data |
| 9 | 9 | public class AppProductPropertyValueDetailRespVO { |
| 10 | 10 | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/AppTradeOrderController.java
| ... | ... | @@ -8,8 +8,8 @@ import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; |
| 8 | 8 | import cn.iocoder.yudao.module.pay.api.notify.dto.PayOrderNotifyReqDTO; |
| 9 | 9 | import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderCreateReqVO; |
| 10 | 10 | import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderGetCreateInfoRespVO; |
| 11 | -import cn.iocoder.yudao.module.trade.controller.app.order.vo.TradeOrderPageReqVO; | |
| 12 | -import cn.iocoder.yudao.module.trade.controller.app.order.vo.TradeOrderRespVO; | |
| 11 | +import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderPageReqVO; | |
| 12 | +import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderRespVO; | |
| 13 | 13 | import cn.iocoder.yudao.module.trade.service.order.TradeOrderService; |
| 14 | 14 | import io.swagger.annotations.Api; |
| 15 | 15 | import io.swagger.annotations.ApiImplicitParam; |
| ... | ... | @@ -65,14 +65,14 @@ public class AppTradeOrderController { |
| 65 | 65 | @GetMapping("/get") |
| 66 | 66 | @ApiOperation("获得交易订单") |
| 67 | 67 | @ApiImplicitParam(name = "tradeOrderId", value = "交易订单编号", required = true, dataTypeClass = Long.class) |
| 68 | - public CommonResult<TradeOrderRespVO> getTradeOrder(@RequestParam("tradeOrderId") Integer tradeOrderId) { | |
| 68 | + public CommonResult<AppTradeOrderRespVO> getTradeOrder(@RequestParam("tradeOrderId") Integer tradeOrderId) { | |
| 69 | 69 | // return success(tradeOrderService.getTradeOrder(tradeOrderId)); |
| 70 | 70 | return null; |
| 71 | 71 | } |
| 72 | 72 | |
| 73 | 73 | @GetMapping("/page") |
| 74 | 74 | @ApiOperation("获得订单交易分页") |
| 75 | - public CommonResult<PageResult<TradeOrderRespVO>> pageTradeOrder(TradeOrderPageReqVO pageVO) { | |
| 75 | + public CommonResult<PageResult<AppTradeOrderRespVO>> pageTradeOrder(AppTradeOrderPageReqVO pageVO) { | |
| 76 | 76 | // return success(tradeOrderService.pageTradeOrder(UserSecurityContextHolder.getUserId(), pageVO)); |
| 77 | 77 | return null; |
| 78 | 78 | } | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/TradeOrderItemRespVO.java renamed to yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderItemRespVO.java
| ... | ... | @@ -6,9 +6,10 @@ import lombok.Data; |
| 6 | 6 | |
| 7 | 7 | import java.time.LocalDateTime; |
| 8 | 8 | |
| 9 | +// TODO 芋艿:字段优化 | |
| 9 | 10 | @ApiModel("交易订单项 Response VO") |
| 10 | 11 | @Data |
| 11 | -public class TradeOrderItemRespVO { | |
| 12 | +public class AppTradeOrderItemRespVO { | |
| 12 | 13 | |
| 13 | 14 | @ApiModelProperty(value = "id自增长", required = true) |
| 14 | 15 | private Integer id; | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/TradeOrderPageReqVO.java renamed to yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderPageReqVO.java
| ... | ... | @@ -6,10 +6,11 @@ import io.swagger.annotations.ApiModelProperty; |
| 6 | 6 | import lombok.Data; |
| 7 | 7 | import lombok.EqualsAndHashCode; |
| 8 | 8 | |
| 9 | +// TODO 芋艿:字段优化 | |
| 9 | 10 | @ApiModel("交易订单分页 Request VO") |
| 10 | 11 | @Data |
| 11 | 12 | @EqualsAndHashCode(callSuper = true) |
| 12 | -public class TradeOrderPageReqVO extends PageParam { | |
| 13 | +public class AppTradeOrderPageReqVO extends PageParam { | |
| 13 | 14 | |
| 14 | 15 | @ApiModelProperty(value = "订单状态", example = "1", notes = "参见 TradeOrderStatusEnum 枚举") |
| 15 | 16 | private Integer orderStatus; | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/TradeOrderRespVO.java renamed to yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderRespVO.java
| ... | ... | @@ -6,9 +6,10 @@ import io.swagger.annotations.*; |
| 6 | 6 | import java.time.LocalDateTime; |
| 7 | 7 | import java.util.*; |
| 8 | 8 | |
| 9 | +// TODO 芋艿:字段优化 | |
| 9 | 10 | @ApiModel("订单交易 Response VO") |
| 10 | 11 | @Data |
| 11 | -public class TradeOrderRespVO { | |
| 12 | +public class AppTradeOrderRespVO { | |
| 12 | 13 | |
| 13 | 14 | @ApiModelProperty(value = "订单编号", required = true) |
| 14 | 15 | private Integer id; |
| ... | ... | @@ -66,7 +67,7 @@ public class TradeOrderRespVO { |
| 66 | 67 | * |
| 67 | 68 | * // TODO 芋艿,后续考虑怎么优化下,目前是内嵌了别的 dto |
| 68 | 69 | */ |
| 69 | - private List<TradeOrderItemRespVO> orderItems; | |
| 70 | + private List<AppTradeOrderItemRespVO> orderItems; | |
| 70 | 71 | |
| 71 | 72 | |
| 72 | 73 | } | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/dataobject/order/TradeOrderDO.java
| ... | ... | @@ -47,7 +47,7 @@ public class TradeOrderDO extends BaseDO { |
| 47 | 47 | */ |
| 48 | 48 | private Integer type; // TODO order_promotion_type |
| 49 | 49 | /** |
| 50 | - * 订单来源终端 | |
| 50 | + * 订单来源 | |
| 51 | 51 | * |
| 52 | 52 | * 枚举 {@link TerminalEnum} |
| 53 | 53 | */ |
| ... | ... | @@ -97,6 +97,10 @@ public class TradeOrderDO extends BaseDO { |
| 97 | 97 | |
| 98 | 98 | // ========== 价格 + 支付基本信息 ========== |
| 99 | 99 | |
| 100 | + // 价格文档 - 淘宝:https://open.taobao.com/docV3.htm?docId=108471&docType=1 | |
| 101 | + // 价格文档 - 京东到家:https://openo2o.jddj.com/api/getApiDetail/182/4d1494c5e7ac4679bfdaaed950c5bc7f.htm | |
| 102 | + // 价格文档 - 有赞:https://doc.youzanyun.com/detail/API/0/906 | |
| 103 | + | |
| 100 | 104 | /** |
| 101 | 105 | * 支付订单编号 |
| 102 | 106 | * |
| ... | ... | @@ -115,17 +119,12 @@ public class TradeOrderDO extends BaseDO { |
| 115 | 119 | */ |
| 116 | 120 | private LocalDateTime payTime; |
| 117 | 121 | /** |
| 118 | - * 支付成功的支付渠道 | |
| 122 | + * 支付渠道 | |
| 119 | 123 | * |
| 120 | 124 | * 对应 PayChannelEnum 枚举 |
| 121 | 125 | */ |
| 122 | 126 | private String payChannelCode; |
| 123 | 127 | |
| 124 | - // ========== 价格 + 支付基本信息 ========== | |
| 125 | - // 价格文档 - 淘宝:https://open.taobao.com/docV3.htm?docId=108471&docType=1 | |
| 126 | - // 价格文档 - 京东到家:https://openo2o.jddj.com/api/getApiDetail/182/4d1494c5e7ac4679bfdaaed950c5bc7f.htm | |
| 127 | - // 价格文档 - 有赞:https://doc.youzanyun.com/detail/API/0/906 | |
| 128 | - | |
| 129 | 128 | /** |
| 130 | 129 | * 商品原价(总),单位:分 |
| 131 | 130 | * |
| ... | ... | @@ -222,7 +221,7 @@ public class TradeOrderDO extends BaseDO { |
| 222 | 221 | */ |
| 223 | 222 | private String receiverDetailAddress; |
| 224 | 223 | |
| 225 | - // ========== 退款基本信息 ========== | |
| 224 | + // ========== 售后基本信息 ========== | |
| 226 | 225 | /** |
| 227 | 226 | * 收货状态 |
| 228 | 227 | * | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/dataobject/order/TradeOrderItemDO.java
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderService.java
| 1 | 1 | package cn.iocoder.yudao.module.trade.service.order; |
| 2 | 2 | |
| 3 | +import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 3 | 4 | import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderDeliveryReqVO; |
| 5 | +import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderPageReqVO; | |
| 4 | 6 | import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderCreateReqVO; |
| 5 | 7 | import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderDO; |
| 6 | 8 | import cn.iocoder.yudao.module.trade.dal.dataobject.order.TradeOrderItemDO; |
| ... | ... | @@ -58,6 +60,14 @@ public interface TradeOrderService { |
| 58 | 60 | */ |
| 59 | 61 | TradeOrderDO getOrder(Long userId, Long id); |
| 60 | 62 | |
| 63 | + /** | |
| 64 | + * 获得交易订单分页 | |
| 65 | + * | |
| 66 | + * @param reqVO 分页请求 | |
| 67 | + * @return 交易订单 | |
| 68 | + */ | |
| 69 | + PageResult<TradeOrderDO> getOrderPage(TradeOrderPageReqVO reqVO); | |
| 70 | + | |
| 61 | 71 | // =================== Order Item =================== |
| 62 | 72 | |
| 63 | 73 | /** | ... | ... |
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderServiceImpl.java
| ... | ... | @@ -6,6 +6,7 @@ import cn.hutool.core.util.StrUtil; |
| 6 | 6 | import cn.iocoder.yudao.framework.common.core.KeyValue; |
| 7 | 7 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; |
| 8 | 8 | import cn.iocoder.yudao.framework.common.enums.TerminalEnum; |
| 9 | +import cn.iocoder.yudao.framework.common.pojo.PageResult; | |
| 9 | 10 | import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; |
| 10 | 11 | import cn.iocoder.yudao.framework.common.util.json.JsonUtils; |
| 11 | 12 | import cn.iocoder.yudao.module.member.api.address.AddressApi; |
| ... | ... | @@ -25,6 +26,7 @@ import cn.iocoder.yudao.module.promotion.api.coupon.dto.CouponUseReqDTO; |
| 25 | 26 | import cn.iocoder.yudao.module.promotion.api.price.PriceApi; |
| 26 | 27 | import cn.iocoder.yudao.module.promotion.api.price.dto.PriceCalculateRespDTO; |
| 27 | 28 | import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderDeliveryReqVO; |
| 29 | +import cn.iocoder.yudao.module.trade.controller.admin.order.vo.TradeOrderPageReqVO; | |
| 28 | 30 | import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderCreateReqVO; |
| 29 | 31 | import cn.iocoder.yudao.module.trade.controller.app.order.vo.AppTradeOrderCreateReqVO.Item; |
| 30 | 32 | import cn.iocoder.yudao.module.trade.convert.order.TradeOrderConvert; |
| ... | ... | @@ -419,6 +421,11 @@ public class TradeOrderServiceImpl implements TradeOrderService { |
| 419 | 421 | return order; |
| 420 | 422 | } |
| 421 | 423 | |
| 424 | + @Override | |
| 425 | + public PageResult<TradeOrderDO> getOrderPage(TradeOrderPageReqVO reqVO) { | |
| 426 | + return null; | |
| 427 | + } | |
| 428 | + | |
| 422 | 429 | // =================== Order Item =================== |
| 423 | 430 | |
| 424 | 431 | @Override | ... | ... |