无关风月
2025-01-14 a448d1716d59fbce1c2b4b82a95d339d5b37d8ae
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java
@@ -15,9 +15,7 @@
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -70,37 +68,41 @@
         if (!list.isEmpty()){
            for (OrderActivityInfo activityInfo : list) {
               List<String> vips = Arrays.asList(activityInfo.getVipIds().split(","));
               vipIds.addAll(vips);
               if (!vipIds.isEmpty()){
                  StringBuilder message = new StringBuilder();
                  List<String> collect = vips.stream().sorted().collect(Collectors.toList());
                  for (String s : collect) {
                     switch (s){
                        case "1":
                           message.append("普通会员,");
                           break;
                        case "2":
                           message.append("黄金会员,");
                           break;
                        case "3":
                           message.append("钻石会员,");
                           break;
                        case "4":
                           message.append("准代理,");
                           break;
                        case "5":
                           message.append("代理,");
                           break;
                        case "6":
                           message.append("总代,");
                           break;
                        case "7":
                           message.append("合伙人,");
                           break;
                  Set<String> set1 = new HashSet<>(vipIds);
                  Set<String> set2 = new HashSet<>(vips);
                  set1.retainAll(set2);
                  if (!set1.isEmpty()) {
                     // 有交集 判断是哪些会员
                     for (String s : set1) {
                        switch (s){
                           case "1":
                              message.append("普通会员,");
                              break;
                           case "2":
                              message.append("黄金会员,");
                              break;
                           case "3":
                              message.append("钻石会员,");
                              break;
                           case "4":
                              message.append("准代理,");
                              break;
                           case "5":
                              message.append("代理,");
                              break;
                           case "6":
                              message.append("总代,");
                              break;
                           case "7":
                              message.append("合伙人,");
                              break;
                        }
                     }
                     StringBuilder res = message.deleteCharAt(message.length() - 1);
                     return R.fail(res+"在当前活动时间已有订单优惠");
                  }
                  StringBuilder res = message.deleteCharAt(message.length() - 1);
                  return R.fail(res+"在当前活动时间已有订单优惠");
               }
            }
         }
@@ -128,7 +130,7 @@
   public R<Void> updateActivityConfig(@RequestBody OrderActivityInfo orderActivityInfo){
      orderActivityInfo.setId(Long.valueOf(orderActivityInfo.getIdStr()));
      if (org.springframework.util.StringUtils.hasLength(orderActivityInfo.getVipIds())){
         List<String> vipIds = Arrays.asList(orderActivityInfo.getVipIds().split(","));
         List<String> vipIds = new ArrayList<>(Arrays.asList(orderActivityInfo.getVipIds().split(",")));
         List<OrderActivityInfo> list = orderActivityInfoService.lambdaQuery()
               .le(OrderActivityInfo::getStartTime, orderActivityInfo.getStartTime())
               .or()
@@ -136,37 +138,41 @@
         if (!list.isEmpty()){
            for (OrderActivityInfo activityInfo : list) {
               List<String> vips = Arrays.asList(activityInfo.getVipIds().split(","));
               vipIds.retainAll(vips);
               if (!vipIds.isEmpty()){
                  StringBuilder message = new StringBuilder();
                  List<String> collect = vips.stream().sorted().collect(Collectors.toList());
                  for (String s : collect) {
                     switch (s){
                        case "1":
                           message.append("普通会员,");
                           break;
                        case "2":
                           message.append("黄金会员,");
                           break;
                        case "3":
                           message.append("钻石会员,");
                           break;
                        case "4":
                           message.append("准代理,");
                           break;
                        case "5":
                           message.append("代理,");
                           break;
                        case "6":
                           message.append("总代,");
                           break;
                        case "7":
                           message.append("合伙人,");
                           break;
                  Set<String> set1 = new HashSet<>(vipIds);
                  Set<String> set2 = new HashSet<>(vips);
                  set1.retainAll(set2);
                  if (!set1.isEmpty()) {
                     // 有交集 判断是哪些会员
                     for (String s : set1) {
                        switch (s){
                           case "1":
                              message.append("普通会员,");
                              break;
                           case "2":
                              message.append("黄金会员,");
                              break;
                           case "3":
                              message.append("钻石会员,");
                              break;
                           case "4":
                              message.append("准代理,");
                              break;
                           case "5":
                              message.append("代理,");
                              break;
                           case "6":
                              message.append("总代,");
                              break;
                           case "7":
                              message.append("合伙人,");
                              break;
                        }
                     }
                     StringBuilder res = message.deleteCharAt(message.length() - 1);
                     return R.fail(res+"在当前活动时间已有订单优惠");
                  }
                  StringBuilder res = message.deleteCharAt(message.length() - 1);
                  return R.fail(res+"在当前活动时间已有订单优惠");
               }
            }
         }