Exemplo n.º 1
0
        private void Procesar_codigo(string codigo)
        {
            bool bandera = false;

            for (int i = 0; i < G_productos.Count; i++)
            {
                String[] temp = G_productos[i].Split(G_parametros[0]);
                if (codigo == temp[0])
                {
                    Txt_buscar_producto.Text      = temp[0];
                    Lbl_nombre_producto_camb.Text = temp[3];
                    Lbl_precio_compra_canb.Text   = temp[5];
                    Lbl_precio_venta_camb.Text    = temp[2];
                    Lbl_cantidad_canb.Text        = temp[4];
                    Lbl_provedor_camb.Text        = temp[6];

                    bandera = true;
                    break;
                }
            }

            if (bandera == false)
            {
                Tex_base           bas             = new Tex_base();
                string[]           cantidad_produc = bas.Leer("inf\\inventario\\invent.txt", "0", G_parametros[0]);//el 0 solo regresa la primera columna que creo es el id
                string[]           espliteado      = Txt_buscar_producto.Text.Split(G_parametros[0]);
                string[]           provedores      = bas.Leer("inf\\inventario\\provedores.txt", "0", G_parametros[0]);
                Operaciones_textos op_text         = new Operaciones_textos();
                string             provedores_txt  = op_text.join_paresido('°', provedores);


                //------------------------------------------------------------
                Ventana_emergente vent_emergent = new Ventana_emergente();
                //-------------------------------------------------------------
                //a = 1;


                string[] enviar;

                if (G_prov_anterior == null)
                {
                    if (provedores.Length < 0)
                    {
                        G_prov_anterior = provedores[0];
                    }

                    enviar = new string[] { "2°id°" + (cantidad_produc.Length), "1°producto", "1°precio venta°0°2", "2°codigo de barras°" + espliteado[0], "1°cantidad°1°2", "1°costo de compra°0°2", "4°provedor°marinela°°" + G_prov_anterior + '°' + provedores_txt, "4°grupo°2°4°1°1°2°3°4", "2°no poner nada°", "1°cantidad_productos_por_paquete°1°2", "1°productos_elaborados°°3" };
                }
                else
                {
                    enviar = new string[] { "2°id°" + (cantidad_produc.Length), "1°producto", "1°precio venta°0°2", "2°codigo de barras°" + espliteado[0], "1°cantidad°1°2", "1°costo de compra°0°2", "4°provedor°" + G_prov_anterior + "°°" + G_prov_anterior + '°' + provedores_txt, "4°grupo°2°4°1°1°2°3°4", "2°no poner nada°", "1°cantidad_productos_por_paquete°1°2", "1°productos_elaborados°°3" };
                }
                string   mensage = vent_emergent.Proceso_ventana_emergente(enviar, 1); //el uno significa que modificara el inventario
                string[] temp    = mensage.Split(G_parametros[0]);                     //lo espliteo para cambiar el orden de la informacion y adaptarlo a como lo tiene el textbox

                string[] temp2;
                string   temp3 = "";

                if (temp.Length >= 3)//por si cierra la ventana no agregue a los text box
                {
                    MessageBox.Show("ya se agrego el producto: " + mensage);

                    G_prov_anterior = temp[6];
                    temp2           = new[] { temp[3], temp[0], temp[2], temp[1], temp[4], temp[5], temp[6], temp[7] }; //aqui lo pongo en el orden que deve llevar
                    temp3           = string.Join(G_parametros[0] + "", temp2);                                         //uno todo en un string conforme al parametro o caracter de separacion
                    G_productos.Add(temp3);                                                                             //agrego en lista de productos
                    Txt_buscar_producto.AutoCompleteCustomSource.Add(temp3);                                            //agrego en el autocompletar

                    bas.si_no_existe_agega_comparacion("inf\\inventario\\provedores.txt", temp[6]);
                }
                Txt_buscar_producto.Text = "";
            }
        }
