From 58b543011590506c9f6e6b175065519d3c471c4a Mon Sep 17 00:00:00 2001 From: zlg <482370576@qq.com> Date: Sat, 20 Jul 2024 14:42:21 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20mq=EF=BC=8C=E8=AF=84=E8=AE=BA=EF=BC=8C?= =?UTF-8?q?=E5=88=86=E4=BA=AB=E7=82=B9=E8=B5=9E=EF=BC=8Cview=E7=AD=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...SchisandraShareCommentReplyController.java | 36 +++++----- .../SchisandraShareDetailController.java | 53 +++++++++++++++ ...chisandraUserLikesCommentDTOConverter.java | 25 +++++++ ...SchisandraUserLikesDetailDTOConverter.java | 25 +++++++ .../dto/SchisandraUserLikesCommentDTO.java | 39 +++++++++++ .../dto/SchisandraUserLikesDetailDTO.java | 39 +++++++++++ .../mq/comment/CommentLikesConsumer.java | 18 ++--- .../share/mq/comment/DetailLikesConsumer.java | 32 +++++++++ .../bo/SchisandraUserLikesCommentBO.java | 39 +++++++++++ .../bo/SchisandraUserLikesDetailBO.java | 38 +++++++++++ ...SchisandraUserLikesCommentBOConverter.java | 22 ++++++ .../SchisandraUserLikesDetailBOConverter.java | 22 ++++++ .../SchisandraShareDetailDomainService.java | 2 + ...hisandraUserLikesCommentDomainService.java | 28 ++++++++ ...chisandraUserLikesDetailDomainService.java | 28 ++++++++ ...chisandraShareDetailDomainServiceImpl.java | 9 +++ ...ndraUserLikesCommentDomainServiceImpl.java | 48 +++++++++++++ ...andraUserLikesDetailDomainServiceImpl.java | 48 +++++++++++++ .../dao/SchisandraUserLikesCommentDao.java | 17 +++++ .../dao/SchisandraUserLikesDetailDao.java | 17 +++++ .../entity/SchisandraUserLikesComment.java | 47 +++++++++++++ .../entity/SchisandraUserLikesDetail.java | 47 +++++++++++++ .../service/SchisandraShareDetailService.java | 3 + .../SchisandraUserLikesCommentService.java | 46 +++++++++++++ .../SchisandraUserLikesDetailService.java | 46 +++++++++++++ .../SchisandraShareDetailServiceImpl.java | 18 +++++ ...SchisandraUserLikesCommentServiceImpl.java | 67 +++++++++++++++++++ .../SchisandraUserLikesDetailServiceImpl.java | 67 +++++++++++++++++++ .../mapper/SchisandraUserLikesCommentDao.xml | 12 ++++ .../mapper/SchisandraUserLikesDetailDao.xml | 12 ++++ 30 files changed, 927 insertions(+), 23 deletions(-) create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/convert/SchisandraUserLikesCommentDTOConverter.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/convert/SchisandraUserLikesDetailDTOConverter.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/dto/SchisandraUserLikesCommentDTO.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/dto/SchisandraUserLikesDetailDTO.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-mq/src/main/java/com/schisandra/share/mq/comment/DetailLikesConsumer.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/bo/SchisandraUserLikesCommentBO.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/bo/SchisandraUserLikesDetailBO.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/convert/SchisandraUserLikesCommentBOConverter.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/convert/SchisandraUserLikesDetailBOConverter.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraUserLikesCommentDomainService.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraUserLikesDetailDomainService.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraUserLikesCommentDomainServiceImpl.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraUserLikesDetailDomainServiceImpl.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/dao/SchisandraUserLikesCommentDao.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/dao/SchisandraUserLikesDetailDao.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/entity/SchisandraUserLikesComment.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/entity/SchisandraUserLikesDetail.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraUserLikesCommentService.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraUserLikesDetailService.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraUserLikesCommentServiceImpl.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraUserLikesDetailServiceImpl.java create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/resources/mapper/SchisandraUserLikesCommentDao.xml create mode 100644 schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/resources/mapper/SchisandraUserLikesDetailDao.xml diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareCommentReplyController.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareCommentReplyController.java index cb986a3..22ab912 100644 --- a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareCommentReplyController.java +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareCommentReplyController.java @@ -4,10 +4,13 @@ import com.alibaba.fastjson.JSON; import com.google.common.base.Preconditions; import com.google.gson.Gson; import com.schisandra.share.application.convert.SchisandraShareCommentReplyDTOConverter; +import com.schisandra.share.application.convert.SchisandraUserLikesCommentDTOConverter; import com.schisandra.share.application.dto.SchisandraShareCommentReplyDTO; +import com.schisandra.share.application.dto.SchisandraUserLikesCommentDTO; import com.schisandra.share.common.entity.Result; import com.schisandra.share.common.utils.CaffeineUtil; import com.schisandra.share.domain.bo.SchisandraShareCommentReplyBO; +import com.schisandra.share.domain.bo.SchisandraUserLikesCommentBO; import com.schisandra.share.domain.service.SchisandraShareCommentReplyDomainService; import lombok.extern.slf4j.Slf4j; import org.apache.rocketmq.client.producer.SendCallback; @@ -43,15 +46,19 @@ public class SchisandraShareCommentReplyController { CaffeineUtil caffeineUtil; @Resource private SchisandraShareCommentReplyDomainService schisandraShareCommentReplyDomainService; - + /** + * @description: 点赞 + * @param: [schisandraUserLikesCommentDTO] + * @return: void + * @author zlg + * @date: 2024/7/20 14:39 + */ @GetMapping("addlike") - public void addLike(@RequestParam String Id) { - HashMap map = new HashMap<>(); - map.put("Id", Id); - map.put("like", true); - Gson gson = new Gson(); - String message = gson.toJson(map); - rocketMQTemplate.asyncSend("CommentLikes-topic", message, new SendCallback() { + public void addLike(@RequestParam SchisandraUserLikesCommentDTO schisandraUserLikesCommentDTO) { + Preconditions.checkNotNull(schisandraUserLikesCommentDTO); + SchisandraUserLikesCommentBO schisandraUserLikesCommentBO=SchisandraUserLikesCommentDTOConverter.INSTANCE.convertDTOToBO(schisandraUserLikesCommentDTO); + schisandraUserLikesCommentBO.setLike(true); + rocketMQTemplate.asyncSend("CommentLikes-topic", schisandraUserLikesCommentBO, new SendCallback() { @Override public void onSuccess(SendResult sendResult) { System.out.println(sendResult); @@ -66,13 +73,12 @@ public class SchisandraShareCommentReplyController { } @GetMapping("dellike") - public void delLike(String Id) { - HashMap map = new HashMap<>(); - map.put("Id", Id); - map.put("like", false); - Gson gson = new Gson(); - String message = gson.toJson(map); - rocketMQTemplate.asyncSend("CommentLikes-topic", message, new SendCallback() { + public void delLike( @RequestParam SchisandraUserLikesCommentDTO schisandraUserLikesCommentDTO) { + + Preconditions.checkNotNull(schisandraUserLikesCommentDTO); + SchisandraUserLikesCommentBO schisandraUserLikesCommentBO=SchisandraUserLikesCommentDTOConverter.INSTANCE.convertDTOToBO(schisandraUserLikesCommentDTO); + schisandraUserLikesCommentBO.setLike(false); + rocketMQTemplate.asyncSend("CommentLikes-topic", schisandraUserLikesCommentBO, new SendCallback() { @Override public void onSuccess(SendResult sendResult) { System.out.println(sendResult); diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareDetailController.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareDetailController.java index d298fb3..ea35239 100644 --- a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareDetailController.java +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareDetailController.java @@ -4,10 +4,16 @@ import com.alibaba.fastjson.JSON; import com.google.common.base.Preconditions; import com.google.gson.Gson; import com.schisandra.share.application.convert.SchisandraShareDetailDTOConverter; +import com.schisandra.share.application.convert.SchisandraUserLikesCommentDTOConverter; +import com.schisandra.share.application.convert.SchisandraUserLikesDetailDTOConverter; import com.schisandra.share.application.dto.SchisandraShareDetailDTO; +import com.schisandra.share.application.dto.SchisandraUserLikesCommentDTO; +import com.schisandra.share.application.dto.SchisandraUserLikesDetailDTO; import com.schisandra.share.common.entity.Result; import com.schisandra.share.common.utils.CaffeineUtil; import com.schisandra.share.domain.bo.SchisandraShareDetailBO; +import com.schisandra.share.domain.bo.SchisandraUserLikesCommentBO; +import com.schisandra.share.domain.bo.SchisandraUserLikesDetailBO; import com.schisandra.share.domain.service.SchisandraShareDetailDomainService; import lombok.extern.slf4j.Slf4j; import org.apache.rocketmq.client.producer.SendCallback; @@ -38,6 +44,53 @@ public class SchisandraShareDetailController { @Resource CaffeineUtil caffeineUtil; + + + /** + * @description: 点赞 + * @param: [schisandraUserLikesDetailDTO] + * @return: void + * @author zlg + * @date: 2024/7/20 14:38 + */ + @GetMapping("addlike") + public void addLike(@RequestParam SchisandraUserLikesDetailDTO schisandraUserLikesDetailDTO) { + Preconditions.checkNotNull(schisandraUserLikesDetailDTO); + SchisandraUserLikesDetailBO schisandraUserLikesDetailBO= SchisandraUserLikesDetailDTOConverter.INSTANCE.convertDTOToBO(schisandraUserLikesDetailDTO); + schisandraUserLikesDetailBO.setLike(true); + rocketMQTemplate.asyncSend("DetailLikes-topic", schisandraUserLikesDetailBO, new SendCallback() { + @Override + public void onSuccess(SendResult sendResult) { + System.out.println(sendResult); + } + + @Override + public void onException(Throwable e) { + e.printStackTrace(); + } + } + ); + } + + @GetMapping("dellike") + public void delLike( @RequestParam SchisandraUserLikesDetailDTO schisandraUserLikesDetailDTO) { + Preconditions.checkNotNull(schisandraUserLikesDetailDTO); + SchisandraUserLikesDetailBO schisandraUserLikesDetailBO= SchisandraUserLikesDetailDTOConverter.INSTANCE.convertDTOToBO(schisandraUserLikesDetailDTO); + schisandraUserLikesDetailBO.setLike(false); + rocketMQTemplate.asyncSend("DetailLikes-topic", schisandraUserLikesDetailBO, new SendCallback() { + @Override + public void onSuccess(SendResult sendResult) { + System.out.println(sendResult); + } + @Override + public void onException(Throwable e) { + e.printStackTrace(); + } + } + ); + + } + /** * 返回评论回复总数 * diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/convert/SchisandraUserLikesCommentDTOConverter.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/convert/SchisandraUserLikesCommentDTOConverter.java new file mode 100644 index 0000000..9a88638 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/convert/SchisandraUserLikesCommentDTOConverter.java @@ -0,0 +1,25 @@ +package com.schisandra.share.application.convert; + +import com.schisandra.share.application.dto.SchisandraUserLikesCommentDTO; +import com.schisandra.share.domain.bo.SchisandraUserLikesCommentBO; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +import java.util.List; + +/** + * 评论点赞表 dto转换器 + * + * @author zlg + * @since 2024-07-20 14:11:01 + */ +@Mapper +public interface SchisandraUserLikesCommentDTOConverter { + + SchisandraUserLikesCommentDTOConverter INSTANCE = Mappers.getMapper(SchisandraUserLikesCommentDTOConverter.class); + + SchisandraUserLikesCommentBO convertDTOToBO(SchisandraUserLikesCommentDTO schisandraUserLikesCommentDTO); + SchisandraUserLikesCommentDTO convertBOToDTO(SchisandraUserLikesCommentBO schisandraUserLikesCommentBO); + List convertBOToDTOList(List schisandraUserLikesCommentBOList); + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/convert/SchisandraUserLikesDetailDTOConverter.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/convert/SchisandraUserLikesDetailDTOConverter.java new file mode 100644 index 0000000..635883f --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/convert/SchisandraUserLikesDetailDTOConverter.java @@ -0,0 +1,25 @@ +package com.schisandra.share.application.convert; + +import com.schisandra.share.application.dto.SchisandraUserLikesDetailDTO; +import com.schisandra.share.domain.bo.SchisandraUserLikesDetailBO; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +import java.util.List; + +/** + * 分享详情点赞表 dto转换器 + * + * @author zlg + * @since 2024-07-20 14:12:42 + */ +@Mapper +public interface SchisandraUserLikesDetailDTOConverter { + + SchisandraUserLikesDetailDTOConverter INSTANCE = Mappers.getMapper(SchisandraUserLikesDetailDTOConverter.class); + + SchisandraUserLikesDetailBO convertDTOToBO(SchisandraUserLikesDetailDTO schisandraUserLikesDetailDTO); + SchisandraUserLikesDetailDTO convertBOToDTO(SchisandraUserLikesDetailBO schisandraUserLikesDetailBO); + List convertBOToDTOList(List schisandraUserLikesDetailBOList); + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/dto/SchisandraUserLikesCommentDTO.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/dto/SchisandraUserLikesCommentDTO.java new file mode 100644 index 0000000..0058cf5 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/dto/SchisandraUserLikesCommentDTO.java @@ -0,0 +1,39 @@ +package com.schisandra.share.application.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * 评论点赞表 dto + * + * @author zlg + * @since 2024-07-20 14:11:01 + */ +@Data +public class SchisandraUserLikesCommentDTO implements Serializable { + + private Boolean like; + /** + * + */ + private String id; + + /** + * + */ + private String userId; + + /** + * + */ + private String commentId; + + /** + * 是否删除 0 未删除 1已删除 + */ + private Integer isDeleted; + +} + diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/dto/SchisandraUserLikesDetailDTO.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/dto/SchisandraUserLikesDetailDTO.java new file mode 100644 index 0000000..67bef45 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/dto/SchisandraUserLikesDetailDTO.java @@ -0,0 +1,39 @@ +package com.schisandra.share.application.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * 分享详情点赞表 dto + * + * @author zlg + * @since 2024-07-20 14:12:42 + */ +@Data +public class SchisandraUserLikesDetailDTO implements Serializable { + private Boolean like; + + /** + * + */ + private String id; + + /** + * + */ + private String userId; + + /** + * + */ + private String detailId; + + /** + * + */ + private Integer isDeleted; + +} + diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-mq/src/main/java/com/schisandra/share/mq/comment/CommentLikesConsumer.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-mq/src/main/java/com/schisandra/share/mq/comment/CommentLikesConsumer.java index 3dc5da5..04e30e1 100644 --- a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-mq/src/main/java/com/schisandra/share/mq/comment/CommentLikesConsumer.java +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-mq/src/main/java/com/schisandra/share/mq/comment/CommentLikesConsumer.java @@ -2,7 +2,9 @@ package com.schisandra.share.mq.comment; import com.google.gson.Gson; +import com.schisandra.share.domain.bo.SchisandraUserLikesCommentBO; import com.schisandra.share.domain.service.SchisandraShareCommentReplyDomainService; +import com.schisandra.share.domain.service.SchisandraUserLikesCommentDomainService; import lombok.extern.slf4j.Slf4j; import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; import org.apache.rocketmq.spring.core.RocketMQListener; @@ -15,19 +17,19 @@ import java.util.HashMap; @RocketMQMessageListener(topic = "CommentLikes-topic", consumerGroup = "schisandra-cloud-storage-CommentLikes-consumer-group") @Slf4j @Component -public class CommentLikesConsumer implements RocketMQListener { +public class CommentLikesConsumer implements RocketMQListener { @Resource SchisandraShareCommentReplyDomainService schisandraShareCommentReplyDomainService; + @Resource + SchisandraUserLikesCommentDomainService schisandraUserLikesCommentDomainService; @Override - public void onMessage(String message) { - Gson gson = new Gson(); - HashMap map = gson.fromJson(message, HashMap.class); - log.info("收到消息:{}", map); - String id = (String) map.get("Id"); - Boolean likes = (Boolean) map.get("like"); + public void onMessage(SchisandraUserLikesCommentBO message) { + log.info("收到消息:{}", message); + String id = message.getCommentId(); + Boolean likes = message.getLike(); schisandraShareCommentReplyDomainService.updateCommentsLikes(id, likes); - + schisandraUserLikesCommentDomainService.add(message); } diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-mq/src/main/java/com/schisandra/share/mq/comment/DetailLikesConsumer.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-mq/src/main/java/com/schisandra/share/mq/comment/DetailLikesConsumer.java new file mode 100644 index 0000000..583b45c --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-mq/src/main/java/com/schisandra/share/mq/comment/DetailLikesConsumer.java @@ -0,0 +1,32 @@ +package com.schisandra.share.mq.comment; + +import com.google.gson.Gson; +import com.schisandra.share.domain.bo.SchisandraUserLikesCommentBO; +import com.schisandra.share.domain.bo.SchisandraUserLikesDetailBO; +import com.schisandra.share.domain.service.SchisandraShareDetailDomainService; +import com.schisandra.share.domain.service.SchisandraUserLikesDetailDomainService; +import lombok.extern.slf4j.Slf4j; +import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; +import org.apache.rocketmq.spring.core.RocketMQListener; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; +import java.util.HashMap; + +@RocketMQMessageListener(topic = "DetailLikes-topic", consumerGroup = "schisandra-cloud-storage-DetailLikes-consumer-group") +@Slf4j +@Component +public class DetailLikesConsumer implements RocketMQListener { + @Resource + SchisandraShareDetailDomainService schisandraShareDetailDomainService; + @Resource + SchisandraUserLikesDetailDomainService schisandraUserLikesDetailDomainService; + @Override + public void onMessage(SchisandraUserLikesDetailBO message) { + log.info("收到消息:{}", message); + String id = message.getDetailId(); + Boolean likes = message.getLike(); + schisandraShareDetailDomainService.updateDetailLikes(id, likes); + schisandraUserLikesDetailDomainService.add(message); + } +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/bo/SchisandraUserLikesCommentBO.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/bo/SchisandraUserLikesCommentBO.java new file mode 100644 index 0000000..3a6e717 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/bo/SchisandraUserLikesCommentBO.java @@ -0,0 +1,39 @@ +package com.schisandra.share.domain.bo; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; +/** + * 评论点赞表 bo + * + * @author zlg + * @since 2024-07-20 14:11:01 + */ +@Data +public class SchisandraUserLikesCommentBO implements Serializable { + + private Boolean like; + + /** + * + */ + private String id; + + /** + * + */ + private String userId; + + /** + * + */ + private String commentId; + + /** + * 是否删除 0 未删除 1已删除 + */ + private Integer isDeleted; + +} + diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/bo/SchisandraUserLikesDetailBO.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/bo/SchisandraUserLikesDetailBO.java new file mode 100644 index 0000000..c92e8c0 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/bo/SchisandraUserLikesDetailBO.java @@ -0,0 +1,38 @@ +package com.schisandra.share.domain.bo; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; +/** + * 分享详情点赞表 bo + * + * @author zlg + * @since 2024-07-20 14:12:42 + */ +@Data +public class SchisandraUserLikesDetailBO implements Serializable { + + private Boolean like; + /** + * + */ + private String id; + + /** + * + */ + private String userId; + + /** + * + */ + private String detailId; + + /** + * + */ + private Integer isDeleted; + +} + diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/convert/SchisandraUserLikesCommentBOConverter.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/convert/SchisandraUserLikesCommentBOConverter.java new file mode 100644 index 0000000..ffe85c7 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/convert/SchisandraUserLikesCommentBOConverter.java @@ -0,0 +1,22 @@ +package com.schisandra.share.domain.convert; + +import com.schisandra.share.domain.bo.SchisandraUserLikesCommentBO; +import com.schisandra.share.infra.basic.entity.SchisandraUserLikesComment; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +/** + * 评论点赞表 bo转换器 + * + * @author zlg + * @since 2024-07-20 14:11:01 + */ +@Mapper +public interface SchisandraUserLikesCommentBOConverter { + + SchisandraUserLikesCommentBOConverter INSTANCE = Mappers.getMapper(SchisandraUserLikesCommentBOConverter.class); + + SchisandraUserLikesComment convertBOToEntity(SchisandraUserLikesCommentBO schisandraUserLikesCommentBO); + SchisandraUserLikesCommentBO convertEntityToBO(SchisandraUserLikesComment schisandraUserLikesComment); + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/convert/SchisandraUserLikesDetailBOConverter.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/convert/SchisandraUserLikesDetailBOConverter.java new file mode 100644 index 0000000..925df4f --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/convert/SchisandraUserLikesDetailBOConverter.java @@ -0,0 +1,22 @@ +package com.schisandra.share.domain.convert; + +import com.schisandra.share.domain.bo.SchisandraUserLikesDetailBO; +import com.schisandra.share.infra.basic.entity.SchisandraUserLikesDetail; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +/** + * 分享详情点赞表 bo转换器 + * + * @author zlg + * @since 2024-07-20 14:12:42 + */ +@Mapper +public interface SchisandraUserLikesDetailBOConverter { + + SchisandraUserLikesDetailBOConverter INSTANCE = Mappers.getMapper(SchisandraUserLikesDetailBOConverter.class); + + SchisandraUserLikesDetail convertBOToEntity(SchisandraUserLikesDetailBO schisandraUserLikesDetailBO); + SchisandraUserLikesDetailBO convertEntityToBO(SchisandraUserLikesDetail schisandraUserLikesDetail); + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraShareDetailDomainService.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraShareDetailDomainService.java index d6d3914..299478e 100644 --- a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraShareDetailDomainService.java +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraShareDetailDomainService.java @@ -37,4 +37,6 @@ public interface SchisandraShareDetailDomainService { Boolean updateCommentsLikes(String id,Boolean isReply); Boolean updateDetailViews(String id,Boolean isView); + + Boolean updateDetailLikes(String id,Boolean isLike); } diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraUserLikesCommentDomainService.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraUserLikesCommentDomainService.java new file mode 100644 index 0000000..7060d1d --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraUserLikesCommentDomainService.java @@ -0,0 +1,28 @@ +package com.schisandra.share.domain.service; + +import com.schisandra.share.domain.bo.SchisandraUserLikesCommentBO; + +/** + * 评论点赞表 领域service + * + * @author zlg + * @since 2024-07-20 14:11:01 + */ +public interface SchisandraUserLikesCommentDomainService { + + /** + * 添加 评论点赞表 信息 + */ + Boolean add(SchisandraUserLikesCommentBO schisandraUserLikesCommentBO); + + /** + * 更新 评论点赞表 信息 + */ + Boolean update(SchisandraUserLikesCommentBO schisandraUserLikesCommentBO); + + /** + * 删除 评论点赞表 信息 + */ + Boolean delete(SchisandraUserLikesCommentBO schisandraUserLikesCommentBO); + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraUserLikesDetailDomainService.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraUserLikesDetailDomainService.java new file mode 100644 index 0000000..5d1a56a --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/SchisandraUserLikesDetailDomainService.java @@ -0,0 +1,28 @@ +package com.schisandra.share.domain.service; + +import com.schisandra.share.domain.bo.SchisandraUserLikesDetailBO; + +/** + * 分享详情点赞表 领域service + * + * @author zlg + * @since 2024-07-20 14:12:42 + */ +public interface SchisandraUserLikesDetailDomainService { + + /** + * 添加 分享详情点赞表 信息 + */ + Boolean add(SchisandraUserLikesDetailBO schisandraUserLikesDetailBO); + + /** + * 更新 分享详情点赞表 信息 + */ + Boolean update(SchisandraUserLikesDetailBO schisandraUserLikesDetailBO); + + /** + * 删除 分享详情点赞表 信息 + */ + Boolean delete(SchisandraUserLikesDetailBO schisandraUserLikesDetailBO); + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraShareDetailDomainServiceImpl.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraShareDetailDomainServiceImpl.java index 6cce0bc..bdfcf38 100644 --- a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraShareDetailDomainServiceImpl.java +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraShareDetailDomainServiceImpl.java @@ -199,4 +199,13 @@ public class SchisandraShareDetailDomainServiceImpl implements SchisandraShareDe return schisandraShareDetailService.delDetailViews(id) > 0; } } + + @Override + public Boolean updateDetailLikes(String id, Boolean isLike) { + if (isLike) { + return schisandraShareDetailService.addDetailLike(id) > 0; + } else { + return schisandraShareDetailService.delDetailLike(id) > 0; + } + } } diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraUserLikesCommentDomainServiceImpl.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraUserLikesCommentDomainServiceImpl.java new file mode 100644 index 0000000..ea6daa2 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraUserLikesCommentDomainServiceImpl.java @@ -0,0 +1,48 @@ +package com.schisandra.share.domain.service.impl; + +import com.schisandra.share.common.enums.IsDeletedFlagEnum; +import com.schisandra.share.domain.convert.SchisandraUserLikesCommentBOConverter; +import com.schisandra.share.domain.bo.SchisandraUserLikesCommentBO; +import com.schisandra.share.domain.service.SchisandraUserLikesCommentDomainService; +import com.schisandra.share.infra.basic.entity.SchisandraUserLikesComment; +import com.schisandra.share.infra.basic.service.SchisandraUserLikesCommentService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +/** + * 评论点赞表 领域service实现了 + * + * @author zlg + * @since 2024-07-20 14:11:01 + */ +@Service +@Slf4j +public class SchisandraUserLikesCommentDomainServiceImpl implements SchisandraUserLikesCommentDomainService { + + @Resource + private SchisandraUserLikesCommentService schisandraUserLikesCommentService; + + @Override + public Boolean add(SchisandraUserLikesCommentBO schisandraUserLikesCommentBO) { + SchisandraUserLikesComment schisandraUserLikesComment = SchisandraUserLikesCommentBOConverter.INSTANCE.convertBOToEntity(schisandraUserLikesCommentBO); + schisandraUserLikesComment.setIsDeleted(IsDeletedFlagEnum.UN_DELETED.getCode()); + return schisandraUserLikesCommentService.insert(schisandraUserLikesComment) > 0; + } + + @Override + public Boolean update(SchisandraUserLikesCommentBO schisandraUserLikesCommentBO) { + SchisandraUserLikesComment schisandraUserLikesComment = SchisandraUserLikesCommentBOConverter.INSTANCE.convertBOToEntity(schisandraUserLikesCommentBO); + return schisandraUserLikesCommentService.update(schisandraUserLikesComment) > 0; + } + + @Override + public Boolean delete(SchisandraUserLikesCommentBO schisandraUserLikesCommentBO) { + SchisandraUserLikesComment schisandraUserLikesComment = new SchisandraUserLikesComment(); + schisandraUserLikesComment.setId(schisandraUserLikesCommentBO.getId()); + schisandraUserLikesComment.setIsDeleted(IsDeletedFlagEnum.DELETED.getCode()); + return schisandraUserLikesCommentService.update(schisandraUserLikesComment) > 0; + } + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraUserLikesDetailDomainServiceImpl.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraUserLikesDetailDomainServiceImpl.java new file mode 100644 index 0000000..78539f7 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-domain/src/main/java/com/schisandra/share/domain/service/impl/SchisandraUserLikesDetailDomainServiceImpl.java @@ -0,0 +1,48 @@ +package com.schisandra.share.domain.service.impl; + +import com.schisandra.share.common.enums.IsDeletedFlagEnum; +import com.schisandra.share.domain.convert.SchisandraUserLikesDetailBOConverter; +import com.schisandra.share.domain.bo.SchisandraUserLikesDetailBO; +import com.schisandra.share.domain.service.SchisandraUserLikesDetailDomainService; +import com.schisandra.share.infra.basic.entity.SchisandraUserLikesDetail; +import com.schisandra.share.infra.basic.service.SchisandraUserLikesDetailService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +/** + * 分享详情点赞表 领域service实现了 + * + * @author zlg + * @since 2024-07-20 14:12:42 + */ +@Service +@Slf4j +public class SchisandraUserLikesDetailDomainServiceImpl implements SchisandraUserLikesDetailDomainService { + + @Resource + private SchisandraUserLikesDetailService schisandraUserLikesDetailService; + + @Override + public Boolean add(SchisandraUserLikesDetailBO schisandraUserLikesDetailBO) { + SchisandraUserLikesDetail schisandraUserLikesDetail = SchisandraUserLikesDetailBOConverter.INSTANCE.convertBOToEntity(schisandraUserLikesDetailBO); + schisandraUserLikesDetail.setIsDeleted(IsDeletedFlagEnum.UN_DELETED.getCode()); + return schisandraUserLikesDetailService.insert(schisandraUserLikesDetail) > 0; + } + + @Override + public Boolean update(SchisandraUserLikesDetailBO schisandraUserLikesDetailBO) { + SchisandraUserLikesDetail schisandraUserLikesDetail = SchisandraUserLikesDetailBOConverter.INSTANCE.convertBOToEntity(schisandraUserLikesDetailBO); + return schisandraUserLikesDetailService.update(schisandraUserLikesDetail) > 0; + } + + @Override + public Boolean delete(SchisandraUserLikesDetailBO schisandraUserLikesDetailBO) { + SchisandraUserLikesDetail schisandraUserLikesDetail = new SchisandraUserLikesDetail(); + schisandraUserLikesDetail.setId(schisandraUserLikesDetailBO.getId()); + schisandraUserLikesDetail.setIsDeleted(IsDeletedFlagEnum.DELETED.getCode()); + return schisandraUserLikesDetailService.update(schisandraUserLikesDetail) > 0; + } + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/dao/SchisandraUserLikesCommentDao.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/dao/SchisandraUserLikesCommentDao.java new file mode 100644 index 0000000..6a5eec4 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/dao/SchisandraUserLikesCommentDao.java @@ -0,0 +1,17 @@ +package com.schisandra.share.infra.basic.dao; + +import com.schisandra.share.infra.basic.entity.SchisandraUserLikesComment; +import com.mybatisflex.core.BaseMapper; +import org.springframework.stereotype.Repository; + +/** + * 评论点赞表 表数据库访问层 + * + * @author zlg + * @since 2024-07-20 14:11:01 + */ +@Repository +public interface SchisandraUserLikesCommentDao extends BaseMapper { + +} + diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/dao/SchisandraUserLikesDetailDao.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/dao/SchisandraUserLikesDetailDao.java new file mode 100644 index 0000000..3cf0e67 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/dao/SchisandraUserLikesDetailDao.java @@ -0,0 +1,17 @@ +package com.schisandra.share.infra.basic.dao; + +import com.schisandra.share.infra.basic.entity.SchisandraUserLikesDetail; +import com.mybatisflex.core.BaseMapper; +import org.springframework.stereotype.Repository; + +/** + * 分享详情点赞表 表数据库访问层 + * + * @author zlg + * @since 2024-07-20 14:12:42 + */ +@Repository +public interface SchisandraUserLikesDetailDao extends BaseMapper { + +} + diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/entity/SchisandraUserLikesComment.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/entity/SchisandraUserLikesComment.java new file mode 100644 index 0000000..3d5bcef --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/entity/SchisandraUserLikesComment.java @@ -0,0 +1,47 @@ +package com.schisandra.share.infra.basic.entity; + +import com.mybatisflex.annotation.Column; +import com.mybatisflex.annotation.Id; +import com.mybatisflex.annotation.KeyType; +import com.mybatisflex.annotation.Table; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * 评论点赞表 实体类 + * + * @author zlg + * @since 2024-07-20 14:11:01 + */ +@Data +@Table("schisandra_user_likes_comment") +public class SchisandraUserLikesComment implements Serializable { + + /** + * + */ + @Id(value = "id", keyType = KeyType.Auto) + private String id; + + /** + * + */ + @Column("user_id") + private String userId; + + /** + * + */ + @Column("comment_id") + private String commentId; + + /** + * 是否删除 0 未删除 1已删除 + */ + @Column("is_deleted") + private Integer isDeleted; + +} + diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/entity/SchisandraUserLikesDetail.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/entity/SchisandraUserLikesDetail.java new file mode 100644 index 0000000..ac55683 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/entity/SchisandraUserLikesDetail.java @@ -0,0 +1,47 @@ +package com.schisandra.share.infra.basic.entity; + +import com.mybatisflex.annotation.Column; +import com.mybatisflex.annotation.Id; +import com.mybatisflex.annotation.KeyType; +import com.mybatisflex.annotation.Table; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * 分享详情点赞表 实体类 + * + * @author zlg + * @since 2024-07-20 14:12:42 + */ +@Data +@Table("schisandra_user_likes_detail") +public class SchisandraUserLikesDetail implements Serializable { + + /** + * + */ + @Id(value = "id", keyType = KeyType.Auto) + private String id; + + /** + * + */ + @Column("user_id") + private String userId; + + /** + * + */ + @Column("detail_id") + private String detailId; + + /** + * + */ + @Column("is_deleted") + private Integer isDeleted; + +} + diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraShareDetailService.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraShareDetailService.java index c4fcceb..4e8347e 100644 --- a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraShareDetailService.java +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraShareDetailService.java @@ -31,6 +31,9 @@ public interface SchisandraShareDetailService { int delDetailViews(String Id); + int addDetailLike(String Id); + int delDetailLike(String Id); + /** * 通过ID查询单条数据 diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraUserLikesCommentService.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraUserLikesCommentService.java new file mode 100644 index 0000000..9d79834 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraUserLikesCommentService.java @@ -0,0 +1,46 @@ +package com.schisandra.share.infra.basic.service; + +import com.schisandra.share.infra.basic.entity.SchisandraUserLikesComment; + +/** + * 评论点赞表 表服务接口 + * + * @author zlg + * @since 2024-07-20 14:11:01 + */ +public interface SchisandraUserLikesCommentService { + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + SchisandraUserLikesComment queryById(Long id); + + /** + * 新增数据 + * + * @param schisandraUserLikesComment 实例对象 + * @return 实例对象 + */ + int insert(SchisandraUserLikesComment schisandraUserLikesComment); + + /** + * 修改数据 + * + * @param schisandraUserLikesComment 实例对象 + * @return 实例对象 + */ + int update(SchisandraUserLikesComment schisandraUserLikesComment); + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + boolean deleteById(Long id); + + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraUserLikesDetailService.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraUserLikesDetailService.java new file mode 100644 index 0000000..1a78ab0 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/SchisandraUserLikesDetailService.java @@ -0,0 +1,46 @@ +package com.schisandra.share.infra.basic.service; + +import com.schisandra.share.infra.basic.entity.SchisandraUserLikesDetail; + +/** + * 分享详情点赞表 表服务接口 + * + * @author zlg + * @since 2024-07-20 14:12:42 + */ +public interface SchisandraUserLikesDetailService { + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + SchisandraUserLikesDetail queryById(Long id); + + /** + * 新增数据 + * + * @param schisandraUserLikesDetail 实例对象 + * @return 实例对象 + */ + int insert(SchisandraUserLikesDetail schisandraUserLikesDetail); + + /** + * 修改数据 + * + * @param schisandraUserLikesDetail 实例对象 + * @return 实例对象 + */ + int update(SchisandraUserLikesDetail schisandraUserLikesDetail); + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + boolean deleteById(Long id); + + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraShareDetailServiceImpl.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraShareDetailServiceImpl.java index e1c3cc8..24b20f9 100644 --- a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraShareDetailServiceImpl.java +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraShareDetailServiceImpl.java @@ -65,6 +65,24 @@ public class SchisandraShareDetailServiceImpl implements SchisandraShareDetailSe return schisandraShareDetailDao.update(schisandraShareDetail); } + @Override + public int addDetailLike(String Id) { + SchisandraShareDetail schisandraShareDetail = UpdateEntity.of(SchisandraShareDetail.class, Id); + UpdateWrapper wrapper = UpdateWrapper.of(schisandraShareDetail); + wrapper.set(SchisandraShareDetailTableDef.SCHISANDRA_SHARE_DETAIL.LIKES_COUNT, + SchisandraShareDetailTableDef.SCHISANDRA_SHARE_DETAIL.LIKES_COUNT.add(1)); + return schisandraShareDetailDao.update(schisandraShareDetail); + } + + @Override + public int delDetailLike(String Id) { + SchisandraShareDetail schisandraShareDetail = UpdateEntity.of(SchisandraShareDetail.class, Id); + UpdateWrapper wrapper = UpdateWrapper.of(schisandraShareDetail); + wrapper.set(SchisandraShareDetailTableDef.SCHISANDRA_SHARE_DETAIL.LIKES_COUNT, + SchisandraShareDetailTableDef.SCHISANDRA_SHARE_DETAIL.LIKES_COUNT.subtract(1)); + return schisandraShareDetailDao.update(schisandraShareDetail); + } + /** * 通过ID查询单条数据 * diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraUserLikesCommentServiceImpl.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraUserLikesCommentServiceImpl.java new file mode 100644 index 0000000..26feb33 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraUserLikesCommentServiceImpl.java @@ -0,0 +1,67 @@ +package com.schisandra.share.infra.basic.service.impl; + +import com.schisandra.share.infra.basic.entity.SchisandraUserLikesComment; +import com.schisandra.share.infra.basic.dao.SchisandraUserLikesCommentDao; +import com.schisandra.share.infra.basic.service.SchisandraUserLikesCommentService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +/** + * 评论点赞表 表服务实现类 + * + * @author zlg + * @since 2024-07-20 14:11:01 + */ +@Service("SchisandraUserLikesCommentService") +public class SchisandraUserLikesCommentServiceImpl implements SchisandraUserLikesCommentService { + + @Resource + private SchisandraUserLikesCommentDao schisandraUserLikesCommentDao; + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + @Override + public SchisandraUserLikesComment queryById(Long id) { + return this.schisandraUserLikesCommentDao.selectOneById(id); + } + + /** + * 新增数据 + * + * @param schisandraUserLikesComment 实例对象 + * @return 实例对象 + */ + @Override + public int insert(SchisandraUserLikesComment schisandraUserLikesComment) { + return this.schisandraUserLikesCommentDao.insertSelective(schisandraUserLikesComment); + } + + /** + * 修改数据 + * + * @param schisandraUserLikesComment 实例对象 + * @return 实例对象 + */ + @Override + public int update(SchisandraUserLikesComment schisandraUserLikesComment) { + return this.schisandraUserLikesCommentDao.update(schisandraUserLikesComment,true); + } + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + @Override + public boolean deleteById(Long id) { + return this.schisandraUserLikesCommentDao.deleteById(id) > 0; + } + + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraUserLikesDetailServiceImpl.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraUserLikesDetailServiceImpl.java new file mode 100644 index 0000000..5cf5734 --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/java/com/schisandra/share/infra/basic/service/impl/SchisandraUserLikesDetailServiceImpl.java @@ -0,0 +1,67 @@ +package com.schisandra.share.infra.basic.service.impl; + +import com.schisandra.share.infra.basic.entity.SchisandraUserLikesDetail; +import com.schisandra.share.infra.basic.dao.SchisandraUserLikesDetailDao; +import com.schisandra.share.infra.basic.service.SchisandraUserLikesDetailService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; + +/** + * 分享详情点赞表 表服务实现类 + * + * @author zlg + * @since 2024-07-20 14:12:42 + */ +@Service("SchisandraUserLikesDetailService") +public class SchisandraUserLikesDetailServiceImpl implements SchisandraUserLikesDetailService { + + @Resource + private SchisandraUserLikesDetailDao schisandraUserLikesDetailDao; + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + @Override + public SchisandraUserLikesDetail queryById(Long id) { + return this.schisandraUserLikesDetailDao.selectOneById(id); + } + + /** + * 新增数据 + * + * @param schisandraUserLikesDetail 实例对象 + * @return 实例对象 + */ + @Override + public int insert(SchisandraUserLikesDetail schisandraUserLikesDetail) { + return this.schisandraUserLikesDetailDao.insertSelective(schisandraUserLikesDetail); + } + + /** + * 修改数据 + * + * @param schisandraUserLikesDetail 实例对象 + * @return 实例对象 + */ + @Override + public int update(SchisandraUserLikesDetail schisandraUserLikesDetail) { + return this.schisandraUserLikesDetailDao.update(schisandraUserLikesDetail,true); + } + + /** + * 通过主键删除数据 + * + * @param id 主键 + * @return 是否成功 + */ + @Override + public boolean deleteById(Long id) { + return this.schisandraUserLikesDetailDao.deleteById(id) > 0; + } + + +} diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/resources/mapper/SchisandraUserLikesCommentDao.xml b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/resources/mapper/SchisandraUserLikesCommentDao.xml new file mode 100644 index 0000000..105cbaa --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/resources/mapper/SchisandraUserLikesCommentDao.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/resources/mapper/SchisandraUserLikesDetailDao.xml b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/resources/mapper/SchisandraUserLikesDetailDao.xml new file mode 100644 index 0000000..9d6f45f --- /dev/null +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-infra/src/main/resources/mapper/SchisandraUserLikesDetailDao.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + +