public List <PaisBE> obtenerPaises()
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <PaisBE> lstPaisBE = new List <PaisBE>();
                    var           paises    = (from item in entity.Pais
                                               select item).ToList();
                    foreach (var item in paises)
                    {
                        PaisBE paisBE = new PaisBE()
                        {
                            IdPais = item.id,
                            Pais   = item.ubicacion
                        };
                        lstPaisBE.Add(paisBE);
                    }

                    return(lstPaisBE);
                }
                catch (Exception ex)
                {
                    return(null);

                    throw ex;
                }
            }
        }
        public List <ProvinciaBE> obtenerProvincias(String idDepartamento)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <ProvinciaBE> lstProvinciaBE = new List <ProvinciaBE>();
                    var provincias = (from item in entity.Ubigeo
                                      where item.departamento == idDepartamento && item.provincia != "00" && item.distrito == "00"
                                      select item).ToList();
                    foreach (var item in provincias)
                    {
                        ProvinciaBE provinciaBE = new ProvinciaBE()
                        {
                            IdProvincia = item.provincia,
                            Provincia   = item.ubicacion
                        };
                        lstProvinciaBE.Add(provinciaBE);
                    }

                    return(lstProvinciaBE);
                }
                catch (Exception ex)
                {
                    return(null);

                    throw ex;
                }
            }
        }
        public List <DepartamentoBE> obtenerDepartamentos()
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <DepartamentoBE> lstDepartamentoBE = new List <DepartamentoBE>();
                    var departamentos = (from item in entity.Ubigeo
                                         where item.departamento != "00" && item.provincia == "00" && item.distrito == "00"
                                         select item).ToList();
                    foreach (var item in departamentos)
                    {
                        DepartamentoBE departamentoBE = new DepartamentoBE()
                        {
                            IdDepartamento = item.departamento,
                            Departamento   = item.ubicacion
                        };
                        lstDepartamentoBE.Add(departamentoBE);
                    }

                    return(lstDepartamentoBE);
                }
                catch (Exception ex)
                {
                    return(null);

                    throw ex;
                }
            }
        }
예제 #4
0
        public Boolean registrarHuesped(HuespedBE objHuespedBE)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    Huesped huesped = new Huesped()
                    {
                        idTipoDoc = objHuespedBE.IdTipoDoc,
                        numDoc    = objHuespedBE.NumDoc,
                        nombre    = objHuespedBE.Nombre,
                        email     = objHuespedBE.Email,
                        telefono  = objHuespedBE.Telefono,
                        idPais    = objHuespedBE.IdPais,
                        estado    = true
                    };

                    entity.Huesped.Add(huesped);
                    entity.SaveChanges();
                    return(true);
                }
                catch (Exception ex)
                {
                    return(false);

                    throw ex;
                }
            }
        }
예제 #5
0
        public List <HuespedReporteBE> contarHuespedesPorPais(DateTime fechaInicio,
                                                              DateTime fechaFinal)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <HuespedReporteBE> lstHuespedReporteBE = new List <HuespedReporteBE>();
                    var listaHuespedes = (from item in entity.ReservaHuesped
                                          where item.Reserva.fechaIngreso >= fechaInicio &&
                                          item.Reserva.fechaSalida <= fechaFinal
                                          group item by item.Huesped.Pais.ubicacion into huesped
                                          select huesped).ToList();

                    foreach (var item in listaHuespedes)
                    {
                        HuespedReporteBE objHuespedReporteBE = new HuespedReporteBE()
                        {
                            Pais     = item.Key.ToString(),
                            Cantidad = item.Count()
                        };
                        lstHuespedReporteBE.Add(objHuespedReporteBE);
                    }

                    return(lstHuespedReporteBE);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
예제 #6
0
        public List <TipoDocumentoBE> listarTiposDocumento()
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <TipoDocumentoBE> lstTipoDocumentoBE = new List <TipoDocumentoBE>();
                    var lista = (from item in entity.TipoDocumento
                                 select item).ToList();

                    foreach (var item in lista)
                    {
                        TipoDocumentoBE objTipoDocumentoBE = new TipoDocumentoBE()
                        {
                            Id          = item.id,
                            Descripcion = item.descripcion
                        };
                        lstTipoDocumentoBE.Add(objTipoDocumentoBE);
                    }

                    return(lstTipoDocumentoBE);
                }
                catch (Exception ex)
                {
                    return(null);

                    throw ex;
                }
            }
        }
