private void LoadData(string devicePath) { Task.Factory.StartNew(() => { IsFiltering = true; _currentDevicePath = devicePath; //DetectionManager.Instance.Detect(devicePath); var dataList = DeviceExternsion.LoadDeviceData(devicePath); foreach (var item in dataList) { item.BuildParent(); } AsyncOperator.Execute(() => { DataList = dataList; //重置数据 MessageAggregation.SendGeneralMsg(new GeneralArgs <ObservableCollection <DataExtactionItem> >(MessageKeys.SetDataListKey) { Parameters = DataList }); IsFiltering = false; HasDataList = DataList != null && DataList.Count > 0; SelectDefaultNode(DataList); }); }); }
/// <summary> /// 选了某项数据,此时更新数据预览 /// </summary> /// <param name="data"></param> private void OnDataViewSelectedItemChanged(object data) { MessageAggregation.SendGeneralMsg <object>(new GeneralArgs <object>(MessageKeys.PreviewKey) { Parameters = data }); }
protected override void InitLoad(object parameters) { _currentDevicePath = parameters?.ToString(); LoadPlugin(); //判断是否是智能预警 if (!string.IsNullOrWhiteSpace(_currentDevicePath)) { if (_currentDevicePath.StartsWith("{")) { try { var inspectConfig = Serializer.JsonDeserializeIO <ViewModel.InspectionConfig>(_currentDevicePath); _currentDevicePath = inspectConfig.DevicePath; MessageAggregation.SendGeneralMsg(new GeneralArgs <List <Inspection> >(MessageKeys.InspectionKey) { Parameters = inspectConfig.Config }); } catch (Exception) { } } } LoadData(_currentDevicePath); }
/// <summary> /// 创建一个设备,如果设备已经存在,则跳转到该设备 /// </summary> /// <param name="device"></param> private void CreateDevice(IDevice device) { if (device.DeviceType == EnumDeviceType.None) { return; } DeviceExtractionAdorner dea = new DeviceExtractionAdorner(); var ca = SystemContext.Instance.CurrentCase; var dev = ca.DeviceExtractions.FirstOrDefault(d => d[DeviceExternsion.XLY_IdKey] == device.ID); if (dev == null) //不存在则创建新设备 { dev = SystemContext.Instance.CurrentCase.CreateDeviceExtraction(device.Name, device.DeviceType.ToString()); dea.Target = dev; dea.Device = device; dea.Save(); } else { dea.Target = dev; } //跳转到设备 MessageAggregation.SendGeneralMsg(new GeneralArgs <DeviceExtractionAdorner>(ExportKeys.DeviceAddedMsg) { Parameters = dea }); }
/// <summary> /// 开始筛选命令 /// </summary> private void DoStartFilterCommond() { var args = GetFilterArgs(); Task.Factory.StartNew(() => { MessageAggregation.SendGeneralMsg(new GeneralArgs<bool>(MessageKeys.StartFilterKey) { Parameters = true }); Filter(DataListSource, args); MessageAggregation.SendGeneralMsg(new GeneralArgs<bool>(MessageKeys.StartFilterKey) { Parameters = false }); }); }
private void LoadData(string devicePath) { if (IsFiltering) { return; } IsFiltering = true; Task.Factory.StartNew(() => { try { //AsyncOperator.Execute(() => IsFiltering = true); //devicePath = @"C:\Users\fhjun\Desktop\默认案例_20171115[081055]\默认案例_20171115[081055]\R7007_20171115[081055]"; _currentDevicePath = devicePath; var dataList = DeviceExternsion.LoadDeviceData(devicePath); foreach (var item in dataList) { item.BuildParent(); } AsyncOperator.Execute(() => { DataList = dataList; //重置数据 MessageAggregation.SendGeneralMsg(new GeneralArgs <ObservableCollection <DataExtactionItem> >(MessageKeys.SetDataListKey) { Parameters = DataList }); IsFiltering = false; HasDataList = DataList != null && DataList.Count > 0; SelectDefaultNode(DataList); }); } catch (Exception ex) { } finally { AsyncOperator.Execute(() => { IsFiltering = false; MessageAggregation.SendGeneralMsg(new GeneralArgs <object>(MessageKeys.DataLoadedCompletedKey) { Parameters = true }); }); } }); }