コード例 #1
0
ファイル: modelo_compra_venta.cs プロジェクト: qu1r30n/tienda
        public void Modelo_venta(string[] codigo, string[] cantidades_vendidas)
        {
            string               codigos_unidos = string.Join("°", codigo);
            DateTime             fecha_hora     = DateTime.Now;
            string               hora_min_seg   = fecha_hora.ToString("HH:mm:ss");
            string               año_mes_dia    = fecha_hora.ToString("yyyyMMdd");
            string               dia            = fecha_hora.ToString("dd");
            string               mes            = fecha_hora.ToString("MM");
            string               año            = fecha_hora.ToString("yyyy");
            Tex_base             bas            = new Tex_base();
            Operaciones_archivos op             = new Operaciones_archivos();

            string[] productos = bas.Leer("inf\\inventario\\invent.txt");
            decimal  acum_costo_venta = 0, acum_costo_compra = 0;

            string[] nom_productos = new string[codigo.Length];
            for (int j = 0; j < productos.Length; j++)
            {
                string[] prod_esplit = productos[j].Split(G_parametros[0]);
                for (int i = 0; i < codigo.Length; i++)
                {
                    if (prod_esplit[3] == codigo[i])
                    {
                        if (cantidades_vendidas[i] == "")//con esto se pone la cantidad que se vendio por cada cosa si no tiene cantidad le pone 1 para que sea un producto
                        {
                            cantidades_vendidas[i] = "1";
                        }

                        acum_costo_venta  = acum_costo_venta + (Convert.ToDecimal(prod_esplit[2]) * Convert.ToDecimal(cantidades_vendidas[i]));
                        acum_costo_compra = acum_costo_compra + (Convert.ToDecimal(prod_esplit[5]) * Convert.ToDecimal(cantidades_vendidas[i]));
                        nom_productos[i]  = prod_esplit[1];
                    }
                }
            }



            string direccion = "ventas\\" + año + "\\" + mes + "\\dias\\" + año_mes_dia + ".txt";
            string info      = hora_min_seg + " |" + codigos_unidos + " |" + acum_costo_venta + " |" + string.Join("°", nom_productos) + " |" + acum_costo_compra;

            bas.Agregar(direccion, info);//la hora de compra lo que compro el costo

            direccion = "ventas\\" + año + "\\" + mes + "\\" + mes + ".txt";
            op.Actualisar_resumen_venta(direccion, dia, acum_costo_venta, acum_costo_compra);//actualisa total de cada dias

            direccion = "ventas\\" + año + "\\" + año + ".txt";
            op.Actualisar_resumen_venta(direccion, mes, acum_costo_venta, acum_costo_compra);//actualisa total de cada mes

            direccion = "ventas\\total_años.txt";
            op.Actualisar_resumen_venta(direccion, año, acum_costo_venta, acum_costo_compra);//muestra total de cada año

            direccion = "ventas\\total_en_juego.txt";
            op.Actualisar_resumen_venta(direccion, "dinero_hay: ", acum_costo_venta, acum_costo_compra);//muestra total de cada año

            direccion = "ventas\\ganancia_real.txt";
            op.Actualisar_ganancia_real(direccion, "dinero_hay: ", acum_costo_venta, acum_costo_compra);//muestra ganancia real

            bas.si_existe_suma_sino_agega_extra("inf\\inventario\\ven\\vent.txt", 0, año_mes_dia, "1", "" + acum_costo_venta, año_mes_dia + "|" + acum_costo_venta + "|0");


            for (int i = 0; i < codigo.Length; i++)
            {
                direccion = "inf\\inventario\\invent.txt";
                op.Actualisar_inventario(direccion, "" + codigo[i], Convert.ToDecimal(cantidades_vendidas[i]) * -1);

                direccion = "ventas\\" + año + "\\" + mes + "\\dias\\p_" + año_mes_dia + ".txt";
                op.Actualisar_resumen_venta_productos(direccion, "" + codigo[i], Convert.ToDecimal(cantidades_vendidas[i]), nom_productos[i]);

                direccion = "ventas\\" + año + "\\" + mes + "\\p_" + mes + ".txt";
                op.Actualisar_resumen_venta_productos(direccion, "" + codigo[i], Convert.ToDecimal(cantidades_vendidas[i]), nom_productos[i]);//muestra total de cada dias

                direccion = "ventas\\" + año + "\\p_" + año + ".txt";
                op.Actualisar_resumen_venta_productos(direccion, "" + codigo[i], Convert.ToDecimal(cantidades_vendidas[i]), nom_productos[i]);//muestra total de cada mes

                direccion = "ventas\\p_total_años.txt";
                op.Actualisar_resumen_venta_productos(direccion, "" + codigo[i], Convert.ToDecimal(cantidades_vendidas[i]), nom_productos[i]);//muestra total de cada año
            }
        }
コード例 #2
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";
                    }
                }
            }
        }