Пример #1
0
    public void Confeccionar(Confeccion confeccion, string codigoPrenda)
    {
        confeccion.Codigo           = confeccion.Prenda.Codigo + "_CNFCCN";
        confeccion.Prenda.Cantidad -= confeccion.Cantidad;
        // La confección aunque se realiza con máquinas también depende de el uso que le de la persona.
        // Aunque si tenemos en cuenta la velocidad de las máquinas varían entre 1200 a 300 rpm . Promedio 750 rpm.
        // Se tarda aproximadamente 2 minutos por prenda, aunque varía según la persona y la máquina.
        int prendasObtenidas = confeccion.Cantidad / 2;

        confeccion.Tiempo = prendasObtenidas * 120; //120 segundos cada 2 prendas.
        // Debería elegir el tipo de prenda que desea confeccionar, siendo estas Remera o Pantalón y en base a eso conocer las prendas necesarias;
        PrendaGestor prendaGestor = new PrendaGestor();

        prendaGestor.Modificar(confeccion.Prenda);
        List <Prenda> prendasExistentes = prendaGestor.GetListPrenda();

        if (prendasExistentes.Exists(p => p.Codigo == codigoPrenda))
        {
            Prenda existente = prendaGestor.GetPrenda(prendasExistentes.Find(p => p.Codigo == codigoPrenda));
            existente.Cantidad += prendasObtenidas;
            prendaGestor.Modificar(existente);
        }
        else
        {
            prendaGestor.Alta(new Prenda(codigoPrenda, "Formado por " + confeccion.Prenda.Descripcion, prendasObtenidas, confeccion.Prenda.Talle, true));
        }
        bd.Alta(confeccion);
    }
Пример #2
0
    public void Cortar(Corte corte, string codigoPrenda)
    {
        corte.Codigo         = corte.Tela.Codigo + "CRT";
        corte.Tela.Cantidad -= corte.CantidadTela;
        // velocidad de 2000 cm/s máxima aprox.
        corte.Tiempo = (corte.CantidadTela * corte.Dimensiones * 1000) / 2000; // CantidadTelas * Dimensiones * 1000 (para transformar de m2 a cm2) / velocidad máquina.
        // TO DO: Agregar tipo de prenda (remera, pantalón) y según el tipo de prenda apareceran los talles (S, M, L) correspondientes.
        int prendasObtenidas = corte.CantidadTela;

        if (corte.Talle == "S")
        {
            prendasObtenidas = prendasObtenidas * 8;
        }
        else if (corte.Talle == "M")
        {
            prendasObtenidas = prendasObtenidas * 6;
        }
        else
        {
            prendasObtenidas = prendasObtenidas * 4;
        }                                                 // por ahora S = 8, M = 6, L = 4;
        // Podría usar un Interpreter para que el talle pueda ser ingresado de distintas maneras pero ser traducido a S, M o L.
        TelaGestor telaGestor = new TelaGestor();

        telaGestor.Modificar(corte.Tela);
        PrendaGestor  prendaGestor      = new PrendaGestor();
        List <Prenda> prendasExistentes = prendaGestor.GetListPrenda();

        if (prendasExistentes.Exists(p => p.Codigo == codigoPrenda))
        {
            Prenda existente = prendaGestor.GetPrenda(prendasExistentes.Find(p => p.Codigo == codigoPrenda));
            existente.Cantidad += prendasObtenidas;
            prendaGestor.Modificar(existente);
        }
        else
        {
            prendaGestor.Alta(new Prenda(codigoPrenda, "Corte de " + corte.Tela.Descripcion, prendasObtenidas, corte.Talle, false));
        }
        bd.Alta(corte);
    }