Browse Source

话题、评论相关接口

dev
wangchao 6 years ago
parent
commit
fe4394a204
  1. 2
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java
  2. 22
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/constant/TopicConstant.java
  3. 30
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/comment/form/ResiQueryCommentFormDTO.java
  4. 44
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/comment/result/ResiCommentResultDTO.java
  5. 4
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/ResiPublishCommentFormDTO.java
  6. 22
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/ResiTopicOperationFormDTO.java
  7. 5
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/ResiTopicPageFormDTO.java
  8. 41
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicDetailResultDTO.java
  9. 2
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicInfoResultDTO.java
  10. 47
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/comment/controller/ResiCommentController.java
  11. 2
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java
  12. 108
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java
  13. 19
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicAttachmentDao.java
  14. 25
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicCommentDao.java
  15. 45
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java
  16. 11
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicOperationDao.java
  17. 4
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/entity/ResiTopicOperationEntity.java
  18. 28
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicCommentService.java
  19. 64
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java
  20. 79
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicCommentServiceImpl.java
  21. 331
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java
  22. 59
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicAttachmentDao.xml
  23. 62
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicCommentDao.xml
  24. 117
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml
  25. 47
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicOperationDao.xml
  26. 2
      epmet-module/resi-guide/resi-guide-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java
  27. 6
      epmet-module/resi-guide/resi-guide-server/src/main/java/com/epmet/service/impl/UserAccessServiceImpl.java
  28. 5
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VisitedFormDTO.java
  29. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java
  30. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/GridVisitedServiceImpl.java
  31. 14
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java

2
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java

@ -12,7 +12,7 @@ import org.springframework.web.bind.annotation.*;
* @dscription * @dscription
* @date 2020/3/19 9:32 * @date 2020/3/19 9:32
*/ */
@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, path="/epmetuser", fallback = EpmetUserFeignClientFallback.class,url = "http://localhost:8087") @FeignClient(name = ServiceConstant.EPMET_USER_SERVER, path="/epmetuser", fallback = EpmetUserFeignClientFallback.class)
public interface EpmetUserFeignClient { public interface EpmetUserFeignClient {
/** /**

22
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/constant/TopicConstant.java

@ -31,7 +31,12 @@ public interface TopicConstant {
/** /**
* 关闭话题 * 关闭话题
* */ * */
String CLOSED = "CLOSED"; String CLOSED = "closed";
/**
* 屏蔽话题
* */
String HIDDEN = "hidden";
/** /**
* 本人发布 * 本人发布
@ -42,4 +47,19 @@ public interface TopicConstant {
* 他人发布 * 他人发布
* */ * */
String PUBLISHED_BY_OTHER = "other"; String PUBLISHED_BY_OTHER = "other";
/**
* 构造queryWrapper 话题Id列名
* */
String TOPIC_ID = "TOPIC_ID";
/**
* 构造queryWrapper 创建日期列名
* */
String CREATED_DATE = "CREATED_DATE";
/**
* 构造queryWrapper 逻辑删除标识列名
* */
String DEL_FLAG = "DEL_FLAG";
} }

30
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/comment/form/ResiQueryCommentFormDTO.java

@ -1,10 +1,36 @@
package com.epmet.resi.group.dto.comment.form; package com.epmet.resi.group.dto.comment.form;
import lombok.Data;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/** /**
* @Description * @Description
* @ClassName ResiCommentFormDTO * @ClassName ResiQueryCommentFormDTO
* @Author wangc * @Author wangc
* @date 2020.04.01 17:14 * @date 2020.04.01 17:14
*/ */
public class ResiCommentFormDTO { @Data
public class ResiQueryCommentFormDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 组Id
* */
@NotBlank(message = "话题Id不能为空")
private String topicId;
/**
* 请求页码
* */
@Min(1)
private int pageNo;
/**
* 每页多少条数据
* */
private int pageSize = 20;
} }

44
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/comment/result/ResiCommentResultDTO.java

@ -1,10 +1,52 @@
package com.epmet.resi.group.dto.comment.result; package com.epmet.resi.group.dto.comment.result;
import lombok.Data;
import java.io.Serializable;
/** /**
* @Description * @Description
* @ClassName ResiCommentResultDTO * @ClassName ResiCommentResultDTO
* @Author wangc * @Author wangc
* @date 2020.04.01 17:07 * @date 2020.04.01 17:07
*/ */
public class ResiCommentResultDTO { @Data
public class ResiCommentResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 评论Id
* */
private String commentId;
/**
* 评论内容
* */
private String commentContent;
/**
* 评论者头像
* */
private String commentUserHeadPhoto;
/**
* 评论者姓名
* */
private String commentUserName;
/**
* 用户Id 评论者Id
* */
private String userId;
/**
* 评论时间 yyyy-MM-dd HH:mm:ss
* */
private String commentTime;
/**
* 评论状态
* */
private String commentStatus;
} }

4
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/ResiPublishCommentFormDTO.java

@ -7,12 +7,12 @@ import java.io.Serializable;
/** /**
* @Description * @Description
* @ClassName ResiCommentFormDTO * @ClassName ResiPublishCommentFormDTO
* @Author wangc * @Author wangc
* @date 2020.03.31 17:32 * @date 2020.03.31 17:32
*/ */
@Data @Data
public class ResiCommentFormDTO implements Serializable { public class ResiPublishCommentFormDTO implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

22
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/ResiTopicOperationFormDTO.java

@ -1,10 +1,30 @@
package com.epmet.resi.group.dto.topic.form; package com.epmet.resi.group.dto.topic.form;
import lombok.Data;
import java.io.Serializable;
/** /**
* @Description * @Description
* @ClassName ResiTopicOperationFormDTO * @ClassName ResiTopicOperationFormDTO
* @Author wangc * @Author wangc
* @date 2020.04.01 15:32 * @date 2020.04.01 15:32
*/ */
public class ResiTopicOperationFormDTO { @Data
public class ResiTopicOperationFormDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 话题Id
*/
private String topicId;
/**
* 屏蔽原因
*/
private String operateReason;
} }

5
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/ResiTopicPageFormDTO.java

@ -38,4 +38,9 @@ public class ResiTopicPageFormDTO implements Serializable{
* 搜索时可以带状态的查询也可以不带 * 搜索时可以带状态的查询也可以不带
* */ * */
private String status; private String status;
/**
* 用户Id
* */
private String userId;
} }

41
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicDetailResultDTO.java

@ -1,10 +1,49 @@
package com.epmet.resi.group.dto.topic.result; package com.epmet.resi.group.dto.topic.result;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/** /**
* @Description * @Description
* @ClassName ResiTopicDetailResultDTO * @ClassName ResiTopicDetailResultDTO
* @Author wangc * @Author wangc
* @date 2020.04.01 16:03 * @date 2020.04.01 16:03
*/ */
public class ResiTopicDetailResultDTO { @Data
public class ResiTopicDetailResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 话题Id
* */
private String topicId;
/**
* 发布人名称
* */
private String releaseUserName;
/**
* 发布人头像
* */
private String releaseUserHeadPhoto;
/**
* 发布时间 yyyy-MM-dd HH:mm:ss
* */
private String releaseTime;
/**
* 话题内容
* */
private String topicContent;
/**
* 图片访问地址
* */
private List<String> topicImgs;
} }

2
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ResiTopicInfoResultDTO.java

