public void EditAddressMap() { SelectedAddressDataWrapper = SelectedAddressDataWrappers.FirstOrDefault(); var vm = MvvmInstanceExtension.Create <AddressMapEditViewModel>(); vm.SelectedAddressDataWrapper = Domain.AutoMapper.Mapper.Map <AddressDataWrapper>(SelectedAddressDataWrapper); window = new AddressMapEditView { DataContext = vm, }; var result = window.ShowDialog(); if (result == true) { foreach (var item in vm.PropertyChangeds)//변경내용 적용 { if (item.Value != SelectedAddressDataWrapper.GetPropertyValue(item.Key)) { SelectedAddressDataWrapper.State = State.Update; SelectedAddressDataWrapper.SetPropertyValue(item.Key, item.Value); } } //if (vm.SelectedAddressDataWrapper.State == State.Update) //{ // SelectedAddressDataWrapper = vm.SelectedAddressDataWrapper; //} } }
/// <summary> /// 모니터링 /// </summary> /// <returns></returns> public async Task GetDatas() { if (SelectedControllerManager == null) { return; } if (!(SelectedAddressDataWrappers?.Count > 0)) { return; } var maps = SelectedAddressDataWrappers.Cast <AddressMap>().ToList(); var groups = SelectedControllerManager.MonitorDataCollect.GroupingAddressMaps(maps); foreach (var group in groups) { var datas = await SelectedControllerManager.MonitorDataCollect.ReadAddressMapsInternal(group.Value); foreach (var item in datas) { var addressData = AddressDataWrappers?.FirstOrDefault(m => m.VariableId == item.VariableId); if (addressData == null) { continue; } if (addressData.Value1 == null) { addressData.Value1 = item.Value; } else if (addressData.Value2 == null) { addressData.Value2 = item.Value; } else if (addressData.Value3 == null) { addressData.Value3 = item.Value; } else if (addressData.Value4 == null) { addressData.Value4 = item.Value; } else if (addressData.Value5 == null) { addressData.Value5 = item.Value; } else { addressData.Value1 = item.Value; addressData.Value2 = null; addressData.Value3 = null; addressData.Value4 = null; addressData.Value5 = null; } } } }
public void AddAddressMap() { SelectedAddressDataWrapper = SelectedAddressDataWrappers.FirstOrDefault(); var vm = MvvmInstanceExtension.Create <AddressMapEditViewModel>(); vm.SelectedAddressDataWrapper = new AddressDataWrapper() { State = State.Insert }; window = new AddressMapEditView { DataContext = vm, }; window.ShowDialog(); }
public void DeleteAddressMap() { SelectedAddressDataWrappers.ForEach(m => m.State = State.Delete); }