protected void GridViewFacturasDetail_CustomCallback(object sender, DevExpress.Web.ASPxGridViewCustomCallbackEventArgs e)
    {
        string SerieFactura = Convert.ToString(GridViewFacturas.GetSelectedFieldValues("SerieFactura").Select(c => c).FirstOrDefault());

        GridViewFacturasDetail.DataSource = FacturasRepository.GetFacturasDetail(SerieFactura);
        GridViewFacturasDetail.DataBind();
    }
 public FacturacionController(FacturasRepository repository, Serilog.ILogger logger, IMapper mapper, IWebHostEnvironment env)
 {
     Repository = repository;
     Logger     = logger;
     Mapper     = mapper;
     Env        = env;
 }
Example #3
0
    protected void GridViewFacturas_SelectionChanged(object sender, EventArgs e)
    {
        string SerieFactura = Convert.ToString(GridViewFacturas.GetSelectedFieldValues("SerieFactura").Select(c => c).FirstOrDefault());

        GridViewFacturasDetail.DataSource = FacturasRepository.GetFacturasDetail(SerieFactura);
        GridViewFacturasDetail.DataBind();
    }
    protected void GridViewFacturas_SelectionChanged(object sender, EventArgs e)
    {
        string SerieFactura = Convert.ToString(GridViewFacturas.GetSelectedFieldValues("SerieFactura").Select(c => c).FirstOrDefault());

        GridViewFacturasDetail.DataSource = FacturasRepository.GetFacturasDetail(SerieFactura);
        GridViewFacturasDetail.DataBind();
        ScriptManager.RegisterStartupScript(this.Page, Page.GetType(), "text", "divShow('#gridfamilia')", true);
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["User"] != null)
        {
            TopMenu.Visible    = false; //Login
            LogingMenu.Visible = true;  //Logout
        }
        else
        {
            TopMenu.Visible    = true;  //Login
            LogingMenu.Visible = false; //Logout
            if (!HttpContext.Current.Request.Url.AbsoluteUri.Contains("login"))
            {
                if (Page.IsCallback)
                {
                    ASPxWebControl.RedirectOnCallback("/Account/login.aspx");
                }
                else
                {
                    Response.Redirect("/Account/login.aspx");
                }
            }
        }

        DateTime?defecha = null;
        DateTime?afecha  = null;

        if (!Page.IsPostBack)
        {
            Session["buttonclick"] = "date";
            defecha = Convert.ToDateTime(fechahoy.ToString("01/MMM/yyy"));
            afecha  = Convert.ToDateTime(DateTime.DaysInMonth(fechahoy.Year, fechahoy.Month) + "/" + fechahoy.Month + "/" + fechahoy.Year);
        }

        if ((dtfromDate.Date != null || dttoDate.Date != null) && Convert.ToString(Session["buttonclick"]) == "date")
        {
            defecha = dtfromDate.Date;
            afecha  = dttoDate.Date;
        }

        var Cliente = (Clientes)Session["User"];

        GridViewFacturas.DataSource = FacturasRepository.GetAllFacturas("", Cliente.AutoCliente, defecha, afecha);
        GridViewFacturas.DataBind();

        string SerieFactura = string.Empty;

        if (GridViewFacturas.GetSelectedFieldValues("SerieFactura").Count > 0)
        {
            SerieFactura = Convert.ToString(GridViewFacturas.GetSelectedFieldValues("SerieFactura").Select(c => c).FirstOrDefault());
        }
        else
        {
            SerieFactura = Convert.ToString(GridViewFacturas.GetRowValues(0, "SerieFactura"));
        }
        GridViewFacturasDetail.DataSource = FacturasRepository.GetFacturasDetail(SerieFactura);
        GridViewFacturasDetail.DataBind();
    }
