|  | @@ -200,6 +200,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
 | 
	
		
			
				|  |  |              orderItem.setGiftGrowth(cartPromotionItem.getGrowth());
 | 
	
		
			
				|  |  |              orderItem.setPromoterId(cartPromotionItem.getPromoterId());
 | 
	
		
			
				|  |  |              orderItem.setPrecisionAmount(BigDecimal.ZERO);
 | 
	
		
			
				|  |  | +            orderItem.setIntegrationAmount(new BigDecimal(0));
 | 
	
		
			
				|  |  |              orderItemList.add(orderItem);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          //判断购物车中商品是否都有库存
 | 
	
	
		
			
				|  | @@ -242,40 +243,43 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          BigDecimal balanceAmount = BigDecimal.ZERO;
 | 
	
		
			
				|  |  |          //判断是否使用积分
 | 
	
		
			
				|  |  | -        if (orderParam.isUseBalance()) {
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -            // 查询余额
 | 
	
		
			
				|  |  | -            HttpResponseResult<BigDecimal> balance = webFeignService.balance(orderParam.getUserId());
 | 
	
		
			
				|  |  | -            if(balance.getStatus()) {
 | 
	
		
			
				|  |  | -                balanceAmount = balance.getData();
 | 
	
		
			
				|  |  | -            } else {
 | 
	
		
			
				|  |  | -                LOG.error("余额查询失败:{}",balance.getMsg());
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -            //不使用积分
 | 
	
		
			
				|  |  | -            for (OmsOrderItem orderItem : orderItemList) {
 | 
	
		
			
				|  |  | -                orderItem.setIntegrationAmount(new BigDecimal(0));
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -        } else {
 | 
	
		
			
				|  |  | -            for (OmsOrderItem orderItem : orderItemList) {
 | 
	
		
			
				|  |  | -                orderItem.setIntegrationAmount(new BigDecimal(0));
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -            //使用积分
 | 
	
		
			
				|  |  | -            // BigDecimal totalAmount = calcTotalAmount(orderItemList);
 | 
	
		
			
				|  |  | -            // BigDecimal integrationAmount = getUseIntegrationAmount(orderParam.getUseIntegration(), totalAmount,
 | 
	
		
			
				|  |  | -            //                                                        currentMember, orderParam.getCouponId() != null);
 | 
	
		
			
				|  |  | -            // if (integrationAmount.compareTo(new BigDecimal(0)) == 0) {
 | 
	
		
			
				|  |  | -            //     Asserts.fail("积分不可用");
 | 
	
		
			
				|  |  | -            // } else {
 | 
	
		
			
				|  |  | -            //     //可用情况下分摊到可用商品中
 | 
	
		
			
				|  |  | -            //     for (OmsOrderItem orderItem : orderItemList) {
 | 
	
		
			
				|  |  | -            //         BigDecimal perAmount = orderItem.getProductPrice()
 | 
	
		
			
				|  |  | -            //                                         .divide(totalAmount, 3, RoundingMode.HALF_EVEN)
 | 
	
		
			
				|  |  | -            //                                         .multiply(integrationAmount);
 | 
	
		
			
				|  |  | -            //         orderItem.setIntegrationAmount(perAmount);
 | 
	
		
			
				|  |  | -            //     }
 | 
	
		
			
				|  |  | -            // }
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | +        // if (orderParam.isUseBalance()) {
 | 
	
		
			
				|  |  | +        //
 | 
	
		
			
				|  |  | +        //     // 查询余额
 | 
	
		
			
				|  |  | +        //     HttpResponseResult<BigDecimal> balance = webFeignService.balance(orderParam.getUserId());
 | 
	
		
			
				|  |  | +        //     if(balance.getStatus()) {
 | 
	
		
			
				|  |  | +        //         balanceAmount = balance.getData();
 | 
	
		
			
				|  |  | +        //     } else {
 | 
	
		
			
				|  |  | +        //         LOG.error("余额查询失败:{}",balance.getMsg());
 | 
	
		
			
				|  |  | +        //     }
 | 
	
		
			
				|  |  | +        //     if(balanceAmount.compareTo(orderParam.getOrderAmount()) >0) {
 | 
	
		
			
				|  |  | +        //         balanceAmount = orderParam.getOrderAmount();
 | 
	
		
			
				|  |  | +        //     }
 | 
	
		
			
				|  |  | +        //
 | 
	
		
			
				|  |  | +        //     //不使用积分
 | 
	
		
			
				|  |  | +        //     for (OmsOrderItem orderItem : orderItemList) {
 | 
	
		
			
				|  |  | +        //         orderItem.setIntegrationAmount(new BigDecimal(0));
 | 
	
		
			
				|  |  | +        //     }
 | 
	
		
			
				|  |  | +        // } else {
 | 
	
		
			
				|  |  | +        //     for (OmsOrderItem orderItem : orderItemList) {
 | 
	
		
			
				|  |  | +        //         orderItem.setIntegrationAmount(new BigDecimal(0));
 | 
	
		
			
				|  |  | +        //     }
 | 
	
		
			
				|  |  | +        //     //使用积分
 | 
	
		
			
				|  |  | +        //     // BigDecimal totalAmount = calcTotalAmount(orderItemList);
 | 
	
		
			
				|  |  | +        //     // BigDecimal integrationAmount = getUseIntegrationAmount(orderParam.getUseIntegration(), totalAmount,
 | 
	
		
			
				|  |  | +        //     //                                                        currentMember, orderParam.getCouponId() != null);
 | 
	
		
			
				|  |  | +        //     // if (integrationAmount.compareTo(new BigDecimal(0)) == 0) {
 | 
	
		
			
				|  |  | +        //     //     Asserts.fail("积分不可用");
 | 
	
		
			
				|  |  | +        //     // } else {
 | 
	
		
			
				|  |  | +        //     //     //可用情况下分摊到可用商品中
 | 
	
		
			
				|  |  | +        //     //     for (OmsOrderItem orderItem : orderItemList) {
 | 
	
		
			
				|  |  | +        //     //         BigDecimal perAmount = orderItem.getProductPrice()
 | 
	
		
			
				|  |  | +        //     //                                         .divide(totalAmount, 3, RoundingMode.HALF_EVEN)
 | 
	
		
			
				|  |  | +        //     //                                         .multiply(integrationAmount);
 | 
	
		
			
				|  |  | +        //     //         orderItem.setIntegrationAmount(perAmount);
 | 
	
		
			
				|  |  | +        //     //     }
 | 
	
		
			
				|  |  | +        //     // }
 | 
	
		
			
				|  |  | +        // }
 | 
	
		
			
				|  |  |          //计算order_item的实付金额
 | 
	
		
			
				|  |  |          handleRealAmount(orderItemList);
 | 
	
		
			
				|  |  |          //进行sku库存锁定
 | 
	
	
		
			
				|  | @@ -408,8 +412,11 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
 | 
	
		
			
				|  |  |              userOrderPayment.setStatus(TradeStatusEnum.succeeded.getCode());
 | 
	
		
			
				|  |  |              userOrderPaymentService.saveOrUpdate(userOrderPayment);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -        if (balanceAmount.compareTo(MapUtil.get(data, "balanceAmount",BigDecimal.class)) != 0 ) {
 | 
	
		
			
				|  |  | -            throw new BizException("余额有变动,订单生成失败");
 | 
	
		
			
				|  |  | +        // 记录余额支付金额
 | 
	
		
			
				|  |  | +        BigDecimal balanceAmount1 = MapUtil.get(data, "balanceAmount", BigDecimal.class);
 | 
	
		
			
				|  |  | +        if (BigDecimal.ZERO.compareTo(balanceAmount1) !=0 ) {
 | 
	
		
			
				|  |  | +            order.setIntegrationAmount(balanceAmount1);
 | 
	
		
			
				|  |  | +            orderMapper.updateByPrimaryKey(order);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          result.put("pay",data);
 | 
	
		
			
				|  |  |  
 |