| @@ -199,3 +199,6 @@ UPDATE wx_coupon_order_96 co, wx_merchant_b_user bu SET co.`b_merchant_id` = | |||||
| UPDATE wx_coupon_order_97 co, wx_merchant_b_user bu SET co.`b_merchant_id` = bu.`merchant_id` WHERE co.`b_user_id` = bu.`id`; | UPDATE wx_coupon_order_97 co, wx_merchant_b_user bu SET co.`b_merchant_id` = bu.`merchant_id` WHERE co.`b_user_id` = bu.`id`; | ||||
| UPDATE wx_coupon_order_98 co, wx_merchant_b_user bu SET co.`b_merchant_id` = bu.`merchant_id` WHERE co.`b_user_id` = bu.`id`; | UPDATE wx_coupon_order_98 co, wx_merchant_b_user bu SET co.`b_merchant_id` = bu.`merchant_id` WHERE co.`b_user_id` = bu.`id`; | ||||
| UPDATE wx_coupon_order_99 co, wx_merchant_b_user bu SET co.`b_merchant_id` = bu.`merchant_id` WHERE co.`b_user_id` = bu.`id`; | UPDATE wx_coupon_order_99 co, wx_merchant_b_user bu SET co.`b_merchant_id` = bu.`merchant_id` WHERE co.`b_user_id` = bu.`id`; | ||||
| @@ -237,72 +237,6 @@ public class BaseController { | |||||
| return null; | return null; | ||||
| } | } | ||||
| public Long saveToBasicInfoByCUser(String userPhone,String userName,String avatarUrl,Integer sex,Long userId) { | |||||
| TenantEntity tenantEntity = getTenantInfo(); | |||||
| if (StringUtils.isBlank(userPhone)) | |||||
| return null; | |||||
| WxCUserBasicInfo byId = null; | |||||
| if (null != userId) { | |||||
| byId = wxCUserBasicInfoService.getById(userId,getFinalTenantId()); | |||||
| } | |||||
| WxCUserBasicInfo basicInfo = wxCUserBasicInfoService.findInfoByPhone(tenantEntity, userPhone); | |||||
| if (basicInfo != null) { | |||||
| if (byId != null) { | |||||
| if (!byId.getId().equals(basicInfo.getId())) { | |||||
| //数据库存在此手机号的会员,并且当前微信存在另一手机号会员 | |||||
| logger.error("会员" + userId + "更换手机号时,当前手机号会员表已存在:" + userPhone); | |||||
| return Long.valueOf(-1); | |||||
| } | |||||
| } | |||||
| if (!basicInfo.getTenantId().contains("," + tenantEntity.getTenantId() + ",")) { | |||||
| basicInfo.setTenantId(basicInfo.getTenantId() + tenantEntity.getTenantId() + ","); | |||||
| } | |||||
| basicInfo.setNickName(userName); | |||||
| basicInfo.setAvatarUrl(avatarUrl); | |||||
| basicInfo.setSex(sex); | |||||
| wxCUserBasicInfoService.update(basicInfo); | |||||
| removeCacheMember(basicInfo.getId()); | |||||
| return basicInfo.getId(); | |||||
| } else { | |||||
| if (byId != null) { | |||||
| if (!byId.getTenantId().contains("," + tenantEntity.getTenantId() + ",")) { | |||||
| byId.setTenantId(byId.getTenantId() + tenantEntity.getTenantId() + ","); | |||||
| } | |||||
| byId.setPhone(userPhone); | |||||
| byId.setNickName(userName); | |||||
| byId.setAvatarUrl(avatarUrl); | |||||
| byId.setSex(sex); | |||||
| wxCUserBasicInfoService.update(byId); | |||||
| removeCacheMember(byId.getId()); | |||||
| return byId.getId(); | |||||
| } else { | |||||
| basicInfo = new WxCUserBasicInfo(); | |||||
| basicInfo.setTenantId("," + tenantEntity.getTenantId() + ","); | |||||
| basicInfo.setFinalTenantId(tenantEntity.getFinalTenantId()); | |||||
| basicInfo.setPhone(userPhone); | |||||
| basicInfo.setNickName(userName); | |||||
| basicInfo.setAvatarUrl(avatarUrl); | |||||
| basicInfo.setSex(sex); | |||||
| wxCUserBasicInfoService.save(basicInfo); | |||||
| removeCacheMember(basicInfo.getId()); | |||||
| // 首次授权, 增加成长值及积分 | |||||
| // 成长值 | |||||
| wxScoreRulesService.addScore(tenantEntity, EnumScoreType.WECHAT_PHONE, basicInfo); | |||||
| // 增加积分 | |||||
| wxCUserBasicInfoService.addCredit(basicInfo.getId(),tenantEntity,EnumScoreType.WECHAT_PHONE); | |||||
| // 外部注券 | |||||
| memCouponFromDspService.couponOrderFromDsp(tenantEntity, userPhone); | |||||
| return basicInfo.getId(); | |||||
| } | |||||
| } | |||||
| } | |||||
| public String getIpAddr() { | public String getIpAddr() { | ||||
| HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); | HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); | ||||
| String ipaddress = IPUtil.getIpAddr(request); | String ipaddress = IPUtil.getIpAddr(request); | ||||
| @@ -197,7 +197,10 @@ public class WxPayOrderController extends BaseController { | |||||
| WxComposeOrder composeOrder = orderFactory.getOrderAdapterService(payOrder.getComposeOrder()).getComposeOrder(payOrder.getOrderId(), payOrder.getTenantId()); | WxComposeOrder composeOrder = orderFactory.getOrderAdapterService(payOrder.getComposeOrder()).getComposeOrder(payOrder.getOrderId(), payOrder.getTenantId()); | ||||
| //查询微信订单状态并更新 | //查询微信订单状态并更新 | ||||
| check(composeOrder,payOrder); | |||||
| boolean hasCompleted = hasCompleted(composeOrder,payOrder); | |||||
| if (hasCompleted) { | |||||
| return new ResultData(Result.SUCCESS, "支付状态更新成功", composeOrder); | |||||
| } | |||||
| WxAppinfo appInfo = wxAppinfoService.getCAppInfo(payOrder, EnumPayWay.getEnum(payOrder.getPayVendor()).getPlat()); | WxAppinfo appInfo = wxAppinfoService.getCAppInfo(payOrder, EnumPayWay.getEnum(payOrder.getPayVendor()).getPlat()); | ||||
| //WxCUser user = getUser(); | //WxCUser user = getUser(); | ||||
| @@ -231,7 +234,7 @@ public class WxPayOrderController extends BaseController { | |||||
| } | } | ||||
| } | } | ||||
| private boolean check(WxComposeOrder composeOrder,WxPayOrder payOrder) { | |||||
| private boolean hasCompleted(WxComposeOrder composeOrder,WxPayOrder payOrder) { | |||||
| if (EnumComposeOrder.isSingle(composeOrder.getComposeOrderType())) { | if (EnumComposeOrder.isSingle(composeOrder.getComposeOrderType())) { | ||||
| WxOrder order = composeOrder.getSingleOrder(); | WxOrder order = composeOrder.getSingleOrder(); | ||||
| if (null == order) { | if (null == order) { | ||||
| @@ -191,14 +191,6 @@ public interface WxOrderService { | |||||
| void updateOrderGroupStatusByCouponChannelId(Long id, TenantEntity tenantEntity, Integer code); | void updateOrderGroupStatusByCouponChannelId(Long id, TenantEntity tenantEntity, Integer code); | ||||
| /** | |||||
| * 下订单 | |||||
| * @param user | |||||
| * @param coupon | |||||
| * @return | |||||
| */ | |||||
| WxComposeOrder saveOrderForCoupon(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,WxCUserBasicInfo user, List<OrderComposeSaveDto> orderSave,EnumPayWay payWay); | |||||
| void sendOrderSuccessActionMsg(WxOrder updateOrder); | void sendOrderSuccessActionMsg(WxOrder updateOrder); | ||||
| /** | /** | ||||
| @@ -2188,8 +2188,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| RedisTemplate<String, WxCUserBasicInfo> cUserBasicInfoRedisTemplate; | RedisTemplate<String, WxCUserBasicInfo> cUserBasicInfoRedisTemplate; | ||||
| @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | ||||
| @Override | |||||
| public WxComposeOrder saveOrderForCoupon(boolean allowUnPayOrder,EnumComposeOrder composeOrderType,WxCUserBasicInfo user,List<OrderComposeSaveDto> orderSave,EnumPayWay payWay) { | |||||
| public WxComposeOrder saveOrderForCoupon(TenantEntity tenantEntity,boolean allowUnPayOrder,EnumComposeOrder composeOrderType,WxCUserBasicInfo user,List<OrderComposeSaveDto> orderSave,EnumPayWay payWay) { | |||||
| WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); | WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); | ||||
| // 防止同一用户重复下单,1秒内 | // 防止同一用户重复下单,1秒内 | ||||
| String key = new StringBuilder().append("saveComposeOrder:").append(user.getId()).toString(); | String key = new StringBuilder().append("saveComposeOrder:").append(user.getId()).toString(); | ||||
| @@ -2202,7 +2201,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| OrderAdapterService orderAdapterService = orderFactory.getOrderAdapterService(composeOrderType.getCode()); | OrderAdapterService orderAdapterService = orderFactory.getOrderAdapterService(composeOrderType.getCode()); | ||||
| WxComposeOrder composeOrder = orderAdapterService.createDBMainOrder(user, orderSave, payWay); | |||||
| WxComposeOrder composeOrder = orderAdapterService.createDBMainOrder(tenantEntity,user, orderSave, payWay); | |||||
| WxOrder lastOrder = null; | WxOrder lastOrder = null; | ||||
| for (int i = 0 ; i < orderSave.size(); i ++) { | for (int i = 0 ; i < orderSave.size(); i ++) { | ||||
| OrderComposeSaveDto orderdto = orderSave.get(i); | OrderComposeSaveDto orderdto = orderSave.get(i); | ||||
| @@ -2314,6 +2313,9 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| } | } | ||||
| record.setCouponNumber(couponNumber); | record.setCouponNumber(couponNumber); | ||||
| try { | try { | ||||
| if(EnumComposeOrder.isSingle(composeOrder.getComposeOrderType())) { | |||||
| record.setId(composeOrder.getMainOrderId()); | |||||
| } | |||||
| proxy.saveFreeOrder(record, user, coupon); | proxy.saveFreeOrder(record, user, coupon); | ||||
| } catch (Exception e) { | } catch (Exception e) { | ||||
| logger.error("下订单错误:" + e.getMessage(),e); | logger.error("下订单错误:" + e.getMessage(),e); | ||||
| @@ -2469,12 +2471,12 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| logger.error("body:" + e.getMessage()); | logger.error("body:" + e.getMessage()); | ||||
| bodyStr = "券" + '-' + EnumCouponType.getEnum(coupon.getType()); | bodyStr = "券" + '-' + EnumCouponType.getEnum(coupon.getType()); | ||||
| } | } | ||||
| final IdWorker idWorker = IdWorker.get(); | |||||
| Long orderNumber = idWorker.nextId(); | |||||
| record.setId(orderNumber); | |||||
| if (null == record.getId()) { | |||||
| final IdWorker idWorker = IdWorker.get(); | |||||
| record.setId(idWorker.nextId()); | |||||
| } | |||||
| record.updateTenantInfo(coupon); | record.updateTenantInfo(coupon); | ||||
| record.setOrderNumber(orderNumber); | |||||
| record.setOrderNumber(record.getId()); | |||||
| record.setProductId(coupon.getId()); | record.setProductId(coupon.getId()); | ||||
| record.setCUserId(user.getId()); | record.setCUserId(user.getId()); | ||||
| record.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); | record.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); | ||||
| @@ -2696,7 +2698,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| } | } | ||||
| WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); | WxOrderServiceImpl proxy = (WxOrderServiceImpl) AopContext.currentProxy(); | ||||
| try { | try { | ||||
| WxComposeOrder order = proxy.saveOrderForCoupon(allowUnPayOrder,composeOrderType,wxCUserBasicInfo, composeOrderSaveDto, payWay); | |||||
| WxComposeOrder order = proxy.saveOrderForCoupon(tenantEntity,allowUnPayOrder,composeOrderType,wxCUserBasicInfo, composeOrderSaveDto, payWay); | |||||
| return new ResultData(order); | return new ResultData(order); | ||||
| } catch (MallinkException e) { | } catch (MallinkException e) { | ||||
| logger.error("saveOrderForCoupon error.",e); | logger.error("saveOrderForCoupon error.",e); | ||||
| @@ -2718,6 +2720,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| @Override | @Override | ||||
| public PageInfo<WxOrderCouponVo> listGoodsCAsPage(WxOrder record, Integer pageIndex, Integer pageSize) { | public PageInfo<WxOrderCouponVo> listGoodsCAsPage(WxOrder record, Integer pageIndex, Integer pageSize) { | ||||
| //TODO 待优化111111111111111111111111.此处有问题,数据不全,逻辑得跟listCUserVoAsPage一样 | |||||
| PageInfo<WxOrderCouponVo> page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxOrderMapper.listGoodsCAsPage(record)); | PageInfo<WxOrderCouponVo> page = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxOrderMapper.listGoodsCAsPage(record)); | ||||
| page.getList().stream().forEach(oc->{ | page.getList().stream().forEach(oc->{ | ||||
| if(oc.getLevel().equals(1)){ | if(oc.getLevel().equals(1)){ | ||||
| @@ -4,6 +4,7 @@ import java.util.List; | |||||
| import com.iformall.domain.dto.OrderComposeSaveDto; | import com.iformall.domain.dto.OrderComposeSaveDto; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| import com.iformall.domain.po.base.TenantEntity; | |||||
| import com.iformall.enums.EnumPayWay; | import com.iformall.enums.EnumPayWay; | ||||
| import com.iformall.service.order.entity.WxComposeChildOrderPrice; | import com.iformall.service.order.entity.WxComposeChildOrderPrice; | ||||
| import com.iformall.service.order.entity.WxComposeOrder; | import com.iformall.service.order.entity.WxComposeOrder; | ||||
| @@ -14,7 +15,7 @@ public interface OrderAdapterService { | |||||
| * 数据库创建组合主订单,不是wxOrder.单个的模式不用创建 | * 数据库创建组合主订单,不是wxOrder.单个的模式不用创建 | ||||
| * @return | * @return | ||||
| */ | */ | ||||
| WxComposeOrder createDBMainOrder(WxCUserBasicInfo user,List<OrderComposeSaveDto> orderSave,EnumPayWay payWay); | |||||
| WxComposeOrder createDBMainOrder(TenantEntity tenantEntity,WxCUserBasicInfo user,List<OrderComposeSaveDto> orderSave,EnumPayWay payWay); | |||||
| /** | /** | ||||
| * 获取支付时商品名称,供服务商API使用 | * 获取支付时商品名称,供服务商API使用 | ||||
| @@ -1,5 +1,6 @@ | |||||
| package com.iformall.service.order.entity; | package com.iformall.service.order.entity; | ||||
| import com.iformall.domain.po.WxBatchOrder; | |||||
| import com.iformall.domain.po.WxOrder; | import com.iformall.domain.po.WxOrder; | ||||
| import com.iformall.domain.po.base.TenantEntity; | import com.iformall.domain.po.base.TenantEntity; | ||||
| @@ -24,6 +25,6 @@ public class WxComposeOrder extends TenantEntity{ | |||||
| private WxOrder singleOrder;//单个模式时不用重复查询 | private WxOrder singleOrder;//单个模式时不用重复查询 | ||||
| private Object mainOrder;//真正的主订单对象,批量下单时才有 | |||||
| private WxBatchOrder mainOrder;//真正的主订单对象,批量下单时才有 | |||||
| } | } | ||||
| @@ -1,21 +1,28 @@ | |||||
| package com.iformall.service.order.impl; | package com.iformall.service.order.impl; | ||||
| import java.util.ArrayList; | import java.util.ArrayList; | ||||
| import java.util.Date; | |||||
| import java.util.List; | import java.util.List; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| import com.iformall.domain.po.base.TenantEntity; | |||||
| import org.springframework.beans.factory.annotation.Autowired; | import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.stereotype.Service; | import org.springframework.stereotype.Service; | ||||
| import org.springframework.transaction.annotation.Propagation; | import org.springframework.transaction.annotation.Propagation; | ||||
| import org.springframework.transaction.annotation.Transactional; | import org.springframework.transaction.annotation.Transactional; | ||||
| import com.iformall.common.IdWorker; | |||||
| import com.iformall.domain.dto.OrderComposeSaveDto; | import com.iformall.domain.dto.OrderComposeSaveDto; | ||||
| import com.iformall.enums.EnumComposeOrder; | import com.iformall.enums.EnumComposeOrder; | ||||
| import com.iformall.enums.EnumOrderShopingType; | import com.iformall.enums.EnumOrderShopingType; | ||||
| import com.iformall.enums.EnumPayWay; | import com.iformall.enums.EnumPayWay; | ||||
| import com.iformall.mapper.WxBatchOrderMapper; | |||||
| import com.iformall.mapper.WxOrderMapper; | import com.iformall.mapper.WxOrderMapper; | ||||
| import com.iformall.service.order.OrderAdapterService; | import com.iformall.service.order.OrderAdapterService; | ||||
| import com.iformall.service.order.entity.WxComposeChildOrderPrice; | import com.iformall.service.order.entity.WxComposeChildOrderPrice; | ||||
| import com.iformall.service.order.entity.WxComposeOrder; | import com.iformall.service.order.entity.WxComposeOrder; | ||||
| import com.iformall.service.order.impl.batch.BaseBatchOrderAdapterService; | |||||
| import com.iformall.service.order.util.OrderHelper; | import com.iformall.service.order.util.OrderHelper; | ||||
| /** | /** | ||||
| @@ -24,15 +31,17 @@ import com.iformall.service.order.util.OrderHelper; | |||||
| * | * | ||||
| */ | */ | ||||
| @Service | @Service | ||||
| public class SingleOrderAdapterService implements OrderAdapterService { | |||||
| public class SingleOrderAdapterService extends BaseBatchOrderAdapterService { | |||||
| @Autowired | @Autowired | ||||
| WxOrderMapper wxOrderMapper; | WxOrderMapper wxOrderMapper; | ||||
| @Autowired | |||||
| WxBatchOrderMapper wxBatchOrderMapper; | |||||
| @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | ||||
| @Override | @Override | ||||
| public WxComposeOrder createDBMainOrder(WxCUserBasicInfo user,List<OrderComposeSaveDto> orderSave,EnumPayWay payWay) { | |||||
| return new WxComposeOrder(0L, EnumComposeOrder.SINGLE.getCode(),0); | |||||
| public WxComposeOrder createDBMainOrder(TenantEntity tenantEntity,WxCUserBasicInfo user,List<OrderComposeSaveDto> orderSave,EnumPayWay payWay) { | |||||
| return super.createDBMainOrder(tenantEntity,user, orderSave, payWay, EnumComposeOrder.SINGLE); | |||||
| } | } | ||||
| @Override | @Override | ||||
| @@ -43,26 +52,13 @@ public class SingleOrderAdapterService implements OrderAdapterService { | |||||
| @Override | @Override | ||||
| public WxComposeOrder getComposeOrder(Long mainOrderId, String tenantId) { | public WxComposeOrder getComposeOrder(Long mainOrderId, String tenantId) { | ||||
| //mainOrderId(WxBatchOrder的id) 和 wxOrder的id一致 | |||||
| WxComposeOrder corder = super.getComposeOrder(mainOrderId, tenantId, EnumComposeOrder.SINGLE); | |||||
| WxOrder wxOrder = wxOrderMapper.selectById(mainOrderId, tenantId); | WxOrder wxOrder = wxOrderMapper.selectById(mainOrderId, tenantId); | ||||
| WxComposeOrder corder = new WxComposeOrder(wxOrder.getId(),EnumComposeOrder.SINGLE.getCode(),wxOrder.getPayment()); | |||||
| corder.updateTenantInfo(wxOrder); | |||||
| corder.setSingleOrder(wxOrder); | corder.setSingleOrder(wxOrder); | ||||
| return corder; | return corder; | ||||
| } | } | ||||
| @Override | |||||
| public WxComposeChildOrderPrice getChildCouponOrderPrice(OrderComposeSaveDto orderdto,WxCoupon coupon, boolean isPress, Long orderGroupId, | |||||
| Integer couponNumber) { | |||||
| Integer perPrice = OrderHelper.getCouponPerPayment(coupon, isPress, orderGroupId); | |||||
| Integer freightPrice = 0; | |||||
| //在线配送加上运费 | |||||
| if (EnumOrderShopingType.DISTRIBUTION.getCode().equals(orderdto.getShippingType())) { | |||||
| freightPrice = coupon.getFreightPrice(); | |||||
| } | |||||
| return new WxComposeChildOrderPrice(perPrice, couponNumber,freightPrice, coupon.getId()); | |||||
| } | |||||
| @Override | @Override | ||||
| public List<WxOrder> getChildOrders(WxComposeOrder composeOrder, String tenantId) { | public List<WxOrder> getChildOrders(WxComposeOrder composeOrder, String tenantId) { | ||||
| List<WxOrder> childOrders = new ArrayList<WxOrder>(); | List<WxOrder> childOrders = new ArrayList<WxOrder>(); | ||||
| @@ -70,14 +66,6 @@ public class SingleOrderAdapterService implements OrderAdapterService { | |||||
| return childOrders; | return childOrders; | ||||
| } | } | ||||
| @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | |||||
| @Override | |||||
| public void updateChildOrdersCUserId(WxComposeOrder composeOrder,List<WxOrder> orderList, Long cUserId) { | |||||
| WxOrder order = composeOrder.getSingleOrder(); | |||||
| order.setCUserId(cUserId); | |||||
| wxOrderMapper.updateCUserId(order); | |||||
| } | |||||
| @Override | @Override | ||||
| public Integer calcuteChildOrderSubsidy(WxCoupon coupon) { | public Integer calcuteChildOrderSubsidy(WxCoupon coupon) { | ||||
| return coupon.getSubsidyNum(); | return coupon.getSubsidyNum(); | ||||
| @@ -60,11 +60,12 @@ public abstract class BaseBatchOrderAdapterService implements OrderAdapterServic | |||||
| } | } | ||||
| @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | ||||
| protected WxComposeOrder createDBMainOrder(WxCUserBasicInfo user,List<OrderComposeSaveDto> orderSave,EnumPayWay payWay,EnumComposeOrder composeOrderType) { | |||||
| protected WxComposeOrder createDBMainOrder(TenantEntity tenantEntity,WxCUserBasicInfo user,List<OrderComposeSaveDto> orderSave,EnumPayWay payWay,EnumComposeOrder composeOrderType) { | |||||
| WxBatchOrder order =new WxBatchOrder(); | WxBatchOrder order =new WxBatchOrder(); | ||||
| final IdWorker idWorker = IdWorker.get(); | final IdWorker idWorker = IdWorker.get(); | ||||
| order.setId(idWorker.nextId()); | order.setId(idWorker.nextId()); | ||||
| order.setCUserId(user.getId()); | order.setCUserId(user.getId()); | ||||
| order.updateTenantInfo(tenantEntity); | |||||
| int payment = 0; | int payment = 0; | ||||
| for (OrderComposeSaveDto ocsd : orderSave) { | for (OrderComposeSaveDto ocsd : orderSave) { | ||||
| boolean isPress = ocsd.getSignleOrder().isPressOrder(); | boolean isPress = ocsd.getSignleOrder().isPressOrder(); | ||||
| @@ -98,7 +99,7 @@ public abstract class BaseBatchOrderAdapterService implements OrderAdapterServic | |||||
| @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | ||||
| public void updateChildOrdersCUserId(WxComposeOrder composeOrder,List<WxOrder> orderList, Long cUserId) { | public void updateChildOrdersCUserId(WxComposeOrder composeOrder,List<WxOrder> orderList, Long cUserId) { | ||||
| if (null != cUserId) { | if (null != cUserId) { | ||||
| WxBatchOrder order = (WxBatchOrder) composeOrder.getMainOrder(); | |||||
| WxBatchOrder order = composeOrder.getMainOrder(); | |||||
| order.setCUserId(cUserId); | order.setCUserId(cUserId); | ||||
| wxBatchOrderMapper.updateCUserId(order); | wxBatchOrderMapper.updateCUserId(order); | ||||
| @@ -6,6 +6,7 @@ import java.util.List; | |||||
| import com.aliyun.openservices.shade.com.alibaba.fastjson.JSON; | import com.aliyun.openservices.shade.com.alibaba.fastjson.JSON; | ||||
| import com.iformall.common.ErrorCode; | import com.iformall.common.ErrorCode; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| import com.iformall.domain.po.base.TenantEntity; | |||||
| import com.iformall.enums.*; | import com.iformall.enums.*; | ||||
| import com.iformall.exception.MallinkException; | import com.iformall.exception.MallinkException; | ||||
| import org.apache.commons.lang3.StringUtils; | import org.apache.commons.lang3.StringUtils; | ||||
| @@ -29,8 +30,8 @@ public class CouponPackageOrderAdapterService extends BaseBatchOrderAdapterServi | |||||
| @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | ||||
| @Override | @Override | ||||
| public WxComposeOrder createDBMainOrder(WxCUserBasicInfo user,List<OrderComposeSaveDto> orderSave,EnumPayWay payWay) { | |||||
| return super.createDBMainOrder(user, orderSave, payWay, EnumComposeOrder.PACKAGECOUPON); | |||||
| public WxComposeOrder createDBMainOrder(TenantEntity tenantEntity,WxCUserBasicInfo user,List<OrderComposeSaveDto> orderSave,EnumPayWay payWay) { | |||||
| return super.createDBMainOrder(tenantEntity,user, orderSave, payWay, EnumComposeOrder.PACKAGECOUPON); | |||||
| } | } | ||||
| @Override | @Override | ||||
| @@ -4,6 +4,8 @@ package com.iformall.service.order.impl.batch; | |||||
| import java.util.List; | import java.util.List; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| import com.iformall.domain.po.base.TenantEntity; | |||||
| import org.springframework.stereotype.Service; | import org.springframework.stereotype.Service; | ||||
| import com.iformall.domain.dto.OrderComposeSaveDto; | import com.iformall.domain.dto.OrderComposeSaveDto; | ||||
| @@ -25,9 +27,9 @@ public class MulityNumberOneOrderBatchOrderAdapterService extends BaseBatchOrder | |||||
| } | } | ||||
| @Override | @Override | ||||
| public WxComposeOrder createDBMainOrder(WxCUserBasicInfo user, List<OrderComposeSaveDto> orderSave, | |||||
| public WxComposeOrder createDBMainOrder(TenantEntity tenantEntity,WxCUserBasicInfo user, List<OrderComposeSaveDto> orderSave, | |||||
| EnumPayWay payWay) { | EnumPayWay payWay) { | ||||
| return super.createDBMainOrder(user, orderSave, payWay, EnumComposeOrder.MULITY_NUMBER_ORDER_BATCH); | |||||
| return super.createDBMainOrder(tenantEntity,user, orderSave, payWay, EnumComposeOrder.MULITY_NUMBER_ORDER_BATCH); | |||||
| } | } | ||||
| @Override | @Override | ||||
| @@ -3,6 +3,8 @@ package com.iformall.service.order.impl.batch; | |||||
| import java.util.List; | import java.util.List; | ||||
| import com.iformall.domain.po.*; | import com.iformall.domain.po.*; | ||||
| import com.iformall.domain.po.base.TenantEntity; | |||||
| import org.springframework.stereotype.Service; | import org.springframework.stereotype.Service; | ||||
| import com.iformall.domain.dto.OrderComposeSaveDto; | import com.iformall.domain.dto.OrderComposeSaveDto; | ||||
| @@ -24,9 +26,9 @@ public class OneNumberOneOrderBatchOrderAdapterService extends BaseBatchOrderAda | |||||
| } | } | ||||
| @Override | @Override | ||||
| public WxComposeOrder createDBMainOrder(WxCUserBasicInfo user, List<OrderComposeSaveDto> orderSave, | |||||
| public WxComposeOrder createDBMainOrder(TenantEntity tenantEntity,WxCUserBasicInfo user, List<OrderComposeSaveDto> orderSave, | |||||
| EnumPayWay payWay) { | EnumPayWay payWay) { | ||||
| return super.createDBMainOrder(user, orderSave, payWay, EnumComposeOrder.ONE_NUMBER_ORDER_BATCH); | |||||
| return super.createDBMainOrder(tenantEntity,user, orderSave, payWay, EnumComposeOrder.ONE_NUMBER_ORDER_BATCH); | |||||
| } | } | ||||
| @Override | @Override | ||||