Пример #1
0
        private void AgregarHuesped(OrdenCompraCompleta nOCC, int CantHuesp, string TipoHab, int CapHab)
        {
            for (int i = 1; i < CantHuesp + 1; i++)
            {
                OrdenCompraDetalle nOCD = new OrdenCompraDetalle();

                TextBox item0 = (TextBox)form1.FindControl("txtRut" + TipoHab + i);
                if (item0.Text.Trim().Length > 0)
                {
                    nOCD.Persona.Rut = item0.Text;

                    TextBox item1 = (TextBox)form1.FindControl("txtNombre" + TipoHab + i);
                    nOCD.Persona.Nombre = item1.Text;

                    TextBox item2 = (TextBox)form1.FindControl("txtApellido" + TipoHab + i);
                    nOCD.Persona.Apellido = item2.Text;

                    //TextBox item3 = (TextBox)form1.FindControl("txtFecha" + TipoHab + i);
                    nOCD.Alojamiento.FechaIngreso = DateTime.Parse(txtFechaIngreso.Text);

                    //TextBox item4 = (TextBox)form1.FindControl("txtFecha" + TipoHab + i);
                    nOCD.Alojamiento.FechaEgreso = DateTime.Parse(txtFechaEgreso.Text);

                    nOCD.Alojamiento.RegistroDias = int.Parse(txtRegistroDias.Text);

                    nOCD.Alojamiento.Habitacion.Capacidad = CapHab;

                    TextBox item5 = (TextBox)form1.FindControl("txtAlojaObs" + TipoHab + i);
                    nOCD.Alojamiento.Observaciones = item5.Text;

                    //se debe incluir los dropdownlist de tipo de comida
                    DropDownList item6 = (DropDownList)form1.FindControl("ddlTipoServCom" + TipoHab + i);
                    nOCD.Comida.ServicioComida.Tipo = item6.SelectedValue;
                    //nOCD.Comida.ServicioComida.Tipo = "general";

                    //TextBox item7 = (TextBox)form1.FindControl("txtComidaObservaciones" + TipoHab + i);
                    //nOCD.Comida.Observaciones = item7.Text;

                    nOCD.Comida.Observaciones = "Sin Observaciones";

                    nOCD.Comida.FechaRecepcion = DateTime.Now;

                    nOCC.ListaDetalle.Add(nOCD);
                }
            }
        }
Пример #2
0
        private void LlenarGridOrdenCompra(OrdenCompraCompleta item)
        {
            var detalle = (from l in item.ListaDetalle
                           select new
            {
                RutPersona = l.Persona.Rut,
                FecIng = l.Alojamiento.FechaIngreso,
                FecEgr = l.Alojamiento.FechaEgreso,
                CantDias = l.Alojamiento.RegistroDias,
                CapacHab = l.Alojamiento.Habitacion.Capacidad,
                PrecioHab = l.Alojamiento.Habitacion.Precio,
                TipoComida = l.Comida.ServicioComida.Tipo,
                PrecioCom = l.Comida.ServicioComida.Precio,
                PrecioSubTotal = l.Alojamiento.RegistroDias * (l.Alojamiento.Habitacion.Precio + l.Comida.ServicioComida.Precio)
            }
                           ).ToList();

            ////////
            gwOrdenDetalle.DataSource = detalle;
            gwOrdenDetalle.DataBind();
            ////////
        }
