bool LoadBaseBindingData(InterferedBindingData bindingData, string freqGuid)
        {
            ActivityEquipment       equip = GetEquipment(freqGuid);
            ActivitySurroundStation stat  = GetSurroundStation(freqGuid);

            if (equip != null)
            {
                bindingData.AssignFreq  = equip.AssignSendFreq.ToString();
                bindingData.BdWith      = equip.Band_kHz.ToString();
                bindingData.EmitPower   = equip.Power_W.ToString();
                bindingData.EquipName   = equip.Name;
                bindingData.StationType = "现场设台";
                bindingData.SetDept     = equip.OrgInfo.Name;
            }
            else if (stat != null)
            {
                StationEmitInfo emitInfo = stat.EmitInfo.Where(p => p.StationGuid == freqGuid).SingleOrDefault();
                if (emitInfo != null)
                {
                    bindingData.AssignFreq = emitInfo.FreqEC == null ? "" : emitInfo.FreqEC.ToString();
                    bindingData.BdWith     = emitInfo.FreqBand == null ? "" : emitInfo.FreqBand.ToString();
                    bindingData.EmitPower  = emitInfo.EquPow.ToString();
                }


                bindingData.EquipName   = "";
                bindingData.StationType = "周围台站";
                bindingData.SetDept     = stat.ORG_NAME;
            }
            if (equip != null || stat != null)
            {
                return(true);
            }
            return(false);
        }
示例#2
0
        public override DataTemplate SelectTemplate(object item, DependencyObject container)
        {
            if (item is StationEmitInfo)
            {
                StationEmitInfo emitInfo = item as StationEmitInfo;
                switch (emitInfo.ClearResult)
                {
                case ClearResultEnum.ClearSucceed:
                    return(SuccessfulTemplate);

                case ClearResultEnum.ClearFail:
                    return(FailureTemplate);

                default:
                    return(NoClearTemplate);
                }
            }

            return(base.SelectTemplate(item, container));
        }
