Browse Source

Merge remote-tracking branch 'origin/dev_voice_share_point' into dev_voice_share_point

dev_shibei_match
sunyuchao 5 years ago
parent
commit
c87dc5ab9d
  1. 11
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/constant/TopicShareConstant.java
  2. 24
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/CreateUrlFormDTO.java
  3. 22
      epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/CreateUrlResultDTO.java
  4. 18
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/TopicShareLinkRecordController.java
  5. 20
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/TopicShareLinkRecordDao.java
  6. 11
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/TopicShareLinkRecordService.java
  7. 34
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/TopicShareLinkRecordServiceImpl.java
  8. 21
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/TopicShareLinkRecordDao.xml

11
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/constant/TopicShareConstant.java

@ -0,0 +1,11 @@
package com.epmet.resi.group.constant;
/**
* @Author zxc
* @DateTime 2020/12/18 上午10:53
*/
public interface TopicShareConstant {
String NOT_EXIST_TOPIC_INFO = "未查到该话题信息......";
}

24
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/CreateUrlFormDTO.java

@ -0,0 +1,24 @@
package com.epmet.resi.group.dto.topic.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2020/12/18 上午10:02
*/
@Data
public class CreateUrlFormDTO implements Serializable {
private static final long serialVersionUID = -7661839148530902018L;
public interface CreateUrlForm{}
/**
* 话题ID
*/
@NotBlank(message = "话题ID不能为空",groups = {CreateUrlForm.class})
private String topicId;
}

22
epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/CreateUrlResultDTO.java

@ -0,0 +1,22 @@
package com.epmet.resi.group.dto.topic.result;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2020/12/18 上午10:01
*/
@Data
@AllArgsConstructor
public class CreateUrlResultDTO implements Serializable {
private static final long serialVersionUID = -8606257390921799432L;
/**
* 分享链接ID
*/
private String shareLinkId;
}

18
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/TopicShareLinkRecordController.java

@ -1,6 +1,8 @@
package com.epmet.modules.topic.controller;
import com.epmet.commons.tools.annotation.LoginUser;
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.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils;
@ -9,6 +11,8 @@ import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.modules.topic.service.TopicShareLinkRecordService;
import com.epmet.resi.group.dto.topic.TopicShareLinkRecordDTO;
import com.epmet.resi.group.dto.topic.form.CreateUrlFormDTO;
import com.epmet.resi.group.dto.topic.result.CreateUrlResultDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -22,7 +26,7 @@ import java.util.Map;
* @since v1.0.0 2020-12-18
*/
@RestController
@RequestMapping("topicsharelinkrecord")
@RequestMapping("topicsharelink")
public class TopicShareLinkRecordController {
@Autowired
@ -64,4 +68,16 @@ public class TopicShareLinkRecordController {
return new Result();
}
/**
* @Description 分享话题邀请ID
* @Param createUrlFormDTO
* @author zxc
* @date 2020/12/18 上午10:14
*/
@PostMapping("createurl")
public Result<CreateUrlResultDTO> getCreateUrlId(@RequestBody CreateUrlFormDTO createUrlFormDTO, @LoginUser TokenDto tokenDto){
ValidatorUtils.validateEntity(createUrlFormDTO, CreateUrlFormDTO.CreateUrlForm.class);
return new Result<CreateUrlResultDTO>().ok(topicShareLinkRecordService.getCreateUrlId(createUrlFormDTO,tokenDto));
}
}

20
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/TopicShareLinkRecordDao.java

@ -3,6 +3,7 @@ package com.epmet.modules.topic.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.modules.topic.entity.TopicShareLinkRecordEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 话题分享链接表
@ -12,5 +13,22 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface TopicShareLinkRecordDao extends BaseDao<TopicShareLinkRecordEntity> {
/**
* @Description 根据话题ID查询对应信息
* @Param topicId
* @author zxc
* @date 2020/12/18 上午10:28
*/
TopicShareLinkRecordEntity selectTopicInfoById(@Param("topicId") String topicId);
/**
* @Description 校验此人此话题是否存在邀请记录
* @Param topicId
* @Param userId
* @author zxc
* @date 2020/12/18 上午11:10
*/
String checkRecord(@Param("topicId") String topicId,@Param("userId") String userId);
}