@ -21,7 +21,7 @@ public class ResiTopicInfoResultDTO implements Serializable{
private String topicId; private String topicId;
/** /**
* 用户Id * 用户Id 话题发布人
* */ * */
private String userId; private String userId;

47
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/comment/controller/ResiCommentController.java

@ -1,10 +1,57 @@
package com.epmet.modules.comment.controller; package com.epmet.modules.comment.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.modules.topic.service.ResiTopicCommentService;
import com.epmet.resi.group.dto.comment.form.ResiQueryCommentFormDTO;
import com.epmet.resi.group.dto.comment.result.ResiCommentResultDTO;
import com.epmet.resi.group.dto.topic.form.ResiPublishCommentFormDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/** /**
* @Description * @Description
* @ClassName ResiCommentController * @ClassName ResiCommentController
* @Author wangc * @Author wangc
* @date 2020.04.01 18:00 * @date 2020.04.01 18:00
*/ */
@RequestMapping("comment")
@RestController
public class ResiCommentController { public class ResiCommentController {
@Autowired
private ResiTopicCommentService commentService;
/**
* @Description 对话题发表评论
* @Param tokenDto
* @Param ResiPublishCommentFormDTO
* @return Result
* @Author wangc
* @Date 2020.04.01 18:06
**/
@RequestMapping("commenttopic")
public Result commentTopic(@LoginUser TokenDto tokenDto, ResiPublishCommentFormDTO publishCommentFormDTO){
ValidatorUtils.validateEntity(publishCommentFormDTO);
return commentService.commentTopic(tokenDto,publishCommentFormDTO);
}
/**
* @Description 获取某个话题的评论列表
* @Param tokenDto
* @Param ResiQueryCommentFormDTO
* @return Result<List<ResiCommentResultDTO>>
* @Author wangc
* @Date 2020.04.01 23:49
**/
@RequestMapping("getcommentlistoftopic")
public Result<List<ResiCommentResultDTO>> getCommentListOfTopic(@LoginUser TokenDto tokenDto, ResiQueryCommentFormDTO queryCommentFormDTO){
ValidatorUtils.validateEntity(queryCommentFormDTO);
return commentService.getCommentList(tokenDto,queryCommentFormDTO);
}
} }

2
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java

@ -18,7 +18,7 @@ import java.util.List;
* @Author yinzuomei * @Author yinzuomei
* @Date 2020/3/16 14:48 * @Date 2020/3/16 14:48
*/ */
@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallback.class ) @FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallback.class)
public interface EpmetUserFeignClient { public interface EpmetUserFeignClient {
/** /**

108
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java

@ -3,11 +3,21 @@ package com.epmet.modules.topic.controller;
import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.modules.topic.service.ResiTopicService;
import com.epmet.resi.group.dto.topic.form.ResiTopicOperationFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPublishFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPublishFormDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicDetailResultDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/** /**
* @Description * @Description
* @ClassName ResiTopicController * @ClassName ResiTopicController
@ -19,6 +29,9 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("topic") @RequestMapping("topic")
public class ResiTopicController { public class ResiTopicController {
@Autowired
ResiTopicService topicService;
/** /**
* @Description 组内成员创建话题(身份校验 + 创建话题 + 增加话题记录) * @Description 组内成员创建话题(身份校验 + 创建话题 + 增加话题记录)
* @Param TokenDto.class * @Param TokenDto.class
@ -30,9 +43,102 @@ public class ResiTopicController {
@RequestMapping("createtopic") @RequestMapping("createtopic")
public Result createTopic(@LoginUser TokenDto tokenDto, @RequestBody ResiTopicPublishFormDTO topicPublishFormDTO){ public Result createTopic(@LoginUser TokenDto tokenDto, @RequestBody ResiTopicPublishFormDTO topicPublishFormDTO){
ValidatorUtils.validateEntity(topicPublishFormDTO);
return topicService.createTopic(tokenDto,topicPublishFormDTO);
}
/**
* @Description 获取话题详情
* @Param tokenDto
* @Param String
* @return Result<ResiTopicDetailResultDTO>
* @Author wangc
* @Date 2020.04.01 23:48
**/
@RequestMapping("gettopicdetail")
public Result<ResiTopicDetailResultDTO> getTopicDetail(@LoginUser TokenDto tokenDto, @RequestParam("topicId")String topicId ){
return topicService.getTopicDetail(tokenDto,topicId);
}
/**
* @Description 查看历史话题(分页,允许状态筛选)
* @Param tokenDto
* @Param ResiTopicPageFormDTO.class
* @return Result<List<ResiTopicInfoResultDTO>>
* @Author wangc
* @Date 2020.04.01 10:36
**/
@RequestMapping("getpasttopiclist")
public Result<List<ResiTopicInfoResultDTO>> getPastTopicList(@LoginUser TokenDto tokenDto, @RequestBody ResiTopicPageFormDTO topicPageFormDTO){
ValidatorUtils.validateEntity(topicPageFormDTO);
return topicService.getPastTopicList(tokenDto,topicPageFormDTO);
}
/**
* @Description 查看组内最近十条话题
* @Param tokenDto
* @Param groupId
* @return Result<List<ResiTopicInfoResultDTO>>
* @Author wangc
* @Date 2020.04.02 00:01
**/
@RequestMapping("getlatesttentopic")
Result<List<ResiTopicInfoResultDTO>> getLatestTenTopics(TokenDto tokenDto,String groupId){
return topicService.getLatestTenTopics(tokenDto,groupId);
}
/**
* @Description 屏蔽话题
* @Param tokenDto
* @Param ResiTopicHiddenFormDTO.class
* @return Result
* @Author wangc
* @Date 2020.04.01 12:38
**/
@RequestMapping("hidetopic")
Result hideTopic(TokenDto tokenDto,ResiTopicOperationFormDTO hiddenFormDTO){
ValidatorUtils.validateEntity(hiddenFormDTO);
return topicService.hideTopic(tokenDto,hiddenFormDTO);
}
/**
* @Description 屏蔽话题列表查询
* @Param tokenDto
* @Param ResiTopicPageFormDTO.class
* @return List<ResiTopicInfoResultDTO>
* @Author wangc
* @Date 2020.04.01 16:45
**/
@RequestMapping("gethiddentopic")
Result<List<ResiTopicInfoResultDTO>> getHiddenTopic(TokenDto tokenDto,ResiTopicPageFormDTO topicPageFormDTO){
ValidatorUtils.validateEntity(topicPageFormDTO);
return topicService.getHiddenTopics(tokenDto,topicPageFormDTO);
}
return new Result(); /**
* @Description 批量取消屏蔽
* @Param tokenDto
* @Param topicIds
* @return Result
* @Author wangc
* @Date 2020.04.01 14:17
**/
@RequestMapping("cancelhiddentopics")
Result cancelHiddenTopics(TokenDto tokenDto,List<String> topicIds){
return topicService.cancelHiddenTopics(tokenDto,topicIds);
} }
/**
* @Description 关闭话题
* @Param tokenDto
* @Param ResiTopicOperationFormDTO.class
* @return Result.class
* @Author wangc
* @Date 2020.04.01 15:37
**/
@RequestMapping("closetopic")
Result closeTopic(TokenDto tokenDto,ResiTopicOperationFormDTO closeFormDTO){
ValidatorUtils.validateEntity(closeFormDTO);
return topicService.closeTopic(tokenDto,closeFormDTO);
}
} }

19
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicAttachmentDao.java

@ -33,5 +33,22 @@ import java.util.List;
@Mapper @Mapper
public interface ResiTopicAttachmentDao extends BaseDao<ResiTopicAttachmentEntity> { public interface ResiTopicAttachmentDao extends BaseDao<ResiTopicAttachmentEntity> {
void insertBatch(List<ResiTopicAttachmentEntity> list); /**
* @Description 批量插入
* @Param
* @return
* @Author wangc
* @Date 2020.04.01 13:39
**/
int insertBatch(List<ResiTopicAttachmentEntity> list);
/**
* @Description 重写Insert方法不需要传CreatedDate UpdatedBy UpdatedDate DelFlag Revision
* @Param attachmentEntity
* @return int 受影响的行数
* @Author wangc
* @Date 2020.04.01 13:40
**/
int insertOne(ResiTopicAttachmentEntity attachmentEntity);
} }

25
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicCommentDao.java

@ -19,9 +19,13 @@ package com.epmet.modules.topic.dao;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.modules.topic.entity.ResiTopicCommentEntity; import com.epmet.modules.comment.entity.ResiTopicCommentEntity;
import com.epmet.resi.group.dto.comment.form.ResiQueryCommentFormDTO;
import com.epmet.resi.group.dto.comment.result.ResiCommentResultDTO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/** /**
* 话题评论表 * 话题评论表
* *
@ -30,5 +34,22 @@ import org.apache.ibatis.annotations.Mapper;
*/ */
@Mapper @Mapper
public interface ResiTopicCommentDao extends BaseDao<ResiTopicCommentEntity> { public interface ResiTopicCommentDao extends BaseDao<ResiTopicCommentEntity> {
/**
* @Description 重写Insert方法不需要传CreatedDate UpdatedBy UpdatedDate DelFlag Revision
* @Param commentEntity
* @return int
* @Author wangc
* @Date 2020.04.01 17:40
**/
int insertOne(ResiTopicCommentEntity commentEntity);
/**
* @Description 得到某个话题的评论列表 分页
* @Param ResiQueryCommentFormDTO
* @return Result<List<ResiCommentResultDTO>>
* @Author wangc
* @Date 2020.04.01 17:15
**/
List<ResiCommentResultDTO> getCommentList(ResiQueryCommentFormDTO queryCommentFormDTO);
} }

