public bool DeleteStartegy(UC_WHControlConfig_VM_Base strategyInfo) { if (strategyInfo.StratlType == StrategyType.SmokeStrategy) { var vm = (UC_WHControlConfig_Smoke_VM)strategyInfo; if (vm == null) { return(false); } var smokeVM = _smokeStrategyList.Find(a => a.ID == vm.ID); if (smokeVM == null) { return(false); } else { if (_smokeStrategyList.Remove(smokeVM)) { return(_vm_BaseList.Remove(smokeVM)); } else { return(false); } } } else if (strategyInfo.StratlType == StrategyType.TemperatureStrategy) { var vm = (UC_WHControlConfig_Tem_VM)strategyInfo; if (vm == null) { return(false); } var temVM = _temStrategyList.Find(a => a.ID == vm.ID); if (temVM == null) { return(false); } else { if (_temStrategyList.Remove(temVM)) { return(_vm_BaseList.Remove(temVM)); } else { return(false); } } } else if (strategyInfo.StratlType == StrategyType.LightStrategy) { //处理亮度控制 } return(true); }
public void AddStartegy(UC_WHControlConfig_VM_Base strategyInfo) { if (strategyInfo.StratlType == StrategyType.SmokeStrategy) { var vm = (UC_WHControlConfig_Smoke_VM)strategyInfo; _smokeStrategyList.Add(vm); _vm_BaseList.Add(vm); } else if (strategyInfo.StratlType == StrategyType.TemperatureStrategy) { var vm = (UC_WHControlConfig_Tem_VM)strategyInfo; _temStrategyList.Add(vm); _vm_BaseList.Add(vm); } }
public UC_WHControlConfig_VM_Base CreateStrategy(StrategyType type) { UC_WHControlConfig_VM_Base strategy = null; if (type == StrategyType.SmokeStrategy) { strategy = new UC_WHControlConfig_Smoke_VM(_selectedScreenSN); } else if (type == StrategyType.TemperatureStrategy) { strategy = new UC_WHControlConfig_Tem_VM(_selectedScreenSN); } else if (type == StrategyType.LightStrategy) { //处理亮度控制初始化 return(null); } return(strategy); }
public void ModifyStartegy(UC_WHControlConfig_VM_Base strategyInfo) { if (strategyInfo.StratlType == StrategyType.SmokeStrategy) { var vm = (UC_WHControlConfig_Smoke_VM)strategyInfo; if (vm == null) { return; } var smokeVM = _smokeStrategyList.Find(a => a.ID == vm.ID); if (smokeVM != null) { int index = _smokeStrategyList.FindIndex(a => a.ID == smokeVM.ID); _smokeStrategyList.RemoveAt(index); _smokeStrategyList.Insert(index, vm); index = _vm_BaseList.FindIndex(a => a.ID == smokeVM.ID); _vm_BaseList.RemoveAt(index); _vm_BaseList.Insert(index, vm); } } else if (strategyInfo.StratlType == StrategyType.TemperatureStrategy) { var vm = (UC_WHControlConfig_Tem_VM)strategyInfo; if (vm == null) { return; } var temVM = _temStrategyList.Find(a => a.ID == vm.ID); if (temVM != null) { int index = _temStrategyList.FindIndex(a => a.ID == temVM.ID); _temStrategyList.RemoveAt(index); _temStrategyList.Insert(index, vm); index = _vm_BaseList.FindIndex(a => a.ID == temVM.ID); _vm_BaseList.RemoveAt(index); _vm_BaseList.Insert(index, vm); } } }