Пример #1
0
        /// <summary>
        /// Evento onClick para finalizar la compra
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void FinalizarCompra(object sender, EventArgs e)
        {
            Finalizar_Compra panel1 = new Finalizar_Compra();

            panel1.MinimizeBox   = false;
            panel1.MaximizeBox   = false;
            panel1.ShowIcon      = false;
            panel1.ShowInTaskbar = false;
            panel1.ShowDialog();
            introducidoCantidad = true;
            if (Constantes.VENTA_HECHA)
            {
                //Se genera una factura con la compra realizada y la guarda en su carpeta correspondiente
                facturaPDF();

                float importeIVA = ((Convert.ToSingle(Constantes.IMPORTE) * Convert.ToInt32(ivacb)) / 100) + Convert.ToSingle(Constantes.IMPORTE);

                if (Constantes.contabilidad_TA.getRegistros(DateTime.Today.ToShortDateString()) == 0)
                {
                    Constantes.contabilidad_TA.Insert(DateTime.Now.ToShortDateString(), 0, Math.Round(importeIVA, 2));
                }
                else
                {
                    int   id       = Convert.ToInt32(Constantes.contabilidad_TA.GetId(DateTime.Now.ToShortDateString()));
                    float ingresos = Convert.ToSingle(Constantes.contabilidad_TA.getIngresos(DateTime.Now.ToShortDateString()));

                    Constantes.contabilidad_TA.UpdateIngresos(Convert.ToDouble(ingresos + Math.Round(importeIVA, 2)), id);
                }
                listView1.Items.Clear();
                imageList1.Images.Clear();
                btAtrasVTienda.Visible = false;
                lFlecha.Visible        = false;
                lCategoria.Text        = "";
                cargarListaVenta();
                cesta.Rows.Clear();
                listaCategoria = true;
                Total();
            }
        }
Пример #2
0
        /// <summary>
        /// Metodo que finaliza la compra y abre una ventana para introducir el cambio de dinero
        /// y genera la factura con la venta hecha y la guarda en la ruta de facturas venta
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void FinalizarCompra(object sender, EventArgs e)
        {
            Finalizar_Compra panel1 = new Finalizar_Compra();

            panel1.MinimizeBox   = false;
            panel1.MaximizeBox   = false;
            panel1.ShowIcon      = false;
            panel1.ShowInTaskbar = false;
            panel1.ShowDialog();
            introducidoCantidad = true;
            if (Constantes.VENTA_HECHA)
            {
                //Se genera una factura con la compra realizada y la guarda en su carpeta correspondiente
                #region Generar Factura
                string factura       = @"C:\GarTor\Facturas\VentasTienda\Factura" + DateTime.Now.ToString("dd-MM-yyyy_H.mm.ss") + ".txt";
                string texto         = null;
                string fecha_dia     = DateTime.Now.ToShortDateString();
                string fechaHora_dia = DateTime.Now.ToString();
                int    num_Pedido    = Convert.ToInt32(Constantes.pedidos_TA.getPedidosDia(fecha_dia));
                int    cod_Pedido    = 0;
                int    num_detalle   = 1;
                int    cod_Factura   = 0;
                float  cantidad      = 0;
                float  precio        = 0.00f;
                string articulo      = "";

                Constantes.pedidos_TA.Insert(num_Pedido, fecha_dia);
                cod_Pedido = Convert.ToInt32(Constantes.pedidos_TA.getCodigoPedido(num_Pedido, fecha_dia));//Cod pedido introducido
                Constantes.factVenta_TA.Insert(cod_Pedido, fecha_dia);
                cod_Factura = Convert.ToInt32(Constantes.factVenta_TA.getCodigoFactura(cod_Pedido));

                foreach (DataGridViewRow row in cesta.Rows)
                {
                    cantidad = Convert.ToSingle(row.Cells[Constantes.COLUMNA_UNIDADES].Value);
                    articulo = Convert.ToString(row.Cells[Constantes.COLUMNA_NOMBRE].Value);
                    precio   = Convert.ToSingle(row.Cells[Constantes.COLUMNA_PRECIO].Value);
                    Constantes.detaPedidosVenta_TA.Insert(cod_Factura, num_detalle, cantidad, precio, articulo);
                    num_detalle += 1;
                }

                DataTable compra        = Constantes.detaPedidosVenta_TA.GetDetallePedido(cod_Factura);//Creamos un datatable con el detalle del pedido de la factura introducida para recorrerlo
                String    CadenaCompra  = "";
                float     total_factura = 0.00f;

                foreach (DataRow row in compra.Rows)
                {
                    float  total          = 0.00f;
                    string nom_Producto   = Convert.ToString(row["Articulo"]);
                    int    unidades       = Convert.ToInt32(row["Cantidad"]);
                    float  precio_detalle = Convert.ToSingle(row["Precio"]);
                    total = precio_detalle * (Convert.ToSingle(unidades));

                    //Evaluamos que el nombre del producto sea mayor que 28 caracteres para acortarlo en la factura
                    //Damos formato a la cadena de compra de la factura con longitudes para tener unas tabulaciones entre columnas
                    if (nom_Producto.Length > 28)
                    {
                        CadenaCompra += String.Format("{0,-28}{1,8}{2,8}{3,12}\r\n", nom_Producto.Substring(0, 28), unidades, precio_detalle + " €", total.ToString("#,##0.##") + " €") + "\r\n"; //Para aplicar formato de columnas
                    }
                    else
                    {
                        CadenaCompra += String.Format("{0,-28}{1,8}{2,8}{3,12}\r\n", nom_Producto, unidades, precio_detalle + " €", total.ToString("#,##0.##") + " €") + "\r\n"; //Para aplicar formato de columnas
                    }
                    total_factura += total;
                }
                StreamWriter sw = new StreamWriter(factura);
                texto = "FACTURA SIMPLIFICADA" +
                        "\r\nPasteleria MARCO" +
                        "\r\nPaseo de los Jesuitas 18, Madrid" +
                        "\r\nTelf. 91 463 99 82" +
                        "\r\nN.I.F. 07487245D\r\n\r\n" +
                        String.Format("\r\n{0,-28}{1,8}{2,8}{3,12}\r\n", "Nombre Articulo", "Unidades", "Precio", "Total") + //Para aplicar formato de columnas
                        "\r\n" + CadenaCompra +
                        "\r\n TOTAL DE LA COMPRA: " + total_factura + " €\r\n" +
                        "\r\n IVA incluido" +
                        "\r\n Factura: " + Constantes.factVenta_TA.getCodigoFactura(cod_Pedido).ToString();
                sw.WriteLine(texto);
                sw.Close();
                #endregion

                AddIngresos();
                //Recargamos la lista de los articulos para que cargue las imagenes de categorias y ponga las flechas de menus superiores y la cesta por defecto
                listView1.Items.Clear();
                imageList1.Images.Clear();
                btAtrasVTienda.Visible = false;
                lFlecha.Visible        = false;
                lCategoria.Text        = "";
                cargarListaVenta();
                cesta.Rows.Clear();
                listaCategoria = true;
                Total();
            }
        }