From d7f01edd56f2f8a822ceffa9240fa22e4763d7e4 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Wed, 22 Jan 2025 15:42:40 +0800
Subject: [PATCH] refactor(mall): 重构订单发货相关代码

---
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java |   40 +++++++++++++++-------------------------
 1 files changed, 15 insertions(+), 25 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
index 5134332..4d909ae 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
@@ -6,6 +6,7 @@
 import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
 import cc.mrbird.febs.common.enumerates.OrderDeliveryStateEnum;
 import cc.mrbird.febs.common.enumerates.OrderStatusEnum;
+import cc.mrbird.febs.common.utils.ValidateEntityUtils;
 import cc.mrbird.febs.mall.dto.*;
 import cc.mrbird.febs.mall.entity.*;
 import cc.mrbird.febs.mall.mapper.*;
@@ -103,18 +104,13 @@
 
     @Override
     public FebsResponse deliverGoods(DeliverGoodsDto deliverGoodsDto) {
-        MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(deliverGoodsDto.getId());
-        if(ObjectUtil.isEmpty(mallOrderInfo)){
-            return new FebsResponse().fail().message("订单不存在,刷新后重试");
-        }
-        Integer status = mallOrderInfo.getStatus();
-        if(2 != status){
-            return new FebsResponse().fail().message("订单不是待发货状态");
-        }
-        Integer deliveryType = mallOrderInfo.getDeliveryType();
-        if(2 != deliveryType){
-            return new FebsResponse().fail().message("订单的配送方式不是快递");
-        }
+        MallOrderInfo mallOrderInfo = ValidateEntityUtils.ensureColumnReturnEntity(
+                deliverGoodsDto.getId(),
+                MallOrderInfo::getId,
+                mallOrderInfoMapper::selectOne,
+                "订单{}不存在");
+        ValidateEntityUtils.ensureEqual(mallOrderInfo.getStatus(), OrderStatusEnum.WAIT_SHIPPING.getValue(), "订单状态不是待发货状态");
+        ValidateEntityUtils.ensureEqual(mallOrderInfo.getDeliveryType(), 2, "订单的配送方式不是快递");
 //        String expressNo = deliverGoodsDto.getExpressNo();
 //        if(StrUtil.isEmpty(expressNo)){
 //            return new FebsResponse().fail().message("请输入物流单号");
@@ -458,19 +454,13 @@
 
     @Override
     public FebsResponse deliverGoodsUpdate(DeliverGoodsDto deliverGoodsDto) {
-        MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(deliverGoodsDto.getId());
-        if(ObjectUtil.isEmpty(mallOrderInfo)){
-            return new FebsResponse().fail().message("订单不存在,刷新后重试");
-        }
-        Integer status = mallOrderInfo.getStatus();
-        if(3 != status){
-            return new FebsResponse().fail().message("订单不是待收货状态");
-        }
-        Integer deliveryType = mallOrderInfo.getDeliveryType();
-        if(2 != deliveryType){
-            return new FebsResponse().fail().message("订单的配送方式不是快递");
-        }
-
+        MallOrderInfo mallOrderInfo = ValidateEntityUtils.ensureColumnReturnEntity(
+                deliverGoodsDto.getId(),
+                MallOrderInfo::getId,
+                mallOrderInfoMapper::selectOne,
+                "订单{}不存在");
+        ValidateEntityUtils.ensureEqual(mallOrderInfo.getStatus(), OrderStatusEnum.WAIT_FINISH.getValue(), "订单不是待收货状态");
+        ValidateEntityUtils.ensureEqual(mallOrderInfo.getDeliveryType(), 2, "订单的配送方式不是快递");
         mallOrderInfo.setStatus(OrderStatusEnum.FINISH.getValue());
         mallOrderInfo.setReceivingTime(new Date());
         mallOrderInfoMapper.updateById(mallOrderInfo);

--
Gitblit v1.9.1