Пример #3
0
        public ContenedorOrdenesCompraCompleta LlamarSPRescatar(string token)
        {
            ContenedorOrdenesCompraCompleta LOrdenesCompra = new ContenedorOrdenesCompraCompleta();

            if (ValidarFecExp(token))
            {
                try
                {
                    CapaDato.EntitiesBBDDHostel conex = new CapaDato.EntitiesBBDDHostel();

                    var collection = (from cab in conex.ORDEN_DE_COMPRA
                                      join det_aloj in conex.ALOJAMIENTO on cab.NUMERO equals det_aloj.NUMERO_OC
                                      join det_comi in conex.COMIDA on cab.NUMERO equals det_comi.NUMERO_OC
                                      join tip_serv in conex.SERVICIO_COMIDA on det_comi.TIPO_SERVICIO equals tip_serv.TIPO
                                      where det_comi.RUT_PERSONA == det_aloj.RUT_PERSONA
                                      orderby cab.NUMERO
                                      select new
                    {
                        RutCliente = cab.RUT_CLIENTE,
                        NumeroOC = cab.NUMERO,
                        FecRecepOC = cab.RECEPCION,
                        MontoOC = cab.MONTO,
                        EstadoOC = cab.ESTADO,
                        //
                        FecIngAloj = det_aloj.INGRESO,
                        FecEgrAloj = det_aloj.EGRESO,
                        CanDiasAloj = det_aloj.REGISTRO_DIAS,
                        EstadoAloj = det_aloj.CONFIRMADO,
                        RutPersona = det_aloj.RUT_PERSONA,
                        NomPersona = det_aloj.PERSONA.NOMBRE,
                        ApePersona = det_aloj.PERSONA.APELLIDO,
                        NroHab = det_aloj.CAMA.HABITACION.CODIGO,
                        CapaHab = det_aloj.CAMA.HABITACION.CAPACIDAD,
                        PrecioHab = det_aloj.CAMA.HABITACION.PRECIO,
                        //
                        FecRecepCom = det_comi.RECEPCION,
                        EstadoCom = det_comi.CONFIRMADA,
                        //CodPlatoCom = det_comi.CODIGO_PLATO,
                        TipoServ = det_comi.TIPO_SERVICIO,
                        PrecioCom = tip_serv.PRECIO
                    }
                                      ).ToList();

                    decimal NumeroOrdenAnterior = decimal.MinValue;
                    foreach (var item in collection)
                    {
                        //Verificar Corte de control por Numero de Orden
                        if (NumeroOrdenAnterior != item.NumeroOC)
                        {
                            //Se crea la OrdenCompleta
                            OrdenCompraCompleta n = new OrdenCompraCompleta();
                            //Se carga valores de la cabecera
                            n.Cabecera.RutCliente     = item.RutCliente;
                            n.Cabecera.Numero         = item.NumeroOC;
                            n.Cabecera.FechaRecepcion = item.FecRecepOC;
                            n.Cabecera.Monto          = item.MontoOC;
                            n.Cabecera.Estado         = item.EstadoOC;
                            //
                            //Se crea el detalle Orden
                            OrdenCompraDetalle m = new OrdenCompraDetalle();
                            m.Alojamiento.NumerOrdenCompra = item.NumeroOC;
                            m.Persona.Rut                      = item.RutPersona;
                            m.Persona.Nombre                   = item.NomPersona;
                            m.Persona.Apellido                 = item.ApePersona;
                            m.Alojamiento.FechaIngreso         = item.FecIngAloj;
                            m.Alojamiento.FechaEgreso          = (item.FecEgrAloj == null) ? DateTime.MinValue : (DateTime)item.FecEgrAloj;
                            m.Alojamiento.RegistroDias         = (item.CanDiasAloj == null) ? 0 : (int)item.CanDiasAloj;
                            m.Alojamiento.Habitacion.Codigo    = item.NroHab;
                            m.Alojamiento.Confirmado           = item.EstadoAloj;
                            m.Alojamiento.Habitacion.Capacidad = item.CapaHab;
                            m.Alojamiento.Habitacion.Precio    = item.PrecioHab;

                            //m.Alojamiento.
                            //
                            m.Comida.NumerOrdenCompra = item.NumeroOC;
                            m.Comida.FechaRecepcion   = item.FecRecepCom;
                            m.Comida.Confirmada       = item.EstadoCom;
                            //m.Comida.CodigoPlato             = item.CodPlatoCom;
                            m.Comida.ServicioComida.Tipo   = item.TipoServ;
                            m.Comida.ServicioComida.Precio = (item.PrecioCom == null) ? 0 : (int)item.PrecioCom;     //(int)item.PrecioCom;
                            //Se agrega el detalle a la cabecera

                            n.ListaDetalle.Add(m);
                            //Se agrega la orden completa a la orden
                            LOrdenesCompra.Lista.Add(n);

                            //Se realiza logica para armar corte de control
                            NumeroOrdenAnterior = item.NumeroOC;
                        }
                        else
                        {
                            //Se crea el detalle Orden
                            OrdenCompraDetalle m = new OrdenCompraDetalle();
                            m.Alojamiento.NumerOrdenCompra = item.NumeroOC;
                            m.Persona.Rut                      = item.RutPersona;
                            m.Persona.Nombre                   = item.NomPersona;
                            m.Persona.Apellido                 = item.ApePersona;
                            m.Alojamiento.FechaIngreso         = item.FecIngAloj;
                            m.Alojamiento.FechaEgreso          = (item.FecEgrAloj == null) ? DateTime.MinValue : (DateTime)item.FecEgrAloj;
                            m.Alojamiento.RegistroDias         = (item.CanDiasAloj == null) ? 0 : (int)item.CanDiasAloj;
                            m.Alojamiento.Habitacion.Codigo    = item.NroHab;
                            m.Alojamiento.Confirmado           = item.EstadoAloj;
                            m.Alojamiento.Habitacion.Capacidad = item.CapaHab;
                            m.Alojamiento.Habitacion.Precio    = item.PrecioHab;
                            //
                            m.Comida.NumerOrdenCompra = item.NumeroOC;
                            m.Comida.FechaRecepcion   = item.FecRecepCom;
                            m.Comida.Confirmada       = item.EstadoCom;
                            //m.Comida.CodigoPlato             = item.CodPlatoCom;
                            m.Comida.ServicioComida.Tipo   = item.TipoServ;
                            m.Comida.ServicioComida.Precio = (item.PrecioCom == null) ? 0 : (int)item.PrecioCom;     //(int)item.PrecioCom;
                            //Se agrega el detalle a la ultima orden de compra
                            LOrdenesCompra.Lista.Last().ListaDetalle.Add(m);
                        }
                    }
                    LOrdenesCompra.Retorno.Codigo = 0;
                    LOrdenesCompra.Retorno.Glosa  = "OK";
                }
                catch (Exception ex)
                {
                    LOrdenesCompra.Retorno.Codigo = 1011;
                    LOrdenesCompra.Retorno.Glosa  = "Err codret ORACLE";
                }
            }
            else
            {
                LOrdenesCompra.Retorno.Codigo = 100;
                LOrdenesCompra.Retorno.Glosa  = "Err expiro sesion o perfil invalido";
            }

            return(LOrdenesCompra);
        }
