private async Task <DialogTurnResult> SetConfirmarDatos(WaterfallStepContext stepContext, CancellationToken cancellationToken) { stepContext.Values["nu_area"] = Convert.ToString(stepContext.Result); stepContext.Values["no_area"] = Convert.ToString(stepContext.Result); // Obtiene la información del contribuyente ContribuyenteClient contribuyenteClient = new ContribuyenteClient(); var result = contribuyenteClient.GetAsync(Globales.id_contribuyente, Globales.no_token); if (result.error_number == 0) { stepContext.Values["no_contribuyente"] = result.Data.no_contribuyente; stepContext.Values["co_tipo_persona"] = result.Data.co_tipo_persona; stepContext.Values["no_tipo_persona"] = result.Data.no_tipo_persona; stepContext.Values["co_documento_identidad"] = result.Data.co_documento_identidad; stepContext.Values["nu_documento_identidad"] = result.Data.nu_documento_identidad; stepContext.Values["nu_telefono"] = result.Data.nu_telefono; stepContext.Values["no_direccion_contribuyente"] = result.Data.no_direccion; stepContext.Values["no_correo_electronico"] = result.Data.no_correo_electronico; var dataJson = JsonConvert.SerializeObject(stepContext.Values); // Mostrar Información ingresada AdaptiveCardList adaptiveCardLicencia = new AdaptiveCardList(); var nameCard = adaptiveCardLicencia.CreateAttachment(6, dataJson); await stepContext.Context.SendActivityAsync(MessageFactory.Attachment(nameCard), cancellationToken); await Task.Delay(500); // Mostrar Opciones string[] ListOptions = new string[] { "Confirmar Información", "Rechazar Información", }; var options = ListOptions.ToList(); var promptOptions = new PromptOptions { Prompt = MessageFactory.Text("Por favor revisa la información que has ingresado y luego selecciona una opción:"), Choices = ChoiceFactory.ToChoices(options), Style = ListStyle.List }; return(await stepContext.PromptAsync(nameof(ChoicePrompt), promptOptions, cancellationToken)); } else { await Task.Delay(500); await stepContext.Context.SendActivityAsync(MessageFactory.Text(result.error_message), cancellationToken); return(await stepContext.EndDialogAsync(cancellationToken : cancellationToken)); } }
private async Task <DialogTurnResult> EndDialog(WaterfallStepContext stepContext, CancellationToken cancellationToken) { var stepContextResult = stepContext.Result.ToString(); JObject InfoCard = JObject.Parse(stepContextResult); string id = (string)InfoCard["id"]; if (id == "LoginCardAceptar") { string co_documento_identidad = (string)InfoCard["cboTipoDocumento"]; string nu_documento_identidad = (string)InfoCard["txtNumeroDocumento"]; string no_contrasena = Funciones.GetSHA256(InfoCard["txtContrasena"].ToString()); ContribuyenteClient contribuyenteClient = new ContribuyenteClient(); var result = contribuyenteClient.GetLoginAsync(Globales.id_empresa, co_documento_identidad, nu_documento_identidad, no_contrasena); if (result.error_number == 0) { Globales.OnSesion = true; Globales.id_contribuyente = result.Data.id_contribuyente; Globales.no_contribuyente = result.Data.no_contribuyente; await stepContext.Context.SendActivityAsync(MenuBot.Buttons(0, $"Hola {Globales.no_contribuyente}, en que te puedo ayudar?"), cancellationToken); } else { Globales.OnSesion = false; Globales.id_contribuyente = 0; Globales.no_token = string.Empty; Globales.no_contribuyente = string.Empty; await stepContext.Context.SendActivityAsync(MenuBot.Buttons(0, $"{result.error_message}"), cancellationToken); } } else { await stepContext.Context.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); } /* * var promptOptions = new PromptOptions * { * Prompt = MessageFactory.Text(value) * }; * return await stepContext.PromptAsync(nameof(TextPrompt), promptOptions, cancellationToken); */ //await stepContext.Context.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); //return await stepContext.EndDialogAsync(cancellationToken: cancellationToken); //await stepContext.Context.SendActivityAsync($"INPUT: {stepContext.Result}"); return(await stepContext.NextAsync()); }