提交 a5383fba 作者: 洪东保

commit

父级 29512ef8
...@@ -78,6 +78,8 @@ public class UserServiceImpl implements UserService { ...@@ -78,6 +78,8 @@ public class UserServiceImpl implements UserService {
private AuthMapper authMapper; private AuthMapper authMapper;
@Resource @Resource
private SysUserSysMapper sysUserSyncMapper; private SysUserSysMapper sysUserSyncMapper;
@Value("${isDev}")
private Boolean isDev;
@Override @Override
public R login(String agentId, String data, String ip) { public R login(String agentId, String data, String ip) {
...@@ -214,7 +216,7 @@ public class UserServiceImpl implements UserService { ...@@ -214,7 +216,7 @@ public class UserServiceImpl implements UserService {
roleTree.getRobotCenter().add(it.getPerms()); roleTree.getRobotCenter().add(it.getPerms());
} else if (it.getParentSystem().contains("staffCenter")) { } else if (it.getParentSystem().contains("staffCenter")) {
roleTree.getStaffCenter().add(it.getPerms()); roleTree.getStaffCenter().add(it.getPerms());
}else if (it.getParentSystem().contains("processCenter")) { } else if (it.getParentSystem().contains("processCenter")) {
roleTree.getProcessCenter().add(it.getPerms()); roleTree.getProcessCenter().add(it.getPerms());
} }
} }
...@@ -238,7 +240,7 @@ public class UserServiceImpl implements UserService { ...@@ -238,7 +240,7 @@ public class UserServiceImpl implements UserService {
// + "&categoryId=" + categoryId // + "&categoryId=" + categoryId
// + "&targetId=" + targetId; // + "&targetId=" + targetId;
System.out.println(url); System.out.println(url);
JSONObject object = HttpClientUtils.httpPost(url,body, UserAdminTokenUtil.getUserAdminToken()); JSONObject object = HttpClientUtils.httpPost(url, body, UserAdminTokenUtil.getUserAdminToken());
return object; return object;
} }
...@@ -247,7 +249,7 @@ public class UserServiceImpl implements UserService { ...@@ -247,7 +249,7 @@ public class UserServiceImpl implements UserService {
String aigcToken = vo.getData(); String aigcToken = vo.getData();
String url = userAdminConfig.getSystemDomain() + "/cloud/info"; String url = userAdminConfig.getSystemDomain() + "/cloud/info";
JSONObject object = HttpClientUtils.httpGet(url, aigcToken); JSONObject object = HttpClientUtils.httpGet(url, aigcToken);
if("0".equals(object.get("code"))){ if ("0".equals(object.get("code"))) {
return null; return null;
} }
JSONObject data = object.getJSONObject("data"); JSONObject data = object.getJSONObject("data");
...@@ -259,17 +261,17 @@ public class UserServiceImpl implements UserService { ...@@ -259,17 +261,17 @@ public class UserServiceImpl implements UserService {
//先判断智能体是否有直接授权给当前登录人 //先判断智能体是否有直接授权给当前登录人
boolean userAccess = auths.stream().anyMatch(item -> item.getType().equals(1) && item.getRelId().equals(userId)); boolean userAccess = auths.stream().anyMatch(item -> item.getType().equals(1) && item.getRelId().equals(userId));
//未直接授权到人,判断是否有授权给当前登录人所在组织 //未直接授权到人,判断是否有授权给当前登录人所在组织
if(!userAccess){ if (!userAccess) {
List<CoreModulePermissions> authDepts = auths.stream().filter(item -> item.getType().equals(0)).collect(Collectors.toList()); List<CoreModulePermissions> authDepts = auths.stream().filter(item -> item.getType().equals(0)).collect(Collectors.toList());
List<String> deptPath = new ArrayList<>(); List<String> deptPath = new ArrayList<>();
for (CoreModulePermissions authDept : authDepts) { for (CoreModulePermissions authDept : authDepts) {
String deptId = authDept.getRelId(); String deptId = authDept.getRelId();
String tenantId = authDept.getTenantId(); String tenantId = authDept.getTenantId();
getDeptPath(deptPath,deptId,tenantId); getDeptPath(deptPath, deptId, tenantId);
} }
//已被授权部门下的userid //已被授权部门下的userid
List<String> accessUserIds = !CollectionUtils.isEmpty(deptPath) ? sysUserSyncMapper.getUsersByDept(deptPath,permissionTenantId) : new ArrayList<>(); List<String> accessUserIds = !CollectionUtils.isEmpty(deptPath) ? sysUserSyncMapper.getUsersByDept(deptPath, permissionTenantId) : new ArrayList<>();
if(!accessUserIds.contains(userId)){ if (!accessUserIds.contains(userId)) {
throw new RobotBaseException("您暂无权限"); throw new RobotBaseException("您暂无权限");
} }
} }
...@@ -311,51 +313,42 @@ public class UserServiceImpl implements UserService { ...@@ -311,51 +313,42 @@ public class UserServiceImpl implements UserService {
private R loginByAD(ApplicationUserVO.Login login) { private R loginByAD(ApplicationUserVO.Login login) {
// AD验证 // AD验证
String username = login.getUsername().trim(); String username = login.getUsername().trim();
boolean auth = iLdapService.authenticate(username, login.getPassword().trim()); if (!isDev) {
if (auth) { boolean auth = iLdapService.authenticate(username, login.getPassword().trim());
// if(true){ if (!auth) {
SysUserSync sysUserSync = sysUserSysMapper.selectOne(new LambdaQueryWrapper<SysUserSync>() return R.error("账号/密码错误!");
.eq(SysUserSync::getTenantId, permissionTenantId)
.eq(SysUserSync::getUserId, username));
if(StringUtils.isEmpty(adminWhiteUsers) || !Arrays.asList(adminWhiteUsers.split(",")).contains(username)){
throw new RobotBaseException("尊敬的用户 ["+sysUserSync.getName()+"],您的账户"+username+"未被授权访问此系统,请联系系统管理员。");
} }
// if (code != 0) {
// throw new RuntimeException("用户系统异常!");
// }
// if (data != null && data.size() > 0) {
// JSONArray array = filterData(data, application);
// if (array != null && array.size() > 0) {
// return R.ok(array);
// } else {
// array = filterData(data, null);
// return R.ok(array);
// }
// } else {
// throw new RuntimeException("用户未授权!");
// }
return R.ok(sysUserSync);
} else {
return R.error("账号/密码错误!");
} }
SysUserSync sysUserSync = sysUserSysMapper.selectOne(new LambdaQueryWrapper<SysUserSync>()
.eq(SysUserSync::getTenantId, permissionTenantId)
.eq(SysUserSync::getUserId, username));
if (StringUtils.isEmpty(adminWhiteUsers) || !Arrays.asList(adminWhiteUsers.split(",")).contains(username)) {
throw new RobotBaseException("尊敬的用户 [" + sysUserSync.getName() + "],您的账户" + username + "未被授权访问此系统,请联系系统管理员。");
}
return R.ok(sysUserSync);
} }
/** /**
* 获取部门的路径 * 获取部门的路径
*
* @param deptPath * @param deptPath
* @param deptId * @param deptId
* @param tenantId * @param tenantId
*/ */
private void getDeptPath(List<String> deptPath, String deptId, String tenantId) { private void getDeptPath(List<String> deptPath, String deptId, String tenantId) {
if(!deptPath.contains(deptId)) deptPath.add(deptId); if (!deptPath.contains(deptId)) {
List<String> subDeptIds = sysUserSyncMapper.getSubDeptId(deptId,tenantId); deptPath.add(deptId);
if(CollectionUtils.isEmpty(subDeptIds)) return; }
List<String> subDeptIds = sysUserSyncMapper.getSubDeptId(deptId, tenantId);
if (CollectionUtils.isEmpty(subDeptIds)) {
return;
}
for (String subDeptId : subDeptIds) { for (String subDeptId : subDeptIds) {
//部门id去重 //部门id去重
if(!deptPath.contains(subDeptId)){ if (!deptPath.contains(subDeptId)) {
deptPath.add(subDeptId); deptPath.add(subDeptId);
getDeptPath(deptPath,subDeptId,tenantId); getDeptPath(deptPath, subDeptId, tenantId);
} }
} }
......
package com.cmeeting.mapper; package com.cmeeting.mapper.primary;
import com.cmeeting.pojo.MeetEmailTemplate; import com.cmeeting.pojo.MeetEmailTemplate;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
......
package com.cmeeting.mapper; package com.cmeeting.mapper.primary;
import com.cmeeting.pojo.MeetTemplateEnable; import com.cmeeting.pojo.MeetTemplateEnable;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
......
package com.cmeeting.mapper; package com.cmeeting.mapper.primary;
import com.cmeeting.pojo.MeetType; import com.cmeeting.pojo.MeetType;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
......
package com.cmeeting.mapper; package com.cmeeting.mapper.primary;
import com.cmeeting.pojo.ModulePermission; import com.cmeeting.pojo.ModulePermission;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
......
package com.cmeeting.mapper; package com.cmeeting.mapper.primary;
import com.cmeeting.pojo.OperationLog; import com.cmeeting.pojo.OperationLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
......
...@@ -3,7 +3,7 @@ package com.cmeeting.service.impl; ...@@ -3,7 +3,7 @@ package com.cmeeting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cmeeting.pojo.MeetEmailTemplate; import com.cmeeting.pojo.MeetEmailTemplate;
import com.cmeeting.service.MeetEmailTemplateService; import com.cmeeting.service.MeetEmailTemplateService;
import com.cmeeting.mapper.MeetEmailTemplateMapper; import com.cmeeting.mapper.primary.MeetEmailTemplateMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
/** /**
......
...@@ -3,7 +3,7 @@ package com.cmeeting.service.impl; ...@@ -3,7 +3,7 @@ package com.cmeeting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cmeeting.pojo.MeetTemplateEnable; import com.cmeeting.pojo.MeetTemplateEnable;
import com.cmeeting.service.MeetTemplateEnableService; import com.cmeeting.service.MeetTemplateEnableService;
import com.cmeeting.mapper.MeetTemplateEnableMapper; import com.cmeeting.mapper.primary.MeetTemplateEnableMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
/** /**
......
...@@ -3,7 +3,7 @@ package com.cmeeting.service.impl; ...@@ -3,7 +3,7 @@ package com.cmeeting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cmeeting.pojo.MeetType; import com.cmeeting.pojo.MeetType;
import com.cmeeting.service.MeetTypeService; import com.cmeeting.service.MeetTypeService;
import com.cmeeting.mapper.MeetTypeMapper; import com.cmeeting.mapper.primary.MeetTypeMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
/** /**
......
...@@ -3,7 +3,7 @@ package com.cmeeting.service.impl; ...@@ -3,7 +3,7 @@ package com.cmeeting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cmeeting.pojo.ModulePermission; import com.cmeeting.pojo.ModulePermission;
import com.cmeeting.service.ModulePermissionService; import com.cmeeting.service.ModulePermissionService;
import com.cmeeting.mapper.ModulePermissionMapper; import com.cmeeting.mapper.primary.ModulePermissionMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
/** /**
......
...@@ -3,7 +3,7 @@ package com.cmeeting.service.impl; ...@@ -3,7 +3,7 @@ package com.cmeeting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cmeeting.pojo.OperationLog; import com.cmeeting.pojo.OperationLog;
import com.cmeeting.service.OperationLogService; import com.cmeeting.service.OperationLogService;
import com.cmeeting.mapper.OperationLogMapper; import com.cmeeting.mapper.primary.OperationLogMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
/** /**
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<!DOCTYPE mapper <!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cmeeting.mapper.MeetEmailTemplateMapper"> <mapper namespace="com.cmeeting.mapper.primary.MeetEmailTemplateMapper">
<resultMap id="BaseResultMap" type="com.cmeeting.pojo.MeetEmailTemplate"> <resultMap id="BaseResultMap" type="com.cmeeting.pojo.MeetEmailTemplate">
<id property="id" column="id" /> <id property="id" column="id" />
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<!DOCTYPE mapper <!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cmeeting.mapper.MeetTemplateEnableMapper"> <mapper namespace="com.cmeeting.mapper.primary.MeetTemplateEnableMapper">
<resultMap id="BaseResultMap" type="com.cmeeting.pojo.MeetTemplateEnable"> <resultMap id="BaseResultMap" type="com.cmeeting.pojo.MeetTemplateEnable">
<id property="id" column="id" /> <id property="id" column="id" />
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<!DOCTYPE mapper <!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cmeeting.mapper.MeetTypeMapper"> <mapper namespace="com.cmeeting.mapper.primary.MeetTypeMapper">
<resultMap id="BaseResultMap" type="com.cmeeting.pojo.MeetType"> <resultMap id="BaseResultMap" type="com.cmeeting.pojo.MeetType">
<id property="id" column="id" /> <id property="id" column="id" />
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<!DOCTYPE mapper <!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cmeeting.mapper.ModulePermissionMapper"> <mapper namespace="com.cmeeting.mapper.primary.ModulePermissionMapper">
<resultMap id="BaseResultMap" type="com.cmeeting.pojo.ModulePermission"> <resultMap id="BaseResultMap" type="com.cmeeting.pojo.ModulePermission">
<id property="id" column="id" /> <id property="id" column="id" />
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<!DOCTYPE mapper <!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cmeeting.mapper.OperationLogMapper"> <mapper namespace="com.cmeeting.mapper.primary.OperationLogMapper">
<resultMap id="BaseResultMap" type="com.cmeeting.pojo.OperationLog"> <resultMap id="BaseResultMap" type="com.cmeeting.pojo.OperationLog">
<id property="id" column="id" /> <id property="id" column="id" />
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论