Ejemplo n.º 1
0
        public void borrarItemsEnModificacion()
        {
            if (itemsDataGridView.SelectedRows.Count.Equals(0) && itemsDataGridView.Rows.Count >= 1)
            {
                Util.ShowMessage("Debe seleccionar al menos una fila para borrar.", MessageBoxIcon.Exclamation);
                return;
            }

            foreach (DataGridViewRow row in itemsDataGridView.SelectedRows)
            {
                int indexRow = row.Index;


                //Si el que se elimina es en realidad un agregado en UI no se hace DELETE porque nunca se agregó a la base
                if (indicesDeAgregados.Contains(indexRow))
                {
                    indicesDeAgregados.Remove(indexRow);
                }
                else
                {
                    //lo agrego en lista de eliminados y lo saco de la lista de modificados porque se va a borrar
                    String      idDetalleFactura = itemsDataTable.Rows[indexRow][3].ToString();
                    ItemFactura itemABorrar      = itemsFactura.Find(unItem => unItem.getIDItem().Equals(idDetalleFactura));
                    itemsEliminados.Add(itemABorrar);
                    itemsFactura.RemoveAll(unItem => unItem.getIDItem().Equals(idDetalleFactura));
                }

                itemsDataTable.Rows.RemoveAt(indexRow);
            }
        }
Ejemplo n.º 2
0
        private void btn_agregar_item_Click(object sender, EventArgs e)
        {
            ItemFactura item = new ItemFactura();

            if (!verificaValidacionesItem())
            {
                return;
            }

            item.detalle  = tx_detalle_item.Text;
            item.cantidad = Convert.ToInt32(tx_cantidad_item.Text);
            item.monto    = Convert.ToDouble(tx_monto_item.Text);
            //El numero de la factura se setea al modificar la factura
            factura.agregarNuevoItem(item);
            tabla_items.Rows.Add(tx_detalle_item.Text, tx_cantidad_item.Text, tx_monto_item.Text);
            actualizarTablaItems();

            limpiarCamposItems();
        }
Ejemplo n.º 3
0
        private void button3_Click_1(object sender, EventArgs e)
        {
            if (listBox1.SelectedItems.Count > 0)
            {
                ItemFactura i = new ItemFactura();

                i = (ItemFactura)listBox1.SelectedItems[0];

                importePago -= i.Cantidad * i.Monto;

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

                lblImporte.Text = "$" + importePago;

                txtNombreItem.Text    = "";
                txtCantidadItems.Text = "";
                txtMontoItem.Text     = "";
            }
        }
Ejemplo n.º 4
0
        private void agregarItemsParaIndicesAgregados()
        {
            for (int i = 0; i <= itemsDataTable.Rows.Count - 1; i++)
            {
                //Chequeo que sea un item creado (id_detalle_factura seria "")
                if (itemsDataTable.Rows[i][3].ToString() == "")
                {
                    String descripcionItem = itemsDataTable.Rows[i][0].ToString();
                    String cantidad        = itemsDataTable.Rows[i][1].ToString();
                    Double importe         = (Double)itemsDataTable.Rows[i][2];

                    ItemFactura itemNuevo = new ItemFactura();
                    itemNuevo.setDescripcion(descripcionItem);
                    itemNuevo.setCantidad(cantidad);
                    itemNuevo.setImporte(importe);

                    crearItemFactura(itemNuevo);
                }
            }
        }
Ejemplo n.º 5
0
        public List <ItemFactura> armarListaItemsFacturaEnCreacion()
        {
            List <ItemFactura> items = new List <ItemFactura>();

            for (int i = 0; i <= itemsDataGridView.Rows.Count - 1; i++)
            {
                if (camposDeItemLlenos(itemsDataGridView.Rows[i]))
                {
                    ItemFactura item = new ItemFactura();
                    item.setDescripcion(itemsDataGridView.Rows[i].Cells[0].Value.ToString());
                    item.setCantidad(itemsDataGridView.Rows[i].Cells[1].Value.ToString());
                    item.setImporte(Util.getNumeroDoubleFromString(itemsDataGridView.Rows[i].Cells[2].Value.ToString()));
                    item.setIDFactura(idFactura);
                    items.Add(item);
                }
                else
                {
                    throw new FormatoInvalidoException("listado de items. No puede haber ningún dato vacío.");
                }
            }

            return(items);
        }
Ejemplo n.º 6
0
        public List <ItemFactura> armarListaItemsFacturaEnModificacion()
        {
            List <ItemFactura> items = new List <ItemFactura>();

            for (int i = 0; i <= itemsDataTable.Rows.Count - 1; i++)
            {
                if (camposDeItemLlenos(itemsDataTable.Rows[i]))
                {
                    ItemFactura item = new ItemFactura();
                    item.setDescripcion(itemsDataTable.Rows[i][0].ToString());
                    item.setCantidad(itemsDataTable.Rows[i][1].ToString());
                    item.setImporte((Double)itemsDataTable.Rows[i][2]);
                    item.setIDItem(itemsDataTable.Rows[i][3].ToString());
                    item.setIDFactura(idFactura);
                    items.Add(item);
                }
                else
                {
                    throw new FormatoInvalidoException("listado de items. No puede haber ningún dato vacío.");
                }
            }

            return(items);
        }
