public JsonResult ActualizarPaciente(PacienteModelo pacienteModelo)
        {
            Mensaje mensajeRespuesta = new Negocios.NegociosPaciente().ActualizarPaciente(pacienteModelo);
            var     datos            = new JavaScriptSerializer().Serialize(mensajeRespuesta);

            return(Json(datos, JsonRequestBehavior.AllowGet));
        }
        public JsonResult CrearCita(CrearCitaModelo crearCitaModelo)
        {
            string identificadorGUID = new GeneracionCodigo().GenerarCodigoUnico();

            crearCitaModelo.CitaModelo.IdentificadorGUID = identificadorGUID;
            Mensaje mensajeRespuesta = new Negocios.NegociosPaciente().CrearCita(crearCitaModelo);

            if (mensajeRespuesta.Exito)
            {
                string rutaServer    = Server.MapPath("~/");
                string rutaPlantilla = rutaServer + ConfigurationManager.AppSettings["rutaPlantilla"];
                string asunto        = ConfigurationManager.AppSettings["asuntoCita"];
                Dictionary <string, string> datosPaciente = new DiccionarioDatos().CrearDiccionarioDatosPaciente(crearCitaModelo);

                ManejadorCorreos manejadorCorreos = new ManejadorCorreos(crearCitaModelo.PacienteModelo.CorreoElectronico, asunto);
                manejadorCorreos.CrearCuerpoCorreo(rutaPlantilla, datosPaciente);
                int           rolAdministrador     = (int)Roles.Administrador;
                List <string> listaCorreosConCopia =
                    new Negocios.NegociosUsuario().ObtenerUsuariosPorRol(rolAdministrador).Select(item => item.Correo).ToList();
                manejadorCorreos.EstablecerCorreosConCopia(listaCorreosConCopia);
                manejadorCorreos.EnviarCorreo();
            }

            var datos = new JavaScriptSerializer().Serialize(mensajeRespuesta);

            return(Json(datos, JsonRequestBehavior.AllowGet));
        }
        public JsonResult EnviarCalificacion(CitaPracticanteModelo citaModelo)
        {
            CitaModelo cita =
                new Negocios.NegociosPaciente().ObtenerCitas(citaModelo.IdentificadorGUID).FirstOrDefault();

            citaModelo.CitaId          = cita.CitaId;
            citaModelo.Accion          = (char)Acciones.Actualizar;   //ACCION DE ACTUALIZAR
            citaModelo.Antecedentes    = cita.Antecedentes;
            citaModelo.Recomendaciones = cita.Recomendaciones;
            Mensaje mensajeRespuesta = new Negocios.NegociosPracticante().MantenimientoCita(citaModelo);

            if (mensajeRespuesta.Exito)
            {
                CitaPracticanteModelo citaPracticanteModelo = new Negocios.NegociosPracticante().ObtenerCitasPorId(cita.CitaId);
                string rutaServer    = Server.MapPath("~/");
                string rutaPlantilla = rutaServer + ConfigurationManager.AppSettings["rutaPlantillaCitaCalificada"];
                string asunto        = ConfigurationManager.AppSettings["asuntoCorreoCitaCalificada"];
                citaPracticanteModelo.Calificacion = citaModelo.Calificacion;
                Dictionary <string, string> datosCorreo = new DiccionarioDatos().CrearDiccionarioCitaCalificada(citaPracticanteModelo);

                ManejadorCorreos manejadorCorreos = new ManejadorCorreos("", asunto);
                manejadorCorreos.CrearCuerpoCorreo(rutaPlantilla, datosCorreo);
                int           rolAdministrador     = (int)Roles.Administrador;
                List <string> listaCorreosConCopia =
                    new Negocios.NegociosUsuario().ObtenerUsuariosPorRol(rolAdministrador).Select(item => item.Correo).ToList();
                manejadorCorreos.EstablecerMultiplesDestinatarios(listaCorreosConCopia);
                manejadorCorreos.EnviarCorreo();
            }

            var datos = new JavaScriptSerializer().Serialize(mensajeRespuesta);

            return(Json(datos, JsonRequestBehavior.AllowGet));
        }
        public JsonResult ObtenerSesionesActivas(string fechaDia)
        {
            List <SesionModelo> listaSesionesDisponibles = new Negocios.NegociosPaciente().ObtenerSesionesActivas(fechaDia);
            var datos = new JavaScriptSerializer().Serialize(listaSesionesDisponibles);

            return(Json(datos, JsonRequestBehavior.AllowGet));
        }
        public JsonResult ObtenerPacientes(int pacienteId)
        {
            PacienteModelo       pacienteModelo = new Negocios.NegociosPaciente().ObtenerPacientes(pacienteId).FirstOrDefault();
            JavaScriptSerializer seralizador    = new JavaScriptSerializer();

            seralizador.MaxJsonLength = Int32.MaxValue;
            var datos = new JavaScriptSerializer().Serialize(pacienteModelo);

            return(Json(datos, JsonRequestBehavior.AllowGet));
        }
        public JsonResult ObtenerDiasOfertaMes(string fechaOferta)
        {
            string[] fecha = fechaOferta.Split('/');
            int      mes   = Convert.ToInt32(fecha[0]);
            int      anio  = Convert.ToInt32(fecha[1]);

            List <DiasOfertaMes> listaDiasOfertaMes = new Negocios.NegociosPaciente().ObtenerDiasOfertaMes(mes, anio);
            var datos = new JavaScriptSerializer().Serialize(listaDiasOfertaMes);

            return(Json(datos, JsonRequestBehavior.AllowGet));
        }
        public ActionResult Calificacion(string identificadorGUID)
        {
            CitaModelo cita                   = new Negocios.NegociosPaciente().ObtenerCitas(identificadorGUID).FirstOrDefault();
            bool       existeCita             = cita != null;
            bool       citaNoHaSidoCalificada = true;

            if (existeCita)
            {
                citaNoHaSidoCalificada = cita.Calificacion == 0;
                if (!citaNoHaSidoCalificada)
                {
                    identificadorGUID = "YaFueCalificada";
                }
            }
            else
            {
                identificadorGUID = "NoExiste";
            }

            ViewBag.IdentificadorGUID = identificadorGUID;
            return(View("Paciente"));
        }
        public JsonResult ActualizarHorarioCita(CitaModelo citaModelo)
        {
            Mensaje mensajeRespuesta = new Negocios.NegociosPaciente().ActualizarHorarioCita(citaModelo);

            if (mensajeRespuesta.Exito)
            {
                PacienteModelo paciente =
                    new Negocios.NegociosPaciente().ObtenerPacientes(citaModelo.PacienteId).FirstOrDefault();

                string rutaServer    = Server.MapPath("~/");
                string rutaPlantilla = rutaServer + ConfigurationManager.AppSettings["rutaPlantilla"];
                string asunto        = ConfigurationManager.AppSettings["asuntoCita"];


                CrearCitaModelo crearCitaModelo = new CrearCitaModelo();
                crearCitaModelo.PacienteModelo.Nombre            = paciente.Nombre;
                crearCitaModelo.PacienteModelo.Apellidos         = paciente.Apellidos;
                crearCitaModelo.PacienteModelo.CorreoElectronico = paciente.CorreoElectronico;
                crearCitaModelo.PacienteModelo.Telefono          = paciente.Telefono;
                crearCitaModelo.PacienteModelo.Identificacion    = paciente.Identificacion;
                crearCitaModelo.CitaModelo.DetalleHora           = citaModelo.DetalleHora;
                crearCitaModelo.CitaModelo.Dia = citaModelo.Dia;

                Dictionary <string, string> datosPaciente = new DiccionarioDatos().CrearDiccionarioDatosPaciente(crearCitaModelo);

                ManejadorCorreos manejadorCorreos = new ManejadorCorreos(paciente.CorreoElectronico, asunto);
                manejadorCorreos.CrearCuerpoCorreo(rutaPlantilla, datosPaciente);
                int           rolAdministrador     = (int)Roles.Administrador;
                List <string> listaCorreosConCopia =
                    new Negocios.NegociosUsuario().ObtenerUsuariosPorRol(rolAdministrador).Select(item => item.Correo).ToList();
                manejadorCorreos.EstablecerCorreosConCopia(listaCorreosConCopia);
                manejadorCorreos.EnviarCorreo();
            }

            var datos = new JavaScriptSerializer().Serialize(mensajeRespuesta);

            return(Json(datos, JsonRequestBehavior.AllowGet));
        }