diff --git a/src/main/java/com/platform/modules/foreign/controller/LiveForeignController.java b/src/main/java/com/platform/modules/foreign/controller/LiveForeignController.java index c055202..74839ae 100644 --- a/src/main/java/com/platform/modules/foreign/controller/LiveForeignController.java +++ b/src/main/java/com/platform/modules/foreign/controller/LiveForeignController.java @@ -281,8 +281,21 @@ public class LiveForeignController { } + /** + * 根据APP搜索条件,查找满足要求的对象 + * @param appSearchDto 查询条件封装类 + * @return 200 + */ @GetMapping("/appSearch") public R appSearch(@RequestBody AppSearchDto appSearchDto) { return R.ok().put("appSearch",liveSceneService.appSearch(appSearchDto)); } + + /** + * APP查询热点榜 + */ + @GetMapping("/getHotList") + public R getHotList() { + return R.ok().put("hotSpot",liveSceneService.getHotList()); + } } diff --git a/src/main/java/com/platform/modules/foreign/dto/AppSearchDto.java b/src/main/java/com/platform/modules/foreign/dto/AppSearchDto.java index c1d213a..9068f64 100644 --- a/src/main/java/com/platform/modules/foreign/dto/AppSearchDto.java +++ b/src/main/java/com/platform/modules/foreign/dto/AppSearchDto.java @@ -1,16 +1,27 @@ package com.platform.modules.foreign.dto; import lombok.Data; +import org.apache.commons.lang3.StringUtils; +import java.util.Arrays; +import java.util.Collections; import java.util.Date; +import java.util.List; + @Data public class AppSearchDto { - private String title; private String liveDesc; private Date startTime; private Date endTime; private String channelName; + private List channelNameList; private Integer page; private Integer size; + public List getChannelNameList() { + if(StringUtils.isBlank(channelName)) { + return Collections.emptyList(); + } + return Arrays.asList(channelName.split(",")); + } } diff --git a/src/main/java/com/platform/modules/live/dao/LiveSceneDao.java b/src/main/java/com/platform/modules/live/dao/LiveSceneDao.java index 80f4a9b..2776c10 100644 --- a/src/main/java/com/platform/modules/live/dao/LiveSceneDao.java +++ b/src/main/java/com/platform/modules/live/dao/LiveSceneDao.java @@ -61,4 +61,7 @@ public interface LiveSceneDao extends BaseMapper { List appSearch(@Param("appSearchDto") AppSearchDto appSearchDto, Page page); + + @Select("select ls.id,ls.title,ls.title_image,ls.live_state from live_scene ls left join live_scene_count lsc on ls.id = lsc.scene_id where ls.scene_state = 2 and hot_spot = 1 order by lsc.views_show desc;") + List getHotList(); } diff --git a/src/main/java/com/platform/modules/live/service/LiveSceneService.java b/src/main/java/com/platform/modules/live/service/LiveSceneService.java index ef164cf..6f4850a 100644 --- a/src/main/java/com/platform/modules/live/service/LiveSceneService.java +++ b/src/main/java/com/platform/modules/live/service/LiveSceneService.java @@ -179,4 +179,6 @@ public interface LiveSceneService extends IService { List getAppAllScene(Integer page,Integer size); List appSearch(AppSearchDto appSearchDto); + + List getHotList(); } diff --git a/src/main/java/com/platform/modules/live/service/impl/LiveSceneServiceImpl.java b/src/main/java/com/platform/modules/live/service/impl/LiveSceneServiceImpl.java index 135d098..ebd7be6 100644 --- a/src/main/java/com/platform/modules/live/service/impl/LiveSceneServiceImpl.java +++ b/src/main/java/com/platform/modules/live/service/impl/LiveSceneServiceImpl.java @@ -2921,7 +2921,20 @@ public class LiveSceneServiceImpl extends ServiceImpl appSearch(AppSearchDto appSearchDto) { Page page = new Page<>(appSearchDto.getPage(), appSearchDto.getSize()); + if(appSearchDto.getStartTime() != null && appSearchDto.getEndTime() == null) { + appSearchDto.setEndTime(new Date()); + } + appSearchDto.setChannelNameList(appSearchDto.getChannelNameList()); return liveSceneDao.appSearch(appSearchDto, page); } + @Override + public List getHotList() { + List hotList = liveSceneDao.getHotList(); + if(CollectionUtil.isNotEmpty(hotList)) { + return hotList; + } + return Collections.emptyList(); + } + } diff --git a/src/main/resources/mapper/live/LiveSceneDao.xml b/src/main/resources/mapper/live/LiveSceneDao.xml index 7a0aeae..eb02e55 100644 --- a/src/main/resources/mapper/live/LiveSceneDao.xml +++ b/src/main/resources/mapper/live/LiveSceneDao.xml @@ -150,17 +150,23 @@ FROM live_scene WHERE scene_state = 2 - - AND `title` LIKE CONCAT('%', #{appSearchDto.title}, '%') - + + + - AND live_desc LIKE CONCAT('%', #{appSearchDto.liveDesc}, '%') + AND ( + `title` LIKE CONCAT('%', #{appSearchDto.liveDesc}, '%') + OR live_desc LIKE CONCAT('%', #{appSearchDto.liveDesc}, '%') + ) AND live_start BETWEEN #{appSearchDto.startTime} AND #{appSearchDto.endTime} - AND channels_name = #{appSearchDto.channelName} + AND channels_name IN + + #{item} +