public void TestGetNumeroTransacciones() { string recordLocalizador = "NSGDFB"; TransaccionesTarjetaNPService Tran = new TransaccionesTarjetaNPService(); int iRespuesta = 0; iRespuesta = Tran.GetNumeroTransacciones(recordLocalizador); }
public void TestGetNumeroIntentos() { string recordLocalizador = "NSGDFB"; int organizacionId = 85; TransaccionesTarjetaNPService Tran = new TransaccionesTarjetaNPService(); int iRespuesta = 0; iRespuesta = Tran.GetNumeroIntentos(recordLocalizador, organizacionId); }
public TransaccionesRespuestasEntities Pagar(ref LogServiceFee item, string sNombreTitular, CreditCardInfo dtsTarjeta, int iPaxNumber, int iNumeroIntento) { TransaccionesRespuestasEntities Respuesta = new TransaccionesRespuestasEntities(); try { String sMerchant; String sTipoTarjeta; TransaccionesTarjetaNPService Tran = new TransaccionesTarjetaNPService(); String sCurrency = "MXN"; if (item.sBanco == "CCAC") { sTipoTarjeta = "AMEX"; sMerchant = "33828"; } else { sTipoTarjeta = "VMC"; sMerchant = "33521"; } if (System.Configuration.ConfigurationManager.AppSettings["Ambiente"] == "PRUEBAS") { sMerchant = "07854"; } Respuesta = ChargesPerService.CobroEnLinea(item, sNombreTitular, Respuesta, sMerchant, sTipoTarjeta, Tran, sCurrency, iNumeroIntento, dtsTarjeta, iPaxNumber, recLoc); } catch (Exception ex) { Respuesta.EstatusTransaccion = "Error"; Respuesta.MensajeAmistoso = ex.Message; } return(Respuesta); }
public static TransaccionesRespuestasEntities CobroEnLinea(LogServiceFee item, string sNombreTitular, TransaccionesRespuestasEntities Respuesta, String sMerchant, String sTipoTarjeta, TransaccionesTarjetaNPService Tran, String sCurrency, int valor, CreditCardInfo dtsTarjeta, int iPaxNumber, string recLoc) { try { decimal MontoConIVA = Math.Round(Convert.ToDecimal(item.sMonto) * 1.16M, 2); string idTransaccion = item.id + valor; string sRespuesta = Tran.Cobro(idTransaccion, sNombreTitular, item.sNumTarjeta, item.sMesVencimiento, item.sAnioVencimiento, item.sCodigoTarjeta, MontoConIVA, sCurrency, sTipoTarjeta, sMerchant, ref Respuesta); var tr = new MyCTS.Services.PagosMIT.TransaccionesEntities(); if (Respuesta == null || string.IsNullOrEmpty(Respuesta.NumeroOperacion) || string.IsNullOrEmpty(Respuesta.NumeroAutorizacion)) { ErrorLogServiceChargeBL.InsertErrorLogServiceCharge("Error", "Error en " + item.id, "", ""); tr = new MyCTS.Services.PagosMIT.TransaccionesEntities { sReference = item.id }; string m = Tran.ValidatePayment(ref tr, DateTime.Now); Respuesta.NumeroOperacion = tr.sNoOperacion; Respuesta.NumeroAutorizacion = tr.sAuth; } else { ErrorLogServiceChargeBL.InsertErrorLogServiceCharge(string.IsNullOrEmpty(Respuesta.EstatusTransaccion) ? "" : Respuesta.EstatusTransaccion, string.IsNullOrEmpty(Respuesta.MensajeAmistoso) ? "" : Respuesta.MensajeAmistoso, string.IsNullOrEmpty(Respuesta.NumeroAutorizacion) ? "" : Respuesta.NumeroAutorizacion, string.IsNullOrEmpty(Respuesta.NumeroOperacion) ? "" : Respuesta.NumeroOperacion); } item.sNumOperacion = Respuesta.NumeroOperacion; item.sNumAutorizacion = Respuesta.NumeroAutorizacion; if (dtsTarjeta.OrigenVenta == "H" || dtsTarjeta.OrigenVenta == "D") { LogCxSHotelBL logCxSHotelBL = new LogCxSHotelBL(); logCxSHotelBL.InserLogCxSHotel(dtsTarjeta.PNR, idTransaccion, 85, Respuesta.NumeroAutorizacion, Respuesta.NumeroOperacion, item.sNumTarjeta, item.sBanco, Convert.ToDecimal(item.sMonto)); } else { if (!string.IsNullOrEmpty(Respuesta.NumeroOperacion) && !string.IsNullOrEmpty(Respuesta.NumeroAutorizacion)) { try { LogOnlinePayServicesBL.InsertOnlinePayService(dtsTarjeta.TipoTarjeta, iPaxNumber, recLoc, Respuesta.NumeroAutorizacion, Respuesta.NumeroOperacion, item.sNumTarjeta, Convert.ToDecimal(item.sMonto), item.sBoletos, ""); } catch (Exception ex) { new EventsManager.EventsManager(ex, EventsManager.EventsManager.OrigenError.CapaDePresentacion); } } } if (!string.IsNullOrEmpty(Respuesta.NumeroOperacion) && !string.IsNullOrEmpty(Respuesta.NumeroAutorizacion)) { try { ImprimeTicketBanco(idTransaccion, 85, ConfigurationManager.AppSettings["DatosContacto"].Split('|')[3], "Comprobante de pago referencia No. " + idTransaccion); } catch (Exception) { MessageBox.Show("No se ha podido enviar el comprobante. Por favor contacta a la Mesa de Servicio para levantar el reporte", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); } } } catch (Exception ex) { try { new EventsManager.EventsManager(ex, EventsManager.EventsManager.OrigenError.CapaDePresentacion); } catch (Exception) { new EventsManager.EventsManager(System.Diagnostics.EventLogEntryType.Error, ex); } } return(Respuesta); }
private bool PayForItemFormPaymentCS(CreditCardInfo dtsTarjeta, int iPaxNumber, ref string Error) { int iPaxFrontNumber = iPaxNumber + 1; TransaccionesRespuestasEntities Respuesta = new TransaccionesRespuestasEntities(); if (dtsTarjeta == null) { return(false); } if (UsuarioValidoParaCargosPorServicio) { if (dtsTarjeta.TipoTarjeta.Equals("CCAC") || dtsTarjeta.TipoTarjeta.Equals("CCPV") || dtsTarjeta.TipoTarjeta.Equals("CCTD")) { try { LogServiceFee item = new LogServiceFee(); String sNombreTransaccion = string.Empty; TransaccionesTarjetaNPService Tran = new TransaccionesTarjetaNPService(); int iCargoAplicado = 0; int iNumeroIntento = 0; // Se guarda en LogServiceFee la respuesta item = new LogServiceFee { id = sNombreTransaccion, sCodigoTarjeta = dtsTarjeta.CodigoSeguridad, sNumTarjeta = dtsTarjeta.NumeroTarjeta, sMesVencimiento = dtsTarjeta.MesVencimiento, sAnioVencimiento = dtsTarjeta.AnioVencimiento, sBanco = dtsTarjeta.TipoTarjeta, sMonto = dtsTarjeta.MontoCargo.ToString(), dtDate = DateTime.Now, sBoletos = dtsTarjeta.Ticket, sRemarks = String.Empty, sRecLoc = recLoc }; // se harcodea el valor del orgId al de CTS, cambiar para cuando se integren mas empresas iNumeroIntento = Tran.GetNumeroIntentos(recLoc, 85); iCargoAplicado = Tran.GetNumeroTransacciones(recLoc, 85); item.id = sNombreTransaccion = "MyCTS-" + dtsTarjeta.OrigenVenta + "-" + recLoc + "-" + iCargoAplicado + "-" + iPaxFrontNumber + "_"; Respuesta = Pagar(ref item, dtsTarjeta.NombreTitular, dtsTarjeta, iPaxFrontNumber, iNumeroIntento); ErrorLogServiceChargeBL.InsertErrorLogServiceCharge(Respuesta.EstatusTransaccion, Respuesta.MensajeAmistoso, Respuesta.NumeroAutorizacion, Respuesta.NumeroOperacion); if (Respuesta.EstatusTransaccion == "Error" || Respuesta.EstatusTransaccion == "Denegada") { char[] caracterSeparador = { '.' }; String[] sErrorCorto = Respuesta.MensajeAmistoso.Split(caracterSeparador, StringSplitOptions.RemoveEmptyEntries); String sErrorParteDos = String.Empty; if (sErrorCorto.Length > 1) { sErrorParteDos = "Transacción rechazada. " + sErrorCorto[1].Trim();; } else { sErrorParteDos = Respuesta.MensajeAmistoso; } Error = Respuesta.MensajeAmistoso; dtsTarjeta.Pagado = false; dtsTarjeta.MensajeError = sErrorParteDos; return(false); } if (string.IsNullOrEmpty(Respuesta.EstatusTransaccion)) { Error = "Error al intentar realizar el cargo"; dtsTarjeta.Pagado = false; dtsTarjeta.MensajeError = Error; return(false); } else { dtsTarjeta.Pagado = true; dtsTarjeta.NumeroAutorizacion = item.sNumAutorizacion; dtsTarjeta.NumeroOperacion = item.sNumOperacion; } } catch (Exception ex) { Error = "Error al intentar conectar con MIT"; dtsTarjeta.Pagado = false; dtsTarjeta.MensajeError = "Error al intentar conectar con MIT"; try { new EventsManager.EventsManager(ex, EventsManager.EventsManager.OrigenError.CapaDePresentacion); } catch (Exception) { new EventsManager.EventsManager(System.Diagnostics.EventLogEntryType.Error, ex); } return(false); } } ChargesPerService.BuilCommandToSend(Respuesta.NumeroOperacion, Respuesta.NumeroAutorizacion, iPaxNumber, dtsTarjeta, OrigenTipo, recLoc); dtsTarjeta.Activo = false; } else { if (OrigenTipo == ChargesPerService.OrigenTipoCargo.Independiente) { ChargesPerService.BuilCommandToSendOld(iPaxNumber, dtsTarjeta); dtsTarjeta.Pagado = true; } } return(true); }
private void PagarHotel(ref List <ListaFiltrada> lstListaFiltrada, ref TransaccionesRespuestasEntities Respuesta) { if (tarjeta.TipoTarjeta.Equals("CCAC") || tarjeta.TipoTarjeta.Equals("CCPV") || tarjeta.TipoTarjeta.Equals("CCTD")) { try { LogServiceFee item = new LogServiceFee(); String sNombreTransaccion = string.Empty; TransaccionesTarjetaNPService Tran = new TransaccionesTarjetaNPService(); int iNumeroIntento = 0; // Se guarda en LogServiceFee la respuesta item = new LogServiceFee { id = sNombreTransaccion, sCodigoTarjeta = tarjeta.CodigoSeguridad, sNumTarjeta = tarjeta.NumeroTarjeta, sMesVencimiento = tarjeta.MesVencimiento, sAnioVencimiento = tarjeta.AnioVencimiento, sBanco = tarjeta.TipoTarjeta, sMonto = tarjeta.MontoCargo.ToString(), dtDate = DateTime.Now, sBoletos = tarjeta.Ticket, sRemarks = String.Empty, sRecLoc = recLoc }; // se harcodea el valor del orgId al de CTS, cambiar para cuando se integren mas empresas item.id = sNombreTransaccion = "MyCTS-" + tarjeta.OrigenVenta + "-" + recLoc + "_"; Respuesta = Pagar(ref item, tarjeta.NombreTitular, tarjeta, 1, iNumeroIntento); ErrorLogServiceChargeBL.InsertErrorLogServiceCharge(Respuesta.EstatusTransaccion, Respuesta.MensajeAmistoso, Respuesta.NumeroAutorizacion, Respuesta.NumeroOperacion); if (Respuesta.EstatusTransaccion == "Error" || Respuesta.EstatusTransaccion == "Denegada") { char[] caracterSeparador = { '.' }; String[] sErrorCorto = Respuesta.MensajeAmistoso.Split(caracterSeparador, StringSplitOptions.RemoveEmptyEntries); String sErrorParteDos = String.Empty; if (sErrorCorto.Length > 1) { sErrorParteDos = "Transacción rechazada. " + sErrorCorto[1].Trim();; } else { sErrorParteDos = Respuesta.MensajeAmistoso; } tarjeta.Pagado = false; tarjeta.MensajeError = sErrorParteDos; return; } else { tarjeta.Pagado = true; tarjeta.NumeroAutorizacion = item.sNumAutorizacion; tarjeta.NumeroOperacion = item.sNumOperacion; } } catch (Exception ex) { tarjeta.Pagado = false; tarjeta.MensajeError = "Error al intentar conectar con MIT"; try { new EventsManager.EventsManager(ex, EventsManager.EventsManager.OrigenError.CapaDePresentacion); } catch (Exception) { new EventsManager.EventsManager(System.Diagnostics.EventLogEntryType.Error, ex); } return; } } else { LogCxSHotelBL logCxSHotelBL = new LogCxSHotelBL(); logCxSHotelBL.InserLogCxSHotel(tarjeta.PNR, string.Empty, 85, Respuesta.NumeroAutorizacion, Respuesta.NumeroOperacion, tarjeta.NumeroTarjeta, tarjeta.TipoTarjeta, Convert.ToDecimal(tarjeta.MontoCargo)); } tarjeta.Activo = false; /* * foreach (var tarjeta in lstDatosTarjeta2) * { * if (tarjeta.TipoTarjeta.Equals("CCAC") || tarjeta.TipoTarjeta.Equals("CCPV") || tarjeta.TipoTarjeta.Equals("CCTD")) * { * try * { * LogServiceFee item = new LogServiceFee(); * String sNombreTransaccion = string.Empty; * TransaccionesTarjetaNPService Tran = new TransaccionesTarjetaNPService(); * int iNumeroIntento = 0; * // Se guarda en LogServiceFee la respuesta * item = new LogServiceFee * { * id = sNombreTransaccion, * sCodigoTarjeta = tarjeta.CodigoSeguridad, * sNumTarjeta = tarjeta.NumeroTarjeta, * sMesVencimiento = tarjeta.MesVencimiento, * sAnioVencimiento = tarjeta.AnioVencimiento, * sBanco = tarjeta.TipoTarjeta, * sMonto = tarjeta.MontoCargo.ToString(), * dtDate = DateTime.Now, * sBoletos = tarjeta.Ticket, * sRemarks = String.Empty, * sRecLoc = recLoc * }; * * // se harcodea el valor del orgId al de CTS, cambiar para cuando se integren mas empresas * * item.id = sNombreTransaccion = "MyCTS-" + tarjeta.OrigenVenta + "-" + tarjeta.PNR + "_"; * * Respuesta = Pagar(ref item, tarjeta.NombreTitular, tarjeta, 1, iNumeroIntento); * * if (Respuesta.EstatusTransaccion == "Error" || Respuesta.EstatusTransaccion == "Denegada") * { * char[] caracterSeparador = { '.' }; * String[] sErrorCorto = Respuesta.MensajeAmistoso.Split(caracterSeparador, StringSplitOptions.RemoveEmptyEntries); * String sErrorParteDos = String.Empty; * if (sErrorCorto.Length > 1) * { * sErrorParteDos = "Transacción rechazada. " + sErrorCorto[1].Trim(); ; * } * else * { * sErrorParteDos = Respuesta.MensajeAmistoso; * } * tarjeta.Pagado = false; * tarjeta.MensajeError = sErrorParteDos; * return; * } * else * { * tarjeta.Pagado = true; * tarjeta.NumeroAutorizacion = item.sNumAutorizacion; * tarjeta.NumeroOperacion = item.sNumOperacion; * } * } * catch (Exception ex) * { * tarjeta.Pagado = false; * tarjeta.MensajeError = "Error al intentar conectar con MIT"; * try * { * new EventsManager.EventsManager(ex, EventsManager.EventsManager.OrigenError.CapaDePresentacion); * } * catch (Exception) * { * new EventsManager.EventsManager(System.Diagnostics.EventLogEntryType.Error, ex); * } * return; * } * } * else * { * LogCxSHotelBL logCxSHotelBL = new LogCxSHotelBL(); * logCxSHotelBL.InserLogCxSHotel(tarjeta.PNR, string.Empty, 85, Respuesta.NumeroAutorizacion, Respuesta.NumeroOperacion, tarjeta.NumeroTarjeta, tarjeta.TipoTarjeta, Convert.ToDecimal(tarjeta.MontoCargo)); * } * * tarjeta.Activo = false; * } */ lstListaFiltrada = FiltrarLista(lstDatosTarjeta); MandarDin(lstListaFiltrada); return; }