From d80d598529ddb03b0cbea5276357170b55965e38 Mon Sep 17 00:00:00 2001 From: Cauchy Date: Wed, 11 Oct 2023 14:22:45 +0800 Subject: [PATCH] clock in and comment finished waitting for test --- .../controller/BookClockForumController.java | 90 +++++++++ .../BookClockinCommentController.java | 5 +- .../controller/BookClockinController.java | 22 +-- .../BookClockinPunchController.java | 181 +++++++----------- .../book/controller/BookTaskController.java | 1 - .../controller/UserBookClockController.java | 99 ++++++++++ .../book/dao/BookClockEntryChatDao.java | 4 +- .../modules/book/dao/BookClockinDao.java | 5 +- ...Entity.java => BookClockInChatEntity.java} | 4 +- ...ckinEntity.java => BookClockInEntity.java} | 3 +- .../book/entity/UserBookClockEntity.java | 2 +- .../service/BookClockEntryChatService.java | 4 +- .../book/service/BookClockinPunchService.java | 1 - .../book/service/BookClockinService.java | 4 +- .../service/impl/BookClockEntryChatImpl.java | 4 +- .../impl/BookClockinCommentServiceImpl.java | 1 - .../service/impl/BookClockinServiceImpl.java | 16 +- .../mq/Consumer/OrderCancelConsumer.java | 1 + .../resources/mapper/book/BookClockinDao.xml | 2 +- src/main/resources/weChatConfig.properties | 26 +-- 20 files changed, 311 insertions(+), 164 deletions(-) create mode 100644 src/main/java/com/peanut/modules/book/controller/BookClockForumController.java create mode 100644 src/main/java/com/peanut/modules/book/controller/UserBookClockController.java rename src/main/java/com/peanut/modules/book/entity/{BookClockEntryChatEntity.java => BookClockInChatEntity.java} (86%) rename src/main/java/com/peanut/modules/book/entity/{BookClockinEntity.java => BookClockInEntity.java} (95%) diff --git a/src/main/java/com/peanut/modules/book/controller/BookClockForumController.java b/src/main/java/com/peanut/modules/book/controller/BookClockForumController.java new file mode 100644 index 00000000..c8bea1c7 --- /dev/null +++ b/src/main/java/com/peanut/modules/book/controller/BookClockForumController.java @@ -0,0 +1,90 @@ +package com.peanut.modules.book.controller; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.peanut.common.utils.R; +import com.peanut.modules.book.entity.BookClockInChatEntity; +import com.peanut.modules.book.entity.BookClockInEntity; +import com.peanut.modules.book.service.BookClockEntryChatService; +import com.peanut.modules.book.service.BookClockinService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @Description: 打卡论坛 Controller + * @Author: Cauchy + * @CreateTime: 2023/10/11 + */ +@RestController("/book/clockForum") +public class BookClockForumController { + + @Autowired + private BookClockEntryChatService bookClockEntryChatService; + + @Autowired + private BookClockinService bookClockinService; + + /** + * 获取论坛内容 + * + * @param bookId + * @param day + * @return + */ + @RequestMapping(path = "/getPostingInfo", method = RequestMethod.GET) + public R getPostingInfo(@RequestParam("bookId") Integer bookId, + @RequestParam("day") Integer day) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("book_id", bookId); + queryWrapper.eq("day", day); + BookClockInEntity entity = bookClockinService.getOne(queryWrapper); + Map result = new HashMap<>(); + result.put("result", entity); + return R.ok(result); + } + + /** + * 获取评论列表 + * + * @param entryId + * @return + */ + @RequestMapping(path = "/getChatList", method = RequestMethod.GET) + public R getChatList(@RequestParam("entryId") Integer entryId) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("entry_id", entryId); + queryWrapper.orderByAsc("f_id", "create_time"); + List resultList = bookClockEntryChatService.list(queryWrapper); + Map result = new HashMap<>(); + result.put("chatList", resultList); + return R.ok(result); + } + + /** + * 添加评论 + * + * @param chat + * @return + */ + @RequestMapping(path = "/addChat", method = RequestMethod.POST) + public R addChat(@RequestBody BookClockInChatEntity chat) { + bookClockEntryChatService.save(chat); + return R.ok(); + } + + /** + * 删除评论 + * + * @param id + * @return + */ + @RequestMapping(path = "/deleteChat", method = RequestMethod.GET) + public R deleteChat(@RequestParam("id") Integer id) { + bookClockEntryChatService.removeById(id); + return R.ok(); + } + +} diff --git a/src/main/java/com/peanut/modules/book/controller/BookClockinCommentController.java b/src/main/java/com/peanut/modules/book/controller/BookClockinCommentController.java index 252f8ca0..7cd8cf4c 100644 --- a/src/main/java/com/peanut/modules/book/controller/BookClockinCommentController.java +++ b/src/main/java/com/peanut/modules/book/controller/BookClockinCommentController.java @@ -4,12 +4,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.peanut.common.utils.PageUtils; import com.peanut.common.utils.R; import com.peanut.modules.book.entity.BookClockinCommentEntity; -import com.peanut.modules.book.entity.BookClockinEntity; +import com.peanut.modules.book.entity.BookClockInEntity; import com.peanut.modules.book.entity.BookClockinPunchEntity; import com.peanut.modules.book.service.BookClockinCommentService; import com.peanut.modules.book.service.BookClockinPunchService; import com.peanut.modules.book.service.BookClockinService; -import com.peanut.modules.book.service.BookTaskService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.Arrays; @@ -97,7 +96,7 @@ public class BookClockinCommentController { Integer bookid = clockinComment.getBookId(); Integer userId = clockinComment.getUserId(); Integer pid = clockinComment.getPid(); - BookClockinEntity bookClockinEntity = bookClockinService.getBaseMapper().selectOne(new QueryWrapper() + BookClockInEntity bookClockinEntity = bookClockinService.getBaseMapper().selectOne(new QueryWrapper() .eq("id",pid) ); clockinComment.setDelFlag(0); diff --git a/src/main/java/com/peanut/modules/book/controller/BookClockinController.java b/src/main/java/com/peanut/modules/book/controller/BookClockinController.java index dc6c326c..d30abd72 100644 --- a/src/main/java/com/peanut/modules/book/controller/BookClockinController.java +++ b/src/main/java/com/peanut/modules/book/controller/BookClockinController.java @@ -44,10 +44,10 @@ public class BookClockinController { public R applist(@RequestParam("bookid") String bookid, @RequestParam("taskid") String taskid) { - List bookClockinEntityList = bookClockinService.getBaseMapper().selectList(new QueryWrapper() + List bookClockinEntityList = bookClockinService.getBaseMapper().selectList(new QueryWrapper() .eq("book_id", bookid).eq("task_id", taskid)); List list = new ArrayList<>(); - for (BookClockinEntity bookClockinEntity : bookClockinEntityList) { + for (BookClockInEntity bookClockinEntity : bookClockinEntityList) { Map map = new HashMap<>(); String name = ""; String avatar=""; @@ -101,7 +101,7 @@ public class BookClockinController { */ @RequestMapping("/info/{id}") public R info(@PathVariable("id") Integer id) { - BookClockinEntity bookClockinEntity = bookClockinService.getById(id); + BookClockInEntity bookClockinEntity = bookClockinService.getById(id); return R.ok().put("bookBuyConfig", bookClockinEntity); } @@ -109,7 +109,7 @@ public class BookClockinController { * 保存 */ @RequestMapping("/save") - public R save(@RequestBody BookClockinEntity bookClockinEntity) { + public R save(@RequestBody BookClockInEntity bookClockinEntity) { Integer bookId = bookClockinEntity.getBookId(); Integer userId = bookClockinEntity.getUserId(); @@ -124,7 +124,7 @@ public class BookClockinController { if (bookClockinPunchEntity==null) { return R.error("当天打卡内容未发布"); } - BookClockinEntity bookClockin = bookClockinService.getBaseMapper().selectOne(new QueryWrapper() + BookClockInEntity bookClockin = bookClockinService.getBaseMapper().selectOne(new QueryWrapper() .eq("book_id", bookId) .eq("task_id", taskId) .eq("day_id", dayId) @@ -159,7 +159,7 @@ public class BookClockinController { * 修改 */ @RequestMapping("/update") - public R update(@RequestBody BookClockinEntity bookClockinEntity) { + public R update(@RequestBody BookClockInEntity bookClockinEntity) { bookClockinService.updateById(bookClockinEntity); return R.ok("提交成功"); } @@ -186,11 +186,11 @@ public class BookClockinController { List applist = new ArrayList<>(); Map productMap = new HashMap<>(); //根据bookid查找出签到表中签到的用户数据 - List bookid = bookClockinService.getBaseMapper().selectList(new QueryWrapper() + List bookid = bookClockinService.getBaseMapper().selectList(new QueryWrapper() .eq("book_id", bookId) .orderByDesc("create_time")); - for (BookClockinEntity book : bookid) { + for (BookClockInEntity book : bookid) { HashMap map = new HashMap<>(); Integer bookid1 = book.getBookId(); @@ -222,11 +222,11 @@ public class BookClockinController { @RequestParam("bookid") Integer bookId) { - List bookClockinEntityList = bookClockinService.getBaseMapper().selectList(new QueryWrapper() + List bookClockinEntityList = bookClockinService.getBaseMapper().selectList(new QueryWrapper() .eq("user_id",id) .eq("book_id",bookId).orderByDesc("create_time")); List list = new ArrayList<>(); - for (BookClockinEntity bookClockinEntity : bookClockinEntityList) { + for (BookClockInEntity bookClockinEntity : bookClockinEntityList) { Map productMap = new HashMap<>(); Integer userId = bookClockinEntity.getUserId(); Integer dayId = bookClockinEntity.getDayId(); @@ -286,7 +286,7 @@ public class BookClockinController { ) { List list = new ArrayList<>(); Map productMap = new HashMap<>(); - BookClockinEntity bookClockin = bookClockinService.getBaseMapper().selectOne(new QueryWrapper() + BookClockInEntity bookClockin = bookClockinService.getBaseMapper().selectOne(new QueryWrapper() .eq("user_id",id) .eq("task_id",taskid) .eq("book_id",bookId) diff --git a/src/main/java/com/peanut/modules/book/controller/BookClockinPunchController.java b/src/main/java/com/peanut/modules/book/controller/BookClockinPunchController.java index ef3a7871..adb671d1 100644 --- a/src/main/java/com/peanut/modules/book/controller/BookClockinPunchController.java +++ b/src/main/java/com/peanut/modules/book/controller/BookClockinPunchController.java @@ -1,4 +1,9 @@ package com.peanut.modules.book.controller; + +import cn.hutool.core.date.DateUnit; +import cn.hutool.core.date.DateUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.TypeReference; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -7,29 +12,28 @@ import com.peanut.common.utils.PageUtils; import com.peanut.common.utils.R; import com.peanut.modules.book.dao.UserEbookBuyDao; import com.peanut.modules.book.entity.*; -import com.peanut.modules.book.service.BookClockinCommentService; -import com.peanut.modules.book.service.BookClockinPunchService; -import com.peanut.modules.book.service.BookService; -import com.peanut.modules.book.service.MyUserService; +import com.peanut.modules.book.service.*; +import io.swagger.models.auth.In; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; + import java.util.*; @RestController @RequestMapping("book/clockinPunch") public class BookClockinPunchController { -@Autowired -private BookClockinPunchService bookClockinPunchService; -@Autowired -private BookService bookService; -@Autowired -private MyUserService myUserService; -@Autowired -private BookClockinCommentService bookClockinCommentService; -@Autowired -private UserEbookBuyDao userEbookBuyDao; - - + @Autowired + private BookClockinPunchService bookClockinPunchService; + @Autowired + private BookService bookService; + @Autowired + private MyUserService myUserService; + @Autowired + private BookClockinCommentService bookClockinCommentService; + @Autowired + private UserEbookBuyDao userEbookBuyDao; + @Autowired + UserBookClockService userBookClockService; /** @@ -44,49 +48,6 @@ private UserEbookBuyDao userEbookBuyDao; - /** - * 计算打卡天数 - */ - @RequestMapping("/clockindays") - public R applists(@RequestParam("bookId") String bookid, - @RequestParam("userId") String userid) { - ArrayList list = new ArrayList<>(); - //查询用户id图书id 根据第一天打卡天数开始计算 - BookClockinPunchEntity bookClockinEntity = bookClockinPunchService.getBaseMapper().selectOne(new QueryWrapper() - .eq("book_id", bookid) - .eq("user_id", userid) - .eq("days",1) - ); - List bookClockinEntityList = bookClockinPunchService.getBaseMapper().selectList(new QueryWrapper() - .eq("book_id", bookid) - .eq("user_id", userid) - ); - for (BookClockinPunchEntity bookClock : bookClockinEntityList) { - Integer days = bookClock.getDays(); - list.add(days); - } - if (bookClockinEntity != null) { - Date createTime = bookClockinEntity.getCreateTime(); - long createTimeMillis = createTime.getTime(); - //获取第一次打卡天数createTimeMillis毫秒数,时间戳减并除以毫秒数(24 * 60 * 60 * 1000)计算打卡总天数+1 - int daysBetween = (int) (System.currentTimeMillis() - createTimeMillis) / (24 * 60 * 60 * 1000)+1; - return R.ok().put("daysBetween", daysBetween).put("dayslist", list); - - } else if (bookClockinEntity == null) { - Date createTime = new Date(); - long createTimeMillis = createTime.getTime(); - int daysBetween = (int) (System.currentTimeMillis() - createTimeMillis) / (24 * 60 * 60 * 1000)+1; - return R.ok().put("daysBetween", daysBetween).put("dayslist",list ); - - - - } - - - - return R.error("无信息记录"); - } - /** * 信息 */ @@ -113,25 +74,24 @@ private UserEbookBuyDao userEbookBuyDao; .eq("t_id", taskId) - ); - if (bookClock !=null) { + if (bookClock != null) { return R.error("您已经签到,请勿重复签到"); } - if(canListen == true){ - boolean b = myUserService.bookAuthen(bookid1,userId); - if (b){ + if (canListen == true) { + boolean b = myUserService.bookAuthen(bookid1, userId); + if (b) { bookClockinPunchEntity.setDelFlag(0); bookClockinPunchService.save(bookClockinPunchEntity); return R.ok("签到成功"); - }else { + } else { return R.error("您还未购买此书,购买后即可签到"); } - }else { + } else { return R.error("该书暂未开放打卡权限"); } @@ -141,37 +101,39 @@ private UserEbookBuyDao userEbookBuyDao; /** * 获取用户打卡已购图书 + * * @param userId * @return */ @RequestMapping("/myClockBooks") - public R myClockBooks(@RequestParam Integer userId,@RequestParam Integer limit,@RequestParam Integer page){ + public R myClockBooks(@RequestParam Integer userId, @RequestParam Integer limit, @RequestParam Integer page) { MPJLambdaWrapper wrapper = new MPJLambdaWrapper<>(); wrapper.selectAll(BookEntity.class); - wrapper.leftJoin(BookEntity.class,BookEntity::getId,UserEbookBuyEntity::getBookId); - wrapper.eq(UserEbookBuyEntity::getUserId,userId); - wrapper.eq(BookEntity::getDelFlag,0); - wrapper.eq(BookEntity::getClockIn,1); + wrapper.leftJoin(BookEntity.class, BookEntity::getId, UserEbookBuyEntity::getBookId); + wrapper.eq(UserEbookBuyEntity::getUserId, userId); + wrapper.eq(BookEntity::getDelFlag, 0); + wrapper.eq(BookEntity::getClockIn, 1); Page userBookEntityPage = userEbookBuyDao.selectJoinPage(new Page(page, limit), BookEntity.class, wrapper); - return R.ok().put("page",userBookEntityPage); + return R.ok().put("page", userBookEntityPage); } /** * 获取打卡推荐图书 + * * @param userId * @param limit * @param page * @return */ @RequestMapping("/getBestClockBooks") - public R getBestClockBooks(@RequestParam Integer userId,@RequestParam Integer limit,@RequestParam Integer page){ - String not_ex_sql = "select 1 from user_ebook_buy where book.id = book_id and user_id = "+userId; + public R getBestClockBooks(@RequestParam Integer userId, @RequestParam Integer limit, @RequestParam Integer page) { + String not_ex_sql = "select 1 from user_ebook_buy where book.id = book_id and user_id = " + userId; LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(BookEntity::getDelFlag,0); - wrapper.eq(BookEntity::getClockIn,1); + wrapper.eq(BookEntity::getDelFlag, 0); + wrapper.eq(BookEntity::getClockIn, 1); wrapper.notExists(not_ex_sql); Page bookEntityPage = bookService.getBaseMapper().selectPage(new Page<>(page, limit), wrapper); - return R.ok().put("page",bookEntityPage); + return R.ok().put("page", bookEntityPage); } @@ -197,12 +159,13 @@ private UserEbookBuyDao userEbookBuyDao; /** - * 获取评论 + * 获取评论 + * * @param bookClockinPunchEntity * @return */ @RequestMapping("/punchcoments") - public R punchcoments(@RequestBody BookClockinPunchEntity bookClockinPunchEntity) { + public R punchcoments(@RequestBody BookClockinPunchEntity bookClockinPunchEntity) { //图书Id Integer bookId = bookClockinPunchEntity.getBookId(); //用户id @@ -212,48 +175,46 @@ private UserEbookBuyDao userEbookBuyDao; ArrayList list = new ArrayList<>(); List bookClockinCommentEntities = bookClockinCommentService.getBaseMapper().selectList(new QueryWrapper() - .eq("user_id", userId) - .eq("book_id", bookId) - .eq("task_id", days) + .eq("user_id", userId) + .eq("book_id", bookId) + .eq("task_id", days) //pid等于1时为一级评论 // .eq("pid",1) ); - for (BookClockinCommentEntity bookClockinCommentEntity : bookClockinCommentEntities) { - HashMap map = new HashMap<>(); - String name = ""; - String avatar=""; + for (BookClockinCommentEntity bookClockinCommentEntity : bookClockinCommentEntities) { + HashMap map = new HashMap<>(); + String name = ""; + String avatar = ""; - Integer userId1 = bookClockinCommentEntity.getUserId(); - Integer bookId1 = bookClockinCommentEntity.getBookId(); - String content = bookClockinCommentEntity.getContent(); - String images = bookClockinCommentEntity.getImages(); - Date createTime = bookClockinCommentEntity.getCreateTime(); + Integer userId1 = bookClockinCommentEntity.getUserId(); + Integer bookId1 = bookClockinCommentEntity.getBookId(); + String content = bookClockinCommentEntity.getContent(); + String images = bookClockinCommentEntity.getImages(); + Date createTime = bookClockinCommentEntity.getCreateTime(); + List id = myUserService.getBaseMapper().selectList(new QueryWrapper().eq("id", userId)); + for (MyUserEntity user : id) { + name = user.getNickname(); + avatar = user.getAvatar(); + } + map.put("userid", userId1); + map.put("name", name); + map.put("avatar", avatar); + map.put("bookid", bookId1); + map.put("content", content); + map.put("images", images); + map.put("createdate", createTime); + list.add(map); - List id = myUserService.getBaseMapper().selectList(new QueryWrapper().eq("id", userId)); - for (MyUserEntity user : id) { - name = user.getNickname(); - avatar = user.getAvatar(); - } - map.put("userid", userId1); - map.put("name", name); - map.put("avatar", avatar); - map.put("bookid", bookId1); - map.put("content", content); - map.put("images", images); - map.put("createdate", createTime); - list.add(map); - - } + } Collections.reverse(list); return R.ok().put("list", list); - } - - - } + +} + diff --git a/src/main/java/com/peanut/modules/book/controller/BookTaskController.java b/src/main/java/com/peanut/modules/book/controller/BookTaskController.java index 0349d0e6..4e4666c8 100644 --- a/src/main/java/com/peanut/modules/book/controller/BookTaskController.java +++ b/src/main/java/com/peanut/modules/book/controller/BookTaskController.java @@ -4,7 +4,6 @@ package com.peanut.modules.book.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.peanut.common.utils.PageUtils; import com.peanut.common.utils.R; -import com.peanut.modules.book.entity.BookClockinEntity; import com.peanut.modules.book.entity.BookClockinPunchEntity; import com.peanut.modules.book.entity.BookTaskEntity; import com.peanut.modules.book.service.*; diff --git a/src/main/java/com/peanut/modules/book/controller/UserBookClockController.java b/src/main/java/com/peanut/modules/book/controller/UserBookClockController.java new file mode 100644 index 00000000..51a9eab0 --- /dev/null +++ b/src/main/java/com/peanut/modules/book/controller/UserBookClockController.java @@ -0,0 +1,99 @@ +package com.peanut.modules.book.controller; + +import cn.hutool.core.date.DateUnit; +import cn.hutool.core.date.DateUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.TypeReference; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.peanut.common.utils.R; +import com.peanut.modules.book.entity.UserBookClockEntity; +import com.peanut.modules.book.service.UserBookClockService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.*; + +/** + * @Description: 用户打卡 Controller + * @Author: Cauchy + * @CreateTime: 2023/10/11 + */ +@Slf4j +@RequestMapping("/book/userClockIn") +public class UserBookClockController { + @Autowired + UserBookClockService userBookClockService; + + /** + * 计算打卡天数 + * + * @param bookId + * @param userId + * @return + */ + @RequestMapping(path = "/clockInDays", method = RequestMethod.GET) + public R clockInDays(@RequestParam("bookId") Integer bookId, + @RequestParam("userId") Integer userId) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("book_id", bookId); + queryWrapper.eq("user_id", userId); + UserBookClockEntity userBookClock = userBookClockService.getOne(queryWrapper); + if (userBookClock == null) { + return R.error("未获取到该用户的打卡信息"); + } + // 1. 获取打卡初始日期 + Date beginDate = userBookClock.getBeginDate(); + // 2. 获取打卡天数列表 + String clocksStr = userBookClock.getClocks(); + List clockInDayList = JSON.parseObject(clocksStr, new TypeReference>() { + }); + Map result = new HashMap<>(); + result.put("beginDate", beginDate); + result.put("clockInDayList", clockInDayList); + return R.ok(result); + } + + /** + * 用户打卡 + * + * @param bookId + * @param userId + * @return + */ + @RequestMapping(path = "/clockIn", method = RequestMethod.GET) + public R clockIn(@RequestParam("bookId") Integer bookId, @RequestParam("userId") Integer userId) { + // 查询是否有该用户打卡记录,如果没有,说明是第一天打卡 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("book_id", bookId); + queryWrapper.eq("user_id", userId); + UserBookClockEntity userBookClock = userBookClockService.getOne(queryWrapper); + // 第一天打卡 + if (userBookClock == null) { + UserBookClockEntity entity = new UserBookClockEntity(); + java.sql.Date beginDate = new java.sql.Date(new Date().getTime()); + List clockInDaysList = new ArrayList<>(); + clockInDaysList.add(1); + String clockInDaysListStr = JSON.toJSON(clockInDaysList).toString(); + entity.setBookId(bookId); + entity.setUserId(userId); + entity.setBeginDate(beginDate); + entity.setClocks(clockInDaysListStr); + userBookClockService.save(entity); + return R.ok("打卡成功"); + } + String clocksStr = userBookClock.getClocks(); + List clockInDaysList = JSON.parseObject(clocksStr, new TypeReference>() { + }); + Date beginDate = userBookClock.getBeginDate(); + Date today = new Date(); + long between = DateUtil.between(beginDate, today, DateUnit.DAY); + clockInDaysList.add((int) between); + String clockInDaysListStr = JSON.toJSON(clockInDaysList).toString(); + userBookClock.setClocks(clockInDaysListStr); + userBookClockService.updateById(userBookClock); + return R.ok("打卡成功"); + } +} diff --git a/src/main/java/com/peanut/modules/book/dao/BookClockEntryChatDao.java b/src/main/java/com/peanut/modules/book/dao/BookClockEntryChatDao.java index 43c572b9..c9a7d83f 100644 --- a/src/main/java/com/peanut/modules/book/dao/BookClockEntryChatDao.java +++ b/src/main/java/com/peanut/modules/book/dao/BookClockEntryChatDao.java @@ -1,9 +1,9 @@ package com.peanut.modules.book.dao; import com.github.yulichang.base.MPJBaseMapper; -import com.peanut.modules.book.entity.BookClockEntryChatEntity; +import com.peanut.modules.book.entity.BookClockInChatEntity; import org.apache.ibatis.annotations.Mapper; @Mapper -public interface BookClockEntryChatDao extends MPJBaseMapper { +public interface BookClockEntryChatDao extends MPJBaseMapper { } diff --git a/src/main/java/com/peanut/modules/book/dao/BookClockinDao.java b/src/main/java/com/peanut/modules/book/dao/BookClockinDao.java index 37b678a4..46e11221 100644 --- a/src/main/java/com/peanut/modules/book/dao/BookClockinDao.java +++ b/src/main/java/com/peanut/modules/book/dao/BookClockinDao.java @@ -1,12 +1,11 @@ package com.peanut.modules.book.dao; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.github.yulichang.base.MPJBaseMapper; -import com.peanut.modules.book.entity.BookClockinEntity; +import com.peanut.modules.book.entity.BookClockInEntity; import org.apache.ibatis.annotations.Mapper; @Mapper -public interface BookClockinDao extends MPJBaseMapper { +public interface BookClockinDao extends MPJBaseMapper { diff --git a/src/main/java/com/peanut/modules/book/entity/BookClockEntryChatEntity.java b/src/main/java/com/peanut/modules/book/entity/BookClockInChatEntity.java similarity index 86% rename from src/main/java/com/peanut/modules/book/entity/BookClockEntryChatEntity.java rename to src/main/java/com/peanut/modules/book/entity/BookClockInChatEntity.java index 2bf023a0..020ea5d8 100644 --- a/src/main/java/com/peanut/modules/book/entity/BookClockEntryChatEntity.java +++ b/src/main/java/com/peanut/modules/book/entity/BookClockInChatEntity.java @@ -2,11 +2,13 @@ package com.peanut.modules.book.entity; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; +import lombok.Data; import java.io.Serializable; import java.util.Date; -public class BookClockEntryChatEntity implements Serializable { +@Data +public class BookClockInChatEntity implements Serializable { private static final long serialVersionUID = 1L; @TableId diff --git a/src/main/java/com/peanut/modules/book/entity/BookClockinEntity.java b/src/main/java/com/peanut/modules/book/entity/BookClockInEntity.java similarity index 95% rename from src/main/java/com/peanut/modules/book/entity/BookClockinEntity.java rename to src/main/java/com/peanut/modules/book/entity/BookClockInEntity.java index 15de2c29..3d4e7c82 100644 --- a/src/main/java/com/peanut/modules/book/entity/BookClockinEntity.java +++ b/src/main/java/com/peanut/modules/book/entity/BookClockInEntity.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.annotation.*; import lombok.Data; import java.io.Serializable; -import java.util.ArrayList; import java.util.Date; /** @@ -16,7 +15,7 @@ import java.util.Date; */ @Data @TableName("book_clockin") -public class BookClockinEntity implements Serializable { +public class BookClockInEntity implements Serializable { diff --git a/src/main/java/com/peanut/modules/book/entity/UserBookClockEntity.java b/src/main/java/com/peanut/modules/book/entity/UserBookClockEntity.java index a3bf0c34..c5fae6fc 100644 --- a/src/main/java/com/peanut/modules/book/entity/UserBookClockEntity.java +++ b/src/main/java/com/peanut/modules/book/entity/UserBookClockEntity.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.io.Serializable; -import java.sql.Date; +import java.util.Date; @Data @TableName("user_book_clock") diff --git a/src/main/java/com/peanut/modules/book/service/BookClockEntryChatService.java b/src/main/java/com/peanut/modules/book/service/BookClockEntryChatService.java index c91fa49e..d6eb3352 100644 --- a/src/main/java/com/peanut/modules/book/service/BookClockEntryChatService.java +++ b/src/main/java/com/peanut/modules/book/service/BookClockEntryChatService.java @@ -1,7 +1,7 @@ package com.peanut.modules.book.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.peanut.modules.book.entity.BookClockEntryChatEntity; +import com.peanut.modules.book.entity.BookClockInChatEntity; -public interface BookClockEntryChatService extends IService { +public interface BookClockEntryChatService extends IService { } diff --git a/src/main/java/com/peanut/modules/book/service/BookClockinPunchService.java b/src/main/java/com/peanut/modules/book/service/BookClockinPunchService.java index e0766f34..dbd140d5 100644 --- a/src/main/java/com/peanut/modules/book/service/BookClockinPunchService.java +++ b/src/main/java/com/peanut/modules/book/service/BookClockinPunchService.java @@ -3,7 +3,6 @@ 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.BookClockinEntity; import com.peanut.modules.book.entity.BookClockinPunchEntity; import java.util.Map; diff --git a/src/main/java/com/peanut/modules/book/service/BookClockinService.java b/src/main/java/com/peanut/modules/book/service/BookClockinService.java index fe9a9e18..051b092f 100644 --- a/src/main/java/com/peanut/modules/book/service/BookClockinService.java +++ b/src/main/java/com/peanut/modules/book/service/BookClockinService.java @@ -2,11 +2,11 @@ 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.BookClockinEntity; +import com.peanut.modules.book.entity.BookClockInEntity; import java.util.Map; -public interface BookClockinService extends IService { +public interface BookClockinService extends IService { PageUtils queryPage(Map params); diff --git a/src/main/java/com/peanut/modules/book/service/impl/BookClockEntryChatImpl.java b/src/main/java/com/peanut/modules/book/service/impl/BookClockEntryChatImpl.java index b9429070..85c51fc6 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/BookClockEntryChatImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/BookClockEntryChatImpl.java @@ -2,10 +2,10 @@ package com.peanut.modules.book.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.peanut.modules.book.dao.BookClockEntryChatDao; -import com.peanut.modules.book.entity.BookClockEntryChatEntity; +import com.peanut.modules.book.entity.BookClockInChatEntity; import com.peanut.modules.book.service.BookClockEntryChatService; import org.springframework.stereotype.Service; @Service("bookClockEntryChatService") -public class BookClockEntryChatImpl extends ServiceImpl implements BookClockEntryChatService { +public class BookClockEntryChatImpl extends ServiceImpl implements BookClockEntryChatService { } diff --git a/src/main/java/com/peanut/modules/book/service/impl/BookClockinCommentServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/BookClockinCommentServiceImpl.java index a8345696..14024d93 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/BookClockinCommentServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/BookClockinCommentServiceImpl.java @@ -7,7 +7,6 @@ import com.peanut.common.utils.PageUtils; import com.peanut.common.utils.Query; import com.peanut.modules.book.dao.BookClockinCommentDao; import com.peanut.modules.book.entity.BookClockinCommentEntity; -import com.peanut.modules.book.entity.BookClockinEntity; import com.peanut.modules.book.service.BookClockinCommentService; import org.springframework.stereotype.Service; diff --git a/src/main/java/com/peanut/modules/book/service/impl/BookClockinServiceImpl.java b/src/main/java/com/peanut/modules/book/service/impl/BookClockinServiceImpl.java index 69535375..b28426d3 100644 --- a/src/main/java/com/peanut/modules/book/service/impl/BookClockinServiceImpl.java +++ b/src/main/java/com/peanut/modules/book/service/impl/BookClockinServiceImpl.java @@ -6,23 +6,23 @@ 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.BookClockinDao; -import com.peanut.modules.book.entity.BookClockinEntity; +import com.peanut.modules.book.entity.BookClockInEntity; import com.peanut.modules.book.service.BookClockinService; import org.springframework.stereotype.Service; import java.util.Map; @Service -public class BookClockinServiceImpl extends ServiceImpl implements BookClockinService { +public class BookClockinServiceImpl extends ServiceImpl implements BookClockinService { @Override public PageUtils queryPage(Map params) { Object book =params.get("bookid"); Object taskid = params.get("taskid"); - IPage page = this.page( - new Query().getPage(params), - new QueryWrapper() + IPage page = this.page( + new Query().getPage(params), + new QueryWrapper() .eq("book_id",book) .eq("task_id",taskid) .orderByDesc("create_time") @@ -34,9 +34,9 @@ public class BookClockinServiceImpl extends ServiceImpl params) { - IPage page = this.page( - new Query().getPage(params), - new QueryWrapper() + IPage page = this.page( + new Query().getPage(params), + new QueryWrapper() ); return new PageUtils(page); diff --git a/src/main/java/com/peanut/modules/mq/Consumer/OrderCancelConsumer.java b/src/main/java/com/peanut/modules/mq/Consumer/OrderCancelConsumer.java index eee5205c..36c6869e 100644 --- a/src/main/java/com/peanut/modules/mq/Consumer/OrderCancelConsumer.java +++ b/src/main/java/com/peanut/modules/mq/Consumer/OrderCancelConsumer.java @@ -15,6 +15,7 @@ import org.springframework.stereotype.Component; */ @Component public class OrderCancelConsumer { + @Autowired BuyOrderService buyOrderService; diff --git a/src/main/resources/mapper/book/BookClockinDao.xml b/src/main/resources/mapper/book/BookClockinDao.xml index ac0ff659..3f4a0aa3 100644 --- a/src/main/resources/mapper/book/BookClockinDao.xml +++ b/src/main/resources/mapper/book/BookClockinDao.xml @@ -8,7 +8,7 @@ - + diff --git a/src/main/resources/weChatConfig.properties b/src/main/resources/weChatConfig.properties index f936951a..304f4f5f 100644 --- a/src/main/resources/weChatConfig.properties +++ b/src/main/resources/weChatConfig.properties @@ -1,27 +1,27 @@ # APP ID wxpay.appId:wx47134a8f15083734 -# ?? ID +# \u5546\u6237 ID wxpay.mchId:1612860909 -# ?? URL +# \u652F\u4ED8 URL wxpay.payUrl:https://api.mch.weixin.qq.com/v3/pay/transactions/app -# ???? +# \u901A\u77E5\u56DE\u8C03 URL wxpay.notifyUrl:https://testapi.nuttyreading.com/pay/payNotify -# ?? url +# \u9000\u6B3E URL wxpay.refundNotifyUrl:http://pjm6m9.natappfree.cc/pay/refundNotify # key pem -wxpay.keyPemPath:/usr/local/hs/peanut_book/target/classes/cent/apiclient_key.pem -#wxpay.keyPemPath:C:/Users/Cauchy/IdeaProjects/nuttyreading-java/src/main/resources/cent/apiclient_key.pem +#wxpay.keyPemPath:/usr/local/hs/peanut_book/target/classes/cent/apiclient_key.pem +wxpay.keyPemPath:C:/Users/Cauchy/IdeaProjects/nuttyreading-java/src/main/resources/cent/apiclient_key.pem #wxpay.keyPemPath:D:/hs/nuttyreading-java/src/main/resources/cent/apiclient_key.pem #wxpay.keyPemPath:/usr/local/hs/peanut_book/target/classes/cent/apiclient_key.pem -# ??? +# \u5546\u6237\u5E8F\u5217\u53F7 wxpay.serialNo:679AECB2F7AC4183033F713828892BA640E4EEE3 # API v3 key wxpay.apiV3Key:4aYFklzaULeGlr7oJPZ6rHWKcxjihZUF -# ???? -wxpay.wechatPayCertificateUrl:/usr/local/hs/peanut_book/target/classes/cent/wechatpay_7B5676E3CDF56680D0414A009CE501C844DBE2D6.pem -# wxpay.wechatPayCertificateUrl:C:/Users/Cauchy/IdeaProjects/nuttyreading-java/src/main/resources/cent/wechatpay_7B5676E3CDF56680D0414A009CE501C844DBE2D6.pem +# \u8BC1\u4E66 +#wxpay.wechatPayCertificateUrl:/usr/local/hs/peanut_book/target/classes/cent/wechatpay_7B5676E3CDF56680D0414A009CE501C844DBE2D6.pem +wxpay.wechatPayCertificateUrl:C:/Users/Cauchy/IdeaProjects/nuttyreading-java/src/main/resources/cent/wechatpay_7B5676E3CDF56680D0414A009CE501C844DBE2D6.pem # wxpay.wechatPayCertificateUrl:D:/hs/nuttyreading-java/src/main/resources/cent/wechatpay_7B5676E3CDF56680D0414A009CE501C844DBE2D6.pem -# ?? url -wxpay.privateKeyUrl:/usr/local/hs/peanut_book/target/classes/cent/apiclient_key.pem -#wxpay.privateKeyUrl:C:/Users/Cauchy/IdeaProjects/nuttyreading-java/src/main/resources/cent/apiclient_key.pem +# \u5BC6\u94A5 +#wxpay.privateKeyUrl:/usr/local/hs/peanut_book/target/classes/cent/apiclient_key.pem +wxpay.privateKeyUrl:C:/Users/Cauchy/IdeaProjects/nuttyreading-java/src/main/resources/cent/apiclient_key.pem #wxpay.privateKeyUrl:D:/hs/nuttyreading-java/src/main/resources/cent/apiclient_key.pem