public ResultDto Post([FromBody] CreateGroupDto inputDto) { bool exist = _freeSql.Select <LinGroup>().Any(r => r.Name == inputDto.Name); if (exist) { throw new LinCmsException("分组已存在,不可创建同名分组", ErrorCode.RepeatField); } LinGroup linGroup = _mapper.Map <LinGroup>(inputDto); List <PermissionDto> permissionDtos = ReflexHelper.GeAssemblyLinCmsAttributes(); _freeSql.Transaction(() => { long groupId = _freeSql.Insert(linGroup).ExecuteIdentity(); //批量插入 List <LinAuth> linAuths = new List <LinAuth>(); inputDto.Auths.ForEach(r => { PermissionDto pdDto = permissionDtos.FirstOrDefault(u => u.Permission == r); if (pdDto == null) { throw new LinCmsException($"不存在此权限:{r}", ErrorCode.NotFound); } linAuths.Add(new LinAuth(r, pdDto.Module, (int)groupId)); }); _freeSql.Insert <LinAuth>().AppendData(linAuths).ExecuteAffrows(); }); return(ResultDto.Success("新建分组成功")); }
public async Task <UnifyResponseDto> DispatchPermissions(DispatchPermissionsDto permissionDto) { List <PermissionDefinition> permissionDefinitions = ReflexHelper.GeAssemblyLinCmsAttributes(); await _permissionService.DispatchPermissions(permissionDto, permissionDefinitions); return(UnifyResponseDto.Success("添加权限成功")); }
public void ConvertToTree() { List <PermissionDefinition> linCmsAttributes = ReflexHelper.GeAssemblyLinCmsAttributes(); dynamic obj = ReflexHelper.AuthorizationConvertToTree(linCmsAttributes); string jsonSerializeObject = JsonConvert.SerializeObject(obj); }
public IActionResult GetAllAuths() { List <PermissionDto> linCmsAttributes = ReflexHelper.GeAssemblyLinCmsAttributes(); dynamic obj = ReflexHelper.AuthorizationConvertToTree(linCmsAttributes); return(Ok(obj)); }
public void ReflexHelperTest() { List <PermissionDefinition> attributes = ReflexHelper.GeAssemblyLinCmsAttributes(); foreach (PermissionDefinition attribute in attributes) { _testOutputHelper.WriteLine(attribute.ToString()); } }
public async Task StartAsync(CancellationToken cancellationToken = default) { try { using var scope = _serviceProvider.CreateScope(); IDataSeedContributor dataSeedContributor = scope.ServiceProvider.GetRequiredService <IDataSeedContributor>(); var permissions = ReflexHelper.GeAssemblyLinCmsAttributes(); await dataSeedContributor.SeedPermissionAsync(permissions); await dataSeedContributor.InitAdminPermission(); } catch (Exception ex) { _logger.LogError("初始化数据失败!!!", ex); }; }
public ResultDto DispatchAuths(AuthDto authDto) { List <PermissionDto> permissionDtos = ReflexHelper.GeAssemblyLinCmsAttributes(); List <LinAuth> linAuths = new List <LinAuth>(); foreach (string auth in authDto.Auths) { PermissionDto permission = permissionDtos.FirstOrDefault(r => r.Permission == auth); if (permission == null) { throw new LinCmsException($"异常权限:{auth}"); } linAuths.Add(new LinAuth(auth, permission.Module, authDto.GroupId)); } _freeSql.Insert <LinAuth>(linAuths).ExecuteAffrows(); return(ResultDto.Success("添加权限成功")); }