public ActionResult TerugDraaien(MasterViewModel model, int groepID) { BaseModelInit(model, groepID); ServiceHelper.CallService <IGroepenService>( svc => svc.JaarOvergangTerugDraaien(VeelGebruikt.GroepsWerkJaarOphalen(groepID).WerkJaarID)); // Clear cache voor groep. VeelGebruikt.AllesResetten(groepID); return(RedirectToAction("Index", "Leden", new { groepID })); }
public ActionResult Stap2AfdelingsJarenVerdelen(JaarOvergangAfdelingsJaarModel model, int groepID) { // Als alles goed loopt, hebben we deze straks nodig. int vorigGwjID = ServiceHelper.CallService <IGroepenService, int>(svc => svc.RecentsteGroepsWerkJaarIDGet(groepID)); // We gebruiken de modelstate om te laten zien dat het model al dan niet geldig is. Die verificatie // gebeurt op dit moment gedeeltelijk door de backend, dus moeten we eerst de backend aanroepen. try { ServiceHelper.CallService <IGroepenService>(s => s.JaarOvergangUitvoeren(model.Afdelingen, groepID)); } catch (FaultException <FoutNummerFault> ex) { switch (ex.Detail.FoutNummer) { case FoutNummer.OngeldigeGeboorteJarenVoorAfdeling: ModelState.AddModelError("NieuwWerkjaar", Properties.Resources.OngeldigeGeboorteJarenVoorAfdeling); break; default: ModelState.AddModelError("NieuwWerkJaar", ex.Detail.Bericht); break; } } if (!ModelState.IsValid) { // Model herstellen op basis van ingevulde gegevens. BaseModelInit(model, groepID); model.NieuwWerkjaar = ServiceHelper.CallService <IGroepenService, int>(g => g.NieuwWerkJaarOphalen(groepID)); model.OfficieleAfdelingen = ServiceHelper.CallService <IGroepenService, IEnumerable <OfficieleAfdelingDetail> >( e => e.OfficieleAfdelingenOphalen()).ToArray(); var alleAfdelingen = ServiceHelper.CallService <IGroepenService, IList <AfdelingInfo> >( svc => svc.AlleAfdelingenOphalen(groepID)); // De meeste gegevens in model.Afdelingen komen mooi terug uit het form. We moeten // enkel de namen van de afdelingen terug invullen. foreach (var aj in model.Afdelingen) { aj.AfdelingNaam = (from afd in alleAfdelingen where afd.ID == aj.AfdelingID select afd.Naam).FirstOrDefault(); } return(View("Stap2AfdelingsJarenVerdelen", model)); } VeelGebruikt.AllesResetten(groepID); if (!model.LedenMeteenInschrijven) { return(RedirectToAction("Index", "Leden")); } return(RedirectToAction("Herinschrijven", "Personen", new { groepID, groepsWerkJaarID = vorigGwjID })); }