예제 #1
0
        private void btnCalcular2_Click(object sender, EventArgs e)
        {
            dtg_resultado.Rows.Clear();
            dtg_resultado.Columns.Clear();

            int        index          = dgvProducto.SelectedRows[0].Index;
            int        idProducto     = int.Parse(dgvProducto.Rows[index].Cells[0].Value.ToString());
            Producto   prod           = Producto.GetProductoById(idProducto);
            int        numSemanas     = int.Parse(tbSemanas.Text);
            Empresa    empresa        = Empresa.GetEmpresa();
            List <int> demandaSemanal = new List <int>();

            double[] demandaMensual = PlanProducto.GetDemandaEstimadaByProducto(prod.IdProducto);
            int      contador       = 0;

            for (int i = 0; i < demandaMensual.Length; i++)
            {
                int semana = 0;
                while (semana < 4)
                {
                    if (contador == numSemanas)
                    {
                        break;
                    }
                    else
                    {
                        demandaSemanal.Add((int)Math.Round(demandaMensual[i] / 4));
                        contador++;
                    }
                }
            }
            if (rdr_L4L.Checked == true)
            {
                L4L l4 = new L4L(numSemanas, prod.CostoPedir, prod.CostoUnitario, prod.CostoMantenimiento, demandaSemanal);
                l4.get_L4L(dtg_resultado);
            }

            if (rdr_EOQ.Checked == true)
            {
                EOQ oQ = new EOQ(numSemanas, prod.CostoPedir, prod.CostoUnitario, prod.CostoMantenimiento, demandaSemanal);
                oQ.get_EOQ(dtg_resultado);
            }

            if (rdr_LTC.Checked == true)
            {
                LTC tC = new LTC(numSemanas, prod.CostoPedir, prod.CostoUnitario, prod.CostoMantenimiento, demandaSemanal);
                tC.get_LTC(dtg_resultado);
            }
        }
예제 #2
0
        private void btn_calcular_Click(object sender, EventArgs e)
        {
            dtg_resultado.Rows.Clear();
            dtg_resultado.Columns.Clear();

            List <int> demanda = new List <int>();

            for (int i = 0; i < dtg_semanas.Rows.Count - 1; i++)
            {
                for (int j = 0; j < dtg_semanas.Rows[i].Cells.Count; j++)
                {
                    if (i == 0 && j == 0 || i == 1 && j == 0)
                    {
                        //se evita que entre en los campos de Demada y Dias Laborados
                    }
                    else
                    {
                        string valor = dtg_semanas.Rows[i].Cells[j].Value.ToString();
                        demanda.Add(Convert.ToInt32(valor));
                    }
                }
            }

            if (txt_costoUnidad.Text == "" || txt_costoPedir.Text == "" || txt_tasaMantenimiento.Text == "")
            {
                MessageBox.Show("Revise los datos ingresados", "AVISO!!!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                if (rdr_L4L.Checked == true)
                {
                    L4L l4 = new L4L(Convert.ToInt16(txt_semanas.Text), Convert.ToDouble(txt_costoPedir.Text), Convert.ToDouble(txt_costoUnidad.Text), Convert.ToDouble(txt_tasaMantenimiento.Text), demanda);
                    l4.get_L4L(dtg_resultado);
                }

                if (rdr_EOQ.Checked == true)
                {
                    EOQ oQ = new EOQ(Convert.ToInt16(txt_semanas.Text), Convert.ToDouble(txt_costoPedir.Text), Convert.ToDouble(txt_costoUnidad.Text), Convert.ToDouble(txt_tasaMantenimiento.Text), demanda);
                    oQ.get_EOQ(dtg_resultado);
                }

                if (rdr_LTC.Checked == true)
                {
                    LTC tC = new LTC(Convert.ToInt16(txt_semanas.Text), Convert.ToDouble(txt_costoPedir.Text), Convert.ToDouble(txt_costoUnidad.Text), Convert.ToDouble(txt_tasaMantenimiento.Text), demanda);
                    tC.get_LTC(dtg_resultado);
                }
            }
        }