Browse Source

审核入群发送积分修改

master
wangchao 5 years ago
parent
commit
456f585115
  1. 11
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java
  2. 6
      epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java
  3. 12
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueShareLinkVisitRecordController.java
  4. 22
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueShareLinkVisitRecordDao.java
  5. 8
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueShareLinkVisitRecordService.java
  6. 19
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueShareLinkVisitRecordServiceImpl.java
  7. 42
      epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueShareLinkVisitRecordDao.xml
  8. 40
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java
  9. 28
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/TopicShareLinkVisitRecordDao.java
  10. 11
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/TopicShareLinkVisitRecordService.java
  11. 19
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/TopicShareLinkVisitRecordServiceImpl.java
  12. 44
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/TopicShareLinkVisitRecordDao.xml

11
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java

@ -4,6 +4,7 @@ import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.IssueDTO; import com.epmet.dto.IssueDTO;
import com.epmet.dto.IssueApplicationDTO; import com.epmet.dto.IssueApplicationDTO;
import com.epmet.dto.IssueShareLinkVisitRecordDTO;
import com.epmet.dto.IssueSuggestionDTO; import com.epmet.dto.IssueSuggestionDTO;
import com.epmet.dto.form.*; import com.epmet.dto.form.*;
import com.epmet.dto.result.*; import com.epmet.dto.result.*;
@ -225,12 +226,12 @@ public interface GovIssueOpenFeignClient {
Result<String> checkInviteRelationship(@RequestBody SharableIssueAndInviteeFormDTO param); Result<String> checkInviteRelationship(@RequestBody SharableIssueAndInviteeFormDTO param);
/** /**
* @Description 通过被邀请人锁定其是通过哪一条链接进的组查询出该链接的邀请人Id * @Description 通过链接Id查询分享人和被邀请人的信息
* @param invitee * @param
* @return Map<String,String> key : new | registered * @return
* @author wangc * @author wangc
* @date 2020.12.21 16:27 * @date 2020.12.21 16:27
*/ */
@PostMapping("/gov/issue/issuesharelinkvisitrecord/inviter") @PostMapping("/gov/issue/issuesharelinkvisitrecord/visitrecord")
Result<Map<String,String>> inviter(@RequestParam("invitee")String invitee,@RequestParam("issues")List<String> issues); Result<IssueShareLinkVisitRecordDTO> visitRecord(@RequestParam("linkId")String linkId,@RequestParam("invitee")String invitee);
} }

6
epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java

@ -5,6 +5,7 @@ import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.IssueDTO; import com.epmet.dto.IssueDTO;
import com.epmet.dto.IssueApplicationDTO; import com.epmet.dto.IssueApplicationDTO;
import com.epmet.dto.IssueShareLinkVisitRecordDTO;
import com.epmet.dto.IssueSuggestionDTO; import com.epmet.dto.IssueSuggestionDTO;
import com.epmet.dto.form.*; import com.epmet.dto.form.*;
import com.epmet.dto.result.*; import com.epmet.dto.result.*;
@ -20,6 +21,7 @@ import com.epmet.resi.group.dto.group.result.*;
import com.epmet.resi.mine.dto.from.MyShiftIssueTopicsFormDTO; import com.epmet.resi.mine.dto.from.MyShiftIssueTopicsFormDTO;
import com.epmet.resi.mine.dto.result.MyShiftIssueTopicsResultDTO; import com.epmet.resi.mine.dto.result.MyShiftIssueTopicsResultDTO;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -200,7 +202,7 @@ public class GovIssueOpenFeignClientFallBack implements GovIssueOpenFeignClient
} }
@Override @Override
public Result<Map<String,String>> inviter(String invitee,List<String> issues) { public Result<IssueShareLinkVisitRecordDTO> visitRecord(String linkId,String invitee) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "inviter", invitee,issues); return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "visitRecord", linkId,invitee);
} }
} }

12
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueShareLinkVisitRecordController.java

