Beispiel #1
0
        /// <summary>
        /// Permite obtener el promedio de estrellas de una referencia(Hotel | Restaurante).
        /// </summary>
        /// <param name="referencia">Se espera una instancia de Hotel o Restaurante.</param>
        /// <returns>Valoracion de la referencia indicada.</returns>
        public ReferenciaValorada ObtenerValoracionPorReferencia(Entidad referencia)
        {
            ReferenciaValorada valoracion = null;
            List <Parametro>   parametros = null;
            int tipo = 0;

            try
            {
                if (referencia is Hotel)
                {
                    tipo = 2;
                }
                else if (referencia is Restaurante)
                {
                    tipo = 1;
                }
                else
                {
                    throw new DAOM20Exception("La entidad revision debe ser de tipo Revision.");
                }

                parametros = FabricaDAO.asignarListaDeParametro();
                parametros.Add(FabricaDAO.asignarParametro(RecursoDAOM20.parametroRevisionTipo, SqlDbType.Int, ((int)tipo).ToString(), false));
                parametros.Add(FabricaDAO.asignarParametro(RecursoDAOM20.parametroRevisionReferencia, SqlDbType.Int, referencia._id.ToString(), false));

                DataTable respuesta = EjecutarStoredProcedureTuplas(RecursoDAOM20.procedimientoObtenerValoracionPorReferencia, parametros);
                valoracion = new ReferenciaValorada
                {
                    Id        = (int)respuesta.Rows[0][RecursoDAOM20.parametroRevisionReferencia],
                    Estrellas = (decimal)respuesta.Rows[0][RecursoDAOM20.parametroReferenciaEstrellas],
                    Tipo      = (EnumTipoRevision)tipo
                };
            }
            catch (Exception ex)
            {
                Models.Utilidad.RegistrarLog(new DAOM20Exception("Ocurrio un problema al intentar ejecutar DAORevision.ObtenerRevisionesPorReferencia.", ex));
            }
            return(valoracion);
        }
Beispiel #2
0
        public ActionResult obtener_valoracion(int id, EnumTipoRevision tipo)
        {
            var     revisiones = new ReferenciaValorada();
            Entidad referencia = null;

            if (tipo == EnumTipoRevision.Hotel)
            {
                referencia = new Hotel()
                {
                    _id = id
                };
            }
            else if (tipo == EnumTipoRevision.Restaurante)
            {
                referencia = new Restaurante()
                {
                    _id = id
                };
            }
            revisiones = DAORevision.Singleton().ObtenerValoracionPorReferencia(referencia);
            return(PartialView(revisiones));
        }