Example #6
0
        private void button1_Click(object sender, EventArgs e)
        {
            var errores = this.validarCamposCreateOrEdit();

            if (errores.Count == 0)
            {
                try
                {
                    Factura factura = new Factura();

                    factura.Nro              = decimal.Parse(txtNroFactura.Text);
                    factura.EmpresaCuit      = ((ComboBoxItemStringValue)cboEmpresa.SelectedItem).Value;
                    factura.ClienteDNI       = decimal.Parse(txtDNI.Text);
                    factura.Fecha            = txtFecha.Value;
                    factura.Estado           = 0;
                    factura.FechaVencimiento = txtFechaVencimiento.Value;

                    int i = 1;

                    foreach (ItemFactura itemFactura in listBox1.Items)
                    {
                        itemFactura.NroFactura = decimal.Parse(txtNroFactura.Text);
                        itemFactura.NroItem    = i;

                        listaItems.Add(itemFactura);

                        i++;
                    }

                    FacturasRepository.EditarFactura(factura, listaItems, nroFacturaOriginal);

                    MessageBox.Show("La factura fue modificada correctamente");

                    var index = new IndexFacturasForm();
                    this.Hide();
                    index.Show();
                }
                catch (SqlException sqlexc)
                {
                    //Violacion de primary key
                    if (sqlexc.Number == 547)
                    {
                        MessageBox.Show("No hay ningun cliente registrado con ese DNI");
                    }

                    conn.Close();
                }
            }
            else
            {
                string errorMessage = string.Join("\n", errores.ToArray());
                MessageBox.Show(errorMessage);
            }

            listaItems.Clear();
        }
Example #7
0
        private void button2_Click(object sender, EventArgs e)
        {
            if (!Regex.IsMatch(txtNroFactura.Text, regexSoloNumeros))
            {
                MessageBox.Show("Ingrese un numero de factura valido");
            }
            else
            {
                if (this.facturaRepetida(decimal.Parse(txtNroFactura.Text)) == true)
                {
                    MessageBox.Show("La factura ya esta en la lista");
                }
                else
                {
                    Factura factura = new Factura();

                    int a;

                    if (!int.TryParse(txtNroFactura.Text, out a))
                    {
                        MessageBox.Show("La factura debe ser un numero");
                    }
                    else
                    {
                        if (FacturasRepository.GetFacturaByNro(decimal.Parse(txtNroFactura.Text)).EmpresaCuit == null)
                        {
                            MessageBox.Show("No existe una factura con ese numero, debe crearla primero");
                        }
                        else
                        {
                            factura = FacturasRepository.GetFacturaByNro(a);

                            factura.Monto = FacturasRepository.ImporteFactura(factura.Nro);

                            importePago += factura.Monto;

                            lblImporte.Text = "$" + importePago;

                            listBox1.Items.Add(factura);
                        }
                    }
                }
            }

            txtNroFactura.Text = "";

            txtNroFactura.Focus();
        }
Example #8
0
        private void dataGridView1_CellContentClick_1(object sender, DataGridViewCellEventArgs e)
        {
            //Editar
            if (e.ColumnIndex == 6)
            {
                decimal nroFacturaAEditar = (decimal)dataGridView1.Rows[e.RowIndex].Cells[0].Value;

                Factura factura = FacturasRepository.GetFacturaByNro(nroFacturaAEditar);

                if (factura.Estado == 0)
                {
                    EditFacturaForm editForm = new EditFacturaForm(factura);
                    this.Hide();
                    editForm.Show();
                }
                else
                {
                    MessageBox.Show("No se puede editar una factura que ya fue pagada o rendida");
                }
            }
            //Eliminar
            if (e.ColumnIndex == 7)
            {
                decimal nroFacturaAEliminar = (decimal)dataGridView1.Rows[e.RowIndex].Cells[0].Value;

                Factura factura = FacturasRepository.GetFacturaByNro(nroFacturaAEliminar);

                if (factura.Estado == 0)
                {
                    try
                    {
                        FacturasRepository.EliminarFactura(nroFacturaAEliminar);

                        MessageBox.Show("La factura fue eliminada");

                        dataGridView1.Refresh();
                    }
                    catch (Exception exc)
                    {
                        MessageBox.Show("Hubo un error al eliminar la factura");
                    }
                }
                else
                {
                    MessageBox.Show("No se puede eliminar una factura que ya fue pagada o rendida");
                }
            }
        }
Example #9
0
        private void button3_Click(object sender, EventArgs e)
        {
            if (listBox1.SelectedItems.Count > 0)
            {
                Factura f = new Factura();

                f = (Factura)listBox1.SelectedItems[0];

                importePago -= FacturasRepository.ImporteFactura(f.Nro);

                listBox1.Items.Remove(listBox1.SelectedItems[0]);
                listBox1.Refresh();

                lblImporte.Text = "$" + importePago;

                txtNroFactura.Text = "";
            }
        }
