Ejemplo n.º 1
0
        public void Main(PizzakiszallitasMainForm form, CityVisual CV)
        {
            Utvonalterv  megtervezettUtvonal  = null;
            Futar        szabadFutar          = null;
            Rendeles     aktualisRendeles     = null;
            FutarAllapot aktualisFutarAllapot = FutarAllapot.varakozik;
            string       message             = "";
            int          rendelesekSzama     = 0;
            int          KovetkezoFutarIndex = 0;

            rendelesekSzama = rendelesek.RendelesekSzama();
            for (int i = 0; i < rendelesekSzama; i++)
            {
                megtervezettUtvonal = iroda.UtvonalTervezes(rendelesek, 2);
                if (megtervezettUtvonal.UtvonalAltalTartalmazottRendelesekSzama() == 0)
                {
                    break;
                }
                szabadFutar         = futarok.KovetkezoFutar(KovetkezoFutarIndex);
                KovetkezoFutarIndex = Futarok.KovetkezoIndex(KovetkezoFutarIndex, futarok.FutarokSzama());
                if (szabadFutar != null)
                {
                    aktualisFutarAllapot = szabadFutar.getFutarAllapot();
                    message = szabadFutar.GetFutarNev() + " állapota: " + aktualisFutarAllapot.ToString();
                    form.AppendLineToOutput(message);
                    System.Threading.Thread.Sleep(2 * 1000);

                    szabadFutar.UtvonaltervetFelvesz(megtervezettUtvonal);
                    aktualisFutarAllapot = iroda.FutartIndit(szabadFutar);
                    message = szabadFutar.GetFutarNev() + " állapota: " + szabadFutar.getFutarAllapot().ToString();
                    form.AppendLineToOutput(message);
                    System.Threading.Thread.Sleep(2 * 1000);

                    while ((aktualisRendeles = szabadFutar.getSzallitasiSorrend().KovetkezoRendeles()) != null)
                    {
                        CV.VisitCity(szabadFutar, aktualisRendeles);
                        message = "\t" + szabadFutar.GetFutarNev() + " tartózkodási helye: " + aktualisRendeles.RendelesiCim().ToString();
                        form.AppendLineToOutput(message);
                        System.Threading.Thread.Sleep(2 * 1000);
                    }
                    message = szabadFutar.GetFutarNev() + " állapota: " + szabadFutar.VisszafeleMegy().ToString();
                    form.AppendLineToOutput(message);
                    System.Threading.Thread.Sleep(2 * 1000);

                    message = szabadFutar.GetFutarNev() + " állapota: " + szabadFutar.VisszatertFutar().ToString();
                    form.AppendLineToOutput(message);
                    System.Threading.Thread.Sleep(2 * 1000);
                }
            }

            return;
        }
        public void InitializeDelivers(Futarok futarok)
        {
            Futar  futar = null;
            string FutarNeve;
            Color  FutarSzine;

            List <Futar> .Enumerator FutarIterator  = futarok.GetFutarIterator();
            ListViewItem             listaFutarElem = null;
            Bitmap SzinDoboz  = null;
            int    listaIndex = 0;

            while (FutarIterator.MoveNext())
            {
                futar      = FutarIterator.Current;
                FutarNeve  = futar.GetFutarNev();
                FutarSzine = futar.GetJeloloSzin();

                listaFutarElem            = new ListViewItem();
                listaFutarElem.Text       = FutarNeve;
                listaFutarElem.ImageIndex = listaIndex;
                SzinDoboz = new Bitmap(60, 60);

                for (int y = 0; y < SzinDoboz.Width; y++)
                {
                    for (int x = 0; x < SzinDoboz.Width; x++)
                    {
                        SzinDoboz.SetPixel(x, y, FutarSzine);
                    }
                }
                ilLegend.Images.Add(SzinDoboz);
                lvDelivers.Items.Add(listaFutarElem);
                listaIndex++;
            }

            return;
        }