Ejemplo n.º 7
0
        private void button2_Click_1(object sender, EventArgs e)
        {
            if (txtNroFactura.Text == "")
            {
                MessageBox.Show("Ingrese una factura antes de ingresar un item");
            }
            else if (txtDNI.Text == "")
            {
                MessageBox.Show("Ingrese un DNI antes de ingresar un item");
            }
            else
            {
                if (txtNombreItem.Text == "")
                {
                    MessageBox.Show("El renglon de la factura debe tener una descripción del nombre");
                }
                else
                {
                    ItemFactura item = new ItemFactura();

                    item.Detalle = txtNombreItem.Text;

                    int a;
                    int b;

                    if (!int.TryParse(txtCantidadItems.Text, out a))
                    {
                        MessageBox.Show("La cantidad de items debe ser un numero");
                    }
                    else
                    {
                        if (a <= 0)
                        {
                            MessageBox.Show("La cantidad de items debe ser un numero mayor a 0");
                        }
                        else
                        {
                            item.Cantidad = a;

                            if (!int.TryParse(txtMontoItem.Text, out b))
                            {
                                MessageBox.Show("El monto del item debe ser un numero");
                            }
                            else
                            {
                                if (b <= 0)
                                {
                                    MessageBox.Show("El monto del item debe ser un numero mayor a 0");
                                }
                                else
                                {
                                    item.Monto = b;

                                    importePago += a * b;

                                    lblImporte.Text = "$" + importePago;

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

            txtNombreItem.Text    = "";
            txtCantidadItems.Text = "";
            txtMontoItem.Text     = "";

            txtNombreItem.Focus();
        }
Ejemplo n.º 8
0
 private void eliminar(ItemFactura itemFactura)
 {
     mapper.EliminarDetalleFactura(itemFactura.getIDItem());
 }
Ejemplo n.º 9
0
 private void editar(ItemFactura itemFactura)
 {
     mapper.Modificar(Util.getNumeroFromString(itemFactura.getIDItem()), itemFactura);
 }
Ejemplo n.º 10
0
 public void crearItemFactura(ItemFactura item)
 {
     item.setIDFactura(idFactura);
     mapper.CrearDetalleFactura(item, idFactura);
 }
Ejemplo n.º 11
0
 private void btnCrear_Click(object sender, EventArgs e)
 {
     // Valida la creacion
     if (this.cmbCliente.SelectedItem == null)
     {
         MessageBox.Show("Error: Se debe seleccionar un cliente");
     }
     else if (this.cmbEmpresa.SelectedItem == null)
     {
         MessageBox.Show("Error: Se debe seleccionar una empresa");
     }
     else if (this.dtpFechaVencimiento.Value < Configuracion.Configuracion.fecha())
     {
         MessageBox.Show("Error: La fecha de vencimiento debe ser mayor a la fecha actual");
     }
     else if (this.dgvItems.Rows.Count == 1)
     {
         MessageBox.Show("Error: No se ingresaron items para la factura");
     }
     else
     {
         // Valida cada Item Factura
         for (int index = 0; index < this.dgvItems.Rows.Count - 1; index++)
         {
             DataGridViewRow row = this.dgvItems.Rows[index];
             if (row.Cells[0].Value == null || row.Cells[1].Value == null)
             {
                 MessageBox.Show("Error: Un item de la factura se encuentra vacio");
                 return;
             }
         }
         // Crea la Factura con los datos del formulario
         Factura factura = new Factura();
         factura.Cliente     = (Cliente)this.cmbCliente.SelectedItem;
         factura.Empresa     = (Empresa)this.cmbEmpresa.SelectedItem;
         factura.Creacion    = Configuracion.Configuracion.fecha();
         factura.Vencimiento = (DateTime)this.dtpFechaVencimiento.Value;
         // Asigna a la factura los items
         for (int index = 0; index < this.dgvItems.Rows.Count - 1; index++)
         {
             DataGridViewRow row         = this.dgvItems.Rows[index];
             ItemFactura     itemFactura = new ItemFactura();
             itemFactura.Factura  = factura;
             itemFactura.Monto    = Double.Parse(row.Cells[1].Value.ToString());
             itemFactura.Cantidad = Int32.Parse(row.Cells[0].Value.ToString());
             factura.Items.Add(itemFactura);
         }
         // Llama a la DB
         // Si salio todo bien, anuncia y agrega la factura
         Respuesta respuesta = DB.DB.Instancia.crearFactura(factura);
         if (respuesta.Codigo == 0)
         {
             this.borrarContenidoCampos();
             this.facturas.Add(factura);
             MessageBox.Show("La factura se registro satisfactoriamente");
         }
         else
         {
             MessageBox.Show(respuesta.Mensaje);
         }
     }
 }