private void Print() { List <DeviceHourlyPrintResult> printList = new List <Models.DeviceHourlyPrintResult>(); foreach (var result in DeviceHourlySelectedResult.Where(p => p.IsChecked == true)) { DeviceHourlyPrintResult print = new Models.DeviceHourlyPrintResult(); print.DateTime = result.DateTime; print.DeviceHourlyDataInfo = new List <DeviceHourlyDataInfo>(resultDevices.SelectMany(p => p.Where(d => d.ACQDate.Date == result.DateTime.Date))); printList.Add(print); } DeviceHourlyDataPrintPreviewWindow previewWnd = new DeviceHourlyDataPrintPreviewWindow("/AIC.DeviceDataPage;component/Views/DeviceHourlyDataFlowDocument.xaml", printList, new DeviceHourlyDataDocumentRenderer()); previewWnd.ShowDialog(); }
private void Export() { DataTable dt = new DataTable(); dt.Columns.Add(new DataColumn("设备", typeof(string))); dt.Columns.Add(new DataColumn("时间", typeof(string))); dt.Columns.Add(new DataColumn("单位", typeof(string))); dt.Columns.Add(new DataColumn("0h", typeof(string))); dt.Columns.Add(new DataColumn("1h", typeof(string))); dt.Columns.Add(new DataColumn("2h", typeof(string))); dt.Columns.Add(new DataColumn("3h", typeof(string))); dt.Columns.Add(new DataColumn("4h", typeof(string))); dt.Columns.Add(new DataColumn("5h", typeof(string))); dt.Columns.Add(new DataColumn("6h", typeof(string))); dt.Columns.Add(new DataColumn("7h", typeof(string))); dt.Columns.Add(new DataColumn("8h", typeof(string))); dt.Columns.Add(new DataColumn("9h", typeof(string))); dt.Columns.Add(new DataColumn("10h", typeof(string))); dt.Columns.Add(new DataColumn("11h", typeof(string))); dt.Columns.Add(new DataColumn("12h", typeof(string))); dt.Columns.Add(new DataColumn("13h", typeof(string))); dt.Columns.Add(new DataColumn("14h", typeof(string))); dt.Columns.Add(new DataColumn("15h", typeof(string))); dt.Columns.Add(new DataColumn("16h", typeof(string))); dt.Columns.Add(new DataColumn("17h", typeof(string))); dt.Columns.Add(new DataColumn("18h", typeof(string))); dt.Columns.Add(new DataColumn("19h", typeof(string))); dt.Columns.Add(new DataColumn("20h", typeof(string))); dt.Columns.Add(new DataColumn("21h", typeof(string))); dt.Columns.Add(new DataColumn("22h", typeof(string))); dt.Columns.Add(new DataColumn("23h", typeof(string))); foreach (var result in DeviceHourlySelectedResult.Where(p => p.IsChecked == true)) { var dayList = new List <DeviceHourlyDataInfo>(resultDevices.SelectMany(p => p.Where(d => d.ACQDate.Date == result.DateTime.Date))); foreach (var day in dayList) { dt.Rows.Add(day.DeviceTreeItemViewModel.Name, " " + day.ACQDate.ToString("yyyy-MM-dd"), day.Unit, (day.HourlyData0 != null) ? day.HourlyData0.Value.ToString("f3") : null, (day.HourlyData1 != null) ? day.HourlyData1.Value.ToString("f3") : null, (day.HourlyData2 != null) ? day.HourlyData2.Value.ToString("f3") : null, (day.HourlyData3 != null) ? day.HourlyData3.Value.ToString("f3") : null, (day.HourlyData4 != null) ? day.HourlyData4.Value.ToString("f3") : null, (day.HourlyData5 != null) ? day.HourlyData5.Value.ToString("f3") : null, (day.HourlyData6 != null) ? day.HourlyData6.Value.ToString("f3") : null, (day.HourlyData7 != null) ? day.HourlyData7.Value.ToString("f3") : null, (day.HourlyData8 != null) ? day.HourlyData8.Value.ToString("f3") : null, (day.HourlyData9 != null) ? day.HourlyData9.Value.ToString("f3") : null, (day.HourlyData10 != null) ? day.HourlyData10.Value.ToString("f3") : null, (day.HourlyData11 != null) ? day.HourlyData11.Value.ToString("f3") : null, (day.HourlyData12 != null) ? day.HourlyData12.Value.ToString("f3") : null, (day.HourlyData13 != null) ? day.HourlyData13.Value.ToString("f3") : null, (day.HourlyData14 != null) ? day.HourlyData14.Value.ToString("f3") : null, (day.HourlyData15 != null) ? day.HourlyData15.Value.ToString("f3") : null, (day.HourlyData16 != null) ? day.HourlyData16.Value.ToString("f3") : null, (day.HourlyData17 != null) ? day.HourlyData17.Value.ToString("f3") : null, (day.HourlyData18 != null) ? day.HourlyData18.Value.ToString("f3") : null, (day.HourlyData19 != null) ? day.HourlyData19.Value.ToString("f3") : null, (day.HourlyData20 != null) ? day.HourlyData20.Value.ToString("f3") : null, (day.HourlyData21 != null) ? day.HourlyData21.Value.ToString("f3") : null, (day.HourlyData22 != null) ? day.HourlyData22.Value.ToString("f3") : null, (day.HourlyData23 != null) ? day.HourlyData23.Value.ToString("f3") : null); } dt.Rows.Add("-"); } ExportPreviewWindow previewWnd = new ExportPreviewWindow(dt); previewWnd.ShowDialog(); }
private async void Search() { var sw = Stopwatch.StartNew(); try { int number = 0; Status = ViewModelStatus.Querying; DevicesView.Clear(); resultDevices.Clear(); DeviceHourlySelectedResult.Clear(); for (int i = 0; i < SelectedDay; i++) { DeviceHourlySelectedResult.Add(new DeviceHourlySelectedResult() { DateTime = StartTime.AddDays(i), IsChecked = true }); } var deviceTrees = _cardProcess.GetDevices(selectedOrganization); if (deviceTrees == null) { return; } foreach (var deviceTree in deviceTrees) { WaitInfo = "数据统计: " + number.ToString(); List <DeviceHourlyDataInfo> devices = new List <DeviceHourlyDataInfo>(); DateTime start = StartTime; for (int day = SelectedDay; day > 0;) { int dayRange = day > 30 ? 30 : day; devices.AddRange(await GetDeviceHourlyData(deviceTree, start, dayRange)); day = day - dayRange; start = start.AddDays(dayRange); } if (devices == null) { continue; } devices.ForEach(p => p.DeviceTreeItemViewModel = deviceTree); resultDevices.Add(devices); DeviceHourlyDataInfo device = devices.FirstOrDefault(); number++; DevicesView.Add(device); } } catch (Exception ex) { _eventAggregator.GetEvent <ThrowExceptionEvent>().Publish(Tuple.Create <string, Exception>("设备数据-运行状态查询", ex)); } finally { Console.WriteLine("消耗时间" + sw.Elapsed.ToString()); Status = ViewModelStatus.None; } }