|
@@ -24,10 +24,7 @@ import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
-import java.util.HashMap;
|
|
|
|
-import java.util.List;
|
|
|
|
-import java.util.Map;
|
|
|
|
-import java.util.Optional;
|
|
|
|
|
|
+import java.util.*;
|
|
|
|
|
|
/**
|
|
/**
|
|
* @Date: 2021/5/20.
|
|
* @Date: 2021/5/20.
|
|
@@ -98,15 +95,24 @@ public class SsoServiceImpl implements SsoService {
|
|
public Map<String, Object> analysisLogin(String loginName, RoleTypeEnum role, String orgName, String realName, String mobileNumber, Boolean enable, String returnUrl) throws IOException {
|
|
public Map<String, Object> analysisLogin(String loginName, RoleTypeEnum role, String orgName, String realName, String mobileNumber, Boolean enable, String returnUrl) throws IOException {
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
BasicSchool basicSchool = commonCacheService.schoolCache(sysUser.getSchoolId());
|
|
BasicSchool basicSchool = commonCacheService.schoolCache(sysUser.getSchoolId());
|
|
- List<SysOrg> sysOrgList = sysOrgService.findByConnectByParentId(sysUser.getOrgId(), false, true);
|
|
|
|
- if (CollectionUtils.isEmpty(sysOrgList)) {
|
|
|
|
- throw ExceptionResultEnum.ERROR.exception("未找到学院信息");
|
|
|
|
|
|
+ if (role == RoleTypeEnum.PRESIDENT || role == RoleTypeEnum.TEACHER) {
|
|
|
|
+ List<SysOrg> sysOrgList = sysOrgService.findByConnectByParentId(sysUser.getOrgId(), false, true);
|
|
|
|
+ if (CollectionUtils.isEmpty(sysOrgList)) {
|
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("未找到学院信息");
|
|
|
|
+ }
|
|
|
|
+ orgName = sysOrgList.get(0).getName();
|
|
|
|
+ } else if (role == RoleTypeEnum.OFFICE_TEACHER && Objects.nonNull(sysUser.getOrgId())) {
|
|
|
|
+ SysOrg sysOrg = commonCacheService.orgCache(sysUser.getOrgId());
|
|
|
|
+ if (Objects.isNull(sysOrg)) {
|
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("未找到学校信息");
|
|
|
|
+ }
|
|
|
|
+ orgName = sysOrg.getName();
|
|
}
|
|
}
|
|
|
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
Map<String, Object> map = new HashMap<>();
|
|
map.computeIfAbsent("loginName", v -> loginName);
|
|
map.computeIfAbsent("loginName", v -> loginName);
|
|
map.computeIfAbsent("role", v -> role);
|
|
map.computeIfAbsent("role", v -> role);
|
|
- map.computeIfAbsent("orgName", v -> sysOrgList.get(0).getName());
|
|
|
|
|
|
+ map.put("orgName", orgName);
|
|
map.computeIfAbsent("realName", v -> realName);
|
|
map.computeIfAbsent("realName", v -> realName);
|
|
map.computeIfAbsent("mobileNumber", v -> mobileNumber);
|
|
map.computeIfAbsent("mobileNumber", v -> mobileNumber);
|
|
map.computeIfAbsent("returnUrl", v -> returnUrl);
|
|
map.computeIfAbsent("returnUrl", v -> returnUrl);
|