45
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java

@ -20,6 +20,7 @@ package com.epmet.modules.topic.dao;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.modules.topic.entity.ResiTopicEntity; import com.epmet.modules.topic.entity.ResiTopicEntity;
import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO; import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -36,14 +37,13 @@ import java.util.List;
public interface ResiTopicDao extends BaseDao<ResiTopicEntity> { public interface ResiTopicDao extends BaseDao<ResiTopicEntity> {
/** /**
* @Description 自定义新增语句 * @Description 重写Insert方法不需要传CreatedDate UpdatedBy UpdatedDate DelFlag Revision
* @Param ResiTopicEntity.class * @Param ResiTopicEntity.class
* @return int * @return int
* @Author wangc * @Author wangc
* @Date 2020.04.01 09:39 * @Date 2020.04.01 09:39
**/ **/
@Override int insertOne(ResiTopicEntity resiTopic);
int insert(ResiTopicEntity resiTopic);
/** /**
* @Description 查询该组内最近十条话题信息 * @Description 查询该组内最近十条话题信息
@ -52,5 +52,42 @@ public interface ResiTopicDao extends BaseDao<ResiTopicEntity> {
* @Author wangc * @Author wangc
* @Date 2020.04.01 09:40 * @Date 2020.04.01 09:40
**/ **/
List<ResiTopicInfoResultDTO> getLatestTenTopics(@Param("groupId")String groupId); List<ResiTopicInfoResultDTO> getLatestTenTopics(@Param("groupId")String groupId,@Param("userId")String userId);
/**
* @Description 查看历史话题(分页,允许状态筛选)
* @Param topicPageFormDTO
* @return List<ResiTopicInfoResultDTO>
* @Author wangc
* @Date 2020.04.01 11:08
**/
List<ResiTopicInfoResultDTO> getPastTopics(ResiTopicPageFormDTO topicPageFormDTO);
/**
* @Description 修改话题
* @Param ResiTopicEntity.class
* @return Result.class
* @Author wangc
* @Date 2020.04.01 13:08
**/
int update(ResiTopicEntity topicEntity);
/**
* @Description 批量取消屏蔽操作
* @Param List<String>
* @Param updatedBy
* @return int
* @Author wangc
* @Date 2020.04.01 15:20
**/
int cancelHiddenOrCloseBatch(@Param("list")List<String> ids,@Param("updatedBy")String updatedBy,@Param("status")String status);
/**
* @Description 批量更新
* @Param List<ResiTopicEntity>
* @return int
* @Author wangc
* @Date 2020.04.01 15:21
**/
int updateBatch(List<ResiTopicEntity> list);
} }

11
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicOperationDao.java

@ -30,5 +30,14 @@ import org.apache.ibatis.annotations.Mapper;
*/ */
@Mapper @Mapper
public interface ResiTopicOperationDao extends BaseDao<ResiTopicOperationEntity> { public interface ResiTopicOperationDao extends BaseDao<ResiTopicOperationEntity> {
/**
* @Description 重写Insert方法不需要传CreatedDate UpdatedBy UpdatedDate DelFlag Revision
* @Param topicOperationEntity
* @return int 受影响的行数
* @Author wangc
* @Date 2020.04.01 13:45
**/
int insertOne(ResiTopicOperationEntity topicOperationEntity);
} }

4
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/entity/ResiTopicOperationEntity.java

@ -48,4 +48,8 @@ public class ResiTopicOperationEntity extends BaseEpmetEntity {
*/ */
private String operationType; private String operationType;
/**
* 屏蔽理由非必填
* */
private String operationReason;
} }

28
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicCommentService.java

@ -19,8 +19,13 @@ package com.epmet.modules.topic.service;
import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.modules.topic.entity.ResiTopicCommentEntity; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.modules.comment.entity.ResiTopicCommentEntity;
import com.epmet.resi.group.dto.comment.form.ResiQueryCommentFormDTO;
import com.epmet.resi.group.dto.comment.result.ResiCommentResultDTO;
import com.epmet.resi.group.dto.topic.ResiTopicCommentDTO; import com.epmet.resi.group.dto.topic.ResiTopicCommentDTO;
import com.epmet.resi.group.dto.topic.form.ResiPublishCommentFormDTO;
import java.util.List; import java.util.List;
@ -93,4 +98,25 @@ public interface ResiTopicCommentService extends BaseService<ResiTopicCommentEnt
* @date 2020-03-31 * @date 2020-03-31
*/ */
void delete(String[] ids); void delete(String[] ids);
/**
* @Description 评论话题
* @Param tokenDto
* @Param resiCommentFormDTO
* @return Result
* @Author wangc
* @Date 2020.03.31 17:36
**/
Result commentTopic(TokenDto tokenDto, ResiPublishCommentFormDTO resiCommentFormDTO);
/**
* @Description 得到某个话题的评论列表 分页
* @Param tokenDto
* @Param ResiQueryCommentFormDTO
* @return Result<List<ResiCommentResultDTO>>
* @Author wangc
* @Date 2020.04.01 17:15
**/
Result<List<ResiCommentResultDTO>> getCommentList(TokenDto tokenDto,ResiQueryCommentFormDTO commentFormDTO);
} }

64
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java

@ -23,9 +23,11 @@ import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.modules.topic.entity.ResiTopicEntity; import com.epmet.modules.topic.entity.ResiTopicEntity;
import com.epmet.resi.group.dto.topic.ResiTopicDTO; import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.form.ResiCommentFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicOperationFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPublishFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPublishFormDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicDetailResultDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO; import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO;
@ -110,16 +112,6 @@ public interface ResiTopicService extends BaseService<ResiTopicEntity> {
**/ **/
Result createTopic(TokenDto tokenDto, ResiTopicPublishFormDTO resiTopicPublishFormDTO); Result createTopic(TokenDto tokenDto, ResiTopicPublishFormDTO resiTopicPublishFormDTO);
/**
* @Description 评论话题
* @Param tokenDto
* @Param resiCommentFormDTO
* @return Result
* @Author wangc
* @Date 2020.03.31 17:36
**/
Result commentTopic(TokenDto tokenDto, ResiCommentFormDTO resiCommentFormDTO);
/** /**
* @Description 查看组内最近十条话题 * @Description 查看组内最近十条话题
* @Param tokenDto * @Param tokenDto
@ -139,4 +131,54 @@ public interface ResiTopicService extends BaseService<ResiTopicEntity> {
* @Date 2020.04.01 10:36 * @Date 2020.04.01 10:36
**/ **/
Result<List<ResiTopicInfoResultDTO>> getPastTopicList(TokenDto tokenDto, ResiTopicPageFormDTO topicPageFormDTO); Result<List<ResiTopicInfoResultDTO>> getPastTopicList(TokenDto tokenDto, ResiTopicPageFormDTO topicPageFormDTO);
/**
* @Description 屏蔽话题
* @Param tokenDto
* @Param ResiTopicHiddenFormDTO.class
* @return Result
* @Author wangc
* @Date 2020.04.01 12:38
**/
Result hideTopic(TokenDto tokenDto,ResiTopicOperationFormDTO hiddenFormDTO);
/**
* @Description 批量取消屏蔽
* @Param tokenDto
* @Param topicIds
* @return Result
* @Author wangc
* @Date 2020.04.01 14:17
**/
Result cancelHiddenTopics(TokenDto tokenDto,List<String> topicIds);
/**
* @Description 关闭话题
* @Param tokenDto
* @Param ResiTopicOperationFormDTO.class
* @return Result.class
* @Author wangc
* @Date 2020.04.01 15:37
**/
Result closeTopic(TokenDto tokenDto,ResiTopicOperationFormDTO closeFormDTO);
/**
* @Description 查看话题详情
* @Param tokenDto
* @Param topicId
* @return ResiTopicDetailResultDTO
* @Author wangc
* @Date 2020.04.01 15:56
**/
Result<ResiTopicDetailResultDTO> getTopicDetail(TokenDto tokenDto, String topicId);
/**
* @Description 屏蔽话题列表查询
* @Param tokenDto
* @Param ResiTopicPageFormDTO.class
* @return List<ResiTopicInfoResultDTO>
* @Author wangc
* @Date 2020.04.01 16:45
**/
Result<List<ResiTopicInfoResultDTO>> getHiddenTopics(TokenDto tokenDto,ResiTopicPageFormDTO topicPageFormDTO);
} }

