void AddNewGroentijdenSetCommand_Executed(object prm) { // Build model GroentijdenSetModel mgsm = new GroentijdenSetModel(); switch (_Controller.Data.Instellingen.TypeGroentijden) { case GroentijdenTypeEnum.VerlengGroentijden: mgsm.Naam = "VG" + (GroentijdenSets.Count + 1).ToString(); break; default: mgsm.Naam = "MG" + (GroentijdenSets.Count + 1).ToString(); break; } foreach (FaseCyclusModel fcvm in _Controller.Fasen) { GroentijdModel mgm = new GroentijdModel(); mgm.FaseCyclus = fcvm.Define; mgm.Waarde = Settings.Utilities.FaseCyclusUtilities.GetFaseDefaultGroenTijd(fcvm.Type); mgsm.Groentijden.Add(mgm); } // Create ViewModel around the model, add to list GroentijdenSetViewModel mgsvm = new GroentijdenSetViewModel(mgsm); GroentijdenSets.Add(mgsvm); // Rebuild matrix BuildGroentijdenMatrix(); }
public void AddFase(string fasedefine, string fasename) { GroentijdModel mgm = new GroentijdModel(); mgm.FaseCyclus = fasedefine; mgm.Waarde = Settings.Utilities.FaseCyclusUtilities.GetFaseDefaultGroenTijd(fasedefine); GroentijdenSetList.Add(new GroentijdViewModel(mgm)); }
public void OnFasenChanged(FasenChangedMessage message) { if (message.AddedFasen != null) { foreach (var fcm in message.AddedFasen) { foreach (var set in Controller.GroentijdenSets) { var mgm = new GroentijdModel { FaseCyclus = fcm.Naam }; DefaultsProvider.Default.SetDefaultsOnModel(mgm, fcm.Type.ToString()); set.Groentijden.Add(mgm); } } } if (message.RemovedFasen != null) { foreach (var fcm in message.RemovedFasen) { foreach (var set in Controller.GroentijdenSets) { GroentijdModel mgm = null; foreach (var mgvm in set.Groentijden) { if (mgvm.FaseCyclus == fcm.Naam) { mgm = mgvm; } } if (mgm != null) { set.Groentijden.Remove(mgm); } } } } foreach (var set in GroentijdenSets) { set.Groentijden.Rebuild(); } BuildGroentijdenMatrix(); }
void AddNewGroentijdenSetCommand_Executed(object prm) { // Build model var mgsm = new GroentijdenSetModel(); switch (_Controller.Data.TypeGroentijden) { case GroentijdenTypeEnum.VerlengGroentijden: mgsm.Naam = "VG" + (GroentijdenSets.Count + 1).ToString(); break; default: mgsm.Naam = "MG" + (GroentijdenSets.Count + 1).ToString(); break; } foreach (var fcvm in _Controller.Fasen) { var mgm = new GroentijdModel(); mgm.FaseCyclus = fcvm.Naam; mgm.Waarde = Settings.Utilities.FaseCyclusUtilities.GetFaseDefaultGroenTijd(fcvm.Type); mgsm.Groentijden.Add(mgm); } // Create ViewModel around the model, add to list var mgsvm = new GroentijdenSetViewModel(mgsm); GroentijdenSets.Add(mgsvm); if (string.IsNullOrWhiteSpace(_Controller.PeriodenData.DefaultPeriodeGroentijdenSet)) { _Controller.PeriodenData.DefaultPeriodeGroentijdenSet = mgsm.Naam; } // Rebuild matrix BuildGroentijdenMatrix(); CheckGroentijdenSetsWithDefaultPeriode(); }
public void OnFasenChanging(FasenChangingMessage message) { if (message.AddedFasen != null) { foreach (var fcm in message.AddedFasen) { // PT Conflict prms if (Controller.OVData.OVIngreepType != Models.Enumerations.OVIngreepTypeEnum.Geen) { var prms = new OVIngreepSignaalGroepParametersModel(); _setDefaultsAction?.Invoke(prms, null); prms.FaseCyclus = fcm.Naam; Controller.OVData.OVIngreepSignaalGroepParameters.Add(prms); } // Module settings var fcmlm = new FaseCyclusModuleDataModel() { FaseCyclus = fcm.Naam }; _setDefaultsAction?.Invoke(fcmlm, null); Controller.ModuleMolen.FasenModuleData.Add(fcmlm); // Green times foreach (var set in Controller.GroentijdenSets) { var mgm = new GroentijdModel { FaseCyclus = fcm.Naam }; _setDefaultsAction(mgm, fcm.Type.ToString()); set.Groentijden.Add(mgm); } } } if (message.RemovedFasen != null) { foreach (var fcm in message.RemovedFasen) { // PT Conflict prms if (Controller.OVData.OVIngreepType != Models.Enumerations.OVIngreepTypeEnum.Geen) { OVIngreepSignaalGroepParametersModel _prms = null; foreach (var prms in Controller.OVData.OVIngreepSignaalGroepParameters) { if (prms.FaseCyclus == fcm.Naam) { _prms = prms; } } if (_prms != null) { Controller.OVData.OVIngreepSignaalGroepParameters.Remove(_prms); } } // Module settings FaseCyclusModuleDataModel fcvm = null; foreach (var f in Controller.ModuleMolen.FasenModuleData) { if (fcm.Naam == f.FaseCyclus) { fcvm = f; } } if (fcvm != null) { Controller.ModuleMolen.FasenModuleData.Remove(fcvm); } // Green times foreach (var set in Controller.GroentijdenSets) { GroentijdModel mgm = null; foreach (var mgvm in set.Groentijden) { if (mgvm.FaseCyclus == fcm.Naam) { mgm = mgvm; } } if (mgm != null) { set.Groentijden.Remove(mgm); } } } } // Sorting Controller.OVData.OVIngreepSignaalGroepParameters.BubbleSort(); foreach (var set in Controller.GroentijdenSets) { set.Groentijden.BubbleSort(); } Controller.ModuleMolen.FasenModuleData.BubbleSort(); // Messaging MessengerInstance.Send(new FasenChangedMessage(message.AddedFasen, message.RemovedFasen)); }
public GroentijdViewModel(GroentijdModel mgm) { _Groentijd = mgm; }