Browse Source

话题相关,将评论也放进话题中

master
wangchao 6 years ago
parent
commit
2437c6d252
  1. 22
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/ResiTopicPublishFormDTO.java
  2. 56
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/comment/entity/ResiTopicCommentEntity.java
  3. 2
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/exception/ModuleErrorCode.java
  4. 2
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java
  5. 38
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java
  6. 13
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java
  7. 43
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java
  8. 5
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java
  9. 13
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicCommentDao.xml
  10. 2
      epmet-module/resi-guide/resi-guide-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java
  11. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/feign/GovOrgFeignClient.java

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

@ -2,6 +2,7 @@ package com.epmet.resi.group.dto.topic.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.List;
@ -19,45 +20,50 @@ public class ResiTopicPublishFormDTO implements Serializable {
/**
* 小组Id
* */
@NotBlank(message = "小组Id不能为空")
private String groupId;
/**
*
* 话题内容
* */
@NotBlank(message = "话题内容不能为空")
private String topicContent;
/**
*
* 经度
* */
@NotBlank(message = "缺失经纬度信息")
private String longitude;
/**
*
* 纬度
* */
@NotBlank(message = "缺失经纬度信息")
private String dimension;
/**
*
* 地址
* */
@NotBlank(message = "地址信息不能为空")
private String address;
/**
*
* 省份
* */
private String province;
/**
*
* 城市
* */
private String city;
/**
*
* 地区
* */
private String area;
/**
*
* 附件上传url列表
* */
private List<String> attachmentList;

56
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/comment/entity/ResiTopicCommentEntity.java

@ -0,0 +1,56 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.epmet.modules.comment.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 话题评论表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-03-31
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("resi_topic_comment")
public class ResiTopicCommentEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 评论内容
*/
private String commentContent;
/**
* 话题Id来自resi_topic
*/
private String topicId;
/**
* 评论状态
*/
private String status;
}

2
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/exception/ModuleErrorCode.java

@ -22,4 +22,6 @@ import com.epmet.commons.tools.exception.ErrorCode;
*/
public interface ModuleErrorCode extends ErrorCode {
}

2
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java

@ -38,6 +38,7 @@ import com.epmet.modules.group.dao.ResiGroupOperationDao;
import com.epmet.modules.group.entity.ResiGroupEntity;
import com.epmet.modules.group.service.ResiGroupOperationService;
import com.epmet.modules.group.service.ResiGroupService;
import com.epmet.modules.group.service.ResiGroupStatisticalService;
import com.epmet.modules.member.dao.GroupMemeberOperationDao;
import com.epmet.modules.member.dao.ResiGroupMemberDao;
@ -52,6 +53,7 @@ import com.epmet.resi.group.constant.MemberStateConstant;
import com.epmet.resi.group.dto.UserRoleDTO;
import com.epmet.resi.group.dto.group.ResiGroupDTO;
import com.epmet.resi.group.dto.group.ResiGroupOperationDTO;
import com.epmet.resi.group.dto.group.ResiGroupStatisticalDTO;
import com.epmet.resi.group.dto.group.form.*;
import com.epmet.resi.group.dto.group.result.CreatedResultDTO;

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

@ -0,0 +1,38 @@
package com.epmet.modules.topic.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.resi.group.dto.topic.form.ResiTopicPublishFormDTO;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Description
* @ClassName ResiTopicController
* @Author wangc
* @date 2020.03.31 13:03
*/
@RestController
@RequestMapping("topic")
public class ResiTopicController {
/**
* @Description 组内成员创建话题(身份校验 + 创建话题 + 增加话题记录)
* @Param TokenDto.class
* @Param ResiTopicPublishFormDTO.class
* @return Result
* @Author wangc
* @Date 2020.03.31 13:15
**/
@RequestMapping("createtopic")
public Result createTopic(@LoginUser TokenDto tokenDto, @RequestBody ResiTopicPublishFormDTO topicPublishFormDTO){
return new Result();
}
}

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