79
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicCommentServiceImpl.java

@ -20,15 +20,28 @@ package com.epmet.modules.topic.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.utils.Result;
import com.epmet.modules.comment.entity.ResiTopicCommentEntity;
import com.epmet.modules.member.service.ResiGroupMemberService;
import com.epmet.modules.topic.dao.ResiTopicCommentDao; import com.epmet.modules.topic.dao.ResiTopicCommentDao;
import com.epmet.modules.topic.entity.ResiTopicCommentEntity;
import com.epmet.modules.topic.service.ResiTopicCommentService; import com.epmet.modules.topic.service.ResiTopicCommentService;
import com.epmet.modules.topic.service.ResiTopicService;
import com.epmet.resi.group.constant.MemberStateConstant;
import com.epmet.resi.group.constant.TopicConstant;
import com.epmet.resi.group.dto.comment.form.ResiQueryCommentFormDTO;
import com.epmet.resi.group.dto.comment.result.ResiCommentResultDTO;
import com.epmet.resi.group.dto.member.ResiGroupMemberDTO;
import com.epmet.resi.group.dto.topic.ResiTopicCommentDTO; import com.epmet.resi.group.dto.topic.ResiTopicCommentDTO;
import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.form.ResiPublishCommentFormDTO;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -45,7 +58,11 @@ import java.util.Map;
@Service @Service
public class ResiTopicCommentServiceImpl extends BaseServiceImpl<ResiTopicCommentDao, ResiTopicCommentEntity> implements ResiTopicCommentService { public class ResiTopicCommentServiceImpl extends BaseServiceImpl<ResiTopicCommentDao, ResiTopicCommentEntity> implements ResiTopicCommentService {
@Autowired
ResiTopicService resiTopicService;
@Autowired
ResiGroupMemberService resiGroupMemberService;
@Override @Override
public PageData<ResiTopicCommentDTO> page(Map<String, Object> params) { public PageData<ResiTopicCommentDTO> page(Map<String, Object> params) {
@ -99,4 +116,64 @@ public class ResiTopicCommentServiceImpl extends BaseServiceImpl<ResiTopicCommen
baseDao.deleteBatchIds(Arrays.asList(ids)); baseDao.deleteBatchIds(Arrays.asList(ids));
} }
/**
* @Description 评论话题
* @Param tokenDto
* @Param resiCommentFormDTO
* @return Result
* @Author wangc
* @Date 2020.03.31 17:36
**/
@Override
public Result commentTopic(TokenDto tokenDto, ResiPublishCommentFormDTO resiCommentFormDTO) {
//1.判断当前用户是否被禁言
ResiTopicDTO topic = resiTopicService.get(resiCommentFormDTO.getTopicId());
if(null == topic){
return new Result().error();
}
ResiGroupMemberDTO resiGroupMemberDTO =
resiGroupMemberService.getResiGroupMember(tokenDto.getUserId() , topic.getGroupId());
//查看当前用户是否被禁言或者被移除
if(null != resiGroupMemberDTO){
if(MemberStateConstant.SILENT.equals(resiGroupMemberDTO.getStatus())){
//当前用户被禁言
return new Result().error();
}else if(MemberStateConstant.REMOVED.equals(resiGroupMemberDTO.getStatus())){
//当前用户已被移出群
return new Result().error();
}
}else{
//当前用户非组内成员
return new Result().error();
}
if(resiCommentFormDTO.getCommentContent().length() > TopicConstant.MAX_NUMBER_OF_COMMENT){
return new Result().error();
}
ResiTopicCommentEntity comment = ConvertUtils.sourceToTarget(resiCommentFormDTO,ResiTopicCommentEntity.class);
comment.setStatus(TopicConstant.PUBLISHMENT);
baseDao.insertOne(comment);
return new Result();
}
/**
* @Description 得到某个话题的评论列表 分页
* @Param tokenDto
* @Param ResiQueryCommentFormDTO
* @return Result<List<ResiCommentResultDTO>>
* @Author wangc
* @Date 2020.04.01 17:15
**/
@Override
public Result<List<ResiCommentResultDTO>> getCommentList(TokenDto tokenDto, ResiQueryCommentFormDTO commentFormDTO) {
commentFormDTO.setPageNo((commentFormDTO.getPageNo() - NumConstant.ONE) * commentFormDTO.getPageSize());
return new Result<List<ResiCommentResultDTO>>().ok(baseDao.getCommentList(commentFormDTO));
}
} }

331
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java

