public async Task <DataBase.ViewModels.Permissoes> CreateAsync( [FromBody] DataBase.Models.Permissoes permissoes, CancellationToken ct ) { var result = await _permissoesServices.CreateAsync(permissoes, ct); var perfil = await _perfil_utilizadoresServices.GetByIdAsync(result.Id_Perfil_Utilizador, ct); var modulo = await _modulosServices.GetByIdAsync(result.Id_Modulo, ct); return(result.ToViewModel(modulo, perfil)); }
public async Task CreateTestAsync() { var permissao = await business.CreateAsync( new Permissoes() { Id = 1, Id_Modulo = 1, Id_Perfil_Utilizador = 1, Ler = true, Escrever = true, Eliminar = true, Criar = true }, CancellationToken.None ); Assert.AreEqual(permissao.Id_Perfil_Utilizador, 1); }
/// <summary> /// Serviço para a criação de Perfil Utilizador /// </summary> /// <param name="perfil_utilizador">Objeto Perfil Utilizador para a criação na base de dados</param> /// <param name="ct">Cancellation Token - chamada asincrona</param> /// <returns>View do Perfil Utilizador</returns> public async Task <Perfil_Utilizador> CreateAsync(Perfil_Utilizador perfil_utilizador, CancellationToken ct) { try { var perfil = await _perfil_utilizadorRepository.CreateAsync(perfil_utilizador, ct); var modulos = await _modulosServices.GetAllAsync(ct); foreach (var modulo in modulos) { await _permissoesServices.CreateAsync(new Permissoes() { Id_Modulo = modulo.Id, Id_Perfil_Utilizador = perfil.Id }, ct); } return(perfil); } catch (Exception e) { throw new Exception("Ocorreu um erro na criação do perfil de utilizador.", e); } }
public async Task <Modulos> CreateAsync(Modulos modulos, CancellationToken ct) { try { var modulo = await _modulosRepository.CreateAsync(modulos, ct); var perfis = await _perfil_utilizadorRepository.GetAllAsync(ct); foreach (var perfil in perfis) { await _permissoesServices.CreateAsync(new Permissoes() { Id_Modulo = modulo.Id, Id_Perfil_Utilizador = perfil.Id }, ct); } return(modulo); } catch (Exception e) { throw new Exception("Ocorreu um erro na criação do modulo.", e); } }