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;
            }
        }