Esempio n. 1
0
        private void button2_Click(object sender, EventArgs e)
        {
            int    dias          = 0;
            string fecha_credito = "0000-00-00 00:00:00";
            string pagado        = "SI";

            if (chkContado.Checked != true)
            {
                dias          = Convert.ToInt16(txtdias.Text);
                fecha_credito = dtVencimiento.Text + " 00:00:00";
                pagado        = "NO";
            }
            Models.Compras compra = new Models.Compras(
                0,
                txtFolio.Text,
                dtFecha.Text + " 00:00:00",
                dtFechaDoc.Text + " 00:00:00",
                txtNumero.Text,
                "A",
                dias,
                fecha_credito,
                pagado,
                Convert.ToDouble(txtSubtotal.Text),
                Convert.ToDouble(txtiva.Text),
                Convert.ToDouble(txttotal.Text),
                Convert.ToDouble(txtdescuento.Text)
                );
            using (compra)
            {
                compra.crateCompra();
                List <Models.Compras> resultado = compra.GetlastCompras(dtFecha.Text + " 00:00:00", dtFechaDoc.Text + " 00:00:00", txtNumero.Text, Convert.ToDouble(txttotal.Text));
                Purchases             detalles  = new Purchases();
                detalles.Id        = 0;
                detalles.Id_compra = resultado[0].Id;
                Kardex      kardex   = new Kardex();
                Product     producto = new Product();
                Afecta_inv  afecta   = new Afecta_inv();
                Caducidades Caducida = new Caducidades();
                Caducida.Id        = 0;
                Caducida.Id_compra = resultado[0].Id;
                double nuevo = 0;
                foreach (DataGridViewRow row in dtProductos.Rows)
                {
                    using (producto)
                    {
                        List <Product> prod = producto.getProductById(Convert.ToInt16(row.Cells["id_producto"].Value.ToString()));

                        nuevo = Convert.ToInt16(row.Cells["cantidad"].Value.ToString());
                        while (prod[0].Parent != "0")
                        {
                            nuevo = nuevo * Convert.ToInt16(prod[0].C_unidad);
                            prod  = producto.getProductById(Convert.ToInt16(prod[0].Parent));
                        }


                        detalles.Cantidad    = Convert.ToDouble(row.Cells["cantidad"].Value.ToString());
                        detalles.Id_producto = Convert.ToInt16(row.Cells["id_producto"].Value.ToString());
                        detalles.P_u         = Convert.ToDouble(row.Cells["p_u"].Value.ToString());
                        detalles.Total       = Convert.ToDouble(row.Cells["total"].Value.ToString());
                        using (detalles)
                        {
                            detalles.createPurchases();
                            Caducida.Id_producto = prod[0].Id;
                            Caducida.Caducidad   = row.Cells["caducidad"].Value.ToString();
                            Caducida.Lote        = row.Cells["lote"].Value.ToString();
                            Caducida.Cantidad    = nuevo;
                            using (caducidad)
                            {
                                Caducida.createCaducidad();
                            }
                            kardex.Fecha        = Convert.ToDateTime(dtFecha.Text).ToString();
                            kardex.Id_producto  = prod[0].Id;
                            kardex.Tipo         = "C";
                            kardex.Cantidad     = nuevo;
                            kardex.Antes        = prod[0].Existencia;
                            kardex.Id           = 0;
                            kardex.Id_documento = Convert.ToInt16(resultado[0].Id);
                            using (kardex)
                            {
                                kardex.CreateKardex();
                                List <Kardex> numeracion = kardex.getidKardex(prod[0].Id, Convert.ToInt16(resultado[0].Id), "C");
                                using (afecta)
                                {
                                    afecta.Agrega(numeracion[0].Id);
                                }
                            }
                        }
                    }
                }
            }



            this.Close();
        }
