| @@ -301,26 +301,25 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity | |||
| grantAwardsItem = awardsItem; | |||
| } | |||
| } | |||
| if(grantAwardsItem == null){ | |||
| continue; | |||
| if(grantAwardsItem != null){ | |||
| //计算返现金额 | |||
| BigDecimal cashBackPrice = wxOfflineActivityGrantAward.getOrderMoneySum() | |||
| .multiply(grantAwardsItem.getCashBackRatio().divide(new BigDecimal(100))); | |||
| cashBackPriceTotal = cashBackPriceTotal.add(cashBackPrice); | |||
| } | |||
| //计算返现金额 | |||
| BigDecimal cashBackPrice = wxOfflineActivityGrantAward.getOrderMoneySum() | |||
| .multiply(grantAwardsItem.getCashBackRatio().divide(new BigDecimal(100))); | |||
| cashBackPriceTotal = cashBackPriceTotal.add(cashBackPrice); | |||
| } | |||
| if(activityItem.getActivityAwardsItemSecondList() != null && !activityItem.getActivityAwardsItemSecondList().isEmpty()){ | |||
| List<Long> merchantIds = wxOfflineActivityGrantAward.getRecordList().stream().map(WxOfflineActivityRecord::getMerchantId).distinct().collect(toList()); | |||
| Map<Integer, WxOfflineActivityAwardsItem> collect = activityItem.getActivityAwardsItemSecondList().stream().collect(toMap(WxOfflineActivityAwardsItem::getMerchantCount, Function.identity())); | |||
| WxOfflineActivityAwardsItem grantAwardsSecondItem = collect.get(merchantIds.size()); | |||
| if(grantAwardsSecondItem == null){ | |||
| continue; | |||
| if(grantAwardsSecondItem != null){ | |||
| //计算返现金额 | |||
| BigDecimal cashBackPrice = wxOfflineActivityGrantAward.getOrderMoneySum() | |||
| .multiply(grantAwardsSecondItem.getCashBackRatio().divide(new BigDecimal(100))); | |||
| cashBackPriceTotal = cashBackPriceTotal.add(cashBackPrice); | |||
| } | |||
| //计算返现金额 | |||
| BigDecimal cashBackPrice = wxOfflineActivityGrantAward.getOrderMoneySum() | |||
| .multiply(grantAwardsSecondItem.getCashBackRatio().divide(new BigDecimal(100))); | |||
| cashBackPriceTotal = cashBackPriceTotal.add(cashBackPrice); | |||
| } | |||
| if(cashBackPriceTotal.compareTo(activityItem.getMaxAmount()) >= 0){ | |||
| @@ -605,22 +604,21 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity | |||
| grantAwardsItem = awardsItem; | |||
| } | |||
| } | |||
| if(grantAwardsItem == null){ | |||
| continue; | |||
| } | |||
| if(grantAwardsItem != null){ | |||
| WxOfflineActivityGrantItem grantGrantItem = new WxOfflineActivityGrantItem(); | |||
| grantGrantItem.setRecordId(record.getId()); | |||
| //计算返现金额 | |||
| BigDecimal cashBackPrice = record.getOrderMoney() | |||
| .multiply(grantAwardsItem.getCashBackRatio().divide(new BigDecimal(100))); | |||
| WxOfflineActivityGrantItem grantGrantItem = new WxOfflineActivityGrantItem(); | |||
| grantGrantItem.setRecordId(record.getId()); | |||
| //计算返现金额 | |||
| BigDecimal cashBackPrice = record.getOrderMoney() | |||
| .multiply(grantAwardsItem.getCashBackRatio().divide(new BigDecimal(100))); | |||
| grantAwardsItem.setPrice(cashBackPrice); | |||
| handlerGrantItem(grantGrantItem,activity,activityItem,grantAwardsItem); | |||
| grantAwardsItem.setPrice(cashBackPrice); | |||
| handlerGrantItem(grantGrantItem,activity,activityItem,grantAwardsItem); | |||
| grantItemList.add(grantGrantItem); | |||
| grantItemList.add(grantGrantItem); | |||
| cashBackPriceTotal = cashBackPriceTotal.add(cashBackPrice); | |||
| } | |||
| cashBackPriceTotal = cashBackPriceTotal.add(cashBackPrice); | |||
| } | |||
| }else{ | |||
| @@ -631,36 +629,36 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity | |||
| grantAwardsItem = awardsItem; | |||
| } | |||
| } | |||
| if(grantAwardsItem == null){ | |||
| continue; | |||
| if(grantAwardsItem != null){ | |||
| WxOfflineActivityGrantItem grantGrantItem = new WxOfflineActivityGrantItem(); | |||
| //计算返现金额 | |||
| BigDecimal cashBackPrice = wxOfflineActivityGrantAward.getOrderMoneySum() | |||
| .multiply(grantAwardsItem.getCashBackRatio().divide(new BigDecimal(100))); | |||
| grantAwardsItem.setPrice(cashBackPrice); | |||
| handlerGrantItem(grantGrantItem,activity,activityItem,grantAwardsItem); | |||
| grantItemList.add(grantGrantItem); | |||
| cashBackPriceTotal = cashBackPriceTotal.add(cashBackPrice); | |||
| } | |||
| WxOfflineActivityGrantItem grantGrantItem = new WxOfflineActivityGrantItem(); | |||
| //计算返现金额 | |||
| BigDecimal cashBackPrice = wxOfflineActivityGrantAward.getOrderMoneySum() | |||
| .multiply(grantAwardsItem.getCashBackRatio().divide(new BigDecimal(100))); | |||
| grantAwardsItem.setPrice(cashBackPrice); | |||
| handlerGrantItem(grantGrantItem,activity,activityItem,grantAwardsItem); | |||
| grantItemList.add(grantGrantItem); | |||
| cashBackPriceTotal = cashBackPriceTotal.add(cashBackPrice); | |||
| } | |||
| if(activityItem.getActivityAwardsItemSecondList() != null && !activityItem.getActivityAwardsItemSecondList().isEmpty()){ | |||
| List<Long> merchantIds = wxOfflineActivityGrantAward.getRecordList().stream().map(WxOfflineActivityRecord::getMerchantId).distinct().collect(toList()); | |||
| Map<Integer, WxOfflineActivityAwardsItem> collect = activityItem.getActivityAwardsItemSecondList().stream().collect(toMap(WxOfflineActivityAwardsItem::getMerchantCount, Function.identity())); | |||
| WxOfflineActivityAwardsItem grantAwardsSecondItem = collect.get(merchantIds.size()); | |||
| if(grantAwardsSecondItem == null){ | |||
| continue; | |||
| if(grantAwardsSecondItem != null){ | |||
| WxOfflineActivityGrantItem grantGrantItem = new WxOfflineActivityGrantItem(); | |||
| //计算返现金额 | |||
| BigDecimal cashBackPrice = wxOfflineActivityGrantAward.getOrderMoneySum() | |||
| .multiply(grantAwardsSecondItem.getCashBackRatio().divide(new BigDecimal(100))); | |||
| grantAwardsSecondItem.setPrice(cashBackPrice); | |||
| handlerGrantItem(grantGrantItem,activity,activityItem,grantAwardsSecondItem); | |||
| grantItemList.add(grantGrantItem); | |||
| cashBackPriceTotal = cashBackPriceTotal.add(cashBackPrice); | |||
| } | |||
| WxOfflineActivityGrantItem grantGrantItem = new WxOfflineActivityGrantItem(); | |||
| //计算返现金额 | |||
| BigDecimal cashBackPrice = wxOfflineActivityGrantAward.getOrderMoneySum() | |||
| .multiply(grantAwardsSecondItem.getCashBackRatio().divide(new BigDecimal(100))); | |||
| grantAwardsSecondItem.setPrice(cashBackPrice); | |||
| handlerGrantItem(grantGrantItem,activity,activityItem,grantAwardsSecondItem); | |||
| grantItemList.add(grantGrantItem); | |||
| cashBackPriceTotal = cashBackPriceTotal.add(cashBackPrice); | |||
| } | |||
| BigDecimal prop = BigDecimal.ONE; | |||