|
|
@@ -2006,7 +2006,8 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public HttpResult<AlipayVo> loginAlipay(AlipayBindVo alipayBindVo) throws AlipayApiException {
|
|
|
+ public HttpResult<AAPLoginVo> loginAlipay(AlipayBindVo alipayBindVo) throws AlipayApiException {
|
|
|
+ AAPLoginVo aapLoginVo = new AAPLoginVo();
|
|
|
AlipayClient alipayClient = new DefaultAlipayClient(getAlipayConfig());
|
|
|
|
|
|
// 构造请求参数以调用接口
|
|
|
@@ -2028,12 +2029,27 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
if (sysUser == null) {
|
|
|
throw new SystemException("您还未绑定工号");
|
|
|
}
|
|
|
+ //校验登录用户是否为合伙人或者是机构负责人
|
|
|
+ boolean a = this.checkPartner(sysUser.getId());
|
|
|
+ boolean b = sysAgencyLeaderService.checkUserId(sysUser.getId());
|
|
|
+ if (a) {
|
|
|
+ SysPartner sysPartner = sysPartnerMapper.selectOne(new LambdaQueryWrapper<SysPartner>().eq(SysPartner::getUserId, sysUser.getId()));
|
|
|
+ //类型:1.合伙人;2机构负责人
|
|
|
+ aapLoginVo.setType(1);
|
|
|
+ aapLoginVo.setLevel(sysPartner.getType());
|
|
|
+ } else if (b) {
|
|
|
+ aapLoginVo.setType(2);
|
|
|
+ } else {
|
|
|
+ throw new SystemException("该用户无权限登录AAP,只能合伙人或者工作室管理员才能登录!");
|
|
|
+
|
|
|
+ }
|
|
|
SysUser.verifyUser(sysUser);//验证用户状态
|
|
|
|
|
|
String token = StpUtil.createLoginSession(sysUser.getId());
|
|
|
- AlipayVo alipayVo = new AlipayVo(token, sysUser.getId());
|
|
|
+// AlipayVo alipayVo = new AlipayVo(token, sysUser.getId());
|
|
|
StpUtil.getSessionByLoginId(sysUser.getId()).set(SaSession.USER, sysUser);
|
|
|
- return HttpResult.ok("", alipayVo);
|
|
|
+ aapLoginVo.setToken(token);
|
|
|
+ return HttpResult.ok("", aapLoginVo);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -2092,24 +2108,38 @@ public class SysPartnerServiceImpl extends ServiceImpl<SysPartnerMapper, SysPart
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public HttpResult<WechatVo> loginWechat(WechatLoginVo wechatLoginVo) throws WxErrorException {
|
|
|
+ public HttpResult<AAPLoginVo> loginWechat(WechatLoginVo wechatLoginVo) throws WxErrorException {
|
|
|
+ AAPLoginVo aapLoginVo = new AAPLoginVo();
|
|
|
WxOAuth2AccessToken accessToken = wxMpService.getOAuth2Service().getAccessToken(wechatLoginVo.getCode());
|
|
|
String openId = accessToken.getOpenId();
|
|
|
SysUser sysUser = sysUserService.lambdaQuery()
|
|
|
.eq(SysUser::getOpenid, openId)
|
|
|
.one();
|
|
|
-
|
|
|
// 没有绑定微信
|
|
|
if (sysUser == null) {
|
|
|
throw new SystemException("您还未绑定工号。");
|
|
|
}
|
|
|
+ //校验登录用户是否为合伙人或者是机构负责人
|
|
|
+ boolean a = this.checkPartner(sysUser.getId());
|
|
|
+ boolean b = sysAgencyLeaderService.checkUserId(sysUser.getId());
|
|
|
+ if (a) {
|
|
|
+ SysPartner sysPartner = sysPartnerMapper.selectOne(new LambdaQueryWrapper<SysPartner>().eq(SysPartner::getUserId, sysUser.getId()));
|
|
|
+ //类型:1.合伙人;2机构负责人
|
|
|
+ aapLoginVo.setType(1);
|
|
|
+ aapLoginVo.setLevel(sysPartner.getType());
|
|
|
+ } else if (b) {
|
|
|
+ aapLoginVo.setType(2);
|
|
|
+ } else {
|
|
|
+ throw new SystemException("该用户无权限登录AAP,只能合伙人或者工作室管理员才能登录!");
|
|
|
+
|
|
|
+ }
|
|
|
SysUser.verifyUser(sysUser);
|
|
|
|
|
|
String token = StpUtil.createLoginSession(sysUser.getId());
|
|
|
StpUtil.getSessionByLoginId(sysUser.getId()).set(SaSession.USER, sysUser);
|
|
|
- WechatVo wechatVo = new WechatVo(token, sysUser.getId());
|
|
|
+ aapLoginVo.setToken(token);
|
|
|
|
|
|
- return HttpResult.ok("", wechatVo);
|
|
|
+ return HttpResult.ok("", aapLoginVo);
|
|
|
}
|
|
|
|
|
|
@Override
|