|
@@ -2,6 +2,7 @@ package com.ym.mec.auth.service.impl;
|
|
|
|
|
|
import com.ym.mec.auth.api.dto.SysUserInfo;
|
|
|
import com.ym.mec.auth.api.entity.SysUser;
|
|
|
+import com.ym.mec.auth.api.enums.SysUserType;
|
|
|
import com.ym.mec.auth.api.enums.YesOrNoEnum;
|
|
|
import com.ym.mec.auth.dal.dao.SysUserDao;
|
|
|
import com.ym.mec.auth.service.SysRoleMenuService;
|
|
@@ -13,8 +14,11 @@ import com.ym.mec.common.entity.ImUserModel;
|
|
|
import com.ym.mec.common.exception.BizException;
|
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
|
import com.ym.mec.im.ImFeignService;
|
|
|
+import com.ym.mec.web.TeacherFeignService;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.beans.factory.annotation.Value;
|
|
|
+import org.springframework.security.core.userdetails.UsernameNotFoundException;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.util.Date;
|
|
@@ -30,11 +34,17 @@ public class SysUserServiceImpl extends BaseServiceImpl<Integer, SysUser> implem
|
|
|
private SysUserRoleService sysUserRoleService;
|
|
|
|
|
|
@Autowired
|
|
|
+ private TeacherFeignService teacherFeignService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
private SysRoleMenuService sysRoleMenuService;
|
|
|
|
|
|
@Autowired
|
|
|
private ImFeignService imFeignService;
|
|
|
|
|
|
+ @Value("${message.autoRegister}")
|
|
|
+ private boolean autoRegister;
|
|
|
+
|
|
|
@Override
|
|
|
public BaseDAO<Integer, SysUser> getDAO() {
|
|
|
return sysUserDao;
|
|
@@ -122,10 +132,7 @@ public class SysUserServiceImpl extends BaseServiceImpl<Integer, SysUser> implem
|
|
|
@Override
|
|
|
public void updateBaseInfo(SysUser sysUser) {
|
|
|
sysUserDao.update(sysUser);
|
|
|
- if(StringUtils.isEmpty(sysUser.getAvatar())){
|
|
|
- sysUser.setAvatar("https://daya-online.oss-cn-beijing.aliyuncs.com/201910/RgHwgKc.jpg");
|
|
|
- }
|
|
|
- imFeignService.update(new ImUserModel(sysUser.getId().toString(),sysUser.getUsername(),sysUser.getAvatar()));
|
|
|
+ imFeignService.update(new ImUserModel(sysUser.getId().toString(),sysUser.getUsername(),null));
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -135,4 +142,39 @@ public class SysUserServiceImpl extends BaseServiceImpl<Integer, SysUser> implem
|
|
|
return sysUser;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public SysUserInfo initUser(String phone, String clientId) {
|
|
|
+ if(autoRegister){
|
|
|
+ if(StringUtils.equalsIgnoreCase(clientId,"teacher")){
|
|
|
+ //注册用户
|
|
|
+ SysUser sysUser = registerUser(phone,SysUserType.TEACHER);
|
|
|
+ return queryUserInfoByPhone(phone);
|
|
|
+ }else if(StringUtils.equalsIgnoreCase(clientId,"student")){
|
|
|
+ SysUser sysUser = registerUser(phone,SysUserType.STUDENT);
|
|
|
+ //注册现金账户
|
|
|
+ teacherFeignService.saveUserCashAccount(sysUser.getId());
|
|
|
+ return queryUserInfoByPhone(phone);
|
|
|
+ }
|
|
|
+ throw new UsernameNotFoundException("404.9");
|
|
|
+ }else {
|
|
|
+ throw new UsernameNotFoundException("404.9");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private SysUser registerUser(String phone, SysUserType sysUserType){
|
|
|
+ SysUser sysUser = new SysUser();
|
|
|
+ sysUser.setPhone(phone);
|
|
|
+ sysUser.setUsername(phone);
|
|
|
+ sysUser.setOrganId(1);
|
|
|
+ sysUser.setGender(1);
|
|
|
+ sysUser.setIsSuperAdmin(false);
|
|
|
+ //注册用户
|
|
|
+ sysUser.setUserType(sysUserType);
|
|
|
+ sysUserDao.insert(sysUser);
|
|
|
+ ImResult register = imFeignService.register(new ImUserModel(sysUser.getId().toString(), phone, null));
|
|
|
+ sysUser.setImToken(register.getToken());
|
|
|
+ sysUserDao.update(sysUser);
|
|
|
+ return sysUser;
|
|
|
+ }
|
|
|
+
|
|
|
}
|