@ -20,21 +20,24 @@ package com.epmet.modules.topic.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.UserResiInfoDTO;
import com.epmet.dto.form.UserResiInfoFormDTO;
import com.epmet.modules.feign.EpmetUserFeignClient; import com.epmet.modules.feign.EpmetUserFeignClient;
import com.epmet.modules.group.dao.ResiGroupDao; import com.epmet.modules.group.dao.ResiGroupDao;
import com.epmet.modules.group.entity.ResiGroupEntity; import com.epmet.modules.group.entity.ResiGroupEntity;
import com.epmet.modules.member.dao.ResiGroupMemberDao;
import com.epmet.modules.member.service.ResiGroupMemberService; import com.epmet.modules.member.service.ResiGroupMemberService;
import com.epmet.modules.topic.dao.ResiTopicAttachmentDao; import com.epmet.modules.topic.dao.ResiTopicAttachmentDao;
import com.epmet.modules.topic.dao.ResiTopicCommentDao; import com.epmet.modules.topic.dao.ResiTopicCommentDao;
import com.epmet.modules.topic.dao.ResiTopicDao; import com.epmet.modules.topic.dao.ResiTopicDao;
import com.epmet.modules.topic.dao.ResiTopicOperationDao; import com.epmet.modules.topic.dao.ResiTopicOperationDao;
import com.epmet.modules.topic.entity.ResiTopicAttachmentEntity; import com.epmet.modules.topic.entity.ResiTopicAttachmentEntity;
import com.epmet.modules.topic.entity.ResiTopicCommentEntity;
import com.epmet.modules.topic.entity.ResiTopicEntity; import com.epmet.modules.topic.entity.ResiTopicEntity;
import com.epmet.modules.topic.entity.ResiTopicOperationEntity; import com.epmet.modules.topic.entity.ResiTopicOperationEntity;
import com.epmet.modules.topic.service.ResiTopicService; import com.epmet.modules.topic.service.ResiTopicService;
@ -44,15 +47,18 @@ import com.epmet.resi.group.constant.TopicConstant;
import com.epmet.resi.group.dto.member.ResiGroupMemberDTO; import com.epmet.resi.group.dto.member.ResiGroupMemberDTO;
import com.epmet.resi.group.dto.topic.ResiTopicDTO; import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.form.ResiCommentFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicOperationFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPublishFormDTO; import com.epmet.resi.group.dto.topic.form.ResiTopicPublishFormDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicDetailResultDTO;
import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO; import com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -84,6 +90,9 @@ public class ResiTopicServiceImpl extends BaseServiceImpl<ResiTopicDao, ResiTopi
@Autowired @Autowired
ResiGroupDao resiGroupDao; ResiGroupDao resiGroupDao;
@Autowired
ResiGroupMemberDao resiGroupMemberDao;
@Override @Override
public PageData<ResiTopicDTO> page(Map<String, Object> params) { public PageData<ResiTopicDTO> page(Map<String, Object> params) {
IPage<ResiTopicEntity> page = baseDao.selectPage( IPage<ResiTopicEntity> page = baseDao.selectPage(
@ -153,17 +162,9 @@ public class ResiTopicServiceImpl extends BaseServiceImpl<ResiTopicDao, ResiTopi
ResiGroupMemberDTO resiGroupMemberDTO = ResiGroupMemberDTO resiGroupMemberDTO =
resiGroupMemberService.getResiGroupMember(tokenDto.getUserId() , resiTopicPublishFormDTO.getGroupId()); resiGroupMemberService.getResiGroupMember(tokenDto.getUserId() , resiTopicPublishFormDTO.getGroupId());
if(null != resiGroupMemberDTO){ Result result = verifySilentOrRemoved(resiGroupMemberDTO);
if(MemberStateConstant.SILENT.equals(resiGroupMemberDTO.getStatus())){ if(!result.success()){
//当前用户被禁言 return result;
return new Result().error();
}else if(MemberStateConstant.REMOVED.equals(resiGroupMemberDTO.getStatus())){
//当前用户已被移出群
return new Result().error();
}
}else{
//当前用户非组内成员
return new Result().error();
} }
//2.创建话题 //2.创建话题
@ -173,7 +174,7 @@ public class ResiTopicServiceImpl extends BaseServiceImpl<ResiTopicDao, ResiTopi
} }
ResiTopicEntity topic = ConvertUtils.sourceToTarget(resiTopicPublishFormDTO,ResiTopicEntity.class); ResiTopicEntity topic = ConvertUtils.sourceToTarget(resiTopicPublishFormDTO,ResiTopicEntity.class);
topic.setCreatedBy(tokenDto.getUserId()); topic.setCreatedBy(tokenDto.getUserId());
baseDao.insert(topic); baseDao.insertOne(topic);
if(StringUtils.isBlank(topic.getId())){ if(StringUtils.isBlank(topic.getId())){
//没有返回主键 //没有返回主键
return new Result().error(); return new Result().error();
@ -184,7 +185,7 @@ public class ResiTopicServiceImpl extends BaseServiceImpl<ResiTopicDao, ResiTopi
attachment.setAttachmentUrl(url); attachment.setAttachmentUrl(url);
attachment.setTopicId(topic.getId()); attachment.setTopicId(topic.getId());
attachment.setCreatedBy(tokenDto.getUnionId()); attachment.setCreatedBy(tokenDto.getUnionId());
resiTopicAttachmentDao.insert(attachment); resiTopicAttachmentDao.insertOne(attachment);
} }
} }
@ -192,101 +193,301 @@ public class ResiTopicServiceImpl extends BaseServiceImpl<ResiTopicDao, ResiTopi
ResiTopicOperationEntity operation = new ResiTopicOperationEntity(); ResiTopicOperationEntity operation = new ResiTopicOperationEntity();
operation.setTopicId(topic.getId()); operation.setTopicId(topic.getId());
operation.setOperationType(TopicConstant.PUBLISHMENT); operation.setOperationType(TopicConstant.PUBLISHMENT);
resiTopicOperationDao.insert(operation); resiTopicOperationDao.insertOne(operation);
return new Result(); return new Result();
} }
/** /**
* @Description 评论话题 * @Description 查看组内最近十条话题
* @Param tokenDto
* @Param groupId
* @return Result<List<ResiTopicInfoResultDTO>>
* @Author wangc
* @Date 2020.04.01 08:59
**/
@Override
public Result<List<ResiTopicInfoResultDTO>> getLatestTenTopics(TokenDto tokenDto, String groupId) {
if(StringUtils.isBlank(groupId)){
return new Result<List<ResiTopicInfoResultDTO>>().error();
}
//1.查询话题列表
List<ResiTopicInfoResultDTO> lastestTenTopics =
baseDao.getLatestTenTopics(groupId,tokenDto.getUserId());
//2.遍历存储用户信息
ResiGroupEntity group = resiGroupDao.selectById(groupId);
if(null != group && ModuleConstant.DEL_FLAG.equals(group.getDelFlag())){
}
return new Result<List<ResiTopicInfoResultDTO>>().ok(lastestTenTopics);
}
/**
* @Description 查看历史话题(分页,允许状态筛选)
* @Param tokenDto * @Param tokenDto
* @Param resiCommentFormDTO * @Param ResiTopicPageFormDTO.class
* @return Result<List<ResiTopicInfoResultDTO>>
* @Author wangc
* @Date 2020.04.01 10:36
**/
@Override
public Result<List<ResiTopicInfoResultDTO>> getPastTopicList(TokenDto tokenDto, ResiTopicPageFormDTO topicPageFormDTO) {
//1.查询历史话题列表
topicPageFormDTO.setUserId(tokenDto.getUserId());
topicPageFormDTO.setPageNo((topicPageFormDTO.getPageNo() - NumConstant.ONE) * topicPageFormDTO.getPageSize());
List<ResiTopicInfoResultDTO> pastTopics =
baseDao.getPastTopics(topicPageFormDTO);
//2.遍历用户信息
return new Result<List<ResiTopicInfoResultDTO>>().ok(pastTopics);
}
/**
* @Description 屏蔽话题
* @Param tokenDto
* @Param ResiTopicHiddenFormDTO.class
* @return Result * @return Result
* @Author wangc * @Author wangc
* @Date 2020.03.31 17:36 * @Date 2020.04.01 12:38
**/ **/
@Override @Override
public Result commentTopic(TokenDto tokenDto, ResiCommentFormDTO resiCommentFormDTO) { public Result hideTopic(TokenDto tokenDto, ResiTopicOperationFormDTO hiddenFormDTO) {
//1.判断当前用户是否被禁言
ResiTopicDTO topic = get(resiCommentFormDTO.getTopicId());
if(null == topic){
return new Result().error(); //1.1拿到组Id
ResiTopicEntity topic = baseDao.selectById(hiddenFormDTO.getTopicId());
//1.2校验身份,是否是该话题所属群组的组长
Result verifyError = verifyLeader(topic,tokenDto.getUserId());
if(!verifyError.success()) {
return verifyError;
} }
ResiGroupMemberDTO resiGroupMemberDTO = //2.屏蔽话题
resiGroupMemberService.getResiGroupMember(tokenDto.getUserId() , topic.getGroupId()); ResiTopicEntity topicForUpdate = new ResiTopicEntity();
topicForUpdate.setId(hiddenFormDTO.getTopicId());
topicForUpdate.setUpdatedBy(tokenDto.getUserId());
topicForUpdate.setStatus(TopicConstant.HIDDEN);
baseDao.update(topicForUpdate);
//3.话题操作记录
ResiTopicOperationEntity operationRecord = new ResiTopicOperationEntity();
operationRecord.setTopicId(hiddenFormDTO.getTopicId());
operationRecord.setOperationReason(hiddenFormDTO.getOperateReason());
operationRecord.setOperationType(TopicConstant.HIDDEN);
operationRecord.setCreatedBy(tokenDto.getUserId());
resiTopicOperationDao.insertOne(operationRecord);
if(null != resiGroupMemberDTO){ return new Result();
if(MemberStateConstant.SILENT.equals(resiGroupMemberDTO.getStatus())){ }
//当前用户被禁言
return new Result().error(); /**
}else if(MemberStateConstant.REMOVED.equals(resiGroupMemberDTO.getStatus())){ * @Description 批量取消屏蔽
//当前用户已被移出群 * @Param tokenDto
return new Result().error(); * @Param topicIds
} * @return Result
}else{ * @Author wangc
//当前用户非组内成员 * @Date 2020.04.01 14:17
return new Result().error(); **/
@Override
public Result cancelHiddenTopics(TokenDto tokenDto, List<String> topicIds) {
//1.1拿到组Id
ResiTopicEntity topic = baseDao.selectById(topicIds.get(0));
//1.2校验身份,是否是该话题所属群组的组长
Result verifyError = verifyLeader(topic,tokenDto.getUserId());
if(!verifyError.success()) {
return verifyError;
} }
if(resiCommentFormDTO.getCommentContent().length() > TopicConstant.MAX_NUMBER_OF_COMMENT){ //2.批量取消屏蔽
baseDao.cancelHiddenOrCloseBatch(topicIds,tokenDto.getUserId(),TopicConstant.PUBLISHMENT);
return new Result().error(); //3.记录话题操作日志
for(String id : topicIds){
ResiTopicOperationEntity operation = new ResiTopicOperationEntity();
operation.setTopicId(id);
operation.setOperationType(TopicConstant.CANCEL_HIDDEN);
operation.setCreatedBy(tokenDto.getUserId());
resiTopicOperationDao.insertOne(operation);
} }
ResiTopicCommentEntity comment = ConvertUtils.sourceToTarget(resiCommentFormDTO,ResiTopicCommentEntity.class);
comment.setStatus(TopicConstant.PUBLISHMENT);
resiTopicCommentDao.insert(comment);
return new Result(); return new Result();
} }
/** /**
* @Description 查看组内最近十条话题 * @Description 关闭话题
* @Param tokenDto * @Param tokenDto
* @Param groupId * @Param ResiTopicOperationFormDTO.class
* @return Result<List<ResiTopicInfoResultDTO>> * @return Result.class
* @Author wangc * @Author wangc
* @Date 2020.04.01 08:59 * @Date 2020.04.01 15:37
**/ **/
@Override @Override
public Result<List<ResiTopicInfoResultDTO>> getLatestTenTopics(TokenDto tokenDto, String groupId) { public Result closeTopic(TokenDto tokenDto, ResiTopicOperationFormDTO closeFormDTO) {
//1.查询话题列表 //1.1拿到组Id
List<ResiTopicInfoResultDTO> lastestTenTopics = ResiTopicEntity topic = baseDao.selectById(tokenDto.getUserId());
baseDao.getLatestTenTopics(groupId);
//2.遍历放用户信息 //1.2校验身份,是否是该话题所属群组的组长
ResiGroupEntity group = resiGroupDao.selectById(groupId); Result verifyError = verifyLeader(topic,tokenDto.getUserId());
if(null != group && ModuleConstant.DEL_FLAG.equals(group.getDelFlag())){ if(!verifyError.success()) {
return verifyError;
}
//2.关闭操作
List<String> id = new ArrayList<>();
id.add(closeFormDTO.getTopicId());
baseDao.cancelHiddenOrCloseBatch(id,tokenDto.getUserId(),TopicConstant.CLOSED);
//3.记录话题操作日志
ResiTopicOperationEntity operation = new ResiTopicOperationEntity();
operation.setTopicId(id.get(0));
operation.setOperationReason(closeFormDTO.getOperateReason());
operation.setCreatedBy(tokenDto.getUserId());
operation.setOperationType(TopicConstant.CLOSED);
resiTopicOperationDao.insertOne(operation);
return new Result();
}
/**
* @Description 查看话题详情
* @Param tokenDto
* @Param topicId
* @return ResiTopicDetailResultDTO
* @Author wangc
* @Date 2020.04.01 15:56
**/
@Override
public Result<ResiTopicDetailResultDTO> getTopicDetail(TokenDto tokenDto, String topicId) {
if(StringUtils.isBlank(topicId)){
return new Result<ResiTopicDetailResultDTO>().error();
} }
for(ResiTopicInfoResultDTO obj:lastestTenTopics){ //1.获取话题基本信息
if(StringUtils.equals(tokenDto.getUserId(),obj.getUserId())){ ResiTopicEntity topicDetail = baseDao.selectById(topicId);
obj.setReleaseUserFlag(TopicConstant.PUBLISHED_BY_MYSELF); ResiTopicDetailResultDTO resultDTO = new ResiTopicDetailResultDTO();
}else{
obj.setReleaseUserFlag(TopicConstant.PUBLISHED_BY_OTHER); //2.查询话题附件
} QueryWrapper<ResiTopicAttachmentEntity> wrapper = new QueryWrapper<>();
wrapper.eq(TopicConstant.TOPIC_ID,topicId);
wrapper.eq(TopicConstant.DEL_FLAG,NumConstant.ZERO_STR);
wrapper.orderByDesc(TopicConstant.CREATED_DATE);
List<ResiTopicAttachmentEntity> attachments = resiTopicAttachmentDao.selectList(wrapper);
List<String> attachmentUrls = new ArrayList<>();
for(ResiTopicAttachmentEntity attachment : attachments){
attachmentUrls.add(attachment.getAttachmentUrl());
} }
return new Result<List<ResiTopicInfoResultDTO>>().ok(lastestTenTopics); resultDTO.setTopicImgs(attachmentUrls);
resultDTO.setReleaseTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(topicDetail.getCreatedTime()));
resultDTO.setTopicContent(topicDetail.getTopicContent());
//3.拿取用户信息
ResiTopicDTO topic = get(topicId);
ResiGroupEntity group = resiGroupDao.selectById(topic.getGroupId());
UserResiInfoFormDTO userParam = new UserResiInfoFormDTO();
userParam.setUserId(tokenDto.getUserId());
userParam.setCustomerId(group.getCustomerId());
Result<UserResiInfoDTO> userInfo =
epmetUserFeignClient.getUserResiInfoDTO(userParam);
if(userInfo.success()){
resultDTO.setReleaseUserName(userInfo.getData().getSurname() + userInfo.getData().getName());
//TODO 调用EpmetUserFeign的查询用户微信信息的方法拉取头像信息
resultDTO.setReleaseUserHeadPhoto("");
}
return new Result<ResiTopicDetailResultDTO>().ok(resultDTO);
} }
/** /**
* @Description 查看历史话题(分页,允许状态筛选) * @Description 屏蔽话题列表查询
* @Param tokenDto * @Param tokenDto
* @Param ResiTopicPageFormDTO.class * @Param ResiTopicPageFormDTO.class
* @return Result<List<ResiTopicInfoResultDTO>> * @return List<ResiTopicInfoResultDTO>
* @Author wangc * @Author wangc
* @Date 2020.04.01 10:36 * @Date 2020.04.01 16:45
**/ **/
@Override @Override
public Result<List<ResiTopicInfoResultDTO>> getPastTopicList(TokenDto tokenDto, ResiTopicPageFormDTO topicPageFormDTO) { public Result<List<ResiTopicInfoResultDTO>> getHiddenTopics(TokenDto tokenDto, ResiTopicPageFormDTO topicPageFormDTO) {
//1.查询屏蔽话题列表
topicPageFormDTO.setUserId(tokenDto.getUserId());
topicPageFormDTO.setPageNo((topicPageFormDTO.getPageNo() - NumConstant.ONE) * topicPageFormDTO.getPageSize());
topicPageFormDTO.setStatus(TopicConstant.HIDDEN);
List<ResiTopicInfoResultDTO> hiddenTopics =
baseDao.getPastTopics(topicPageFormDTO);
//2.遍历用户信息
return null;
return new Result<List<ResiTopicInfoResultDTO>>().ok(hiddenTopics);
} }
/**
* @Description 查询当前组员在组内是否被禁言或已被移除
* @Param resiGroupMemberDTO
* @return Result.class
* @Author wangc
* @Date 2020.04.01 15:00
**/
private Result verifySilentOrRemoved(ResiGroupMemberDTO resiGroupMemberDTO){
if(null != resiGroupMemberDTO){
if(MemberStateConstant.SILENT.equals(resiGroupMemberDTO.getStatus())){
//当前用户被禁言
return new Result().error();
}else if(MemberStateConstant.REMOVED.equals(resiGroupMemberDTO.getStatus())){
//当前用户已被移出群
return new Result().error();
}else{
return new Result();
}
}else{
//当前用户非组内成员
return new Result().error();
}
}
/**
* @Description 校验当前用户是否是该小组组长
* @Param
* @return
* @Author wangc
* @Date 2020.04.01 14:55
**/
private Result verifyLeader(ResiTopicEntity topic,String userId){
if(null != topic){
ResiGroupMemberDTO leaderVerify = resiGroupMemberDao.selectLeaderMember(topic.getGroupId());
if(null != leaderVerify){
//1.2判断是否是组长
if(!StringUtils.equals(leaderVerify.getId(),userId)){
//非组长,无权限进行操作
return new Result().error();
}else{
return new Result();
}
}else{
return new Result().error();
}
}else{
return new Result().error();
}
}
} }

