zhaoyun 1 miesiąc temu
rodzic
commit
41574f2bc7

+ 9 - 19
ydd_mer_java/crmeb-front/src/main/java/com/zbkj/front/service/impl/FrontOrderServiceImpl.java

@@ -2771,16 +2771,6 @@ public class FrontOrderServiceImpl implements FrontOrderService {
         orderInfoVo.setFreightFee(freightFee);
 
     }
-
-    private BigDecimal getOverLoadFee(String lat1,String long1,String lat2,String long2,RiderFeeConfig riderFeeConfig){
-        BigDecimal overloadFee=BigDecimal.ZERO;
-        Double distance = GeoUtils.haversineDistance( Double.parseDouble(lat1), Double.parseDouble(long1) , Double.parseDouble(lat2), Double.parseDouble(long2));
-        if(ObjectUtil.isNotNull(riderFeeConfig.getDistanceInKm())&&distance>riderFeeConfig.getDistanceInKm()){
-            int overload=distance.intValue()-riderFeeConfig.getDistanceInKm().intValue();
-             overloadFee=new BigDecimal(overload).multiply(new BigDecimal(riderFeeConfig.getFeePerKm()));
-        }
-        return overloadFee.setScale(2, RoundingMode.HALF_UP);
-    }
     /**
      * 校验预下单商品信息
      *
@@ -3156,14 +3146,14 @@ public class FrontOrderServiceImpl implements FrontOrderService {
 //                priceResponse.setPackingFee(new BigDecimal(merchantMarket.getPackingFee()));
 //            }
         });
-
-        BigDecimal firstDeduc =  orderInfoVo.getMerchantOrderVoList().stream()
-                .map(e -> {
-                    return ObjectUtil.isNull(e.getFirstDeduc())?BigDecimal.ZERO:e.getFirstDeduc();
-                })
-                .reduce(BigDecimal.ZERO, BigDecimal::add);
-        //计算打包费
-
+         BigDecimal firstDeduc=orderInfoVo.getFirstDeduc();
+         if(firstDeduc.compareTo(BigDecimal.ZERO)==0) {
+             firstDeduc = orderInfoVo.getMerchantOrderVoList().stream()
+                     .map(e -> {
+                         return ObjectUtil.isNull(e.getFirstDeduc()) ? BigDecimal.ZERO : e.getFirstDeduc();
+                     })
+                     .reduce(BigDecimal.ZERO, BigDecimal::add);
+         }
         //计算运费
         getFreightFee_V_1_8(orderInfoVo, userAddress, user.getIsPaidMember());
         priceResponse.setFreightFee(orderInfoVo.getFreightFee());
@@ -3188,7 +3178,7 @@ public class FrontOrderServiceImpl implements FrontOrderService {
             priceResponse.setPlatCouponUserList(computedPriceGetPlatOrderList(orderInfoVo, user.getIsPaidMember()));
         }
         // 积分部分
-        BigDecimal payPrice = orderInfoVo.getProTotalFee().subtract(orderInfoVo.getSvipDiscountPrice()).subtract(priceResponse.getCouponFee());
+        BigDecimal payPrice = orderInfoVo.getProTotalFee().subtract(orderInfoVo.getSvipDiscountPrice()).subtract(priceResponse.getCouponFee()).subtract(firstDeduc);
         priceResponse.setIsUseIntegral(request.getIsUseIntegral());
         priceResponse.setProTotalFee(orderInfoVo.getProTotalFee());