|
@@ -3,6 +3,7 @@ package com.zhongzheng.framework.web.service;
|
|
import cn.hutool.core.lang.Validator;
|
|
import cn.hutool.core.lang.Validator;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
|
|
import com.zhongzheng.common.constant.Constants;
|
|
import com.zhongzheng.common.constant.Constants;
|
|
import com.zhongzheng.common.core.domain.entity.SysRole;
|
|
import com.zhongzheng.common.core.domain.entity.SysRole;
|
|
@@ -40,6 +41,7 @@ import javax.annotation.Resource;
|
|
import java.io.InputStream;
|
|
import java.io.InputStream;
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 登录校验方法
|
|
* 登录校验方法
|
|
@@ -143,7 +145,22 @@ public class SysLoginService
|
|
}
|
|
}
|
|
AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success")));
|
|
AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success")));
|
|
LoginUser loginUser = (LoginUser) authentication.getPrincipal();
|
|
LoginUser loginUser = (LoginUser) authentication.getPrincipal();
|
|
|
|
+ loginUser.setPhoneConcealSign(0);
|
|
SysUser user = iSysUserService.updateLoginTimeIp(loginUser.getUser().getUserId());
|
|
SysUser user = iSysUserService.updateLoginTimeIp(loginUser.getUser().getUserId());
|
|
|
|
+ //查看用户权限是否可以查看手机号码
|
|
|
|
+ if (user.getUserName().equals("admin")){
|
|
|
|
+ loginUser.setPhoneConcealSign(1);
|
|
|
|
+ }else {
|
|
|
|
+ List<SysUserRole> list = iSysUserRoleService.list(new LambdaQueryWrapper<SysUserRole>()
|
|
|
|
+ .eq(SysUserRole::getUserId, user.getUserId()).eq(SysUserRole::getTenantId,user.getTenantId()));
|
|
|
|
+ if (CollectionUtils.isNotEmpty(list)){
|
|
|
|
+ List<SysRole> sysRoles = iSysRoleService.listByIds(list.stream().map(SysUserRole::getRoleId).collect(Collectors.toList()));
|
|
|
|
+ if (sysRoles.stream().anyMatch(x -> x.getPhoneConceal() == 1)){
|
|
|
|
+ loginUser.setPhoneConcealSign(1);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
String dualAuth = configService.selectConfigByKey("login.dual.auth");
|
|
String dualAuth = configService.selectConfigByKey("login.dual.auth");
|
|
if(Validator.isNotEmpty(dualAuth)&&dualAuth.equals("1")){
|
|
if(Validator.isNotEmpty(dualAuth)&&dualAuth.equals("1")){
|
|
if(Validator.isEmpty(tel)){
|
|
if(Validator.isEmpty(tel)){
|