59
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicAttachmentDao.xml

@ -3,7 +3,66 @@
<mapper namespace="com.epmet.modules.topic.dao.ResiTopicAttachmentDao"> <mapper namespace="com.epmet.modules.topic.dao.ResiTopicAttachmentDao">
<insert id="insertOne" useGeneratedKeys="true" keyColumn="id" keyProperty="id" parameterType="com.epmet.modules.topic.entity.ResiTopicAttachmentEntity">
<selectKey keyProperty="id" resultType="java.lang.String" order="BEFORE">
select replace(uuid(),'-','') AS APPROVAL_ID
</selectKey>
INSERT INTO resi_topic_attachment
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test ='null != topicId'>
topic_id,
</if>
<if test ='null != attachmentName'>
attachment_name,
</if>
<if test ='null != attachmentFormat'>
attachment_format,
</if>
<if test ='null != attachmentType'>
attachment_type,
</if>
<if test ='null != attachmentUrl'>
attachment_url,
</if>
<if test ='null != createdBy'>
created_by,
</if>
del_flag,
revision,
created_time,
updated_by,
updated_time
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test ='null != topicId'>
#{topicId},
</if>
<if test ='null != attachmentName'>
#{attachmentName},
</if>
<if test ='null != attachmentFormat'>
#{attachmentFormat},
</if>
<if test ='null != attachmentType'>
#{attachmentType},
</if>
<if test ='null != attachmentUrl'>
#{attachmentUrl},
</if>
<if test ='null != createdBy'>
#{createdBy},
</if>
'0',
'0',
now(),
'APP_USER',
now()
</trim>
</insert>
<!-- 批量插入 -->
<insert id="insertBatch" parameterType="java.util.List"> <insert id="insertBatch" parameterType="java.util.List">
insert into user insert into user

