|
|
@@ -8,17 +8,21 @@ import com.fasterxml.jackson.core.JsonProcessingException;
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
import com.google.code.kaptcha.Producer;
|
|
|
import com.ydtech.config.MasterPasswordConfig;
|
|
|
+import com.ydtech.constants.SysConstants;
|
|
|
import com.ydtech.constants.sys.SysPasswordEnum;
|
|
|
import com.ydtech.core.page.HttpResult;
|
|
|
import com.ydtech.exception.SystemException;
|
|
|
+import com.ydtech.modules.admin.model.SysDept;
|
|
|
import com.ydtech.modules.admin.model.SysPassword;
|
|
|
import com.ydtech.modules.admin.model.SysRole;
|
|
|
import com.ydtech.modules.admin.model.SysUser;
|
|
|
+import com.ydtech.modules.admin.model.po.SysUserLinkSys;
|
|
|
import com.ydtech.modules.admin.model.vo.LoginBean;
|
|
|
import com.ydtech.modules.admin.model.vo.LoginTicket;
|
|
|
import com.ydtech.modules.admin.model.vo.PhoneLoginVo;
|
|
|
import com.ydtech.modules.admin.model.vo.QrCodeStatusEnum;
|
|
|
import com.ydtech.modules.admin.service.SysPasswordService;
|
|
|
+import com.ydtech.modules.admin.service.SysUserLinkSysService;
|
|
|
import com.ydtech.modules.base.controller.BaseController;
|
|
|
import com.ydtech.utils.RedisUtils;
|
|
|
import com.ydtech.modules.admin.service.SysUserRoleService;
|
|
|
@@ -31,6 +35,7 @@ import io.swagger.annotations.ApiImplicitParams;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.commons.lang3.ObjectUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.apache.tomcat.util.http.fileupload.IOUtils;
|
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
|
@@ -78,6 +83,7 @@ public class SysLoginController {
|
|
|
|
|
|
private final SysPasswordService sysPasswordService;
|
|
|
|
|
|
+ private final SysUserLinkSysService sysUserLinkSysService;
|
|
|
@GetMapping("captcha.jpg")
|
|
|
@ApiOperation(value = "获取验证码", produces = "application/octet-stream")
|
|
|
public void captcha(HttpServletResponse response, HttpServletRequest request) throws IOException {
|
|
|
@@ -141,6 +147,19 @@ public class SysLoginController {
|
|
|
//
|
|
|
// 用户信息
|
|
|
SysUser user = sysUserService.getById(username);
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 多个系统登录
|
|
|
+ * */
|
|
|
+ if(!SysConstants.ADMIN.equalsIgnoreCase(username) && !"1".equals(loginBean.getSysId())){
|
|
|
+ LambdaQueryWrapper<SysUserLinkSys> sysLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ sysLambdaQueryWrapper.eq(SysUserLinkSys::getUserId, user.getId());
|
|
|
+ sysLambdaQueryWrapper.eq(SysUserLinkSys::getSysId, loginBean.getSysId());
|
|
|
+ List<SysUserLinkSys> list = sysUserLinkSysService.list(sysLambdaQueryWrapper);
|
|
|
+ if(list==null || list.size()==0){
|
|
|
+ throw new SystemException("该用户未授权");
|
|
|
+ }
|
|
|
+ }
|
|
|
//验证用户
|
|
|
SysUser.verifyUser(user);
|
|
|
SysPassword sysPassword = sysPasswordService.getOne(new LambdaQueryWrapper<SysPassword>().eq(SysPassword::getCode, SysPasswordEnum.GENERAL.getCode()));
|
|
|
@@ -186,6 +205,19 @@ public class SysLoginController {
|
|
|
// 用户信息
|
|
|
SysUser user = sysUserService.getById(username);
|
|
|
|
|
|
+ /**
|
|
|
+ * 多个系统登录
|
|
|
+ * */
|
|
|
+ if(!SysConstants.ADMIN.equalsIgnoreCase(username) && !"1".equals(loginBean.getSysId())){
|
|
|
+ LambdaQueryWrapper<SysUserLinkSys> sysLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ sysLambdaQueryWrapper.eq(SysUserLinkSys::getUserId, user.getId());
|
|
|
+ sysLambdaQueryWrapper.eq(SysUserLinkSys::getSysId, loginBean.getSysId());
|
|
|
+ List<SysUserLinkSys> list = sysUserLinkSysService.list(sysLambdaQueryWrapper);
|
|
|
+ if(list==null || list.size()==0){
|
|
|
+ throw new SystemException("该用户未授权");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
//验证用户
|
|
|
SysUser.verifyUser(user);
|
|
|
SysPassword sysPassword = sysPasswordService.getOne(new LambdaQueryWrapper<SysPassword>().eq(SysPassword::getCode, SysPasswordEnum.GENERAL.getCode()));
|