Commit 6d7cde82 authored by 王亮's avatar 王亮

union query user.

parent 39d72340
......@@ -16,13 +16,15 @@ import static org.springframework.transaction.annotation.Propagation.MANDATORY;
* modify by djh 20200527 http://confluence.quantgroup.cn/pages/viewpage.action?pageId=30657427
*/
public interface IWeChatUserRepository extends JpaRepository<WechatUserInfo, Long> {
WechatUserInfo findByOpenIdAndAppNameAndAppIdAndTenantId(String openId, String appName,String appId,Integer tenantId);
List<WechatUserInfo> findByOpenIdInAndAppIdAndTenantId(List<String> openId,String appId,Integer tenantId);
WechatUserInfo findByOpenIdAndAppNameAndAppIdAndTenantId(String openId, String appName, String appId, Integer tenantId);
List<WechatUserInfo> findByUuidInAndAppIdAndTenantId(List<String> uuids,String appId,Integer tenantId);
WechatUserInfo findByUnionIdAndAppIdAndTenantId(String openId,String appId,Integer tenantId);
List<WechatUserInfo> findByOpenIdInAndAppIdAndTenantId(List<String> openId, String appId, Integer tenantId);
WechatUserInfo findByOpenIdAndAppIdAndTenantId(String openId,String appId,Integer tenantId);
List<WechatUserInfo> findByUnionIdInAndAppIdAndTenantId(List<String> unionIds, String appId, Integer tenantId);
WechatUserInfo findByUnionIdAndAppIdAndTenantId(String openId, String appId, Integer tenantId);
WechatUserInfo findByOpenIdAndAppIdAndTenantId(String openId, String appId, Integer tenantId);
WechatUserInfo findByPhoneNoAndAppNameAndTenantId(String phoneNo, String appName, Integer tenantId);
......@@ -30,7 +32,7 @@ public interface IWeChatUserRepository extends JpaRepository<WechatUserInfo, Lon
WechatUserInfo findFirstByUserIdAndAppNameAndTenantIdOrderByCreatedAtDesc(Long userId, String appName, Integer tenantId);
long countByOpenIdAndAppNameAndAppIdAndTenantId(String openId, String appName,String appId,Integer tenantId);
long countByOpenIdAndAppNameAndAppIdAndTenantId(String openId, String appName, String appId, Integer tenantId);
/**
* 解除关联关系 -- 当前用户的已关联微信
......@@ -55,7 +57,7 @@ public interface IWeChatUserRepository extends JpaRepository<WechatUserInfo, Lon
@Transactional(rollbackFor = Exception.class)
@Modifying
@Query(value = "update wechat_userinfo set user_id=?1,phone_no=?2 where open_id=?3 and user_id is null and app_name=?4 and app_id=?5 and tenant_id=?6", nativeQuery = true)
int relateUser(Long userId, String phoneNo, String openId, String appName,String appId,Integer tenantId);
int relateUser(Long userId, String phoneNo, String openId, String appName, String appId, Integer tenantId);
/**
* 解除关联关系 -- 包括:1、当前微信旧的关联用户;2、当前用户旧的关联微信
......@@ -68,11 +70,12 @@ public interface IWeChatUserRepository extends JpaRepository<WechatUserInfo, Lon
@Transactional(propagation = MANDATORY, rollbackFor = Exception.class)
@Modifying
@Query(value = "update wechat_userinfo set user_id=null,phone_no='*' where (open_id=?1 or user_id=?2) and app_name=?3 and app_id=?4 and tenant_id=?5", nativeQuery = true)
int dissociateUser(String openId, Long userId, String appName,String appId,Integer tenantId);
int dissociateUser(String openId, Long userId, String appName, String appId, Integer tenantId);
/**
* 更新unionId
*
* @param userId
* @param appName
* @param unionId
......@@ -81,7 +84,7 @@ public interface IWeChatUserRepository extends JpaRepository<WechatUserInfo, Lon
@Transactional(rollbackFor = Exception.class)
@Modifying
@Query(value = "update wechat_userinfo set union_id=?3 where user_id=?1 and app_name=?2 and app_id=?3 and tenant_id=?4", nativeQuery = true)
int updateUserUnionId(Long userId, String appName, String unionId,String appId,Integer tenantId);
int updateUserUnionId(Long userId, String appName, String unionId, String appId, Integer tenantId);
@Transactional
void deleteByUserIdAndTenantId(Long userId, Integer tenantId);
......@@ -89,9 +92,9 @@ public interface IWeChatUserRepository extends JpaRepository<WechatUserInfo, Lon
/**
* 通过userId查询相关绑定微信记录
*/
List<WechatUserInfo> findByUserIdAndTenantId(Long userId,Integer tenantId);
List<WechatUserInfo> findByUserIdAndTenantId(Long userId, Integer tenantId);
List<WechatUserInfo> findByPhoneNoAndTenantId(String phoneNo,Integer tenantId);
List<WechatUserInfo> findByPhoneNoAndTenantId(String phoneNo, Integer tenantId);
/**
* 通过unionId查询相关绑定微信记录
......
......@@ -3,7 +3,6 @@ package cn.quantgroup.xyqb.service.wechat.impl;
import cn.quantgroup.xyqb.Constants;
import cn.quantgroup.xyqb.entity.WechatUserInfo;
import cn.quantgroup.xyqb.exception.WechatRelateUserException;
import cn.quantgroup.xyqb.model.AppUserParam;
import cn.quantgroup.xyqb.model.webchat.AccessTokenResponse;
import cn.quantgroup.xyqb.model.webchat.WechatEventMsg;
import cn.quantgroup.xyqb.repository.IWeChatUserRepository;
......@@ -123,7 +122,7 @@ public class WechatServiceImpl implements IWechatService {
}
public List<WechatUserInfo> findUuidsAndOpenIdAndTenantId(List<String> uuids, String appId, Integer tenantId){
return weChatUserRepository.findByUuidInAndAppIdAndTenantId(uuids,appId,tenantId);
return weChatUserRepository.findByUnionIdInAndAppIdAndTenantId(uuids,appId,tenantId);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment