private void ButtonPushChart_Click(object sender, RoutedEventArgs e) { TemplateWebBrowserChart.JavaScript("pushdata", 0, RandomSeed.Next() % 30); TemplateWebBrowserChart.JavaScript("pushdata", 1, RandomSeed.Next() % 30); TemplateWebBrowserChart.JavaScript("pushdata", 2, RandomSeed.Next() % 30); TemplateWebBrowserChart.JavaScript("pushdata", 3, RandomSeed.Next() % 30); }
private void Forecast(int StationID, DateTime TargetDate) { ElectricityService.ElectricityServiceClient esc = new ElectricityService.ElectricityServiceClient(); try { this.Dispatcher.Invoke(new Action(() => { WriteLine("[BGW_ForeCast]正在生成预测数据:{0}...", StationID); })); esc.Forecast(StationID, DateTime.Now); this.Dispatcher.Invoke(new Action(() => { WriteLine("[BGW_ForeCast]预测数据生成完毕:{0}", StationID); })); this.Dispatcher.Invoke(new Action(() => { WriteLine("[UI]正在填充预测数据:{0}...", StationID); })); if (RadioForecastPointToPoint.IsChecked ?? false) { TemplateWebBrowserChart.JavaScript("DeleteData", "PointToPoint"); List <ElectricityService.ForecastDayStationData> DataList = esc.SelectForecastDayStationData(StationID, DateTime.Now, 1).ToList(); foreach (ElectricityService.ForecastDayStationData record in DataList) { TemplateWebBrowserChart.JavaScript("AddData", "PointToPoint", record.Time.ToString("yyyy-MM-dd HH:mm:ss"), record.ActivePower); } } if (RadioForecastSmooth.IsChecked ?? false) { TemplateWebBrowserChart.JavaScript("DeleteData", "Smooth"); List <ElectricityService.ForecastDayStationData> DataList = esc.SelectForecastDayStationData(StationID, DateTime.Now, 2).ToList(); foreach (ElectricityService.ForecastDayStationData record in DataList) { TemplateWebBrowserChart.JavaScript("AddData", "Smooth", record.Time.ToString("yyyy-MM-dd HH:mm:ss"), record.ActivePower); } } if (RadioForecastDayGray.IsChecked ?? false) { TemplateWebBrowserChart.JavaScript("DeleteData", "DayGray"); List <ElectricityService.ForecastDayStationData> DataList = esc.SelectForecastDayStationData(StationID, DateTime.Now, 3).ToList(); foreach (ElectricityService.ForecastDayStationData record in DataList) { TemplateWebBrowserChart.JavaScript("AddData", "DayGray", record.Time.ToString("yyyy-MM-dd HH:mm:ss"), record.ActivePower); } } if (RadioForecastVariationCoefficient.IsChecked ?? false) { TemplateWebBrowserChart.JavaScript("DeleteData", "VariationCoefficient"); List <ElectricityService.ForecastDayStationData> DataList = esc.SelectForecastDayStationData(StationID, DateTime.Now, 4).ToList(); foreach (ElectricityService.ForecastDayStationData record in DataList) { TemplateWebBrowserChart.JavaScript("AddData", "VariationCoefficient", record.Time.ToString("yyyy-MM-dd HH:mm:ss"), record.ActivePower); } } this.Dispatcher.Invoke(new Action(() => { WriteLine("[UI]填充预测数据完毕:{0}", StationID); })); esc.Close(); } catch (TimeoutException) { MessageBox.Show("服务器请求超时"); esc.Abort(); } }
private void UpdateAll() { ElectricityService.ElectricityServiceClient esc = new ElectricityService.ElectricityServiceClient(); try { foreach (StationUI stationui in StationUIList) { List <ElectricityService.RuntimeStationData> DataList = esc.UpdateRuntimeStationData(stationui.RuntimeID, stationui.ID).ToList(); if (DataList.Count == 0) { return; } ElectricityService.RuntimeStationData LastRecord = null; foreach (ElectricityService.RuntimeStationData record in DataList) { if (record.Time > DateTime.Now) { break; } if (ListViewStationList.SelectedItem == stationui) { TemplateWebBrowserChart.JavaScript("AddData", "runtime", record.Time.ToString("yyyy-MM-dd HH:mm:ss"), record.ActivePower); } LastRecord = record; } if (LastRecord != null) { stationui.Active = LastRecord.ActivePower; stationui.Reactive = LastRecord.ReactivePower; stationui.RuntimeID = LastRecord.ID; this.Dispatcher.Invoke(new Action(() => { WriteLine("[BGW_UpdateRuntime]数据已更新:{0}", stationui.ID); })); } } ListViewStationList.UpdateLayout(); esc.Close(); } catch (TimeoutException) { MessageBox.Show("服务器请求超时"); esc.Abort(); } }
private void ListViewStationList_SelectionChanged(object sender, SelectionChangedEventArgs e) { TemplateWebBrowserChart.JavaScript("DeleteData", "runtime"); if (ListViewStationList.SelectedItem == null) { return; } StationUI stationui = ListViewStationList.SelectedItem as StationUI; MapCenter = new Point(stationui.Longitude, stationui.Latitude); ElectricityService.ElectricityServiceClient esc = new ElectricityService.ElectricityServiceClient(); try { this.Dispatcher.Invoke(new Action(() => { WriteLine("[UI]正在请求当日历史数据:{0}", stationui.ID); })); List <ElectricityService.RuntimeStationData> DataList = esc.SelectRuntimeStationData(stationui.ID, DateTime.Today).ToList(); this.Dispatcher.Invoke(new Action(() => { WriteLine("[UI]当日历史数据请求完毕:{0}", stationui.ID); })); if (DataList.Count == 0) { return; } foreach (ElectricityService.RuntimeStationData record in DataList) { if (record.Time > DateTime.Now) { break; } TemplateWebBrowserChart.JavaScript("AddData", "runtime", record.Time.ToString("yyyy-MM-dd HH:mm:ss"), record.ActivePower); } Forecast(stationui.ID, DateTime.Today); esc.Close(); } catch (TimeoutException) { MessageBox.Show("服务器请求超时"); esc.Abort(); } }