11
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/TopicShareLinkRecordService.java

@ -2,8 +2,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.modules.topic.entity.TopicShareLinkRecordEntity;
import com.epmet.resi.group.dto.topic.TopicShareLinkRecordDTO;
import com.epmet.resi.group.dto.topic.form.CreateUrlFormDTO;
import com.epmet.resi.group.dto.topic.result.CreateUrlResultDTO;
import java.util.List;
import java.util.Map;
@ -75,4 +78,12 @@ public interface TopicShareLinkRecordService extends BaseService<TopicShareLinkR
* @date 2020-12-18
*/
void delete(String[] ids);
/**
* @Description 分享话题邀请ID
* @Param createUrlFormDTO
* @author zxc
* @date 2020/12/18 上午10:14
*/
CreateUrlResultDTO getCreateUrlId(CreateUrlFormDTO createUrlFormDTO, TokenDto tokenDto);
}

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

@ -4,12 +4,17 @@ 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.constant.FieldConstant;
import com.epmet.commons.tools.exception.RenException;
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.modules.topic.dao.TopicShareLinkRecordDao;
import com.epmet.modules.topic.entity.TopicShareLinkRecordEntity;
import com.epmet.modules.topic.service.TopicShareLinkRecordService;
import com.epmet.resi.group.constant.TopicShareConstant;
import com.epmet.resi.group.dto.topic.TopicShareLinkRecordDTO;
import com.epmet.resi.group.dto.topic.form.CreateUrlFormDTO;
import com.epmet.resi.group.dto.topic.result.CreateUrlResultDTO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -79,4 +84,33 @@ public class TopicShareLinkRecordServiceImpl extends BaseServiceImpl<TopicShareL
baseDao.deleteBatchIds(Arrays.asList(ids));
}
/**
* @Description 分享话题邀请ID
* @Param createUrlFormDTO
* @author zxc
* @date 2020/12/18 上午10:14
*/
@Transactional(rollbackFor = Exception.class)
@Override
public CreateUrlResultDTO getCreateUrlId(CreateUrlFormDTO form, TokenDto tokenDto) {
// 校验此人此话题是否存在邀请记录 存在直接返回
String shareLinkId = baseDao.checkRecord(form.getTopicId(), tokenDto.getUserId());
if (StringUtils.isNotBlank(shareLinkId)){
return new CreateUrlResultDTO(shareLinkId);
}
TopicShareLinkRecordEntity topicInfo = baseDao.selectTopicInfoById(form.getTopicId());
if (null == topicInfo){
throw new RenException(TopicShareConstant.NOT_EXIST_TOPIC_INFO);
}
TopicShareLinkRecordEntity entity = new TopicShareLinkRecordEntity();
entity.setCustomerId(topicInfo.getCustomerId());
entity.setGridId(topicInfo.getGridId());
entity.setGroupId(topicInfo.getGroupId());
entity.setTopicId(form.getTopicId());
entity.setShareUserId(tokenDto.getUserId());
entity.setInviteContent(null);
baseDao.insert(entity);
return new CreateUrlResultDTO(entity.getId());
}
}

21
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/TopicShareLinkRecordDao.xml

@ -3,5 +3,26 @@
<mapper namespace="com.epmet.modules.topic.dao.TopicShareLinkRecordDao">
<!-- 根据话题ID查询对应信息 -->
<select id="selectTopicInfoById" resultType="com.epmet.modules.topic.entity.TopicShareLinkRecordEntity">
SELECT
rt.GROUP_ID,
rg.GRID_ID,
rg.CUSTOMER_ID
FROM resi_topic rt
LEFT JOIN resi_group rg ON rg.ID = rt.GROUP_ID
WHERE rt.DEL_FLAG = '0'
AND rg.DEL_FLAG = '0'
AND rt.ID = #{topicId}
</select>
<!-- 校验此人此话题是否存在邀请记录 -->
<select id="checkRecord" resultType="java.lang.String">
SELECT
ID
FROM topic_share_link_record
WHERE DEL_FLAG = 0
AND SHARE_USER_ID = #{userId}
AND TOPIC_ID = #{topicId}
</select>
</mapper>
Loading…
Cancel
Save