From bcd1caf7a8e0800ae5614f205222a0f555bc740a Mon Sep 17 00:00:00 2001 From: xiongxiaoyang Date: Thu, 28 May 2020 20:03:05 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E5=BE=AE=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E5=BC=80=E5=8F=91=E5=AE=8C=E6=88=90=EF=BC=8C=E5=B0=8F=E8=AF=B4?= =?UTF-8?q?=E5=BE=AE=E6=9C=8D=E5=8A=A1=E5=BC=80=E5=8F=91=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 12 +++-- assert/QQ20200528-200023.png | Bin 0 -> 136349 bytes .../com/java2nb/novel/book/api/BookApi.java | 9 ++++ .../com/java2nb/novel/book/entity/Book.java | 3 +- .../com/java2nb/novel/book/vo/BookVO.java | 22 ++++++++++ .../novel/book/controller/api/BookApi.java | 11 +++++ .../novel/book/service/BookService.java | 9 +++- .../book/service/impl/BookServiceImpl.java | 41 ++++++++++++++++++ .../novel/home/controller/HomeController.java | 28 ++++++++++++ .../novel/home/service/HomeService.java | 21 ++++++++- .../home/service/impl/HomeServiceImpl.java | 33 ++++++++++++++ 11 files changed, 183 insertions(+), 6 deletions(-) create mode 100644 assert/QQ20200528-200023.png create mode 100644 novel-book/book-api/src/main/java/com/java2nb/novel/book/vo/BookVO.java diff --git a/README.md b/README.md index bdcc507..3978175 100644 --- a/README.md +++ b/README.md @@ -83,11 +83,17 @@ novel-cloud ![QQ20200520-215756](./assert/QQ20200528-020543.png) - 4. 门户网站 + - ![QQ20200520-215756](./assert/pc_index.png) + 4. 接口文档 - + ![QQ20200520-215756](./assert/QQ20200528-200023.png) + + 5. 门户网站 + + ![QQ20200520-215756](./assert/pc_index.png) + + #### 项目文档 diff --git a/assert/QQ20200528-200023.png b/assert/QQ20200528-200023.png new file mode 100644 index 0000000000000000000000000000000000000000..d3f5036997403b420b370a311543503ce78f7a4c GIT binary patch literal 136349 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