@ -85,14 +85,14 @@ public class IssueShareLinkVisitRecordController {
} }
/** /**
* @Description 通过被邀请人锁定其是通过哪一条链接进的组查询出该链接的邀请人Id * @Description 通过链接Id查询分享人和被邀请人的信息
* @param invitee * @param
* @return Map<String,String> key : new | registered * @return
* @author wangc * @author wangc
* @date 2020.12.21 16:27 * @date 2020.12.21 16:27
*/ */
@PostMapping("inviter") @PostMapping("visitrecord")
public Result<Map<String,String>> inviter(@RequestParam("invitee")String invitee,@RequestParam("issues") List<String> issues){ public Result<IssueShareLinkVisitRecordDTO> visitRecord(@RequestParam("linkId")String linkId,@RequestParam("invitee")String invitee){
return new Result<Map<String,String>>().ok(issueShareLinkVisitRecordService.getInviter(invitee,issues)); return new Result<IssueShareLinkVisitRecordDTO>().ok(issueShareLinkVisitRecordService.getVisitRecord(linkId,invitee));
} }
} }

22
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueShareLinkVisitRecordDao.java

@ -18,6 +18,7 @@
package com.epmet.dao; package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.IssueShareLinkVisitRecordDTO;
import com.epmet.entity.IssueShareLinkVisitRecordEntity; import com.epmet.entity.IssueShareLinkVisitRecordEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -54,22 +55,11 @@ public interface IssueShareLinkVisitRecordDao extends BaseDao<IssueShareLinkVisi
int updateInviteRegister(@Param("linkId") String linkId, @Param("invitee") String invitee); int updateInviteRegister(@Param("linkId") String linkId, @Param("invitee") String invitee);
/** /**
* @Description 通过被邀请人锁定其是通过哪一条链接进的组查询出该链接的邀请人Id * @Description 根据邀请Id和被邀请人Id查询查询链接浏览记录
* @param invitee * @param
* @param issues 同一个组下的所有议题Id * @return com.epmet.dto.IssueShareLinkVisitRecordDTO
* @return java.lang.String
* @author wangc * @author wangc
* @date 2020.12.21 16:27 * @date 2020.12.22 09:53
*/ */
String selectInviterByNewInvitee(@Param("invitee") String invitee,@Param("issues") List<String> issues); IssueShareLinkVisitRecordDTO selectRecordByLinkIdAndInvitee(@Param("linkId") String linkId, @Param("invitee") String invitee);
/**
* @Description 通过被邀请人锁定其是通过哪一条链接进的组查询出该链接的邀请人Id
* @param invitee
* @param issues 同一个组下的所有议题Id
* @return java.lang.String
* @author wangc
* @date 2020.12.21 16:27
*/
String selectInviterByRegisteredInvitee(@Param("invitee") String invitee,@Param("issues") List<String> issues);
} }

8
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueShareLinkVisitRecordService.java

@ -103,11 +103,11 @@ public interface IssueShareLinkVisitRecordService extends BaseService<IssueShare
String checkInviteRelationship(SharableIssueAndInviteeFormDTO param); String checkInviteRelationship(SharableIssueAndInviteeFormDTO param);
/** /**
* @Description 通过被邀请人锁定其是通过哪一条链接进的组查询出该链接的邀请人Id * @Description 通过链接Id查询分享人和被邀请人的信息
* @param invitee * @param
* @return Map<String,String> key : new | registered * @return
* @author wangc * @author wangc
* @date 2020.12.21 16:27 * @date 2020.12.21 16:27
*/ */
Map<String,String> getInviter(String invitee,List<String> issues); IssueShareLinkVisitRecordDTO getVisitRecord(String linkId,String invitee);
} }

19
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueShareLinkVisitRecordServiceImpl.java

