From 959277de6f3f78e71c2f3b93d2990aeb0fbd1317 Mon Sep 17 00:00:00 2001 From: wuchunlei Date: Mon, 27 Nov 2023 10:36:22 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8C=BB=E6=A1=88=E6=8E=A8=E8=8D=90=E5=9B=BE?= =?UTF-8?q?=E4=B9=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BookMedicalRecordsController.java | 42 ++++++++++++++++++- .../book/dao/BookMedicalRecordsDao.java | 9 ++++ .../service/BookMedicalRecordsService.java | 4 ++ .../impl/BookMedicalRecordsServiceImpl.java | 8 ++++ .../mapper/book/BookMedicalRecordsDao.xml | 7 ++++ 5 files changed, 69 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/peanut/modules/book/controller/BookMedicalRecordsController.java b/src/main/java/com/peanut/modules/book/controller/BookMedicalRecordsController.java index d5dac974..51bcc103 100644 --- a/src/main/java/com/peanut/modules/book/controller/BookMedicalRecordsController.java +++ b/src/main/java/com/peanut/modules/book/controller/BookMedicalRecordsController.java @@ -1,11 +1,17 @@ package com.peanut.modules.book.controller; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.peanut.common.utils.Query; import com.peanut.common.utils.R; +import com.peanut.modules.book.entity.BookEntity; import com.peanut.modules.book.entity.BookMedicalRecordsEntity; +import com.peanut.modules.book.entity.UserEbookBuyEntity; import com.peanut.modules.book.service.BookMedicalRecordsService; +import com.peanut.modules.book.service.BookService; +import com.peanut.modules.book.service.UserEbookBuyService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; @@ -22,12 +28,46 @@ public class BookMedicalRecordsController { @Autowired private BookMedicalRecordsService bookMedicalRecordsService; + @Autowired + private BookService bookService; + @Autowired + private UserEbookBuyService userEbookBuyService; + /** + * 已购图书列表 + */ + @RequestMapping("/userEbookBuyList") + public R userEbookBuyList(@RequestBody Map params){ + MPJLambdaWrapper wrapper = new MPJLambdaWrapper<>(); + wrapper.selectAll(BookEntity.class); + wrapper.leftJoin(UserEbookBuyEntity.class, UserEbookBuyEntity::getBookId,BookEntity::getId); + wrapper.leftJoin(BookMedicalRecordsEntity.class,BookMedicalRecordsEntity::getBookId,BookEntity::getId); + wrapper.eq(BookMedicalRecordsEntity::getDelFlag,0); + wrapper.eq(BookEntity::getDelFlag,0); + wrapper.eq(BookEntity::getState,1); + wrapper.eq(UserEbookBuyEntity::getUserId,params.get("userId")); + wrapper.groupBy(BookMedicalRecordsEntity::getBookId); + IPage page = bookService.page( + new Query().getPage(params),wrapper); + return R.ok().put("page", page); + } + /** + * 推荐图书列表 + */ + @RequestMapping("/recommendBookList") + public R recommendBookList(@RequestBody Map params){ + List list = bookMedicalRecordsService.getBooks((Integer) params.get("userId")); + MPJLambdaWrapper wrapper = new MPJLambdaWrapper<>(); + IPage page = bookService.page( + new Query().getPage(params),wrapper); + page.setRecords(list); + return R.ok().put("page", page); + } /** * 列表 */ @RequestMapping("/list") - public R list(@RequestParam Map params){ + public R list(@RequestBody Map params){ IPage page = bookMedicalRecordsService.page( new Query().getPage(params), new QueryWrapper() diff --git a/src/main/java/com/peanut/modules/book/dao/BookMedicalRecordsDao.java b/src/main/java/com/peanut/modules/book/dao/BookMedicalRecordsDao.java index b44a1cae..75de02a2 100644 --- a/src/main/java/com/peanut/modules/book/dao/BookMedicalRecordsDao.java +++ b/src/main/java/com/peanut/modules/book/dao/BookMedicalRecordsDao.java @@ -1,9 +1,18 @@ package com.peanut.modules.book.dao; import com.github.yulichang.base.MPJBaseMapper; +import com.peanut.modules.book.entity.BookEntity; import com.peanut.modules.book.entity.BookMedicalRecordsEntity; import org.apache.ibatis.annotations.Mapper; +import java.util.List; +import java.util.Map; + @Mapper public interface BookMedicalRecordsDao extends MPJBaseMapper { + + + + List getBooks(Integer userId); + } diff --git a/src/main/java/com/peanut/modules/book/service/BookMedicalRecordsService.java b/src/main/java/com/peanut/modules/book/service/BookMedicalRecordsService.java index 14626aa4..2cfe3eb1 100644 --- a/src/main/java/com/peanut/modules/book/service/BookMedicalRecordsService.java +++ b/src/main/java/com/peanut/modules/book/service/BookMedicalRecordsService.java @@ -2,6 +2,7 @@ package com.peanut.modules.book.service; import com.baomidou.mybatisplus.extension.service.IService; import com.peanut.common.utils.PageUtils; +import com.peanut.modules.book.entity.BookEntity; import com.peanut.modules.book.entity.BookMedicalRecordsEntity; import java.util.List; @@ -10,4 +11,7 @@ import java.util.Map; public interface BookMedicalRecordsService extends IService { + + List getBooks(Integer userId); + } diff --git a/src/main/java/com/peanut/modules/book/service/impl/BookMedicalRecordsServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/BookMedicalRecordsServiceImpl.java index 0bd9a697..77eb7d97 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/BookMedicalRecordsServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/BookMedicalRecordsServiceImpl.java @@ -6,9 +6,11 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.peanut.common.utils.PageUtils; import com.peanut.common.utils.Query; import com.peanut.modules.book.dao.BookMedicalRecordsDao; +import com.peanut.modules.book.entity.BookEntity; import com.peanut.modules.book.entity.BookMedicalRecordsEntity; import com.peanut.modules.book.service.BookMedicalRecordsService; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @@ -18,5 +20,11 @@ import java.util.Map; @Service public class BookMedicalRecordsServiceImpl extends ServiceImpl implements BookMedicalRecordsService { + @Autowired + private BookMedicalRecordsDao dao; + @Override + public List getBooks(Integer userId) { + return dao.getBooks(userId); + } } diff --git a/src/main/resources/mapper/book/BookMedicalRecordsDao.xml b/src/main/resources/mapper/book/BookMedicalRecordsDao.xml index 806a5504..a99ac9a6 100644 --- a/src/main/resources/mapper/book/BookMedicalRecordsDao.xml +++ b/src/main/resources/mapper/book/BookMedicalRecordsDao.xml @@ -14,5 +14,12 @@ + \ No newline at end of file