public async Task <ActionResult <Reserva> > Delete(int id)
        {
            var reserva = await _repositorio.BuscarPorID(id);

            if (reserva == null)
            {
                return(NotFound(new { mensagem = " não encontrada", Erro = true }));
            }
            await _repositorio.Excluir(reserva);

            return(reserva);
        }
예제 #2
0
        public async Task <ActionResult <Reserva> > Delete(int id)
        {
            var reserva = await _repositorio.BuscarPorID(id);

            if (reserva == null)
            {
                return(NotFound("Reserva não encontrada"));
            }

            try {
                await _repositorio.Excluir(reserva);
            } catch (System.Exception ex) {
                return(BadRequest(new {
                    mensagem = "Não foi possível excluir. Raw: " + ex
                }));
            }

            return(reserva);
        }
예제 #3
0
        /// <summary>
        ///     Rotina para excluir reservas expiradas e ofertas vencidas
        /// </summary>
        /// <returns></returns>
        public static async void RotinaReservaExistente()
        {
            using (CoorganicasContext _contexto = new CoorganicasContext()){
                OfertaRepository  _oferta  = new OfertaRepository();
                ReservaRepository _reserva = new ReservaRepository();

                var Reservas = await _contexto.Reserva.Include("Oferta").ToListAsync();

                var Ofertas = await _contexto.Oferta.ToListAsync();

                if (Ofertas != null)
                {
                    foreach (var reserva in Reservas)
                    {
                        if (reserva.DataEspera <= DateTime.Now.Date)
                        {
                            var qtd = reserva.Quantidade;

                            foreach (var oferta in Ofertas)
                            {
                                if (oferta.OfertaId == reserva.Oferta.OfertaId)
                                {
                                    oferta.Quantidade = oferta.Quantidade + qtd;
                                    await _oferta.Alterar(oferta);

                                    await _reserva.Excluir(reserva);

                                    if (oferta.Validade.Date <= DateTime.Now.Date)
                                    {
                                        await _oferta.Excluir(oferta);
                                    }
                                }
                            }
                        }
                    }

                    RotinaOfertaExpirada();
                }
            }
        }
        public async Task <ActionResult <Reserva> > Delete(int id)
        {
            var reserva = await _repositorio.BuscarPorID(id);

            if (reserva == null)
            {
                return(NotFound());
            }

            OfertaRepository _oferta = new OfertaRepository();
            var oferta = await _oferta.BuscarPorID(reserva.OfertaId.Value);

            if (oferta.Validade.Date > DateTime.Now.Date)
            {
                oferta.Quantidade = oferta.Quantidade + reserva.Quantidade;
                await _oferta.Alterar(oferta);
            }


            await _repositorio.Excluir(reserva);

            return(reserva);
        }