示例#3
0
        /// <summary>
        /// 频率信息转为发射信息
        /// </summary>
        /// <param name="dataTable"></param>
        /// <returns></returns>
        private List <StationEmitInfo> FreqInfoToEmit(string pStatId, DataTable dataTable)
        {
            List <StationEmitInfo> stationEmits = new List <StationEmitInfo>();

            foreach (DataRow dr in dataTable.Rows)
            {
                try
                {
                    StationEmitInfo stationEmit = new StationEmitInfo();
                    stationEmit.StationGuid = pStatId;
                    //stationEmit.PlaceGuid = this.CurrentActivityPlace.Guid;
                    if (dataTable.Columns.Contains("GUID"))
                    {
                        stationEmit.Guid = dr["GUID"].ToString();
                    }

                    //频段 :发射FREQ_EFB、FREQ_EFE   接收FREQ_RFB、FREQ_RFE
                    //频点 :发射FREQ_UC、接收FREQ_LC
                    if (dataTable.Columns.Contains("FREQ_TYPE"))
                    {
                        if (dr["FREQ_TYPE"].ToString() == "1")
                        {
                            stationEmit.FreqType = FreqType.频段;

                            double freqEfb = 0;
                            if (dataTable.Columns.Contains("FREQ_EFB"))
                            {
                                double.TryParse(dr["FREQ_EFB"].ToString(), out freqEfb);
                                stationEmit.FreqEFB = freqEfb;
                            }

                            double freqEfe = 0;
                            if (dataTable.Columns.Contains("FREQ_EFE"))
                            {
                                double.TryParse(dr["FREQ_EFE"].ToString(), out freqEfe);
                                stationEmit.FreqEFE = freqEfe;
                            }

                            double freqRfb = 0;
                            if (dataTable.Columns.Contains("FREQ_RFB"))
                            {
                                double.TryParse(dr["FREQ_RFB"].ToString(), out freqRfb);
                                stationEmit.FreqRFB = freqRfb;
                            }

                            double freqRfe = 0;
                            if (dataTable.Columns.Contains("FREQ_RFE"))
                            {
                                double.TryParse(dr["FREQ_RFE"].ToString(), out freqRfe);
                                stationEmit.FreqRFE = freqRfe;
                            }
                        }
                        else
                        {
                            stationEmit.FreqType = FreqType.频点;
                            double freqUc = 0;
                            if (dataTable.Columns.Contains("FREQ_UC"))
                            {
                                double.TryParse(dr["FREQ_UC"].ToString(), out freqUc);
                                stationEmit.FreqEC = freqUc;
                            }

                            double freqLc = 0;
                            if (dataTable.Columns.Contains("FREQ_LC"))
                            {
                                double.TryParse(dr["FREQ_LC"].ToString(), out freqLc);
                                stationEmit.FreqRC = freqLc;
                            }
                            stationEmit.FreqEFB = null;
                            stationEmit.FreqEFE = null;
                            stationEmit.FreqRFB = null;
                            stationEmit.FreqRFE = null;
                        }
                    }
                    else
                    {
                        //stationEmit.FreqType = null;
                    }

                    #region 注释以前获取频率的方法

                    #region 频率发射
                    //stationEmit.FreqEC = 0;
                    //if (dataTable.Columns.Contains("FREQ_UC"))
                    //{
                    //    double freqUc = 0;
                    //    double.TryParse(dr["FREQ_UC"].ToString(), out freqUc);
                    //    if (freqUc == 0 || double.IsNaN(freqUc))
                    //    {
                    //        if (dataTable.Columns.Contains("FREQ_EFB"))
                    //        {
                    //            freqUc = 0;

                    //
                    //            double.TryParse(dr["FREQ_EFB"].ToString(), out freqUc);
                    //            if (freqUc == 0 || double.IsNaN(freqUc))
                    //            {
                    //                if (dataTable.Columns.Contains("FREQ_EFE"))
                    //                {
                    //                    freqUc = 0;
                    //                    double.TryParse(dr["FREQ_EFE"].ToString(), out freqUc);
                    //                    if (!double.IsNaN(freqUc))
                    //                    {
                    //                        stationEmit.FreqEC = freqUc;
                    //                    }
                    //                }
                    //            }
                    //            else
                    //                stationEmit.FreqEC = freqUc;
                    //        }
                    //    }
                    //    else
                    //        stationEmit.FreqEC = freqUc;
                    //}
                    //else if (dataTable.Columns.Contains("FREQ_EFB"))
                    //{
                    //    double freqUc = 0;
                    //    double.TryParse(dr["FREQ_EFB"].ToString(), out freqUc);
                    //    if (freqUc == 0 || double.IsNaN(freqUc))
                    //    {
                    //        if (dataTable.Columns.Contains("FREQ_EFE"))
                    //        {
                    //            freqUc = 0;
                    //            double.TryParse(dr["FREQ_EFE"].ToString(), out freqUc);
                    //            if (!double.IsNaN(freqUc))
                    //            {
                    //                stationEmit.FreqEC = freqUc;
                    //            }
                    //        }
                    //    }
                    //    else
                    //        stationEmit.FreqEC = freqUc;
                    //}
                    //else if (dataTable.Columns.Contains("FREQ_EFE"))
                    //{
                    //    double freqUc = 0;
                    //    double.TryParse(dr["FREQ_EFE"].ToString(), out freqUc);
                    //    if (!double.IsNaN(freqUc))
                    //    {
                    //        stationEmit.FreqEC = freqUc;
                    //    }
                    //}
                    #endregion 频率发射结束

                    #region 频率接收
                    //stationEmit.FreqRC = 0;
                    //if (dataTable.Columns.Contains("FREQ_LC"))
                    //{
                    //    double freqUc = 0;
                    //    double.TryParse(dr["FREQ_LC"].ToString(), out freqUc);
                    //    if (freqUc == 0 || double.IsNaN(freqUc))
                    //    {
                    //        if (dataTable.Columns.Contains("FREQ_RFB"))
                    //        {
                    //            freqUc = 0;
                    //            double.TryParse(dr["FREQ_RFB"].ToString(), out freqUc);
                    //            if (freqUc == 0 || double.IsNaN(freqUc))
                    //            {
                    //                if (dataTable.Columns.Contains("FREQ_RFE"))
                    //                {
                    //                    freqUc = 0;
                    //                    double.TryParse(dr["FREQ_RFE"].ToString(), out freqUc);
                    //                    if (!double.IsNaN(freqUc))
                    //                    {
                    //                        stationEmit.FreqRC = freqUc;
                    //                    }
                    //                }
                    //            }
                    //            else
                    //                stationEmit.FreqRC = freqUc;
                    //        }
                    //    }
                    //    else
                    //        stationEmit.FreqRC = freqUc;
                    //}
                    //else if (dataTable.Columns.Contains("FREQ_RFB"))
                    //{
                    //    double freqUc = 0;
                    //    double.TryParse(dr["FREQ_RFB"].ToString(), out freqUc);
                    //    if (freqUc == 0 || double.IsNaN(freqUc))
                    //    {
                    //        if (dataTable.Columns.Contains("FREQ_RFE"))
                    //        {
                    //            freqUc = 0;
                    //            double.TryParse(dr["FREQ_RFE"].ToString(), out freqUc);
                    //            if (!double.IsNaN(freqUc))
                    //            {
                    //                stationEmit.FreqRC = freqUc;
                    //            }
                    //        }
                    //    }
                    //    else
                    //        stationEmit.FreqRC = freqUc;
                    //}
                    //else if (dataTable.Columns.Contains("FREQ_RFE"))
                    //{
                    //    double freqUc = 0;
                    //    double.TryParse(dr["FREQ_RFE"].ToString(), out freqUc);
                    //    if (!double.IsNaN(freqUc))
                    //    {
                    //        stationEmit.FreqRC = freqUc;
                    //    }
                    //}
                    #endregion 频率接收结束

                    #endregion

                    //频率带宽
                    stationEmit.FreqBand = 0;
                    if (dataTable.Columns.Contains("FREQ_E_BAND"))
                    {
                        double freqBand = 0;
                        double.TryParse(dr["FREQ_E_BAND"].ToString(), out freqBand);
                        stationEmit.FreqBand = freqBand;
                    }
                    //调制方式
                    if (dataTable.Columns.Contains("FREQ_MOD"))
                    {
                        stationEmit.FreqMod = dr["FREQ_MOD"].ToString();
                    }
                    if (stationEmits.FirstOrDefault(p => p.FreqEC == stationEmit.FreqEC) == null)   //过滤重复的发射频率
                    {
                        stationEmits.Add(stationEmit);
                    }
                }
                catch
                {
                }
            }
            return(stationEmits);
        }