Ejemplo n.º 1
0
        //ia precisar fazer um middleware pra exception -- refatorar depois
        public void Handle(AirplaneDeleteCommand message)
        {
            if (!AirplaneExists(message.Id, message.MessageType))
            {
                return;
            }

            var passagers = _passagerRepository.GetAllPassagersAirplanes(message.Id);

            if (passagers.ToList().Count > 0)
            {
                _bus.RaiseEvent(new DomainNotification("Erro", "The Airplane has Passagers"));
                return;
            }
            ;


            _airplaneRepository.Remove(message.Id);


            if (Commit())
            {
                // _bus.RaiseEvent(new AirplaneDeleteEvent(message.Id));
            }
        }
Ejemplo n.º 2
0
        public void Remover(Guid airplaneId)
        {
            if (!ChecarAirPlaneExistente(airplaneId, "2"))
            {
                return;
            }

            _airplaneRepo.Remove(airplaneId);
            Commit();
        }
Ejemplo n.º 3
0
        public void Handle(RemoveAirplaneCommand message)
        {
            var airplane = _airplaneRepository.Get(message.Id);

            if (airplane == null)
            {
                _bus.RaiseEvent(new DomainNotification(message.MessageType, "Aeronave não encontrada"));
                return;
            }

            _airplaneRepository.Remove(airplane.Id);

            Commit();
        }
Ejemplo n.º 4
0
        public async Task <ISingleResult <Airplane> > Execute(int id)
        {
            try
            {
                var validacao = await _airplaneValidarExcluir.Execute(id);

                if (!validacao.Sucesso)
                {
                    return(validacao);
                }

                _repository.Remove(id);

                var sucesso = await Commit();
            }
            catch (Exception)
            {
                return(new SingleResult <Airplane>(MensagensNegocio.MSG07));
            }

            return(new ExcluirResult <Airplane>());
        }