|
@@ -56,9 +56,7 @@ import cn.newfeifan.mall.module.trade.service.price.TradePriceService;
|
|
import cn.newfeifan.mall.module.trade.service.price.bo.TradePriceCalculateReqBO;
|
|
import cn.newfeifan.mall.module.trade.service.price.bo.TradePriceCalculateReqBO;
|
|
import cn.newfeifan.mall.module.trade.service.price.bo.TradePriceCalculateRespBO;
|
|
import cn.newfeifan.mall.module.trade.service.price.bo.TradePriceCalculateRespBO;
|
|
import cn.newfeifan.mall.module.trade.service.price.calculator.TradePriceCalculatorHelper;
|
|
import cn.newfeifan.mall.module.trade.service.price.calculator.TradePriceCalculatorHelper;
|
|
-import io.swagger.v3.oas.annotations.media.Schema;
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
-import org.ehcache.shadow.org.terracotta.offheapstore.HashingMap;
|
|
|
|
import org.jetbrains.annotations.NotNull;
|
|
import org.jetbrains.annotations.NotNull;
|
|
import org.springframework.beans.BeanUtils;
|
|
import org.springframework.beans.BeanUtils;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
@@ -375,7 +373,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
- payPoints = 4;//为了测试方便,临时写死
|
|
|
|
|
|
+ payPoints = 3;//为了测试方便,临时写死
|
|
|
|
|
|
//计算订单含积分的各项商品价格
|
|
//计算订单含积分的各项商品价格
|
|
TradePriceCalculateRespBO tradePriceCalculateRespBO = calculatePriceWithPoints(userId, createReqVO);
|
|
TradePriceCalculateRespBO tradePriceCalculateRespBO = calculatePriceWithPoints(userId, createReqVO);
|
|
@@ -393,7 +391,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
itemPayPointsMap.put(orderItem.getSkuId(),orderItem);
|
|
itemPayPointsMap.put(orderItem.getSkuId(),orderItem);
|
|
}
|
|
}
|
|
|
|
|
|
- Integer allShopPainRMB = 0;//所有店铺订单实际支付的金额
|
|
|
|
|
|
+ Integer allShopPayRMB = 0;//所有店铺订单实际支付的金额
|
|
|
|
|
|
List<Map<String,Object>> orderMapList = new ArrayList<Map<String,Object>>();
|
|
List<Map<String,Object>> orderMapList = new ArrayList<Map<String,Object>>();
|
|
|
|
|
|
@@ -435,7 +433,7 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
Long skuId = orderItem.getSkuId();
|
|
Long skuId = orderItem.getSkuId();
|
|
TradePriceCalculateRespBO.OrderItem orderItemTmp = itemPayPointsMap.get(skuId);
|
|
TradePriceCalculateRespBO.OrderItem orderItemTmp = itemPayPointsMap.get(skuId);
|
|
orderItem.setPayPoints(orderItemTmp.getPayPoints()); //本商品使用积分
|
|
orderItem.setPayPoints(orderItemTmp.getPayPoints()); //本商品使用积分
|
|
- Integer payRmb = orderItem.getPrice()-orderItemTmp.getPayPoints();//本商品实付人民币
|
|
|
|
|
|
+ Integer payRmb = orderItem.getPrice()*orderItem.getCount()-orderItemTmp.getPayPoints();//本商品实付人民币
|
|
orderItem.setPayRmb(payRmb);//本商品实付人民币
|
|
orderItem.setPayRmb(payRmb);//本商品实付人民币
|
|
orderItem.setPayPrice(payRmb);//本商品实付人民币
|
|
orderItem.setPayPrice(payRmb);//本商品实付人民币
|
|
|
|
|
|
@@ -443,7 +441,9 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
shopPayPrice += payRmb;//一间店铺订单总支付价格
|
|
shopPayPrice += payRmb;//一间店铺订单总支付价格
|
|
}
|
|
}
|
|
|
|
|
|
- allShopPainRMB+=shopPayPrice;
|
|
|
|
|
|
+ shopPayPrice+=order.getDeliveryPrice();//店铺支付总金额,加上运费
|
|
|
|
+
|
|
|
|
+ allShopPayRMB +=shopPayPrice;
|
|
|
|
|
|
Long merchantId = shopMerchantMap.get(shopId);//商户ID
|
|
Long merchantId = shopMerchantMap.get(shopId);//商户ID
|
|
|
|
|
|
@@ -473,8 +473,8 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
List<TradeOrderItemDO> firstOrderItems = (List<TradeOrderItemDO>)(orderMapList.get(0).get("orderItems"));
|
|
List<TradeOrderItemDO> firstOrderItems = (List<TradeOrderItemDO>)(orderMapList.get(0).get("orderItems"));
|
|
|
|
|
|
BeanUtils.copyProperties(firstOrder, virtualOrder);
|
|
BeanUtils.copyProperties(firstOrder, virtualOrder);
|
|
- virtualOrder.setPayPrice(allShopPainRMB);
|
|
|
|
- virtualOrder.setPayRmb(allShopPainRMB);
|
|
|
|
|
|
+ virtualOrder.setPayPrice(allShopPayRMB);
|
|
|
|
+ virtualOrder.setPayRmb(allShopPayRMB);
|
|
virtualOrder.setId(0l);//为了让payOrder中的tradeOrderId为0;
|
|
virtualOrder.setId(0l);//为了让payOrder中的tradeOrderId为0;
|
|
|
|
|
|
// 3. 生成预支付:生成支付订单记录
|
|
// 3. 生成预支付:生成支付订单记录
|
|
@@ -555,6 +555,9 @@ public class TradeOrderUpdateServiceImpl implements TradeOrderUpdateService {
|
|
// 创建支付单,用于后续的支付
|
|
// 创建支付单,用于后续的支付
|
|
PayOrderCreateReqDTO payOrderCreateReqDTO = TradeOrderConvert.INSTANCE.convert(
|
|
PayOrderCreateReqDTO payOrderCreateReqDTO = TradeOrderConvert.INSTANCE.convert(
|
|
order, orderItems, tradeOrderProperties);
|
|
order, orderItems, tradeOrderProperties);
|
|
|
|
+
|
|
|
|
+ payOrderCreateReqDTO.setPrice(order.getPayRmb());//同步订单价格
|
|
|
|
+
|
|
Long payOrderId = payOrderApi.createOrder(payOrderCreateReqDTO);
|
|
Long payOrderId = payOrderApi.createOrder(payOrderCreateReqDTO);
|
|
|
|
|
|
// update By Ben 因为订单与支付订单表的关系已经变成多对一了,所以把下面为订单表设置支付订单ID要移到外面做。
|
|
// update By Ben 因为订单与支付订单表的关系已经变成多对一了,所以把下面为订单表设置支付订单ID要移到外面做。
|