62
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicCommentDao.xml

@ -3,7 +3,67 @@
<mapper namespace="com.epmet.modules.topic.dao.ResiTopicCommentDao"> <mapper namespace="com.epmet.modules.topic.dao.ResiTopicCommentDao">
<!-- 新增一条数据 : 一条评论-->
<insert id="insertOne" parameterType="com.epmet.modules.comment.entity.ResiTopicCommentEntity">
<selectKey keyProperty="id" resultType="java.lang.String" order="BEFORE">
select replace(uuid(),'-','') AS APPROVAL_ID
</selectKey>
INSERT INTO resi_topic_operation
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test ='null != topicId'>
topic_id,
</if>
<if test ='null != commentContent'>
comment_content,
</if>
<if test='null != status'>
status,
</if>
<if test ='null != createdBy'>
created_by,
</if>
del_flag,
revision,
created_time,
updated_by,
updated_time
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test ='null != topicId'>
#{topicId},
</if>
<if test ='null != commentContent'>
#{commentContent},
</if>
<if test='null != status'>
#{status},
</if>
<if test ='null != createdBy'>
#{createdBy},
</if>
'0',
'0',
now(),
'APP_USER',
now()
</trim>
</insert>
<!-- 分页查询某个话题下的评论列表 -->
<select id="getCommentList" parameterType="com.epmet.resi.group.dto.comment.form.ResiQueryCommentFormDTO" resultType="com.epmet.resi.group.dto.comment.result.ResiCommentResultDTO">
ID AS commentId,
COMMENT_CONTENT,
STATUS AS commentStatus,
CREATED_TIME AS commentTime,
CREATED_BY AS userId
FROM
RESI_TOPIC_COMMENT
WHERE
DEL_FLAG = '0'
AND
TOPIC_ID = #{topicId}
LIMIT
#{pageNo},#{pageSize}
</select>
</mapper> </mapper>

117
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml

@ -3,8 +3,8 @@
<mapper namespace="com.epmet.modules.topic.dao.ResiTopicDao"> <mapper namespace="com.epmet.modules.topic.dao.ResiTopicDao">
<!-- 新增话题 -->
<insert id="insert" useGeneratedKeys="true" keyColumn="id" keyProperty="id" parameterType="com.epmet.modules.topic.entity.ResiTopicEntity"> <insert id="insertOne" useGeneratedKeys="true" keyColumn="id" keyProperty="id" parameterType="com.epmet.modules.topic.entity.ResiTopicEntity">
<selectKey keyProperty="id" resultType="java.lang.String" order="BEFORE"> <selectKey keyProperty="id" resultType="java.lang.String" order="BEFORE">
select replace(uuid(),'-','') AS APPROVAL_ID select replace(uuid(),'-','') AS APPROVAL_ID
@ -88,13 +88,16 @@
</trim> </trim>
</insert> </insert>
<!-- 查询最近十条话题 -->
<select id="getLatestTenTopics" parameterType="string" resultType="com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO"> <select id="getLatestTenTopics" parameterType="string" resultType="com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO">
SELECT SELECT
ID, ID,
GROUP_ID TOPIC_CONTENT, GROUP_ID,
TOPIC_CONTENT,
STATUS, STATUS,
CREATED_TIME AS releaseTime, CREATED_TIME AS releaseTime,
CREATED_BY AS userId CREATED_BY AS userId,
DECODE(CREATED_BY,#{userId},'me','other') as releaseUserFlag
FROM FROM
RESI_TOPIC RESI_TOPIC
WHERE WHERE
@ -106,4 +109,110 @@
LIMIT 10 LIMIT 10
</select> </select>
<!-- 查询历史话题,分页,参数查询 -->
<select id="getPastTopics" parameterType="com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO" resultType="com.epmet.resi.group.dto.topic.result.ResiTopicInfoResultDTO">
SELECT
ID,
GROUP_ID,
TOPIC_CONTENT,
STATUS,
CREATED_TIME AS releaseTime,
CREATED_BY AS userId,
DECODE(CREATED_BY,#{userId},'me','other') as releaseUserFlag
FROM
RESI_TOPIC
<where>
DEL_FLAG = '0'
<if test='"hidden" != status'>
AND <![CDATA[ STATUS <> 'hidden' ]]>
</if>
AND GROUP_ID = #{groupId}
<if test='null != status and "" != status'>
AND STATUS = #{status}
</if>
</where>
ORDER BY
CREATED_TIME DESC
LIMIT #{pageNo},#{pageSize}
</select>
<!-- 单条更新 -->
<update id="update" parameterType="com.epmet.modules.topic.entity.ResiTopicEntity">
UPDATE
RESI_TOPIC
<set>
<if test='null != status and "" != status'>
STATUS = #{status} ,
</if>
<if test='null != delFlag and "" != delFlag'>
DEL_FLAG = #{delFlag} ,
</if>
<if test='null != updatedBy and "" != updatedBy'>
UPDATED_BY = #{updatedBy} ,
</if>
<if test='null != topicContent and "" != topicContent'>
TOPIC_CONTENT = #{topicContent} ,
</if>
UPDATED_DATE = NOW()
</set>
WHERE
ID = #{id}
AND DEL_FLAG = '0'
</update>
<!-- 批量取消屏蔽 -->
<update id="cancelHiddenOrCloseBatch">
UPDATE
RESI_TOPIC
SET
STATUS = #{status},
UPDATED_DATE = NOW(),
UPDATED_BY = #{updatedBy}
WHERE
ID
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
${item}
</foreach>
AND
DEL_FLAG = '0'
AND
STATUS = 'hidden'
</update>
<!-- 批量更新 -->
<update id="updateBatch" parameterType="list">
update RESI_TOPIC
<trim prefix="set" suffixOverrides=",">
<trim prefix="topic_content= case" suffix="end,">
<foreach collection="list" item="i" index="index">
<if test="i.topicContent!=null">
when id=#{i.id} then #{i.topicContent}
</if>
</foreach>
</trim>
<trim prefix=" status =case" suffix="end,">
<foreach collection="list" item="i" index="index">
<if test="i.status!=null">
when id=#{i.id} then #{i.status}
</if>
</foreach>
</trim>
<trim prefix="updated_by =case" suffix="end," >
<foreach collection="list" item="i" index="index">
<if test="i.updatedBy!=null">
when id=#{i.id} then #{i.updatedBy}
</if>
</foreach>
</trim>
</trim>
updated_date = now()
where
<foreach collection="list" separator="or" item="i" index="index" >
id=#{i.id}
</foreach>
</update>
</mapper> </mapper>

47
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicOperationDao.xml

@ -3,6 +3,53 @@
<mapper namespace="com.epmet.modules.topic.dao.ResiTopicOperationDao"> <mapper namespace="com.epmet.modules.topic.dao.ResiTopicOperationDao">
<!-- 新增操作 -->
<insert id="insertOne" useGeneratedKeys="true" keyColumn="id" keyProperty="id" parameterType="com.epmet.modules.topic.entity.ResiTopicOperationEntity">
<selectKey keyProperty="id" resultType="java.lang.String" order="BEFORE">
select replace(uuid(),'-','') AS APPROVAL_ID
</selectKey>
INSERT INTO resi_topic_operation
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test ='null != topicId'>
topic_id,
</if>
<if test ='null != operationType'>
operation_type,
</if>
<if test='null != operationReason'>
operation_reason,
</if>
<if test ='null != createdBy'>
created_by,
</if>
del_flag,
revision,
created_time,
updated_by,
updated_time
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test ='null != topicId'>
#{topicId},
</if>
<if test ='null != operationType'>
#{operationType},
</if>
<if test='null != operationReason'>
#{operationReason},
</if>
<if test ='null != createdBy'>
#{createdBy},
</if>
'0',
'0',
now(),
'APP_USER',
now()
</trim>
</insert>
</mapper> </mapper>

2
epmet-module/resi-guide/resi-guide-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java

@ -14,7 +14,7 @@ import org.springframework.web.bind.annotation.RequestBody;
* @Description 居民端陌生人导览 调用epmet-user服务 * @Description 居民端陌生人导览 调用epmet-user服务
* @Author sun * @Author sun
*/ */
@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallBack.class, url = "http://localhost:8087") @FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallBack.class)
public interface EpmetUserFeignClient { public interface EpmetUserFeignClient {
/** /**

6
epmet-module/resi-guide/resi-guide-server/src/main/java/com/epmet/service/impl/UserAccessServiceImpl.java

@ -1,5 +1,6 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.StrangerResiGuideConstant; import com.epmet.constant.StrangerResiGuideConstant;
@ -44,6 +45,11 @@ public class UserAccessServiceImpl implements UserAccessService {
visitedFormDTO.setGridId(userInfoParams.getGridId()); visitedFormDTO.setGridId(userInfoParams.getGridId());
visitedFormDTO.setCustomerId(userInfoParams.getCustomerId()); visitedFormDTO.setCustomerId(userInfoParams.getCustomerId());
visitedFormDTO.setUserId(userInfoParams.getUserId()); visitedFormDTO.setUserId(userInfoParams.getUserId());
if(null != userInfoResult.getData().getUserRoleList() && userInfoResult.getData().getUserRoleList().size() > 0){
visitedFormDTO.setIsReg(NumConstant.ONE_STR);
}else{
visitedFormDTO.setIsReg(NumConstant.ZERO_STR);
}
Result re = epmetUserFeignClient.saveVisitedRecord(visitedFormDTO); Result re = epmetUserFeignClient.saveVisitedRecord(visitedFormDTO);
if (!re.success()) { if (!re.success()) {
log.warn(StrangerResiGuideConstant.EPMET_USER_EXCEPTION); log.warn(StrangerResiGuideConstant.EPMET_USER_EXCEPTION);

5
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VisitedFormDTO.java

@ -48,5 +48,10 @@ public class VisitedFormDTO implements Serializable {
@NotBlank(message = "用户ID不能为空") @NotBlank(message = "用户ID不能为空")
private String userId; private String userId;
/**
* 是否注册居民 1: 0
* */
private String isReg;
} }

