소스 검색

商家核验订单

igl 1 년 전
부모
커밋
ab6a31eb35

+ 7 - 3
vehicle-api/src/main/java/com/chelvc/cloud/vehicle/api/service/IOmsOrderService.java

@@ -1,15 +1,12 @@
 package com.chelvc.cloud.vehicle.api.service;
 
 import com.chelvc.cloud.vehicle.api.dto.ConfirmOrderResultDTO;
-import com.chelvc.cloud.vehicle.api.dto.GoodsDTO;
 import com.chelvc.cloud.vehicle.api.dto.OmsOrderDTO;
 import com.chelvc.cloud.vehicle.api.dto.OmsOrderDetailDTO;
-import com.chelvc.cloud.vehicle.api.param.GoodsPagingParam;
 import com.chelvc.cloud.vehicle.api.param.OmsOrderModifyParam;
 import com.chelvc.cloud.vehicle.api.param.OrderPagingParam;
 import com.chelvc.framework.common.model.Pagination;
 
-import java.util.List;
 import java.util.Map;
 
 /**
@@ -96,4 +93,11 @@ public interface IOmsOrderService
      * @return 订单分页信息
      */
     Pagination<OmsOrderDTO> getMerchantOrderPaging(OrderPagingParam param);
+
+    /**
+     * 商家订单核验
+     * @param orderId
+     * @param merchantId
+     */
+    void orderVerification(Long orderId, Long merchantId);
 }

+ 27 - 0
vehicle-server/src/main/java/com/chelvc/cloud/vehicle/server/service/impl/OmsOrderServiceImpl.java

@@ -14,6 +14,7 @@ import com.chelvc.cloud.vehicle.server.dao.OmsOrderSettingMapper;
 import com.chelvc.cloud.vehicle.server.entity.*;
 import com.chelvc.cloud.vehicle.server.service.*;
 import com.chelvc.framework.base.context.SessionContextHolder;
+import com.chelvc.framework.base.exception.ResourceUnavailableException;
 import com.chelvc.framework.common.model.Pagination;
 import com.chelvc.framework.common.util.StringUtils;
 import com.chelvc.framework.database.util.PagingUtils;
@@ -741,6 +742,32 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
         return PagingUtils.convert(page, OrderCopier.INSTANCE::copying);
     }
 
+    @Override
+    public void orderVerification(Long orderId, Long merchantId) {
+        if(orderId == null){
+            throw new ResourceUnavailableException("订单不存在");
+        }
+        OmsOrder omsOrder = baseMapper.selectById(orderId);
+        if(omsOrder == null){
+            throw new ResourceUnavailableException("订单不存在");
+        }
+        if(omsOrder.getMerchantId() == null || !omsOrder.getMerchantId().equals(merchantId)){
+            throw new ResourceUnavailableException("该订单商品不属于此商家");
+        }
+        Integer status = omsOrder.getStatus();
+        if(status != 1){
+            throw new ResourceUnavailableException("该订单不可用");
+        }
+        omsOrder.setStatus(4);
+        omsOrder.setConfirmStatus(1);
+        omsOrder.setReceiveTime(new Date());
+        omsOrder.setUpdateTime(new Date());
+        int i = baseMapper.updateById(omsOrder);
+        if(i != 1){
+            throw new ResourceUnavailableException("处理失败");
+        }
+    }
+
 
     @Override
     public BigDecimal queryAmountByLastMonth(Long merchantId) {