예제 #7
0
        public HuespedBE obtenerHuesped(String idTipoDoc,
                                        String numDoc)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    HuespedBE objHuespedBE = new HuespedBE();
                    var       huesped      = (from item in entity.Huesped
                                              where item.idTipoDoc == idTipoDoc &&
                                              item.numDoc == numDoc
                                              select item).FirstOrDefault();

                    objHuespedBE.Id     = huesped.id;
                    objHuespedBE.Nombre = huesped.nombre;
                    objHuespedBE.Pais   = huesped.Pais.ubicacion;

                    return(objHuespedBE);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
        public List <HuespedBE> contarHuespedesPorPais()
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <HuespedBE> lstHuespedBE = new List <HuespedBE>();
                    var listaHuespedes            = (from item in entity.ReservaHuesped
                                                     group item by item.Huesped.Pais.ubicacion into huesped
                                                     select huesped).ToList();

                    foreach (var item in listaHuespedes)
                    {
                        HuespedBE objHuespedBE = new HuespedBE()
                        {
                            Pais     = item.Key.ToString(),
                            Cantidad = item.Count()
                        };
                        lstHuespedBE.Add(objHuespedBE);
                    }

                    return(lstHuespedBE);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
예제 #9
0
        public List <TipoPagoBE> obtenerTiposPago()
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <TipoPagoBE> lstTipoPagoBE = new List <TipoPagoBE>();
                    var listaTiposPago = (from item in entity.TipoPago
                                          select item).ToList();

                    foreach (var item in listaTiposPago)
                    {
                        TipoPagoBE objTipoPagoBE = new TipoPagoBE()
                        {
                            Id          = item.id,
                            Descripcion = item.descripcion
                        };
                        lstTipoPagoBE.Add(objTipoPagoBE);
                    }

                    return(lstTipoPagoBE);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
        public List <AmbienteBE> obtenerAmbienteDisponiblePorRangoDePrecios(DateTime fechaInicio,
                                                                            DateTime fechaFinal,
                                                                            Decimal precioMenor,
                                                                            Decimal precioMayor,
                                                                            String idUbigeo)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <AmbienteBE> lstAmbienteBE = new List <AmbienteBE>();
                    var listaAmbientes = (from item in entity.Ambiente
                                          where item.precio >= precioMenor &&
                                          item.precio <= precioMayor &&
                                          item.Hotel.idUbigeo == idUbigeo &&
                                          item.estado == true
                                          select item).ToList();

                    var listaReservas = (from item in entity.ReservaDetalle
                                         where item.Reserva.fechaIngreso >= fechaInicio &&
                                         item.Reserva.fechaSalida <= fechaFinal &&
                                         item.Reserva.estado == true
                                         select item).ToList();

                    foreach (var item in listaReservas)
                    {
                        listaAmbientes.Remove(item.Ambiente);
                    }

                    foreach (var item in listaAmbientes)
                    {
                        AmbienteBE objAmbienteBE = new AmbienteBE()
                        {
                            Aforo         = item.aforo,
                            Distrito      = item.Hotel.Ubigeo.ubicacion,
                            Direccion     = item.Hotel.direccion,
                            Piso          = item.piso,
                            Identificador = item.identificador,
                            Precio        = item.precio
                        };
                        lstAmbienteBE.Add(objAmbienteBE);
                    }

                    return(lstAmbienteBE);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
        public List <AmbienteBE> obtenerAmbienteDisponiblePorFecha(DateTime fechaInicio,
                                                                   DateTime fechaFinal,
                                                                   String idUbigeo)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <AmbienteBE> lstAmbienteBE = new List <AmbienteBE>();
                    var listaAmbientes = (from item in entity.Ambiente
                                          where item.estado == true &&
                                          item.Hotel.idUbigeo == idUbigeo
                                          select item).ToList();

                    var listaReservas = (from item in entity.ReservaDetalle
                                         where item.Reserva.fechaIngreso >= fechaInicio &&
                                         item.Reserva.fechaSalida <= fechaFinal &&
                                         item.Reserva.estado == true
                                         select item).ToList();

                    foreach (var item in listaReservas)
                    {
                        listaAmbientes.Remove(item.Ambiente);
                    }

                    foreach (var item in listaAmbientes)
                    {
                        AmbienteBE objAmbienteBE = new AmbienteBE()
                        {
                            IdAmbiente    = item.id,
                            Aforo         = item.aforo,
                            Distrito      = item.Hotel.Ubigeo.ubicacion,
                            Direccion     = item.Hotel.direccion,
                            Piso          = item.piso,
                            Identificador = item.identificador,
                            Precio        = item.precio,
                            Descripcion   = item.identificador.Contains("PISCINA") || item.identificador.Contains("SALA") ? item.identificador :
                                            "Habitacion " + item.identificador
                        };
                        lstAmbienteBE.Add(objAmbienteBE);
                    }

                    return(lstAmbienteBE);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