Example #10
0
        private void button2_Click(object sender, EventArgs e)
        {
            dataGridView1.Rows.Clear();
            dataGridView1.Refresh();
            facturas = FacturasRepository.GetFacturasPendientesDeRendicionByEmpresa(((ComboBoxItemStringValue)comboEmpresas.SelectedItem).Value);

            if (facturas.Count > 0)
            {
                foreach (var item in facturas)
                {
                    dataGridView1.Rows.Add(item.Nro, item.ClienteDNI, item.EmpresaCuit, item.Fecha, item.FechaVencimiento, item.Monto);
                }

                lblTotalEnFacturas.Text = "$" + facturas.Sum(x => x.Monto);
            }
            else
            {
                MessageBox.Show("Puede ser que esta empresa ya haya sido rendida este mes o que no haya facturas de esta empresa en este mes para rendir");
            }
        }
 private void btnGenerar_Click(object sender, EventArgs e)
 {
     if (ProveedorId != null || RubroId != null)
     {
         if (ProveedorId != null)
         {
             //Verifico si tiene facturas sin compras asociadas
             var facturasIds = FacturasRepository.Listado().Where(f => f.ProveedorId == ProveedorId).Select(f => f.FacturaId).ToList();
             var compras     = ComprasRepository.Listado().Where(c => facturasIds.Contains(c.FacturaId)).Count();
             if (facturasIds.Count() != compras)
             {
                 var mensaje = "El proveedor seleccionado tiene facturas no han sido completadas. Está seguro que desea continuar?";
                 using (var popup = new ConfirmationForm(mensaje, "Si", "No"))
                 {
                     var result = popup.ShowDialog();
                     if (result == DialogResult.OK)
                     {
                         GenerarReporte();
                     }
                     else
                     {
                         DialogResult = DialogResult.None;
                     }
                 }
             }
             else
             {
                 GenerarReporte();
             }
         }
         else
         {
             GenerarReporte();
         }
     }
     else
     {
         MessageBox.Show("Debe ingresar un proveedor y/o un rubro");
         this.DialogResult = DialogResult.None;
     }
 }
Example #12
0
        public EditFacturaForm(Factura factura)
        {
            InitializeComponent();
            CargarCombo(factura.EmpresaCuit);

            nroFacturaOriginal = factura.Nro;

            txtNroFactura.Text       = factura.Nro.ToString();
            txtDNI.Text              = factura.ClienteDNI.ToString();
            txtFecha.Text            = factura.Fecha.ToString();
            txtFechaVencimiento.Text = factura.FechaVencimiento.ToString();

            var items = FacturasRepository.GetAllItemsFactura(factura.Nro);

            foreach (ItemFactura item in items)
            {
                listBox1.Items.Add(item);

                importePago += item.Cantidad * item.Monto;
            }

            lblImporte.Text = "$" + importePago;
        }
    protected void GridViewFacturas_CustomCallback(object sender, DevExpress.Web.ASPxGridViewCustomCallbackEventArgs e)
    {
        var Cliente = (Clientes)Session["User"];

        if (Cliente == null)
        {
            if (Page.IsCallback)
            {
                ASPxWebControl.RedirectOnCallback("/Account/login.aspx");
            }
            else
            {
                Response.Redirect("/Account/login.aspx");
            }
        }
        if (e.Parameters.Contains("searchalbaran"))
        {
            Session["buttonclick"]      = "searchalbaran";
            GridViewFacturas.DataSource = FacturasRepository.GetAllFacturas("", Cliente.AutoCliente, null, null);
        }
        else if (e.Parameters.Contains("searchfectura"))
        {
            Session["buttonclick"]      = "searchfectura";
            GridViewFacturas.DataSource = FacturasRepository.GetAllFacturas(searchfectura.Text, Cliente.AutoCliente, null, null);
        }
        else if (e.Parameters.Contains("date"))
        {
            Session["buttonclick"]      = "date";
            GridViewFacturas.DataSource = FacturasRepository.GetAllFacturas("", Cliente.AutoCliente, dtfromDate.Date, dttoDate.Date);
        }
        else
        {
            Session["buttonclick"]      = "showall";
            GridViewFacturas.DataSource = FacturasRepository.GetAllFacturas("", Cliente.AutoCliente, null, null);
        }
        GridViewFacturas.DataBind();
    }
