Beispiel #1
0
        private void dataGridViewX1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                if (_BindingSource == null || _BindingSource.Count < 1)
                {
                    return;
                }

                if (dataGridViewX1.Columns[e.ColumnIndex].Name.Equals("colDelete"))
                {
                    DataGridViewButtonXCell cell = dataGridViewX1.CurrentCell as DataGridViewButtonXCell;
                    if (cell != null)
                    {
                        if (e.RowIndex >= 0 && _BindingSource.Count > e.RowIndex)
                        {
                            AirComAntennaType obj = _BindingSource[e.RowIndex] as AirComAntennaType;
                            _BindingSource.Remove(obj);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                JLog.Instance.Error(ex.Message, MethodBase.GetCurrentMethod().Name,
                                    MethodBase.GetCurrentMethod().Module.Name);
            }
        }
Beispiel #2
0
        public void LoadAntennaInfo(AirComAntennaType Antennas)
        {
            try
            {
                //型号
                cmbAntenType.Text = Antennas.AntennaTypeName;

                txtLat.Text = Antennas.Location.Latitude.ToString();
                txtLng.Text = Antennas.Location.Latitude.ToString();

                txtAngle.Text = Antennas.Azimuth.ToString();
                txtTile.Text  = Antennas.MechanicalDownTilt.ToString();

                txtHeight.Text = Antennas.Height.ToString();
                //载波
                cmbCarrierType.Text = Antennas.CarrierAlias;

                cmbModelType.Text = Antennas.ModelType;

                txtRS.Text = Antennas.Power.ToString();

                txtfh.Text = Antennas.Burthen.ToString();
            }
            catch (Exception ex)
            {
                JLog.Instance.Error(ex.Message, MethodBase.GetCurrentMethod().Name,
                                    MethodBase.GetCurrentMethod().Module.Name);
            }
        }
Beispiel #3
0
        public void IntionParam()
        {
            try
            {
                cmbAntenType.Items.Clear();
                cmbCarrierType.Items.Clear();
                cmbModelType.Items.Clear();
                ComboBoxItem item = new ComboBoxItem();


                cmbAntenType.Items.AddRange(ClientGlobalInfo.Instance.ConfigParam.AntennaTypes.ToArray());
                foreach (var carrierItem in ClientGlobalInfo.Instance.ConfigParam.CarrierItems)
                {
                    cmbCarrierType.Items.Add(new ComboBoxItem()
                    {
                        Tag = carrierItem.ID, Text = carrierItem.Alias
                    });
                }
                cmbModelType.Items.AddRange(ClientGlobalInfo.Instance.ConfigParam.ModelTypes.ToArray())
                ;
                _Anten = null;
            }
            catch (Exception ex)
            {
                JLog.Instance.Error(ex.Message, MethodBase.GetCurrentMethod().Name,
                                    MethodBase.GetCurrentMethod().Module.Name);
            }
        }
Beispiel #4
0
 private void dataGridViewX1_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
 {
     try
     {
         if (_BindingSource == null || _BindingSource.Count < 1)
         {
             return;
         }
         if (e.RowIndex >= 0 && _BindingSource.Count > e.RowIndex)
         {
             AirComAntennaType obj = _BindingSource[e.RowIndex] as AirComAntennaType;
             ucLTEAntennaType1.LoadAntennaInfo(obj);
         }
     }
     catch (Exception ex)
     {
         JLog.Instance.Error(ex.Message, MethodBase.GetCurrentMethod().Name,
                             MethodBase.GetCurrentMethod().Module.Name);
     }
 }
Beispiel #5
0
        public AirComAntennaType BuildAntennaOjbect()
        {
            try
            {
                AirComAntennaType Obj = new AirComAntennaType();
                if (ValidateParam())
                {
                    Obj.AntennaTypeName         = cmbAntenType.Text;
                    Obj.Location                = new AirComLocationType();
                    Obj.Location.Latitude       = double.Parse(txtLat.Text);
                    Obj.Location.LongitudeField = double.Parse(txtLng.Text);
                    Obj.Azimuth            = int.Parse(txtAngle.Text);
                    Obj.MechanicalDownTilt = double.Parse(txtTile.Text);
                    Obj.Height             = int.Parse(txtHeight.Text);

                    ComboBoxItem Item = cmbCarrierType.SelectedItem as ComboBoxItem;
                    Obj.CarrierAlias = Item.Text;
                    Obj.CarrierId    = (int)Item.Tag;

                    Obj.Power     = double.Parse(txtRS.Text);
                    Obj.Burthen   = double.Parse(txtfh.Text);
                    Obj.ModelType = cmbModelType.Text;

                    Obj.ResolutionMetres = Double.Parse(txtResoluMeters.Text);
                    Obj.RadiusKm         = Double.Parse(txtRS.Text);
                    return(Obj);
                }
                return(null);
            }
            catch (Exception ex)
            {
                JLog.Instance.Error(ex.Message, MethodBase.GetCurrentMethod().Name,
                                    MethodBase.GetCurrentMethod().Module.Name);
                return(null);
            }
        }
        /// <summary>
        /// 注入天线信息
        /// </summary>
        /// <param name="Antennas">天线信息</param>
        /// <param name="RefLteNode">新生成的,EDS中的基站信息</param>
        private static void BuildAntennaInfo(List <AirComAntennaType> Antennas, ref LTENodeType RefLteNode)
        {
            #region Antennas
            List <LTEAntennaType> _Antennas = new List <LTEAntennaType>();
            for (int index = 0; index < Antennas.Count; index++)
            {
                AirComAntennaType Item     = Antennas[index];
                LTEAntennaType    _Antenna = new LTEAntennaType();
                _Antenna.Index = index + 1; //可以采用序列的索引吗?可以
                #region AbsLocation         // 无异议

                _Antenna.AbsLocation = new LocationTypeType()
                {
                    Longitude          = Item.Lng,
                    LongitudeSpecified = true,
                    Latitude           = Item.Lat,
                    LatitudeSpecified  = true
                };
                #endregion

                _Antenna.Azimuth                        = Item.Azimuth;
                _Antenna.AzimuthSpecified               = true;
                _Antenna.ElectricalDownTilt_RO          = Item.ElectricalDownTilt;//界面输入的是物理的?还是电子的?//无用,填0 @20150825确认
                _Antenna.ElectricalDownTilt_ROSpecified = true;
                _Antenna.Height          = Item.Height;
                _Antenna.HeightSpecified = true;
                //_Antenna.iid = Item //示例XML中没有
                _Antenna.MechanicalDownTiltSpecified = true;
                _Antenna.MechanicalDownTilt          = Item.MechanicalDownTilt;

                #region AntennaPatternType
                //_Antenna.AntennaPatternType = new AntennaPatternType()
                //{
                //    iid = Antennas[index].AntennaTypeName   //就是天线型号  Default_D,Defaut_F

                //};  //这个值从哪里获取?


                _Antenna.AntennaPatternType = new IDType()
                {
                    iid = Antennas[index].AntennaTypeName
                };
                #endregion

                #region PrimaryModel,天线参数中体现
                _Antenna.PrimaryModel = new PredictionModelReferenceType()
                {
                    ModelType = new IDType()
                    {
                        iid = Antennas[index].ModelType                           //从哪里获取?传播模型由用户在下拉框中选择;配置文件中可配置选项;
                    },
                    RadiusKM                  = Antennas[index].RadiusKm,         //是覆盖半径吗?1,2,3,5,由用户下拉框中选择,默认为2;
                    RadiusKMSpecified         = true,
                    ResolutionMetres          = Antennas[index].ResolutionMetres, //计算精度,以米为单位,默认为10M;用户可选;扇区添加天线时,需选择计算精度5,10,20
                    ResolutionMetresSpecified = true
                };

                #endregion

                #region Feeders

                List <LTECellFeederType> _LteCellFeeders = new List <LTECellFeederType>();


                LTECellFeederType _fe = new LTECellFeederType();
                //以下参数坐哪里获取?
                _fe.FeederType = new IDType()
                {
                    iid = "Unknown"
                };
                //_fe.LTECellID = (index + 1).ToString();//基站iid-天线索引号(_Antenna.Index)
                //_fe.LTECellID =string.Format("{0}-{1}" ,RefLteNode.iid ,index+1);//扇区ID,20151126郭琴确认//20160829根据郭琴要求,修改两种对应关系,详见
                _fe.LTECellID        = Item.Celliid;
                _fe.Length           = 0;
                _fe.LengthSpecified  = true;
                _fe.DLGain           = 0;
                _fe.DLGainSpecified  = true;
                _fe.MHAGain          = 0;
                _fe.MHAGainSpecified = true;
                _fe.MHAType          = new IDType()
                {
                    iid = "Unknown"
                };
                _fe.ULGain               = 0;
                _fe.ULGainSpecified      = true;
                _fe.Noise                = 0;
                _fe.NoiseSpecified       = true;
                _fe.OtherLosses          = 0;
                _fe.OtherLossesSpecified = true;
                _LteCellFeeders.Add(_fe);
                _Antenna.Feeders = _LteCellFeeders.ToArray();

                #endregion
                _Antennas.Add(_Antenna);
            }
            RefLteNode.Antennas = _Antennas.ToArray();

            #endregion
        }