@ -113,23 +113,14 @@ public class IssueShareLinkVisitRecordServiceImpl extends BaseServiceImpl<IssueS
} }
/** /**
* @Description 通过被邀请人锁定其是通过哪一条链接进的组查询出该链接的邀请人Id * @Description 通过链接Id查询分享人和被邀请人的信息
* @param invitee * @param
* @return Map<String,String> key : new | registered * @return
* @author wangc * @author wangc
* @date 2020.12.21 16:27 * @date 2020.12.21 16:27
*/ */
@Override @Override
public Map<String,String> getInviter(String invitee,List<String> issues) { public IssueShareLinkVisitRecordDTO getVisitRecord(String linkId, String invitee) {
Map<String,String> result = new HashMap<>(); return baseDao.selectRecordByLinkIdAndInvitee(linkId, invitee);
String inviterInvitedNewResident = baseDao.selectInviterByNewInvitee(invitee,issues);
if(StringUtils.isNotBlank(inviterInvitedNewResident)) result.put("new",inviterInvitedNewResident);
else{
String inviterInvitedRegisteredResident = baseDao.selectInviterByRegisteredInvitee(invitee,issues);
if(StringUtils.isNotBlank(inviterInvitedRegisteredResident)) result.put("registered",inviterInvitedRegisteredResident);
}
return result;
} }
} }

42
epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueShareLinkVisitRecordDao.xml

@ -31,45 +31,17 @@
invitee_user_id = #{invitee} invitee_user_id = #{invitee}
</update> </update>
<select id="selectInviterByNewInvitee" resultType="string"> <select id="selectRecordByLinkIdAndInvitee"
resultType="com.epmet.dto.IssueShareLinkVisitRecordDTO">
SELECT SELECT
visit.share_user_id *
FROM issue_share_link_visit_record visit FROM issue_share_link_visit_record
INNER JOIN issue_share_link_record link
ON visit.shareLinkRecId = link.ID AND link.del_flag = '0'
<foreach collection="issues" item="issueId" open="AND (" separator=" OR " close=" )">
link.issue_id = #{issueId}
</foreach>
INNER
WHERE
visit.del_flag = '0'
AND
visit.invitee_user_id = #{invitee}
AND
visit.is_invite_register = 0
AND
visit.if_join_group = 1
LIMIT 1
</select>
<select id="selectInviterByRegisteredInvitee" resultType="string">
SELECT
visit.share_user_id
FROM issue_share_link_visit_record visit
INNER JOIN issue_share_link_record link
ON visit.shareLinkRecId = link.ID AND link.del_flag = '0'
<foreach collection="issues" item="issueId" open="AND (" separator=" OR " close=" )">
link.issue_id = #{issueId}
</foreach>
INNER
WHERE WHERE
visit.del_flag = '0' del_flag = '0'
AND
visit.invitee_user_id = #{invitee}
AND AND
visit.is_invite_register = 1 share_link_rec_id = #{linkId}
AND AND
visit.if_join_group = 1 invitee_user_id = #{invitee}
LIMIT 1 LIMIT 1
</select> </select>
</mapper> </mapper>

40
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java

