Commit 6fc724545ba8e68423fbc6b3230a826a1b4cc216

Authored by YunaiV
1 parent 6206dd94

mall + trade:

1、取消订单 mock 接口
2、删除订单 mock 接口
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderBaseVO.java
@@ -62,7 +62,7 @@ public class TradeOrderBaseVO { @@ -62,7 +62,7 @@ public class TradeOrderBaseVO {
62 private Long payOrderId; 62 private Long payOrderId;
63 63
64 @Schema(description = "是否已支付", requiredMode = Schema.RequiredMode.REQUIRED, example = "true") 64 @Schema(description = "是否已支付", requiredMode = Schema.RequiredMode.REQUIRED, example = "true")
65 - private Boolean payed; 65 + private Boolean payStatus;
66 66
67 @Schema(description = "付款时间") 67 @Schema(description = "付款时间")
68 private LocalDateTime payTime; 68 private LocalDateTime payTime;
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/AppTradeOrderController.java
@@ -127,6 +127,22 @@ public class AppTradeOrderController { @@ -127,6 +127,22 @@ public class AppTradeOrderController {
127 return success(orderCount); 127 return success(orderCount);
128 } 128 }
129 129
  130 + @DeleteMapping("/cancel")
  131 + @Operation(summary = "取消交易订单")
  132 + @Parameter(name = "id", description = "交易订单编号")
  133 + public CommonResult<Boolean> cancelOrder(@RequestParam("id") Long id) {
  134 + // TODO @芋艿:未实现,mock 用
  135 + return success(true);
  136 + }
  137 +
  138 + @DeleteMapping("/delete")
  139 + @Operation(summary = "删除交易订单")
  140 + @Parameter(name = "id", description = "交易订单编号")
  141 + public CommonResult<Boolean> deleteOrder(@RequestParam("id") Long id) {
  142 + // TODO @芋艿:未实现,mock 用
  143 + return success(true);
  144 + }
  145 +
130 // ========== 订单项 ========== 146 // ========== 订单项 ==========
131 147
132 @GetMapping("/item/get") 148 @GetMapping("/item/get")
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderDetailRespVO.java
@@ -44,7 +44,7 @@ public class AppTradeOrderDetailRespVO { @@ -44,7 +44,7 @@ public class AppTradeOrderDetailRespVO {
44 // ========== 价格 + 支付基本信息 ========== 44 // ========== 价格 + 支付基本信息 ==========
45 45
46 @Schema(description = "是否已支付", requiredMode = Schema.RequiredMode.REQUIRED, example = "true") 46 @Schema(description = "是否已支付", requiredMode = Schema.RequiredMode.REQUIRED, example = "true")
47 - private Boolean payed; 47 + private Boolean payStatus;
48 48
49 @Schema(description = "支付订单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") 49 @Schema(description = "支付订单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
50 private Long payOrderId; 50 private Long payOrderId;
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderPageItemRespVO.java
@@ -34,6 +34,9 @@ public class AppTradeOrderPageItemRespVO { @@ -34,6 +34,9 @@ public class AppTradeOrderPageItemRespVO {
34 34
35 // ========== 价格 + 支付基本信息 ========== 35 // ========== 价格 + 支付基本信息 ==========
36 36
  37 + @Schema(description = "支付订单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
  38 + private Long payOrderId;
  39 +
37 @Schema(description = "应付金额,单位:分", requiredMode = Schema.RequiredMode.REQUIRED, example = "1000") 40 @Schema(description = "应付金额,单位:分", requiredMode = Schema.RequiredMode.REQUIRED, example = "1000")
38 private Integer payPrice; 41 private Integer payPrice;
39 42
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/dataobject/order/TradeOrderDO.java
@@ -116,7 +116,7 @@ public class TradeOrderDO extends BaseDO { @@ -116,7 +116,7 @@ public class TradeOrderDO extends BaseDO {
116 * true - 已经支付过 116 * true - 已经支付过
117 * false - 没有支付过 117 * false - 没有支付过
118 */ 118 */
119 - private Boolean payed; 119 + private Boolean payStatus;
120 /** 120 /**
121 * 付款时间 121 * 付款时间
122 */ 122 */
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderServiceImpl.java
@@ -195,7 +195,7 @@ public class TradeOrderServiceImpl implements TradeOrderService { @@ -195,7 +195,7 @@ public class TradeOrderServiceImpl implements TradeOrderService {
195 order.setProductCount(getSumValue(calculateRespBO.getItems(), TradePriceCalculateRespBO.OrderItem::getCount, Integer::sum)); 195 order.setProductCount(getSumValue(calculateRespBO.getItems(), TradePriceCalculateRespBO.OrderItem::getCount, Integer::sum));
196 order.setTerminal(TerminalEnum.H5.getTerminal()); // todo 数据来源? 196 order.setTerminal(TerminalEnum.H5.getTerminal()); // todo 数据来源?
197 // 支付信息 197 // 支付信息
198 - order.setAdjustPrice(0).setPayed(false); 198 + order.setAdjustPrice(0).setPayStatus(false);
199 // 物流信息 TODO 芋艿:暂时写死物流方式;应该是前端选择的 199 // 物流信息 TODO 芋艿:暂时写死物流方式;应该是前端选择的
200 order.setDeliveryType(DeliveryTypeEnum.EXPRESS.getMode()).setDeliveryStatus(TradeOrderDeliveryStatusEnum.UNDELIVERED.getStatus()); 200 order.setDeliveryType(DeliveryTypeEnum.EXPRESS.getMode()).setDeliveryStatus(TradeOrderDeliveryStatusEnum.UNDELIVERED.getStatus());
201 // 退款信息 201 // 退款信息
@@ -262,7 +262,7 @@ public class TradeOrderServiceImpl implements TradeOrderService { @@ -262,7 +262,7 @@ public class TradeOrderServiceImpl implements TradeOrderService {
262 262
263 // 更新 TradeOrderDO 状态为已支付,等待发货 263 // 更新 TradeOrderDO 状态为已支付,等待发货
264 int updateCount = tradeOrderMapper.updateByIdAndStatus(id, order.getStatus(), 264 int updateCount = tradeOrderMapper.updateByIdAndStatus(id, order.getStatus(),
265 - new TradeOrderDO().setStatus(TradeOrderStatusEnum.UNDELIVERED.getStatus()).setPayed(true) 265 + new TradeOrderDO().setStatus(TradeOrderStatusEnum.UNDELIVERED.getStatus()).setPayStatus(true)
266 .setPayTime(LocalDateTime.now()).setPayChannelCode(payOrder.getChannelCode())); 266 .setPayTime(LocalDateTime.now()).setPayChannelCode(payOrder.getChannelCode()));
267 if (updateCount == 0) { 267 if (updateCount == 0) {
268 throw exception(ORDER_UPDATE_PAID_STATUS_NOT_UNPAID); 268 throw exception(ORDER_UPDATE_PAID_STATUS_NOT_UNPAID);
@@ -292,7 +292,7 @@ public class TradeOrderServiceImpl implements TradeOrderService { @@ -292,7 +292,7 @@ public class TradeOrderServiceImpl implements TradeOrderService {
292 throw exception(ORDER_NOT_FOUND); 292 throw exception(ORDER_NOT_FOUND);
293 } 293 }
294 // 校验订单未支付 294 // 校验订单未支付
295 - if (!TradeOrderStatusEnum.isUnpaid(order.getStatus()) || order.getPayed()) { 295 + if (!TradeOrderStatusEnum.isUnpaid(order.getStatus()) || order.getPayStatus()) {
296 log.error("[validateOrderPaid][order({}) 不处于待支付状态,请进行处理!order 数据是:{}]", 296 log.error("[validateOrderPaid][order({}) 不处于待支付状态,请进行处理!order 数据是:{}]",
297 id, JsonUtils.toJsonString(order)); 297 id, JsonUtils.toJsonString(order));
298 throw exception(ORDER_UPDATE_PAID_STATUS_NOT_UNPAID); 298 throw exception(ORDER_UPDATE_PAID_STATUS_NOT_UNPAID);
yudao-module-mall/yudao-module-trade-biz/src/test/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderServiceTest.java
@@ -168,7 +168,7 @@ public class TradeOrderServiceTest extends BaseDbUnitTest { @@ -168,7 +168,7 @@ public class TradeOrderServiceTest extends BaseDbUnitTest {
168 assertNull(tradeOrderDO.getCancelType()); 168 assertNull(tradeOrderDO.getCancelType());
169 assertEquals(tradeOrderDO.getUserRemark(), "我是备注"); 169 assertEquals(tradeOrderDO.getUserRemark(), "我是备注");
170 assertNull(tradeOrderDO.getRemark()); 170 assertNull(tradeOrderDO.getRemark());
171 - assertFalse(tradeOrderDO.getPayed()); 171 + assertFalse(tradeOrderDO.getPayStatus());
172 assertNull(tradeOrderDO.getPayTime()); 172 assertNull(tradeOrderDO.getPayTime());
173 assertEquals(tradeOrderDO.getTotalPrice(), 230); 173 assertEquals(tradeOrderDO.getTotalPrice(), 230);
174 assertEquals(tradeOrderDO.getDiscountPrice(), 0); 174 assertEquals(tradeOrderDO.getDiscountPrice(), 0);
@@ -249,7 +249,7 @@ public class TradeOrderServiceTest extends BaseDbUnitTest { @@ -249,7 +249,7 @@ public class TradeOrderServiceTest extends BaseDbUnitTest {
249 // mock 数据(TradeOrder) 249 // mock 数据(TradeOrder)
250 TradeOrderDO order = randomPojo(TradeOrderDO.class, o -> { 250 TradeOrderDO order = randomPojo(TradeOrderDO.class, o -> {
251 o.setId(1L).setStatus(TradeOrderStatusEnum.UNPAID.getStatus()); 251 o.setId(1L).setStatus(TradeOrderStatusEnum.UNPAID.getStatus());
252 - o.setPayOrderId(10L).setPayed(false).setPayPrice(100).setPayTime(null); 252 + o.setPayOrderId(10L).setPayStatus(false).setPayPrice(100).setPayTime(null);
253 }); 253 });
254 tradeOrderMapper.insert(order); 254 tradeOrderMapper.insert(order);
255 // 准备参数 255 // 准备参数
@@ -265,7 +265,7 @@ public class TradeOrderServiceTest extends BaseDbUnitTest { @@ -265,7 +265,7 @@ public class TradeOrderServiceTest extends BaseDbUnitTest {
265 // 断言 265 // 断言
266 TradeOrderDO dbOrder = tradeOrderMapper.selectById(id); 266 TradeOrderDO dbOrder = tradeOrderMapper.selectById(id);
267 assertEquals(dbOrder.getStatus(), TradeOrderStatusEnum.UNDELIVERED.getStatus()); 267 assertEquals(dbOrder.getStatus(), TradeOrderStatusEnum.UNDELIVERED.getStatus());
268 - assertTrue(dbOrder.getPayed()); 268 + assertTrue(dbOrder.getPayStatus());
269 assertNotNull(dbOrder.getPayTime()); 269 assertNotNull(dbOrder.getPayTime());
270 assertEquals(dbOrder.getPayChannelCode(), "wx_pub"); 270 assertEquals(dbOrder.getPayChannelCode(), "wx_pub");
271 } 271 }
yudao-module-mall/yudao-module-trade-biz/src/test/resources/sql/create_tables.sql
@@ -10,7 +10,7 @@ CREATE TABLE IF NOT EXISTS &quot;trade_order&quot; ( @@ -10,7 +10,7 @@ CREATE TABLE IF NOT EXISTS &quot;trade_order&quot; (
10 "product_count" int NOT NULL, 10 "product_count" int NOT NULL,
11 "cancel_type" int, 11 "cancel_type" int,
12 "remark" varchar, 12 "remark" varchar,
13 - "payed" bit NOT NULL, 13 + "pay_status" bit NOT NULL,
14 "pay_time" datetime, 14 "pay_time" datetime,
15 "finish_time" datetime, 15 "finish_time" datetime,
16 "cancel_time" datetime, 16 "cancel_time" datetime,