fix
This commit is contained in:
@@ -105,8 +105,7 @@ public class GlobalExceptionHandler {
|
|||||||
*/
|
*/
|
||||||
@ExceptionHandler(CustomException.class)
|
@ExceptionHandler(CustomException.class)
|
||||||
public R customException(CustomException e) {
|
public R customException(CustomException e) {
|
||||||
|
log.error(e.getMessage(), e);
|
||||||
return R.error(e.getMessage());
|
return R.error(e.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -33,7 +33,8 @@ public class MyMetaObjectHandler implements MetaObjectHandler {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void insertFill(MetaObject metaObject) {
|
public void insertFill(MetaObject metaObject) {
|
||||||
// this.setFieldValByName("createdTime", getDate(), metaObject);
|
|
||||||
|
this.setFieldValByName("createdTime", new Date(), metaObject);
|
||||||
this.setFieldValByName("deleted", false, metaObject);
|
this.setFieldValByName("deleted", false, metaObject);
|
||||||
this.setFieldValByName("version", 1L, metaObject);
|
this.setFieldValByName("version", 1L, metaObject);
|
||||||
Object createUser = this.getFieldValByName("createdBy", metaObject);
|
Object createUser = this.getFieldValByName("createdBy", metaObject);
|
||||||
@@ -46,7 +47,7 @@ public class MyMetaObjectHandler implements MetaObjectHandler {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateFill(MetaObject metaObject) {
|
public void updateFill(MetaObject metaObject) {
|
||||||
// this.setFieldValByName("updatedTime", getDate(), metaObject);
|
this.setFieldValByName("updatedTime", getDate(), metaObject);
|
||||||
Object createUser = this.getFieldValByName("updatedBy", metaObject);
|
Object createUser = this.getFieldValByName("updatedBy", metaObject);
|
||||||
if (createUser == null) {
|
if (createUser == null) {
|
||||||
this.setFieldValByName("createdBy", getOperatorId(), metaObject);
|
this.setFieldValByName("createdBy", getOperatorId(), metaObject);
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ public class MyTenantLineHandler implements TenantLineHandler {
|
|||||||
/**
|
/**
|
||||||
* 排除过滤的表
|
* 排除过滤的表
|
||||||
*/
|
*/
|
||||||
private static final String[] TABLE_FILTER = {"sys_login_log", "sys_role", "sys_user", "sys_menu", "sys_tenant_package", "sys_tenant", "sys_dict", "sys_dict_data", "sys_administrative_area_dict_info"};
|
private static final String[] TABLE_FILTER = {"sys_login_log", "sys_menu", "sys_tenant_package", "sys_tenant", "sys_dict", "sys_dict_data", "sys_administrative_area_dict_info"};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 排除过滤的表前缀
|
* 排除过滤的表前缀
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.starry.admin.common.security.filter;
|
package com.starry.admin.common.security.filter;
|
||||||
|
|
||||||
|
|
||||||
|
import cn.hutool.core.date.DateUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import cn.hutool.json.JSONUtil;
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.starry.admin.common.component.JwtToken;
|
import com.starry.admin.common.component.JwtToken;
|
||||||
@@ -34,6 +35,7 @@ import javax.servlet.http.HttpServletResponse;
|
|||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
@@ -192,11 +194,17 @@ public class JwtAuthenticationTokenFilter extends OncePerRequestFilter {
|
|||||||
if (StrUtil.isBlankIfStr(tenantId)) {
|
if (StrUtil.isBlankIfStr(tenantId)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (tenantId.equals("-1")) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
SysTenantEntity entity = sysTenantService.selectSysTenantByTenantId(tenantId);
|
SysTenantEntity entity = sysTenantService.selectSysTenantByTenantId(tenantId);
|
||||||
if (entity == null) {
|
if (entity == null) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
//判断租户是否过期
|
//判断租户是否过期
|
||||||
|
if (DateUtil.compare(entity.getTenantTime(), new Date()) < 0) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
//...
|
//...
|
||||||
//校验通过
|
//校验通过
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@@ -67,6 +67,8 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
|
|||||||
private SysRoleMenuMapper sysRoleMenuMapper;
|
private SysRoleMenuMapper sysRoleMenuMapper;
|
||||||
@Resource
|
@Resource
|
||||||
private RedisCache redisCache;
|
private RedisCache redisCache;
|
||||||
|
@Resource
|
||||||
|
private SysMenuMapper menuMapper;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -209,11 +211,55 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
|
|||||||
this.createDomainAndDns(sysTenantEntity.getTenantKey());
|
this.createDomainAndDns(sysTenantEntity.getTenantKey());
|
||||||
|
|
||||||
// 新增客服和组长
|
// 新增客服和组长
|
||||||
|
this.initRole(sysTenantEntity);
|
||||||
initOtherRule(sysTenantEntity, "waiter", "客服");
|
initOtherRule(sysTenantEntity, "waiter", "客服");
|
||||||
initOtherRule(sysTenantEntity, "leader", "组长");
|
initOtherRule(sysTenantEntity, "leader", "组长");
|
||||||
|
initOtherRule(sysTenantEntity, "operator", "管理员");
|
||||||
return R.ok("租户创建成功!");
|
return R.ok("租户创建成功!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void initRole(SysTenantEntity sysTenantEntity) {
|
||||||
|
|
||||||
|
SysRoleEntity waiter = new SysRoleEntity();
|
||||||
|
waiter.setRoleName(sysTenantEntity.getTenantName() + "客服");
|
||||||
|
waiter.setRoleKey("waiter");
|
||||||
|
waiter.setDataScope("1");
|
||||||
|
waiter.setMenuCheckStrictly(true);
|
||||||
|
waiter.setDeptCheckStrictly(true);
|
||||||
|
waiter.setTenantId(sysTenantEntity.getTenantId());
|
||||||
|
roleMapper.insert(waiter);
|
||||||
|
|
||||||
|
SysRoleEntity leader = new SysRoleEntity();
|
||||||
|
leader.setRoleName(sysTenantEntity.getTenantName() + "组长");
|
||||||
|
leader.setRoleKey("leader");
|
||||||
|
leader.setDataScope("3");
|
||||||
|
leader.setMenuCheckStrictly(true);
|
||||||
|
leader.setDeptCheckStrictly(true);
|
||||||
|
leader.setTenantId(sysTenantEntity.getTenantId());
|
||||||
|
roleMapper.insert(leader);
|
||||||
|
|
||||||
|
SysRoleEntity operator = new SysRoleEntity();
|
||||||
|
operator.setRoleName(sysTenantEntity.getTenantName() + "管理员");
|
||||||
|
operator.setRoleKey("operator");
|
||||||
|
operator.setDataScope("3");
|
||||||
|
operator.setMenuCheckStrictly(true);
|
||||||
|
operator.setDeptCheckStrictly(true);
|
||||||
|
operator.setTenantId(sysTenantEntity.getTenantId());
|
||||||
|
roleMapper.insert(operator);
|
||||||
|
|
||||||
|
List<SysMenuEntity> menuList = menuMapper.selectMenuList(new SysMenuEntity());
|
||||||
|
if (CollectionUtil.isNotEmpty(menuList)) {
|
||||||
|
List<SysRoleMenuEntity> roleMenuEntityList = menuList.stream().map(menu -> {
|
||||||
|
SysRoleMenuEntity rm = new SysRoleMenuEntity();
|
||||||
|
rm.setRoleId(operator.getRoleId());
|
||||||
|
rm.setMenuId(menu.getMenuId());
|
||||||
|
return rm;
|
||||||
|
}).collect(Collectors.toList());
|
||||||
|
roleMenuService.saveBatch(roleMenuEntityList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private Long createDept(SysTenantEntity sysTenantEntity) {
|
private Long createDept(SysTenantEntity sysTenantEntity) {
|
||||||
// 创建部门
|
// 创建部门
|
||||||
SysDeptEntity dept = new SysDeptEntity();
|
SysDeptEntity dept = new SysDeptEntity();
|
||||||
@@ -257,7 +303,7 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
|
|||||||
SysRoleEntity role = new SysRoleEntity();
|
SysRoleEntity role = new SysRoleEntity();
|
||||||
role.setRoleName(sysTenantEntity.getTenantName() + ruleName);
|
role.setRoleName(sysTenantEntity.getTenantName() + ruleName);
|
||||||
role.setRoleKey(roleKey);
|
role.setRoleKey(roleKey);
|
||||||
role.setDataScope("2");
|
role.setDataScope("3");
|
||||||
role.setMenuCheckStrictly(true);
|
role.setMenuCheckStrictly(true);
|
||||||
role.setDeptCheckStrictly(true);
|
role.setDeptCheckStrictly(true);
|
||||||
role.setDescription(ruleName);
|
role.setDescription(ruleName);
|
||||||
@@ -291,6 +337,7 @@ public class SysTenantServiceImpl extends ServiceImpl<SysTenantMapper, SysTenant
|
|||||||
user.setUserType(1);
|
user.setUserType(1);
|
||||||
user.setUserEmail(sysTenant.getEmail());
|
user.setUserEmail(sysTenant.getEmail());
|
||||||
user.setMobile(sysTenant.getPhone());
|
user.setMobile(sysTenant.getPhone());
|
||||||
|
user.setCreatedTime(new Date());
|
||||||
String password = SecurityUtils.encryptPassword(sysTenant.getUserPwd());
|
String password = SecurityUtils.encryptPassword(sysTenant.getUserPwd());
|
||||||
user.setPassWord(password);
|
user.setPassWord(password);
|
||||||
user.setTenantId(sysTenant.getTenantId());
|
user.setTenantId(sysTenant.getTenantId());
|
||||||
|
|||||||
@@ -34,9 +34,12 @@ public class SysUserEntity extends BaseEntity<SysUserEntity> {
|
|||||||
@TableId(value = "user_id", type = IdType.AUTO)
|
@TableId(value = "user_id", type = IdType.AUTO)
|
||||||
private String userId;
|
private String userId;
|
||||||
|
|
||||||
@ApiModelProperty(value = "用户类型;1:admin;2:会员")
|
@ApiModelProperty(value = "用户类型;1:admin;2:普通,废弃字段")
|
||||||
private Integer userType;
|
private Integer userType;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "是否为超管")
|
||||||
|
private Boolean superAdmin;
|
||||||
|
|
||||||
@ApiModelProperty(value = "用户名")
|
@ApiModelProperty(value = "用户名")
|
||||||
private String userCode;
|
private String userCode;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user