private bool ValidarTarjetaCTS(string sNumberCardCTS, TextBox txtGenerico) { try { WsMyCTS wsServ = new WsMyCTS(); BuildElectronicTicketContract getDK = new BuildElectronicTicketContract(); GetInfoPassengerByPNR getPNR = new GetInfoPassengerByPNR(); var respuesta = getPNR.GetInfoPassengerPNR(recLoc); ucFirstValidations.DK = respuesta.CustomerIdentifier; MyCTS.Services.ValidateDKsAndCreditCards.ClientCreditCard clientCreditCard = wsServ.GetClientCreditCardNumber(sNumberCardCTS, ucFirstValidations.DK); if (string.IsNullOrEmpty(sNumberCardCTS)) { this.Focus(); MessageBox.Show("Debes ingresar un número de tarjeta. Ingrese", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); txtGenerico.Text = string.Empty; return(false); } if (!string.IsNullOrEmpty(sNumberCardCTS)) { string creditCard = wsServ.GetCreditCardNumberCTS(txtNumberCardCTS.Text); if (!string.IsNullOrEmpty(creditCard)) { this.Focus(); MessageBox.Show("Debes ingresar un número de tarjeta diferente a una de CTS. Reingrese", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); txtGenerico.Text = string.Empty; return(false); } if (string.IsNullOrEmpty(creditCard)) { string clientCreditCardNumber = wsServ.GetClientCreditCardNumberATT(txtNumberCardCTS.Text); if (string.IsNullOrEmpty(clientCreditCardNumber)) { if (ValidateCreditCardNumber) { // No hace nada } } else if (clientCreditCard.CreditCardNumber != txtNumberCardCTS.Text) { MessageBox.Show("El número de tarjeta ingresado pertenece a un cliente diferente, ingrese un número de tarjeta válido", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); txtNumberCardCTS.Focus(); return(false); } } } } catch (Exception ex) { this.Focus(); MessageBox.Show("Error al validar tarjeta. Reintente"); txtGenerico.Text = string.Empty; return(false); } return(true); }
private void ValidacionTarjeta() { string textoCreditCardTextBoxText = creditCardTextBox.Text; string textoCodigoSeguridad = txtCodigoSeguridad.Text; string textoNombreTitular = txtNombreTitular.Text; string textoAmountTextBox = amountTextBox.Text; string textoCreditCardCombo = creditCardCombo.Text; double monto = 0; double.TryParse(textoAmountTextBox, out monto); if (!string.IsNullOrEmpty(textoAmountTextBox) && monto > 0) { switch (textoCreditCardCombo) { case "TRANSFERENCIA": case "CHEQUE": if (textoCreditCardTextBoxText.Length != 4) { ErroresValidacionTarjeta("El número de la tarjeta debe ser de 4 digitos. Reingrese"); } break; case "EFECTIVO": break; default: if (string.IsNullOrEmpty(textoCreditCardTextBoxText)) { ErroresValidacionTarjeta("Debe ingresar el numero de tarjeta. Ingrese"); break; } string sNumberCardCTS = creditCardTextBox.EditValue.ToString(); MyCTS.Services.ValidateDKsAndCreditCards.ClientCreditCard clientCreditCard = wsServ.GetClientCreditCardNumber(sNumberCardCTS, ucFirstValidations.DK); if (!string.IsNullOrEmpty(sNumberCardCTS)) { string creditCard = wsServ.GetCreditCardNumberCTS(sNumberCardCTS); if (!string.IsNullOrEmpty(creditCard)) { ErroresValidacionTarjeta("Debes ingresar un número de tarjeta diferente a una de CTS. Reingrese"); creditCardTextBox.Focus(); } if (string.IsNullOrEmpty(creditCard)) { string clientCreditCardNumber = wsServ.GetClientCreditCardNumberATT(textoCreditCardTextBoxText); if (string.IsNullOrEmpty(clientCreditCardNumber)) { if (ValidateCreditCardNumber) { if (clientCreditCard.CreditCardNumber == textoCreditCardTextBoxText && (clientCreditCard.Client == ucFirstValidations.DK && clientCreditCard.Type != textoCreditCardCombo)) { ErroresValidacionTarjeta("El número de tarjeta capturado no corresponde a la tarjeta de tipo " + textoCreditCardCombo + " ligada al cliente DK: " + ucFirstValidations.DK); creditCardTextBox.Focus(); } } } else if (clientCreditCard.CreditCardNumber != textoCreditCardTextBoxText) { ErroresValidacionTarjeta("El número de tarjeta ingresado pertenece a un cliente diferente, ingrese un número de tarjeta válido"); creditCardTextBox.Focus(); } } } break; } } }
private void ValidacionFormasDePago() { switch (cmbTypeCard.Text) { case "TR - TRANSFERENCIA": case "CASH - EFECTIVO": case "CH - CHEQUE": DeterminaValidacionGeneracionCargo(); break; case "TP - TC UATP": ///Validación para la FoP TP - TC UATP para que al validar las tarjetas, no valide ///todos los campos existentes en la plantilla aunque esten ocultos. Para cualquier ///otro caso se validan todos los campos en la plantilla. if (ValidateCreditCardNumber) { } break; default: if ((string.IsNullOrEmpty(cmbTypeCard.Text) || string.IsNullOrEmpty(txtDigitoSeguridad.Text) || string.IsNullOrEmpty(txtNombreTarjetahabiente.Text) || string.IsNullOrEmpty(cmbTypeCard.Text) || string.IsNullOrEmpty(cmbMesVencimiento.Text) || string.IsNullOrEmpty(cmbAnioVencimiento.Text) || string.IsNullOrEmpty(cmbTypeCard.Text))) { MessageBox.Show("¡Debes ingresar todos los campos!"); return; } //Se validan las fechas ingresadas por el usuario. No deben ser menor a los de la fecha actual int cmboFecYear = Convert.ToInt32(DateTime.Now.Year); int cmboFecMes = Convert.ToInt32(DateTime.Now.Month); int cmbFecYear = Convert.ToInt32(cmbAnioVencimiento.Text); if (cmbTypeCard.Text == "- Selecciona Forma de Pago -") { MessageBox.Show("¡Ingrese la Forma de Pago!", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); return; } cmbFecMes = seleccionaMes(); if (cmbFecYear < cmboFecYear) { MessageBox.Show("¡Datos de vigencia de la tarjeta invalido, verifica el año!", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); cmbAnioVencimiento.Focus(); return; } if (cmbFecMes < cmboFecMes & cmboFecYear == cmbFecYear) { MessageBox.Show("¡Datos de vigencia de la tarjeta invalido, verifica el mes!", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); cmbMesVencimiento.Focus(); return; } if (string.IsNullOrEmpty(txtNumberCardCTS.Text)) { MessageBox.Show("Debes ingresar un número de tarjeta. Ingrese", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); txtNumberCardCTS.Text = string.Empty; txtNumberCardCTS.Focus(); return; } ChargesPerService.RecuperarDK(); WsMyCTS wsServ = new WsMyCTS(); MyCTS.Services.ValidateDKsAndCreditCards.ClientCreditCard clientCreditCard = wsServ.GetClientCreditCardNumber(txtNumberCardCTS.Text, ChargesPerService.DKActual); string creditCard = wsServ.GetCreditCardNumberCTS(txtNumberCardCTS.Text); if (!string.IsNullOrEmpty(creditCard)) { this.Focus(); MessageBox.Show("Debes ingresar un número de tarjeta diferente a una de CTS. Reingrese", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); txtNumberCardCTS.Text = string.Empty; txtNumberCardCTS.Focus(); return; } string clientCreditCardNumber = wsServ.GetClientCreditCardNumberATT(txtNumberCardCTS.Text); if (string.IsNullOrEmpty(clientCreditCardNumber)) { if (ValidateCreditCardNumber) { // No hace nada } } else { if (clientCreditCard.CreditCardNumber != txtNumberCardCTS.Text) { MessageBox.Show("El número de tarjeta ingresado pertenece a un cliente diferente, ingrese un número de tarjeta válido", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); txtNumberCardCTS.Text = string.Empty; txtNumberCardCTS.Focus(); return; } } if (txtNumberCardCTS.Text == clientCreditCard.CreditCardNumber & ChargesPerService.DKActual == clientCreditCard.Client) { DeterminaValidacionGeneracionCargo(); } break; } if (!VerificarCargoPrevio()) { Pagar(); } else { MessageBox.Show("Ya cuenta con un intento de cargo por servicio previo para hoteles, no es posible realizar un nuevo cargo por servicio para hoteles mediante la interfaz", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); return; } }
private void creditCardTextBox_Leave(object sender, EventArgs e) { try { string sNumberCardCTS = creditCardTextBox.EditValue.ToString(); if (!string.IsNullOrEmpty(sNumberCardCTS)) { WsMyCTS wsServ = new WsMyCTS(); string creditCard = wsServ.GetCreditCardNumberCTS(sNumberCardCTS); if (ctsCheckBox.Checked == true) { if (string.IsNullOrEmpty(creditCard)) { this.Focus(); MessageBox.Show("Debes ingresar un número de tarjeta perteneciente a CTS. Reingrese", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); creditCardTextBox.EditValue = string.Empty; } } else if (clientCheckBox.Checked == true) { if (!string.IsNullOrEmpty(creditCard)) { MyCTS.Services.ValidateDKsAndCreditCards.ClientCreditCard clientCreditCard = wsServ.GetClientCreditCardNumber(creditCardTextBox.Text, ucFirstValidations.dk); if (clientCreditCard.CreditCardNumber != null) { if (clientCreditCard.CreditCardNumber != creditCardTextBox.Text && clientCreditCard.Client != ucFirstValidations.dk) { MessageBox.Show("El número de tarjeta ingresado pertenece a un cliente diferente, ingrese un número de tarjeta válido", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); creditCardTextBox.Focus(); } else if (ValidateCreditCardNumber) { } } else { this.Focus(); MessageBox.Show("Debes ingresar un número de tarjeta diferente a una de CTS. Reingrese", Resources.Constants.MYCTS, MessageBoxButtons.OK, MessageBoxIcon.Information); creditCardTextBox.EditValue = string.Empty; } } } } } catch (Exception ex) { this.Focus(); MessageBox.Show("Error al validar tarjeta. Reintente"); creditCardTextBox.EditValue = string.Empty; } }