|
@@ -122,16 +122,13 @@ public class LoginServiceImpl implements LoginService {
|
|
|
|
|
|
|
|
|
@Override
|
|
|
- public ResponseJson<WxClubUserVo> loginByInvitationCode(String mobile, String verifyCode, String invitationCode, String accessToken, String openId, String appId) throws Exception {
|
|
|
+ public ResponseJson<WxClubUserVo> loginByVerifyCode(String mobile, String verifyCode, String accessToken, String openId, String appId) throws Exception {
|
|
|
if (StringUtils.isEmpty(mobile)) {
|
|
|
return ResponseJson.error("参数异常,请输入手机号", null);
|
|
|
}
|
|
|
if (StringUtils.isEmpty(verifyCode)) {
|
|
|
return ResponseJson.error("参数异常,请输入验证码", null);
|
|
|
}
|
|
|
- if (StringUtils.isEmpty(invitationCode)) {
|
|
|
- return ResponseJson.error("参数异常,请输入邀请码", null);
|
|
|
- }
|
|
|
if (StringUtils.isEmpty(accessToken)) {
|
|
|
return ResponseJson.error("参数异常,请输入accessToken", null);
|
|
|
}
|
|
@@ -146,13 +143,13 @@ public class LoginServiceImpl implements LoginService {
|
|
|
if (!verifyCode.equals(redisVerifyCode)) {
|
|
|
return ResponseJson.error("验证码错误,请重新输入", null);
|
|
|
}
|
|
|
- // 校验邀请码是否有效
|
|
|
- ClubUserPo clubUserPo = loginMapper.findByInvitationCode(invitationCode);
|
|
|
- if (null == clubUserPo || 2 == clubUserPo.getStatus() || clubUserPo.getInvitationCodeTime().compareTo(new Date()) < 0) {
|
|
|
- return ResponseJson.error("邀请码已失效", null);
|
|
|
+ // 校验机构用户是否存在
|
|
|
+ WxClubUserVo wxClubUser = clubMapper.getWxClubUser(mobile, appId, null);
|
|
|
+ if (null == wxClubUser) {
|
|
|
+ return ResponseJson.error("抱歉,您的手机号暂无权限登录", null);
|
|
|
}
|
|
|
// 校验机构和供应商的状态是否为已上线
|
|
|
- CmBrandAuthPo clubPo = authMapper.getAuthById(clubUserPo.getAuthId());
|
|
|
+ CmBrandAuthPo clubPo = authMapper.getAuthById(wxClubUser.getAuthId());
|
|
|
Integer shopStatus = shopMapper.getShopStatus(clubPo.getAuthUserId());
|
|
|
if (1 != clubPo.getStatus() || 1 != shopStatus) {
|
|
|
return ResponseJson.error("登录失败", null);
|
|
@@ -164,10 +161,10 @@ public class LoginServiceImpl implements LoginService {
|
|
|
}
|
|
|
Map<String, String> userInfo = WxUtils.getUserInfo(accessToken, openId);
|
|
|
String nickName = userInfo.get("nickName");
|
|
|
- loginMapper.bindClubUser(mobile, nickName, openId, invitationCode);
|
|
|
+ loginMapper.bindClubUser(mobile, nickName, openId);
|
|
|
WxClubUserVo clubUser = new WxClubUserVo();
|
|
|
- clubUser.setClubUserId(clubUserPo.getId());
|
|
|
- clubUser.setAuthId(clubUserPo.getAuthId());
|
|
|
+ clubUser.setClubUserId(wxClubUser.getClubUserId());
|
|
|
+ clubUser.setAuthId(wxClubUser.getAuthId());
|
|
|
clubUser.setAuthUserId(clubPo.getAuthUserId());
|
|
|
clubUser.setMobile(mobile);
|
|
|
clubUser.setOpenId(openId);
|
|
@@ -194,11 +191,11 @@ public class LoginServiceImpl implements LoginService {
|
|
|
return ResponseJson.error("验证码错误,请重新输入", null);
|
|
|
}
|
|
|
// 获取手机号对应机构用户
|
|
|
- WxClubUserVo clubUser = clubMapper.getWxClubUser(mobile, appId);
|
|
|
+ WxClubUserVo clubUser = clubMapper.getWxClubUser(mobile, appId, null);
|
|
|
if (null == clubUser) {
|
|
|
clubUser = new WxClubUserVo();
|
|
|
clubUser.setMobile(mobile);
|
|
|
- return ResponseJson.error(-2,"未注册,请填写邀请码注册", clubUser);
|
|
|
+ return ResponseJson.error(-2,"抱歉,您的手机号暂无权限登录", clubUser);
|
|
|
}
|
|
|
// 校验机构和供应商的状态是否为已上线
|
|
|
CmBrandAuthPo clubPo = authMapper.getAuthById(clubUser.getAuthId());
|
|
@@ -212,44 +209,4 @@ public class LoginServiceImpl implements LoginService {
|
|
|
clubUser.setAccessToken(accessToken);
|
|
|
return ResponseJson.success(clubUser);
|
|
|
}
|
|
|
-
|
|
|
- @Override
|
|
|
- public ResponseJson<WxClubUserVo> loginByInvitationCode(String mobile, String invitationCode, String appId) {
|
|
|
- if (StringUtils.isEmpty(mobile)) {
|
|
|
- return ResponseJson.error("参数异常,请输入手机号", null);
|
|
|
- }
|
|
|
- if (StringUtils.isEmpty(invitationCode)) {
|
|
|
- return ResponseJson.error("参数异常,请输入邀请码", null);
|
|
|
- }
|
|
|
- if (StringUtils.isEmpty(appId)) {
|
|
|
- return ResponseJson.error("参数异常,请输入appId", null);
|
|
|
- }
|
|
|
- // 校验邀请码是否有效
|
|
|
- ClubUserPo clubUserPo = loginMapper.findByInvitationCode(invitationCode);
|
|
|
- if (null == clubUserPo || 2 == clubUserPo.getStatus() || clubUserPo.getInvitationCodeTime().compareTo(new Date()) < 0) {
|
|
|
- return ResponseJson.error("邀请码已失效", null);
|
|
|
- }
|
|
|
- // 校验机构和供应商的状态是否为已上线
|
|
|
- CmBrandAuthPo clubPo = authMapper.getAuthById(clubUserPo.getAuthId());
|
|
|
- Integer shopStatus = shopMapper.getShopStatus(clubPo.getAuthUserId());
|
|
|
- if (1 != clubPo.getStatus() || 1 != shopStatus) {
|
|
|
- return ResponseJson.error("登录失败", null);
|
|
|
- }
|
|
|
- // 校验appId是否和机构所属供应商的appId相同
|
|
|
- String dbAppId = shopMapper.getAppId(clubPo.getAuthUserId());
|
|
|
- if (StringUtils.isEmpty(dbAppId) || !appId.equals(dbAppId)) {
|
|
|
- return ResponseJson.error("登录失败", null);
|
|
|
- }
|
|
|
- loginMapper.bindClubUser(mobile, null, null, invitationCode);
|
|
|
- WxClubUserVo clubUser = new WxClubUserVo();
|
|
|
- clubUser.setClubUserId(clubUserPo.getId());
|
|
|
- clubUser.setAuthId(clubUserPo.getAuthId());
|
|
|
- clubUser.setAuthUserId(clubPo.getAuthUserId());
|
|
|
- clubUser.setMobile(mobile);
|
|
|
- // 登录成功redis保存token
|
|
|
- String accessToken = UUID.randomUUID().toString();
|
|
|
- redisService.set(accessToken, mobile + "," + appId, 60L * 60 * 24);
|
|
|
- clubUser.setAccessToken(accessToken);
|
|
|
- return ResponseJson.success(clubUser);
|
|
|
- }
|
|
|
}
|