From 6e1dfd832dbbf09a2cc760ebdeb48bc6d511ad69 Mon Sep 17 00:00:00 2001 From: wuchunlei Date: Fri, 10 Jan 2025 09:52:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=9C=89=E9=87=8D=E5=A4=8D?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/BookListeningController.java | 39 +++++++------------ 1 file changed, 15 insertions(+), 24 deletions(-) diff --git a/src/main/java/com/peanut/modules/book/controller/BookListeningController.java b/src/main/java/com/peanut/modules/book/controller/BookListeningController.java index 44f01ce3..c7a89c52 100644 --- a/src/main/java/com/peanut/modules/book/controller/BookListeningController.java +++ b/src/main/java/com/peanut/modules/book/controller/BookListeningController.java @@ -13,6 +13,7 @@ import java.util.Arrays; import java.util.Date; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * 听书进度表 @@ -54,25 +55,14 @@ public class BookListeningController { public R save( BookListeningEntity booklistening){ Integer bookId = booklistening.getBookId(); Integer userId = booklistening.getUserId(); - List bls = bookListeningService.list(new QueryWrapper() + List bls = bookListeningService.list(new QueryWrapper() .eq("book_id", bookId) - .eq("chapter_id", booklistening.getChapterId()) - .eq("user_id", userId)); + .eq("user_id", userId)) + .stream().map(BookListeningEntity::getId).collect(Collectors.toList()); if (bls.size() > 0) { - Integer id = bls.get(0).getId(); - // 构建新的BookListeningEntity对象,设置需要修改的字段 - BookListeningEntity updatedEntity = new BookListeningEntity(); - updatedEntity.setId(id); - updatedEntity.setPrecent(booklistening.getPrecent()); - updatedEntity.setChapterId(booklistening.getChapterId()); - updatedEntity.setChapterName(booklistening.getChapterName()); - updatedEntity.setUpdateTime(new Date()); - // 执行更新操作 - bookListeningService.updateById(updatedEntity); - return R.ok().put("bookListeningId",bls.get(0).getId()); - }else { - bookListeningService.save(booklistening); + bookListeningService.removeByIds(bls); } + bookListeningService.save(booklistening); return R.ok(); } @@ -81,12 +71,14 @@ public class BookListeningController { */ @RequestMapping("/update") public R update(@RequestBody BookListeningEntity booklistening) { - BookListeningEntity one = bookListeningService.getOne(new QueryWrapper() + List blIds = bookListeningService.list(new QueryWrapper() .eq("book_id", booklistening.getBookId()) - .eq("user_id", booklistening.getUserId())); - if (one != null) { - Integer id = one.getId(); - + .eq("user_id", booklistening.getUserId())) + .stream().map(BookListeningEntity::getId).collect(Collectors.toList()); + if (blIds.size() > 1) { + bookListeningService.removeByIds(blIds); + }else if (blIds.size() > 0) { + Integer id = blIds.get(0); // 构建新的BookListeningEntity对象,设置需要修改的字段 BookListeningEntity updatedEntity = new BookListeningEntity(); updatedEntity.setId(id); @@ -94,12 +86,11 @@ public class BookListeningController { updatedEntity.setChapterId(booklistening.getChapterId()); updatedEntity.setChapterName(booklistening.getChapterName()); updatedEntity.setUpdateTime(new Date()); - // 执行更新操作 bookListeningService.updateById(updatedEntity); - - + return R.ok(); } + bookListeningService.save(booklistening); return R.ok(); } /**