Example #14
0
        private List <string> validarCamposCreateOrEdit()
        {
            List <string> errores = new List <string>();

            if (txtNroFactura.Text != "")
            {
                if (!Regex.IsMatch(txtNroFactura.Text, regexSoloNumeros))
                {
                    errores.Add("Ingrese un numero de factura valido");
                }
            }

            if (txtMotivo.Text == "")
            {
                errores.Add("Ingrese el motivo de la devolucion");
            }

            if (listBox1.Items.Count == 0)
            {
                errores.Add("Ingrese al menos una factura");
            }

            bool entro  = false;
            bool entro2 = false;
            bool entro3 = false;
            bool entro4 = false;
            bool entro5 = false;
            bool entro6 = false;

            foreach (Factura factura in listBox1.Items)
            {
                if (FacturasRepository.GetFacturaByNro(factura.Nro).EmpresaCuit == null && entro == false)
                {
                    errores.Add("No existe una factura con ese numero, debe crearla primero");

                    entro = true;
                }

                if (factura.Estado == (int)EstadoFactura.PendienteDePago && entro2 == false)
                {
                    errores.Add("Una o mas facturas estan pendiente de pago");

                    entro2 = true;
                }

                if (factura.Estado == (int)EstadoFactura.Rendida && entro3 == false)
                {
                    errores.Add("Una o mas facturas estan rendidas");

                    entro3 = true;
                }

                if (factura.ClienteDNI != ((ComboboxItem)cboClienteDNI.SelectedItem).Value && entro4 == false)
                {
                    errores.Add("Una o mas facturas no pertenecen al cliente");

                    entro4 = true;
                }

                if (factura.FechaVencimiento <= ConfiguracionFecha.FechaSistema && entro5 == false)
                {
                    errores.Add("Una o mas facturas ya vencieron");

                    entro5 = true;
                }

                if (EmpresasRepository.EmpresaEstaActiva(factura.EmpresaCuit) == false && entro6 == false)
                {
                    errores.Add("Una o mas facturas pertenecen a una empresa que esta inactiva");

                    entro6 = true;
                }
            }

            return(errores);
        }
Example #15
0
        private List <string> validarCamposCreateOrEdit()
        {
            List <string> errores = new List <string>();

            if (txtNroFactura.Text != "")
            {
                if (!Regex.IsMatch(txtNroFactura.Text, regexSoloNumeros))
                {
                    errores.Add("Ingrese un numero de factura valido");
                }
            }

            if (listBox1.Items.Count == 0)
            {
                errores.Add("Ingrese al menos una factura");
            }

            if (Sucursal.SucursalActual != null && Sucursal.SucursalActual.CodigoPostal != ((ComboboxItem)cboSucursal.SelectedItem).Value)
            {
                errores.Add("El usuario no pertenece a la sucursal seleccionada");
            }

            if (Sucursal.SucursalActual != null && Sucursal.SucursalActual.Activa == false)
            {
                errores.Add("La sucursal esta inactiva");
            }

            if (ClientesRepository.GetClienteByDNI(((ComboboxItem)cboClienteDNI.SelectedItem).Value).Activo == false)
            {
                errores.Add("El cliente esta inactivo");
            }

            bool entro  = false;
            bool entro2 = false;
            bool entro3 = false;
            bool entro4 = false;

            foreach (Factura factura in listBox1.Items)
            {
                if (factura.FechaVencimiento <= ConfiguracionFecha.FechaSistema)
                {
                    errores.Add("Una o mas facturas ya vencieron");
                }

                if (factura.Monto <= 0)
                {
                    errores.Add("Una o mas facturas tienen monto menor o igual a cero");
                }

                if (FacturasRepository.GetFacturaByNro(factura.Nro).EmpresaCuit == null && entro == false)
                {
                    errores.Add("No existe una factura con ese numero, debe crearla primero");

                    entro = true;
                }

                if (FacturasRepository.FacturaEstaPaga(factura.Nro) == true && entro2 == false)
                {
                    errores.Add("Una o mas facturas ya fueron pagadas");

                    entro2 = true;
                }

                if (FacturasRepository.FacturaEstaRendida(factura.Nro) == true && entro3 == false)
                {
                    errores.Add("Una o mas facturas ya fueron rendidas");

                    entro3 = true;
                }

                if (FacturasRepository.FacturaEsDeCliente(factura.Nro, ((ComboboxItem)cboClienteDNI.SelectedItem).Value) == false && entro4 == false)
                {
                    errores.Add("Una o mas facturas no pertenecen al cliente");

                    entro4 = true;
                }

                if (EmpresasRepository.EmpresaEstaActiva(FacturasRepository.GetFacturaByNro(factura.Nro).EmpresaCuit) == false)
                {
                    errores.Add("Una o mas facturas pertenecen a una empresa que esta inactiva");
                }
            }

            return(errores);
        }
