//actualizar promedio de calificacion //contar elementos public int cantidaddereservasconcalificacion(UReserva hotel) { double?reservas = new Mapeo().reserva.Where(x => (x.Idhotel == hotel.Idhotel) && (x.Calificacion != null)).Average(x => x.Calificacion); double variable = Convert.ToDouble(reservas); reservas = Math.Round(variable); return(int.Parse(reservas.ToString())); }
//insert registro public void insertHotel(UHotel hotelE) { using (var db = new Mapeo()) { db.hotel.Add(hotelE); db.SaveChanges(); } }
//insert registro public void insertRegistro(URegistro registroE) { using (var db = new Mapeo()) { db.usuario.Add(registroE); db.SaveChanges(); } }
public void insertartoken(UToken tokenE) { using (var db = new Mapeo()) { db.token.Add(tokenE); db.SaveChanges(); } }
//insert registro public void insertReserva(UReserva reservaE) { using (var db = new Mapeo()) { db.reserva.Add(reservaE); db.SaveChanges(); } }
//Insertar registro de acceso public void insertarAcceso(UAcceso acceso) { using (var db = new Mapeo()) { db.acceso.Add(acceso); db.SaveChanges(); } }
public void insertHabitacion(UHabitacion habitE) { using (var db = new Mapeo()) { db.habitacion.Add(habitE); db.SaveChanges(); } }
//guardar datos de compra public void insertarCompra(UMembresia datos) { using (var db = new Mapeo()) { db.membresia.Add(datos); db.SaveChanges(); } }
public void insertComentario(UComentarios coment) { using (var db = new Mapeo()) { db.comentario.Add(coment); db.SaveChanges(); } }
//eliminar reserva public void deleteReserva(UReserva inforeserva) { using (var db = new Mapeo()) { UReserva mireserva = db.reserva.Where(x => x.Id == inforeserva.Id).First(); db.reserva.Remove(mireserva); db.SaveChanges(); } }
//actualiza contraseña public void actualizarcontrasena(URegistro datoE) { using (var db = new Mapeo()) { URegistro datoanterior = db.usuario.Where(x => x.Id == datoE.Id).First(); datoanterior.Contrasena = datoE.Contrasena; var entry = db.Entry(datoanterior); entry.State = EntityState.Modified; db.SaveChanges(); } }
//eliminar hotel public void deleteHotel(UHotel id) { using (var db = new Mapeo()) { UHotel mihotel = db.hotel.Where(x => x.Idhotel == id.Idhotel).First(); List <UHabitacion> mihabitacion = db.habitacion.Where(x => x.Idhotel == id.Idhotel).ToList(); db.habitacion.RemoveRange(mihabitacion); db.hotel.Remove(mihotel); db.SaveChanges(); } }
//actualizar calificacion public void actualizarcalificacion(UHotel hotelE) { using (var db = new Mapeo()) { UHotel datoanterior = db.hotel.Where(x => x.Idhotel == hotelE.Idhotel).First(); datoanterior.Promediocalificacion = hotelE.Promediocalificacion; var entry = db.Entry(datoanterior); entry.State = EntityState.Modified; db.SaveChanges(); } }
//actualizar calificacion //actualiza foto perfil public void actualizarcalificacion(UReserva datosE) { using (var db = new Mapeo()) { UReserva calificacionanterior = db.reserva.Where(x => x.Id == datosE.Id).First(); calificacionanterior.Calificacion = datosE.Calificacion; var entry = db.Entry(calificacionanterior); entry.State = EntityState.Modified; db.SaveChanges(); } }
//Agregar habitación en el hotel public void actualizarhabiatacion(UHabitacion idE) { using (var db = new Mapeo()) { UHotel datoanterior = db.hotel.Where(x => x.Idhotel == idE.Idhotel).First(); var idanterior = datoanterior.Numhabitacion; datoanterior.Numhabitacion = idanterior + 1; var entry = db.Entry(datoanterior); entry.State = EntityState.Modified; db.SaveChanges(); } }
//capturar momento de des-logeo public void cerrarAcceso(int userid) { using (var db = new Mapeo()) { UAcceso acceso = new UAcceso(); acceso = db.acceso.Where(x => x.Userid == userid && x.FechaFin == null).FirstOrDefault(); acceso.FechaFin = DateTime.Now; db.acceso.Attach(acceso); var entry = db.Entry(acceso); entry.State = EntityState.Modified; db.SaveChanges(); } }
//actualiza datos perfil public void actualizarperfil(URegistro datoE) { using (var db = new Mapeo()) { URegistro datoanterior = db.usuario.Where(x => x.Id == datoE.Id).First(); datoanterior.Nombre = datoE.Nombre; datoanterior.Apellido = datoE.Apellido; datoanterior.Correo = datoE.Correo; datoanterior.Telefono = datoE.Telefono; datoanterior.Usuario = datoE.Usuario; var entry = db.Entry(datoanterior); entry.State = EntityState.Modified; db.SaveChanges(); } }
//disponibbilidad de personas public List <UHabitacion> disponibilidadDePeronas(UHotel datosE) { using (var db = new Mapeo()) { List <UHabitacion> limiteDePersonas = (from hhab in db.habitacion where hhab.Idhotel == datosE.Idhotel select new { hhab }).ToList().Select(m => new UHabitacion { Id = m.hhab.Numpersonas, }).ToList(); return(limiteDePersonas); } }
//actualiza foto perfil public void actualizarfoto(URegistro fotoE) { using (var db = new Mapeo()) { URegistro fotoanterior = db.usuario.Where(x => x.Id == fotoE.Id).First(); //eliminar anterior /* * if (File.Exists(fotoanterior.Fotoperfil)) * { * File.Delete(fotoanterior.Fotoperfil); * }*/ // fotoanterior.Fotoperfil = fotoE.Fotoperfil; var entry = db.Entry(fotoanterior); entry.State = EntityState.Modified; db.SaveChanges(); } }
public Boolean consulta(UComentarios user) { Double tdia = 3; List <UComentarios> comentario = new Mapeo().comentario.Where(x => (x.Id_hotel == user.Id_hotel) && (user.Id_usuario == x.Id_usuario)).ToList(); int cantidad = new Mapeo().reserva.Where(x => x.Idhotel == user.Id_hotel && ((user.Id_usuario == x.Idusuario && user.Fecha_comentario >= x.Fecha_salida && user.Fecha_comentario <= x.Limite_comentario))).Count(); if (cantidad > 0) { //confirma = true; return(true); } else { //confirma = false; return(false); } }
//lista de hoteles destacados public List <UHotel> hotelesdestacados() { using (var db = new Mapeo()) { List <UHotel> hotelesdestacados = (from h in db.hotel orderby(h.Promediocalificacion != null ? h.Promediocalificacion : -1) descending //where h.Numhabitacion > 4 select new { h }).Take(6).ToList().Select(m => new UHotel { Idhotel = m.h.Idhotel, Nombre = m.h.Nombre, Imagen = m.h.Imagen, Promediocalificacion = m.h.Promediocalificacion, }).ToList(); return(hotelesdestacados); } }
//lista de hoteles por usuario //(hoteles que se muestran en index) public List <UHotel> hotelesregistrados(UFiltro consulta) { int num = 0; if (consulta != null && consulta.numpersonas != null) { num = int.Parse((consulta.numpersonas).ToString()); } if (consulta != null && (consulta.fecha_antesde != null && consulta.fecha_despuesde != null)) { using (var db = new Mapeo()) { List <UHotel> elementos = (from h in db.hotel join hm in db.hotelmunicipio on h.Idmunicipio equals hm.Idmunicipio join hz in db.hotelzona on h.Idzona equals hz.Idzona //join rh in db.reserva on h.Idhotel equals rh.Idhotel select new { h, hm, hz, //rh, }).OrderBy(h => h.h.Nombre).ToList().Select(m => new UHotel { NumHabitDisponibles = ((db.habitacion.Where(x => x.Idhotel == m.h.Idhotel).Count()) - (db.reserva.Where(x => (x.Idhotel == m.h.Idhotel) && ((consulta.fecha_despuesde >= x.Fecha_llegada && consulta.fecha_despuesde <= x.Fecha_salida) || (consulta.fecha_antesde >= x.Fecha_salida && consulta.fecha_antesde <= x.Fecha_salida))).Count()) < 0 ? 0 : (db.habitacion.Where(x => x.Idhotel == m.h.Idhotel).Count()) - (db.reserva.Where(x => (x.Idhotel == m.h.Idhotel) && ((consulta.fecha_despuesde >= x.Fecha_llegada && consulta.fecha_despuesde <= x.Fecha_salida) || (consulta.fecha_antesde >= x.Fecha_salida && consulta.fecha_antesde <= x.Fecha_salida))).Count())), Promediocalificacion = m.h.Promediocalificacion, Idhotel = m.h.Idhotel, Nombre = m.h.Nombre, Precionoche = m.h.Precionoche, PrecioNocheDoble = m.h.PrecioNocheDoble, PrecioNochePremium = m.h.PrecioNochePremium, Imagen = m.h.Imagen, Municipio = m.hm.Nombre, Zona = m.hz.Nombre, //Fecha_antesde = m.rh.Fecha_salida, //Fecha_despuesde = m.rh.Fecha_llegada, }).Where(x => x.NumHabitDisponibles > 0).ToList(); return(elementos); } } else { using (var db = new Mapeo()) { List <UHotel> elementos = (from h in db.hotel join hm in db.hotelmunicipio on h.Idmunicipio equals hm.Idmunicipio join hz in db.hotelzona on h.Idzona equals hz.Idzona //join rh in db.reserva on h.Idhotel equals rh.Idhotel //join hhab in db.habitacion on h.Idhotel equals hhab.Idhotel select new { h, hm, hz, }).OrderBy(h => h.h.Nombre).ToList().Select(m => new UHotel { NumHabitDisponibles = db.habitacion.Where(x => x.Idhotel == m.h.Idhotel).Count(), Promediocalificacion = m.h.Promediocalificacion, Idhotel = m.h.Idhotel, Nombre = m.h.Nombre, Precionoche = m.h.Precionoche, PrecioNocheDoble = m.h.PrecioNocheDoble, PrecioNochePremium = m.h.PrecioNochePremium, Imagen = m.h.Imagen, Municipio = m.hm.Nombre, Zona = m.hz.Nombre, NumMaxPersonas = db.habitacion.Where(x => x.Numpersonas == num && x.Idhotel == m.h.Idhotel).Count() == 0 ? 0 : 1, }).Where(x => num > 0 ? x.NumMaxPersonas > 0 : x.NumMaxPersonas == 0).ToList(); if (consulta == null) { return(elementos); } if (consulta.calificacion != null) { if (consulta.calificacion.Equals("--Seleccionar--")) { elementos = elementos.Where(x => (x.Promediocalificacion <= 5) || (x.Promediocalificacion == null)).ToList();//&& (x.Promediocalificacion == null) } else { elementos = elementos.Where(x => x.Promediocalificacion == (int.Parse(consulta.calificacion))).ToList(); } } if (consulta.nombrehotel != null) { elementos = elementos.Where(x => x.Nombre.ToUpper().Equals(consulta.nombrehotel)).ToList(); } if (consulta.preciomin != null && consulta.preciomax != null) { if (consulta.tipo != null) { if (consulta.tipo.Equals("Basica")) { elementos = elementos.Where(x => (x.Precionoche <= consulta.preciomax && x.Precionoche >= consulta.preciomin)).ToList(); } if (consulta.tipo.Equals("Doble")) { elementos = elementos.Where(x => (x.PrecioNocheDoble <= consulta.preciomax && x.PrecioNocheDoble >= consulta.preciomin)).ToList(); } if (consulta.tipo.Equals("Premium")) { elementos = elementos.Where(x => (x.PrecioNochePremium <= consulta.preciomax && x.PrecioNochePremium >= consulta.preciomin)).ToList(); } } else if (consulta.tipo == null) { elementos = elementos.Where(x => x.Precionoche != null && x.Precionoche != null).ToList(); } } else { if (consulta.preciomax != null && consulta.preciomin == null) { elementos = elementos.Where(x => x.Precionoche <= consulta.preciomax).ToList(); } if (consulta.preciomin != null && consulta.preciomax == null) { elementos = elementos.Where(x => x.Precionoche >= consulta.preciomin).ToList(); } } if (consulta.zona != null && consulta.municipio != null) { elementos = elementos.Where(x => (x.Municipio.Equals(consulta.municipio)) && (x.Zona.Equals(consulta.zona))).ToList(); } else { if (consulta.municipio != null && consulta.zona == null) { elementos = elementos.Where(x => x.Municipio.Equals(consulta.municipio)).ToList(); } else if (consulta.zona != null && consulta.municipio == null) { elementos = elementos.Where(x => x.Zona.Equals(consulta.zona)).ToList(); } } return(elementos); } } }
//habitaciones por hotel public List <UHabitacion> habitacionesHotel(UHotel idE, UFiltro consulta) { try { if (consulta.numpersonas == null) { using (var db = new Mapeo()) { List <UHabitacion> habitaciones = (from hhab in db.habitacion select new { hhab }).ToList().Select(m => new UHabitacion { Tipo = m.hhab.Tipo, Id = m.hhab.Id, Numbanio = m.hhab.Numbanio, Numcamas = m.hhab.Numcamas, Numpersonas = m.hhab.Numpersonas, Idhotel = m.hhab.Idhotel, Precio = m.hhab.Precio, }).Where(x => x.Idhotel == idE.Idhotel).ToList(); return(habitaciones); } } else { using (var db = new Mapeo()) { List <UHabitacion> habitaciones = (from hhab in db.habitacion select new { hhab }).ToList().Select(m => new UHabitacion { Tipo = m.hhab.Tipo, Id = m.hhab.Id, Numbanio = m.hhab.Numbanio, Numcamas = m.hhab.Numcamas, Numpersonas = m.hhab.Numpersonas, Idhotel = m.hhab.Idhotel, Precio = m.hhab.Precio, }).Where(x => (x.Idhotel == idE.Idhotel) && (x.Numpersonas == consulta.numpersonas)).ToList(); return(habitaciones); } } } catch { if (consulta == null) { using (var db = new Mapeo()) { List <UHabitacion> habitaciones = (from hhab in db.habitacion select new { hhab }).ToList().Select(m => new UHabitacion { Tipo = m.hhab.Tipo, Id = m.hhab.Id, Numbanio = m.hhab.Numbanio, Numcamas = m.hhab.Numcamas, Numpersonas = m.hhab.Numpersonas, Idhotel = m.hhab.Idhotel, Precio = m.hhab.Precio, }).Where(x => x.Idhotel == idE.Idhotel).ToList(); return(habitaciones); } } else { using (var db = new Mapeo()) { List <UHabitacion> habitaciones = (from hhab in db.habitacion select new { hhab }).ToList().Select(m => new UHabitacion { Tipo = m.hhab.Tipo, Id = m.hhab.Id, Numbanio = m.hhab.Numbanio, Numcamas = m.hhab.Numcamas, Numpersonas = m.hhab.Numpersonas, Idhotel = m.hhab.Idhotel, Precio = m.hhab.Precio, }).Where(x => (x.Idhotel == idE.Idhotel) && (x.Numpersonas == consulta.numpersonas)).ToList(); return(habitaciones); } } } }
//informacion de la reserva - ultima reserva sin calificar public UReserva ultimareserva(UReserva reservaE) { UReserva ultimareserva = new Mapeo().reserva.Where(x => (x.Idhotel == reservaE.Idhotel) && (x.Idusuario == reservaE.Idusuario) && (x.Calificacion == null)).FirstOrDefault(); return(ultimareserva); }
//verificar si la reserva ya se encuentra antes de hacerla efectiva public int verificarreserva(UReserva reservaE) { int reserva = new Mapeo().reserva.Where(x => (x.Idhotel == reservaE.Idhotel) && (x.Numpersona == reservaE.Numpersona) && (x.Fecha_llegada == reservaE.Fecha_llegada) && (x.Fecha_salida == reservaE.Fecha_salida) && (x.Id_habitacion == reservaE.Id_habitacion)).Count(); return(reserva); }