예제 #1
0
        /// <summary>
        /// Segun se pulse un menu u otro se hace una accion u otra
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void boton_Click(object sender, RoutedEventArgs e)
        {
            Button boton = sender as Button;

            switch (boton.Tag.ToString().ToLower())
            {
            case "informe para exportar":
                /* di fdialog = new SaveFileDialog();
                 *
                 * fdialog.ShowDialog();
                 * new Informes.ExportarMilena( fdialog.FileName, logic.gestionHistorialAlbaranes.getAlbaranesEntreFechas("","") );*/
                break;

            case "reimprimir un albaran":

                inputBox dlg = new inputBox("Re imprimir un albaran", "¿Que numero de albaran desea reimprimir?");
                dlg.ShowDialog();
                while (dlg.IsActive)
                {
                    ;
                }
                String resultado = dlg.resultado;

                new visorInformes(resultado).Show();

                break;

            case "filtrar albaranes":
                this.navegador.Navigate(new Informes.filtrarHistorico());
                break;

            case "estadisticos":
                this.navegador.Navigate(new Informes.Estadisticos.Selector());
                break;
            }
            visibilidadMenu();
        }
        private void cmdEnviarClick(object sender, RoutedEventArgs e)
        {
            bool   bolOperacion;
            string mensaje = string.Empty;

            //lblTError.Text = "";
            //lblError.Visibility = Visibility.Hidden;
            cmdEnviar.IsEnabled = false;
            if (string.IsNullOrWhiteSpace(this.num_tarjeta))
            {
                Globales.MessageBoxMit("Introduzca el número de tarjeta");
                cmdEnviar.IsEnabled = true;
                return;
            }
            else if (mes.SelectedIndex == -1)
            {
                Globales.MessageBoxMit("Seleccione el mes de vencimiento de la tarjeta");
                cmdEnviar.IsEnabled = true;
                return;
            }
            else if (anio.SelectedIndex == -1)
            {
                Globales.MessageBoxMit("Seleccione el año de vencimiento de la tarjeta");
                cmdEnviar.IsEnabled = true;
                return;
            }
            else if (string.IsNullOrWhiteSpace(nomTdc.Text))
            {
                Globales.MessageBoxMit("Introduzca el nombre del titular");
                cmdEnviar.IsEnabled = true;
                return;
            }
            else if (string.IsNullOrWhiteSpace(numCvv.Password))
            {
                Globales.MessageBoxMit("Introduzca el code de la tarjeta");
                cmdEnviar.IsEnabled = true;
                return;
            }
            else if (string.IsNullOrWhiteSpace(numOrden.Text))
            {
                Globales.MessageBoxMit("Introduzca " + TypeUsuario.reference);
                cmdEnviar.IsEnabled = true;
                return;
            }
            else if ((numCvv.Password == "000" || numCvv.Password == "0000") && numCvv.Visibility == Visibility.Visible)
            {
                Globales.MessageBoxMit("Código de seguridad invalido");
                cmdEnviar.IsEnabled = true;
                return;
            }
            else if (string.IsNullOrWhiteSpace(Globales.merchantMoto))
            {
                Globales.MessageBoxMit("NO hay planes de pago para esta tarjeta, porfavor cambie la tarjeta");
                cmdEnviar.IsEnabled = true;
                return;
            }
            else if (string.IsNullOrWhiteSpace(importe.Text))
            {
                Globales.MessageBoxMit("Introduzca el importe");
                cmdEnviar.IsEnabled = true;
                return;
            }
            else
            {
                if (TypeUsuario.Id_Company == "0059")
                {
                    if (numOrden.Text.Length != 28)
                    {
                        Globales.MessageBoxMit("El no. de REFERENCIA debe ser de 28 posiciones.");
                        cmdEnviar.IsEnabled = true;
                        return;
                    }
                }

                int aux  = 0;
                int aux2 = 0;
                if (anio.Text.Substring(2, 2) == DateTime.Now.Year.ToString().Substring(2) && Convert.ToInt32(mes.Text) < DateTime.Now.Month)
                {
                    Globales.MessageBoxMit("La tarjeta ha vencido");
                    cmdEnviar.IsEnabled = true;
                    return;
                }
                if (Globales.isAmex)
                {
                    if (numCvv.Password.Length != 4)
                    {
                        Globales.MessageBoxMit("Introduzca el code de la tarjeta");
                        cmdEnviar.IsEnabled = true;
                        return;
                    }
                }
                else
                {
                    if (numCvv.Password.Length != 3)
                    {
                        Globales.MessageBoxMit("Introduzca el code de la tarjeta");
                        cmdEnviar.IsEnabled = true;
                        return;
                    }
                }
                cmdEnviar.IsEnabled  = false;
                Mouse.OverrideCursor = System.Windows.Input.Cursors.Wait;
                string strTypeC = "";
                Globales.cpIntegracion_Clear();
                if (Globales.isAmex)
                {
                    strTypeC = "AMEX";
                }
                else
                {
                    strTypeC = "V/MC";
                }
                Globales.cpIntegracion_sURL_cpINTEGRA = Globales.URL_DLL_CHECKIN;
                string strTpOperacion = "";
                if (!caption.Contains("operativa"))
                {
                    strTpOperacion = "10";
                }
                else
                {
                    strTpOperacion = "14";
                }
                Globales.cpIntegraEMV.dbgSetUrl(Globales.URL_3GATE);
                Globales.cpIntegraEMV.sndCheckInMOTO(
                    TypeUsuario.usu,
                    TypeUsuario.Pass,
                    "",
                    TypeUsuario.Id_Company,
                    TypeUsuario.Id_Branch,
                    TypeUsuario.country,
                    Globales.merchantMoto,
                    numOrden.Text,
                    strTpOperacion,
                    importe.Text,
                    lblMoneda.Content.ToString(),
                    txtRoom.Text,
                    strTypeC,
                    nomTdc.Text,
                    this.num_tarjeta,
                    mes.Text,
                    anio.Text.Substring(2, 2),
                    numCvv.Password
                    );

                Globales.cpIntegracion_sResult = Globales.cpIntegraEMV.getRspXML();
                bolOperacion = true;
                if (bolOperacion)
                {
                    //=====================================Venta Forzada============================

                    string strCadEncriptar = "";
                    if (Globales.GetDataXml("cd_response", Globales.cpIntegracion_sResult) == Globales.COD_VF)
                    {
                        if (Globales.MessageConfirm(Globales.GetDataXml("msgautvf", TypeUsuario.CadenaXML)))
                        {
                            string strNumAut = "";
                            while (strNumAut.Length != 6)
                            {
                                inputBox input = new inputBox();
                                input.setTitulo("Introduzca el número de autorización (6 caracteres) o cancelar para anular la operación");
                                input.setMax(6);
                                input.ShowDialog();
                                if (input.cancelarActivo)
                                {
                                    strNumAut = "";
                                    break;
                                }
                                else
                                {
                                    strNumAut = input.getValor();
                                }
                            }
                            if (!string.IsNullOrWhiteSpace(strNumAut))
                            {
                                string strFolioC = "";


                                strFolioC = Globales.GetDataXml("foliocpagos", Globales.cpIntegracion_sResult);
                                Globales.cpIntegracion_sURL_cpINTEGRA = Globales.URL_DLL_VF;
                                if (Globales.cpIntegracion_cpVtaForzadaM(
                                        TypeUsuario.Id_Company,
                                        TypeUsuario.Id_Branch,
                                        TypeUsuario.country,
                                        TypeUsuario.usu,
                                        TypeUsuario.Pass,
                                        Globales.merchantMoto,
                                        numOrden.Text,
                                        strTpOperacion,
                                        strTypeC,
                                        nomTdc.Text,
                                        this.num_tarjeta,
                                        mes.Text,
                                        anio.Text.Substring(2, 2),
                                        numCvv.Password,
                                        importe.Text,
                                        lblMoneda.Content.ToString(),
                                        strFolioC,
                                        strNumAut
                                        ))
                                {
                                    Mouse.OverrideCursor = null;
                                    switch (Globales.GetDataXml("response", Globales.cpIntegracion_sResult).ToLower())
                                    {
                                    case "approved":
                                        cboBanco.IsEnabled  = false;
                                        formaPago.IsEnabled = false;
                                        numOrden.IsEnabled  = false;
                                        importe.IsEnabled   = false;
                                        txtRoom.IsEnabled   = false;
                                        //lblAprob.Visibility = Visibility.Visible;
                                        //lblAuth.Visibility = Visibility.Visible;
                                        //lblTError.Visibility = Visibility.Hidden;
                                        //lblError.Visibility = Visibility.Hidden;
                                        //lblDenied.Visibility = Visibility.Hidden;

                                        mensaje = string.Format("¡COBRO APROBADO! AUTORIZACIÓN: {0}", Globales.GetDataXml("auth", Globales.cpIntegracion_sResult));
                                        Globales.MessageBoxMitApproved(mensaje);

                                        TypeUsuario.strVoucherCoP = Globales.GetDataXml("voucher", Globales.cpIntegracion_sResult).Trim();
                                        escogerImpresora();
                                        if (TypeUsuario.IsAQ)
                                        {
                                            Globales.VerificaVoucher();
                                        }
                                        cmdVoucher.IsEnabled = true;
                                        cmdNuevo.Visibility  = Visibility.Visible;
                                        cmdEnviar.Visibility = Visibility.Hidden;
                                        //imgmail.visinble = tyoeusuar.enviacorreo
                                        this.BENVIAMAIL.Visibility = TypeUsuario.enviaCorreo ? Visibility.Visible : Visibility.Hidden;
                                        this.BENVIAMAIL.Tag        = this.nomTdc.Text;

                                        break;

                                    case "denied":
                                        numTdc.IsEnabled    = false;
                                        mes.IsEnabled       = false;
                                        anio.IsEnabled      = false;
                                        nomTdc.IsEnabled    = false;
                                        numCvv.IsEnabled    = false;
                                        cboBanco.IsEnabled  = false;
                                        formaPago.IsEnabled = false;
                                        numOrden.IsEnabled  = false;
                                        importe.IsEnabled   = false;
                                        txtRoom.IsEnabled   = false;
                                        mensaje             = string.Format("CHECKIN RECHAZADO: {0}", Globales.GetDataXml("cd_response", Globales.cpIntegracion_sResult));
                                        Globales.MessageBoxMitDenied(mensaje);
                                        cmdNuevo.Visibility  = Visibility.Visible;
                                        cmdEnviar.Visibility = Visibility.Hidden;
                                        break;

                                    case "error":
                                        mensaje = Globales.GetDataXml("nb_error", Globales.cpIntegracion_sResult);
                                        Globales.MessageBoxMitError(mensaje);
                                        cmdNuevo.Visibility  = Visibility.Visible;
                                        cmdEnviar.Visibility = Visibility.Hidden;
                                        cmdVoucher.IsEnabled = false;
                                        break;

                                    default:
                                        //lblAprob.Visibility = Visibility.Hidden;
                                        //lblAuth.Visibility = Visibility.Hidden;
                                        //lblError.Visibility = Visibility.Visible;
                                        //lblTError.Visibility = Visibility.Hidden;
                                        mensaje = "Verifique su conexión a internet";
                                        Globales.MessageBoxMitError(mensaje);
                                        //lblDenied.Visibility = Visibility.Hidden;
                                        cmdNuevo.Visibility  = Visibility.Visible;
                                        cmdEnviar.Visibility = Visibility.Hidden;
                                        cmdVoucher.IsEnabled = false;
                                        break;
                                    }
                                    cmdEnviar.IsEnabled = true;
                                }
                                else
                                {
                                    //lblAprob.Visibility = Visibility.Hidden;
                                    //lblAuth.Visibility = Visibility.Hidden;
                                    //lblTError.Visibility = Visibility.Visible;
                                    mensaje = Globales.cpIntegracion_sError;
                                    Globales.MessageBoxMitError(mensaje);
                                    cmdNuevo.Visibility  = Visibility.Visible;
                                    cmdEnviar.Visibility = Visibility.Hidden;
                                    cmdVoucher.IsEnabled = false;
                                    cmdEnviar.IsEnabled  = true;
                                }
                            }
                            else
                            {
                                cmdNuevoClick(null, null);
                                cmdEnviar.IsEnabled  = true;
                                Mouse.OverrideCursor = null;
                                return;
                            }
                        }
                        else
                        {
                            cmdNuevoClick(null, null);
                            cmdEnviar.IsEnabled  = true;
                            Mouse.OverrideCursor = null;
                            return;
                        }

                        Mouse.OverrideCursor = null;
                        return;
                    }

                    //FIN DE VENTA FORZADA
                    Mouse.OverrideCursor = null;
                    switch (Globales.GetDataXml("response", Globales.cpIntegracion_sResult).ToLower())
                    {
                    case "approved":
                        numTdc.IsEnabled    = false;
                        txtRoom.IsEnabled   = false;
                        mes.IsEnabled       = false;
                        anio.IsEnabled      = false;
                        nomTdc.IsEnabled    = false;
                        numCvv.IsEnabled    = false;
                        cboBanco.IsEnabled  = false;
                        formaPago.IsEnabled = false;
                        numOrden.IsEnabled  = false;
                        importe.IsEnabled   = false;


                        mensaje = string.Format(" {0}", Globales.GetDataXml("auth", Globales.cpIntegracion_sResult));
                        Globales.MessageBoxMitApproved(mensaje);

                        TypeUsuario.strVoucherCoP = Globales.GetDataXml("voucher", Globales.cpIntegracion_sResult).Trim();
                        escogerImpresora();
                        if (TypeUsuario.IsAQ)
                        {
                            Globales.VerificaVoucher();
                            Mouse.OverrideCursor = null;
                            return;
                        }
                        cmdVoucher.IsEnabled = true;
                        cmdNuevo.Visibility  = Visibility.Visible;
                        cmdEnviar.Visibility = Visibility.Hidden;
                        //Falta lo de imagenmail.visible = typeusuario.enviarCorreo
                        this.BENVIAMAIL.Visibility = TypeUsuario.enviaCorreo ? Visibility.Visible : Visibility.Hidden;
                        this.BENVIAMAIL.Tag        = this.nomTdc.Text;
                        break;

                    case "denied":
                        numTdc.IsEnabled    = false;
                        numCvv.IsEnabled    = false;
                        mes.IsEnabled       = false;
                        anio.IsEnabled      = false;
                        nomTdc.IsEnabled    = false;
                        numTdc.IsEnabled    = false;
                        cboBanco.IsEnabled  = false;
                        formaPago.IsEnabled = false;
                        numOrden.IsEnabled  = false;
                        importe.IsEnabled   = false;
                        txtRoom.IsEnabled   = false;

                        mensaje = string.Format("{0}", Globales.GetDataXml("cd_response", Globales.cpIntegracion_sResult));
                        Globales.MessageBoxMitDenied(mensaje);

                        cmdNuevo.Visibility  = Visibility.Visible;
                        cmdEnviar.Visibility = Visibility.Hidden;
                        break;

                    case "error":
                        mensaje = Globales.GetDataXml("nb_error", Globales.cpIntegracion_sResult);
                        Globales.MessageBoxMitError(mensaje);
                        if (mensaje.Contains("La transaccion ya fue aprobada"))
                        {
                            numTdc.IsEnabled     = false;
                            numCvv.IsEnabled     = false;
                            mes.IsEnabled        = false;
                            anio.IsEnabled       = false;
                            nomTdc.IsEnabled     = false;
                            numTdc.IsEnabled     = false;
                            cboBanco.IsEnabled   = false;
                            formaPago.IsEnabled  = false;
                            numOrden.IsEnabled   = false;
                            importe.IsEnabled    = false;
                            txtRoom.IsEnabled    = false;
                            cmdNuevo.Visibility  = Visibility.Visible;
                            cmdEnviar.Visibility = Visibility.Hidden;
                        }
                        else
                        {
                            cmdNuevo.Visibility  = Visibility.Hidden;
                            cmdEnviar.Visibility = Visibility.Visible;
                        }

                        break;

                    default:

                        cmdNuevo.Visibility  = Visibility.Hidden;
                        cmdEnviar.Visibility = Visibility.Visible;

                        mensaje = Globales.GetDataXml("Verifique su conexión de internet", Globales.cpIntegracion_sResult);
                        Globales.MessageBoxMitError(mensaje);
                        break;
                    }
                }
                else
                {
                }
            }
            Mouse.OverrideCursor = null;
            cmdEnviar.IsEnabled  = true;
        }