@ -19,8 +19,11 @@ package com.epmet.modules.topic.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.modules.topic.entity.ResiTopicEntity;
import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPublishFormDTO;
import java.util.List;
@ -93,4 +96,14 @@ public interface ResiTopicService extends BaseService<ResiTopicEntity> {
* @date 2020-03-31
*/
void delete(String[] ids);
/**
* @Description 创建话题接口具体逻辑包括1.身份校验 2.创建话题 3.话题操作记录
* @Param tokenDto
* @Param resiTopicPublishFormDTO
* @return Result
* @Author wangc
* @Date 2020.03.31 13:19
**/
Result createTopic(TokenDto tokenDto, ResiTopicPublishFormDTO resiTopicPublishFormDTO);
}

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

@ -21,15 +21,22 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
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.constant.FieldConstant;
import com.epmet.commons.tools.utils.Result;
import com.epmet.modules.member.service.ResiGroupMemberService;
import com.epmet.modules.topic.dao.ResiTopicDao;
import com.epmet.modules.topic.entity.ResiTopicEntity;
import com.epmet.modules.topic.service.ResiTopicService;
import com.epmet.resi.group.constant.MemberStateConstant;
import com.epmet.resi.group.dto.member.ResiGroupMemberDTO;
import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPublishFormDTO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -46,7 +53,8 @@ import java.util.Map;
@Service
public class ResiTopicServiceImpl extends BaseServiceImpl<ResiTopicDao, ResiTopicEntity> implements ResiTopicService {
@Autowired
private ResiGroupMemberService resiGroupMemberService;
@Override
public PageData<ResiTopicDTO> page(Map<String, Object> params) {
@ -100,4 +108,37 @@ public class ResiTopicServiceImpl extends BaseServiceImpl<ResiTopicDao, ResiTopi
baseDao.deleteBatchIds(Arrays.asList(ids));
}
/**
* @Description 创建话题接口具体逻辑包括1.身份校验 2.创建话题 3.话题操作记录
* @Param tokenDto
* @Param resiTopicPublishFormDTO
* @return Result
* @Author wangc
* @Date 2020.03.31 13:19
**/
@Override
public Result createTopic(TokenDto tokenDto, ResiTopicPublishFormDTO resiTopicPublishFormDTO) {
//1.身份校验,查看当前用户是否是组内成员,当前用户是否被禁言
ResiGroupMemberDTO resiGroupMemberDTO =
resiGroupMemberService.getResiGroupMember(tokenDto.getUserId() , resiTopicPublishFormDTO.getGroupId());
if(null != resiGroupMemberDTO){
if(!MemberStateConstant.APPROVED.equals(resiGroupMemberDTO.getStatus())){
//如果当前用户的状态不是已通过,说明是已禁言或被移除的状态
return new Result().error();
}
}else{
//当前用户非组内成员
}
return null;
}
}

5
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java

@ -67,4 +67,9 @@ public interface ModuleConstant extends Constant {
* customerId不能为空
*/
String CUSTOMERID_NOT_NULL="客户id不能为空";
/**
* 当前用户并非改组组员
* */
String NOT_BELONG_TO_CURRENT_GROUP="当前用户并非改组组员";
}

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

@ -3,18 +3,7 @@
<mapper namespace="com.epmet.dao.ResiTopicCommentDao">
<resultMap type="com.epmet.entity.ResiTopicCommentEntity" id="resiTopicCommentMap">
<result property="id" column="ID"/>
<result property="commentContent" column="COMMENT_CONTENT"/>
<result property="topicId" column="TOPIC_ID"/>
<result property="status" column="STATUS"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
</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服务
* @Author sun
*/
@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallBack.class)
@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallBack.class, url = "http://localhost:8087")
public interface EpmetUserFeignClient {
/**

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
* @Date 2020/3/16
*/
@FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgFeignClientFallBack.class )
@FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgFeignClientFallBack.class, url = "http://localhost:8092")
public interface GovOrgFeignClient {
/**

Loading…
Cancel
Save