Exemplo n.º 2
0
        private void Procesar_codigo(string codigo)
        {
            string temporal;

            string[] temporal_s;
            decimal  total          = 0;
            decimal  total_cost_com = 0;
            bool     bandera        = false;

            for (int i = 0; i < G_productos.Count; i++)
            {
                String[] temp = G_productos[i].Split(G_parametros[0]);

                if (codigo == temp[0])//productos
                {
                    if (temp[8] == "")
                    {
                        temp[8] = "1";
                    }

                    string[] grupo = temp[7].Split('°');

                    Ventana_emergente vent_emergent = new Ventana_emergente();

                    if (grupo[0] == "1")
                    {
                        bool esta_libre_la_lista_de_repeticiones_de_producto = true;

                        Txt_buscar_producto.Text    = "";
                        Txt_nom_producto.Text       = "";
                        Lbl_costo_product_list.Text = temp[8] + " COSTO: " + temp[2];
                        Lbl_nom_product_list.Text   = temp[3] + "    PRECIO UNITARIO: " + temp[2];

                        for (int j = 0; j < Lst_ventas.Items.Count; j++)
                        {
                            string[] item_espliteado = Lst_ventas.Items[j].ToString().Split(G_parametros[0]);
                            if (codigo == item_espliteado[0])
                            {
                                item_espliteado[8]          = "" + (Convert.ToDecimal(item_espliteado[8]) + Convert.ToDecimal(temp[8]));
                                Lbl_costo_product_list.Text = item_espliteado[8] + " COSTO: " + (Convert.ToDecimal(item_espliteado[2]) * Convert.ToDecimal(item_espliteado[8]));
                                Lst_ventas.Items[j]         = string.Join("" + G_parametros[0], item_espliteado);
                                esta_libre_la_lista_de_repeticiones_de_producto = false;
                            }
                        }
                        if (esta_libre_la_lista_de_repeticiones_de_producto)
                        {
                            Lst_ventas.Items.Add(string.Join("" + G_parametros[0], temp));
                        }
                    }

                    else if (grupo[0] == "2")//litros o kilos
                    {
                        bool esta_libre_la_lista_de_repeticiones_de_producto = true;
                        //a = 6;
                        string[] enviar  = { "2°producto°" + temp[3], "1°cantidad en litros o kilos(se puede decimal)°°2" };
                        string   mensage = vent_emergent.Proceso_ventana_emergente(enviar);
                        string[] informacion_vent_eme = mensage.Split(G_parametros[0]);//lo espliteo para cambiar el orden de la informacion y adaptarlo a como lo tiene el textbox
                        temp[8] = informacion_vent_eme[1];

                        if (informacion_vent_eme[1] != "")
                        {
                            for (int j = 0; j < Lst_ventas.Items.Count; j++)
                            {
                                string[] item_espliteado = Lst_ventas.Items[j].ToString().Split(G_parametros[0]);
                                if (codigo == item_espliteado[0])
                                {
                                    item_espliteado[8]          = "" + (Convert.ToDecimal(item_espliteado[8]) + Convert.ToDecimal(temp[8]));
                                    Lbl_costo_product_list.Text = item_espliteado[8] + " COSTO: " + (Convert.ToDecimal(item_espliteado[2]) * Convert.ToDecimal(item_espliteado[8]));
                                    Lst_ventas.Items[j]         = string.Join("" + G_parametros[0], item_espliteado);
                                    esta_libre_la_lista_de_repeticiones_de_producto = false;
                                }
                            }
                            if (esta_libre_la_lista_de_repeticiones_de_producto)
                            {
                                Lst_ventas.Items.Add(string.Join("" + G_parametros[0], temp));
                                Lbl_costo_product_list.Text = informacion_vent_eme[1] + " COSTO: " + Convert.ToDecimal(temp[2]) * Convert.ToDecimal(informacion_vent_eme[1]);
                            }
                            Lbl_nom_product_list.Text = temp[3] + "   PRECIO UNITARIO: " + temp[2];
                        }
                        Txt_buscar_producto.Text = "";
                        Txt_buscar_producto.Focus();
                    }

                    else if (grupo[0] == "3")//
                    {
                    }

                    else if (grupo[0] == "4")//tiempo
                    {
                    }

                    else//error o default
                    {
                        //cambiarlo por otra cosa despues es el mismo que que el 1---------------------------------------------------
                        //Lst_ventas.Items.Add(G_productos[i]);
                        //Txt_buscar_producto.Text = "";
                        //Txt_nom_producto.Text = "";

                        //Lbl_costo_product_list.Text = temp[2];
                        //Lbl_nom_product_list.Text = temp[3];
                        //------------------------------------------------------



                        {
                            bool esta_libre_la_lista_de_repeticiones_de_producto = true;

                            Txt_buscar_producto.Text    = "";
                            Txt_nom_producto.Text       = "";
                            Lbl_costo_product_list.Text = temp[8] + " COSTO: " + temp[2];
                            Lbl_nom_product_list.Text   = temp[3] + "    PRECIO UNITARIO: " + temp[2];

                            for (int j = 0; j < Lst_ventas.Items.Count; j++)
                            {
                                string[] item_espliteado = Lst_ventas.Items[j].ToString().Split(G_parametros[0]);
                                if (codigo == item_espliteado[0])
                                {
                                    item_espliteado[8]          = "" + (Convert.ToDecimal(item_espliteado[8]) + Convert.ToDecimal(temp[8]));
                                    Lbl_costo_product_list.Text = item_espliteado[8] + " COSTO: " + (Convert.ToDecimal(item_espliteado[2]) * Convert.ToDecimal(item_espliteado[8]));
                                    Lst_ventas.Items[j]         = string.Join("" + G_parametros[0], item_espliteado);
                                    esta_libre_la_lista_de_repeticiones_de_producto = false;
                                }
                            }
                            if (esta_libre_la_lista_de_repeticiones_de_producto)
                            {
                                Lst_ventas.Items.Add(string.Join("" + G_parametros[0], temp));
                            }
                        }
                    }

                    bandera = true;
                    break;
                }
            }


            if (bandera == false)
            {
                Tex_base           bas            = new Tex_base();
                string[]           info_invent    = bas.Leer("inf\\inventario\\invent.txt");
                string[]           espliteado     = Txt_buscar_producto.Text.Split(G_parametros[0]);
                string[]           provedores     = bas.Leer("inf\\inventario\\provedores.txt", "0", G_parametros[0]);//este regresa los provedores
                Operaciones_textos op_text        = new Operaciones_textos();
                string             provedores_txt = op_text.join_paresido('°', provedores);

                //------------------------------------------------------------
                Ventana_emergente vent_emergent = new Ventana_emergente();
                //-------------------------------------------------------------
                string[] enviar;
                if (G_prov_anterior == null)
                {
                    if (provedores.Length < 0)
                    {
                        G_prov_anterior = provedores[0];
                    }



                    enviar = new string[] { "2°id°" + info_invent.Length, "1°producto", "1°precio venta°0°2", "2°codigo de barras°" + espliteado[0], "1°cantidad°1°2", "1°costo de compra°0°2", "4°provedor°marinela°°" + G_prov_anterior + '°' + provedores_txt, "4°grupo°2°4°1°1°2°3°4", "2°no poner nada°", "1°cantidad_productos_por_paquete°1°2", "1°productos_elaborados°°3" };
                }
                else
                {
                    enviar = new string[] { "2°id°" + info_invent.Length, "1°producto", "1°precio venta°0°2", "2°codigo de barras°" + espliteado[0], "1°cantidad°1°2", "1°costo de compra°0°2", "4°provedor°" + G_prov_anterior + "°°" + G_prov_anterior + '°' + provedores_txt, "4°grupo°2°4°1°1°2°3°4", "2°no poner nada°", "1°cantidad_productos_por_paquete°1°2", "1°productos_elaborados°°3" };
                }

                //a = 7;
                string   mensage = vent_emergent.Proceso_ventana_emergente(enviar, 1); //el uno significa que modificara el inventario
                string[] temp    = mensage.Split(G_parametros[0]);                     //lo espliteo para cambiar el orden de la informacion y adaptarlo a como lo tiene el textbox



                string[] temp2;
                string   temp3 = "";

                if (temp.Length >= 3)//por si cierra la ventana no agregue a los text box
                {
                    G_prov_anterior = temp[6];
                    temp2           = new[] { temp[3], temp[0], temp[2], temp[1], temp[4], temp[5], temp[6], temp[7], temp[8], temp[9] }; //aqui lo pongo en el orden que deve llevar
                    temp3           = string.Join(G_parametros[0] + "", temp2);                                                           //uno todo en un string conforme al parametro o caracter de separacion
                    G_productos.Add(temp3);                                                                                               //agrego en lista de productos
                    Txt_buscar_producto.AutoCompleteCustomSource.Add(temp3);                                                              //agrego en el autocompletar

                    temp2 = new[] { temp[1], temp[0], temp[2], temp[3], temp[4], temp[5], temp[6], temp[7], temp[8], temp[9] };           //aqui lo pongo en el orden que deve llevar
                    temp3 = string.Join(G_parametros[0] + "", temp2);                                                                     //uno todo en un string conforme al parametro o caracter de separacion
                    Txt_nom_producto.AutoCompleteCustomSource.Add(temp3);

                    bas.si_no_existe_agega_comparacion("inf\\inventario\\provedores.txt", temp[6]);
                }


                Txt_buscar_producto.Text = "";
            }


            for (int coll = 0; coll < Lst_ventas.Items.Count; coll++)
            {
                temporal   = "" + Lst_ventas.Items[coll].ToString();
                temporal_s = temporal.Split(G_parametros[0]);

                if (temporal_s[0] != "")
                {
                    total          = total + Convert.ToDecimal(temporal_s[2]) * Convert.ToDecimal(temporal_s[8]);
                    total_cost_com = total_cost_com + (Convert.ToDecimal(temporal_s[5]) * Convert.ToDecimal(temporal_s[8]));
                }
            }

            Lbl_cuenta.Text = "" + total;
        }