2
epmet-user/epmet-user-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java

@ -13,7 +13,7 @@ import org.springframework.web.bind.annotation.PostMapping;
* @Author sun * @Author sun
* @Date 2020/3/16 * @Date 2020/3/16
*/ */
@FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgFeignClientFallBack.class, url = "http://localhost:8092") @FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgFeignClientFallBack.class)
public interface GovOrgFeignClient { public interface GovOrgFeignClient {
/** /**

2
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/GridVisitedServiceImpl.java

@ -158,7 +158,7 @@ public class GridVisitedServiceImpl extends BaseServiceImpl<GridVisitedDao, Grid
Date date = new Date(); Date date = new Date();
GridVisitedDTO gridVisitedDTO = new GridVisitedDTO(); GridVisitedDTO gridVisitedDTO = new GridVisitedDTO();
//TODO:预留方法 根据userId查询用户是否认证(注册) //TODO:预留方法 根据userId查询用户是否认证(注册)
gridVisitedDTO.setIsRegister(getRegisterByUserId(visitedFormDTO.getUserId())); gridVisitedDTO.setIsRegister(Integer.parseInt(visitedFormDTO.getIsReg()));
gridVisitedDTO.setCustomerId(customerGridDTO.getCustomerId()); gridVisitedDTO.setCustomerId(customerGridDTO.getCustomerId());
gridVisitedDTO.setGridId(customerGridDTO.getId()); gridVisitedDTO.setGridId(customerGridDTO.getId());
gridVisitedDTO.setCustomerUserId(visitedFormDTO.getUserId()); gridVisitedDTO.setCustomerUserId(visitedFormDTO.getUserId());

14
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java

@ -189,9 +189,9 @@ public class RegisterRelationServiceImpl extends BaseServiceImpl<RegisterRelatio
if(registerRecordWithSameCustAndDiffGrid.isPresent()){ if(registerRecordWithSameCustAndDiffGrid.isPresent()){
//存在相同客户不同网格的注册记录 //存在相同客户不同网格的注册记录
//参与用户 //参与用户
registerRelationToSave.setFirstRegister("0"); registerRelationToSave.setFirstRegister(NumConstant.ZERO_STR);
registerRelationToSave.setRegister("0"); registerRelationToSave.setRegister(NumConstant.ZERO_STR);
registerRelationToSave.setParticipation("1"); registerRelationToSave.setParticipation(NumConstant.ONE_STR);
baseDao.insert(registerRelationToSave); baseDao.insert(registerRelationToSave);
}else{ }else{
@ -201,9 +201,9 @@ public class RegisterRelationServiceImpl extends BaseServiceImpl<RegisterRelatio
if(registerRecordWithDiffCustAndGrid.isPresent()){ if(registerRecordWithDiffCustAndGrid.isPresent()){
//如果存在不同客户不同网格的注册信息 //如果存在不同客户不同网格的注册信息
//注册用户 参与用户 //注册用户 参与用户
registerRelationToSave.setFirstRegister("0"); registerRelationToSave.setFirstRegister(NumConstant.ZERO_STR);
registerRelationToSave.setRegister("1"); registerRelationToSave.setRegister(NumConstant.ONE_STR);
registerRelationToSave.setParticipation("1"); registerRelationToSave.setParticipation(NumConstant.ONE_STR);
baseDao.insert(registerRelationToSave); baseDao.insert(registerRelationToSave);
userCustomerDao.insert(userCustomer); userCustomerDao.insert(userCustomer);
@ -211,7 +211,7 @@ public class RegisterRelationServiceImpl extends BaseServiceImpl<RegisterRelatio
//如果不存在不同客户不同网格数据,说明在居民注册时没有成功记录register_relation信息 //如果不存在不同客户不同网格数据,说明在居民注册时没有成功记录register_relation信息
UserResiRegisterVisitDTO userResiRegisterVisitDTO = new UserResiRegisterVisitDTO(); UserResiRegisterVisitDTO userResiRegisterVisitDTO = new UserResiRegisterVisitDTO();
userResiRegisterVisitDTO.setDelFlag(0); userResiRegisterVisitDTO.setDelFlag(NumConstant.ZERO);
userResiRegisterVisitDTO.setUserId(enterGridFormDTO.getUserId()); userResiRegisterVisitDTO.setUserId(enterGridFormDTO.getUserId());
List<UserResiRegisterVisitDTO> UserResiRegisterVisitRecord = List<UserResiRegisterVisitDTO> UserResiRegisterVisitRecord =
userResiRegisterVisitDao.selectUserResiRegisterVisit(userResiRegisterVisitDTO); userResiRegisterVisitDao.selectUserResiRegisterVisit(userResiRegisterVisitDTO);

Loading…
Cancel
Save