コード例 #1
0
 private void Salir()
 {
     RegistroReservas.GuardarXml("registro_reservas.xml", this.reservas);
     this.ClienteCore.RegistroClientes.GuardaXml();
     this.HabitacionCore.Registro.GuardaXml();
     Application.Exit();
 }
コード例 #2
0
        public MainWindow()
        {
            //Creacion ventana principal
            this.Build();
            this.reservas     = RegistroReservas.RecuperarXml("registro_reservas.xml");
            this.habitaciones = RegistroHabitaciones.RecuperaXml();
            this.clientes     = RegistroClientes.RecuperaXml();
            this.ActualizaListaReservas(0);


            //System.IO.File.Copy(sourceFile, destFile, true);
            // string path = Path.GetDirectoryName(Application.ExecutablePath) + "\\" + reserva.IdReserva + ".txt";
            // File.WriteAllText(@path, reserva.GenerarFactura());


            this.BusquedasView              = new BusquedasHotel.View.MainWindow();
            this.pnlBusquedasPpal           = this.BusquedasView.BuildPpal();
            this.pnlBusquedasDisponibilidad = this.BusquedasView.BuildPanelListaDisponibilidad();

            //this.pnlBusquedasPpal =  this.BusquedasView.devolverPanelPpal();
            //this.pnlBusquedasDisponibilidad = this.BusquedasView.devolverPanelDisponibilidad();

            //Integracion CLIENTES
            this.ClienteView = new Gestión_Hotel.UI.MainWindowViewClientes();
            this.pnlClientes = this.ClienteView.BuildGUI();
            this.ClienteCore = new Gestión_Hotel.UI.MainWindowCore(this.ClienteView);

            //Integracion HABITACIONES
            this.HabitacionView  = new Habitaciones.UI.MainWindowView();
            this.pnlHabitaciones = this.HabitacionView.BuildGUI();
            this.HabitacionCore  = new Habitaciones.UI.MainWindowCore(this.HabitacionView);

            //Operaciones CLIENTES
            this.OpConsultarClientes.Click += (sender, e) => this.mostrarClientes();
            this.OpInsertarCliente.Click   += (sender, e) => this.insertarCliente();

            //Operaciones HABITACIONES
            this.OpConsultarHabitaciones.Click += (sender, e) => this.mostrarHabitaciones();
            this.OpInsertarHabitacion.Click    += (sender, e) => this.insertarHabitacion();

            //Operaciones RESERVASS
            this.OpConsultarReservas.Click += (sender, e) => this.mostrarReservas();
            this.OpGraficos.Click          += (sender, e) => this.generarGrafico();
            this.OpAltaReserva.Click       += (sender, e) => this.AltaReserva();

            //Operaciones BUSQUEDAS

            this.OpReservasPendientes.Click += (sender, e) => this.reservasPendientes();
            this.OpDisponibilidad.Click     += (sender, e) => this.disponibilidad();
            this.OpOcupacion.Click          += (sender, e) => this.ocupacion();
            this.OpFiltroHabitacion.Click   += (sender, e) => this.filtrarPorHabitacion();
            this.OpFiltroPersona.Click      += (sender, e) => this.filtrarPorPersona();


            this.FormClosed += (sender, e) => this.OnQuit();
        }
コード例 #3
0
 public MainWindow()
 {
     //this.Build();
     this.BuildPpal();
     this.BuildDisponibilidad();
     //this.reservas=this.generarDatosAleatorios();
     this.reservas        = RegistroReservas.RecuperarXml();
     this.regHabitaciones = RegistroHabitaciones.RecuperaXml();
     this.clientes        = RegistroClientes.RecuperaXml();
     Console.WriteLine("Datos aleatorios");
     //this.PendientesHotel5Dias();
     this.habitacionesDisponibles = new List <Habitacion>();
     //this.reservasPorHabitacion = this.FiltrarPorHabitacion(300);
 }
