public void AsignarCita() { ISchedulingPetitionsRepository petRepository = new SchedulingPetitionsRepository(); SchedulingPetitionsService petService = new SchedulingPetitionsService(); IAuthenticationRepository authRepository = new AuthenticationRepository(); AuthenticationService authService = new AuthenticationService(); string token = authService.RefreshToken(authRepository, "3194198375", "CC79880800", "alvaroposada"); Dictionary <string, string> values = new Dictionary <string, string>() { { "espacioCita", "10782925" }, { "tipoId", "CC" }, { "numId", "79880800" }, { "centroMedico", "55983" }, { "medico", "2355" }, { "especialidad", "172" }, { "telefono", "000" }, { "correo", "" }, { "celular", "3134846707" }, { "token", token } }; string res = petService.AsignarCita(petRepository, values, "alvaroprueba"); Assert.IsNotNull(res); }
public void AsignarCita(string idConv, string numDoc, string tipoDoc, string numeroCelular, string token) { ILocalQueriesRepository repo = new LocalQueriesRepository(); ISchedulingPetitionsRepository sRepo = new SchedulingPetitionsRepository(); LocalQueriesService serv = new LocalQueriesService(); SchedulingPetitionsService sServ = new SchedulingPetitionsService(); AuthenticationApp aApp = new AuthenticationApp(); LogApp log = new LogApp(); string identificacion = tipoDoc + numDoc; dynamic infoCita = serv.GetInfoAsignarCita(repo, idConv); string telefono = String.IsNullOrEmpty(infoCita.telefono) ?"": infoCita.telefono; string celular = String.IsNullOrEmpty(infoCita.celular)?"": infoCita.celular; bool resultAgendamiento; dynamic res; string detalle; string resultadoAsig; string estado; Dictionary <string, string> values = new Dictionary <string, string>() { { "espacioCita", infoCita.numEspacioCita.ToString() }, { "tipoId", infoCita.tipoIdBeneficiario }, { "numId", infoCita.numIdBeneficiario.ToString() }, { "centroMedico", infoCita.centroMedico.ToString() }, { "medico", infoCita.idMedico.ToString() }, { "especialidad", infoCita.especialidad.ToString() }, { "telefono", telefono }, { "correo", infoCita.correo }, { "celular", celular }, { "token", token } }; resultadoAsig = sServ.AsignarCita(sRepo, values, idConv); if (resultadoAsig == "error_token") { string nToken = aApp.RefreshToken(numeroCelular, identificacion, idConv); if (nToken != "error_credenciales" && nToken != "error_parametros" && nToken != "error_desconocido") { values.Remove("token"); values.Add("token", nToken); resultadoAsig = sServ.AsignarCita(sRepo, values, idConv); } else { resultadoAsig = nToken; } } serv.UpdateCitaBd(repo, idConv, "agendamiento", resultadoAsig); if (resultadoAsig != "error_credenciales" && resultadoAsig != "error_parametros" && resultadoAsig != "error_desconocido" && resultadoAsig != "error_token") { res = JToken.Parse(resultadoAsig); string msj = res.Mensaje; string numConfirm = res.Numconfirmacion; string valorPagar = res.Valor; if (!string.IsNullOrEmpty(numConfirm)) { resultAgendamiento = true; detalle = "Cita agendada"; estado = "agendada"; serv.UpdateCitaBd(repo, idConv, "valorPagar", valorPagar); serv.UpdateCitaBd(repo, idConv, "idCita", numConfirm); } else if (!string.IsNullOrEmpty(msj)) { resultAgendamiento = false; estado = "error_agendamiento"; detalle = res.Mensaje; } else { resultAgendamiento = false; estado = "error_desconocido"; detalle = resultadoAsig; } } else { resultAgendamiento = false; estado = resultadoAsig; detalle = resultadoAsig; } Dictionary <string, object> paramLog = new Dictionary <string, object>() { { "tipoTransaccion", "agendamiento" }, { "fechaTransaccion", Convert.ToDateTime(string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now)) }, { "exitoso", resultAgendamiento }, { "detalle", detalle }, { "sessionId", idConv }, { "celular", numeroCelular }, { "traza", "log" } }; log.GuardarLogCitaAgendada(paramLog); serv.SaveCitaNoTemp(repo, idConv, (int)infoCita.numEspacioCita, "agendamiento", estado); }