예제 #12
0
        public List <ReservaBE> listarReservasPorHuesped(string dni)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <ReservaBE> lstReservaBE = new List <ReservaBE>();
                    var lista = (from huesped in entity.ReservaHuesped
                                 join ambiente in entity.ReservaDetalle on huesped.idReserva equals ambiente.idReserva
                                 where huesped.Huesped.numDoc == dni
                                 select new
                    {
                        dni = huesped.Huesped.numDoc,
                        huesped = huesped.Huesped.nombre,
                        fechaInicio = huesped.Reserva.fechaIngreso,
                        fechaSalida = huesped.Reserva.fechaSalida,
                        direccion = ambiente.Ambiente.Hotel.direccion,
                        piso = ambiente.Ambiente.piso,
                        identificador = ambiente.Ambiente.identificador
                    }).ToList();

                    foreach (var item in lista)
                    {
                        ReservaBE objReservaBE = new ReservaBE()
                        {
                            Dni           = item.dni,
                            Huesped       = item.huesped,
                            FechaInicio   = item.fechaInicio,
                            FechaSalida   = item.fechaSalida,
                            Direccion     = item.direccion,
                            Piso          = item.piso,
                            Identificador = item.identificador
                        };
                        lstReservaBE.Add(objReservaBE);
                    }

                    return(lstReservaBE);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
예제 #13
0
        public List <HuespedBE> obtenerHuespedesPorPais(DateTime fechaInicio,
                                                        DateTime fechaFinal,
                                                        String idPais)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <HuespedBE> lstHuespedBE = new List <HuespedBE>();
                    var listaHuespedes            = (from item in entity.ReservaHuesped
                                                     where item.Reserva.fechaIngreso >= fechaInicio &&
                                                     item.Reserva.fechaSalida <= fechaFinal &&
                                                     item.Huesped.idPais == idPais
                                                     select new
                    {
                        TipoDoc = item.Huesped.TipoDocumento.descripcion,
                        NumDoc = item.Huesped.numDoc,
                        Nombre = item.Huesped.nombre,
                        Email = item.Huesped.email
                    }).ToList();

                    foreach (var item in listaHuespedes)
                    {
                        HuespedBE objHuespedBE = new HuespedBE()
                        {
                            TipoDoc = item.TipoDoc,
                            NumDoc  = item.NumDoc,
                            Nombre  = item.Nombre,
                            Email   = item.Email
                        };
                        lstHuespedBE.Add(objHuespedBE);
                    }

                    return(lstHuespedBE);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
예제 #14
0
        public bool registrarReserva(DateTime fechaIngreso,
                                     DateTime fechaSalida,
                                     Int32 idTipoPago,
                                     Decimal monto,
                                     Int32 idAmbiente,
                                     List <HuespedBE> lstHuespedBE)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    Reserva reserva = new Reserva()
                    {
                        fechaIngreso = fechaIngreso,
                        fechaSalida  = fechaSalida,
                        idTipoPago   = idTipoPago,
                        monto        = monto,
                        estado       = true
                    };
                    entity.Reserva.Add(reserva);
                    entity.SaveChanges();

                    ReservaDetalle reservaDetalle = new ReservaDetalle()
                    {
                        idReserva  = reserva.id,
                        idAmbiente = idAmbiente,
                        estado     = true
                    };
                    entity.ReservaDetalle.Add(reservaDetalle);
                    entity.SaveChanges();



                    return(true);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
        public List <AmbienteBE> obtenerAmbienteDisponiblePorFecha(DateTime fechaInicio, DateTime fechaFinal)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <AmbienteBE> lstAmbienteBE = new List <AmbienteBE>();
                    var listaAmbientes = (from item in entity.Ambiente
                                          where item.estado == true
                                          select item).ToList();

                    var listaReservas = (from item in entity.ReservaDetalle
                                         where item.Reserva.fechaIngreso >= fechaInicio && item.Reserva.fechaSalida <= fechaFinal && item.Reserva.estado == true
                                         select item).ToList();

                    foreach (var item in listaReservas)
                    {
                        listaAmbientes.Remove(item.Ambiente);
                    }

                    foreach (var item in listaAmbientes)
                    {
                        AmbienteBE objAmbienteBE = new AmbienteBE()
                        {
                            direccion     = item.Hotel.direccion,
                            identificador = item.identificador,
                            piso          = item.piso,
                            precio        = item.precio
                        };
                        lstAmbienteBE.Add(objAmbienteBE);
                    }

                    return(lstAmbienteBE);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