コード例 #4
0
    /// <summary>
    /// Recupera las reservas desde un archivo XML.
    /// </summary>
    /// <returns>Una coleccion con las reservas
    /// <param>El nombre del archivo.</param>
    public static RegistroReservas RecuperarXml(string archivo)
    {
		var toret = new RegistroReservas();
		var doc = XDocument.Load(archivo);
              
        var reservasElement = doc.Root.Elements("reserva");

		foreach (XElement reservaElement in reservasElement)
        {

			XElement clienteElement = reservaElement.Element("cliente");
			Cliente cliente = new Cliente(
                                        (string)clienteElement.Element("nombre"),
                                        (string)clienteElement.Element("dni"),
                                        (int)clienteElement.Element("telefono"),
                                        (string)clienteElement.Element("email"),
                                        (string)clienteElement.Element("direccion")
                                        );
            

			XElement habitacionElement = reservaElement.Element("habitacion");
			Habitacion habitacion = new Habitacion((string)habitacionElement.Element("tipo"),
                                            (string)habitacionElement.Element("fechaReserva"),
                                            (int)habitacionElement.Attribute("id"), 
                                            (string)habitacionElement.Element("fechaRenovacion"),
                                            (string)habitacionElement.Element("comodidades"));
             
			var reserva = new Reserva(habitacion, cliente, (DateTime)reservaElement.Element("fechaEntrada"), 
			                          (DateTime) reservaElement.Element("fechaSalida"), 
			                          (bool)reservaElement.Element("garaje"), (double)reservaElement.Element("tarifa"));
            
            
            
            toret.Add(reserva);
			Console.WriteLine(reserva);


        }

		return toret;
    }
コード例 #5
0
    /// <summary>
    /// Guarda la lista de las reservas como XML.
    /// <param>El nombre del archivo.</param>
    /// </summary>
    public static void GuardarXml(string archivo, RegistroReservas reservas)
    {
        var doc = new XDocument();
        var root = new XElement("reservas");

        foreach (Reserva reserva in reservas)
        {
            root.Add(
                new XElement("reserva",
                             new XAttribute("id", reserva.IdReserva),
                             new XElement("cliente",
                                                    new XElement("nombre", reserva.Cliente.Nombre),
                                                    new XElement("dni", reserva.Cliente.Dni),
                                                    new XElement("telefono", reserva.Cliente.Telefono),
                                                    new XElement("email", reserva.Cliente.Email),
                                                    new XElement("direccion", reserva.Cliente.Direccion)
                                         ),
                             new XElement("habitacion", 
                                          new XAttribute("id", reserva.Habitacion.Identificador),
				                          new XElement("tipo", reserva.Habitacion.Tipo),
                                          new XElement("fechaReserva", reserva.Habitacion.FechaReserva),
                                          new XElement("fechaRenovacion", reserva.Habitacion.FechaRenovacion),
                                          new XElement("comodidades", reserva.Habitacion.Comodidades)
                                          ),
				             new XElement("fechaEntrada", reserva.FechaEntrada.ToString("yyyy/MM/dd HH:mm:ss")),
				             new XElement("fechaSalida", reserva.FechaSalida.ToString("yyyy/MM/dd HH:mm:ss")),
                             new XElement("garaje", reserva.UsaGaraje),
				             new XElement("tarifa", reserva.TarifaDia, new XAttribute("iva", Reserva.Iva)),            
				             new XElement("total", reserva.calcularTotal())

                            )

				    );
        }

        doc.Add(root);
        doc.Save(archivo);

    }
コード例 #6
0
        public void comprobarHabitaciones()
        {
            List <Habitacion> habOcupadas = new List <Habitacion>();

            this.reservas = RegistroReservas.RecuperarXml("registro_reservas.xml");

            var fechaEntrada = this.FechaEntrada;
            var fechaSalida  = this.FechaSalida;

            foreach (Reserva r in reservas)
            {
                int fEntradaDiferenciaEntrada = DateTime.Compare(fechaEntrada, r.FechaEntrada);
                int fSalidaDiferenciaEntrada  = DateTime.Compare(fechaSalida, r.FechaEntrada);

                int fEntradaDiferenciaSalida = DateTime.Compare(fechaEntrada, r.FechaSalida);
                int fSalidaDiferenciaSalida  = DateTime.Compare(fechaSalida, r.FechaSalida);

                Console.WriteLine("Diferencia " + fEntradaDiferenciaEntrada + " " + fSalidaDiferenciaEntrada);
                if (fEntradaDiferenciaEntrada < 0 && fSalidaDiferenciaEntrada < 0 || fEntradaDiferenciaSalida > 0 && fSalidaDiferenciaSalida > 0)
                {
                    Console.WriteLine("Habitacion " + r.Habitacion.Identificador + " disponible");
                }
                else
                {
                    Console.WriteLine("Habitacion " + r.Habitacion.ToString() + " no disponible");
                    if (this.reservaModificar != null && this.reservaModificar.Habitacion.Identificador == r.Habitacion.Identificador)
                    {
                    }
                    else
                    {
                        habOcupadas.Add(r.Habitacion);
                    }
                }
            }


            habitacionesDisponibles(habOcupadas);
        }
コード例 #7
0
 public void actualizarReservas()
 {
     RegistroReservas.GuardarXml("registro_reservas.xml", this.reservas);
     this.reservas = RegistroReservas.RecuperarXml("registro_reservas.xml");
     this.ActualizaListaReservas(0);
 }