public ActionResult LeggTilAvgang(stasjonPaaBane stasjonPaaBane) { //Sørger for at man blir stående i samme view om man legger inn en avgang som finnes fra før var stasjon = _vyBLL.hentEnStasjon(stasjonPaaBane.StasjonsID); stasjonPaaBane.Stasjon = stasjon.Stasjonsnavn; //sjekker om tidspunkt er valgt og på riktig format var metodeSjekk = new ValideringsMetoder(); bool tidspunktOk = metodeSjekk.sjekkTidspunkt(stasjonPaaBane.Avgang); if (stasjonPaaBane.BaneID == 0) { ModelState.AddModelError("BaneID", "Velg bane"); } else if (string.IsNullOrEmpty(stasjonPaaBane.Avgang)) { ModelState.AddModelError("Avgang", "Tidspunkt må oppgis"); } else if (!tidspunktOk) { ModelState.AddModelError("Avgang", "Tidspunkt må være på korrekt format"); } else if (ModelState.IsValid) { //sjekker om avgangen finnes fra før bool avgangOK = _vyBLL.sjekkAvgangOK(stasjonPaaBane); if (avgangOK) { stasjon s = _vyBLL.hentEnStasjon(stasjonPaaBane.StasjonsID); String Stasjonsnavn = s.Stasjonsnavn; bool leggtilOK = _vyBLL.leggTilStasjonPaaBane(stasjonPaaBane.Avgang, stasjonPaaBane.StasjonsID, stasjonPaaBane.BaneID); if (leggtilOK) { log.Info("Avgang " + stasjonPaaBane.Avgang + " er lagt til stasjon " + Stasjonsnavn + "!"); return(RedirectToAction("AvgangerPaStasjon", "Admin", new { id = stasjonPaaBane.StasjonsID })); } else { log.Error("Avgang " + stasjonPaaBane.Avgang + " på stasjon " + Stasjonsnavn + " ble forsøkt lagret, feil oppsto. Transaksjon avbrutt!"); ViewBag.save = "Kunne ikke legge til avgang"; } } else { log.Debug("Kommer inn i ModelstateValid 'Legg til Avgang', men ikke videre!"); ModelState.AddModelError("Avgang", "Avgangen finnes fra før"); } } log.Debug("Kommer ikke inn i ModelstateValid 'Legg til Avgang'"); return(View(stasjonPaaBane)); }
public ActionResult EndreAvgang(int id, stasjonPaaBane endreStasjonPaaBane) { if (string.IsNullOrEmpty(endreStasjonPaaBane.Avgang)) { ModelState.AddModelError("Avgang", "Tidspunkt må oppgis"); } //sjekker om tidspunkt er valgt og på riktig format var metodeSjekk = new ValideringsMetoder(); bool tidspunktOk = metodeSjekk.sjekkTidspunkt(endreStasjonPaaBane.Avgang); if (!tidspunktOk) { ModelState.AddModelError("Avgang", "Tidspunkt må være på korrekt format"); } if (ModelState.IsValid) { var s = _vyBLL.hentEnAvgang(id); string Stasjonsnavn = s.Stasjon; var gammelAvgang = _vyBLL.hentEnAvgang(id); string avg = gammelAvgang.Avgang; var bane = _vyBLL.hentEnBane(endreStasjonPaaBane.BaneID); endreStasjonPaaBane.Bane = bane.Banenavn; //sjekker at avgangen ikke finnes fra før bool nyAvgangOK = _vyBLL.sjekkAvgangOK(endreStasjonPaaBane); if (nyAvgangOK) { bool endringOK = _vyBLL.endreStasjonPaaBane(endreStasjonPaaBane, id); if (endringOK) { log.Info("Endring på avgang " + avg + " fra stasjon " + Stasjonsnavn + " registrert. Ny avgangstid er " + endreStasjonPaaBane.Avgang + "!"); return(RedirectToAction("AvgangerPaStasjon", "Admin", new { id = endreStasjonPaaBane.StasjonsID })); } else { log.Error("Endring på avgang " + avg + " fra stasjon " + Stasjonsnavn + " feilet. Tid prøvd lagret var " + endreStasjonPaaBane.Avgang + ". Transaksjon avbrutt!"); ViewBag.save = "Kunne ikke oppdatere avgang"; } } else { ModelState.AddModelError("Avgang", "Avgangen finnes fra før"); } } return(View(endreStasjonPaaBane)); }