public override void Inserir(Sala entity) { var salaComNomeIgual = new SalaNaoPodeTerOMesmoNomeDeOutraSalaSpecification(unitOfWork.SalaRepository); if (salaComNomeIgual.IsSatisfiedBy(entity)) { base.Inserir(entity); } else { throw new SalaNaoPodeTerOMesmoNomeDeOutraSalaException(entity.Nome); } }
public override void Atualizar(Sala entity) { var registro = unitOfWork.SalaRepository.FindById(entity.IdSala); if (registro != null) { var salaComNomeIgual = new SalaNaoPodeTerOMesmoNomeDeOutraSalaSpecification(unitOfWork.SalaRepository); if (salaComNomeIgual.IsSatisfiedBy(entity)) { registro.Nome = entity.Nome; registro.Observacao = entity.Observacao; registro.PossuiProjetor = entity.PossuiProjetor; registro.PossuiQuadro = entity.PossuiQuadro; registro.PossuiVideoConfer = entity.PossuiVideoConfer; registro.Predio = entity.Predio; registro.QtdCadeiras = entity.QtdCadeiras; registro.Ramal = entity.Ramal; registro.RamalResponsavel = entity.RamalResponsavel; registro.UsuarioResponsavel = entity.UsuarioResponsavel; registro.IdCidade = entity.IdCidade; registro.IdEmpresa = entity.IdEmpresa; registro.IdEstado = entity.IdEstado; base.Atualizar(registro); } else { throw new SalaNaoPodeTerOMesmoNomeDeOutraSalaException(entity.Nome); } } else { throw new Exception("Sala não encontrada."); } }