Esempio n. 2
0
        private void Form_compras_Load(object sender, EventArgs e)
        {
            txtCodigo.AutoCompleteCustomSource = cargadatos();
            txtCodigo.AutoCompleteMode         = AutoCompleteMode.SuggestAppend;
            txtCodigo.AutoCompleteSource       = AutoCompleteSource.CustomSource;

            txtDescripcion.AutoCompleteCustomSource = cargadatos2();
            txtDescripcion.AutoCompleteMode         = AutoCompleteMode.SuggestAppend;
            txtDescripcion.AutoCompleteSource       = AutoCompleteSource.CustomSource;

            dtFecha.Format             = DateTimePickerFormat.Custom;
            dtFecha.CustomFormat       = "yyyy-MM-dd";
            dtFechaDoc.Format          = DateTimePickerFormat.Custom;
            dtFechaDoc.CustomFormat    = "yyyy-MM-dd";
            dtVencimiento.Format       = DateTimePickerFormat.Custom;
            dtVencimiento.CustomFormat = "yyyy-MM-dd";
            txtdescuento.Text          = "0";
            carga_proveedor();
            if (folio != "0")
            {
                Models.Compras compra = new Models.Compras();
                using (compra)
                {
                    List <Models.Compras> resultado = compra.getCompraByid(Convert.ToInt16(folio));
                    foreach (Models.Compras item in resultado)
                    {
                        cbProveedor.SelectedText = item.Proveedor;
                        txtFolio.Text            = item.Folio_doc;
                        dtFecha.Text             = item.Fecha;
                        dtFechaDoc.Text          = item.Fecha_doc;
                        txttotal.Text            = item.Total.ToString();
                        txtiva.Text       = item.Iva.ToString();
                        txtdescuento.Text = item.Descuento.ToString();
                        txtSubtotal.Text  = item.Subtotal.ToString();
                        if (item.Pagado == "SI")
                        {
                            chkContado.Checked = true;
                        }
                        else
                        {
                            chkContado.Checked = false;
                        }

                        if (chkContado.Checked == false)
                        {
                            txtdias.Text       = item.Dias.ToString();
                            dtVencimiento.Text = item.Fecha_credito;
                        }
                    }
                }
                Product     producto    = new Product();
                Purchases   detalle     = new Purchases();
                Caducidades caducidades = new Caducidades();
                string      master      = "0";
                int         id_prod     = 0;
                using (detalle)
                {
                    List <Purchases> resu = detalle.getPurchases(Convert.ToInt16(folio));
                    foreach (Purchases va in resu)
                    {
                        using (producto)
                        {
                            List <Product> prod = producto.getProductById(va.Id_producto);
                            master  = prod[0].Parent;
                            id_prod = prod[0].Id;
                            while (master != "0")
                            {
                                List <Product> encontrado = producto.getProductById(Convert.ToInt16(master));
                                master  = encontrado[0].Parent;
                                id_prod = encontrado[0].Id;
                            }
                            using (caducidades)
                            {
                                List <Caducidades> cadu = caducidades.GetCaducidadesbyCompra(Convert.ToInt16(folio), id_prod);
                                dtProductos.Rows.Add(va.Id_producto, va.Cantidad, prod[0].Code1, prod[0].Description, va.P_u, va.Total, cadu[0].Lote, cadu[0].Caducidad);
                            }
                        }
                    }
                }



                txtFolio.Enabled         = false;
                button1.Enabled          = false;
                toolStripButton2.Enabled = false;
                toolStripButton1.Enabled = false;
                button4.Enabled          = false;
                button2.Enabled          = false;
                txtCodigo.Enabled        = false;
                txtDescripcion.Enabled   = false;
                txtdescuento.Enabled     = false;
                txtCantidad.Enabled      = false;
                txtpu.Enabled            = false;
                chkContado.Enabled       = false;
                txtNumero.Enabled        = false;
                cbProveedor.Enabled      = false;
                dtFechaDoc.Enabled       = false;
                dtProductos.Columns["cantidad"].ReadOnly = true;
                txtdescuento.Enabled = false;
            }
        }