From 470af7313f05d5be58fb643981c27c486ba88f2f Mon Sep 17 00:00:00 2001
From: jyy <935090232@qq.com>
Date: Tue, 09 Mar 2021 16:06:47 +0800
Subject: [PATCH] 优化邮费计算
---
zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java | 52 ++++++++++------------------------------------------
1 files changed, 10 insertions(+), 42 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java
index 3e9fd80..dce9db6 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java
@@ -98,52 +98,20 @@
private BusParameterSettingsDao busParameterSettingsDao;
@Override
- public BigDecimal calculationPostage(Integer addressId, BigDecimal payPrice) {
+ public BigDecimal calculationPostage(BigDecimal payPrice,Long companyId) {
BigDecimal postage = BigDecimal.ZERO;
- if (addressId != null) {
- ShopReceiveAddress shopReceiveAddress = shopReceiveAddressDao.selectById(addressId);
-
-
- BusParameterSettings sn= busParameterSettingsDao.selectCompanyParamByCode(AppConstance.IN_PROVINCE_PACKAGE_LIST,17L);
-
-
- BusParameterSettings pydq= busParameterSettingsDao.selectCompanyParamByCode(AppConstance.SECOND_PROVINCE_PACKAGE_LIST,17L);
-
-
-
- if (sn.getParamValue().indexOf(shopReceiveAddress.getAddrProvince()) > -1) {
- //省内邮费计算
- postage = getPostageByDataBictionary(AppConstance.IN_PROVINCE_PACKAGE_PRICE, payPrice);
- } else if (pydq.getParamValue().indexOf(shopReceiveAddress.getAddrProvince()) > -1) {
- //偏远地区
- postage = getPostageByDataBictionary(AppConstance.SECOND_OUT_PROVINCE_PACKAGE_PRICE, payPrice);
- } else {
- //其他地区
- postage = getPostageByDataBictionary(AppConstance.FIRST_OUT_PROVINCE_PACKAGE_PRICE, payPrice);
+ BusParameterSettings yf = busParameterSettingsDao.selectCompanyParamByCode(AppConstance.PACKAGE_PRICE, companyId);
+ BusParameterSettings myje = busParameterSettingsDao.selectCompanyParamByCode(AppConstance.FREE_PACKAGE_PRICE, companyId);
+ if(yf!=null&&myje!=null){
+ if (Double.parseDouble(myje.getParamValue()) > payPrice.doubleValue()) {
+ postage = new BigDecimal(yf.getParamValue());
}
-
}
+
return postage;
}
- //todo 根据数据字典计算运费 运费设置为0 后面再改配置在改计算规则
- private BigDecimal getPostageByDataBictionary(String code, BigDecimal payPrice) {
- /*CustomerDataDictionary dd = dataDictionaryDao.selectByTypeCode(code);
-
-
- BigDecimal postage = BigDecimal.ZERO;
- if (StringUtils.isNotBlank(dd.getValue())) {
- if (StringUtils.isNotBlank(dd.getExtValue())
- && payPrice.compareTo(new BigDecimal(dd.getExtValue())) >= 0) {
- //达到条件免邮
- postage = BigDecimal.ZERO;
- } else {
- postage = new BigDecimal(dd.getValue());
- }
- }*/
- return BigDecimal.ZERO;
- }
/**
@@ -189,7 +157,7 @@
}
//计算订单优惠信息
- DiscountExplain discountExplain = buildDiscountExplain(cartList, addShopOrderPOJO.getCouponReceiveId(), shopReceiveAddress.getAddrId());
+ DiscountExplain discountExplain = buildDiscountExplain(cartList, addShopOrderPOJO.getCouponReceiveId(), bizUser.getCompanyId());
ShopOrder shopOrder = new ShopOrder();
@@ -308,7 +276,7 @@
}
@Override
- public DiscountExplain buildDiscountExplain(List<ShopCartVo> cartList, Integer receiveId, Integer receiveAddrId) {
+ public DiscountExplain buildDiscountExplain(List<ShopCartVo> cartList, Integer receiveId, Long companyId) {
ShopCartBillVo shopCartBill = shoppingCartService.buildShopCartBillVo(cartList);
DiscountExplain discountExplain = new DiscountExplain();
discountExplain.setActivity(shopCartBill.getBillCouponTotal());
@@ -325,7 +293,7 @@
}
}
- discountExplain.setPostage(calculationPostage(receiveAddrId, discountExplain.getPayPrice()));
+ discountExplain.setPostage(calculationPostage(discountExplain.getPayPrice(),companyId));
//计算实际支付
discountExplain.setPayPrice(discountExplain.getPayPrice().add(discountExplain.getPostage()));
--
Gitblit v1.9.1