@ -32,6 +32,7 @@ import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.utils.SendMqMsgUtils; import com.epmet.commons.tools.utils.SendMqMsgUtils;
import com.epmet.constant.ReadFlagConstant; import com.epmet.constant.ReadFlagConstant;
import com.epmet.dto.IssueShareLinkVisitRecordDTO;
import com.epmet.dto.form.*; import com.epmet.dto.form.*;
import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.dto.result.UserResiInfoResultDTO;
import com.epmet.feign.EpmetMessageOpenFeignClient; import com.epmet.feign.EpmetMessageOpenFeignClient;
@ -51,6 +52,7 @@ import com.epmet.modules.member.redis.ResiGroupMemberRedis;
import com.epmet.modules.member.service.GroupMemeberOperationService; import com.epmet.modules.member.service.GroupMemeberOperationService;
import com.epmet.modules.member.service.ResiGroupMemberService; import com.epmet.modules.member.service.ResiGroupMemberService;
import com.epmet.modules.topic.dao.ResiTopicDao; import com.epmet.modules.topic.dao.ResiTopicDao;
import com.epmet.modules.topic.entity.TopicShareLinkVisitRecordEntity;
import com.epmet.modules.topic.service.ResiTopicService; import com.epmet.modules.topic.service.ResiTopicService;
import com.epmet.modules.topic.service.TopicShareLinkVisitRecordService; import com.epmet.modules.topic.service.TopicShareLinkVisitRecordService;
import com.epmet.modules.utils.ModuleConstant; import com.epmet.modules.utils.ModuleConstant;
@ -116,8 +118,6 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl<ResiGroupMemberD
@Autowired @Autowired
private ResiTopicService resiTopicService; private ResiTopicService resiTopicService;
@Autowired @Autowired
private ResiTopicDao topicDao;
@Autowired
private ResiGroupMemberRedis resiGroupMemberRedis; private ResiGroupMemberRedis resiGroupMemberRedis;
@Autowired @Autowired
@ -494,22 +494,34 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl<ResiGroupMemberD
resiGroupRedis.set(groupCache); resiGroupRedis.set(groupCache);
} }
//9、查询当前入组申请人是否是通过话题/议题链接入组,如果是,要给邀请人发送积分事件 //9、查询当前入组申请人是否是通过话题/议题链接入组,如果是,要给邀请人发送积分事件
Map<String,String> inviterMap = null; Map<String,String> inviterMap = null;
String inviter = null;
boolean isNew = false;
//通过链接和访问记录查询出被邀请人是新用户还是已注册用户
if(StringUtils.equals(groupMemeberOperationDTO.getEnterGroupType(),ModuleConstant.ENTER_GROUP_TYPE_TOPIC_LINK)){ if(StringUtils.equals(groupMemeberOperationDTO.getEnterGroupType(),ModuleConstant.ENTER_GROUP_TYPE_TOPIC_LINK)){
inviterMap = topicShareLinkVisitRecordService.getInviter(groupMemeberOperationDTO.getCustomerUserId(),groupMemeberOperationDTO.getGroupId()); TopicShareLinkVisitRecordEntity visitRecord = topicShareLinkVisitRecordService.getByLinkIdAndInvitee(groupMemeberOperationDTO.getGroupInvitationId(), groupMemeberOperationDTO.getCustomerUserId());
if(null == visitRecord){
logger.error("【%s】该用户入组方式为话题分享链接入组,但未查询到链接访问方式记录,链接Id【%s】",groupMemeberOperationDTO.getCustomerUserId(),groupMemeberOperationDTO.getGroupInvitationId());
return;
}
if(NumConstant.ZERO == visitRecord.getIsInviteRegister()) isNew = true;
inviter = visitRecord.getShareUserId();
}else if(StringUtils.equals(groupMemeberOperationDTO.getEnterGroupType(),ModuleConstant.ENTER_GROUP_TYPE_ISSUE_LINK)){ }else if(StringUtils.equals(groupMemeberOperationDTO.getEnterGroupType(),ModuleConstant.ENTER_GROUP_TYPE_ISSUE_LINK)){
List<String> issues = topicDao.selectIssueIdsByGroupId(groupMemeberOperationDTO.getGroupId()); Result<IssueShareLinkVisitRecordDTO> response = issueClient.visitRecord(groupMemeberOperationDTO.getGroupInvitationId(), groupMemeberOperationDTO.getCustomerUserId());
if(!CollectionUtils.isEmpty(issues)){ if(response.success() && null != response){
Result<Map<String,String>> inviterResult = issueClient.inviter(groupMemeberOperationDTO.getCustomerUserId(),issues); if(NumConstant.ONE != response.getData().getIfJoinGroup()){
if(inviterResult.success() && !CollectionUtils.isEmpty(inviterResult.getData())) inviterMap = inviterResult.getData(); logger.error("【%s】该用户入组方式为议题分享链接入组,但并不是通过该链接发起的入群申请,链接Id【%s】",groupMemeberOperationDTO.getCustomerUserId(),groupMemeberOperationDTO.getGroupInvitationId());
return;
}
if(NumConstant.ZERO == response.getData().getIsInviteRegister()) isNew = true;
inviter = response.getData().getShareUserId();
}else{
logger.error("【%s】该用户入组方式为议题分享链接入组,但未查询到链接访问方式记录,链接Id【%s】",groupMemeberOperationDTO.getCustomerUserId(),groupMemeberOperationDTO.getGroupInvitationId());
return;
} }
} }
if(!CollectionUtils.isEmpty(inviterMap)){ if(StringUtils.isNotBlank(inviter)){
//groupMemeberOperationDTO.getCreatedTime()
boolean isNew = StringUtils.isBlank(inviterMap.get("new"));
//mq的事件类型 //mq的事件类型
MqBaseMsgDTO mqBaseMsgDTO = new MqBaseMsgDTO(); MqBaseMsgDTO mqBaseMsgDTO = new MqBaseMsgDTO();
//事件code //事件code
@ -517,7 +529,7 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl<ResiGroupMemberD
List<BasePointEventMsg> pointEventMsgList = new ArrayList<>(); List<BasePointEventMsg> pointEventMsgList = new ArrayList<>();
BasePointEventMsg pointEventMsg = new BasePointEventMsg(); BasePointEventMsg pointEventMsg = new BasePointEventMsg();
pointEventMsg.setCustomerId(groupCache.getCustomerId()); pointEventMsg.setCustomerId(groupCache.getCustomerId());
pointEventMsg.setUserId(isNew ? inviterMap.get("new") : inviterMap.get("register")); pointEventMsg.setUserId(inviter);
pointEventMsg.setActionFlag(MqConstant.PLUS); pointEventMsg.setActionFlag(MqConstant.PLUS);
pointEventMsg.setIsCommon(false); pointEventMsg.setIsCommon(false);
pointEventMsg.setTargetDate(groupMemeberOperationDTO.getCreatedTime()); pointEventMsg.setTargetDate(groupMemeberOperationDTO.getCreatedTime());

28
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/TopicShareLinkVisitRecordDao.java

@ -23,6 +23,16 @@ public interface TopicShareLinkVisitRecordDao extends BaseDao<TopicShareLinkVisi
* @date 2020.12.18 14:00 * @date 2020.12.18 14:00
*/ */
String selectByLinkIdAndInvitee(@Param("linkId") String linkId, @Param("invitee") String invitee); String selectByLinkIdAndInvitee(@Param("linkId") String linkId, @Param("invitee") String invitee);
/**
* @Description 根据邀请Id和邀请人Id查询邀请人的Id
* @param linkId
* @param invitee
* @return String
* @author wangc
* @date 2020.12.18 14:00
*/
TopicShareLinkVisitRecordEntity selectRecordByLinkIdAndInvitee(@Param("linkId") String linkId, @Param("invitee") String invitee);
/** /**
* @Description 修改是否通过链接注册居民由0改为1 * @Description 修改是否通过链接注册居民由0改为1
@ -33,22 +43,4 @@ public interface TopicShareLinkVisitRecordDao extends BaseDao<TopicShareLinkVisi
* @date 2020.12.18 15:46 * @date 2020.12.18 15:46
*/ */
int updateInviteRegister(@Param("linkId") String linkId, @Param("invitee") String invitee); int updateInviteRegister(@Param("linkId") String linkId, @Param("invitee") String invitee);
/**
* @Description 通过被邀请人锁定其是通过哪一条链接进的组查询出该链接的邀请人Id
* @param invitee
* @return java.lang.String
* @author wangc
* @date 2020.12.21 16:29
*/
String selectInviterByNewInvitee(@Param("invitee") String invitee,@Param("groupId")String groupId);
/**
* @Description 通过被邀请人锁定其是通过哪一条链接进的组查询出该链接的邀请人Id
* @param invitee
* @return java.lang.String
* @author wangc
* @date 2020.12.21 16:29
*/
String selectInviterByRegisteredInvitee(@Param("invitee") String invitee,@Param("groupId")String groupId);
} }

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

