コード例 #1
0
        /// <summary>
        /// Simulatie, simuleert het binnenkomen van de trams. De trams worden ingedeeld naar de sporen/sectoren.
        /// </summary>
        public void Simulatie()
        {
            TramIndeling indeling = new TramIndeling();
            List <Tram>  tramList = TramManager.Trams;

            foreach (Tram t in tramList)
            {
                List <Sector> ingedeeldeSectors = indeling.DeelTramIn(t);

                if (ingedeeldeSectors == null)
                {
                    Console.WriteLine("Niet ingedeeld: " + t.Id);
                }
                else
                {
                    simulatieSectors.AddRange(ingedeeldeSectors);
                    Control.ControlCollection controls = PanelTBS.Controls;
                    foreach (Control c in controls)
                    {
                        foreach (Sector s in ingedeeldeSectors)
                        {
                            if ((String)c.Tag == Convert.ToString(s.Id) + "_" + Convert.ToString(s.SpoorNummer) + "-" + Convert.ToString(s.Nummer))
                            {
                                c.Text = t.nummer.ToString();
                                Refresh();
                            }
                        }
                    }
                }
            }
        }
コード例 #2
0
        void rfid_Tag(object sender, TagEventArgs e)
        {
            TramIndeling  indeling          = new TramIndeling();
            List <Sector> toegewezenSectors = new List <Sector>();
            Tram          tram;
            Spoor         spoor;
            Sector        sector;
            int           tramId;


            lblTagInfo.Text = e.Tag;
            rfid.LED        = true;

            tramId = rfidTramDictionary[e.Tag];
            tram   = TramManager.tramViaNummer(tramId);
            sector = RemiseManager.sectorViaTram(tram);

            if (sector != null)
            {
                sector.ClearSector();
                refreshEenSpoor(RemiseManager.spoorViaId(sector.SpoorNummer));
                DatabaseManager.registreerSectorStatus(sector);
            }

            else
            {
                toegewezenSectors = indeling.DeelTramIn(tram);
                spoor             = RemiseManager.spoorViaId(toegewezenSectors[0].SpoorNummer);
                refreshEenSpoor(spoor);

                foreach (Sector toegewezenSector in toegewezenSectors)
                {
                    DatabaseManager.registreerSectorStatus(toegewezenSector);
                }
            }
        }
コード例 #3
0
        private void btnBevestig_Click(object sender, EventArgs e)
        {
            int tramNr;
            int spoorNr;
            int sectorNr;

            if (!int.TryParse(tbTramnummer.Text, out tramNr) || !int.TryParse(tbSpoornummer.Text, out spoorNr) || !int.TryParse(tbSectornummer.Text, out sectorNr))
            {
                MessageBox.Show("Voer geldige nummers in");
                return;
            }

            if (TramManager.tramViaNummer(tramNr) != null)
            {
                if (RemiseManager.spoorViaNummer(spoorNr) != null)
                {
                    Spoor spoor = RemiseManager.spoorViaNummer(spoorNr);
                    if (lbSectornummer.Text != "Sectornummer")
                    {
                        TramIndeling tI      = new TramIndeling();
                        Tram         tram    = TramManager.tramViaNummer(tramNr);
                        Sector       sector  = RemiseManager.sectorViaNummer(sectorNr, spoor);
                        string       message = tI.DeelTramInOpSector(tram, sector);
                        MessageBox.Show(message);
                    }
                    else
                    {
                        foreach (Sector sector in spoor.SectorList)
                        {
                            if (sector.Nummer == sectorNr)
                            {
                                Tram   trammetje   = TramManager.tramViaNummer(tramNr);
                                Sector sectorCheck = RemiseManager.sectorViaTram(trammetje);
                                if (sectorCheck != null)
                                {
                                    sectorCheck.ClearSector();
                                    DatabaseManager.registreerSectorStatus(sectorCheck);
                                    mainForm.refreshEenSpoor(RemiseManager.spoorViaId(sectorCheck.SpoorNummer));
                                }
                                if (sector.Blokkade == true)
                                {
                                    MessageBox.Show("Sector is geblokkeerd");
                                    return;
                                }
                                sector.VoegTramToe(trammetje);
                                mainForm.refreshEenSpoor(RemiseManager.spoorViaId(sector.SpoorNummer));
                                DatabaseManager.registreerSectorStatus(sector);
                                MessageBox.Show("Tram is toegevoegd");
                                this.Close();
                                return;
                            }
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Spoor bestaat niet");
                }
            }
            else
            {
                MessageBox.Show("Tram bestaat niet");
            }
        }