예제 #16
0
        public Decimal obtenerDineroGastadoPorHuesped(DateTime fechaInicio,
                                                      DateTime fechaFinal,
                                                      String idTipoDoc,
                                                      String numDoc)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    Decimal total = 0;

                    List <ReservaBE> lstReservaBE = new List <ReservaBE>();
                    var lista = (from huesped in entity.ReservaHuesped
                                 join ambiente in entity.ReservaDetalle on huesped.idReserva equals ambiente.idReserva
                                 where huesped.Huesped.idTipoDoc == idTipoDoc &&
                                 huesped.Huesped.numDoc == numDoc &&
                                 huesped.Reserva.fechaIngreso >= fechaInicio &&
                                 huesped.Reserva.fechaSalida <= fechaFinal
                                 select new { monto = huesped.Reserva.monto }).ToList();

                    foreach (var item in lista)
                    {
                        total += item.monto;
                    }
                    ;

                    return(total);
                }
                catch (Exception ex)
                {
                    return(0);

                    throw ex;
                }
            }
        }
예제 #17
0
        public List <ReservaBE> listarReservasPorFecha(DateTime fechaInicio,
                                                       DateTime fechaFinal,
                                                       String idUbigeo)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                try
                {
                    List <ReservaBE> lstReservaBE = new List <ReservaBE>();
                    var lista = (from huesped in entity.ReservaHuesped
                                 join ambiente in entity.ReservaDetalle on huesped.idReserva equals ambiente.idReserva
                                 where huesped.Reserva.fechaIngreso >= fechaInicio &&
                                 huesped.Reserva.fechaSalida <= fechaFinal &&
                                 ambiente.Ambiente.Hotel.Ubigeo.id == idUbigeo
                                 select new
                    {
                        Dni = huesped.Huesped.numDoc,
                        huesped.Huesped,
                        FechaInicio = huesped.Reserva.fechaIngreso,
                        FechaSalida = huesped.Reserva.fechaSalida,
                        Distrito = ambiente.Ambiente.Hotel.Ubigeo.ubicacion,
                        Direccion = ambiente.Ambiente.Hotel.direccion,
                        Piso = ambiente.Ambiente.piso,
                        Identificador = ambiente.Ambiente.identificador,
                        TipoPago = ambiente.Reserva.TipoPago.descripcion,
                        Monto = huesped.Reserva.monto
                    }).ToList();

                    foreach (var item in lista)
                    {
                        ReservaBE objReservaBE = new ReservaBE()
                        {
                            Dni     = item.Dni,
                            Huesped = new HuespedBE()
                            {
                                Nombre = item.Huesped.nombre,
                                Email  = item.Huesped.email,
                                Pais   = item.Huesped.Pais.ubicacion
                            },
                            FechaInicio   = item.FechaInicio,
                            FechaSalida   = item.FechaSalida,
                            Distrito      = item.Distrito,
                            Direccion     = item.Direccion,
                            Piso          = item.Piso,
                            Identificador = item.Identificador,
                            TipoPago      = item.TipoPago,
                            Monto         = item.Monto
                        };
                        lstReservaBE.Add(objReservaBE);
                    }

                    return(lstReservaBE);
                }
                catch (Exception ex)
                {
                    return(null);

                    throw ex;
                }
            }
        }
예제 #18
0
        public Boolean registrarReserva(List <HuespedBE> lstHuespedBE,
                                        List <AmbienteBE> lstAmbienteBE,
                                        DateTime fechaInicio,
                                        DateTime fechaSalida,
                                        Int32 idTipoPago,
                                        Decimal monto)
        {
            using (HospedajeEntities entity = new HospedajeEntities())
            {
                using (var dbTransaction = entity.Database.BeginTransaction())
                {
                    try
                    {
                        Reserva reserva = new Reserva()
                        {
                            fechaIngreso = fechaInicio,
                            fechaSalida  = fechaSalida,
                            idTipoPago   = idTipoPago,
                            monto        = monto,
                            estado       = true
                        };
                        entity.Reserva.Add(reserva);
                        entity.SaveChanges();

                        for (int i = 0; i < lstAmbienteBE.Count; i++)
                        {
                            ReservaDetalle reservaDetalle = new ReservaDetalle()
                            {
                                idReserva  = reserva.id,
                                idAmbiente = lstAmbienteBE[i].IdAmbiente,
                                estado     = true
                            };
                            entity.ReservaDetalle.Add(reservaDetalle);
                            entity.SaveChanges();
                        }

                        for (int i = 0; i < lstHuespedBE.Count; i++)
                        {
                            ReservaHuesped reservaHuesped = new ReservaHuesped()
                            {
                                idReserva = reserva.id,
                                idHuesped = lstHuespedBE[i].Id,
                                estado    = true
                            };
                            entity.ReservaHuesped.Add(reservaHuesped);
                            entity.SaveChanges();
                        }

                        dbTransaction.Commit();
                        return(true);
                    }
                    catch (Exception ex)
                    {
                        dbTransaction.Rollback();
                        return(false);

                        throw ex;
                    }
                }
            }
        }