|
@@ -921,7 +921,7 @@ public class CartClubServiceImpl implements CartClubService {
|
|
|
* @param source 来源 : 1 网站 ; 2 小程序
|
|
|
*/
|
|
|
@Override
|
|
|
- public ResponseJson<Map<String, Object>> settlementShoppingCart(Integer userId, Integer townId, String skuIds, Integer source) {
|
|
|
+ public ResponseJson<Map<String, Object>> settlementShoppingCart(Integer userId, Integer cityId, String skuIds, Integer source) {
|
|
|
// 用户组织Id
|
|
|
Integer organizeId = baseMapper.getOrganizeId(userId);
|
|
|
log.info("¥¥¥¥¥¥¥¥¥¥ > 商品结算");
|
|
@@ -1035,14 +1035,7 @@ public class CartClubServiceImpl implements CartClubService {
|
|
|
}
|
|
|
List<Integer> collect = productList.stream().map(CartItemVo::getSkuId).collect(Collectors.toList());
|
|
|
List<String> skuIdsList = collect.stream().map(String::valueOf).collect(Collectors.toList());
|
|
|
- // 设置商品运费
|
|
|
- if (null != townId) {
|
|
|
- Map<String, Object> postageMap = productService.computePostage(userId, townId, skuIdsList);
|
|
|
- shop.setPostage((Double) postageMap.get("postage"));
|
|
|
- shop.setPostageFlag((Integer) postageMap.get("postageFlag"));
|
|
|
- shop.setUserBeans((Integer) postageMap.get("userBeans"));
|
|
|
- shop.setDesignatedFlag((Integer) postageMap.get("designatedFlag"));
|
|
|
- }
|
|
|
+
|
|
|
// 冷链费
|
|
|
Double coldChain = 0d;
|
|
|
// 迭代器设置商品信息
|
|
@@ -1152,6 +1145,15 @@ public class CartClubServiceImpl implements CartClubService {
|
|
|
shopPromotionFee.set(MathUtil.add(shopPromotionFee, MathUtil.mul(cartItemVo.getNumber(), cartItemVo.getPrice())).doubleValue());
|
|
|
}
|
|
|
}
|
|
|
+ // 设置商品运费
|
|
|
+ if (null != cityId) {
|
|
|
+ Map<String, Object> postageMap = productService.computePostage(userId, cityId, cartItemVo.getNumber(), MathUtil.mul(cartItemVo.getNumber(), cartItemVo.getPrice()).doubleValue(), skuIdsList);
|
|
|
+ shop.setPostage((Double) postageMap.get("postage"));
|
|
|
+ shop.setPostageFlag((Integer) postageMap.get("postageFlag"));
|
|
|
+ shop.setUserBeans((Integer) postageMap.get("userBeans"));
|
|
|
+ shop.setFreePostTage((Integer) postageMap.get("freePostTage"));
|
|
|
+ shop.setFreePostTagePayment((Integer) postageMap.get("freePostTagePayment"));
|
|
|
+ }
|
|
|
// 该供应商下商品种类 +1
|
|
|
shopKindCount.incrementAndGet();
|
|
|
// 总数量 + 当前商品购买数量
|
|
@@ -1374,7 +1376,7 @@ public class CartClubServiceImpl implements CartClubService {
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
- public ResponseJson<Map<String, Object>> MultipleBuyNow(Integer userId, Integer townId, String productInfo, Integer source) {
|
|
|
+ public ResponseJson<Map<String, Object>> MultipleBuyNow(Integer userId, Integer cityId, String productInfo, Integer source) {
|
|
|
log.info("¥¥¥¥¥¥¥¥¥¥ > 组合商品立即购买");
|
|
|
// 商品种类
|
|
|
AtomicInteger kindCount = new AtomicInteger(0);
|
|
@@ -1490,18 +1492,12 @@ public class CartClubServiceImpl implements CartClubService {
|
|
|
// 设置商品运费
|
|
|
List<Integer> collect = productList.stream().map(CartItemVo::getSkuId).collect(Collectors.toList());
|
|
|
List<String> skuIdsList = collect.stream().map(String::valueOf).collect(Collectors.toList());
|
|
|
- if (null != townId) {
|
|
|
- Map<String, Object> postageMap = productService.computePostage(userId, townId, skuIdsList);
|
|
|
- shop.setPostage((Double) postageMap.get("postage"));
|
|
|
- shop.setPostageFlag((Integer) postageMap.get("postageFlag"));
|
|
|
- shop.setUserBeans((Integer) postageMap.get("userBeans"));
|
|
|
- shop.setDesignatedFlag((Integer) postageMap.get("designatedFlag"));
|
|
|
- }
|
|
|
+
|
|
|
Double coldChain = 0d;
|
|
|
// 迭代器设置商品信息
|
|
|
for (CartItemVo cartItemVo : productList) {
|
|
|
// 设置商品运费
|
|
|
- if (null != townId) {
|
|
|
+ if (null != cityId) {
|
|
|
if (7881 == cartItemVo.getProductId()) {
|
|
|
if (cartItemVo.getNumber() >= 100) {
|
|
|
coldChain = 0d;
|
|
@@ -1599,6 +1595,14 @@ public class CartClubServiceImpl implements CartClubService {
|
|
|
// 超级会员购买svip商品不享受店铺促销优惠
|
|
|
shopPromotionFee.set(MathUtil.add(shopPromotionFee, MathUtil.mul(cartItemVo.getNumber(), cartItemVo.getPrice())).doubleValue());
|
|
|
}
|
|
|
+ if (null != cityId) {
|
|
|
+ Map<String, Object> postageMap = productService.computePostage(userId, cityId, cartItemVo.getNumber(), MathUtil.mul(cartItemVo.getNumber(), cartItemVo.getPrice()).doubleValue(), skuIdsList);
|
|
|
+ shop.setPostage((Double) postageMap.get("postage"));
|
|
|
+ shop.setPostageFlag((Integer) postageMap.get("postageFlag"));
|
|
|
+ shop.setUserBeans((Integer) postageMap.get("userBeans"));
|
|
|
+ shop.setFreePostTage((Integer) postageMap.get("freePostTage"));
|
|
|
+ shop.setFreePostTagePayment((Integer) postageMap.get("freePostTagePayment"));
|
|
|
+ }
|
|
|
// 该供应商下商品种类 +1
|
|
|
shopKindCount.incrementAndGet();
|
|
|
// 总数量 + 当前商品购买数量
|
|
@@ -1978,14 +1982,15 @@ public class CartClubServiceImpl implements CartClubService {
|
|
|
}
|
|
|
// 计算运费
|
|
|
Double coldChain = 0d;
|
|
|
- if (null != cartDto.getTownId()) {
|
|
|
+ if (null != cartDto.getCityId()) {
|
|
|
List<String> skuIds = new ArrayList<>();
|
|
|
skuIds.add(cartDto.getSkuId().toString());
|
|
|
- Map<String, Object> postageMap = productService.computePostage(cartDto.getUserId(), cartDto.getTownId(), skuIds);
|
|
|
+ Map<String, Object> postageMap = productService.computePostage(cartDto.getUserId(), cartDto.getCityId(), cartItemVo.getNumber(), MathUtil.mul(cartItemVo.getNumber(), cartItemVo.getPrice()).doubleValue(), skuIds);
|
|
|
shop.setPostage((Double) postageMap.get("postage"));
|
|
|
shop.setPostageFlag((Integer) postageMap.get("postageFlag"));
|
|
|
shop.setUserBeans((Integer) postageMap.get("userBeans"));
|
|
|
- shop.setDesignatedFlag((Integer) postageMap.get("designatedFlag"));
|
|
|
+ shop.setFreePostTage((Integer) postageMap.get("freePostTage"));
|
|
|
+ shop.setFreePostTagePayment((Integer) postageMap.get("freePostTagePayment"));
|
|
|
if (7881 == cartItemVo.getProductId()) {
|
|
|
if (cartItemVo.getNumber() >= 100) {
|
|
|
coldChain = 0d;
|
|
@@ -2190,7 +2195,7 @@ public class CartClubServiceImpl implements CartClubService {
|
|
|
skuIdList.add(skuIds);
|
|
|
}
|
|
|
// 计算运费
|
|
|
- Map<String, Object> resultMap = productService.computePostage(userId, townId, skuIdList);
|
|
|
+ Map<String, Object> resultMap = productService.computePostage(userId, townId, 0, 0d, skuIdList);
|
|
|
return ResponseJson.success(resultMap);
|
|
|
}
|
|
|
|