Ejemplo n.º 1
0
        public JsonResult ValidarIntencion(string nombreIntencion)
        {
            var respuesta = new Intencion();

            try
            {
                var intencion = new Dialogflow.DialogFlow(oIBLSolicitud).ObtenerIntentoDialogFlow(nombreIntencion);

                if (intencion != null)
                {
                    if (nombreIntencion.Equals(intencion.Nombre))
                    {
                        respuesta.ValidacionIntencion = "EXISTE";
                        respuesta.IdDialogFlow        = intencion.Id;
                    }
                }
            }
            catch (Exception ex)
            {
            }

            return(new JsonResult {
                Data = respuesta, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
Ejemplo n.º 2
0
        public JsonResult ConsultarFrasesEntrenamiento(string idIntencion)
        {
            var lista = new List <FraseEntrenamientoModel>();

            lista = new Dialogflow.DialogFlow().ObtenerFrasesEntrenamiento(idIntencion);

            return(new JsonResult {
                Data = lista, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
Ejemplo n.º 3
0
        public ActionResult Detalle(object id)
        {
            if (Session["Login-Info"] == null)
            {
                return(this.RedirectToAction("Login", "Account"));
            }

            if (this.Request.IsAuthenticated)
            {
                if (Session["Login-Info"] != null)
                {
                    var user = ((Entity.Util.ReturnObject <Usuario>)Session["Login-Info"]).OneResult;

                    if (!ConstantesWeb.Rol.Docente.Equals(user.Rol))
                    {
                        return(this.RedirectToAction("Index", "Home"));
                    }
                }

                try
                {
                    var    intencionModel = new IntentoModel();
                    string strId          = Convert.ToString(id);

                    if (strId.Equals("NEW"))
                    {
                        intencionModel.Id            = "NEW";
                        intencionModel.FechaCreacion = ConvertidorUtil.FormatearFechaHora(DateTime.Now);
                    }
                    else
                    {
                        if (!string.IsNullOrEmpty(strId))
                        {
                            var idIntencion = id + string.Empty;
                            intencionModel = new Dialogflow.DialogFlow(oIBLSolicitud).ObtenerIntento(idIntencion);
                        }

                        if (string.IsNullOrEmpty(intencionModel.Id))
                        {
                            return(this.RedirectToAction("Index", "BaseAcademico"));
                        }
                    }

                    return(View("Detalle", intencionModel));
                }
                catch (Exception ex)
                {
                    return(this.RedirectToAction("Index", "BaseAcademico"));
                }
            }
            else
            {
                return(this.RedirectToAction("Login", "Account"));
            }
        }
Ejemplo n.º 4
0
        public JsonResult EliminarIntencion(string id)
        {
            var resultado = new AlertModel();

            try
            {
                if (!string.IsNullOrEmpty(id))
                {
                    var intencion = new Intencion();
                    intencion.IdDialogFlow = id;
                    resultado = new Dialogflow.DialogFlow(oIBLSolicitud).DeleteIntent(intencion);
                }
            }
            catch (Exception ex)
            {
            }

            return(new JsonResult {
                Data = resultado, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
Ejemplo n.º 5
0
        public JsonResult ActualizarIntencion(string id, string nombreIntencion, string frases, string respuesta, string idIntencionPadre)
        {
            var resultado = new AlertModel();

            try
            {
                if (!string.IsNullOrEmpty(id))
                {
                    if (id.Equals("NEW"))
                    {
                        var intencion = new Intencion();
                        intencion.IdDialogFlow     = id;
                        intencion.Nombre           = nombreIntencion;
                        intencion.Respuesta        = respuesta;
                        intencion.IdIntencionPadre = idIntencionPadre;

                        var frases_ = JsonConvert.DeserializeObject <List <FraseEntrenamientoModel> >(frases);
                        resultado = new Dialogflow.DialogFlow(oIBLSolicitud).CreateIntent(intencion, frases_);
                    }
                    else
                    {
                        var intencion = new Intencion();
                        intencion.IdDialogFlow     = id;
                        intencion.Respuesta        = respuesta;
                        intencion.IdIntencionPadre = idIntencionPadre;

                        var frases_ = JsonConvert.DeserializeObject <List <FraseEntrenamientoModel> >(frases);
                        resultado = new Dialogflow.DialogFlow(oIBLSolicitud).UpdateIntent(intencion, frases_);
                    }
                }
            }
            catch (Exception ex)
            {
            }

            return(new JsonResult {
                Data = resultado, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
Ejemplo n.º 6
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public JsonResult ConsultarIntenciones(string intencionPadre, string fraseEntrena, string respuesta, string fechaInicio, string fechaFin)
        {
            var lista         = new List <IntentoModel>();
            var listaAuxFecha = new List <IntentoModel>();
            var listaAuxFrase = new List <IntentoModel>();

            lista = new Dialogflow.DialogFlow(oIBLSolicitud).ObtenerIntentos();

            if (!string.IsNullOrEmpty(respuesta))
            {
                lista = lista.Where(q => q.Respuesta.ToUpper().Contains(respuesta.ToUpper())).ToList();
            }

            if (!string.IsNullOrEmpty(intencionPadre))
            {
                lista = lista.Where(q =>

                                    (q.IdIntencionPadre != null && q.IdIntencionPadre.ToUpper().Equals(intencionPadre.ToUpper())) ||
                                    (q.IdIntencionPadre.Equals("0") && q.IdIntencionConsulta.Equals(intencionPadre))

                                    ).ToList();
            }

            //-------------------------------------------------------------------------------------------------------------
            DateTime?dtFechaInicio = (fechaInicio.Length > 0) ? ConvertidorUtil.ConvertirDateTimeShort(fechaInicio) : null;
            DateTime?dtFechaFin    = (fechaFin.Length > 0) ? ConvertidorUtil.ConvertirDateTimeShort(fechaFin) : null;
            DateTime dtFchFin;

            if (dtFechaInicio != null && dtFechaFin != null)
            {
                dtFchFin = dtFechaFin.GetValueOrDefault();
                var nuevaFchFin = dtFchFin.AddDays(1);

                foreach (var intentoModel in lista)
                {
                    if (intentoModel.DtFechaCreacion >= dtFechaInicio && intentoModel.DtFechaCreacion <= nuevaFchFin)
                    {
                        listaAuxFecha.Add(intentoModel);
                    }
                }

                lista = listaAuxFecha;
            }

            //-------------------------------------------------------------------------------------------------------------
            if (!string.IsNullOrEmpty(fraseEntrena))
            {
                var contieneFrase = false;
                foreach (var intentoModel in lista)
                {
                    foreach (var frase in intentoModel.FrasesEntrenamiento)
                    {
                        if (frase.Descripcion.Contains(fraseEntrena))
                        {
                            contieneFrase = true;
                        }
                    }
                    if (contieneFrase)
                    {
                        listaAuxFrase.Add(intentoModel);
                        contieneFrase = false;
                    }
                }

                lista = listaAuxFrase;
            }

            return(new JsonResult {
                Data = lista, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
Ejemplo n.º 7
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="idSolicitud"></param>
        /// <param name="solucion"></param>
        /// <returns></returns>
        public JsonResult EnviarSolucionSolicitud(
            string idSolicitud,
            string intencionPadre,
            string solucion,
            string accion,
            string nombreIntencion,
            string frase1,
            string frase2,
            string solucionIntencion,
            string curso,
            string actividad,
            string idDialogFlow)
        {
            var respuesta = string.Empty;

            try
            {
                if (accion.Equals("NEW"))
                {
                    var intencion = new Intencion();
                    intencion.IdDialogFlow = "NEW";


                    intencion.Nombre           = nombreIntencion;
                    intencion.Respuesta        = solucionIntencion;
                    intencion.IdIntencionPadre = intencionPadre;

                    var frases_ = new List <FraseEntrenamientoModel>();
                    frases_.Add(new FraseEntrenamientoModel {
                        Descripcion = frase1
                    });
                    frases_.Add(new FraseEntrenamientoModel {
                        Descripcion = frase2
                    });
                    var resultado = new Dialogflow.DialogFlow(oIBLSolicitud).CreateIntent(intencion, frases_);
                }

                if (accion.Equals("EDIT"))
                {
                    var intencion = new Intencion();
                    intencion.IdDialogFlow     = idDialogFlow;
                    intencion.Respuesta        = respuesta;
                    intencion.IdIntencionPadre = intencionPadre;

                    var frases_ = new List <FraseEntrenamientoModel>();
                    frases_.Add(new FraseEntrenamientoModel {
                        Descripcion = frase1
                    });
                    frases_.Add(new FraseEntrenamientoModel {
                        Descripcion = frase2
                    });
                    var resultado = new Dialogflow.DialogFlow(oIBLSolicitud).UpdateIntent(intencion, frases_);
                }

                var solicitud = new Solicitud();
                solicitud.IdSolicitud = ConvertidorUtil.ConvertirInt32(idSolicitud);
                solicitud.Solucion    = solucion;

                var objResult    = oIBLSolicitud.EnviarSolucionSolicitud(solicitud);
                var notificacion = objResult.OneResult;

                if (notificacion != null)
                {
                    var email     = new EmailUtil();
                    var sendEmail = email.NotificarSolucionConsultaAcademica(notificacion);

                    if (sendEmail)
                    {
                        respuesta = "SEND_EMAIL_OK";
                    }
                }
            }
            catch (Exception ex)
            {
            }

            return(new JsonResult {
                Data = respuesta, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }