|
|
@@ -34,6 +34,8 @@ import org.dromara.common.core.domain.model.SocialLoginBody;
|
|
|
import org.dromara.common.core.utils.*;
|
|
|
import org.dromara.common.encrypt.annotation.ApiEncrypt;
|
|
|
import org.dromara.common.json.utils.JsonUtils;
|
|
|
+import org.dromara.common.log.annotation.Log;
|
|
|
+import org.dromara.common.mybatis.helper.DataPermissionHelper;
|
|
|
import org.dromara.common.satoken.utils.LoginHelper;
|
|
|
import org.dromara.common.social.config.properties.SocialLoginConfigProperties;
|
|
|
import org.dromara.common.social.config.properties.SocialProperties;
|
|
|
@@ -43,6 +45,7 @@ import org.dromara.common.websocket.utils.WebSocketUtils;
|
|
|
import org.dromara.system.domain.SysClient;
|
|
|
import org.dromara.system.domain.bo.SysSocialBo;
|
|
|
import org.dromara.system.domain.bo.SysTenantBo;
|
|
|
+import org.dromara.system.domain.bo.SysUserBo;
|
|
|
import org.dromara.system.domain.vo.SysSocialVo;
|
|
|
import org.dromara.system.domain.vo.SysTenantVo;
|
|
|
import org.dromara.system.domain.vo.SysUserVo;
|
|
|
@@ -57,6 +60,8 @@ import org.springframework.validation.annotation.Validated;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import java.net.URL;
|
|
|
+import java.util.Arrays;
|
|
|
+import java.util.Date;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.concurrent.ScheduledExecutorService;
|
|
|
@@ -82,6 +87,7 @@ public class AuthController {
|
|
|
private final ISysSocialService socialUserService;
|
|
|
private final ISysClientService clientService;
|
|
|
private final ScheduledExecutorService scheduledExecutorService;
|
|
|
+ private final ISysDeptService deptService;
|
|
|
|
|
|
private final WxMaService wxMaService;
|
|
|
private final ISysSocialService sysSocialService;
|
|
|
@@ -208,6 +214,7 @@ public class AuthController {
|
|
|
return R.ok();
|
|
|
}
|
|
|
|
|
|
+
|
|
|
@PostMapping("/loginByPhoneCodeAndLoginCode")
|
|
|
public R<LoginVo> registerByPhonecode(@RequestBody String loginbody) throws WxErrorException {
|
|
|
JSONObject jsonObject = JSONUtil.parseObj(loginbody);
|
|
|
@@ -233,6 +240,25 @@ public class AuthController {
|
|
|
userVo = sysUserService.selectUserByUserName(phone.getPhoneNumber());
|
|
|
}
|
|
|
|
|
|
+ try {
|
|
|
+ SysUserBo bo = BeanUtil.toBean(userVo, SysUserBo.class);
|
|
|
+ if (bo.getRoleIds() == null) {
|
|
|
+ bo.setRoleIds(new Long[]{1763484977044361217L});
|
|
|
+ bo.setPassword(null);
|
|
|
+ bo.setUserType(null);
|
|
|
+ } else {
|
|
|
+ List<Long> a = Arrays.stream(bo.getRoleIds()).toList();
|
|
|
+ if(!a.contains(1763484977044361217L)){
|
|
|
+ a.add(1763484977044361217L);
|
|
|
+ }
|
|
|
+ bo.setPassword(null);
|
|
|
+ bo.setUserType(null);
|
|
|
+ bo.setRoleIds((Long[]) a.toArray());
|
|
|
+
|
|
|
+ }
|
|
|
+ DataPermissionHelper.ignore(() -> sysUserService.updateUser(bo));
|
|
|
+ }catch (Exception e){}
|
|
|
+
|
|
|
//绑定微信
|
|
|
SysSocialBo bo = BeanUtil.toBean(authUserData, SysSocialBo.class);
|
|
|
String authId = authUserData.getSource() + authUserData.getUuid();
|