예제 #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 = "";
            }
        }
예제 #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;
        }
예제 #3
0
        public string[] Boton_aceptar(string[] arraytextbox, int modificara = 0, string[] infoextra = null, char caracter_spliteo = '°')
        {
            Tex_base             bas = new Tex_base();
            Operaciones_archivos op  = new Operaciones_archivos();
            string temp2             = "";

            string[] info_detro_celda = G_datos_de_boton.Split(G_parametros[0]);

            for (int i = 0; i < info_detro_celda.Length; i++)
            {
                string[] posicion_y_datos = info_detro_celda[i].Split(caracter_spliteo);
                if (posicion_y_datos.Length >= 2)
                {
                    arraytextbox[Convert.ToInt32(posicion_y_datos[0])] = posicion_y_datos[1];
                }
            }

            int k = 0;

            for (int j = 0; j < this.Controls.Count; j++) //aqui agrega al arreglo global "arraytextbox" la informacion
            {
                object obj = this.Controls[j];

                for (int i = k; i < arraytextbox.Length; i++)
                {
                    if (obj is TextBox && arraytextbox[i] == null)
                    {
                        TextBox temp = (TextBox)obj;
                        arraytextbox[i] = temp.Text;
                        k = i;
                        break;
                    }
                    else if (obj is ComboBox && arraytextbox[i] == null)
                    {
                        ComboBox temp = (ComboBox)obj;
                        arraytextbox[i] = temp.Text;
                        k = i;
                        break;
                    }
                }
            }



            for (int i = 0; i < arraytextbox.Length; i++)
            {
                temp2 = temp2 + arraytextbox[i] + G_parametros[0];
            }
            Operaciones_textos op_tex = new Operaciones_textos();

            op_tex.Trimend_paresido(temp2, G_parametros[0]);


            bas.Crear_archivo_y_directorio("inf\\inventario\\cosas_no_estaban.txt");

            switch (modificara)
            {
            case 0:

                break;

            case 1:
                bas.Agregar("inf\\inventario\\cosas_no_estaban.txt", "movimiento origen: " + modificara + G_parametros[0] + temp2);
                bas.Agregar("inf\\inventario\\invent.txt", temp2);
                break;

            case 3:
                bas.Agregar("inf\\inventario\\cosas_no_estaban.txt", "movimiento origen: " + modificara + G_parametros[0] + temp2);
                break;

            default:
                bas.Agregar("inf\\inventario\\cosas_no_estaban.txt", "movimiento origen: " + modificara + G_parametros[0] + temp2);
                break;
            }

            this.Close();
            return(arraytextbox);
        }
