Exemple #1
0
        public IHttpActionResult ProcesarCitasBeneficiario([FromBody] dynamic request)
        {
            string[] sessionId         = request["sessionId"].ToString().Split('*');
            string   numeroCelular     = utilidad.GetNumero(sessionId[1]);
            string   numDoc            = request["numDoc"];
            string   tipoDoc           = request["tipoDoc"];
            string   idConv            = sessionId[0];
            string   token             = request["token"];
            string   idUsuario         = request["idUsuario"];
            SchedulingPetitionsApp app = new SchedulingPetitionsApp();

            app.ProcesarCitasBeneficiario(numDoc, tipoDoc, token, idConv, numeroCelular, idUsuario);
            LocalQueriesApp         appLq = new LocalQueriesApp();
            List <CitaBeneficiario> citas = appLq.GetCitasBeneficiario(sessionId[0]);
            Replay respuesta = new Replay()
            {
                Status = citas.Count > 0 ? "ok" : "empty",
                Info   = new Dictionary <string, object> {
                    { "data", citas }
                },
                IdConv = request["sessionId"]
            };

            return(Json(respuesta));
        }
        public IHttpActionResult LevantarApp()
        {
            LocalQueriesApp        app  = new LocalQueriesApp();
            SchedulingPetitionsApp appS = new SchedulingPetitionsApp();

            app.QueryDummy();
            appS.DummyPetition();
            Replay respuesta = new Replay()
            {
                Status = "ok",
            };

            return(Json(respuesta));
        }
        public IHttpActionResult AsignarCita([FromBody] dynamic request)
        {
            LocalQueriesApp app      = new LocalQueriesApp();
            Utilities       utilidad = new Utilities();

            string[] sessionId     = request["sessionId"].ToString().Split('*');
            string   idConv        = sessionId[0];
            string   numeroCelular = utilidad.GetNumero(sessionId[1]);
            string   tipoDoc       = request["tipoDoc"];
            string   numDoc        = request["numDoc"];
            string   token         = request["token"];

            app.AsignarCita(idConv, numDoc, tipoDoc, numeroCelular, token);
            return(GetInfoCitaAgendada(request));
        }
        public IHttpActionResult LimpiarTablas([FromBody] dynamic request)
        {
            LocalQueriesApp app = new LocalQueriesApp();

            string[] sessionId = request["sessionId"].ToString().Split('*');
            string   idConv    = sessionId[0];
            Boolean  res       = app.LimpiarTablas(idConv);
            Replay   respuesta = new Replay()
            {
                IdConv = idConv,
                Status = res ? "ok" : "error"
            };

            return(Json(respuesta));
        }
        public IHttpActionResult UpdateEspecialidadCita([FromBody] dynamic request)
        {
            LocalQueriesApp app = new LocalQueriesApp();

            string[] sessionId    = request["sessionId"].ToString().Split('*');
            string   idConv       = sessionId[0];
            string   especialidad = request["especialidad"];
            Boolean  res          = app.UpdateCitaBd(idConv, "especialidad", especialidad);
            Replay   respuesta    = new Replay()
            {
                IdConv = idConv,
                Status = res ? "ok" : "error"
            };

            return(Json(respuesta));
        }
        public IHttpActionResult UpdateDocumentoCitaBd([FromBody] dynamic request)
        {
            LocalQueriesApp app = new LocalQueriesApp();

            string[] sessionId = request["sessionId"].ToString().Split('*');
            string   idConv    = sessionId[0];
            string   documento = request["tipoDoc"] + "*" + request["numDoc"];
            Boolean  res       = app.UpdateCitaBd(idConv, "documento", documento);
            Replay   respuesta = new Replay()
            {
                IdConv = idConv,
                Status = res ? "ok" : "error"
            };

            return(Json(respuesta));
        }
        public IHttpActionResult GetCitasBeneficiario([FromBody] dynamic request)
        {
            LocalQueriesApp app = new LocalQueriesApp();

            string[] sessionId            = request["sessionId"].ToString().Split('*');
            List <CitaBeneficiario> citas = app.GetCitasBeneficiario(sessionId[0]);
            Replay respuesta = new Replay()
            {
                Status = citas.Count > 0 ? "ok" : "empty",
                Info   = new Dictionary <string, object> {
                    { "data", citas }
                },
                IdConv = sessionId[0]
            };

            return(Json(respuesta));
        }
        public IHttpActionResult GetCentrosMedicos([FromBody] dynamic request)
        {
            LocalQueriesApp app = new LocalQueriesApp();

            string[]          sessionId = request["sessionId"].ToString().Split('*');
            List <GlobalResp> cms       = app.GetCentrosMedicos(sessionId[0]);
            Replay            respuesta = new Replay()
            {
                Status = cms.Count > 0 ? "ok" : "empty",
                Info   = new Dictionary <string, object> {
                    { "data", cms }
                },
                IdConv = sessionId[0]
            };

            return(Json(respuesta));
        }
        public IHttpActionResult GetCiudadesBeneficiario([FromBody] dynamic request)
        {
            LocalQueriesApp app = new LocalQueriesApp();

            string[]      sessionId = request["sessionId"].ToString().Split('*');
            int           idUsuario = request["idUsuario"];
            List <Ciudad> cius      = app.GetCiudadesBeneficiario(idUsuario, sessionId[0]);
            Replay        respuesta = new Replay()
            {
                Status = !(cius is null) ? "ok" : "empty",
                Info   = new Dictionary <string, object> {
                    { "data", cius }
                },
                IdConv = sessionId[0]
            };

            return(Json(respuesta));
        }
        public IHttpActionResult GetBeneficiariosContratos([FromBody] dynamic request)
        {
            LocalQueriesApp app = new LocalQueriesApp();

            string[]            sessionId  = request["sessionId"].ToString().Split('*');
            string              idContrato = request["idContrato"];
            ResultBeneficiarios bens       = app.GetBeneficiariosContrato(idContrato, sessionId[0]);
            Replay              respuesta  = new Replay()
            {
                Status = bens.Beneficiarios.Count > 0 ? "ok" : "empty",
                Info   = new Dictionary <string, object> {
                    { "data", bens }
                },
                IdConv = sessionId[0]
            };

            return(Json(respuesta));
        }
        public IHttpActionResult ProcesarCancelacionCita([FromBody] dynamic request)
        {
            LocalQueriesApp app      = new LocalQueriesApp();
            Utilities       utilidad = new Utilities();

            string[] sessionId                  = request["sessionId"].ToString().Split('*');
            string   idConv                     = sessionId[0];
            string   numeroCelular              = utilidad.GetNumero(sessionId[1]);
            string   numDocConv                 = request["numDoc"];
            string   tipoDocConv                = request["tipoDoc"];
            string   identificacionCotizante    = request["tipoDocCotizante"] + request["numDocCotizante"];
            string   identificacionBeneficiario = request["tipoDocBeneficiario"] + request["numDocBeneficiario"];
            string   token  = request["token"];
            int      idCita = request["idCita"];

            app.CancelarCitaBeneficiario(idConv, numDocConv, tipoDocConv, identificacionBeneficiario, identificacionCotizante, idCita, numeroCelular, token);
            return(GetEstadoCancelacionCita(request));
        }
        public IHttpActionResult GetInfoCitaBeneficiario([FromBody] dynamic request)
        {
            LocalQueriesApp app = new LocalQueriesApp();

            string[]         sessionId = request["sessionId"].ToString().Split('*');
            int              idCita    = request["idCita"];
            CitaBeneficiario cita      = app.GetInfoCitaBeneficiario(sessionId[0], idCita);
            Replay           respuesta = new Replay()
            {
                Status = cita != null  ? "ok" : "empty",
                Info   = new Dictionary <string, object> {
                    { "data", cita }
                },
                IdConv = sessionId[0]
            };

            return(Json(respuesta));
        }
        public IHttpActionResult GetInfoCita([FromBody] dynamic request)
        {
            LocalQueriesApp app = new LocalQueriesApp();

            string[] sessionId = request["sessionId"].ToString().Split('*');
            string   idConv    = sessionId[0];
            dynamic  res       = app.GetInfoCita(idConv);
            Replay   respuesta = new Replay()
            {
                IdConv = idConv,
                Status = res != "" ? "ok" : "error",
                Info   = new Dictionary <string, object> {
                    { "data", res }
                }
            };

            return(Json(respuesta));
        }
        public IHttpActionResult GetEstadoCancelacionCita([FromBody] dynamic request)
        {
            LocalQueriesApp app       = new LocalQueriesApp();
            Replay          respuesta = new Replay();

            string[] sessionId = request["sessionId"].ToString().Split('*');
            string   idConv    = sessionId[0];
            int      idCita    = (int)request["idCita"];

            respuesta.IdConv = idConv;
            string res = app.GetEstadoCancelacion(idConv, idCita);

            if (string.IsNullOrEmpty(res))
            {
                respuesta.Status = "processing";
            }
            else if (res != "error_credenciales" && res != "error_parametros" && res != "error_desconocido" && res.Length > 15)
            {
                dynamic jsonRes = JObject.Parse(res);
                if (jsonRes.Resultado == "1")
                {
                    respuesta.Status = "ok";
                }
                else
                {
                    respuesta.Status = "error_cancelar";
                }
                respuesta.Message = jsonRes.Mensaje;
                respuesta.Info.Add("data", jsonRes.Resultado);
            }
            else
            {
                respuesta.Status = "error";
                respuesta.Info.Add("data", res);
            }
            return(Json(respuesta));
        }
        public IHttpActionResult GetInfoCitaAgendada([FromBody] dynamic request)
        {
            LocalQueriesApp app = new LocalQueriesApp();

            string[] sessionId = request["sessionId"].ToString().Split('*');
            string   idConv    = sessionId[0];
            dynamic  res       = app.GetInfoCitaAgendada(idConv);
            string   resultCita;
            string   status;
            string   statusCita = "processing";
            dynamic  resultEncode;

            if (res.estado == 0)
            {
                status       = "processing";
                resultEncode = "";
            }
            else if (res.estado == 1)
            {
                status     = "completed";
                resultCita = res.result;
                if (resultCita.Substring(0, 5) == "error")
                {
                    statusCita   = resultCita;
                    resultEncode = resultCita;
                }
                else
                {
                    resultEncode = JToken.Parse(resultCita);
                    if (resultEncode.Mensaje.ToString() == "Ha alcanzado el máximo número de citas a agendar para esta especialidad")
                    {
                        statusCita = "maximo_alcanzado";
                    }
                    else if (resultEncode.Mensaje.ToString() == "Cita No Disponible")
                    {
                        statusCita = "cita_no_disponible";
                    }
                    else if (!string.IsNullOrEmpty(resultEncode.Numconfirmacion.ToString()))
                    {
                        statusCita = "ok";
                    }
                    else
                    {
                        statusCita = "error_agendamiento";
                    }
                }
            }
            else
            {
                status = "error"; resultEncode = "";
            }


            Replay respuesta = new Replay()
            {
                IdConv = idConv,
                Status = status,
                Info   = new Dictionary <string, object> {
                    { "data", resultEncode }, { "statusCita", statusCita }, { "numEspacioCita", res.numEspacioCita }
                }
            };

            return(Json(respuesta));
        }