public void Cargo_InfraData_ObterPorId_Deve_Buscar_Cargo_Com_Id_1() { _cargo.Id = 1; var resultado = _cargoRepositorio.ObterPorId(_cargo.Id); resultado.Should().NotBeNull(); resultado.Id.Should().Be(_cargo.Id); }
public void Armazenar(CargoDto dto) { Cargo cargo; if (dto.Id == 0) { cargo = CargoBuilder.Novo().ComDescricao(dto.Descricao).Build(); } else { cargo = _cargoRepositorio.ObterPorId(dto.Id); if (cargo == null) { _notificationContext.AddNotification(TipoDeNotificacao.ErroDeServico, "Cargo não encontrado"); return; } List <Cargo> cargos = _cargoRepositorio.ObterPorDescricao(dto.Descricao); if (cargos.Count > 0 && cargos.Any(x => x.Id != cargo.Id)) { _notificationContext.AddNotification(TipoDeNotificacao.ErroDeServico, "Descrição utilizada"); return; } cargo.Descricao = dto.Descricao; _cargoRepositorio.Put(cargo); } if (!cargo.Validar()) { _notificationContext.AddNotification(TipoDeNotificacao.ErroDeServico, "Cargo inválido"); return; } if (dto.Id == 0) { List <Cargo> cargos = _cargoRepositorio.ObterPorDescricao(dto.Descricao); if (cargos.Count > 0) { _notificationContext.AddNotification(TipoDeNotificacao.ErroDeServico, "Descrição utilizada"); return; } _cargoRepositorio.Post(cargo); } }
public bool Excluir(int id) { var cargo = _cargoRepositorio.ObterPorId(id); if (cargo == null) { _notificationContext.AddNotification(TipoDeNotificacao.ErroDeServico, "Cargo não encontrado"); return(false); } if (cargo.Funcionarios.Count > 0) { _notificationContext.AddNotification(TipoDeNotificacao.ErroDeServico, "Existem funcionários associados ao cargo"); return(false); } _cargoRepositorio.Delete(cargo); return(true); }
public Cargo ObterPorId(int id) { return(_cargoRepositorio.ObterPorId(id)); }