示例#1
0
        private void aggiungiComponenteBC(List <ComponenteBC> Componenti, string codiceDistinta, int IdComponentePadre)
        {
            ArticoliDS ds = new ArticoliDS();

            using (ArticoliBusiness bArticoli = new ArticoliBusiness())
            {
                bArticoli.GetDistinteBCTestata(ds, codiceDistinta);
                List <ArticoliDS.DistinteBCTestataRow> testata = ds.DistinteBCTestata.Where(x => x.No_ == codiceDistinta).ToList();

                if (testata == null)
                {
                    return;
                }
                bArticoli.GetDistinteBCDettaglio(ds, codiceDistinta);

                List <ArticoliDS.DistinteBCDettaglioRow> dettagli = ds.DistinteBCDettaglio.Where(x => x.Production_BOM_No_ == codiceDistinta).ToList();
                if (dettagli.Count > 0)
                {
                    foreach (ArticoliDS.DistinteBCDettaglioRow dettaglio in dettagli)
                    {
                        idComponente++;
                        ComponenteBC componente = ComponenteBC.CreaComponente(dettaglio, idComponente, IdComponentePadre);
                        Componenti.Add(componente);
                        aggiungiComponenteBC(Componenti, componente.Anagrafica, idComponente);
                    }
                }
            }
        }
示例#2
0
        private List <FaseDistinta> estraiListaFasi(string codiceTestata, int idFaseDistinta, int idPadre)
        {
            ArticoliDS          ds   = new ArticoliDS();
            List <FaseDistinta> fasi = new List <FaseDistinta>();

            using (ArticoliBusiness bArticoli = new ArticoliBusiness())
            {
                bArticoli.GetDistinteBCTestata(ds, codiceTestata);
                bArticoli.GetDistinteBCDettaglio(ds, codiceTestata);
                bArticoli.GetCicliBCTestata(ds, codiceTestata);
                bArticoli.GetCicliBCDettaglio(ds, codiceTestata);
                ArticoliDS.DistinteBCTestataRow       testata = ds.DistinteBCTestata.Where(x => x.No_ == codiceTestata).FirstOrDefault();
                List <ArticoliDS.CicliBCDettaglioRow> cicli   = ds.CicliBCDettaglio.Where(x => x.Routing_No_ == codiceTestata).ToList();

                for (int i = 0; i < cicli.Count; i++)
                {
                    if (i == 0)
                    {
                        FaseDistinta fase = FaseDistinta.CreaFaseDistinta(testata, cicli[i], idFaseDistinta, idPadre);
                        fasi.Add(fase);
                        idPadre = idFaseDistinta;
                    }
                    else
                    {
                        FaseDistinta fase = FaseDistinta.CreaFaseDistinta(cicli[i], idFaseDistinta, idPadre);
                        fasi.Add(fase);
                        idPadre = idFaseDistinta;
                    }
                    idFaseDistinta++;
                }
                List <ArticoliDS.DistinteBCDettaglioRow> componenti = ds.DistinteBCDettaglio.Where(x => x.Production_BOM_No_ == codiceTestata).ToList();

                foreach (ArticoliDS.DistinteBCDettaglioRow componente in componenti)
                {
                    fasi.AddRange(estraiListaFasi(componente.No_, idFaseDistinta, idPadre));
                }
            }

            return(fasi);
        }