Пример #4
0
        protected void BtnSiguiente_Click(object sender, EventArgs e)
        {
            try
            {
                WSSoap.WSSHostelClient x = new WSSoap.WSSHostelClient();
                Sesion SesionUsuario     = (Sesion)Session["SesionUsuario"];

                OrdenCompraCompleta nOCC = new OrdenCompraCompleta();
                //Armar Encabezado de Orden de Reserva
                nOCC.Cabecera.RutCliente    = ddlEmpresas.SelectedValue;
                nOCC.Cabecera.Monto         = 0;//realizar calculo de las habitaciones seleccionadas.
                nOCC.Cabecera.Observaciones = "Reserva habitación";
                nOCC.Cabecera.Ubicacion     = "logo";
                nOCC.Cabecera.Estado        = "activa";

                //int CantidadHuespedes = int.Parse(Session[txtPersonasHabitacion.Text].ToString());
                try
                {
                    int CantHuspedes = int.Parse(individual.Text);
                    AgregarHuesped(nOCC, CantHuspedes, "Individual", 1);
                }
                catch (Exception)
                {
                    //No existe se continua siguiente validacion
                }

                try
                {
                    int CantHuspedes = int.Parse(doble.Text) * 2;
                    AgregarHuesped(nOCC, CantHuspedes, "Doble", 2);
                }
                catch (Exception)
                {
                    //No existe se continua siguiente validacion
                }

                try
                {
                    int CantHuspedes = int.Parse(triple.Text) * 3;
                    AgregarHuesped(nOCC, CantHuspedes, "Triple", 3);
                }
                catch (Exception)
                {
                    //No existe se continua siguiente validacion
                }

                try
                {
                    int CantHuspedes = int.Parse(cuadruple.Text) * 4;
                    AgregarHuesped(nOCC, CantHuspedes, "Cuadruple", 4);
                }
                catch (Exception)
                {
                    //No existe se continua siguiente validacion
                }

                ContenedorOrdenCompraCompleta xOCC = new ContenedorOrdenCompraCompleta();
                xOCC.Item.Cabecera     = nOCC.Cabecera;
                xOCC.Item.ListaDetalle = nOCC.ListaDetalle;

                if (xOCC.Item.ListaDetalle.Count > 0)
                {
                    xOCC.Retorno.Token = Session["TokenUsuario"].ToString();
                    xOCC = x.OrdenCompraCompletaCrear(xOCC);

                    if (xOCC.Retorno.Codigo == 0)
                    {
                        //OK
                        RescatarDatos();
                        Response.Write(@"<script language='text/javascript'>alert('Reserva relizada Correctamente');</script>");
                    }
                    else
                    {
                        //Error
                        Response.Write(@"<script language='text/javascript'>alert('Fallo la realizacion de la Reserva');</script>");
                    }
                }
                else
                {
                    Response.Write(@"<script language='text/javascript'>alert('Ingrese Datos de Huespedes');</script>");
                }
            }
            catch (Exception)
            {
                Response.Write(@"<script language='text/javascript'>alert('Fallo la realizacion de la Reserva');</script>");
            }
        }