From 6206dd94e2c6e09803091c911322e6e72defce3e Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sat, 1 Jul 2023 00:26:09 +0800 Subject: [PATCH] =?UTF-8?q?mall=20+=20trade=EF=BC=9A=201=E3=80=81=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E8=AE=A2=E5=8D=95=E7=BB=93=E7=AE=97=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=EF=BC=8C=E5=A2=9E=E5=8A=A0=E9=97=A8=E5=BA=97=E8=87=AA=E6=8F=90?= =?UTF-8?q?=E7=BC=96=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/order/AppTradeOrderController.java | 6 +++--- .../app/order/vo/AppTradeOrderCreateRespVO.java | 16 ++++++++++++++++ .../order/vo/AppTradeOrderSettlementReqVO.java | 2 ++ .../trade/dal/dataobject/order/TradeOrderDO.java | 1 + .../trade/service/order/TradeOrderService.java | 4 ++-- .../service/order/TradeOrderServiceImpl.java | 5 +++-- 6 files changed, 27 insertions(+), 7 deletions(-) create mode 100644 yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderCreateRespVO.java diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/AppTradeOrderController.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/AppTradeOrderController.java index 2d97c990d..df6cc008a 100644 --- a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/AppTradeOrderController.java +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/AppTradeOrderController.java @@ -66,9 +66,9 @@ public class AppTradeOrderController { @PostMapping("/create") @Operation(summary = "创建订单") @PreAuthenticated - public CommonResult createOrder(@RequestBody AppTradeOrderCreateReqVO createReqVO) { - Long orderId = tradeOrderService.createOrder(getLoginUserId(), getClientIP(), createReqVO); - return success(orderId); + public CommonResult createOrder(@RequestBody AppTradeOrderCreateReqVO createReqVO) { + TradeOrderDO order = tradeOrderService.createOrder(getLoginUserId(), getClientIP(), createReqVO); + return success(new AppTradeOrderCreateRespVO().setId(order.getId()).setPayOrderId(order.getPayOrderId())); } @PostMapping("/update-paid") diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderCreateRespVO.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderCreateRespVO.java new file mode 100644 index 000000000..ae3f83194 --- /dev/null +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderCreateRespVO.java @@ -0,0 +1,16 @@ +package cn.iocoder.yudao.module.trade.controller.app.order.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Schema(description = "用户 App - 交易订单创建 Response VO") +@Data +public class AppTradeOrderCreateRespVO { + + @Schema(description = "订单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") + private Long id; + + @Schema(description = "支付订单编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024") + private Long payOrderId; + +} diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderSettlementReqVO.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderSettlementReqVO.java index 31b2f3faa..9c0623fed 100644 --- a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderSettlementReqVO.java +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/app/order/vo/AppTradeOrderSettlementReqVO.java @@ -43,6 +43,8 @@ public class AppTradeOrderSettlementReqVO { @Schema(description = "收件地址编号", example = "1") private Long addressId; + @Schema(description = "自提门店编号", example = "1088") + private Long pickupStoreId; @Schema(description = "收件人名称", example = "芋艿") // 选择门店自提时,该字段为联系人名 private String receiverName; @Schema(description = "收件人手机", example = "15601691300") // 选择门店自提时,该字段为联系人手机 diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/dataobject/order/TradeOrderDO.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/dataobject/order/TradeOrderDO.java index 1e132a990..e06ff9ef8 100644 --- a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/dataobject/order/TradeOrderDO.java +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/dal/dataobject/order/TradeOrderDO.java @@ -197,6 +197,7 @@ public class TradeOrderDO extends BaseDO { */ private LocalDateTime deliveryTime; + // TODO @芋艿:pickUpStoreId; /** * 收货时间 */ diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderService.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderService.java index 9ecdfaea1..d49baf49c 100644 --- a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderService.java +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderService.java @@ -40,9 +40,9 @@ public interface TradeOrderService { * @param userId 登录用户 * @param userIp 用户 IP 地址 * @param createReqVO 创建交易订单请求模型 - * @return 交易订单的编号 + * @return 交易订单的 */ - Long createOrder(Long userId, String userIp, AppTradeOrderCreateReqVO createReqVO); + TradeOrderDO createOrder(Long userId, String userIp, AppTradeOrderCreateReqVO createReqVO); /** * 更新交易订单已支付 diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderServiceImpl.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderServiceImpl.java index b324c8a21..7c5c18f9f 100644 --- a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderServiceImpl.java +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderServiceImpl.java @@ -152,7 +152,7 @@ public class TradeOrderServiceImpl implements TradeOrderService { @Override @Transactional(rollbackFor = Exception.class) - public Long createOrder(Long userId, String userIp, AppTradeOrderCreateReqVO createReqVO) { + public TradeOrderDO createOrder(Long userId, String userIp, AppTradeOrderCreateReqVO createReqVO) { // 1. 用户收件地址的校验 AddressRespDTO address = validateAddress(userId, createReqVO.getAddressId()); @@ -167,7 +167,7 @@ public class TradeOrderServiceImpl implements TradeOrderService { // 订单创建完后的逻辑 afterCreateTradeOrder(userId, createReqVO, order, orderItems, calculateRespBO); // TODO @LeeYan9: 是可以思考下, 订单的营销优惠记录, 应该记录在哪里, 微信讨论起来! - return order.getId(); + return order; } /** @@ -250,6 +250,7 @@ public class TradeOrderServiceImpl implements TradeOrderService { // 更新到交易单上 tradeOrderMapper.updateById(new TradeOrderDO().setId(order.getId()).setPayOrderId(payOrderId)); + order.setPayOrderId(payOrderId); } @Override