Commit 32bbc944 authored by 唐峰's avatar 唐峰

用户信息查询异常处理

parent 992fa04c
...@@ -25,6 +25,7 @@ public enum BizExceptionEnum { ...@@ -25,6 +25,7 @@ public enum BizExceptionEnum {
UN_VALID_STMS_TOKEN("1014","无效的stms的token"), UN_VALID_STMS_TOKEN("1014","无效的stms的token"),
UN_PERMISSION_STMS("1015","没有内部接口访问权限"), UN_PERMISSION_STMS("1015","没有内部接口访问权限"),
EXPIRE_WECHAT_TOKEN("1016","微信接口token过期,请执行定时任务"), EXPIRE_WECHAT_TOKEN("1016","微信接口token过期,请执行定时任务"),
ERROR_MATCHING_WECHAT_APP_ID("1017","微信appName和appId不匹配"),
......
...@@ -8,6 +8,8 @@ import cn.quantgroup.xyqb.entity.User; ...@@ -8,6 +8,8 @@ import cn.quantgroup.xyqb.entity.User;
import cn.quantgroup.xyqb.entity.WechatUserInfo; import cn.quantgroup.xyqb.entity.WechatUserInfo;
import cn.quantgroup.xyqb.entity.middleoffice.AppletParamEntry; import cn.quantgroup.xyqb.entity.middleoffice.AppletParamEntry;
import cn.quantgroup.xyqb.exception.AppletException; import cn.quantgroup.xyqb.exception.AppletException;
import cn.quantgroup.xyqb.exception.BizException;
import cn.quantgroup.xyqb.exception.BizExceptionEnum;
import cn.quantgroup.xyqb.repository.IWeChatUserRepository; import cn.quantgroup.xyqb.repository.IWeChatUserRepository;
import cn.quantgroup.xyqb.service.middleoffice.applet.IAppletService; import cn.quantgroup.xyqb.service.middleoffice.applet.IAppletService;
import cn.quantgroup.xyqb.service.register.IUserRegisterService; import cn.quantgroup.xyqb.service.register.IUserRegisterService;
...@@ -17,6 +19,9 @@ import lombok.extern.slf4j.Slf4j; ...@@ -17,6 +19,9 @@ import lombok.extern.slf4j.Slf4j;
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 org.springframework.validation.BindException;
import java.util.Objects;
import static cn.quantgroup.xyqb.constant.UserConstant.USER_FREEZE_ERROR; import static cn.quantgroup.xyqb.constant.UserConstant.USER_FREEZE_ERROR;
...@@ -57,6 +62,12 @@ public class AppletServiceImpl implements IAppletService { ...@@ -57,6 +62,12 @@ public class AppletServiceImpl implements IAppletService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Long relevance(AppletParamEntry appletParamEntry) { public Long relevance(AppletParamEntry appletParamEntry) {
String appId = wechatConfiguration.getByAppName(appletParamEntry.getAppName()).getAppId();
appId = StringUtils.isEmpty(appletParamEntry.getAppId()) ? appId:appletParamEntry.getAppId();
if (!Objects.equals(appId,appletParamEntry.getAppId())) {
throw new BizException(BizExceptionEnum.ERROR_MATCHING_WECHAT_APP_ID);
}
appletParamEntry.setAppId(appId);
WechatUserInfo wechatUserInfo = iWeChatUserRepository.findByOpenIdAndAppNameAndAppIdAndTenantId(appletParamEntry.getOpenId(), appletParamEntry.getAppName(), appletParamEntry.getAppId(), appletParamEntry.getTenantId()); WechatUserInfo wechatUserInfo = iWeChatUserRepository.findByOpenIdAndAppNameAndAppIdAndTenantId(appletParamEntry.getOpenId(), appletParamEntry.getAppName(), appletParamEntry.getAppId(), appletParamEntry.getTenantId());
//这个接口先不考虑更换手机号的情况 //这个接口先不考虑更换手机号的情况
if (appletParamEntry.getTenantId() == null) { if (appletParamEntry.getTenantId() == null) {
...@@ -91,9 +102,10 @@ public class AppletServiceImpl implements IAppletService { ...@@ -91,9 +102,10 @@ public class AppletServiceImpl implements IAppletService {
} }
wechatUserInfo.setUserId(user.getId()); wechatUserInfo.setUserId(user.getId());
} }
wechatUserInfo.setAppId(wechatConfiguration.getByAppName(appletParamEntry.getAppName()).getAppId()); wechatUserInfo.setAppId(appId);
//如果存在就更新在微信表里 //如果存在就更新在微信表里
//iWeChatUserRepository.findByOpenIdAndAppNameAndTenantId()
iWeChatUserRepository.save(wechatUserInfo); iWeChatUserRepository.save(wechatUserInfo);
return wechatUserInfo.getUserId(); return wechatUserInfo.getUserId();
} }
......
...@@ -6,6 +6,7 @@ import cn.quantgroup.xyqb.entity.User; ...@@ -6,6 +6,7 @@ import cn.quantgroup.xyqb.entity.User;
import cn.quantgroup.xyqb.entity.WechatUserInfo; import cn.quantgroup.xyqb.entity.WechatUserInfo;
import cn.quantgroup.xyqb.exception.BizException; import cn.quantgroup.xyqb.exception.BizException;
import cn.quantgroup.xyqb.exception.BizExceptionEnum; import cn.quantgroup.xyqb.exception.BizExceptionEnum;
import cn.quantgroup.xyqb.exception.SilentBizException;
import cn.quantgroup.xyqb.model.AuthBean; import cn.quantgroup.xyqb.model.AuthBean;
import cn.quantgroup.xyqb.model.LoginBean; import cn.quantgroup.xyqb.model.LoginBean;
import cn.quantgroup.xyqb.model.LoginProperties; import cn.quantgroup.xyqb.model.LoginProperties;
...@@ -82,7 +83,7 @@ public class InterLoginStrategy implements LoginStrategy { ...@@ -82,7 +83,7 @@ public class InterLoginStrategy implements LoginStrategy {
} }
if (user == null) { if (user == null) {
throw new BizException(BizExceptionEnum.UN_EXIT_USER); throw new SilentBizException(BizExceptionEnum.UN_EXIT_USER);
} }
...@@ -90,7 +91,7 @@ public class InterLoginStrategy implements LoginStrategy { ...@@ -90,7 +91,7 @@ public class InterLoginStrategy implements LoginStrategy {
//2、需要判断是否是否启用 //2、需要判断是否是否启用
if (!user.getEnable()) { if (!user.getEnable()) {
log.info("用户不存在,或者已经注销,phoneNo:{}", user.getPhoneNo()); log.info("用户不存在,或者已经注销,phoneNo:{}", user.getPhoneNo());
throw new BizException(BizExceptionEnum.ERROR_OR_ENABLE_ERROR); throw new SilentBizException(BizExceptionEnum.ERROR_OR_ENABLE_ERROR);
} }
LoginProperties loginProperties = new LoginProperties(1, sessionStruct.getRegisteredFrom(), sessionStruct.getTenantId()); LoginProperties loginProperties = new LoginProperties(1, sessionStruct.getRegisteredFrom(), sessionStruct.getTenantId());
......
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