@ -87,11 +87,12 @@ public interface TopicShareLinkVisitRecordService extends BaseService<TopicShare
String checkInviteRelationship(SharableTopicAndInviteeFormDTO param); String checkInviteRelationship(SharableTopicAndInviteeFormDTO param);
/** /**
* @Description 通过被邀请人锁定其是通过哪一条链接进的组查询出该链接的邀请人Id * @Description 通过邀请链接Id和被邀请人Id查询出访问记录
* @param linkId
* @param invitee * @param invitee
* @return Map<String,String> key : new | registered * @return com.epmet.modules.topic.entity.TopicShareLinkVisitRecordEntity
* @author wangc * @author wangc
* @date 2020.12.21 16:29 * @date 2020.12.22 09:20
*/ */
Map<String,String> getInviter(String invitee,String groupId); TopicShareLinkVisitRecordEntity getByLinkIdAndInvitee(String linkId,String invitee);
} }

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

@ -96,23 +96,16 @@ public class TopicShareLinkVisitRecordServiceImpl extends BaseServiceImpl<TopicS
} }
/** /**
* @Description 通过被邀请人锁定其是通过哪一条链接进的组查询出该链接的邀请人Id * @Description 通过邀请链接Id和被邀请人Id查询出访问记录
* @param linkId
* @param invitee * @param invitee
* @return Map<String,String> key : new | registered * @return com.epmet.modules.topic.entity.TopicShareLinkVisitRecordEntity
* @author wangc * @author wangc
* @date 2020.12.21 16:29 * @date 2020.12.22 09:20
*/ */
@Override @Override
public Map<String,String> getInviter(String invitee,String groupId) { public TopicShareLinkVisitRecordEntity getByLinkIdAndInvitee(String linkId, String invitee) {
Map<String,String> result = new HashMap<>(); return baseDao.selectRecordByLinkIdAndInvitee(linkId,invitee);
String inviterInvitedNewResident = baseDao.selectInviterByNewInvitee(invitee,groupId);
if(StringUtils.isBlank(inviterInvitedNewResident)){
String inviterInvitedRegisteredResident = baseDao.selectInviterByRegisteredInvitee(invitee,groupId);
if(StringUtils.isNotBlank(inviterInvitedRegisteredResident))
result.put("registered",inviterInvitedRegisteredResident);
}else
result.put("new",inviterInvitedNewResident);
return result;
} }
} }

