Browse Source

👈 重构安全框架底层代码支持当前用户修改

master
wangxiang 3 years ago
parent
commit
64bc126d94
  1. 12
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/TenantController.java

12
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/TenantController.java

@ -10,8 +10,8 @@ import com.cloud.kicc.common.core.api.R; @@ -10,8 +10,8 @@ import com.cloud.kicc.common.core.api.R;
import com.cloud.kicc.common.core.constant.AppConstants;
import com.cloud.kicc.common.log.annotation.SysLog;
import com.cloud.kicc.common.security.util.SecurityUtils;
import com.cloud.kicc.system.api.entity.Tenant;
import com.cloud.kicc.system.api.entity.User;
import com.cloud.kicc.system.api.entity.*;
import com.cloud.kicc.system.service.RoleTenantService;
import com.cloud.kicc.system.service.TenantService;
import com.cloud.kicc.system.service.UserService;
import lombok.RequiredArgsConstructor;
@ -36,6 +36,7 @@ public class TenantController { @@ -36,6 +36,7 @@ public class TenantController {
private final TenantService tenantService;
private final UserService userService;
private final RoleTenantService roleTenantService;
private LambdaQueryWrapper<Tenant> getQueryWrapper(Tenant tenant) {
return new LambdaQueryWrapper<Tenant>()
@ -84,6 +85,13 @@ public class TenantController { @@ -84,6 +85,13 @@ public class TenantController {
@DeleteMapping("/remove/{ids:[\\w,]+}")
@PreAuthorize("@pms.hasPermission('tenant_del')")
public R remove(@PathVariable String[] ids) {
// todo: 防止核心多租户删除,暂时处理手段
if(ArrayUtil.contains(ids, "1523396238015426562")){
return R.error("不允许删除核心多租户数据!");
}
if (roleTenantService.count(new LambdaQueryWrapper<RoleTenant>().in(RoleTenant::getMultiTenantId, ids)) > 0) {
return R.error("多租户已分配,不允许删除");
}
tenantService.removeByIds(Arrays.asList(ids));
return R.ok();
}

Loading…
Cancel
Save