From 5e65512a9272984c1666bdc6c097e52caaf3444e Mon Sep 17 00:00:00 2001 From: owen Date: Tue, 17 Oct 2023 16:09:37 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=A4=E6=98=93=EF=BC=9A=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E6=A0=B8=E9=94=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/order/TradeOrderController.java | 31 +++++++++++++------ .../admin/order/vo/TradeOrderBaseVO.java | 6 ++-- .../order/TradeOrderUpdateService.java | 7 +++++ .../order/TradeOrderUpdateServiceImpl.java | 5 +++ 4 files changed, 37 insertions(+), 12 deletions(-) diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/TradeOrderController.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/TradeOrderController.java index 3dae95f3a..e1dbfaf9a 100644 --- a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/TradeOrderController.java +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/TradeOrderController.java @@ -56,7 +56,7 @@ public class TradeOrderController { } // 查询用户信息 - Map userMap = memberUserApi.getUserMap(convertSet(pageResult.getList(), TradeOrderDO::getUserId));; + Map userMap = memberUserApi.getUserMap(convertSet(pageResult.getList(), TradeOrderDO::getUserId)); // 查询订单项 List orderItems = tradeOrderQueryService.getOrderItemListByOrderId( convertSet(pageResult.getList(), TradeOrderDO::getId)); @@ -126,18 +126,31 @@ public class TradeOrderController { return success(true); } - // TODO @疯狂:1、在【订单列表】界面,增加一个【核销按钮】。点击后,弹窗出一个核销码输入的窗口。 - // - //2、输入核销码后,点击确认,基于 code 查询对应的订单,之后弹窗展示。 - // - //3、新的弹窗,下面有个【确认核销】按钮。确认后,进行订单核销逻辑。注意,只有门店自提的订单,才可以核销。 - // TODO 这里的 id 应该是 pickUpVerifyCode 参数哈; - @PutMapping("/pick-up") + @PutMapping("/pick-up-by-id") @Operation(summary = "订单核销") + @Parameter(name = "id", description = "交易订单编号") @PreAuthorize("@ss.hasPermission('trade:order:pick-up')") - public CommonResult pickUpOrder(@RequestParam("id") Long id) { + public CommonResult pickUpOrderById(@RequestParam("id") Long id) { tradeOrderUpdateService.pickUpOrderByMember(id); return success(true); } + @PutMapping("/pick-up-by-verify-code") + @Operation(summary = "订单核销") + @Parameter(name = "pickUpVerifyCode", description = "自提核销码") + @PreAuthorize("@ss.hasPermission('trade:order:pick-up')") + public CommonResult pickUpOrderByVerifyCode(@RequestParam("pickUpVerifyCode") String pickUpVerifyCode) { + tradeOrderUpdateService.pickUpOrderByAdmin(pickUpVerifyCode); + return success(true); + } + + @GetMapping("/get-by-pick-up-verify-code") + @Operation(summary = "查询核销码对应的订单") + @Parameter(name = "pickUpVerifyCode", description = "自提核销码") + @PreAuthorize("@ss.hasPermission('trade:order:query')") + public CommonResult getByPickUpVerifyCode(@RequestParam("pickUpVerifyCode") String pickUpVerifyCode) { + TradeOrderDO tradeOrder = tradeOrderUpdateService.getByPickUpVerifyCode(pickUpVerifyCode); + return success(TradeOrderConvert.INSTANCE.convert2(tradeOrder, null)); + } + } diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderBaseVO.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderBaseVO.java index ed7c3a9f3..29875c8da 100755 --- a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderBaseVO.java +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/controller/admin/order/vo/TradeOrderBaseVO.java @@ -93,6 +93,9 @@ public class TradeOrderBaseVO { @Schema(description = "自提门店", example = "10") private Long pickUpStoreId; + @Schema(description = "自提核销码", example = "10") + private Long pickUpVerifyCode; + @Schema(description = "配送模板编号", example = "1024") private Long deliveryTemplateId; @@ -102,9 +105,6 @@ public class TradeOrderBaseVO { @Schema(description = "发货物流单号", example = "1024") private String logisticsNo; - @Schema(description = "发货状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1") - private Integer deliveryStatus; - @Schema(description = "发货时间") private LocalDateTime deliveryTime; diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderUpdateService.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderUpdateService.java index 488e24413..5876f1104 100644 --- a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderUpdateService.java +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderUpdateService.java @@ -131,6 +131,13 @@ public interface TradeOrderUpdateService { */ void pickUpOrderByAdmin(String pickUpVerifyCode); + /** + * 【管理员】根据自提核销码,查询订单 + * + * @param pickUpVerifyCode 自提核销码 + */ + TradeOrderDO getByPickUpVerifyCode(String pickUpVerifyCode); + // =================== Order Item =================== /** diff --git a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderUpdateServiceImpl.java b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderUpdateServiceImpl.java index fcd52050d..6083d9cc7 100644 --- a/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderUpdateServiceImpl.java +++ b/yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/service/order/TradeOrderUpdateServiceImpl.java @@ -680,6 +680,11 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService { getSelf().pickUpOrder(tradeOrderMapper.selectOneByPickUpVerifyCode(pickUpVerifyCode)); } + @Override + public TradeOrderDO getByPickUpVerifyCode(String pickUpVerifyCode) { + return tradeOrderMapper.selectOneByPickUpVerifyCode(pickUpVerifyCode); + } + @Transactional(rollbackFor = Exception.class) public void pickUpOrder(TradeOrderDO order) { if (order == null) {