修改bug

This commit is contained in:
齐天大圣 2024-01-04 14:00:45 +08:00
parent d1566ef1ce
commit 2cb89c7776

View File

@ -395,6 +395,7 @@ public class ActiveExchangeServiceImpl implements ActiveExchangeService {
PaymentActiveVO paymentActiveVO = new PaymentActiveVO(); PaymentActiveVO paymentActiveVO = new PaymentActiveVO();
Integer storeId = paymentActiveDTO.getStoreId(); Integer storeId = paymentActiveDTO.getStoreId();
double amount = 0.0; double amount = 0.0;
double fullAmount = 0.0;
//折扣 //折扣
List<ActiveDiscountPayVO> activeDiscountVOList = oilOrderMapper.selectActiveDiscount(storeId,paymentActiveDTO.getAmount()); List<ActiveDiscountPayVO> activeDiscountVOList = oilOrderMapper.selectActiveDiscount(storeId,paymentActiveDTO.getAmount());
if (CollectionUtils.isNotEmpty(activeDiscountVOList)){ if (CollectionUtils.isNotEmpty(activeDiscountVOList)){
@ -402,10 +403,10 @@ public class ActiveExchangeServiceImpl implements ActiveExchangeService {
if (activeDiscountPayVO.getOilId().contains(paymentActiveDTO.getOilId().toString()) && if (activeDiscountPayVO.getOilId().contains(paymentActiveDTO.getOilId().toString()) &&
activeDiscountPayVO.getAdaptUser().contains(paymentActiveDTO.getMtUserLevel().toString())){ activeDiscountPayVO.getAdaptUser().contains(paymentActiveDTO.getMtUserLevel().toString())){
if (activeDiscountPayVO.getDiscount() * activeDiscountPayVO.getAmount() > amount){ if (activeDiscountPayVO.getDiscount() * activeDiscountPayVO.getAmount() > amount){
amount = paymentActiveDTO.getAmount() - (activeDiscountPayVO.getDiscount() * activeDiscountPayVO.getAmount()); amount = paymentActiveDTO.getAmount() - ((10-activeDiscountPayVO.getDiscount()) * activeDiscountPayVO.getAmount() * 0.1);
paymentActiveVO.setActiveId(activeDiscountPayVO.getActiveId()); paymentActiveVO.setActiveId(activeDiscountPayVO.getActiveId());
paymentActiveVO.setAmount(amount); paymentActiveVO.setAmount(amount);
paymentActiveVO.setFavorableAmount(activeDiscountPayVO.getAmount()); paymentActiveVO.setFavorableAmount((10-activeDiscountPayVO.getDiscount()) * activeDiscountPayVO.getAmount() * 0.1);
} }
} }
} }
@ -416,11 +417,15 @@ public class ActiveExchangeServiceImpl implements ActiveExchangeService {
for (ActiveDiscountPayVO activeDiscountPayVO : activeFuletVOList) { for (ActiveDiscountPayVO activeDiscountPayVO : activeFuletVOList) {
if (activeDiscountPayVO.getOilId().contains(paymentActiveDTO.getOilId().toString()) && if (activeDiscountPayVO.getOilId().contains(paymentActiveDTO.getOilId().toString()) &&
activeDiscountPayVO.getAdaptUser().contains(paymentActiveDTO.getMtUserLevel().toString())){ activeDiscountPayVO.getAdaptUser().contains(paymentActiveDTO.getMtUserLevel().toString())){
if (activeDiscountPayVO.getAmount() > amount){ //如果满足条件
amount = paymentActiveDTO.getAmount() - activeDiscountPayVO.getAmount(); if (paymentActiveDTO.getAmount() >= activeDiscountPayVO.getAmount()){
fullAmount = paymentActiveDTO.getAmount() - activeDiscountPayVO.getDiscount();
if (amount > fullAmount){
amount = paymentActiveDTO.getAmount() - fullAmount;
paymentActiveVO.setActiveId(activeDiscountPayVO.getActiveId()); paymentActiveVO.setActiveId(activeDiscountPayVO.getActiveId());
paymentActiveVO.setAmount(amount); paymentActiveVO.setAmount(amount);
paymentActiveVO.setFavorableAmount(activeDiscountPayVO.getAmount()); paymentActiveVO.setFavorableAmount(paymentActiveDTO.getAmount() - activeDiscountPayVO.getDiscount());
}
} }
} }
} }