public int VerificarRUC(ContribuyenteDTO contribuyenteDTO) { SunatCliente sunatClient = new SunatCliente(); var result = sunatClient.GetSunatAsync(contribuyenteDTO.nu_documento_identidad); int error_number = 0; switch (result.coResultado) { case "0000": if (result.sunatDatos.ddp_numruc is null) { error_number = -1; } else { if (contribuyenteDTO.no_razon_social.Trim().ToUpper() != result.sunatDatos.ddp_nombre.Trim().ToUpper()) { error_number = -2; } } break; case "9999": error_number = 9999; break; } ; return(error_number); }
public Response <DataJsonDTO> GetJsonAsync(int id_contribuyente, string no_token) { var response = new Response <DataJsonDTO>(); ContribuyenteDTO contribuyente = new ContribuyenteDTO { id_contribuyente = id_contribuyente, no_token = no_token }; var json = JsonConvert.SerializeObject(contribuyente); var data = new StringContent(json, Encoding.UTF8, "application/json"); using (var client = new HttpClient()) { client.BaseAddress = new Uri("http://localhost:4020/api/"); client.DefaultRequestHeaders.Add("Authorization", "Bearer " + contribuyente.no_token); var responseTask = client.PostAsync("Contribuyente/GetJsonAsync", data); responseTask.Wait(); var result = responseTask.Result; var readTask = result.Content.ReadAsAsync <Response <DataJsonDTO> >(); readTask.Wait(); response = readTask.Result; } return(response); }
public Response <ContribuyenteDTO> GetLoginAsync(int id_empresa, string co_documento_identidad, string nu_documento_identidad, string no_contrasena) { var response = new Response <ContribuyenteDTO>(); ContribuyenteDTO contribuyente = new ContribuyenteDTO { id_empresa = id_empresa, co_documento_identidad = co_documento_identidad, nu_documento_identidad = nu_documento_identidad, no_contrasena = no_contrasena, no_token = Globales.no_token }; var json = JsonConvert.SerializeObject(contribuyente); var data = new StringContent(json, Encoding.UTF8, "application/json"); using (var client = new HttpClient()) { client.BaseAddress = new Uri("http://localhost:4020/api/"); client.DefaultRequestHeaders.Add("Authorization", "Bearer " + Globales.no_token); var responseTask = client.PostAsync("Contribuyente/GetLoginAsync", data); responseTask.Wait(); var result = responseTask.Result; var readTask = result.Content.ReadAsAsync <Response <ContribuyenteDTO> >(); readTask.Wait(); if (result.IsSuccessStatusCode) { response = readTask.Result; } else { switch ((int)result.StatusCode) { case 401: response.error_number = (int)result.StatusCode; response.error_message = "Su sesión ha expirado, vuelva a iniciar sesión"; break; case 404: response = readTask.Result; response.error_number = (int)result.StatusCode; response.error_message = response.error_message; break; default: response.error_number = -1; response.error_message = "Sucedió un error, vuelva a intentarlo."; break; } } } return(response); }
public IActionResult GetAll([FromBody] ContribuyenteDTO contribuyenteDTO) { var response = _contribuyenteApplication.GetAll(contribuyenteDTO); if (response.IsSuccess) { return(Ok(response)); } return(BadRequest(response)); }
public async Task <IActionResult> GetAllAsync([FromBody] ContribuyenteDTO contribuyenteDTO) { var response = await _contribuyenteApplication.GetAllAsync(contribuyenteDTO); if (response.IsSuccess) { return(Ok(response)); } return(BadRequest(response)); }
public ResponseQuery Delete(ContribuyenteDTO contribuyenteDTO) { ResponseQuery responseQuery = new ResponseQuery(); try { var contribuyente = _mapper.Map <Contribuyente>(contribuyenteDTO); responseQuery = _contribuyenteDomain.Delete(contribuyente); } catch (Exception e) { responseQuery.error_number = -1; responseQuery.error_message = e.Message; } return(responseQuery); }
public async Task <ResponseQuery> UpdateAsync(ContribuyenteDTO contribuyenteDTO) { ResponseQuery responseQuery = new ResponseQuery(); try { var contribuyente = _mapper.Map <Contribuyente>(contribuyenteDTO); responseQuery = await _contribuyenteDomain.UpdateAsync(contribuyente); } catch (Exception e) { responseQuery.error_number = -1; responseQuery.error_message = e.Message; } return(responseQuery); }
public async Task <IActionResult> GetLoginAsync([FromBody] ContribuyenteDTO contribuyenteDTO) { var response = await _contribuyenteApplication.GetLoginAsync(contribuyenteDTO.id_empresa, contribuyenteDTO.co_documento_identidad, contribuyenteDTO.nu_documento_identidad, contribuyenteDTO.no_contrasena); if (response.IsSuccess) { if (response.Data.error_number == 0) { response.Data.no_token = BuildToken(response); return(Ok(response)); } else { return(NotFound(response)); } } return(BadRequest(response)); }
public IActionResult Delete([FromBody] ContribuyenteDTO contribuyenteDTO) { ResponseQuery responseQuery = new ResponseQuery(); if (contribuyenteDTO.id_contribuyente == 0) { responseQuery.error_number = -1; responseQuery.error_message = "id_contribuyente no puede ser cero"; return(BadRequest(responseQuery)); } responseQuery = _contribuyenteApplication.Delete(contribuyenteDTO); if (responseQuery.error_number == 0) { return(Ok(responseQuery)); } return(BadRequest(responseQuery)); }
public IActionResult Update([FromBody] ContribuyenteDTO contribuyenteDTO) { ResponseQuery responseQuery = new ResponseQuery(); if (contribuyenteDTO == null) { responseQuery.error_number = -1; responseQuery.error_message = "contribuyenteDTO no puede ser nulo."; return(BadRequest(responseQuery)); } responseQuery = _contribuyenteApplication.Update(contribuyenteDTO); if (responseQuery.error_number == 0) { return(Ok(responseQuery)); } return(BadRequest(responseQuery)); }
public ResponseQuery DeletetAsync(ContribuyenteDTO contribuyente) { ResponseQuery responseQuery = new ResponseQuery(); var json = JsonConvert.SerializeObject(contribuyente); var data = new StringContent(json, Encoding.UTF8, "application/json"); using (var client = new HttpClient()) { client.BaseAddress = new Uri("http://localhost:4020/api/"); var responseTask = client.PutAsync("Contribuyente/DeleteAsync", data); responseTask.Wait(); var result = responseTask.Result; var readTask = result.Content.ReadAsAsync <ResponseQuery>(); readTask.Wait(); responseQuery = readTask.Result; } return(responseQuery); }
public async Task <IActionResult> InsertAsync([FromBody] ContribuyenteDTO contribuyenteDTO) { ResponseQuery responseQuery = new ResponseQuery(); if (contribuyenteDTO == null) { responseQuery.error_number = -1; responseQuery.error_message = "contribuyenteDTO no puede ser nulo."; return(BadRequest(responseQuery)); } responseQuery = await _contribuyenteApplication.InsertAsync(contribuyenteDTO); if (responseQuery.error_number == 0) { return(Ok(responseQuery)); } return(BadRequest(responseQuery)); }
public async Task <Response <IEnumerable <ContribuyenteDTO> > > GetAllAsync(ContribuyenteDTO contribuyenteDTO) { var response = new Response <IEnumerable <ContribuyenteDTO> >(); try { var contribuyente = _mapper.Map <Contribuyente>(contribuyenteDTO); var contribuyentes = await _contribuyenteDomain.GetAllAsync(contribuyente); response.Data = _mapper.Map <IEnumerable <ContribuyenteDTO> >(contribuyentes); if (response.Data != null) { response.IsSuccess = true; response.error_message = "Consulta Exitosa!!!"; } } catch (Exception e) { response.error_message = e.Message; } return(response); }
public IActionResult Get([FromBody] ContribuyenteDTO contribuyenteDTO) { if (contribuyenteDTO.id_contribuyente == 0) { return(BadRequest()); } var response = _contribuyenteApplication.Get(contribuyenteDTO.id_contribuyente); if (response.IsSuccess) { if (response.Data.error_number == 0) { return(Ok(response)); } else { return(NotFound(response)); } } return(BadRequest(response)); }
public async Task <IActionResult> GetJsonAsync([FromBody] ContribuyenteDTO contribuyenteDTO) { if (contribuyenteDTO.id_contribuyente == 0) { return(BadRequest()); } var response = await _contribuyenteApplication.GetJsonAsync(contribuyenteDTO.id_contribuyente); if (response.IsSuccess) { if (response.error_number == 0) { return(Ok(response)); } else { return(NotFound(response)); } } return(BadRequest(response)); }
public Response <ContribuyenteDTO> GetLoginAsync(string co_documento_identidad, string nu_documento_identidad, string no_contrasena) { var response = new Response <ContribuyenteDTO>(); ContribuyenteDTO contribuyente = new ContribuyenteDTO { co_documento_identidad = co_documento_identidad, nu_documento_identidad = nu_documento_identidad, no_contrasena = no_contrasena }; var json = JsonConvert.SerializeObject(contribuyente); var data = new StringContent(json, Encoding.UTF8, "application/json"); using (var client = new HttpClient()) { client.BaseAddress = new Uri("http://localhost:4020/api/"); var responseTask = client.PostAsync("Contribuyente/GetLoginAsync", data); responseTask.Wait(); var result = responseTask.Result; if (result.IsSuccessStatusCode) { var readTask = result.Content.ReadAsAsync <Response <ContribuyenteDTO> >(); readTask.Wait(); response = readTask.Result; } else { var readTask = result.Content.ReadAsAsync <Response <ContribuyenteDTO> >(); readTask.Wait(); response = readTask.Result; } } return(response); }
public Response <IEnumerable <ContribuyenteDTO> > GetAll(ContribuyenteDTO contribuyenteDTO) { var response = new Response <IEnumerable <ContribuyenteDTO> >(); try { var contribuyente = _mapper.Map <Contribuyente>(contribuyenteDTO); var contribuyentes = _contribuyenteDomain.GetAll(contribuyente); response.Data = _mapper.Map <IEnumerable <ContribuyenteDTO> >(contribuyentes); if (response.Data != null) { response.IsSuccess = true; response.error_message = "Consulta Exitosa!!!"; _logger.LogInformation("Consulta Exitosa!!!"); } } catch (Exception e) { response.error_message = e.Message; _logger.LogError(e.Message); } return(response); }
public ResponseQuery DeletetAsync(ContribuyenteDTO contribuyente) { ResponseQuery responseQuery = new ResponseQuery(); var json = JsonConvert.SerializeObject(contribuyente); var data = new StringContent(json, Encoding.UTF8, "application/json"); using (var client = new HttpClient()) { client.BaseAddress = new Uri("http://localhost:4020/api/"); client.DefaultRequestHeaders.Add("Authorization", "Bearer " + Globales.no_token); var responseTask = client.PutAsync("Contribuyente/DeleteAsync", data); responseTask.Wait(); var result = responseTask.Result; var readTask = result.Content.ReadAsAsync <ResponseQuery>(); readTask.Wait(); if (result.IsSuccessStatusCode) { responseQuery = readTask.Result; } else { if ((int)result.StatusCode == 401) { responseQuery.error_number = (int)result.StatusCode; responseQuery.error_message = "Su sesión ha expirado, vuelva a iniciar sesión"; } else { responseQuery.error_number = -1; responseQuery.error_message = "Sucedió un error, vuelva a intentarlo."; } } } return(responseQuery); }
protected override async Task OnMessageActivityAsync(ITurnContext <IMessageActivity> turnContext, CancellationToken cancellationToken) { //Logger.LogInformation("Running dialog with Message Activity."); var GoMainDialog = true; if (turnContext.Activity.Type == ActivityTypes.Message) { var activity = turnContext.Activity; if (activity.Text != null && activity.Value == null) { switch (activity.Text) { case "Inicio": GoMainDialog = false; await turnContext.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); break; case "Iniciar Sesion": GoMainDialog = false; AdaptiveCardList adaptiveCardLogin = new AdaptiveCardList(); var loginCard = adaptiveCardLogin.CreateAttachment(2, ""); await turnContext.SendActivityAsync(MessageFactory.Attachment(loginCard), cancellationToken); await turnContext.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); break; case "Cerrar Sesion": GoMainDialog = false; string mensaje = Globales.no_contribuyente; Globales.OnSesion = false; Globales.id_contribuyente = 0; Globales.no_token = string.Empty; Globales.no_contribuyente = string.Empty; await turnContext.SendActivityAsync(MenuBot.Buttons(0, $"Has cerrado tu sesión {mensaje}, hasta pronto."), cancellationToken); break; case "Foto": GoMainDialog = false; if (Globales.OnSesion == false) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, $"Debe **Iniciar Sesión** para mostrar la {activity.Text}"), cancellationToken); } else { var result = contribuyenteClient.GetAsync(Globales.id_contribuyente, Globales.no_token); if (result.error_number == 0) { var DataJson = JsonConvert.SerializeObject(result.Data); AdaptiveCardList adaptiveCardLicencia = new AdaptiveCardList(); var ContribuyenteCard = adaptiveCardLicencia.CreateAttachment(8, DataJson); await turnContext.SendActivityAsync(MessageFactory.Attachment(ContribuyenteCard), cancellationToken); await turnContext.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); } else { await turnContext.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); } } break; case "Crear una cuenta": GoMainDialog = false; await turnContext.SendActivityAsync(MenuBot.Buttons(5, "Seleccione Tipo de Persona:"), cancellationToken); break; case "Crear Cuenta Persona Natural": GoMainDialog = false; AdaptiveCardList adaptiveCardNatural = new AdaptiveCardList(); var PersonaNaturalCard = adaptiveCardNatural.CreateAttachment(1, ""); await turnContext.SendActivityAsync(MessageFactory.Attachment(PersonaNaturalCard), cancellationToken); await Task.Delay(500); await turnContext.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); break; case "Crear Cuenta Persona Juridica": GoMainDialog = false; AdaptiveCardList adaptiveCardJuridica = new AdaptiveCardList(); var PersonaJuridicaCard = adaptiveCardJuridica.CreateAttachment(4, ""); await turnContext.SendActivityAsync(MessageFactory.Attachment(PersonaJuridicaCard), cancellationToken); await Task.Delay(500); await turnContext.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); break; case "Seleccionar Trámite": GoMainDialog = false; await turnContext.SendActivityAsync(MenuBot.Buttons(1, ""), cancellationToken); break; case "Trámite Licencia de Funcionamiento": GoMainDialog = false; await turnContext.SendActivityAsync(MenuBot.Buttons(2, ""), cancellationToken); break; case "Nuevo Trámite Licencia de Funcionamiento": if (Globales.OnSesion == false) { GoMainDialog = false; await turnContext.SendActivityAsync(MenuBot.Buttons(0, $"Debe **Iniciar Sesión** para realizar {activity.Text}"), cancellationToken); } break; case "Consultar Licencias de Funcionamiento": GoMainDialog = false; if (Globales.OnSesion == false) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, $"Debe **Iniciar Sesión** para realizar {activity.Text}"), cancellationToken); } else { // Obtiene la información del contribuyente var resultado = contribuyenteClient.GetJsonAsync(Globales.id_contribuyente, Globales.no_token); if (resultado.error_number == 0) { AdaptiveCardList adaptiveCardLicencia = new AdaptiveCardList(); var LicenciaCard = adaptiveCardLicencia.CreateAttachment(5, resultado.Data.no_data_json); await turnContext.SendActivityAsync(MessageFactory.Attachment(LicenciaCard), cancellationToken); await Task.Delay(500); await turnContext.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); } else { await Task.Delay(500); await turnContext.SendActivityAsync(MenuBot.Buttons(0, resultado.error_message), cancellationToken); } } break; case "Requisitos Licencia de Funcionamiento": GoMainDialog = true; await turnContext.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); break; case "Trámite Impuesto de Alcabala": GoMainDialog = false; await turnContext.SendActivityAsync(MenuBot.Buttons(3, ""), cancellationToken); break; case "Nuevo Trámite Impuesto de Alcabala": GoMainDialog = false; if (Globales.OnSesion == false) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, $"Debe **Iniciar Sesión** para realizar un {activity.Text}"), cancellationToken); } break; case "Consultar Trámites Impuesto de Alcabala": GoMainDialog = false; if (Globales.OnSesion == false) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, $"Debe **Iniciar Sesión** para realizar {activity.Text}"), cancellationToken); } break; case "Requisitos Impuesto de Alcabala": GoMainDialog = true; await turnContext.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); break; case "Trámite Impuesto Vehicular": GoMainDialog = false; await turnContext.SendActivityAsync(MenuBot.Buttons(4, ""), cancellationToken); break; case "Nuevo Trámite Impuesto Vehicular": GoMainDialog = false; if (Globales.OnSesion == false) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, $"Debe **Iniciar Sesión** para realizar {activity.Text}"), cancellationToken); } break; case "Consultar Trámites Impuesto Vehicular": GoMainDialog = false; if (Globales.OnSesion == false) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, $"Debe **Iniciar Sesión** para realizar {activity.Text}"), cancellationToken); } break; case "Requisitos Impuesto Vehicular": GoMainDialog = true; await turnContext.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); break; } } if (string.IsNullOrWhiteSpace(activity.Text) && activity.Value != null) { //activity.Text = JsonConvert.SerializeObject(activity.Value); JObject InfoCard = JObject.Parse(activity.Value.ToString()); string idCard = (string)InfoCard["id"]; switch (idCard) { case "LoginCard": GoMainDialog = false; if ( string.IsNullOrEmpty(InfoCard.GetValue("cboTipoDocumento").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtNumeroDocumento").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtContrasena").ToString())) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Ingrese documento de identidad/contraseña"), cancellationToken); } else { var co_documento_identidad = InfoCard.GetValue("cboTipoDocumento").ToString(); var nu_documento_identidad = InfoCard.GetValue("txtNumeroDocumento").ToString(); var no_contrasena = Funciones.GetSHA256(InfoCard.GetValue("txtContrasena").ToString()); var result = contribuyenteClient.GetLoginAsync(Globales.id_empresa, co_documento_identidad, nu_documento_identidad, no_contrasena); if (result.error_number == 0) { Globales.OnSesion = true; Globales.no_token = result.Data.no_token; Globales.id_contribuyente = result.Data.id_contribuyente; if (result.Data.co_tipo_persona == "0002") // 0002=Persona Juridica { Globales.no_contribuyente = result.Data.no_razon_social; } else { Globales.no_contribuyente = result.Data.no_nombres + ' ' + result.Data.no_apellido_paterno + ' ' + result.Data.no_apellido_materno; } await turnContext.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 turnContext.SendActivityAsync(MenuBot.Buttons(0, $"{result.error_message}"), cancellationToken); } } break; case "PersonaNaturalNewCard": GoMainDialog = false; if ( string.IsNullOrEmpty(InfoCard.GetValue("txtNombres").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtApellidoPaterno").ToString()) || // string.IsNullOrEmpty(InfoCard.GetValue("txtApellidoMaterno").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtFechaNacimiento").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("cboSexo").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("cboTipoDocumento").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtDocumentoIdentidad").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtCorreoElectronico").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtTelefono").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtDireccion").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtContrasena").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtVerificarContrasena").ToString()) ) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Todos los campos son obligatorios."), cancellationToken); } else { if (InfoCard.GetValue("txtContrasena").ToString() != InfoCard.GetValue("txtVerificarContrasena").ToString()) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Contraseña y Verificar Contraseña deben ser iguales."), cancellationToken); } else { ContribuyenteDTO contribuyenteDTO = new ContribuyenteDTO(); contribuyenteDTO.id_empresa = 1; contribuyenteDTO.no_nombres = InfoCard.GetValue("txtNombres").ToString(); contribuyenteDTO.no_apellido_paterno = InfoCard.GetValue("txtApellidoPaterno").ToString(); contribuyenteDTO.no_apellido_materno = InfoCard.GetValue("txtApellidoMaterno").ToString(); contribuyenteDTO.fe_nacimiento = InfoCard.GetValue("txtFechaNacimiento").ToString(); contribuyenteDTO.co_sexo = InfoCard.GetValue("cboSexo").ToString(); contribuyenteDTO.co_documento_identidad = InfoCard.GetValue("cboTipoDocumento").ToString(); contribuyenteDTO.nu_documento_identidad = InfoCard.GetValue("txtDocumentoIdentidad").ToString(); contribuyenteDTO.no_correo_electronico = InfoCard.GetValue("txtCorreoElectronico").ToString(); contribuyenteDTO.nu_telefono = InfoCard.GetValue("txtTelefono").ToString(); contribuyenteDTO.no_direccion = InfoCard.GetValue("txtDireccion").ToString(); contribuyenteDTO.no_contrasena = InfoCard.GetValue("txtContrasena").ToString(); contribuyenteDTO.no_contrasena_sha256 = Funciones.GetSHA256(InfoCard.GetValue("txtContrasena").ToString()); contribuyenteDTO.id_usuario_creacion = 2; // (2=Bot) // Verificar Informacion en RENIEC var numero = _reniecPIDE.VerificarDNI(contribuyenteDTO); switch (numero) { case 0: var result = contribuyenteClient.InsertAsync(contribuyenteDTO); if (result.error_number == 0) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Se ha creado su cuenta exitosamente."), cancellationToken); } else { await turnContext.SendActivityAsync(MenuBot.Buttons(0, $"{result.error_message}"), cancellationToken); } break; case -1: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Los datos ingresados no coinciden con la información de RENIEC."), cancellationToken); break; case 999: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "No se ha encontrado información para el número de DNI."), cancellationToken); break; case 1000: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Uno o más datos de la petición no son válidos."), cancellationToken); break; case 1001: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "El DNI, RUC y contraseña no corresponden a un usuario válido."), cancellationToken); break; case 1002: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "La contraseña para el DNI y RUC está caducada."), cancellationToken); break; case 1003: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Se ha alcanzado el límite de consultas permitidas por día."), cancellationToken); break; case 1999: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Error desconocido / inesperado."), cancellationToken); break; default: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Sucedió un problema, intente otra vez."), cancellationToken); break; } } } break; case "PersonaJuridicaNewCard": GoMainDialog = false; if ( string.IsNullOrEmpty(InfoCard.GetValue("txtRazonSocial").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtRepresentanteLegal").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("cboTipoDocumento").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtDocumentoIdentidad").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtCorreoElectronico").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtTelefono").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtDireccion").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtContrasena").ToString()) || string.IsNullOrEmpty(InfoCard.GetValue("txtVerificarContrasena").ToString()) ) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Todos los campos son obligatorios."), cancellationToken); } else { if (InfoCard.GetValue("txtContrasena").ToString() != InfoCard.GetValue("txtVerificarContrasena").ToString()) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Contraseña y Verificar Contraseña deben ser iguales."), cancellationToken); } else { ContribuyenteDTO contribuyenteDTO = new ContribuyenteDTO(); contribuyenteDTO.id_empresa = 1; contribuyenteDTO.no_razon_social = InfoCard.GetValue("txtRazonSocial").ToString(); contribuyenteDTO.no_representante_legal = InfoCard.GetValue("txtRepresentanteLegal").ToString(); contribuyenteDTO.co_documento_identidad = InfoCard.GetValue("cboTipoDocumento").ToString(); contribuyenteDTO.nu_documento_identidad = InfoCard.GetValue("txtDocumentoIdentidad").ToString(); contribuyenteDTO.no_correo_electronico = InfoCard.GetValue("txtCorreoElectronico").ToString(); contribuyenteDTO.nu_telefono = InfoCard.GetValue("txtTelefono").ToString(); contribuyenteDTO.no_direccion = InfoCard.GetValue("txtDireccion").ToString(); contribuyenteDTO.no_contrasena = InfoCard.GetValue("txtContrasena").ToString(); contribuyenteDTO.no_contrasena_sha256 = Funciones.GetSHA256(InfoCard.GetValue("txtContrasena").ToString()); contribuyenteDTO.id_usuario_creacion = 2; // (2=Bot) // Verificar Informacion en SUNAT var numero = _sunatPIDE.VerificarRUC(contribuyenteDTO); switch (numero) { case 0: var result = contribuyenteClient.InsertAsync(contribuyenteDTO); if (result.error_number == 0) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Se ha creado su cuenta exitosamente."), cancellationToken); } else { await turnContext.SendActivityAsync(MenuBot.Buttons(0, $"{result.error_message}"), cancellationToken); } break; case -1: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Número de RUC errado, no está registrado en SUNAT."), cancellationToken); break; case -2: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Los datos no coinciden con la información de SUNAT."), cancellationToken); break; case 999: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "No se ha encontrado información para el número RUC ingresado."), cancellationToken); break; default: await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Sucedió un problema, intente otra vez."), cancellationToken); break; } } } break; case "ConsultarIdSolicitudLicencia": GoMainDialog = false; if (string.IsNullOrEmpty(InfoCard.GetValue("txtNumeroSolicitud").ToString())) { await turnContext.SendActivityAsync(MenuBot.Buttons(0, "Debe ingresar un número de Solicitud."), cancellationToken); } else { SolicitudLicenciaDTO solicitudLicenciaDTO = new SolicitudLicenciaDTO(); solicitudLicenciaDTO.id_solicitud_licencia = 0; solicitudLicenciaDTO.id_contribuyente = Globales.id_contribuyente; solicitudLicenciaDTO.nu_solicitud_licencia = InfoCard.GetValue("txtNumeroSolicitud").ToString(); SolicitudLicenciaClient solicitudLicenciaClient = new SolicitudLicenciaClient(); var result = solicitudLicenciaClient.GetAsync(solicitudLicenciaDTO); if (result.error_number == 0) { var dataJson = JsonConvert.SerializeObject(result.Data); AdaptiveCardList adaptiveCardLicencia = new AdaptiveCardList(); var LicenciaCard = adaptiveCardLicencia.CreateAttachment(6, dataJson); await turnContext.SendActivityAsync(MessageFactory.Attachment(LicenciaCard), cancellationToken); await Task.Delay(500); await turnContext.SendActivityAsync(MenuBot.Buttons(0, ""), cancellationToken); } else { await turnContext.SendActivityAsync(MenuBot.Buttons(0, $"{result.error_message}"), cancellationToken); } } break; } } } // Run the Dialog with the new message Activity. if (GoMainDialog) { await Dialog.RunAsync(turnContext, ConversationState.CreateProperty <DialogState>(nameof(DialogState)), cancellationToken); } }
public int VerificarDNI(ContribuyenteDTO contribuyenteDTO) { ReniecClient reniecClient = new ReniecClient(); var result = reniecClient.GetReniecAsync(contribuyenteDTO.nu_documento_identidad); int error_number = 0; switch (result.coResultado) { case "0000": if (result.reniecDatos.prenombres != null) { if (contribuyenteDTO.no_nombres.Trim().ToUpper() != result.reniecDatos.prenombres.Trim().ToUpper()) { error_number = -1; } } if (result.reniecDatos.apPrimer != null) { if (contribuyenteDTO.no_apellido_paterno.Trim().ToUpper() != result.reniecDatos.apPrimer.Trim().ToUpper()) { error_number = -1; } } if (result.reniecDatos.apSegundo != null) { if (contribuyenteDTO.no_apellido_materno.Trim().ToUpper() != result.reniecDatos.apSegundo.Trim().ToUpper()) { error_number = -1; } } if (error_number == 0) { if (result.reniecDatos.foto != null) { contribuyenteDTO.foto = result.reniecDatos.foto; } } break; case "0001": error_number = 1; break; case "0999": error_number = 999; break; case "1000": error_number = 1000; break; case "1001": error_number = 1001; break; case "1002": error_number = 1002; break; case "1003": error_number = 1003; break; case "1999": error_number = 1999; break; } ; return(error_number); }