mirror of
https://github.com/201206030/novel.git
synced 2025-04-27 07:30:50 +00:00
feat(home): 增加首页友情链接列表查询接口
This commit is contained in:
parent
56c596c5ee
commit
11dcf3f9a5
@ -3,6 +3,7 @@ package io.github.xxyopen.novel.controller.front;
|
||||
import io.github.xxyopen.novel.core.common.constant.ApiRouterConsts;
|
||||
import io.github.xxyopen.novel.core.common.resp.RestResp;
|
||||
import io.github.xxyopen.novel.dto.resp.HomeBookRespDto;
|
||||
import io.github.xxyopen.novel.dto.resp.HomeFriendLinkRespDto;
|
||||
import io.github.xxyopen.novel.service.HomeService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
@ -31,4 +32,13 @@ public class HomeController {
|
||||
public RestResp<List<HomeBookRespDto>> listHomeBooks(){
|
||||
return homeService.listHomeBooks();
|
||||
}
|
||||
|
||||
/**
|
||||
* 首页友情链接列表查询接口
|
||||
* */
|
||||
@GetMapping("friendLinks")
|
||||
public RestResp<List<HomeFriendLinkRespDto>> listHomeFriendLinks(){
|
||||
return homeService.listHomeFriendLinks();
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,29 @@
|
||||
package io.github.xxyopen.novel.dto.resp;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 首页友情链接 响应DTO
|
||||
*
|
||||
* @author xiongxiaoyang
|
||||
* @date 2022/5/14
|
||||
*/
|
||||
@Data
|
||||
public class HomeFriendLinkRespDto implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 链接名
|
||||
*/
|
||||
private String linkName;
|
||||
|
||||
/**
|
||||
* 链接url
|
||||
*/
|
||||
private String linkUrl;
|
||||
}
|
@ -0,0 +1,43 @@
|
||||
package io.github.xxyopen.novel.manager;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import io.github.xxyopen.novel.core.constant.CacheConsts;
|
||||
import io.github.xxyopen.novel.dao.entity.HomeFriendLink;
|
||||
import io.github.xxyopen.novel.dao.mapper.HomeFriendLinkMapper;
|
||||
import io.github.xxyopen.novel.dto.resp.HomeFriendLinkRespDto;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.cache.annotation.Cacheable;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 友情链接 缓存管理类
|
||||
*
|
||||
* @author xiongxiaoyang
|
||||
* @date 2022/5/12
|
||||
*/
|
||||
@Component
|
||||
@RequiredArgsConstructor
|
||||
public class FriendLinkCacheManager {
|
||||
|
||||
private final HomeFriendLinkMapper friendLinkMapper;
|
||||
|
||||
/**
|
||||
* 友情链接列表查询,并放入缓存中
|
||||
*/
|
||||
@Cacheable(cacheManager = CacheConsts.REDIS_CACHE_MANAGER
|
||||
, value = CacheConsts.HOME_FRIEND_LINK_CACHE_NAME)
|
||||
public List<HomeFriendLinkRespDto> listFriendLinks() {
|
||||
// 从友情链接表中查询出友情链接列表
|
||||
QueryWrapper<HomeFriendLink> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.orderByAsc("sort");
|
||||
return friendLinkMapper.selectList(queryWrapper).stream().map(v -> {
|
||||
HomeFriendLinkRespDto respDto = new HomeFriendLinkRespDto();
|
||||
respDto.setLinkName(v.getLinkName());
|
||||
respDto.setLinkUrl(v.getLinkUrl());
|
||||
return respDto;
|
||||
}).toList();
|
||||
}
|
||||
|
||||
}
|
@ -2,6 +2,7 @@ package io.github.xxyopen.novel.service;
|
||||
|
||||
import io.github.xxyopen.novel.core.common.resp.RestResp;
|
||||
import io.github.xxyopen.novel.dto.resp.HomeBookRespDto;
|
||||
import io.github.xxyopen.novel.dto.resp.HomeFriendLinkRespDto;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -19,4 +20,9 @@ public interface HomeService {
|
||||
* @return 首页小说推荐列表的 rest 响应结果
|
||||
* */
|
||||
RestResp<List<HomeBookRespDto>> listHomeBooks();
|
||||
|
||||
/**
|
||||
* 首页友情链接列表查询
|
||||
* */
|
||||
RestResp<List<HomeFriendLinkRespDto>> listHomeFriendLinks();
|
||||
}
|
||||
|
@ -2,6 +2,8 @@ package io.github.xxyopen.novel.service.impl;
|
||||
|
||||
import io.github.xxyopen.novel.core.common.resp.RestResp;
|
||||
import io.github.xxyopen.novel.dto.resp.HomeBookRespDto;
|
||||
import io.github.xxyopen.novel.dto.resp.HomeFriendLinkRespDto;
|
||||
import io.github.xxyopen.novel.manager.FriendLinkCacheManager;
|
||||
import io.github.xxyopen.novel.manager.HomeBookCacheManager;
|
||||
import io.github.xxyopen.novel.service.HomeService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@ -21,8 +23,15 @@ public class HomeServiceImpl implements HomeService {
|
||||
|
||||
private final HomeBookCacheManager homeBookCacheManager;
|
||||
|
||||
private final FriendLinkCacheManager friendLinkCacheManager;
|
||||
|
||||
@Override
|
||||
public RestResp<List<HomeBookRespDto>> listHomeBooks() {
|
||||
return RestResp.ok(homeBookCacheManager.listHomeBooks());
|
||||
}
|
||||
|
||||
@Override
|
||||
public RestResp<List<HomeFriendLinkRespDto>> listHomeFriendLinks() {
|
||||
return RestResp.ok(friendLinkCacheManager.listFriendLinks());
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user