Слияние кода завершено, страница обновится автоматически
openId), WechatAuth.class);
if (wechatAuthList == null || wechatAuthList.size() == 0) {
WeChatUserInfo weChatUserInfo = aliAdminWechatClient.getWeChatSubscribeUserInfo(openId);
WechatAuth wechatAuth = convertToWechatAuth(weChatUserInfo);
aliAdminBaseService.insert(wechatAuth);
return "redirect:" + domain + loginUrl;
}
//检查有没有建立openId--userId关联
List<UserWechat> userWechatList = aliAdminBaseService.listQueryBySQL(String.format("openId = '%s'", openId), UserWechat.class);
if (userWechatList == null || userWechatList.size() == 0) {
return "redirect:" + domain + loginUrl;
}
Long userId = userWechatList.get(0).getUserId();
List<User> userList = aliAdminBaseService.listQueryBySQL(String.format("id = %d", userId), User.class);
if (userList == null || userList.size() == 0) {
//脏数据
return "redirect:" + domain + loginUrl;
}
User user = userList.get(0);
//没有登录则程序自动登录
if (!SecurityUtils.getSubject().isAuthenticated()) {
Subject subject = SecurityUtils.getSubject();
subject.login(new UsernameToken(user.getUsername()));
}
//检查用户补充信息是否完成、注册审核是否通过
List<WorkUnit> workUnitList = aliAdminBaseService.listQueryBySQL("where userId = #{0}", WorkUnit.class, user.getId());
if (workUnitList == null || workUnitList.size() == 0) {
log.warn("user {} need profile", user.getId());
String url = aliAdminConfigService.getString("weixin.aliadmin.need.profile.url", "");
return "redirect:" + domain + url;
} else if (!RegisterStatus.审批通过.toString().equals(user.getVerifyStatus())) {
log.warn("user {} wait register approval", user.getId());
String url = aliAdminConfigService.getString("weixin.aliadmin.wait.register.approval.url", "");
return "redirect:" + domain + url;
}
String url = aliAdminConfigService.getString("weixin.outh2.redirect.h5.url." + state, "");
String stateKeys = aliAdminConfigService.getString("weixin.outh2.states", "");
log.info("openId {} click {}", openId, state);
if (stateKeys.contains(state)) {
return "redirect:" + domain + url;
} else {
return "redirect:" + domain + loginUrl;
}
}
return "";
}
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )