Ejemplo n.º 1
0
    protected void imgBtnPago_Click(object sender, EventArgs e)
    {
        try
        {
            string            mensaje = string.Empty;
            ImageButton       ImgDetalle;
            GridViewRow       gvdCompra;
            Label             lblReferencia, lblMonto;
            ValidaCompraModel model = new ValidaCompraModel();
            ImgDetalle       = (ImageButton)sender;
            gvdCompra        = (GridViewRow)ImgDetalle.Parent.Parent;
            lblReferencia    = (Label)gvdCompra.FindControl("lblReferencia");
            model.Referencia = int.Parse(lblReferencia.Text.Trim());
            model.Fecha      = DateTime.Today;
            lblMonto         = (Label)gvdCompra.FindControl("lblMonto");
            model.Importe    = Convert.ToDouble(lblMonto.Text);

            mensaje = actualizaCompra(model);
            LlenaGrid();
            cellmensaje.ForeColor = System.Drawing.Color.DodgerBlue;
            btnAceptar.BackColor  = System.Drawing.Color.DodgerBlue;
            cellmensaje.Text      = mensaje;
            modalMensaje.Show();
        }
        catch (Exception ex)
        {
            cellmensaje.ForeColor = System.Drawing.Color.Red;
            btnAceptar.BackColor  = System.Drawing.Color.Red;
            cellmensaje.Text      = "Error:" + ex;
            modalMensaje.Show();
        }
    }
Ejemplo n.º 2
0
    private void procesaArchivo()
    {
        string TargetPath = "../../temp/banco.txt";

        fileUploader.PostedFile.SaveAs(Server.MapPath(TargetPath));
        string fic   = Server.MapPath(TargetPath).ToString();
        string texto = string.Empty;

        lblError.Text = "";

        StreamReader sr   = new StreamReader(fic);
        int          cont = 0;
        string       Line = string.Empty;

        while ((Line = sr.ReadLine()) != null)
        {
            try
            {
                ValidaCompraModel   model  = new ValidaCompraModel();
                ValidaComprasAction action = new ValidaComprasAction();
                cont++;
                Line             = Line.Trim();
                model.Fecha      = Convert.ToDateTime(Line.Substring(0, 10));
                model.Referencia = Convert.ToInt32(Line.Substring(10, 10));
                model.Importe    = Convert.ToDouble(Line.Substring(20));
                if (action.ValidaDatos(model))
                {
                    if (action.ValidaCompra(model))
                    {
                        lblError.Text += actualizaCompra(model);
                    }
                    else
                    {
                        lblError.Text += "Compra: " + model.Referencia + " ya registrada<br />";
                    }
                }
                else
                {
                    lblError.Text += "Datos Incorrectos en referencia: " + model.Referencia + "</br>";
                }
            }
            catch (Exception)
            {
                lblError.Text += "Formato Inválido en Línea: " + cont + "</br>";
            }
        }
        sr.Close();
    }
Ejemplo n.º 3
0
    public bool ValidaCompra(ValidaCompraModel Compra)
    {
        bool            resp      = false;
        string          status    = string.Empty;
        string          fecha     = string.Empty;
        Conection       con       = new Conection();
        MySqlConnection mySqlConn = con.conectBDPackage();

        try
        {
            string       strQuery = "SELECT STATUSPAGO, FECHA FROM COMPRAS WHERE REFERENCIA=" + Compra.Referencia;
            MySqlCommand queryEx  = new MySqlCommand(strQuery, mySqlConn);
            mySqlConn.Open();
            MySqlDataReader reader = queryEx.ExecuteReader();
            while (reader.Read())
            {
                status = reader["STATUSPAGO"].ToString();
                if (status != "PAGADO")
                {
                    resp = true;
                }
            }
            reader.Close();
        }
        catch (Exception ex)
        {
            _LOGGER.Error("Error al ValidaCompra: " + ex.Message);
            throw new Exception("Error ValidaComprasAction: " + ex.Message);
        }
        finally
        {
            mySqlConn.Dispose();
            mySqlConn.Close();
            con.closeConection();
        }
        return(resp);
    }
