From f1cee812a4cd17e02895a00bbabb009b1b4e67e9 Mon Sep 17 00:00:00 2001 From: huanghongfa <huanghongfa123456> Date: 星期三, 28 四月 2021 16:51:47 +0800 Subject: [PATCH] 邻里圈模块接口编写 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleCommentDO.java | 5 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleCommentDAO.java | 16 + springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleBrowseServiceImpl.java | 13 + springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleBrowseDO.java | 5 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActNeighborCircleService.java | 18 + springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/ComActNeighborCircleAppDTO.java | 3 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/NeighborApi.java | 21 ++ springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActNeighborCircleBrowseService.java | 7 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/ComActNeighborCircleDetailAppDTO.java | 28 +++ springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleCommentReplyDO.java | 5 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleAppVO.java | 18 ++ springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java | 18 ++ springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/NeighborApi.java | 35 +++ springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleCommentAppVO.java | 51 +++++ springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleDAO.java | 40 ++++ springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/AddComActNeighborCircleAppDTO.java | 30 +++ springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java | 69 +++++++ springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleDetailAppVO.java | 58 ++++++ springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleDO.java | 11 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleCommentReplyAppVO.java | 44 ++++ 20 files changed, 474 insertions(+), 21 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/NeighborApi.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/NeighborApi.java index a361137..3b28c81 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/NeighborApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/NeighborApi.java @@ -1,12 +1,17 @@ package com.panzhihua.applets.api; import com.panzhihua.common.controller.BaseController; +import com.panzhihua.common.model.dtos.neighbor.AddComActNeighborCircleAppDTO; import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAppDTO; +import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleDetailAppDTO; import com.panzhihua.common.model.dtos.shop.*; +import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleAppVO; +import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleDetailAppVO; import com.panzhihua.common.model.vos.shop.*; import com.panzhihua.common.service.community.CommunityService; +import com.panzhihua.common.utlis.StringUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; @@ -30,10 +35,38 @@ @ApiOperation(value = "分页查询邻里圈列表" , response = ComActNeighborCircleAppVO.class) @PostMapping("pageApp") - public R pageNeighbor(@RequestBody ComActNeighborCircleAppDTO neighborCircleAppDTO) { + public R pageNeighborByApp(@RequestBody ComActNeighborCircleAppDTO neighborCircleAppDTO) { + Long communityId = this.getLoginUserInfo().getCommunityId(); + if(communityId == null){ + return R.fail("请先绑定社区"); + } + neighborCircleAppDTO.setCommunityId(communityId); return communityService.pageNeighborByApp(neighborCircleAppDTO); } + @ApiOperation(value = "用户发布邻里圈审核") + @PostMapping("addNeighborByApp") + public R addNeighborByApp(@RequestBody AddComActNeighborCircleAppDTO addNeighborCircleAppDTO) { + LoginUserInfoVO loginUser = this.getLoginUserInfo(); + Long userId = loginUser.getUserId(); + if(userId == null){ + return R.fail("请重新登录"); + } + addNeighborCircleAppDTO.setUserId(userId); + if(StringUtils.isNotEmpty(loginUser.getPhone())){ + addNeighborCircleAppDTO.setPhone(this.getLoginUserInfo().getPhone()); + } + if(loginUser.getCommunityId() != null){ + addNeighborCircleAppDTO.setCommunityId(loginUser.getCommunityId()); + } + return communityService.addNeighborByApp(addNeighborCircleAppDTO); + } + + @ApiOperation(value = "查询邻里圈详情" , response = ComActNeighborCircleDetailAppVO.class) + @PostMapping("neighbor/detail") + public R neighborDetailByApp(@RequestBody ComActNeighborCircleDetailAppDTO neighborCircleAppDTO) { + return communityService.neighborDetailByApp(neighborCircleAppDTO); + } } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/AddComActNeighborCircleAppDTO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/AddComActNeighborCircleAppDTO.java new file mode 100644 index 0000000..7d9e296 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/AddComActNeighborCircleAppDTO.java @@ -0,0 +1,30 @@ +package com.panzhihua.common.model.dtos.neighbor; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @auther lyq + * @create 2021-04-14 15:02:14 + * @describe 邻里圈请求参数 + */ +@Data +@ApiModel("邻里圈请求参数") +public class AddComActNeighborCircleAppDTO { + + @ApiModelProperty("邻里圈内容") + private String releaseContent; + + @ApiModelProperty("邻里圈图片url") + private String releaseImages; + + @ApiModelProperty(value = "用户id",hidden = true) + private Long userId; + + @ApiModelProperty(value = "发布人电话",hidden = true) + private String phone; + + @ApiModelProperty(value = "社区id",hidden = true) + private Long communityId; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/ComActNeighborCircleAppDTO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/ComActNeighborCircleAppDTO.java index 11ba885..c9557f7 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/ComActNeighborCircleAppDTO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/ComActNeighborCircleAppDTO.java @@ -22,4 +22,7 @@ @ApiModelProperty("邻里圈查询类型(1.热门 2.最新 3.精品)") private Integer type = 1; + @ApiModelProperty(value = "社区id",hidden = true) + private Long communityId; + } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/ComActNeighborCircleDetailAppDTO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/ComActNeighborCircleDetailAppDTO.java new file mode 100644 index 0000000..a393d48 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/neighbor/ComActNeighborCircleDetailAppDTO.java @@ -0,0 +1,28 @@ +package com.panzhihua.common.model.dtos.neighbor; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @auther lyq + * @create 2021-04-14 15:02:14 + * @describe 邻里圈查看详情请求参数 + */ +@Data +@ApiModel("邻里圈查看详情请求参数") +public class ComActNeighborCircleDetailAppDTO { + + @ApiModelProperty("邻里圈id") + private Long circleId; + + @ApiModelProperty(value = "用户id",hidden = true) + private Long userId; + + @ApiModelProperty(value = "评论分页-当前页数",example = "1") + private Long pageNum = 1L; + + @ApiModelProperty(value = "评论分页-每页记录数",example = "10") + private Long pageSize = 10L; + +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleAppVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleAppVO.java index 8a1eac7..3027fee 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleAppVO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleAppVO.java @@ -51,4 +51,22 @@ @ApiModelProperty("最后回复时间") private Date replyAt; + /** + * 近3天评论数 + */ + @ApiModelProperty("近3天评论数") + private Integer lastCommentNum; + + /** + * 近3天点赞数 + */ + @ApiModelProperty("近3天点赞数") + private Integer lastFabulousNum; + + /** + * 近3天浏览量 + */ + @ApiModelProperty("近3天浏览量") + private Integer lastViewsNum; + } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleCommentAppVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleCommentAppVO.java new file mode 100644 index 0000000..1e88476 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleCommentAppVO.java @@ -0,0 +1,51 @@ +package com.panzhihua.common.model.vos.neighbor; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; +import java.util.List; + +/** + * @auther lyq + * @create 2021-04-14 15:02:14 + * @describe 邻里圈评论返回参数 + */ +@Data +@ApiModel("邻里圈评论返回参数") +public class ComActNeighborCircleCommentAppVO { + + @ApiModelProperty("邻里圈评论id") + private Long id; + + @ApiModelProperty("邻里圈id") + private Long circleId; + + @ApiModelProperty("用户id") + private Long userId; + + @ApiModelProperty("评论用户名字") + private Long userName; + + @ApiModelProperty("评论用户头像") + private Long userHeadUrl; + + @ApiModelProperty("评论内容") + private String content; + + @ApiModelProperty("点赞数") + private Integer fabulousNum; + + @ApiModelProperty("评论时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date createAt; + + @ApiModelProperty("是否是作者评论(1.是 2.否)") + private Integer isRelease; + + @ApiModelProperty("邻里圈评论回复列表(默认展示2条)") + private List<ComActNeighborCircleCommentReplyAppVO> circleCommentReplyAppList; + +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleCommentReplyAppVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleCommentReplyAppVO.java new file mode 100644 index 0000000..48f15a6 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleCommentReplyAppVO.java @@ -0,0 +1,44 @@ +package com.panzhihua.common.model.vos.neighbor; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * @auther lyq + * @create 2021-04-14 15:02:14 + * @describe 邻里圈评论返回参数 + */ +@Data +@ApiModel("邻里圈评论回复返回参数") +public class ComActNeighborCircleCommentReplyAppVO { + + @ApiModelProperty("邻里圈评论回复id") + private Long id; + + @ApiModelProperty("评论id") + private Long commentId; + + @ApiModelProperty("上级回复用户名称") + private String parentUserName; + + @ApiModelProperty("回复用户名称") + private Long userName; + + @ApiModelProperty("回复内容") + private String replyContent; + + @ApiModelProperty("点赞数") + private Integer fabulousNum; + + @ApiModelProperty("评论时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date createAt; + + @ApiModelProperty("是否是作者回复(1.是 2.否)") + private Integer isRelease; + +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleDetailAppVO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleDetailAppVO.java new file mode 100644 index 0000000..e2508f7 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/neighbor/ComActNeighborCircleDetailAppVO.java @@ -0,0 +1,58 @@ +package com.panzhihua.common.model.vos.neighbor; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; +import java.util.List; + +/** + * @auther lyq + * @create 2021-04-14 15:02:14 + * @describe 邻里圈详情返回参数 + */ +@Data +@ApiModel("邻里圈详情返回参数") +public class ComActNeighborCircleDetailAppVO { + + @ApiModelProperty("邻里圈id") + private Long id; + + @ApiModelProperty("邻里圈发布人名字") + private String name; + + @ApiModelProperty("邻里圈发布人头像url地址") + private String headUrl; + + @ApiModelProperty("发布内容") + private String releaseContent; + + @ApiModelProperty("发布图片") + private String releaseImages; + + @ApiModelProperty("评论数") + private Integer commentNum; + + @ApiModelProperty("点赞数") + private Integer fabulousNum; + + @ApiModelProperty("转发数") + private Integer forwardNum; + + @ApiModelProperty("浏览量") + private Integer viewsNum; + + @ApiModelProperty("是否为精品帖(1.是 2.否)") + private Integer isBoutique; + + @ApiModelProperty("发布时间") + private Date createAt; + + @ApiModelProperty("最后回复时间") + private Date replyAt; + + @ApiModelProperty("邻里圈评论列表") + private List<ComActNeighborCircleCommentAppVO> circleCommentAppList; + +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java index 8907101..6641eda 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java @@ -5,7 +5,9 @@ import com.panzhihua.common.model.dtos.advertisement.ComOpsAdvDTO; import com.panzhihua.common.model.dtos.advertisement.PageComOpsAdvDTO; import com.panzhihua.common.model.dtos.community.*; +import com.panzhihua.common.model.dtos.neighbor.AddComActNeighborCircleAppDTO; import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAppDTO; +import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleDetailAppDTO; import com.panzhihua.common.model.dtos.shop.PageComShopOrderSearchDTO; import com.panzhihua.common.model.dtos.shop.*; import com.panzhihua.common.model.dtos.shop.PageComShopGoodsDTO; @@ -2247,4 +2249,20 @@ @PostMapping("/neighbor/pageNeighborByApp") R pageNeighborByApp(@RequestBody ComActNeighborCircleAppDTO neighborCircleAppDTO); + /** + * 用户发布邻里圈审核 + * @param addNeighborCircleAppDTO 邻里圈请求参数 + * @return 发布结果 + */ + @PostMapping("/neighbor/addNeighborByApp") + R addNeighborByApp(@RequestBody AddComActNeighborCircleAppDTO addNeighborCircleAppDTO); + + /** + * 用户查看邻里圈详情 + * @param neighborCircleAppDTO 请求参数 + * @return 邻里圈详情 + */ + @PostMapping("/neighbor/neighborDetailByApp") + R neighborDetailByApp(@RequestBody ComActNeighborCircleDetailAppDTO neighborCircleAppDTO); + } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/NeighborApi.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/NeighborApi.java index 3c7fbbc..7104a3c 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/NeighborApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/NeighborApi.java @@ -1,19 +1,25 @@ package com.panzhihua.service_community.api; +import com.panzhihua.common.model.dtos.neighbor.AddComActNeighborCircleAppDTO; import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAppDTO; +import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleDetailAppDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.service_community.service.ComActNeighborCircleService; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; @Slf4j @RestController @RequestMapping("/neighbor") public class NeighborApi { + @Resource private ComActNeighborCircleService comActNeighborCircleService; /** @@ -26,4 +32,19 @@ return comActNeighborCircleService.pageNeighborByApp(neighborCircleAppDTO); } + /** + * 用户发布邻里圈审核 + * @param addNeighborCircleAppDTO 邻里圈请求参数 + * @return 发布结果 + */ + @PostMapping("addNeighborByApp") + public R addNeighborByApp(@RequestBody AddComActNeighborCircleAppDTO addNeighborCircleAppDTO) { + return comActNeighborCircleService.addNeighborByApp(addNeighborCircleAppDTO); + } + + @PostMapping("neighborDetailByApp") + public R neighborDetailByApp(@RequestBody ComActNeighborCircleDetailAppDTO neighborCircleAppDTO) { + return comActNeighborCircleService.neighborDetailByApp(neighborCircleAppDTO); + } + } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleCommentDAO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleCommentDAO.java index 1828772..8b44b9c 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleCommentDAO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleCommentDAO.java @@ -1,8 +1,15 @@ package com.panzhihua.service_community.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAppDTO; +import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleAppVO; +import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleCommentAppVO; import com.panzhihua.service_community.model.dos.ComActNeighborCircleCommentDO; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; /** * @auther lyq @@ -12,4 +19,13 @@ @Mapper public interface ComActNeighborCircleCommentDAO extends BaseMapper<ComActNeighborCircleCommentDO> { + @Select("<script> " + + "select cancc.id,cancc.circle_id,cancc.user_id,cancc.content,cancc.fabulous_num" + + ",cancc.create_at,cancc.is_release,su.nick_name as userName,su.image_url as userHeadUrl " + + " from com_act_neighbor_circle_comment as cancc " + + " left join sys_user as su on su.user_id = cancc.user_id" + + " where cancc.circle_id = #{circleId} order by cancc.create_at desc" + + " </script>") + IPage<ComActNeighborCircleCommentAppVO> pageNeighborCommentByApp(Page page, @Param("circleId") Long circleId); + } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleDAO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleDAO.java index 3cfcd14..2562ffd 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleDAO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActNeighborCircleDAO.java @@ -6,6 +6,7 @@ import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAppDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleAppVO; +import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleDetailAppVO; import com.panzhihua.service_community.model.dos.ComActNeighborCircleDO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -19,7 +20,44 @@ @Mapper public interface ComActNeighborCircleDAO extends BaseMapper<ComActNeighborCircleDO> { - @Select("") + @Select("<script> " + + "SELECT " + + "canc.id," + + "canc.release_content," + + "canc.release_images," + + "canc.comment_num," + + "canc.fabulous_num," + + "canc.forward_num," + + "canc.views_num," + + "canc.is_boutique," + + "canc.create_at," + + "canc.reply_at," + + "canc.last_comment_num," + + "canc.last_fabulous_num," + + "canc.last_views_num," + + "su.nick_name as name," + + "su.image_url as headUrl " + + " FROM " + + " com_act_neighbor_circle AS canc" + + " left join sys_user as su on su.user_id = canc.release_id" + + " where canc.status = 2 and canc.community_id = #{communityId} " + + "<if test='neighborCircleAppDTO.type != null and neighborCircleAppDTO.type == 1'>" + + " order by (canc.last_views_num + canc.last_comment_num + canc.last_fabulous_num) desc " + + " </if> " + + "<if test='neighborCircleAppDTO.type != null and neighborCircleAppDTO.type == 2'>" + + " order by canc.reply_at desc,canc.create_at desc " + + " </if> " + + "<if test='neighborCircleAppDTO.type != null and neighborCircleAppDTO.type == 3'>" + + " order by (canc.views_num + canc.comment_num + canc.fabulous_num) desc " + + " </if> " + + " </script>") IPage<ComActNeighborCircleAppVO> pageNeighborByApp(Page page, @Param("neighborCircleAppDTO") ComActNeighborCircleAppDTO neighborCircleAppDTO); + @Select("<script> " + + "select canc.id,su.nick_name as name,su.image_url as headUrl,canc.release_content " + + ",canc.release_images,canc.comment_num,canc.fabulous_num,canc.forward_num,canc.views_num " + + ",canc.is_boutique,canc.create_at,canc.reply_at from com_act_neighbor_circle as canc " + + " left join sys_user as su on su.user_id = canc.release_id where id = #{circleId}"+ + " </script>") + ComActNeighborCircleDetailAppVO neighborDetailByApp(@Param("circleId") Long circleId); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleBrowseDO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleBrowseDO.java index 1a58f1a..8d40e7e 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleBrowseDO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleBrowseDO.java @@ -1,8 +1,6 @@ package com.panzhihua.service_community.model.dos; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.*; import lombok.Data; import java.io.Serializable; @@ -40,6 +38,7 @@ /** * 浏览时间 */ + @TableField(fill = FieldFill.INSERT) private Date createAt; @Override diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleCommentDO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleCommentDO.java index 9735225..7a5408b 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleCommentDO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleCommentDO.java @@ -1,8 +1,6 @@ package com.panzhihua.service_community.model.dos; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.*; import lombok.Data; import java.io.Serializable; @@ -60,6 +58,7 @@ /** * 评论时间 */ + @TableField(fill = FieldFill.INSERT) private Date createAt; /** diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleCommentReplyDO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleCommentReplyDO.java index 5c13d34..db20bed 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleCommentReplyDO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleCommentReplyDO.java @@ -1,8 +1,6 @@ package com.panzhihua.service_community.model.dos; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.*; import lombok.Data; import java.io.Serializable; @@ -65,6 +63,7 @@ /** * 创建时间 */ + @TableField(fill = FieldFill.INSERT) private Date createAt; /** diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleDO.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleDO.java index 26addfc..574aa16 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleDO.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActNeighborCircleDO.java @@ -1,8 +1,6 @@ package com.panzhihua.service_community.model.dos; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.*; import lombok.Data; import java.io.Serializable; @@ -90,6 +88,7 @@ /** * 发布时间 */ + @TableField(fill = FieldFill.INSERT) private Date createAt; /** @@ -98,17 +97,17 @@ private Date replyAt; /** - * 评论数 + * 近3天评论数 */ private Integer lastCommentNum; /** - * 点赞数 + * 近3天评论数 */ private Integer lastFabulousNum; /** - * 浏览量 + * 近3天评论数 */ private Integer lastViewsNum; diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActNeighborCircleBrowseService.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActNeighborCircleBrowseService.java index 0db7556..b0eee6f 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActNeighborCircleBrowseService.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActNeighborCircleBrowseService.java @@ -10,4 +10,11 @@ */ public interface ComActNeighborCircleBrowseService extends IService<ComActNeighborCircleBrowseDO> { + /** + * 添加邻里圈浏览记录 + * @param neighborId 邻里圈id + * @param userId 用户id + */ + void addBrowseRecord(Long neighborId,Long userId); + } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActNeighborCircleService.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActNeighborCircleService.java index 350c21a..de1442d 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActNeighborCircleService.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComActNeighborCircleService.java @@ -1,8 +1,10 @@ package com.panzhihua.service_community.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.panzhihua.common.model.dtos.neighbor.AddComActNeighborCircleAppDTO; import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAdminDTO; import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAppDTO; +import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleDetailAppDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.service_community.model.dos.ComActNeighborCircleDO; @@ -22,9 +24,19 @@ R pageNeighborByApp(ComActNeighborCircleAppDTO neighborCircleAppDTO); /** - * 管理后台查询邻里圈列表 - * @return + * 用户发布邻里圈审核 + * @param addNeighborCircleAppDTO 邻里圈请求参数 + * @return 发布结果 */ - //R backstagePageNeighbor(ComActNeighborCircleAdminDTO comActNeighborCircleAdminDTO); + R addNeighborByApp(AddComActNeighborCircleAppDTO addNeighborCircleAppDTO); + + /** + * 查看邻里圈详情 + * @param neighborCircleAppDTO 请求参数 + * @return 邻里圈详情 + */ + R neighborDetailByApp(ComActNeighborCircleDetailAppDTO neighborCircleAppDTO); + + } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleBrowseServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleBrowseServiceImpl.java index 8dcdeeb..a6cf3c8 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleBrowseServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleBrowseServiceImpl.java @@ -16,4 +16,17 @@ @Service public class ComActNeighborCircleBrowseServiceImpl extends ServiceImpl<ComActNeighborCircleBrowseDAO, ComActNeighborCircleBrowseDO> implements ComActNeighborCircleBrowseService { + /** + * 添加邻里圈浏览记录 + * @param neighborId 邻里圈id + * @param userId 用户id + */ + public void addBrowseRecord(Long neighborId,Long userId){ + ComActNeighborCircleBrowseDO circleBrowseDO = new ComActNeighborCircleBrowseDO(); + circleBrowseDO.setNeighborId(neighborId); + circleBrowseDO.setUserId(userId); + this.baseMapper.insert(circleBrowseDO); + } + + } diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java index b5ddb92..f026ac8 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java @@ -3,14 +3,25 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.common.model.dtos.neighbor.AddComActNeighborCircleAppDTO; import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleAppDTO; +import com.panzhihua.common.model.dtos.neighbor.ComActNeighborCircleDetailAppDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleAppVO; +import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleCommentAppVO; +import com.panzhihua.common.model.vos.neighbor.ComActNeighborCircleDetailAppVO; +import com.panzhihua.common.utlis.StringUtils; +import com.panzhihua.service_community.dao.ComActNeighborCircleCommentDAO; import com.panzhihua.service_community.dao.ComActNeighborCircleDAO; import com.panzhihua.service_community.model.dos.ComActNeighborCircleDO; +import com.panzhihua.service_community.service.ComActNeighborCircleBrowseService; import com.panzhihua.service_community.service.ComActNeighborCircleService; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; /** * @auther lyq @@ -19,17 +30,73 @@ */ @Slf4j @Service -public abstract class ComActNeighborCircleServiceImpl extends ServiceImpl<ComActNeighborCircleDAO, ComActNeighborCircleDO> implements ComActNeighborCircleService { +public class ComActNeighborCircleServiceImpl extends ServiceImpl<ComActNeighborCircleDAO, ComActNeighborCircleDO> implements ComActNeighborCircleService { + + @Resource + private ComActNeighborCircleBrowseService comActNeighborCircleBrowseService; + @Resource + private ComActNeighborCircleCommentDAO comActNeighborCircleCommentDAO; /** * 分页查询邻里圈列表 * @param neighborCircleAppDTO 请求参数 * @return 邻里圈列表 */ + @Override public R pageNeighborByApp(ComActNeighborCircleAppDTO neighborCircleAppDTO){ Page userPage = new Page(neighborCircleAppDTO.getPageNum(), neighborCircleAppDTO.getPageSize()); IPage<ComActNeighborCircleAppVO> doPager = this.baseMapper.pageNeighborByApp(userPage, neighborCircleAppDTO); return R.ok(doPager); } + /** + * 用户发布邻里圈审核 + * @param addNeighborCircleAppDTO 邻里圈请求参数 + * @return 发布结果 + */ + @Override + public R addNeighborByApp(AddComActNeighborCircleAppDTO addNeighborCircleAppDTO){ + //新增邻里圈审核 + ComActNeighborCircleDO neighborCircleDO = new ComActNeighborCircleDO(); + BeanUtils.copyProperties(addNeighborCircleAppDTO,neighborCircleDO); + if(addNeighborCircleAppDTO.getUserId() != null){ + neighborCircleDO.setReleaseId(addNeighborCircleAppDTO.getUserId()); + } + if(addNeighborCircleAppDTO.getCommunityId() != null){ + neighborCircleDO.setCommunityId(addNeighborCircleAppDTO.getCommunityId()); + } + if(StringUtils.isNotEmpty(addNeighborCircleAppDTO.getPhone())){ + neighborCircleDO.setReleasePhone(addNeighborCircleAppDTO.getPhone()); + } + if(this.baseMapper.insert(neighborCircleDO) > 0){ + return R.ok(); + }else{ + return R.fail("发布失败"); + } + } + + @Override + public R neighborDetailByApp(ComActNeighborCircleDetailAppDTO neighborCircleAppDTO){ + + //添加邻里圈浏览记录 + comActNeighborCircleBrowseService.addBrowseRecord(neighborCircleAppDTO.getCircleId(),neighborCircleAppDTO.getUserId()); + + //查询邻里圈详情 + ComActNeighborCircleDetailAppVO circleDetailAppVO = this.baseMapper.neighborDetailByApp(neighborCircleAppDTO.getCircleId()); + + //查询邻里圈下评论列表 + IPage<ComActNeighborCircleCommentAppVO> circleCommentAppPage = comActNeighborCircleCommentDAO.pageNeighborCommentByApp( + new Page(neighborCircleAppDTO.getPageNum(),neighborCircleAppDTO.getPageSize()),neighborCircleAppDTO.getCircleId()); + if(!circleCommentAppPage.getRecords().isEmpty()){ + for (ComActNeighborCircleCommentAppVO circleCommentVo:circleCommentAppPage.getRecords()) { + //查询评论下评论回复 + + + } + } + + + return R.ok(circleDetailAppVO); + } + } -- Gitblit v1.7.1