private void UECallInfoListInfo() { while (true) { try { if (JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows.Count > 0) { //存在查询条件 if (condition) { Dispatcher.Invoke(() => { for (int i = 0; i < JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows.Count; i++) { bool existence = true; if (!UECallInfo.DomainFullPathName.Equals("") && !UECallInfo.DomainFullPathName.Equals(JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["ParentFullPathName"].ToString()) || !UECallInfo.BOrmType.Equals("") && !UECallInfo.BOrmType.Equals(JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BOrmType"].ToString()) || !UECallInfo.BUeId.Equals("") && !UECallInfo.BUeId.Equals(JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BUeId"].ToString())) { existence = false; } if (existence) { bool Flag = true; GSMV2UEReportInfoClass UEReportInfo = new GSMV2UEReportInfoClass(); UEReportInfo.ReportID = (ConditionUECallInfoListTree.Count + 1).ToString(); UEReportInfo.DomainFullPathName = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["ParentFullPathName"].ToString(); UEReportInfo.DeviceName = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["DeviceName"].ToString(); UEReportInfo.BOrmType = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BOrmType"].ToString(); UEReportInfo.BUeId = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BUeId"].ToString(); UEReportInfo.CRSRP = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["CRSRP"].ToString(); UEReportInfo.Carrier = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["Carrier"].ToString(); UEReportInfo.DataTime = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["DataTime"].ToString(); UEReportInfo.BUeContent = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BUeContent"].ToString(); for (int j = 0; j < ConditionUECallInfoListTree.Count; j++) { if (UEReportInfo.DomainFullPathName == ConditionUECallInfoListTree[j].DomainFullPathName && UEReportInfo.DeviceName == ConditionUECallInfoListTree[j].DeviceName && UEReportInfo.BOrmType == ConditionUECallInfoListTree[j].BOrmType && UEReportInfo.BUeId == ConditionUECallInfoListTree[j].BUeId && UEReportInfo.CRSRP == ConditionUECallInfoListTree[j].CRSRP && UEReportInfo.Carrier == ConditionUECallInfoListTree[j].Carrier && UEReportInfo.DataTime == ConditionUECallInfoListTree[j].DataTime && UEReportInfo.BUeContent == ConditionUECallInfoListTree[j].BUeContent) { Flag = false; break; } } if (Flag) { ConditionUECallInfoListTree.Add(UEReportInfo); } } } }); } //不存在查询条件 else { Dispatcher.Invoke(() => { for (int i = 0; i < JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows.Count; i++) { if (i == 0 && JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows.Count == UECallInfoListTree.Count) { break; } else if (i > UECallInfoListTree.Count - 1) { GSMV2UEReportInfoClass UEReportInfo = new GSMV2UEReportInfoClass(); UEReportInfo.ReportID = (UECallInfoListTree.Count + 1).ToString(); UEReportInfo.DomainFullPathName = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["ParentFullPathName"].ToString(); UEReportInfo.DeviceName = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["DeviceName"].ToString(); UEReportInfo.BOrmType = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BOrmType"].ToString(); UEReportInfo.BUeId = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BUeId"].ToString(); UEReportInfo.CRSRP = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["CRSRP"].ToString(); UEReportInfo.Carrier = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["Carrier"].ToString(); UEReportInfo.DataTime = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["DataTime"].ToString(); UEReportInfo.BUeContent = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BUeContent"].ToString(); UECallInfoListTree.Add(UEReportInfo); } } }); } } } catch (Exception ex) { Parameters.PrintfLogsExtended("上报主叫信息异常", ex.Message, ex.StackTrace); } Thread.Sleep(5000); } }
private void btnSelectData_Click(object sender, RoutedEventArgs e) { UECallInfo.DomainFullPathName = cbFullName.Text.Trim(); UECallInfo.BOrmType = txtIMSI.Text.Trim(); if (cbCallType.SelectedIndex == 0) { UECallInfo.BUeId = ""; } else { UECallInfo.BUeId = cbCallType.Text.Trim(); } if (UECallInfo.DomainFullPathName.Equals("") && cbCallType.SelectedIndex == 0 && UECallInfo.BUeId.Equals("")) { condition = false; ConditionUECallInfoListTree.Clear(); UECallInfoListTree.Clear(); for (int i = 0; i < JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows.Count; i++) { GSMV2UEReportInfoClass UEReportInfo = new GSMV2UEReportInfoClass(); UEReportInfo.ReportID = (ConditionUECallInfoListTree.Count + 1).ToString(); UEReportInfo.DomainFullPathName = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["ParentFullPathName"].ToString(); UEReportInfo.DeviceName = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["DeviceName"].ToString(); UEReportInfo.BOrmType = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BOrmType"].ToString(); UEReportInfo.BUeId = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BUeId"].ToString(); UEReportInfo.CRSRP = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["CRSRP"].ToString(); UEReportInfo.Carrier = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["Carrier"].ToString(); UEReportInfo.DataTime = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["DataTime"].ToString(); UEReportInfo.BUeContent = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BUeContent"].ToString(); UECallInfoListTree.Add(UEReportInfo); } dgHistoryTable.ItemsSource = UECallInfoListTree; } else { condition = true; ConditionUECallInfoListTree.Clear(); UECallInfoListTree.Clear(); for (int i = 0; i < JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows.Count; i++) { bool existence = true; if (!UECallInfo.DomainFullPathName.Equals("") && !UECallInfo.DomainFullPathName.Equals(JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["ParentFullPathName"].ToString()) || !UECallInfo.BOrmType.Equals("") && !UECallInfo.BOrmType.Equals(JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BOrmType"].ToString()) || !UECallInfo.BUeId.Equals("") && !UECallInfo.BUeId.Equals(JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BUeId"].ToString())) { existence = false; } if (existence) { GSMV2UEReportInfoClass UEReportInfo = new GSMV2UEReportInfoClass(); UEReportInfo.ReportID = (ConditionUECallInfoListTree.Count + 1).ToString(); UEReportInfo.DomainFullPathName = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["ParentFullPathName"].ToString(); UEReportInfo.DeviceName = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["DeviceName"].ToString(); UEReportInfo.BOrmType = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BOrmType"].ToString(); UEReportInfo.BUeId = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BUeId"].ToString(); UEReportInfo.CRSRP = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["CRSRP"].ToString(); UEReportInfo.Carrier = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["Carrier"].ToString(); UEReportInfo.DataTime = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["DataTime"].ToString(); UEReportInfo.BUeContent = JsonInterFace.GSMV2UEReportInfo.UECallInfoDataTab.Rows[i]["BUeContent"].ToString(); ConditionUECallInfoListTree.Add(UEReportInfo); } } dgHistoryTable.ItemsSource = ConditionUECallInfoListTree; } }