Exemplo n.º 1
0
        public async Task <IActionResult> GenerarInforme([FromRoute] int mes, [FromRoute] int ano)
        {
            try
            {
                Informe informe = new Informe(mes, ano);
                var     deptos  = await cmd.GetAll <Departamento>();

                var servicios = await cmd.GetAll <Servicio>();

                var mantenciones = await cmd.GetAll <Mantencion>();

                var tman = await cmd.GetAll <TipoMantencion>();

                var reservas = await cmd.GetAll <Reserva>();

                var res_ser = await cmd.GetAll <ReservaServicio>();

                informe.CargarDeptos(deptos);
                informe.CargarServicios(servicios);
                informe.Procesar(reservas, res_ser, mantenciones, tman);
                return(Ok(informe));
            }
            catch (Exception e)
            {
                return(StatusCode(500, e));
            }
        }
Exemplo n.º 2
0
        public async Task <IActionResult> GenerarInformes()
        {
            try
            {
                List <Informe> informes = new List <Informe>();
                Informe        i;
                var            deptos = await cmd.GetAll <Departamento>();

                var servicios = await cmd.GetAll <Servicio>();

                var mantenciones = await cmd.GetAll <Mantencion>();

                var tman = await cmd.GetAll <TipoMantencion>();

                var reservas = await cmd.GetAll <Reserva>();

                var res_ser = await cmd.GetAll <ReservaServicio>();

                int mesInicial = 8;
                int anoInicial = 2020;
                int mesActual  = DateTime.Now.Month;
                int anoActual  = DateTime.Now.Year;
                do
                {
                    i = new Informe(mesInicial, anoInicial);
                    i.CargarDeptos(deptos);
                    i.CargarServicios(servicios);
                    i.Procesar(reservas, res_ser, mantenciones, tman);
                    informes.Add(i);
                    mesInicial++;
                    if (mesInicial > 12)
                    {
                        anoInicial++;
                        mesInicial = 1;
                    }
                } while (mesInicial < mesActual && anoInicial <= anoActual);

                return(Ok(informes));
            }
            catch (Exception e)
            {
                return(StatusCode(500, e));
            }
        }