44
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/TopicShareLinkVisitRecordDao.xml

@ -18,47 +18,29 @@
LIMIT 1 LIMIT 1
</select> </select>
<update id="updateInviteRegister"> <select id="selectRecordByLinkIdAndInvitee" resultType="com.epmet.modules.topic.entity.TopicShareLinkVisitRecordEntity">
UPDATE SELECT
topic_share_link_visit_record *
SET FROM topic_share_link_visit_record
is_invite_register = 0
WHERE WHERE
del_flag = '0' del_flag = '0'
AND AND
share_link_rec_id = #{linkId} share_link_rec_id = #{linkId}
AND AND
invitee_user_id = #{invitee} invitee_user_id = #{invitee}
</update>
<select id="selectInviterByNewInvitee" resultType="string">
SELECT
visit.share_user_id
FROM topic_share_link_visit_record visit
INNER JOIN topic_share_link_record link
ON visit.share_link_rec_id = link.ID AND link.del_flag = '0' AND link.group_id = #{groupId}
WHERE
visit.del_flag = '0'
AND
visit.invitee_user_id = #{invitee}
AND
visit.is_invite_register = 0
LIMIT 1 LIMIT 1
</select> </select>
<select id="selectInviterByRegisteredInvitee" resultType="string"> <update id="updateInviteRegister">
SELECT UPDATE
visit.share_user_id topic_share_link_visit_record
FROM topic_share_link_visit_record visit SET
INNER JOIN topic_share_link_record link is_invite_register = 0
ON visit.share_link_rec_id = link.ID AND link.del_flag = '0' AND link.group_id = #{groupId}
WHERE WHERE
visit.del_flag = '0' del_flag = '0'
AND AND
visit.invitee_user_id = #{invitee} share_link_rec_id = #{linkId}
AND AND
visit.is_invite_register = 1 invitee_user_id = #{invitee}
</update>
LIMIT 1
</select>
</mapper> </mapper>
Loading…
Cancel
Save