Просмотр исходного кода

//OfflineActivity

release_toaliyun_real
xiaohu 1 год назад
Родитель
Сommit
7b9f2d197f
2 измененных файлов: 14 добавлений и 9 удалений
  1. +9
    -6
      mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java
  2. +5
    -3
      mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantSettlementServiceImpl.java

+ 9
- 6
mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java Просмотреть файл

@@ -260,11 +260,12 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity
BigDecimal cashBackPrice = wxOfflineActivityGrantAward.getOrderMoneySum()
.multiply(awardsItem.getCashBackRatio().divide(new BigDecimal(100)));
if(EnumOfflineActivityAwardsRule.DEF.getCode().equals(activityItem.getAwardsItemRule())){
awardsItem.setPrice(cashBackPrice.setScale(2, BigDecimal.ROUND_HALF_UP));
awardsItem.setPrice(cashBackPrice.setScale(2, RoundingMode.HALF_UP));
} else if (EnumOfflineActivityAwardsRule.YUAN.getCode().equals(activityItem.getAwardsItemRule())) {
awardsItem.setPrice(cashBackPrice.setScale(0, BigDecimal.ROUND_HALF_UP));
awardsItem.setPrice(cashBackPrice.setScale(0, RoundingMode.HALF_UP));
}else if (EnumOfflineActivityAwardsRule.TEN.getCode().equals(activityItem.getAwardsItemRule())){
BigDecimal cashBackPriceTen = cashBackPrice.divide(new BigDecimal(10)).setScale(0, BigDecimal.ROUND_HALF_UP);
BigDecimal cashBackPriceTen = cashBackPrice.divide(new BigDecimal(10))
.setScale(0, RoundingMode.HALF_UP);
awardsItem.setPrice(cashBackPriceTen.multiply(new BigDecimal(10)));
}
}
@@ -281,7 +282,7 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity
for(WxOfflineActivityAwardsItem awardsItem : awardsItemList){
awardsItem.setMallSharePrice(awardsItem.getPrice()
.multiply(awardsItem.getMallShareRate().divide(new BigDecimal(100)))
.setScale(0, RoundingMode.HALF_UP));
.setScale(2, RoundingMode.HALF_UP));
awardsItem.setMerchantSharePrice(awardsItem.getPrice().subtract(awardsItem.getMallSharePrice()));
}
}
@@ -492,7 +493,9 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity
grantGrantItem.setAwardMaxAmount(awardsItem.getMaxAmount());
grantGrantItem.setAwardsItemRule(activityItem.getAwardsItemRule());
grantGrantItem.setCashBackRatio(awardsItem.getCashBackRatio());
grantGrantItem.setAwardPrice(awardsItem.getPrice().multiply(new BigDecimal(grantGrantItem.getAwardCount())).setScale(2, RoundingMode.HALF_UP));
grantGrantItem.setAwardPrice(awardsItem.getPrice()
.multiply(new BigDecimal(grantGrantItem.getAwardCount()))
.setScale(2, RoundingMode.HALF_UP));
grantGrantItem.setMoneyRule(awardsItem.getMoneyRule());
grantGrantItem.setMallShareRate(awardsItem.getMallShareRate());
grantGrantItem.setMerchantShareRate(awardsItem.getMerchantShareRate());
@@ -581,7 +584,7 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity
for (WxOfflineActivityGrantItem grantItem : grantActivityItemList) {
grantItem.setMallSharePrice(grantItem.getAwardPrice()
.multiply(grantItem.getMallShareRate().divide(new BigDecimal(100)))
.setScale(0, RoundingMode.HALF_UP));
.setScale(2, RoundingMode.HALF_UP));
grantItem.setMerchantSharePrice(grantItem.getAwardPrice().subtract(grantItem.getMallSharePrice()));
}
activityItem.setIsMeet(true);


+ 5
- 3
mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantSettlementServiceImpl.java Просмотреть файл

@@ -103,11 +103,13 @@ public class WxOfflineActivityGrantSettlementServiceImpl implements WxOfflineAct
BigDecimal lastGrantPrice = wxOfflineActivityGrantItem.getAwardPrice();
for (int i = 0; i < itemSize; i++) {
WxOfflineActivityGrantSettlement settlement = itemSettlementList.get(i);
BigDecimal realGrantPrice = wxOfflineActivityGrantItem.getAwardPrice().multiply(settlement.getOrderRatio().divide(new BigDecimal(100))).setScale(0, RoundingMode.HALF_UP);
BigDecimal realGrantPrice = wxOfflineActivityGrantItem.getAwardPrice()
.multiply(settlement.getOrderRatio().divide(new BigDecimal(100)))
.setScale(2, RoundingMode.HALF_UP);
settlement.setRealGrantPrice(realGrantPrice);
settlement.setRealMallSharePrice(settlement.getRealGrantPrice()
.multiply(settlement.getMallShareRate().divide(new BigDecimal(100)))
.setScale(0, RoundingMode.HALF_UP));
.setScale(2, RoundingMode.HALF_UP));
settlement.setRealMerchantSharePrice(settlement.getRealGrantPrice().subtract(settlement.getRealMallSharePrice()));

lastGrantPrice = lastGrantPrice.subtract(realGrantPrice);
@@ -116,7 +118,7 @@ public class WxOfflineActivityGrantSettlementServiceImpl implements WxOfflineAct
lastSettlement.setRealGrantPrice(lastGrantPrice);
lastSettlement.setRealMallSharePrice(lastSettlement.getRealGrantPrice()
.multiply(lastSettlement.getMallShareRate().divide(new BigDecimal(100)))
.setScale(0, RoundingMode.HALF_UP));
.setScale(2, RoundingMode.HALF_UP));
lastSettlement.setRealMerchantSharePrice(lastSettlement.getRealGrantPrice().subtract(lastSettlement.getRealMallSharePrice()));

settlementList.addAll(itemSettlementList);


Загрузка…
Отмена
Сохранить