Exemplo n.º 1
0
        private bool EPA5(CarroCompra carroCompraEntrante)
        {
            bool resultado = false;

            try
            {
                SqlCommand command = new SqlCommand("EPA5", conn);
                command.CommandType = CommandType.StoredProcedure;

                SqlDataAdapter adapter4 = new SqlDataAdapter(command);

                //Envió los parámetros que necesito para el EPA4
                SqlParameter param01 = new SqlParameter("@userID", SqlDbType.Int);
                param01.Value = carroCompraEntrante.Cliente.Id;
                command.Parameters.Add(param01);

                SqlParameter param02 = new SqlParameter("FechaTransaccion", SqlDbType.DateTimeOffset);
                param02.Value = carroCompraEntrante.Carrocomprapago.FechaUTCtransaccion;
                command.Parameters.Add(param02);

                SqlParameter param03 = new SqlParameter("@tarjetaPAN", SqlDbType.VarChar, 19);
                param03.Value = carroCompraEntrante.Carrocomprapago.Tarjetapan;
                command.Parameters.Add(param03);

                String EPA4TiempoDeVentana;
                EPA4TiempoDeVentana = ConfigurationManager.AppSettings.Get("EPA4TiempoDeVentana");

                int EPA4NumTransaccionesMin;
                EPA4NumTransaccionesMin = Int32.Parse(ConfigurationManager.AppSettings.Get("EPA4NumTransaccionesMin"));

                SqlParameter param04 = new SqlParameter("@Tiempo", SqlDbType.Int);
                param04.Value = Int32.Parse(EPA4TiempoDeVentana);
                command.Parameters.Add(param04);

                SqlParameter param05 = new SqlParameter("@NumRegistros", SqlDbType.Int);
                param05.Value = EPA4NumTransaccionesMin;
                command.Parameters.Add(param05);

                DataTable dt = new DataTable();

                conn.Open();

                //Aquí ejecuto el SP y lo lleno en el DataTable
                adapter4.Fill(dt);
                resultado = VerificarEPA4(dt, carroCompraEntrante);

                dataGridView1.DataSource = dt;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                throw;
            }
            finally
            {
                conn.Close();
            }

            return(resultado);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Verifica que las filas del DataTable vayan en montos incrementales.
        /// </summary>
        /// <param name="dt">DataTable a consultar</param>
        /// <returns>Un booleano indicando true cuando es en incrimento, de lo contrario false.</returns>
        private bool VerificarEnIncremento(DataTable dt, CarroCompra carroCompraEntrante)
        {
            bool  resultado;
            float monto;

            monto     = dt.Rows[0].Field <float>("MontoTotal");
            resultado = false;
            if (dt != null)
            {
                foreach (DataRow fila in dt.Rows)
                {
                    if (monto <= float.Parse(fila[0].ToString()))
                    {
                        monto     = float.Parse(fila[0].ToString());
                        resultado = true;
                    }
                    else
                    {
                        resultado = false;
                        break;
                    }
                }
            }
            return(resultado);
        }
Exemplo n.º 3
0
        private bool VerificarEPA4(DataTable dt, CarroCompra carroCompraEntrante)
        {
            bool resultado = false;

            try
            {
                bool hayrechazados = true;


                if (dt == null)
                {
                    hayrechazados = false;
                }
                else
                {
                    foreach (DataRow fila in dt.Rows)
                    {
                        if (fila.Field <int>("Estatus") != (int)Estatus.Aceptado)
                        {
                            hayrechazados = false;
                        }
                    }
                }
                return(hayrechazados);
            }
            catch (Exception)
            {
                MessageBox.Show("No se encontro la variable en el archivo de configuración");
            }
            return(resultado);
        }
Exemplo n.º 4
0
        private bool VerificarEPA3(DataTable dt, CarroCompra carroCompraEntrante)
        {
            bool resultado = false;


            try
            {
                bool intentos = false;

                if (dt == null)
                {
                    intentos = false;
                }
                else
                {
                    foreach (DataRow row in dt.Rows)
                    {
                        if (dt.Rows[0].Field <float>("CodigoRespuesta") != (int)CodigoRespuesta.TarjetaDeclinadaPorCVV)
                        {
                            intentos = false;
                        }
                    }
                }
                resultado = intentos;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

            return(resultado);
        }
Exemplo n.º 5
0
        private bool EPA1(CarroCompra carroCompraEntrante)
        {
            bool resultado;

            resultado = false;

            try
            {
                // SP que utilizare para la ejecucion de parametros
                SqlCommand command = new SqlCommand("EPA1", conn);
                command.CommandType = CommandType.StoredProcedure;

                SqlDataAdapter adapter = new SqlDataAdapter(command);

                //Envió los parámetros que necesito para el EPA1
                SqlParameter param1 = new SqlParameter("@userID", SqlDbType.Int);
                param1.Value = carroCompraEntrante.Cliente.Id;
                command.Parameters.Add(param1);

                SqlParameter param2 = new SqlParameter("FechaTransaccion", SqlDbType.DateTimeOffset);
                param2.Value = carroCompraEntrante.Carrocomprapago.FechaUTCtransaccion;
                command.Parameters.Add(param2);

                SqlParameter param3 = new SqlParameter("@tarjetaPAN", SqlDbType.VarChar, 19);
                param3.Value = carroCompraEntrante.Carrocomprapago.Tarjetapan;
                command.Parameters.Add(param3);

                String EPA1TiempoDeVentana;
                EPA1TiempoDeVentana = ConfigurationManager.AppSettings.Get("EPA1TiempoDeVentana");

                int EPA1NumTransaccionesMin;
                EPA1NumTransaccionesMin = Int32.Parse(ConfigurationManager.AppSettings.Get("EPA1NumTransaccionesMin"));

                SqlParameter param4 = new SqlParameter("@Tiempo", SqlDbType.Int);
                param4.Value = Int32.Parse(EPA1TiempoDeVentana);
                command.Parameters.Add(param4);

                SqlParameter param5 = new SqlParameter("@NumRegistros", SqlDbType.Int);
                param5.Value = EPA1NumTransaccionesMin;
                command.Parameters.Add(param5);

                DataTable dt = new DataTable();

                conn.Open();

                //Aquí ejecuto el SP y lo lleno en el DataTable
                adapter.Fill(dt);
                resultado = VerificarEnIncremento(dt, carroCompraEntrante);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                conn.Close();
            }
            return(resultado);
        }
Exemplo n.º 6
0
        /// <summary>
        /// Verifica que las filas del DataTable vayan en montos en decremento
        /// </summary>
        /// <param name="dt">DataTable a consultar</param>
        /// <returns>Un booleano indicando false cuando es en decremento, de lo contrario true.</returns>
        private bool VerificarEnDecremento(DataTable dt, CarroCompra carroCompraEntrante)
        {
            bool resultado = false;

            try
            {
                bool hayrechazados;
                bool esmontomenor;
                hayrechazados = true;
                esmontomenor  = false;
                // Condicion para saber si hayrechazados es igual a falso y
                //si no verificar que los monto de las transacciones son menores que los anteriores.
                if (dt == null)
                {
                    hayrechazados = false;
                }
                else
                {
                    if (dt.Rows.Count > 0)
                    {
                        if (dt.Rows[0].Field <float>("MontoTotal") >= carroCompraEntrante.Carrocomprapago.Montototal)
                        {
                            esmontomenor = true;
                        }
                    }
                    foreach (DataRow fila in dt.Rows)
                    {
                        if (fila.Field <int>("Estatus") != (int)Estatus.Rechazado)
                        {
                            hayrechazados = false;
                        }
                    }
                }

                if (hayrechazados == true && esmontomenor == true)
                {
                    resultado = true;
                }
            }
            catch (Exception)
            {
                MessageBox.Show("No se encontro la variable en el archivo de configuración");
            }
            return(resultado);
        }