Example #16
0
        private void btnBuscar_Click(object sender, EventArgs e)
        {
            //Filtros de busqueda
            try
            {
                dataGridView1.Rows.Clear();
                dataGridView1.Refresh();

                if (txtFiltroNumero.Text != "")
                {
                    int nro;

                    if (!int.TryParse(txtFiltroNumero.Text, out nro))
                    {
                        txtFiltroNumero.Text = "";

                        txtFiltroNumero.Focus();

                        throw new Exception("El numero de factura a buscar no debe contener letras");
                    }
                }

                if (txtFiltroCliente.Text != "")
                {
                    int dni;

                    if (!int.TryParse(txtFiltroCliente.Text, out dni))
                    {
                        throw new Exception("El DNI a buscar debe ser un numero, sin puntos ni comas");
                    }
                }

                var facturas = FacturasRepository.GetFacturasByFiltros(txtFiltroNumero.Text, ((ComboBoxItemStringValue)cboFiltroEmpresa.SelectedItem).Value, txtFiltroCliente.Text, ((ComboboxItem)cboFiltroEstado.SelectedItem).Value);

                foreach (var item in facturas)
                {
                    int index;

                    switch (item.Estado)
                    {
                    case 0:
                        index = dataGridView1.Rows.Add(item.Nro, item.ClienteDNI, item.EmpresaCuit, item.Fecha, item.FechaVencimiento, "Pendiente de Pago");
                        break;

                    case 1:
                        index = dataGridView1.Rows.Add(item.Nro, item.ClienteDNI, item.EmpresaCuit, item.Fecha, item.FechaVencimiento, "Pagada");
                        break;

                    case 2:
                        index = dataGridView1.Rows.Add(item.Nro, item.ClienteDNI, item.EmpresaCuit, item.Fecha, item.FechaVencimiento, "Rendida");
                        break;

                    default:
                        index = dataGridView1.Rows.Add(item.Nro, item.ClienteDNI, item.EmpresaCuit, item.Fecha, item.FechaVencimiento, "Pendiente de Pago");
                        break;
                    }

                    dataGridView1.Rows[index].Cells[6].Value = "Editar";
                    dataGridView1.Rows[index].Cells[7].Value = "Eliminar";
                }
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
        }
Example #17
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["User"] == null)
        {
            if (Page.IsCallback)
            {
                ASPxWebControl.RedirectOnCallback("/Account/login.aspx");
            }
            else
            {
                Response.Redirect("/Account/login.aspx");
            }
        }


        //       if (Request.Browser.IsMobileDevice)
        //       {
        //           if (Page.IsCallback)
        //           {
        //              ASPxWebControl.RedirectOnCallback("/mobile/Facturas.aspx");
        //          }
        //          else
        //          {
        //              Response.Redirect("/mobile/Facturas.aspx");
        //          }

        //      }
        DateTime?defecha = null;
        DateTime?afecha  = null;

        if (!Page.IsPostBack)
        {
            Session["buttonclick"] = "date";
            defecha = Convert.ToDateTime(fechahoy.ToString("01/MMM/yyy"));
            afecha  = Convert.ToDateTime(DateTime.DaysInMonth(fechahoy.Year, fechahoy.Month) + "/" + fechahoy.Month + "/" + fechahoy.Year);
        }

        if ((dtfromDate.Date != null || dttoDate.Date != null) && Convert.ToString(Session["buttonclick"]) == "date")
        {
            defecha = dtfromDate.Date;
            afecha  = dttoDate.Date;
        }

        var Cliente = (Clientes)Session["User"];

        GridViewFacturas.DataSource = FacturasRepository.GetAllFacturas("", Cliente.AutoCliente, defecha, afecha);
        GridViewFacturas.DataBind();

        string SerieFactura = string.Empty;

        if (GridViewFacturas.GetSelectedFieldValues("SerieFactura").Count > 0)
        {
            SerieFactura = Convert.ToString(GridViewFacturas.GetSelectedFieldValues("SerieFactura").Select(c => c).FirstOrDefault());
        }
        else
        {
            SerieFactura = Convert.ToString(GridViewFacturas.GetRowValues(0, "SerieFactura"));
        }
        GridViewFacturasDetail.DataSource = FacturasRepository.GetFacturasDetail(SerieFactura);
        GridViewFacturasDetail.DataBind();
    }