public void CrearReservaMenu_TooLate()
 {
     // Arrange
     using (context)
     {
         var  controller = new ReservaServiciosController(context);
         Menu menu       = new Menu
         {
             idServicio = 1,
             horaInicio = new DateTime(2001, 12, 13, 13, 00, 00),
             horaFin    = new DateTime(2001, 12, 13, 16, 00, 00)
         };
         Habitacion habitacion = new Habitacion {
             numero = 101
         };
         LineaFactura linea = new LineaFactura {
             idLineaFactura = 1
         };
         DateTime hora = new DateTime(2016, 10, 20, 16, 00, 01);
         // Act
         ReservaServicio result = controller.CrearReservaMenu(menu, habitacion, linea, hora);
         //Assert
         Assert.Null(result);
     }
 }
Exemplo n.º 2
0
        public async Task <IActionResult> Edit(int id, [Bind("idReservaServicio,fechaFin,fechaInicio")] ReservaServicio reservaServicio)
        {
            if (id != reservaServicio.idReservaServicio)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(reservaServicio);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ReservaServicioExists(reservaServicio.idReservaServicio))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            return(View(reservaServicio));
        }
        private void btmAgregar_Click(object sender, EventArgs e)
        {
            try
            {
                if (!string.IsNullOrEmpty(this.Errores))
                {
                    throw new FormatException("Error en los campos: " + "\n" + this.Errores);
                }
                ReservaServicio.InsertarReserva(CrearReserva());
                MessageBox.Show("Se ha ingresado correctamente la reserva");

                BorrarCampos();
            }
            catch (CantHuespedesException cantEx)
            {
                MessageBox.Show(cantEx.Message);
            }
            catch (FechaIncorrectaException fechaEx)
            {
                MessageBox.Show(fechaEx.Message);
            }
            catch (FormatException fex)
            {
                MessageBox.Show(fex.Message);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Exemplo n.º 4
0
 private void ReporteReservasForm_Load(object sender, EventArgs e)
 {
     LlenarCmbCliente();
     txtNroClientes.Text = listaclientesconreserva().Count.ToString();
     txtNroReservas.Text = ReservaServicio.TraerReservas().Count.ToString();
     dataReserva.Hide();
 }
Exemplo n.º 5
0
        private void LlenarResumenHotel(Hotel hotel)
        {
            List <ReservaWrapper> listadoReservasHotel = new List <ReservaWrapper>();

            listadoReservasHotel                = ReservaServicio.TraerReservasPorHotel(hotel);
            txtboxFacturacionTotalHotel.Text    = FacturacionTotal(listadoReservasHotel).ToString();
            txtboxOcupacionPromedioHotel.Text   = (Math.Round((OcupacionPromedio(listadoReservasHotel)) * 100).ToString() + " %");
            txtboxFacturacionPromedioHotel.Text = Math.Round(FacturacionPromedio(double.Parse(txtboxFacturacionTotalHotel.Text), listadoReservasHotel)).ToString();
        }
Exemplo n.º 6
0
        private void LlenarResumenGerencial()
        {
            List <ReservaWrapper> listadoReservas = new List <ReservaWrapper>();

            listadoReservas = ReservaServicio.TraerReservaWrapper();

            txtboxFacturacionTotal.Text    = (FacturacionTotal(listadoReservas).ToString());
            txtboxOcupacionPromedio.Text   = (Math.Round((OcupacionPromedio(listadoReservas) * 100)).ToString() + " %");
            txtboxFacturacionPromedio.Text = Math.Round(FacturacionPromedio(double.Parse(txtboxFacturacionTotal.Text), listadoReservas)).ToString();
        }
Exemplo n.º 7
0
        public async Task <IActionResult> Create([Bind("idReservaServicio,fechaFin,fechaInicio")] ReservaServicio reservaServicio)
        {
            if (ModelState.IsValid)
            {
                _context.Add(reservaServicio);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(reservaServicio));
        }
Exemplo n.º 8
0
        private void ListarReservas()
        {
            Cliente cliente = (Cliente)cmbCliente.SelectedValue;

            if (!(cliente is null))
            {
                dataReserva.DataSource = null;
                dataReserva.DataSource = ReservaServicio.TraerReservasPorIdCliente(cliente.Id);
                dataReserva.Columns["Cliente"].Visible    = false;
                dataReserva.Columns["Reserva"].Visible    = false;
                dataReserva.Columns["CodReserva"].Visible = false;
            }
        }
Exemplo n.º 9
0
 private List <Cliente> listaclientesconreserva()
 {
     if (clientesConReserva.Count() == 0)
     {
         List <ReservaWrapper> reservas = ReservaServicio.TraerReservaWrapper();
         foreach (ReservaWrapper r in reservas)
         {
             if (!(r.Cliente is null))
             {
                 clientesConReserva.Add(r.Cliente);
             }
         }
     }
     return(clientesConReserva.Distinct().ToList());
 }
Exemplo n.º 10
0
        public void setServReserva(int servId, float precio, DateTime fechaIni, DateTime fechaFin, int numHabitacion)
        {
            ReservaServicio resserv = new ReservaServicio();
            var             serv    = _context.Servicio.SingleOrDefault(m => m.idServicio == servId);

            resserv.Servicio    = serv;
            resserv.fechaInicio = fechaIni;
            resserv.fechaFin    = fechaFin;

            LineaFacturasController lf = new LineaFacturasController(_context);

            lf.setLineaFactura(resserv, precio, fechaIni, fechaFin, numHabitacion);

            _context.ReservaServicio.Add(resserv);
        }
 public void CrearReservaMenu_LineaIsNull()
 {
     // Arrange
     using (context)
     {
         var        controller = new ReservaServiciosController(context);
         Menu       menu       = new Menu();
         Habitacion habitacion = new Habitacion();
         DateTime   hora       = new DateTime(2016, 10, 20);
         // Act
         ReservaServicio result = controller.CrearReservaMenu(menu, habitacion, null, hora);
         //Assert
         Assert.Null(result);
     }
 }
 public void CrearReservaMenu_HabitacionIsNull()
 {
     // Arrange
     using (context)
     {
         var          controller = new ReservaServiciosController(context);
         Menu         menu       = new Menu();
         LineaFactura linea      = new LineaFactura();
         DateTime     hora       = new DateTime(2016, 10, 20);
         // Act
         ReservaServicio result = controller.CrearReservaMenu(menu, null, linea, hora);
         //Assert
         Assert.Null(result);
     }
 }
Exemplo n.º 13
0
        public void setLineaFactura(ReservaServicio resserv, float precio, DateTime fechaIni, DateTime fechaFin, int numHabitacion)
        {
            int                idFact;
            LineaFactura       lfact = new LineaFactura();
            FacturasController fc    = new FacturasController(_context);

            idFact = fc.getNumeroFactura(numHabitacion, fechaIni, fechaFin);
            Factura factura = _context.Factura.SingleOrDefault(m => m.idFactura == idFact);

            lfact.precio          = precio;
            lfact.ReservaServicio = resserv;
            lfact.Factura         = factura;
            factura.LineasFactura.Add(lfact);
            _context.Factura.Update(factura);
            _context.Factura.SingleOrDefault(m => m.idFactura == idFact).LineasFactura.Add(lfact);
            _context.LineaFactura.Add(lfact);
        }
Exemplo n.º 14
0
        public IHttpActionResult Delete(int id)
        {
            var context         = new PW3_20172C_TP_TurismoEntities();
            var reservaServicio = new ReservaServicio(new Repositorio <Reserva>(context), new UnitOfWork(context), new Repositorio <Paquete>(context));
            var reserva         = reservaServicio.Get(id);

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

            if (reserva.IdUsuario != User.Identity.ToPw3User().Id)
            {
                return(BadRequest());
            }

            reservaServicio.Delete(id);

            return(Ok());
        }
        public async Task <IActionResult> Contratar([FromRoute] int r, [FromRoute] int s)
        {
            if (!ConexionOracle.Activa)
            {
                ConexionOracle.Open();
                if (!ConexionOracle.Activa)
                {
                    return(StatusCode(504, ConexionOracle.NoConResponse));
                }
            }
            ReservaServicio rs = new ReservaServicio
            {
                Id_reserva = r, Id_servicio = s
            };

            if (await cmd.Insert(rs, false))
            {
                return(Ok());
            }
            return(BadRequest());
        }
 public void CrearReservaMenu_InTime()
 {
     // Arrange
     using (context)
     {
         var  controller = new ReservaServiciosController(context);
         Menu menu       = new Menu
         {
             idServicio = 1,
             horaInicio = new DateTime(2001, 12, 13, 13, 00, 00),
             horaFin    = new DateTime(2001, 12, 13, 16, 00, 00)
         };
         Habitacion habitacion = new Habitacion {
             numero = 101
         };
         LineaFactura linea = new LineaFactura {
             idLineaFactura = 1
         };
         DateTime        hora     = new DateTime(2016, 10, 20, 13, 00, 01);
         ReservaServicio exResult = new ReservaServicio
         {
             Habitacion   = habitacion,
             fechaInicio  = new DateTime(2016, 10, 20, 13, 00, 00),
             fechaFin     = new DateTime(2016, 10, 20, 16, 00, 00),
             LineaFactura = linea,
             Servicio     = menu
         };
         // Act
         ReservaServicio result = controller.CrearReservaMenu(menu, habitacion, linea, hora);
         //Assert
         Assert.IsType <ReservaServicio>(result);
         Assert.Equal(exResult,
                      result,
                      Comparer.Get <ReservaServicio>((rs1, rs2) => rs1.Habitacion.numero == rs2.Habitacion.numero &&
                                                     rs1.LineaFactura.idLineaFactura == rs2.LineaFactura.idLineaFactura &&
                                                     rs1.Servicio.idServicio == rs2.Servicio.idServicio &&
                                                     rs1.fechaInicio.Equals(rs2.fechaInicio) &&
                                                     rs1.fechaFin.Equals(rs2.fechaFin)));
     }
 }
Exemplo n.º 17
0
        public ReservaServicio CrearReservaMenu(Menu menu, Habitacion habitacion, LineaFactura linea, DateTime hora)
        {
            if (menu == null || linea == null || habitacion == null)
            {
                return(null);
            }
            ReservaServicio rs = new ReservaServicio();

            rs.Servicio     = menu;
            rs.Habitacion   = habitacion;
            rs.LineaFactura = linea;

            rs.fechaInicio = new DateTime(hora.Year, hora.Month, hora.Day, menu.horaInicio.Hour, menu.horaInicio.Minute, menu.horaInicio.Second);
            rs.fechaFin    = new DateTime(hora.Year, hora.Month, hora.Day, menu.horaFin.Hour, menu.horaFin.Minute, menu.horaFin.Second);

            if (menu.horaFin.TimeOfDay.CompareTo(hora.TimeOfDay) < 0 || menu.horaInicio.TimeOfDay.CompareTo(hora.TimeOfDay) > 0)
            {
                return(null);
            }

            return(rs);
        }
        public async Task SeleccionComensales_Success()
        {
            //Arrange
            using (context)
            {
                var controller = new MenusController(context);

                Menu menu = new Menu
                {
                    idServicio = 1,
                    nombre     = "TestPC",
                    horaInicio = new DateTime(2001, 12, 13, 13, 00, 00),
                    horaFin    = new DateTime(2001, 12, 13, 16, 00, 00),
                    precio     = 10F
                };

                int     nComensales = 1;
                Factura factura     = new Factura {
                    idFactura = 1
                };
                Reserva reserva = new Reserva {
                    idReserva = 1, Factura = factura
                };
                factura.Reserva = reserva;
                int nHabitacion = 101;

                ReservaMenuViewModel rmvm = new ReservaMenuViewModel
                {
                    idServicio  = menu.idServicio,
                    nHabitacion = nHabitacion
                };

                ResultMenuViewModel remvm = new ResultMenuViewModel
                {
                    menu   = menu,
                    result = "Success"
                };

                LineaFactura exLF = new LineaFactura {
                    idLineaFactura = 1, Factura = factura, precio = menu.precio
                };
                ReservaServicio exRS = new ReservaServicio
                {
                    idReservaServicio = 1,
                    Habitacion        = new Habitacion {
                        numero = 101
                    },
                    fechaInicio  = new DateTime(2016, 10, 20, 13, 00, 00),
                    fechaFin     = new DateTime(2016, 10, 20, 16, 00, 00),
                    LineaFactura = exLF,
                    Servicio     = menu
                };
                exLF.ReservaServicio = exRS;
                IEnumerable <LineaFactura> exLFModel = new List <LineaFactura> {
                    exLF
                };
                IEnumerable <ReservaServicio> exRSModel = new List <ReservaServicio> {
                    exRS
                };

                SystemTime.Now = () => new DateTime(2016, 10, 20, 14, 00, 00);

                // Act
                var result = await controller.SeleccionComensales(nComensales, rmvm.nHabitacion, rmvm.idServicio, "");

                //Assert
                var viewResult = Assert.IsType <RedirectToActionResult>(result);
                Assert.Equal("ContratarMenu", viewResult.ActionName);
                ResultMenuViewModel vmResult = new ResultMenuViewModel();
                List <string>       keys     = new List <string>();
                string aux;
                int    i = 0;
                foreach (var key in viewResult.RouteValues.Keys)
                {
                    aux = Assert.IsType <string>(key);
                    Assert.Equal(aux, "key", Comparer.Get <string>((s1, s2) => s1 == "result" || s1 == "menu"));
                    keys.Add(aux);
                    i++;
                }
                Assert.Equal(i, 2);

                i = 0;
                foreach (var c in viewResult.RouteValues.Values)
                {
                    aux = keys[i];
                    if (aux == "result")
                    {
                        i++;
                        vmResult.result = Assert.IsType <string>(c);
                    }
                    else if (aux == "menu")
                    {
                        i++;
                        vmResult.menu = Assert.IsType <Menu>(c);
                    }
                    else
                    {
                        i++;
                    }
                }
                Assert.Equal(remvm, vmResult, Comparer.Get <ResultMenuViewModel>((rm1, rm2) => rm1.result == rm2.result && rm1.menu.idServicio == rm2.menu.idServicio));

                IEnumerable <ReservaServicio> rsModel = context.ReservaServicio.ToList <ReservaServicio>();
                IEnumerable <LineaFactura>    lfModel = context.LineaFactura.ToList <LineaFactura>();
                Assert.Equal(exRSModel,
                             rsModel,
                             Comparer.Get <ReservaServicio>((rs1, rs2) => rs1.idReservaServicio == rs2.idReservaServicio &&
                                                            rs1.Habitacion.numero == rs2.Habitacion.numero &&
                                                            rs1.LineaFactura.idLineaFactura == rs2.LineaFactura.idLineaFactura &&
                                                            rs1.Servicio.idServicio == rs2.Servicio.idServicio &&
                                                            rs1.fechaInicio.Equals(rs2.fechaInicio) &&
                                                            rs1.fechaFin.Equals(rs2.fechaFin)));
                Assert.Equal(exLFModel,
                             lfModel,
                             Comparer.Get <LineaFactura>((lf1, lf2) => lf1.idLineaFactura == lf2.idLineaFactura &&
                                                         lf1.precio == lf2.precio &&
                                                         lf1.Factura.idFactura == lf2.Factura.idFactura &&
                                                         lf1.ReservaServicio.idReservaServicio == lf2.ReservaServicio.idReservaServicio
                                                         ));
            }
        }
Exemplo n.º 19
0
        public async Task CrearLineaMenu_Success()
        {
            // Arrange
            using (context)
            {
                var  controller = new LineaFacturasController(context);
                Menu menu       = new Menu
                {
                    idServicio = 1,
                    horaInicio = new DateTime(2001, 12, 13, 13, 00, 00),
                    horaFin    = new DateTime(2001, 12, 13, 16, 00, 00),
                    precio     = 10F
                };
                int     cantidad = 1;
                Factura factura  = new Factura {
                    idFactura = 1
                };
                Habitacion habitacion = new Habitacion {
                    numero = 101
                };
                bool         exResult = true;
                LineaFactura exLF     = new LineaFactura {
                    idLineaFactura = 1, Factura = factura, precio = menu.precio
                };
                ReservaServicio exRS = new ReservaServicio
                {
                    idReservaServicio = 1,
                    Habitacion        = habitacion,
                    fechaInicio       = new DateTime(2016, 10, 20, 13, 00, 00),
                    fechaFin          = new DateTime(2016, 10, 20, 16, 00, 00),
                    LineaFactura      = exLF,
                    Servicio          = menu
                };
                exLF.ReservaServicio = exRS;
                IEnumerable <LineaFactura> exLFModel = new List <LineaFactura> {
                    exLF
                };
                IEnumerable <ReservaServicio> exRSModel = new List <ReservaServicio> {
                    exRS
                };

                SystemTime.Now = () => new DateTime(2016, 10, 20, 14, 00, 00);
                // Act
                bool result = await controller.CrearLineaMenu(menu, cantidad, factura, habitacion);

                //Assert
                Assert.IsType <bool>(result);
                Assert.Equal(exResult, result);

                IEnumerable <ReservaServicio> rsModel = context.ReservaServicio.ToList <ReservaServicio>();
                IEnumerable <LineaFactura>    lfModel = context.LineaFactura.ToList <LineaFactura>();
                Assert.Equal(exRSModel,
                             rsModel,
                             Comparer.Get <ReservaServicio>((rs1, rs2) => rs1.idReservaServicio == rs2.idReservaServicio &&
                                                            rs1.Habitacion.numero == rs2.Habitacion.numero &&
                                                            rs1.LineaFactura.idLineaFactura == rs2.LineaFactura.idLineaFactura &&
                                                            rs1.Servicio.idServicio == rs2.Servicio.idServicio &&
                                                            rs1.fechaInicio.Equals(rs2.fechaInicio) &&
                                                            rs1.fechaFin.Equals(rs2.fechaFin)));
                Assert.Equal(exLFModel,
                             lfModel,
                             Comparer.Get <LineaFactura>((lf1, lf2) => lf1.idLineaFactura == lf2.idLineaFactura &&
                                                         lf1.precio == lf2.precio &&
                                                         lf1.Factura.idFactura == lf2.Factura.idFactura &&
                                                         lf1.ReservaServicio.idReservaServicio == lf2.ReservaServicio.idReservaServicio
                                                         ));
            }
        }
Exemplo n.º 20
0
 private void btnListarReserva_Click(object sender, EventArgs e)
 {
     dataReserva.DataSource = ReservaServicio.TraerReservaWrapper();
     dataReserva.Columns["Reserva"].Visible = false;
     dataReserva.Show();
 }