无关风月
2025-01-16 6ceafc5b1f3d24dfa75b6b726a44c8a88acbe678
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java
@@ -62,9 +62,10 @@
      if (org.springframework.util.StringUtils.hasLength(orderActivityInfo.getVipIds())){
         List<String> vipIds = new ArrayList<>(Arrays.asList(orderActivityInfo.getVipIds().split(",")));
         List<OrderActivityInfo> list = orderActivityInfoService.lambdaQuery()
               .le(OrderActivityInfo::getStartTime, orderActivityInfo.getStartTime())
               .between(OrderActivityInfo::getStartTime, orderActivityInfo.getStartTime(), orderActivityInfo.getEndTime())
               .or()
               .ge(OrderActivityInfo::getEndTime, orderActivityInfo.getEndTime()).list();
               .between(OrderActivityInfo::getEndTime, orderActivityInfo.getStartTime(), orderActivityInfo.getEndTime())
               .list();
         if (!list.isEmpty()){
            for (OrderActivityInfo activityInfo : list) {
               List<String> vips = Arrays.asList(activityInfo.getVipIds().split(","));
@@ -132,9 +133,12 @@
      if (org.springframework.util.StringUtils.hasLength(orderActivityInfo.getVipIds())){
         List<String> vipIds = new ArrayList<>(Arrays.asList(orderActivityInfo.getVipIds().split(",")));
         List<OrderActivityInfo> list = orderActivityInfoService.lambdaQuery()
               .le(OrderActivityInfo::getStartTime, orderActivityInfo.getStartTime())
               .between(OrderActivityInfo::getStartTime, orderActivityInfo.getStartTime(), orderActivityInfo.getEndTime())
               .or()
               .ge(OrderActivityInfo::getEndTime, orderActivityInfo.getEndTime()).list();
               .between(OrderActivityInfo::getEndTime, orderActivityInfo.getStartTime(), orderActivityInfo.getEndTime())
               .list();
         // 遍历集合 通过startTime和endTime 判断是否与当前活动时间重叠
         if (!list.isEmpty()){
            for (OrderActivityInfo activityInfo : list) {
               List<String> vips = Arrays.asList(activityInfo.getVipIds().split(","));
@@ -187,16 +191,16 @@
   @GetMapping("/list")
   @ApiOperation(value = "订单优惠活动-获取活动列表", tags = {"管理后台-活动管理"})
   public R<Page<OrderActivityInfo>> list(@ApiParam("页码") @RequestParam Integer pageNum,
                            @ApiParam("每一页数据大小") Integer pageSize,
                            OrderActivityInfo orderActivityInfo){
                            @ApiParam("每一页数据大小") Integer pageSize, String id, String activityName, Integer status, Integer isShelf){
      Page<OrderActivityInfo> page = orderActivityInfoService.page(Page.of(pageNum, pageSize), new LambdaQueryWrapper<OrderActivityInfo>()
            .like(orderActivityInfo.getId() != null, OrderActivityInfo::getId, orderActivityInfo.getId())
            .like(StringUtils.isNotEmpty(orderActivityInfo.getActivityName()), OrderActivityInfo::getActivityName, orderActivityInfo.getActivityName())
            .gt(orderActivityInfo.getStatus() != null && orderActivityInfo.getStatus() == 0, OrderActivityInfo::getStartTime, LocalDateTime.now())
            .ge(orderActivityInfo.getStatus() != null && orderActivityInfo.getStatus() == 1, OrderActivityInfo::getEndTime, LocalDateTime.now())
            .lt(orderActivityInfo.getStatus() != null && orderActivityInfo.getStatus() == 1, OrderActivityInfo::getStartTime, LocalDateTime.now())
            .eq(orderActivityInfo.getIsShelf() != null, OrderActivityInfo::getIsShelf, orderActivityInfo.getIsShelf()).orderByDesc(OrderActivityInfo::getCreateTime)
            .like(StringUtils.isNotEmpty(id), OrderActivityInfo::getId, id)
            .like(StringUtils.isNotEmpty(activityName), OrderActivityInfo::getActivityName, activityName)
            .gt(status != null && status == 0, OrderActivityInfo::getStartTime, LocalDateTime.now())
            .ge(status != null && status == 1, OrderActivityInfo::getEndTime, LocalDateTime.now())
            .lt(status != null && status == 1, OrderActivityInfo::getStartTime, LocalDateTime.now())
            .lt(status != null && status == 2, OrderActivityInfo::getEndTime, LocalDateTime.now())
            .eq(isShelf != null, OrderActivityInfo::getIsShelf, isShelf).orderByDesc(OrderActivityInfo::getCreateTime)
            .orderByDesc(OrderActivityInfo::getCreateTime))
            ;
      page.getRecords().forEach(item -> {