fubojin 3 тижнів тому
батько
коміт
608deffa97

+ 12 - 0
yami-shop-platform/src/main/java/com/yami/shop/platform/controller/hb/HBOrderController.java

@@ -95,6 +95,18 @@ public class HBOrderController {
         return null;
     }
 
+    /**
+     * 海博订单创建结果通知-回调
+     *
+     * @param hBRequest 海博订单创建结果通知请求参数
+     * @return 订单响应
+     */
+    @PostMapping("/createOrderResult")
+    public HBR createOrderResult(@RequestBody JSONObject hBRequest) {
+        log.info("海博订单创建结果通知{}",hBRequest);
+        return orderService.createOrderResult(hBRequest);
+    }
+
     /**
      * 海博订单物流状态-回调
      *

+ 0 - 2
yami-shop-security/yami-shop-security-comment/src/main/java/com/yami/shop/security/comment/exception/UsernameNotFoundException.java

@@ -10,8 +10,6 @@
 
 package com.yami.shop.security.comment.exception;
 
-import com.yami.shop.common.exception.YamiShopBindException;
-
 public class UsernameNotFoundException extends BaseYamiAuth2Exception {
 
     public UsernameNotFoundException(String msg) {

+ 8 - 0
yami-shop-service/src/main/java/com/yami/shop/service/hb/IHBOrderService.java

@@ -28,4 +28,12 @@ public interface IHBOrderService {
      * @return 前台类目响应
      */
     String createOrderAsync(String channelOrderId);
+
+    /**
+     * 海博订单创建接口-结果接口
+     *
+     * @param hBRequest 海博订单结果请求参数
+     * @return 订单结果响应
+     */
+    HBR createOrderResult(JSONObject hBRequest);
 }

+ 26 - 14
yami-shop-service/src/main/java/com/yami/shop/service/hb/impl/HBOrderService.java

@@ -130,6 +130,12 @@ public class HBOrderService implements IHBOrderService {
         return post;
     }
 
+    @Override
+    public HBR createOrderResult(JSONObject hBRequest) {
+        log.info("海博订单创建完成结果通知请求参数{}",hBRequest);
+
+        return HBR.success();
+    }
 
 
     @Override
@@ -137,16 +143,16 @@ public class HBOrderService implements IHBOrderService {
         String bodyStr = hbRequest.getString("body");
         log.info("订单信息,body:{}", bodyStr);
         JSONObject bodyJson = JSON.parseObject(bodyStr);
-        Order order = orderMapper.getOrderAndOrderItemByOrderNumber(bodyJson.getString("Order"));
+        Order order = orderMapper.getOrderAndOrderItemByOrderNumber(bodyJson.getString("channelOrderId"));
 
         if (order == null) {
-            log.error("系统订单信息查询不到,单号:{}", bodyJson.getString("Order"));
-            return HBR.error("系统订单信息查询不到,单号:" + bodyJson.getString("Order"));
+            log.error("系统订单信息查询不到,单号:{}", bodyJson.getString("channelOrderId"));
+            return HBR.error("系统订单信息查询不到,单号:" + bodyJson.getString("channelOrderId"));
         }
         CreateOrderRequest createOrderRequest = new CreateOrderRequest();
         createOrderRequest.setChannelOrderId(order.getOrderNumber());
         createOrderRequest.setViewOrderId(order.getOrderNumber());
-        createOrderRequest.setOrderStatus(order.getHbOrderStatus());
+        createOrderRequest.setOrderStatus(20);
 //        createOrderRequest.setDaySeq(Order.getDaySeq());门店流水号
 
         ShopDetail shopDetail = shopDetailMapper.selectById(order.getShopId());
@@ -184,9 +190,16 @@ public class HBOrderService implements IHBOrderService {
         createOrderRequest.setOrderAgingType(0);
 //        createOrderRequest.setLogisticsStationTips(Order.getLogisticsStationTips());配送小费
         createOrderRequest.setOrderConfirmTime(order.getCreateTime().getTime());
-//        createOrderRequest.setLogisticsPreStartTime(Order.getLogisticsPreStartTime());配送预计开始时间
+
 //        createOrderRequest.setLogisticsPreEndTime(Order.getLogisticsPreEndTime());//配送预计送达时间
-        createOrderRequest.setOrderPayTime(order.getPayTime().getTime());
+        if (order.getPayTime() != null) {
+            createOrderRequest.setOrderPayTime(order.getPayTime().getTime());
+            //配送预计开始时间
+            long time = order.getPayTime().getTime();
+            //加一个小时
+            time += 60 * 60 * 1000;
+            createOrderRequest.setLogisticsPreEndTime(time);
+        }
 //        createOrderRequest.setOrderPickTime(order.getOrderPickTime());实际拣货完成时间
 //        createOrderRequest.setOrderPickPreEndTime(order.getOrderPickPreEndTime());
         if (order.getDvyTime() != null) {
@@ -223,11 +236,11 @@ public class HBOrderService implements IHBOrderService {
         orderFee.setShippingFee(freightAmount);
         orderFee.setBusinessShippingFeeSubsidy(0L);
         orderFee.setPlatformShippingFeeSubsidy(0L);
-        orderFee.setBusinessOrderSubsidy(totalPrice - actualTotal);
+        orderFee.setBusinessOrderSubsidy(0L);
         orderFee.setPlatformOrderSubsidy(0L);
-        orderFee.setBusinessProductSubsidy(totalPrice - actualTotal);
+        orderFee.setBusinessProductSubsidy(0L);
         orderFee.setPlatformProductSubsidy(0L);
-        orderFee.setTotalOrderDiscount(totalPrice - actualTotal);
+        orderFee.setTotalOrderDiscount(0L);
         orderFee.setProductSaleTotalPrice(totalPrice);
 //        orderFee.setUserIntegralDeduction(0L);用户积分抵扣金额
 //        orderFee.setAdjustFee(0);
@@ -251,8 +264,8 @@ public class HBOrderService implements IHBOrderService {
             orderProduct.setSkuWeight(sku.getWeight());
             orderProduct.setUnit(sku.getWeightUnit());
             orderProduct.setCount((long) orderItem.getProdCount());
-            orderProduct.setOriginSkuPrice((long)(sku.getPrice()*100));
-            orderProduct.setActivitySkuPrice((long)(sku.getPrice()*100));
+            orderProduct.setOriginSkuPrice((long)(orderItem.getPrice()*100));
+            orderProduct.setActivitySkuPrice((long)(orderItem.getPrice()*100));
             orderProduct.setSkuBasicSpec(sku.getSpec());
 //            orderProduct.setSkuImg(sku.getPic());
             orderProduct.setBusinessSingleProductSubsidy(0L);
@@ -287,14 +300,13 @@ public class HBOrderService implements IHBOrderService {
         //订单商品活动
 //        createOrderRequest.setProductActivities(order.getProductActivities());
 
-
         //订单发票信息
 //        List<OrderInvoice> orderInvoiceList = new ArrayList<>();
 //        OrderInvoice orderInvoice = new OrderInvoice();
 //        orderInvoiceList.add(orderInvoice);
 //        createOrderRequest.setOrderInvoices(orderInvoiceList);
-
-
+        //打印json格式
+        log.info("海博查询系统订单详情返回数据:{}", JSONObject.toJSONString(createOrderRequest));
         return HBR.success(createOrderRequest);
     }
 }