Ejemplo n.º 4
0
    public bool ValidaDatos(ValidaCompraModel Compra)
    {
        bool            resp      = false;
        Conection       con       = new Conection();
        MySqlConnection mySqlConn = con.conectBDPackage();

        try
        {
            string       strQuery = "SELECT TOTAL, FECHAORDEN FROM COMPRAS WHERE REFERENCIA=" + Compra.Referencia;
            MySqlCommand queryEx  = new MySqlCommand(strQuery, mySqlConn);
            mySqlConn.Open();
            MySqlDataReader reader = queryEx.ExecuteReader();
            while (reader.Read())
            {
                double   total      = Convert.ToDouble(reader["TOTAL"].ToString());
                DateTime fechaOrden = Convert.ToDateTime(reader["FECHAORDEN"].ToString());
                if (Compra.Importe.Equals(total) && Compra.Fecha >= fechaOrden)
                {
                    resp = true;
                }
            }
            reader.Close();
        }
        catch (Exception ex)
        {
            _LOGGER.Error("Error al ValidarDatos: " + ex.Message);
            throw new Exception("Error ValidaComprasAction: " + ex.Message);
        }
        finally
        {
            mySqlConn.Dispose();
            mySqlConn.Close();
            con.closeConection();
        }
        return(resp);
    }
Ejemplo n.º 5
0
    private string actualizaCompra(ValidaCompraModel model)
    {
        string mensaje = string.Empty;

        try
        {
            ValidaComprasAction action     = new ValidaComprasAction();
            SubePuntosAction    Subepuntos = new SubePuntosAction();
            action.RevisaCompra(model.Referencia);                           //Valida que coincidan los datos del archivo con la orden de compra
            List <int> datos       = action.ConsultaDatos(model.Referencia); //Lee los datos de la compra segun la referencia del archivo
            int        idCompra    = datos[0];
            int        idAsociado  = datos[1];
            int        idProspecto = datos[2];
            int        puntos      = datos[3];

            if (idProspecto > 0)                                                        //Compra Inscripcion
            {
                mensaje = CompraInscripcion(idProspecto, idCompra, idAsociado, puntos); //Inserta nuevo asociado, manda correos, cambia el asociado de la compra
                action.EliminaProspecto(idProspecto);                                   //Elmina el prospecto cuando ya está dado de alta como asociado
                datos       = action.ConsultaDatos(model.Referencia);
                idCompra    = datos[0];
                idAsociado  = datos[1];
                idProspecto = datos[2];
                puntos      = datos[3];
            }

            if (action.actualizaPago(idAsociado, model.Fecha, idCompra)) //Pone Pagado y fechaPago según el archivo
            {
                List <string> activacion = action.ConsInfoCompra(idCompra);
                if (activacion[0] == "1" && idProspecto == 0)
                {
                    DateTime FinActivac = action.ConsFinActivacionAsociado(idAsociado);
                    if (FinActivac >= Convert.ToDateTime(activacion[1]))
                    {
                        action.actualizaAsociado(Convert.ToDateTime(activacion[2]), idAsociado, idCompra, puntos);
                        mensaje = "Compra: " + idCompra + " Activación.<br />";
                    }
                    else
                    {
                        action.actualizaAsociado(Convert.ToDateTime(activacion[2]), Convert.ToDateTime(activacion[1]), idAsociado, idCompra, puntos);
                        mensaje = "Compra: " + idCompra + " Activación.<br />";
                    }
                }
                else
                {
                    if (idProspecto == 0)
                    {
                        if (puntos.Equals(1000))//Subir 800 pts para compra de 1000 pts
                        {
                            Subepuntos.subePuntosExcedente(idAsociado, idCompra, 800);
                            mensaje = "Compra: " + idCompra + " Excedente - Subio Puntos <br />";
                        }
                        else
                        {
                            mensaje = "Compra: " + idCompra + " Tipo Excedente <br />";
                        }
                    }
                    else
                    {
                        mensaje = "Compra: " + idCompra + " Tipo Inscripcion " + idAsociado + " <br />";
                    }
                }
            }
            else
            {
                mensaje += "Error al registrar referencia:" + model.Referencia + "<br />";
            }
        }
        catch (Exception ex)
        {
            mensaje = "Error " + ex.Message;
        }
        return(mensaje);
    }