Exemplo n.º 1
0
        protected void btnDel_Click(object sender, EventArgs e)
        {
            int tramnummer = Convert.ToInt32(ddTram.SelectedItem.ToString());

            if (DatabaseManager.Instance.CanTramMove(tramnummer))
            {
                Classes.Tram gekozenTram = DatabaseManager.Instance.ZoekTram(tramnummer);
                DatabaseManager.Instance.TramRijdUitRemise(tramnummer);

                if (DatabaseManager.Instance.TramstatusVeranderen(Classes.TramStatus.Dienst, gekozenTram.Id))
                {
                    string script = "alert(\"Tram " + tramnummer + " is uit Remise gereden\");";
                    ScriptManager.RegisterStartupScript(this, GetType(), "ServerControlScript", script, true);
                }
                else
                {
                    string script = "alert(\"Tram " + tramnummer + " uit remise rijden is mislukt\");";
                    ScriptManager.RegisterStartupScript(this, GetType(), "ServerControlScript", script, true);
                }
            }
            else
            {
                string script = "alert(\"De tram kan niet uitrijden doordat deze geblokkeerd is.\");";
                ScriptManager.RegisterStartupScript(this, GetType(), "ServerControlScript", script, true);
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// Dit is de Constructor voor deze klasse.
 /// </summary>
 /// <param name="beginDatum">De begindatum van een Beurt</param>
 /// <param name="id">De DatabaseID van een Beurt.</param>
 /// <param name="soort">De Soort Beurt</param>
 /// <param name="tram">De Tram die hieraan gekoppeld zit.</param>
 public Beurt(DateTime beginDatum, int id, BeurtType soort, Tram tram)
 {
     this.tram       = tram;
     this.beginDatum = beginDatum;
     this.id         = id;
     this.soort      = soort;
     medewerkers     = new List <Medewerker>();
 }
        protected void btnBevestig_Click(object sender, EventArgs e)
        {
            Classes.Tram tram    = db.ZoekTram(Convert.ToInt32(tbTramnr.Text));//haalt tram op uit de database
            int          spoornr = Convert.ToInt32(tbSpoornr.Text);

            if (db.TramReserveren(tram.Id, spoornr))//reserveerd de tram in de database
            {
                lblMessage.Text = "De reservering is aangemaakt.";
            }
            else
            {
                lblMessage.Text = "Er is iets misgegaan met het reserveren van de tram. Probeer het opnieuw.";
            }
            Classes.BeurtType type        = Classes.BeurtType.Klein;
            int aantalToegestaandeBeurten = 0;

            //het onderstaande wordt enkel uitgevoerd wanneer er ook is gekozen reparatie
            if (cbReparatie.Checked)
            {
                if (rbGroot.Checked)//voor grote reparatie
                {
                    type = Classes.BeurtType.Groot;
                    aantalToegestaandeBeurten = 1;
                }
                if (rbKlein.Checked)//voor kleine reparatie
                {
                    type = Classes.BeurtType.Klein;
                    aantalToegestaandeBeurten = 4;
                }

                DateTime          datum     = Convert.ToDateTime(Calendar1.SelectedDate);                                                                  //geseleceteerde datum
                Classes.Onderhoud onderhoud = new Classes.Onderhoud(datum, db.GetInsertID("ID", "TRAM_BEURT") + 1, type, tram, DateTime.Now.AddDays(1.0)); //nieuw onderhoud object.

                if (tram != null)
                {
                    if (db.GetAantalBeurten(type.ToString(), "Onderhoud", datum, tram.Id) < aantalToegestaandeBeurten) // kijkt of aantal gebeurde beurten niet het aantaal toegestane beurten overschrijd
                    {
                        db.OnderhoudInvoeren(onderhoud);                                                               //maakt reparatie aan in de database
                        lblMessage.Text = "De Tram is gereserveerd voor onderhoud.";
                        Response.Redirect("/Reserveren");
                    }
                    else
                    {
                        lblMessage.Text = "De geselecteerde tram kan niet meer worden ingepland op de geselecteerde dag";
                    }
                }
                else
                {
                    lblMessage.Text = "De ingevoerde tram bestaat niet";
                }
            }
        }
Exemplo n.º 4
0
 /// <summary>
 /// Dit is de Constructor voor deze Klasse. Deze klasse inherit all zijn properties van Beurt.
 /// </summary>
 /// <param name="beginDatum">De beginDatum van de Schoonmaak.</param>
 /// <param name="id">De DatabaseID van de Schoonmaak</param>
 /// <param name="soort">De Soort Schoonmaak die gedaan moet worden.</param>
 /// <param name="tram">De Tram die schoongemaakt moet worden.</param>
 public Schoonmaak(DateTime beginDatum, int id, BeurtType soort, Tram tram)
     : base(beginDatum, id, soort, tram)
 {
 }
Exemplo n.º 5
0
        /// <summary>
        /// Deze Methode wordt gebruikt om automatisch een Sector toe te wijzen aan een Tram.
        /// </summary>
        /// <param name="tramNr">Het Nummer van de te plaatsen Tram.</param>
        /// <param name="onderhoud">Heeft de Tram Onderhoud nodig?</param>
        /// <param name="schoonmaak">Heeft de Tram Schoonmaak nodig?</param>
        /// <returns>True als het gelukt is, False als het niet gelukt is.</returns>
        public bool PlaatsAutomatischToewijzen(int tramNr, bool onderhoud, bool schoonmaak)
        {
            List<int> SpoorID = new List<int>();
            if (Database.ZoekTram(tramNr) == null)
            {
                return false;
            }
            if (Database.TramAlInRemise(tramNr) == true)
            {
                return false;
            }
            int geserveerdSpoor = Database.GetGereserveerdSpoor(Database.ZoekTram(tramNr).Id);
            if (geserveerdSpoor != 0)
            {
                SpoorID = new List<int>();
                SpoorID.Add(geserveerdSpoor);
            }

            if (SpoorID.Count == 0)
            {
                if (onderhoud || schoonmaak)
                {
                    SpoorID = Database.GetBeurtSporen();
                    if (onderhoud)
                    {
                        Database.OnderhoudInvoeren(new Onderhoud(DateTime.Now, Database.GetInsertID("ID", "TRAM_BEURT") + 1, BeurtType.Incident, Database.ZoekTram(tramNr), DateTime.Now));
                        Tram tram = Database.ZoekTram(tramNr);
                        Database.TramstatusVeranderen(TramStatus.Defect, tram.Id);
                    }
                    if (schoonmaak)
                    {
                        Database.SchoonmaakInvoeren(new Schoonmaak(DateTime.Now, Database.GetInsertID("ID", "TRAM_BEURT") + 1, BeurtType.Incident, Database.ZoekTram(tramNr)));
                        Tram tram = Database.ZoekTram(tramNr);
                        Database.TramstatusVeranderen(TramStatus.Schoonmaak, tram.Id);
                    }
                }
                else
                {

                    SpoorID = Database.GetSporenIDByLijnID(tramNr);
                }
            }
            int X = 0;
            int N = 0;
            int P = 0;

            while (P < 3)
            {
                int SectorID = new int();

                if (SpoorID.Count == 0)
                {

                }
                else if (SpoorID.Count == N)
                {
                    SectorID = Database.GetSectorX(X, SpoorID[N - 1]);
                }
                else
                {
                    SectorID = Database.GetSectorX(X, SpoorID[N]);
                }

                if (!Database.SectorBezet(SectorID, SpoorID[N]) && DatabaseManager.Instance.CanTramInsert(SpoorID[N], SectorID))
                {

                    Database.TramVerplaatsen(tramNr, new Sector(SectorID), SpoorID[N]);
                    Tram tram = Database.ZoekTram(tramNr);
                    Database.TramstatusVeranderen(TramStatus.Remise, tram.Nummer);
                    return true;

                }
                else
                {
                    if (N < SpoorID.Count - 1)
                    {
                        N++;
                    }
                    else
                    {
                        if (X > 8 && P == 0)
                        {
                            SpoorID = Database.GetSporenIDForFreeSporen();
                            P = 1;
                        }
                        else if (X > 8 && P == 1)
                        {
                            SpoorID.Clear();
                            List<Spoor> tempSpoor = Database.SporenlijstOpvragen();
                            foreach (Spoor s in tempSpoor)
                            {
                                SpoorID.Add(s.Id);
                            }
                            P = 2;
                        }
                        else if (X > 8 && P == 2)
                        {
                            P = 3;
                        }
                        else
                        {
                            N = 0;
                            X++;
                        }
                    }

                }
            }
            return false;
        }
Exemplo n.º 6
0
 /// <summary>
 /// Dit is de Constructor voor het maken van een Onderhoud. Deze wordt gebruikt als er nog geen TijdsIndicatie bekend is voor de Onderhoud.
 /// </summary>
 /// <param name="beginDatum">De Datum dat er aan gewerkt mag worden.</param>
 /// <param name="id">De DatabaseID van de Onderhoud.</param>
 /// <param name="soort">Wat voor Soort Onderhoud is het</param>
 /// <param name="tram">Welke Tram Moet Onderhouden worden</param>
 public Onderhoud(DateTime beginDatum, int id, BeurtType soort, Tram tram)
     : base(beginDatum, id, soort, tram)
 {
 }
Exemplo n.º 7
0
 /// <summary>
 /// Dit is de Constructor voor het maken van een Onderhoud.
 /// </summary>
 /// <param name="beginDatum">De Datum dat er aan gewerkt mag worden.</param>
 /// <param name="id">De DatabaseID van de Onderhoud.</param>
 /// <param name="soort">Wat voor Soort Onderhoud is het</param>
 /// <param name="tram">Welke Tram Moet Onderhouden worden</param>
 /// <param name="tijdsIndicatie">Waneer er verwacht word dat de tram weer heel is.</param>
 public Onderhoud(DateTime beginDatum, int id, BeurtType soort, Tram tram, DateTime tijdsIndicatie)
     : base(beginDatum, id, soort, tram)
 {
     this.tijdsIndicatie = tijdsIndicatie;
 }