From 11c66b0ee58bc629bf8375eea53098b4fa236005 Mon Sep 17 00:00:00 2001 From: xiaohanzi Date: Sun, 12 Sep 2021 10:27:57 +0800 Subject: [PATCH] fix order --- .../com/iformall/service/impl/WxOrderServiceImpl.java | 10 +++++++--- .../service/order/impl/SingleOrderAdapterService.java | 1 - 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java index 7e2751fbb..7ce009e46 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -1993,18 +1993,23 @@ public class WxOrderServiceImpl implements WxOrderService { OrderAdapterService orderAdapterService = orderFactory.getOrderAdapterService(composeOrderType.getCode()); WxComposeOrder composeOrder = orderAdapterService.createDBMainOrder(user, orderSave, payWay); + WxOrder lastOrder = null; for (int i = 0 ; i < orderSave.size(); i ++) { OrderComposeSaveDto orderdto = orderSave.get(i); //券一个数量创建一个订单 boolean isOneNumberOneOrder = orderAdapterService.isOneNumberOneOrder(); if (isOneNumberOneOrder) { for (int j = 0; j < orderdto.getCount(); j++) { - proxy.handleSaveOrderForCouponSingle(composeOrder, user, orderdto.getWxCoupon(), 1, orderdto, payWay); + lastOrder = proxy.handleSaveOrderForCouponSingle(composeOrder, user, orderdto.getWxCoupon(), 1, orderdto, payWay); } }else { - proxy.handleSaveOrderForCouponSingle(composeOrder, user, orderdto.getWxCoupon(), orderdto.getCount(), orderdto, payWay); + lastOrder = proxy.handleSaveOrderForCouponSingle(composeOrder, user, orderdto.getWxCoupon(), orderdto.getCount(), orderdto, payWay); } } + //如果没有orderId,则用lastOrder的信息 + if (null == composeOrder.getMainOrderId() || composeOrder.getMainOrderId().intValue() <= 0) { + return new WxComposeOrder(lastOrder.getId(), composeOrder.getComposeOrderType()); + } return composeOrder; } @@ -2418,7 +2423,6 @@ public class WxOrderServiceImpl implements WxOrderService { @Override public ResultData composeSaveOrder(EnumComposeOrder composeOrderType,List composeOrderSaveDto,Long cUserId,EnumPayWay payWay,TenantEntity tenantEntity) { - logger.info("composeSaveOrder: " + composeOrderSaveDto); try { if (null == composeOrderSaveDto || composeOrderSaveDto.size() <= 0 ) { return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"无商品信息"); diff --git a/mallinkService/src/main/java/com/iformall/service/order/impl/SingleOrderAdapterService.java b/mallinkService/src/main/java/com/iformall/service/order/impl/SingleOrderAdapterService.java index f2bed6882..1c33be0aa 100644 --- a/mallinkService/src/main/java/com/iformall/service/order/impl/SingleOrderAdapterService.java +++ b/mallinkService/src/main/java/com/iformall/service/order/impl/SingleOrderAdapterService.java @@ -34,7 +34,6 @@ public class SingleOrderAdapterService implements OrderAdapterService { @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) @Override public WxComposeOrder createDBMainOrder(WxCUserBasicInfo user,List orderSave,EnumPayWay payWay) { - //do nothing, return new WxComposeOrder(0L, EnumComposeOrder.SINGLE.getCode()); }