diff --git a/fuintBackend/fuint-application/src/main/java/com/fuint/business/marketingActivity/activeExchange/service/impl/ActiveExchangeServiceImpl.java b/fuintBackend/fuint-application/src/main/java/com/fuint/business/marketingActivity/activeExchange/service/impl/ActiveExchangeServiceImpl.java index 82e53104c..58f2f88fc 100644 --- a/fuintBackend/fuint-application/src/main/java/com/fuint/business/marketingActivity/activeExchange/service/impl/ActiveExchangeServiceImpl.java +++ b/fuintBackend/fuint-application/src/main/java/com/fuint/business/marketingActivity/activeExchange/service/impl/ActiveExchangeServiceImpl.java @@ -486,29 +486,101 @@ public class ActiveExchangeServiceImpl implements ActiveExchangeService { DayOfWeek dayOfWeek = LocalDate.now().getDayOfWeek(); String displayName = dayOfWeek.getDisplayName(TextStyle.FULL, Locale.getDefault()); + //获取今天是几号 + LocalDate now = LocalDate.now(); + String day = now.getDayOfMonth()+""; + + ArrayList activeDiscountVOList = new ArrayList<>(); //折扣有限制 - List activeDiscountVOList = oilOrderMapper.selectActiveDiscount(storeId, paymentActiveDTO.getAmount(), paymentActiveDTO.getOilId(), paymentActiveDTO.getMtUserLevel()); - for (ActiveDiscountPayVO activeDiscountPayVO : activeDiscountVOList) { + List activeDiscountVOListss = oilOrderMapper.selectActiveDiscount(storeId, paymentActiveDTO.getAmount(), paymentActiveDTO.getOilId(), paymentActiveDTO.getMtUserLevel()); + //会员日筛选 + for (ActiveDiscountPayVO activeDiscountPayVO : activeDiscountVOListss) { //周 if (activeDiscountPayVO.getMemberDayType().equals("1")) { String weekDay = activeDiscountPayVO.getWeekDay(); if (weekDay.contains(displayName)) { + activeDiscountVOList.add(activeDiscountPayVO); } else if (activeDiscountPayVO.getMemberDayType().equals("2")) { - + String[] split = activeDiscountPayVO.getMonthDay().split(","); + for (String s : split) { + if (day.equals(s)){ + activeDiscountVOList.add(activeDiscountPayVO); + } + } } else { - + activeDiscountVOList.add(activeDiscountPayVO); } - //月 + } } //折扣无限制 List activeDiscountVOLists = oilOrderMapper.selectActiveDiscounts(storeId, paymentActiveDTO.getAmount(), paymentActiveDTO.getOilId(), paymentActiveDTO.getMtUserLevel()); - activeDiscountVOList.addAll(activeDiscountVOLists); - //满减有限制 - List activeFuletVOList = oilOrderMapper.selectActiveFule(storeId, paymentActiveDTO.getAmount(), paymentActiveDTO.getOilId(), paymentActiveDTO.getMtUserLevel()); + //会员日筛选 + for (ActiveDiscountPayVO activeDiscountPayVO : activeDiscountVOLists) { + //周 + if (activeDiscountPayVO.getMemberDayType().equals("1")) { + String weekDay = activeDiscountPayVO.getWeekDay(); + if (weekDay.contains(displayName)) { + activeDiscountVOList.add(activeDiscountPayVO); + } else if (activeDiscountPayVO.getMemberDayType().equals("2")) { + String[] split = activeDiscountPayVO.getMonthDay().split(","); + for (String s : split) { + if (day.equals(s)){ + activeDiscountVOList.add(activeDiscountPayVO); + } + } + } else { + activeDiscountVOList.add(activeDiscountPayVO); + } + + } + } + //activeDiscountVOList.addAll(activeDiscountVOLists); + ArrayList activeFuletVOList = new ArrayList<>(); + //满减有限制 + List activeFuletVOListss = oilOrderMapper.selectActiveFule(storeId, paymentActiveDTO.getAmount(), paymentActiveDTO.getOilId(), paymentActiveDTO.getMtUserLevel()); + //会员日筛选 + for (ActiveDiscountPayVO activeDiscountPayVO : activeFuletVOListss) { + //周 + if (activeDiscountPayVO.getMemberDayType().equals("1")) { + String weekDay = activeDiscountPayVO.getWeekDay(); + if (weekDay.contains(displayName)) { + activeFuletVOList.add(activeDiscountPayVO); + } else if (activeDiscountPayVO.getMemberDayType().equals("2")) { + String[] split = activeDiscountPayVO.getMonthDay().split(","); + for (String s : split) { + if (day.equals(s)){ + activeFuletVOList.add(activeDiscountPayVO); + } + } + } else { + activeFuletVOList.add(activeDiscountPayVO); + } + + } + } //满减无限制 List activeFuletVOLists = oilOrderMapper.selectActiveFules(storeId, paymentActiveDTO.getAmount(), paymentActiveDTO.getOilId(), paymentActiveDTO.getMtUserLevel()); - activeFuletVOList.addAll(activeFuletVOLists); + //会员日筛选 + for (ActiveDiscountPayVO activeDiscountPayVO : activeFuletVOLists) { + //周 + if (activeDiscountPayVO.getMemberDayType().equals("1")) { + String weekDay = activeDiscountPayVO.getWeekDay(); + if (weekDay.contains(displayName)) { + activeFuletVOList.add(activeDiscountPayVO); + } else if (activeDiscountPayVO.getMemberDayType().equals("2")) { + String[] split = activeDiscountPayVO.getMonthDay().split(","); + for (String s : split) { + if (day.equals(s)){ + activeFuletVOList.add(activeDiscountPayVO); + } + } + } else { + activeFuletVOList.add(activeDiscountPayVO); + } + } + } + //activeFuletVOList.addAll(activeFuletVOLists); //优惠券 paymentActiveDTO.setUserId(userId); if (ObjectUtils.isNotEmpty(paymentActiveDTO.getUserId())) {