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); } }
/// <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"; } } }
/// <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) { }
/// <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; }
/// <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) { }
/// <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; }