提交 8227d9f0 authored 作者: liupengfei's avatar liupengfei

--no commit message

上级 b3276260
......@@ -40,6 +40,9 @@ public class Member {
@ApiModelProperty("qqKey")
@JsonIgnore
private String qqKey;
@ApiModelProperty("微博Key")
@JsonIgnore
private String weiBoKey;
@ApiModelProperty("用户类别:0 普通用户,1专家用户,2机构用户")
private Integer level;
@ApiModelProperty("创建时间")
......
......@@ -56,5 +56,11 @@ public interface FgMemberService extends BaseService<Member, Integer> {
* @return
*/
boolean isExistByPhone(Integer id, String phone);
/**
* 微信登录
* @param wechatKey
* @return
*/
Member loginWeiBo(String openid);
}
......@@ -135,4 +135,11 @@ public class FgMemberServiceImpl extends BaseServiceImpl<Member, Integer> implem
}
return info;
}
@Override
public Member loginWeiBo(String openid) {
Member member = new Member();
member.setWeiBoKey(openid);
return super.notNull(member);
}
}
......@@ -32,8 +32,10 @@ import com.zrqx.core.client.form.third.sdksms.SdkSmsForm;
import com.zrqx.core.client.third.QQLoginClient;
import com.zrqx.core.client.third.SdkSmsClient;
import com.zrqx.core.client.third.WeChatLoginClient;
import com.zrqx.core.client.third.WeiBoLoginClient;
import com.zrqx.core.client.vo.third.qqlogin.QQThirdReturn;
import com.zrqx.core.client.vo.third.wechartlogin.WeChartThirdReturn;
import com.zrqx.core.client.vo.third.weibologin.WeiBoThirdReturn;
import com.zrqx.core.commons.form.LoginMemberInfo;
import com.zrqx.core.commons.redis.Redis;
import com.zrqx.core.enums.member.ChannelEnum;
......@@ -78,6 +80,8 @@ public class FgPermissionsController {
@Autowired
private QQLoginClient qqLogin;
@Autowired
private WeiBoLoginClient weiBoLogin;
@Autowired
private SdkSmsClient sdkSmsClient;
@Autowired
private FgMemberService mService;
......@@ -286,6 +290,30 @@ public class FgPermissionsController {
redis.set(token, info);
return CallBack.success(info);
}
@ApiOperation(value = "微博用户登录", notes = "0:登录成功;5:该账户已禁用;6:第三方登录错误;7:未绑定平台账号")
@GetMapping(value ="/weibo/login")
public CallBack<LoginMemberInfo> weiboLogin(@RequestParam("code")String code) throws BaseException, Exception {
CallBack<WeiBoThirdReturn> cb = weiBoLogin.query(code);
if(!cb.isStatus()){
throw new BaseException(6,cb.getMsg());
}
Member m = mService.loginWeiBo(cb.getData().getOpenid());
if(m == null){
//还未与平台用户绑定的微信用户
LoginMemberInfo info = new LoginMemberInfo();
info.setNickName(filterEmoji(cb.getData().getNickname()));
info.setImg(cb.getData().getHeadImgUrl());
info.setWeiBoKey(cb.getData().getOpenid());
throw new BaseException(7,cb.getMsg(),info);
}else if (m.getStatus() == 0) {
throw new BaseException(5,"该账户已禁用");
}
LoginMemberInfo info = mService.isLevelLogin(m);
String token = MD5Util.getEncoderByMd5(m.getAccount());
info.setToken(token);
redis.set(token, info);
return CallBack.success(info);
}
@ApiOperation(value = "平台账户绑定第三方账号并登录", notes = "0:成功;5:该账户已禁用;8:平台账号不存在;9:第三方账号不能为空;")
@PostMapping(value = "/bind")
public CallBack<LoginMemberInfo> bind(@RequestBody BindForm form) throws BaseException, Exception {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论