liaTS=(CWRb3ke55w*ht;cw2hoKJJN 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 H?Z^KI(FgNq literal 0 HcmV?d00001 diff --git a/novel-book/book-api/src/main/java/com/java2nb/novel/book/api/BookApi.java b/novel-book/book-api/src/main/java/com/java2nb/novel/book/api/BookApi.java index b47a68b..153a618 100644 --- a/novel-book/book-api/src/main/java/com/java2nb/novel/book/api/BookApi.java +++ b/novel-book/book-api/src/main/java/com/java2nb/novel/book/api/BookApi.java @@ -33,5 +33,14 @@ public interface BookApi { @GetMapping("api/book/queryBookByIds") List queryBookByIds(@RequestBody List ids); + /** + * 小说排行数据查询列表 + * @param type 排行类型,1:更新排行,2:新书排行,3评论排行 + * @param limit 查询数量 + * @return 书籍列表 + * */ + @GetMapping("api/book/listRank") + List listRank(@RequestParam("type") Byte type, @RequestParam("limit") Integer limit); + } diff --git a/novel-book/book-api/src/main/java/com/java2nb/novel/book/entity/Book.java b/novel-book/book-api/src/main/java/com/java2nb/novel/book/entity/Book.java index 99bab9b..82b0e29 100644 --- a/novel-book/book-api/src/main/java/com/java2nb/novel/book/entity/Book.java +++ b/novel-book/book-api/src/main/java/com/java2nb/novel/book/entity/Book.java @@ -3,9 +3,10 @@ package com.java2nb.novel.book.entity; import io.swagger.annotations.ApiModelProperty; import javax.annotation.Generated; +import java.io.Serializable; import java.util.Date; -public class Book { +public class Book implements Serializable { @ApiModelProperty(value = "主键") @Generated("org.mybatis.generator.api.MyBatisGenerator") private Long id; diff --git a/novel-book/book-api/src/main/java/com/java2nb/novel/book/vo/BookVO.java b/novel-book/book-api/src/main/java/com/java2nb/novel/book/vo/BookVO.java new file mode 100644 index 0000000..16c0806 --- /dev/null +++ b/novel-book/book-api/src/main/java/com/java2nb/novel/book/vo/BookVO.java @@ -0,0 +1,22 @@ +package com.java2nb.novel.book.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.java2nb.novel.book.entity.Book; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * @author Administrator + */ +@Data +public class BookVO extends Book{ + + @ApiModelProperty(value = "最新目录更新时间") + @JsonFormat(timezone = "GMT+8", pattern = "MM/dd HH:mm") + private Date lastIndexUpdateTime; + + +} diff --git a/novel-book/book-service/src/main/java/com/java2nb/novel/book/controller/api/BookApi.java b/novel-book/book-service/src/main/java/com/java2nb/novel/book/controller/api/BookApi.java index d8c3970..4665bc7 100644 --- a/novel-book/book-service/src/main/java/com/java2nb/novel/book/controller/api/BookApi.java +++ b/novel-book/book-service/src/main/java/com/java2nb/novel/book/controller/api/BookApi.java @@ -48,5 +48,16 @@ public class BookApi { return bookService.queryBookByIds(ids); } + /** + * 小说排行数据查询列表 + * @param type 排行类型,1:更新排行,2:新书排行,3评论排行 + * @param limit 查询数量 + * @return 书籍列表 + * */ + @GetMapping("listRank") + List listRank(Byte type, Integer limit){ + return bookService.listRank(type,limit); + } + } diff --git a/novel-book/book-service/src/main/java/com/java2nb/novel/book/service/BookService.java b/novel-book/book-service/src/main/java/com/java2nb/novel/book/service/BookService.java index 56ce0ee..c6f9a10 100644 --- a/novel-book/book-service/src/main/java/com/java2nb/novel/book/service/BookService.java +++ b/novel-book/book-service/src/main/java/com/java2nb/novel/book/service/BookService.java @@ -1,7 +1,6 @@ package com.java2nb.novel.book.service; import com.java2nb.novel.book.entity.Book; -import org.springframework.web.bind.annotation.GetMapping; import java.util.Date; import java.util.List; @@ -28,4 +27,12 @@ public interface BookService { * @return 书籍列表 * */ List queryBookByIds(List ids); + + /** + * 小说排行数据查询列表 + * @param type 排行类型,1:更新排行,2:新书排行,3评论排行 + * @param limit 查询数量 + * @return 书籍列表 + * */ + List listRank(Byte type, Integer limit); } diff --git a/novel-book/book-service/src/main/java/com/java2nb/novel/book/service/impl/BookServiceImpl.java b/novel-book/book-service/src/main/java/com/java2nb/novel/book/service/impl/BookServiceImpl.java index faf3d11..0138fea 100644 --- a/novel-book/book-service/src/main/java/com/java2nb/novel/book/service/impl/BookServiceImpl.java +++ b/novel-book/book-service/src/main/java/com/java2nb/novel/book/service/impl/BookServiceImpl.java @@ -5,7 +5,9 @@ import com.java2nb.novel.book.mapper.BookDynamicSqlSupport; import com.java2nb.novel.book.mapper.BookMapper; import com.java2nb.novel.book.service.BookService; import lombok.RequiredArgsConstructor; +import org.mybatis.dynamic.sql.SortSpecification; import org.mybatis.dynamic.sql.render.RenderingStrategies; +import org.mybatis.dynamic.sql.select.render.SelectStatementProvider; import org.springframework.stereotype.Service; import java.util.Date; @@ -49,4 +51,43 @@ public class BookServiceImpl implements BookService { .render(RenderingStrategies.MYBATIS3) ); } + + @Override + public List listRank(Byte type, Integer limit) { + SortSpecification sortSpecification = BookDynamicSqlSupport.visitCount.descending(); + switch (type) { + case 1: { + //最新入库排序 + sortSpecification = BookDynamicSqlSupport.createTime.descending(); + break; + } + case 2: { + //最新更新时间排序 + sortSpecification = BookDynamicSqlSupport.lastIndexUpdateTime.descending(); + break; + } + case 3: { + //评论数量排序 + sortSpecification = BookDynamicSqlSupport.commentCount.descending(); + break; + } + default: { + break; + } + } + SelectStatementProvider selectStatement = + select(BookDynamicSqlSupport.id, BookDynamicSqlSupport.catId, + BookDynamicSqlSupport.catName, BookDynamicSqlSupport.bookName, + BookDynamicSqlSupport.lastIndexId, BookDynamicSqlSupport.lastIndexName, + BookDynamicSqlSupport.authorId, BookDynamicSqlSupport.authorName, + BookDynamicSqlSupport.picUrl, BookDynamicSqlSupport.bookDesc, + BookDynamicSqlSupport.wordCount, BookDynamicSqlSupport.lastIndexUpdateTime) + .from(book) + .where(BookDynamicSqlSupport.wordCount, isGreaterThan(0)) + .orderBy(sortSpecification) + .limit(limit) + .build() + .render(RenderingStrategies.MYBATIS3); + return bookMapper.selectMany(selectStatement); + } } diff --git a/novel-home/src/main/java/com/java2nb/novel/home/controller/HomeController.java b/novel-home/src/main/java/com/java2nb/novel/home/controller/HomeController.java index ce41af2..822261c 100644 --- a/novel-home/src/main/java/com/java2nb/novel/home/controller/HomeController.java +++ b/novel-home/src/main/java/com/java2nb/novel/home/controller/HomeController.java @@ -1,5 +1,7 @@ package com.java2nb.novel.home.controller; +import com.java2nb.novel.book.entity.Book; +import com.java2nb.novel.book.vo.BookVO; import com.java2nb.novel.common.bean.PageBean; import com.java2nb.novel.common.bean.ResultBean; import com.java2nb.novel.home.entity.HomeFriendLink; @@ -58,4 +60,30 @@ public class HomeController { } + /** + * 首页点击榜单查询接口 + * */ + @ApiOperation("首页点击榜单查询接口") + @GetMapping("listClickRank") + public ResultBean> listClickRank(){ + return ResultBean.ok(homeService.listClickRank()); + } + /** + * 首页新书榜单查询接口 + * */ + @ApiOperation("首页点击榜单查询接口") + @GetMapping("listNewRank") + public ResultBean> listNewRank(){ + return ResultBean.ok(homeService.listNewRank()); + } + + /** + * 首页更新榜单查询接口 + * */ + @ApiOperation("首页点击榜单查询接口") + @GetMapping("listUpdateRank") + public ResultBean> listUpdateRank(){ + return ResultBean.ok(homeService.listUpdateRank()); + } + } diff --git a/novel-home/src/main/java/com/java2nb/novel/home/service/HomeService.java b/novel-home/src/main/java/com/java2nb/novel/home/service/HomeService.java index 395fe3b..c4a99e1 100644 --- a/novel-home/src/main/java/com/java2nb/novel/home/service/HomeService.java +++ b/novel-home/src/main/java/com/java2nb/novel/home/service/HomeService.java @@ -1,7 +1,8 @@ package com.java2nb.novel.home.service; -import com.java2nb.novel.home.entity.HomeBook; +import com.java2nb.novel.book.entity.Book; +import com.java2nb.novel.book.vo.BookVO; import com.java2nb.novel.home.entity.HomeFriendLink; import com.java2nb.novel.home.vo.HomeBookVO; import com.java2nb.novel.news.entity.News; @@ -34,4 +35,22 @@ public interface HomeService { * @return 新闻列表集合 * */ List listIndexNews(); + + /** + * 首页点击榜单查询接口 + * @return 小说数据集合 + * */ + List listClickRank(); + + /** + * 首页新书榜单查询接口 + * @return 小说数据集合 + * */ + List listNewRank(); + + /** + * 首页更新榜单查询接口 + * @return 小说数据集合 + * */ + List listUpdateRank(); } diff --git a/novel-home/src/main/java/com/java2nb/novel/home/service/impl/HomeServiceImpl.java b/novel-home/src/main/java/com/java2nb/novel/home/service/impl/HomeServiceImpl.java index 8ba7cb8..ce88b0c 100644 --- a/novel-home/src/main/java/com/java2nb/novel/home/service/impl/HomeServiceImpl.java +++ b/novel-home/src/main/java/com/java2nb/novel/home/service/impl/HomeServiceImpl.java @@ -2,8 +2,10 @@ package com.java2nb.novel.home.service.impl; import com.fasterxml.jackson.databind.ObjectMapper; import com.java2nb.novel.book.entity.Book; +import com.java2nb.novel.book.vo.BookVO; import com.java2nb.novel.common.cache.CacheKey; import com.java2nb.novel.common.cache.CacheService; +import com.java2nb.novel.common.utils.BeanUtil; import com.java2nb.novel.common.utils.Constants; import com.java2nb.novel.home.entity.HomeBook; import com.java2nb.novel.home.entity.HomeFriendLink; @@ -111,4 +113,35 @@ public class HomeServiceImpl implements HomeService { } return result; } + + @Override + public List listClickRank() { + List result = (List) cacheService.getObject(CacheKey.INDEX_CLICK_BANK_BOOK_KEY); + if (result == null || result.size() == 0) { + result = bookFeignClient.listRank((byte) 0, 10); + cacheService.setObject(CacheKey.INDEX_CLICK_BANK_BOOK_KEY, result, 5000); + } + return result; + } + + @Override + public List listNewRank() { + List result = (List) cacheService.getObject(CacheKey.INDEX_NEW_BOOK_KEY); + if (result == null || result.size() == 0) { + result = bookFeignClient.listRank((byte) 1, 10); + cacheService.setObject(CacheKey.INDEX_NEW_BOOK_KEY, result, 3600); + } + return result; + } + + @Override + public List listUpdateRank() { + List result = (List) cacheService.getObject(CacheKey.INDEX_UPDATE_BOOK_KEY); + if (result == null || result.size() == 0) { + List bookPOList = bookFeignClient.listRank((byte) 2, 23); + result = BeanUtil.copyList(bookPOList, BookVO.class); + cacheService.setObject(CacheKey.INDEX_UPDATE_BOOK_KEY, result, 60 * 10); + } + return result; + } }