예제 #4
0
파일: pedidos.cs 프로젝트: qu1r30n/tienda
        private void Btn_procesar_venta_Click(object sender, EventArgs e)
        {
            Ventana_emergente ventana_emerg = new Ventana_emergente();

            //a = 5;
            string[] enviar         = { "3°venta_directa°1°0", "3°preVenta°2°0" };
            string   valor_devuelto = ventana_emerg.Proceso_ventana_emergente(enviar);
            bool     compra_directa;

            DateTime fecha_hora  = DateTime.Now;
            string   año_mes_dia = fecha_hora.ToString("yyyyMMdd");

            if (valor_devuelto != "")
            {
                if (valor_devuelto == "1")
                {
                    compra_directa = true;


                    string[] provedores = bas.Leer("inf\\inventario\\pru\\provedores_pru_cmb.txt", null);//este regresa los provedores
                    string   provedores_en_una_linea = "";
                    for (int i = 0; i < provedores.Length; i++)
                    {
                        string[] linea_prov_espliteado = provedores[i].Split(G_parametros[0]);
                        provedores_en_una_linea = provedores_en_una_linea + linea_prov_espliteado[0] + G_parametros[1];
                    }
                    provedores_en_una_linea = bas.Trimend_paresido(provedores_en_una_linea, G_parametros[1]);

                    Ventana_emergente ventana_emerg2 = new Ventana_emergente();
                    string[]          enviar2        = { "2°cantidad_a_pagar°" + Lbl_cuenta.Text, "1°se_paga_de_caja°0°2", "2°°", "4°provedor°°°°" + provedores_en_una_linea };

                    string             se_paga_de_caja = ventana_emerg2.Proceso_ventana_emergente(enviar2);
                    Operaciones_textos op_text         = new Operaciones_textos();
                    se_paga_de_caja = op_text.cambiar_caracter(se_paga_de_caja, '|', '°');

                    string[] se_paga_de_caja_spliteado = se_paga_de_caja.Split(G_parametros[1]);
                    double   pago_de_caja_a_deuda      = Convert.ToDouble(se_paga_de_caja_spliteado[0]) - Convert.ToDouble(se_paga_de_caja_spliteado[1]);
                    if (pago_de_caja_a_deuda < 0)
                    {
                        DialogResult dialogResult = MessageBox.Show("no puede ser mayor lo que se paga se igualara", "error", MessageBoxButtons.YesNo);
                        if (dialogResult == DialogResult.Yes)
                        {
                            se_paga_de_caja_spliteado[1] = se_paga_de_caja_spliteado[0];
                            se_paga_de_caja_spliteado[2] = "0";
                        }
                        else
                        {
                            return;
                        }
                        se_paga_de_caja_spliteado[2] = "0";
                    }
                    else
                    {
                        se_paga_de_caja_spliteado[2] = "" + pago_de_caja_a_deuda;
                    }

                    string compra_joineada = string.Join("°", se_paga_de_caja_spliteado);
                    if (se_paga_de_caja_spliteado.Length > 2)
                    {
                        string direccion_pru = "inf\\inventario\\pru\\";
                        bas.si_no_existe_agega_comparacion(direccion_pru + "provedores_pru_cmb.txt", se_paga_de_caja_spliteado[3]);
                        bas.si_existe_suma_sino_agega_extra(direccion_pru + año_mes_dia + "_provedores_pru.txt", 3, se_paga_de_caja_spliteado[3], "0°1°2", se_paga_de_caja_spliteado[0] + "°" + se_paga_de_caja_spliteado[1] + "°" + se_paga_de_caja_spliteado[2], compra_joineada, '°');
                        bas.si_existe_suma_sino_agega_extra("inf\\inventario\\ven\\vent.txt", 0, año_mes_dia, "2", "" + se_paga_de_caja_spliteado[1], año_mes_dia + "|0|" + se_paga_de_caja_spliteado[1]);
                        Modelo_compra_venta mod_com_ven = new Modelo_compra_venta();

                        for (int i = 0; i < Lst_compras.Items.Count; i++)
                        {
                            string[] item_spliteado = Lst_compras.Items[i].ToString().Split(G_parametros[0]);
                            mod_com_ven.Modelo_compra(item_spliteado[0], item_spliteado[3], item_spliteado[2], item_spliteado[4], item_spliteado[1], item_spliteado[5], item_spliteado[6], compra_directa);
                            bas.si_no_existe_agega_extra(direccion_pru + "para_cambiar_de_provedor\\" + se_paga_de_caja_spliteado[3] + ".txt", 0, item_spliteado[0], item_spliteado[0] + "|" + item_spliteado[1]);
                            Lbl_nom_product_list.Text = "";
                            Lst_compras.Items.Clear();
                            Lbl_cuenta.Text = "0";
                        }
                    }
                }

                else
                {
                    compra_directa = false;
                    Modelo_compra_venta mod_com_ven = new Modelo_compra_venta();
                    for (int i = 0; i < Lst_compras.Items.Count; i++)
                    {
                        string[] item_spliteado = Lst_compras.Items[i].ToString().Split(G_parametros[0]);
                        mod_com_ven.Modelo_compra(item_spliteado[0], item_spliteado[3], item_spliteado[2], item_spliteado[4], item_spliteado[1], item_spliteado[5], item_spliteado[6], compra_directa);
                        Lbl_nom_product_list.Text = "";
                        Lst_compras.Items.Clear();
                        Lbl_cuenta.Text = "0";
                    }
                }
            }
        }