internal RespuestaPayOnline3pDTO ObtenerRespuestaPayOnline3pDTO(RespuestaStruct_PayOnLine_3p originalResponse) { RespuestaPayOnline3pDTO dto = new RespuestaPayOnline3pDTO(); if (originalResponse != null) { dto.ResponseCod = Convert.ToInt32(originalResponse.psp_ResponseCod); dto.ResponseMsg = originalResponse.psp_ResponseMsg; dto.ResponseExtended = originalResponse.psp_ResponseExtended; dto.TransactionId = Convert.ToInt64(originalResponse.psp_TransactionId); dto.Session3p = originalResponse.psp_Session3p; dto.FrontPSP_URL = originalResponse.psp_FrontPSP_URL; dto.MerchantId = originalResponse.psp_MerchantId; dto.MerchTxRef = originalResponse.psp_MerchTxRef; dto.MerchOrderId = originalResponse.psp_MerchOrderId; dto.CustomerMail = originalResponse.psp_CustomerMail; dto.MerchantMail = originalResponse.psp_MerchantMail; dto.Plan = originalResponse.psp_Plan; dto.FirstPaymentDeferralDate = originalResponse.psp_FirstPaymentDeferral; dto.PosDateTime = Convert.ToDateTime(originalResponse.psp_PosDateTime); if (dto.ResponseCod != Convert.ToInt16(RespuestaSolicitudAutorizacionNPS.Exitosa)) { dto.ErrorMessage = dto.ResponseMsg; if (dto.ResponseExtended != null) { dto.ErrorMessage += " Detalle: " + dto.ResponseExtended; } } } return(dto); }
private string ArmarRequest(NpsModel model) { try { //var proxy = new NpsService.PaymentServicePlatformPortTypeClient("PaymentServicePlatformPort"); System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12; PaymentServicePlatformPortTypeClient client = new PaymentServicePlatformPortTypeClient("PaymentServicePlatformPort"); RespuestaStruct_PayOnLine_3p result = new RespuestaStruct_PayOnLine_3p(); RequerimientoStruct_PayOnLine_3p query = new RequerimientoStruct_PayOnLine_3p(); query = GetRequestPayOnline3p(model); this.AuditRequestResponse(JsonConvert.SerializeObject(query)); result = client.PayOnLine_3p(query); this.AuditRequestResponse(JsonConvert.SerializeObject(result)); //Estoy actualizando por referencia los valores de los campos dentro del registro tbPaymentDetails _paymentDetail.pde_vendor_response_id = result.psp_TransactionId; _paymentDetail.pde_vendor_response_status = result.psp_ResponseCod; if (!string.IsNullOrEmpty(result.psp_FrontPSP_URL)) { return(result.psp_FrontPSP_URL); } else { return(result.psp_ResponseExtended); } } catch (Exception ex) { throw ex; } }