Пример #1
0
 private Dictionary<string, string> ComposeCostHataMoudleXlsConvertProper(XlsTable xlsTable)
 {
     Dictionary<string, string> dictionary = new Dictionary<string, string>();
     dictionary.Add("PropModelName", "PropModelName");
     dictionary.Add("K1", "K1");
     dictionary.Add("K2", "K2");
     dictionary.Add("K3", "K3");
     dictionary.Add("K4", "K4");
     dictionary.Add("K5", "K5");
     dictionary.Add("K6", "K6");
     dictionary.Add("K7", "K7");
     dictionary.Add("K8", "K8");
     dictionary.Add("K9", "K9");
     dictionary.Add("K10", "K10");
     dictionary.Add("K11", "K11");
     dictionary.Add("K12", "K12");
     dictionary.Add("K13", "K13");
     dictionary.Add("K14", "K14");
     dictionary.Add("K15", "K15");
     dictionary.Add("K16", "K16");
     dictionary.Add(PropagationResource.PROP_DIFFRACTION_LOSS_METHOD, "DifLossMethodName");
     dictionary.Add(PropagationResource.PROP_EFFECT_HEIGHT_METHOD, "EffectTxHeightCalcuMethodName");
     dictionary.Add(PropagationResource.PROP_LIMIT_TO_FREE_SPACE, "IsLimitedInSpaceLoss");
     dictionary.Add("City", "SelectA");
     dictionary.Add("Environments", "SelectCell");
     dictionary.Add("Description", "Description");
     xlsTable.ModuleXlsConvertProper = dictionary;
     return dictionary;
 }
Пример #2
0
 private XlsTable ComposeCostHataPropagXLSTable(List<IPropagationModel> modelList, string CategoryName)
 {
     XlsTable xlsTable = new XlsTable();
     xlsTable.SubSystemName = "Huawei.UNet.Propa.SubSys";
     xlsTable.SheetName = PropagationResource.PROP_PROPAGATION;
     xlsTable.TableName = CategoryName + " Table";
     xlsTable.ModuleXlsConvertProper = this.ComposeCostHataMoudleXlsConvertProper(xlsTable);
     this.CompseCostHataData(xlsTable, modelList);
     return xlsTable;
 }
Пример #3
0
 private Dictionary<string, string> ComposeClutterMoudleXlsConvertProper(XlsTable xlsTable)
 {
     Dictionary<string, string> dictionary = new Dictionary<string, string>();
     dictionary.Add("Propagation Model Name", "PropModelName");
     dictionary.Add("Clutter Name", "GisClutterDictionary");
     dictionary.Add("Losses(dB)", "AllKTerrainsDictionary");
     dictionary.Add("Clearance(m)", "AllKTerrainsClearanceDictionary");
     dictionary.Add("rx height(m)", "AllKTerrainsHeightDictionary");
     xlsTable.ModuleXlsConvertProper = dictionary;
     return dictionary;
 }
Пример #4
0
 private XlsTable ComposeAntennaXLSTable(AntennaEntity ant, int i)
 {
     XlsTable table = new XlsTable();
     table.SubSystemName = "Huawei.UNet.Antenna.View.AntennaSubSys";
     table.SheetName = AntennaResource.ANTENNA_FILES_NAME;
     table.TableName = string.Empty;
     table.TableNo = i;
     table.ModuleXlsConvertProper = null;
     table.Data = new DataTable();
     this.ConvertAntObjToXLS(ant, table.Data);
     return table;
 }
Пример #5
0
 public ISubSystemData ConvertXls(XlsTable[] xlsTables)
 {
     ExcelTableToData.TrafficService = this.m_TrafficService;
     TrafficSubSystemData trafficSubSystemData = new TrafficSubSystemData();
     IEventViewService eventViewService = this.m_appContext.Lookup(typeof(IEventViewService).FullName) as IEventViewService;
     foreach (XlsTable table in xlsTables)
     {
         if (this.m_Dic.ContainsKey(table.TableName))
         {
             this.m_Dic[table.TableName](trafficSubSystemData, table, eventViewService);
         }
     }
     return trafficSubSystemData;
 }
Пример #6
0
 public ISubSystemData ConvertXls(XlsTable[] xlsTables)
 {
     PredictionSystemData predictionData = new PredictionSystemData();
     IEventViewService eventViewService = this.m_AppContext.Lookup(typeof(IEventViewService).FullName) as IEventViewService;
     foreach (XlsTable table in xlsTables)
     {
         if (table.TableName == LTEPredictionResource.PREDICTION_TABLE_NAME)
         {
             XLSPredictionDataExportTool.PredictionTableToData(predictionData, table, eventViewService);
             this.PredictionTableToData(predictionData, table, eventViewService);
         }
     }
     return predictionData;
 }
Пример #7
0
 public SubsystemDataImple convertXls(XlsTable[] xlsTables)
 {
     SubsystemDataImple systemDateImple = new SubsystemDataImple();
     systemDateImple.SubSystemName = NEResource.NE_SUBSYS;
     for (int i = 0; i < xlsTables.Length; i++)
     {
         XlsTable xlsSiteTable = xlsTables[i];
         string sheetName = xlsSiteTable.SheetName;
         if (sheetName != null)
         {
             if (!(sheetName == "Sites"))
             {
                 if (sheetName == "Transceivers")
                 {
                     goto Label_0088;
                 }
                 if (sheetName == "Cells")
                 {
                     goto Label_0098;
                 }
                 if (sheetName == "NetWork")
                 {
                     goto Label_00A8;
                 }
                 if (sheetName == "Equipment")
                 {
                     goto Label_00B3;
                 }
             }
             else
             {
                 systemDateImple.Site = this.ConvertXLSToSite(xlsSiteTable);
             }
         }
         continue;
     Label_0088:
         systemDateImple.Transceiver = this.ConvertXLSToTranceiver(xlsSiteTable);
         continue;
     Label_0098:
         systemDateImple.LTECell = this.ConvertXLSToCell(xlsSiteTable);
         continue;
     Label_00A8:
         this.ConvertXLSFromNetWorkName(systemDateImple, xlsSiteTable);
         continue;
     Label_00B3:
         this.ConvertXLSFromEquipmentName(systemDateImple, xlsSiteTable);
     }
     return systemDateImple;
 }
Пример #8
0
 private void ConvertXLSToSector(SubsystemDataImple systemDateImple, XlsTable xlsNetWorkTable)
 {
     List<AntConfig> list = new List<AntConfig>();
     Dictionary<string, string> xlsNameToProper = new Dictionary<string, string>();
     XLSProConst.CellXlsToAntConfigPro(xlsNameToProper);
     xlsNameToProper.Remove("Site Name");
     xlsNameToProper.Remove("Site ID");
     xlsNameToProper.Remove("Transceiver Name");
     Dictionary<string, string> dictionary2 = new Dictionary<string, string>();
     XLSProConst.AntConfigXlsToObjPro(dictionary2);
     for (int i = 0; i < xlsNetWorkTable.Data.Rows.Count; i++)
     {
         DataRow dr = xlsNetWorkTable.Data.Rows[i];
         string colName = string.Empty;
         try
         {
             AntConfig data = new AntConfig();
             data.IsMainAnt = false;
             this.FillValue(xlsNameToProper, dr, data, ref colName);
             foreach (string str2 in dictionary2.Keys)
             {
                 string antennaName = dr[str2].ToString();
                 if (str2.Equals("Antenna"))
                 {
                     AntennaEntity entity = this.m_Model.Antennas.FindAntennaByName(antennaName);
                     data.OutdoorAntenna = null;
                     if (entity.Name != "createnewtempantenna")
                     {
                         data.OutdoorAntenna = entity;
                     }
                 }
                 if (str2.Equals("TMA Equipment"))
                 {
                     data.Tma = this.m_Model.TmaColl.FindTmaByName(antennaName);
                 }
                 if (str2.Equals("Feeder Equipment"))
                 {
                     data.Feeder = this.m_Model.FeederColl.FindFeederByName(antennaName);
                 }
             }
             Transceiver transceiver = new Transceiver();
             transceiver.Name = dr["Transceiver Name"].ToString();
             data.Parent = transceiver;
             list.Add(data);
         }
         catch (Exception exception)
         {
             this.m_Model.EventVierService.WriteLog(string.Concat(new object[] { "Sector: Rows=(", i, ")", colName, "Error" }), Huawei.UNet.Frame.Interface.LogLevel.Warning);
             WriteLog.Logger.Warn(exception.Message);
         }
     }
     systemDateImple.AntConfig = list;
 }
Пример #9
0
 public override ISubSystemData ConvertXls(ISubSystemData iSubSystemData, XlsTable xlsTable)
 {
     ImportXLSManager manager = new ImportXLSManager(base.m_ServiceProvider as IApplicationContext);
     return manager.ConvertXls(xlsTable, iSubSystemData);
 }
Пример #10
0
 private void ConvertXLSToFrequencyEquipment(SubsystemDataImple systemDateImple, XlsTable xlsNetWorkTable)
 {
     List<FrequencyBand> list = new List<FrequencyBand>();
     for (int i = 0; i < xlsNetWorkTable.Data.Rows.Count; i++)
     {
         DataRow row = xlsNetWorkTable.Data.Rows[i];
         try
         {
             FrequencyBand item = new FrequencyBand();
             item.Name = row["Name"].ToString();
             if (string.IsNullOrEmpty(item.Name))
             {
                 this.m_Model.EventVierService.WriteLog("Frequency Bands Table's " + (i + 1) + "row import error", Huawei.UNet.Frame.Interface.LogLevel.Warning);
             }
             else
             {
                 item.ACIR = float.Parse(row["ACIR"].ToString());
                 item.BandWidth = float.Parse(row["BandWidth (MHz)"].ToString());
                 item.DLFrequency = float.Parse(row["Downlink Frequency (MHz)"].ToString());
                 item.EndChIndex = int.Parse(row["End Channel"].ToString());
                 item.ExcludedChannels = row["Excluded Channels"].ToString();
                 item.StartChIndex = int.Parse(row["Start Channel"].ToString());
                 item.ULFrequency = float.Parse(row["Uplink Frequency (MHz)"].ToString());
                 item.DuplexingMethod = (FrequencyBand.eDupMethod) Enum.Parse(typeof(FrequencyBand.eDupMethod), row["Duplexing"].ToString());
                 list.Add(item);
             }
         }
         catch (Exception exception)
         {
             this.m_Model.EventVierService.WriteLog("Frequency Bands Table's " + (i + 1) + "row import error", Huawei.UNet.Frame.Interface.LogLevel.Warning);
             WriteLog.Logger.Error(exception.StackTrace);
         }
     }
     systemDateImple.FrequencyBand = list;
 }
Пример #11
0
 private void ConvertXLSToRepeater(SubsystemDataImple systemDateImple, XlsTable xlsNetWorkTable)
 {
     Dictionary<string, string> xlsNameToProper = new Dictionary<string, string>();
     XLSProConst.RepeatersToObj(xlsNameToProper);
     List<Repeater> list = new List<Repeater>();
     for (int i = 0; i < xlsNetWorkTable.Data.Rows.Count; i++)
     {
         DataRow row = xlsNetWorkTable.Data.Rows[i];
         try
         {
             Repeater item = new Repeater();
             item.Name = row["Name"].ToString();
             item.Active = bool.Parse(row["Active"].ToString());
             item.DX = double.Parse(row["DX(m)"].ToString());
             item.DY = double.Parse(row["DY(m)"].ToString());
             item.LinkType = (RepeaterLinkType) Enum.Parse(typeof(RepeaterLinkType), row["Link Type"].ToString());
             item.LinkLoss = float.Parse(row["Link Loss(dB)"].ToString());
             item.LinkDelay = float.Parse(row["Link Delay(dB)"].ToString());
             item.UlTotalGain = float.Parse(row["Upload Total Gain(dB)"].ToString());
             item.DlTotalGain = float.Parse(row["Download Total Gain(dB)"].ToString());
             item.Comments = row["Comment"].ToString();
             item.DonorAntConfig = new AntConfig();
             AntConfig config = new AntConfig();
             config.OutdoorAntenna = this.m_Model.Antennas.FindAntennaByName(row["Antenna Donor side"].ToString());
             config.Feeder = this.m_Model.FeederColl.FindFeederByName(row["Feeder Donor Side"].ToString());
             config.UlFeederLength = float.Parse(row["Feeder Length Tansmission(Donor)"].ToString());
             config.DlFeederLength = float.Parse(row["Feeder Length Reception(Donor)"].ToString());
             config.Height = float.Parse(row["Antenna Height(Donor)(m)"].ToString());
             config.Azimuth = float.Parse(row["Azimuth(Donor)"].ToString());
             config.Tilt = float.Parse(row["Mechanical Downtilt(Donor)"].ToString());
             item.DonorAntConfig = config;
             AntConfig config2 = new AntConfig();
             config2.OutdoorAntenna = this.m_Model.Antennas.FindAntennaByName(row["Antenna Coverage Side"].ToString());
             config2.Feeder = this.m_Model.FeederColl.FindFeederByName(row["Feeder Coverage Side"].ToString());
             config2.UlFeederLength = float.Parse(row["Feeder Length Transmission(Coverage)"].ToString());
             config2.DlFeederLength = float.Parse(row["Feeder Length Reception(Coverage)"].ToString());
             config2.Height = float.Parse(row["Antenna Height(Coverage)(m)"].ToString());
             config2.Azimuth = float.Parse(row["Azimuth(Coverage)"].ToString());
             config2.Tilt = float.Parse(row["Mechanical Downtilt(Coverage)"].ToString());
             item.ConverageAntConfig = config2;
             item.Equipment = this.m_Model.RepeaterEquipCollection.GetRepeaterEquipByName(row["Equipment"].ToString());
             item.PropModels = new List<PropModelConfig>();
             PropModelConfig config3 = new PropModelConfig();
             config3.PropModelID = NECommon.GetPropIDByName(row["Main propagation model"].ToString(), this.m_Model.PropagetionColl.GetPropagationModelList());
             config3.CalcRadius = int.Parse(row["Main calculation radius (m)"].ToString());
             config3.CalcResolution = int.Parse(row["Main resolution"].ToString());
             item.PropModels.Add(config3);
             if (row["Extended propagation model"].ToString() != string.Empty)
             {
                 PropModelConfig config4 = new PropModelConfig();
                 config4.PropModelID = NECommon.GetPropIDByName(row["Extended propagation model"].ToString(), this.m_Model.PropagetionColl.GetPropagationModelList());
                 config4.CalcRadius = int.Parse(row["Extended calculation radius (m)"].ToString());
                 config4.CalcResolution = int.Parse(row["Extended resolution"].ToString());
                 item.PropModels.Add(config4);
             }
             foreach (string str2 in xlsNameToProper.Keys)
             {
                 string str3 = row[str2].ToString();
                 if (str2.Equals("Donor Cell"))
                 {
                     Transceiver transceiver = new Transceiver();
                     transceiver.Name = str3;
                     item.Parent = transceiver;
                 }
             }
             list.Add(item);
         }
         catch (Exception exception)
         {
             this.m_Model.EventVierService.WriteLog("Repeaters Table's " + (i + 1) + "row import error", Huawei.UNet.Frame.Interface.LogLevel.Warning);
             WriteLog.Logger.Error(exception.StackTrace);
         }
     }
     systemDateImple.LTERepeater = list;
 }
Пример #12
0
 private void CompseClutterData(XlsTable btsXLSTable, List<IPropagationModel> spmHataModelList)
 {
     DataTable table = new DataTable();
     List<string> list = new List<string>();
     foreach (string text in btsXLSTable.ModuleXlsConvertProper.Values)
     {
         table.Columns.Add(text);
         list.Add(text);
     }
     foreach (SpmPropagationModel model in spmHataModelList)
     {
         PropertyInfo[] properties = model.GetType().GetProperties();
         foreach (PropertyInfo info in properties)
         {
             string item = info.Name;
             if (list.Contains(item) && (item == "GisClutterDictionary"))
             {
                 Dictionary<short, string> dictionary = (Dictionary<short, string>) info.GetValue(model, null);
                 foreach (KeyValuePair<short, string> pair in dictionary)
                 {
                     DataRow row = table.NewRow();
                     row["PropModelName"] = model.PropModelName;
                     row["GisClutterDictionary"] = pair.Key + "-" + pair.Value;
                     row["AllKTerrainsDictionary"] = model.KTerrainsDictionary[pair.Key];
                     row["AllKTerrainsClearanceDictionary"] = model.KTerrainsClearanceDictionary[pair.Key];
                     row["AllKTerrainsHeightDictionary"] = model.KTerrainsHeightDictionary[pair.Key];
                     table.Rows.Add(row);
                 }
             }
         }
     }
     btsXLSTable.Data = table;
 }
Пример #13
0
 private void ConvertXLSToFeederEquipment(SubsystemDataImple systemDateImple, XlsTable xlsTmaTable)
 {
     List<FeederEquipment> list = new List<FeederEquipment>();
     for (int i = 0; i < xlsTmaTable.Data.Rows.Count; i++)
     {
         DataRow row = xlsTmaTable.Data.Rows[i];
         try
         {
             FeederEquipment item = new FeederEquipment();
             item.Name = row["Name"].ToString();
             item.LossPerHundredMeter = float.Parse(row["Feeder loss per metre (dB/100m)"].ToString());
             list.Add(item);
         }
         catch (Exception exception)
         {
             this.m_Model.EventVierService.WriteLog("Feeder Equipment Table's " + (i + 1) + "row import error", Huawei.UNet.Frame.Interface.LogLevel.Warning);
             WriteLog.Logger.Error(exception.StackTrace);
         }
     }
     systemDateImple.FeederEquipment = list;
 }
Пример #14
0
 private List<Transceiver> ConvertXLSToTranceiver(XlsTable xlsCellTable)
 {
     List<Transceiver> list = new List<Transceiver>();
     Dictionary<string, string> xlsNameToProper = new Dictionary<string, string>();
     XLSProConst.TranceiverXlsToGeneralPro(xlsNameToProper);
     Dictionary<string, string> dictionary2 = new Dictionary<string, string>();
     XLSProConst.CellXlsToAntConfigPro(dictionary2);
     dictionary2.Remove("Site Name");
     dictionary2.Remove("Site ID");
     dictionary2.Remove("Transceiver Name");
     Dictionary<string, string> dictionary3 = new Dictionary<string, string>();
     XLSProConst.TranceiverXlsToObjPro(dictionary3);
     Dictionary<string, string> dictionary4 = new Dictionary<string, string>();
     XLSProConst.AntConfigXlsToObjPro(dictionary4);
     for (int i = 0; i < xlsCellTable.Data.Rows.Count; i++)
     {
         DataRow dr = xlsCellTable.Data.Rows[i];
         string colName = string.Empty;
         try
         {
             Transceiver data = new Transceiver();
             AntConfig item = new AntConfig();
             item.IsMainAnt = true;
             item.Parent = data;
             data.AntConfiguration.Add(item);
             this.FillValue(xlsNameToProper, dr, data, ref colName);
             this.FillValue(dictionary2, dr, item, ref colName);
             foreach (string str2 in dictionary3.Keys)
             {
                 string str3 = dr[str2].ToString();
                 if (str2.Equals("Site"))
                 {
                     Site site = new Site();
                     site.Name = str3;
                     data.Parent = site;
                 }
             }
             this.FillOutdoorValue(dictionary4, dr, data);
             list.Add(data);
         }
         catch (Exception exception)
         {
             this.m_Model.EventVierService.WriteLog(string.Concat(new object[] { "Tansceivers: Rows=(", i, ")", colName, "Error" }), Huawei.UNet.Frame.Interface.LogLevel.Warning);
             WriteLog.Logger.Warn(exception.Message);
         }
     }
     return list;
 }
Пример #15
0
 public virtual ISubSystemData ConvertXls(ISubSystemData iSubSystemData, XlsTable xlsTable)
 {
     throw new Exception("The method or operation is not implemented.");
 }
Пример #16
0
 private void PredictionTableToData(PredictionSystemData predictionData, XlsTable xTable, IEventViewService eventViewService)
 {
     PredictionConfig config = new PredictionConfig();
     for (int i = 0; i < xTable.Data.Rows.Count; i++)
     {
         DataRow row = xTable.Data.Rows[i];
         try
         {
             config.Resolution = float.Parse(row["Default Resolution(m)"].ToString());
             config.UEHeight = float.Parse(row["Receiver Height(m)"].ToString());
         }
         catch (Exception exception)
         {
             eventViewService.WriteLog(string.Format(LTEPredictionResource.PREDICTION_TABLE_CONVERT_FAIL, Convert.ToString((int) (i + 1))), Huawei.UNet.Frame.Interface.LogLevel.Warning);
             WriteLog.Logger.Error(exception.StackTrace);
             config = null;
         }
     }
     predictionData.PredictionConfig = config;
 }
Пример #17
0
 private List<Site> ConvertXLSToSite(XlsTable xlsSiteTable)
 {
     List<Site> list = new List<Site>();
     SiteValidateTool tool = new SiteValidateTool(this.m_Model.SiteColl, this.m_Model.GeoObserver);
     Dictionary<string, string> xlsNameToProper = new Dictionary<string, string>();
     XLSProConst.SiteXlsToGeneralPro(xlsNameToProper);
     Dictionary<string, string> dictionary2 = new Dictionary<string, string>();
     XLSProConst.SiteXlsToObjPro(dictionary2);
     for (int i = 0; i < xlsSiteTable.Data.Rows.Count; i++)
     {
         DataRow dr = xlsSiteTable.Data.Rows[i];
         tool.SetDefaultCoordinate(dr);
         string colName = string.Empty;
         try
         {
             Site data = new Site();
             this.FillValue(xlsNameToProper, dr, data, ref colName);
             foreach (string str2 in dictionary2.Keys)
             {
                 string btsEquipmentName = dr[str2].ToString();
                 if (str2.Equals("eNodeB Equipment"))
                 {
                     BtsEquipment equipment = this.m_Model.BtsEquipColl.FindBtsEquipmentByName(btsEquipmentName);
                     data.Equipment = equipment;
                 }
             }
             list.Add(data);
         }
         catch (Exception exception)
         {
             string toWrite = string.Concat(new object[] { "Sites: Rows=(", i, ")", colName, "Error" });
             this.m_Model.EventVierService.WriteLog(toWrite, Huawei.UNet.Frame.Interface.LogLevel.Warning);
             WriteLog.Logger.Warn(exception.Message);
         }
     }
     return list;
 }
Пример #18
0
 /// <summary>
 /// add by 魏晓斌
 /// </summary>
 /// <param name="xlsTable"></param>
 /// <returns></returns>
 private Dictionary<string, string> ComposeITUR230MoudleXlsConvertProper(XlsTable xlsTable)
 {
     Dictionary<string, string> dictionary = new Dictionary<string, string>();
     dictionary.Add("PropModelName", "PropModelName");
     dictionary.Add("K1", "K1");
     dictionary.Add("K2", "K2");
     dictionary.Add("K3", "K3");
     dictionary.Add("Q90", "Q90");
     dictionary.Add("V", "V");
     dictionary.Add(PropagationResource.PROP_DIFFRACTION_LOSS_METHOD, "DifLossMethodName");
     dictionary.Add(PropagationResource.PROP_EFFECT_HEIGHT_METHOD, "EffectTxHeightCalcuMethodName");
     dictionary.Add(PropagationResource.PROP_LIMIT_TO_FREE_SPACE, "IsLimitedInSpaceLoss");
     xlsTable.ModuleXlsConvertProper = dictionary;
     return dictionary;
 }
Пример #19
0
 private void CompseSPMData(XlsTable btsXLSTable, List<IPropagationModel> okumHataModelList)
 {
     DataTable table = new DataTable();
     List<string> list = new List<string>();
     foreach (string text in btsXLSTable.ModuleXlsConvertProper.Values)
     {
         table.Columns.Add(text);
         list.Add(text);
     }
     foreach (SpmPropagationModel model in okumHataModelList)
     {
         DataRow row = table.NewRow();
         PropertyInfo[] properties = model.GetType().GetProperties();
         foreach (PropertyInfo info in properties)
         {
             string item = info.Name;
             if (list.Contains(item))
             {
                 object obj2 = info.GetValue(model, null);
                 row[item] = obj2;
             }
         }
         table.Rows.Add(row);
     }
     btsXLSTable.Data = table;
 }
Пример #20
0
 private Dictionary<string, string> ComposeKeenanMotleyMoudleXlsConvertProper(XlsTable xlsTable)
 {
     Dictionary<string, string> dictionary = new Dictionary<string, string>();
     dictionary.Add("PropModelName", "PropModelName");
     dictionary.Add("K1", "K1");
     dictionary.Add("K2", "K2");
     dictionary.Add("K3", "K3");
     dictionary.Add("K4", "K4");
     dictionary.Add("K5", "K5");
     dictionary.Add(PropagationResource.PROP_EFFECT_HEIGHT_METHOD, "EffectTxHeightCalcuMethodName");
     dictionary.Add("Description", "Description");
     dictionary.Add(PropagationResource.PROP_LIMIT_TO_FREE_SPACE, "IsLimitedInSpaceLoss");
     xlsTable.ModuleXlsConvertProper = dictionary;
     return dictionary;
 }
Пример #21
0
 private void CompseITUData(XlsTable btsXLSTable, List<IPropagationModel> iturHataModelList)
 {
     DataTable table = new DataTable();
     List<string> list = new List<string>();
     foreach (string text in btsXLSTable.ModuleXlsConvertProper.Values)
     {
         table.Columns.Add(text);
         list.Add(text);
     }
     foreach (ITURPPropagationModel model in iturHataModelList)
     {
         DataRow row = table.NewRow();
         PropertyInfo[] properties = model.GetType().GetProperties();
         foreach (PropertyInfo info in properties)
         {
             string item = info.Name;
             if (list.Contains(item))
             {
                 object obj2 = info.GetValue(model, null);
                 if (item == "BuildingType")
                 {
                     if (obj2.Equals(0))
                     {
                         row[item] = "house";
                     }
                     else if (obj2.Equals(1))
                     {
                         row[item] = "office";
                     }
                     else
                     {
                         row[item] = "store";
                     }
                 }
                 else
                 {
                     row[item] = obj2;
                 }
             }
         }
         table.Rows.Add(row);
     }
     btsXLSTable.Data = table;
 }
Пример #22
0
 private void CompseCostHataData(XlsTable btsXLSTable, List<IPropagationModel> costHataModelList)
 {
     DataTable table = new DataTable();
     List<string> list = new List<string>();
     foreach (string text in btsXLSTable.ModuleXlsConvertProper.Values)
     {
         table.Columns.Add(text);
         list.Add(text);
     }
     foreach (CostHataPropagationModel model in costHataModelList)
     {
         DataRow dr = table.NewRow();
         PropertyInfo[] properties = model.GetType().GetProperties();
         foreach (PropertyInfo info in properties)
         {
             string item = info.Name;
             if (list.Contains(item))
             {
                 object obj2 = info.GetValue(model, null);
                 this.SetPropertyName(item, obj2, dr);
             }
         }
         table.Rows.Add(dr);
     }
     btsXLSTable.Data = table;
 }
Пример #23
0
 private void ConvertXLSToTmaEquipment(SubsystemDataImple systemDateImple, XlsTable xlsTmaTable)
 {
     List<TmaEquipment> list = new List<TmaEquipment>();
     for (int i = 0; i < xlsTmaTable.Data.Rows.Count; i++)
     {
         DataRow row = xlsTmaTable.Data.Rows[i];
         try
         {
             TmaEquipment item = new TmaEquipment();
             item.Name = row["Name"].ToString();
             item.NoiseFigure = float.Parse(row["Noise figureTMA (dB)"].ToString());
             item.UlGain = float.Parse(row["Reception gain TMA (dB)"].ToString());
             item.DlLoss = float.Parse(row["Transmission losses TMA (dB)"].ToString());
             list.Add(item);
         }
         catch (Exception exception)
         {
             this.m_Model.EventVierService.WriteLog("Tma Equipment Table's " + (i + 1) + "row import error", Huawei.UNet.Frame.Interface.LogLevel.Warning);
             WriteLog.Logger.Error(exception.StackTrace);
         }
     }
     systemDateImple.TmaEquipment = list;
 }
Пример #24
0
 public ISubSystemData ConvertXls(XlsTable[] xlsTables)
 {
     //throw new NotImplementedException();
     return null;
 }
Пример #25
0
 private void ConvertXLSFromEquipmentName(SubsystemDataImple systemDateImple, XlsTable xlsEquipTable)
 {
     if (xlsEquipTable.TableName == "Feeder Equipment")
     {
         this.ConvertXLSToFeederEquipment(systemDateImple, xlsEquipTable);
     }
     else if (xlsEquipTable.TableName == "TMA Equipment")
     {
         this.ConvertXLSToTmaEquipment(systemDateImple, xlsEquipTable);
     }
     else if (xlsEquipTable.TableName == "eNodeB Equipment")
     {
         this.ConvertXLSToBtsEquipment(systemDateImple, xlsEquipTable);
     }
 }
Пример #26
0
 private List<LTECell> ConvertXLSToCell(XlsTable xlsCellTable)
 {
     List<LTECell> list = new List<LTECell>();
     Dictionary<string, string> xlsNameToProper = new Dictionary<string, string>();
     XLSProConst.CellXlsToGeneralPro(xlsNameToProper);
     Dictionary<string, string> dictionary2 = new Dictionary<string, string>();
     XLSProConst.CellXlsToObjPro(dictionary2);
     Dictionary<string, string> dictionary3 = new Dictionary<string, string>();
     XLSProConst.CellXlsToAlgParameterPro(dictionary3);
     Dictionary<string, string> dictionary4 = new Dictionary<string, string>();
     XLSProConst.CellXlsToPropPro(dictionary4);
     for (int i = 0; i < xlsCellTable.Data.Rows.Count; i++)
     {
         DataRow dr = xlsCellTable.Data.Rows[i];
         string colName = string.Empty;
         try
         {
             LTECell data = new LTECell();
             data.ID = 0;
             data.BCHPoffset = 0f;
             data.SCHPoffset = 0f;
             PropModelConfig item = new PropModelConfig();
             PropModelConfig config2 = new PropModelConfig();
             data.PropModels.Add(item);
             data.PropModels.Add(config2);
             LteAlgParam param = new LteAlgParam();
             data.LteAlgParameter = param;
             this.FillValue(xlsNameToProper, dr, data, ref colName);
             this.FillValue(dictionary3, dr, param, ref colName);
             foreach (string str2 in dictionary4.Keys)
             {
                 object obj2 = dr[str2];
                 string propertyName = dictionary4[str2];
                 this.FillPropModleValue(item, obj2, propertyName, "Main", this.m_Model);
                 this.FillPropModleValue(config2, obj2, propertyName, "Ext", this.m_Model);
             }
             foreach (string str4 in dictionary2.Keys)
             {
                 Predicate<ReceptionEquipment> match = null;
                 string value = dr[str4].ToString();
                 if (str4.Equals("Transceiver"))
                 {
                     Transceiver transceiver = new Transceiver();
                     transceiver.Name = value;
                     data.Parent = transceiver;
                 }
                 if (str4.Equals("Reception"))
                 {
                     if (match == null)
                     {
                         match = delegate (ReceptionEquipment re) {
                             return re.Name == value;
                         };
                     }
                     data.Reception = this.m_Model.TrafficForNetEntity.ReceptionEquipmentList.Find(match);
                 }
                 if (str4.Equals("FreqBand"))
                 {
                     FrequencyBand band = this.m_Model.LteFreBandCol.FindFrequencyBandByName(value);
                     data.FreqBand = band;
                 }
             }
             this.ReComPropModel(data);
             list.Add(data);
         }
         catch (Exception exception)
         {
             this.m_Model.EventVierService.WriteLog(string.Concat(new object[] { "Cells: Rows=(", i, ")", colName, "Error" }), Huawei.UNet.Frame.Interface.LogLevel.Warning);
             WriteLog.Logger.Warn(exception.Message);
         }
     }
     return list;
 }
Пример #27
0
 public ISubSystemData ConvertXls(XlsTable[] xlsTables)
 {
     return null;
 }
Пример #28
0
 private Dictionary<string, string> ComposeSPMMoudleXlsConvertProper(XlsTable xlsTable)
 {
     Dictionary<string, string> dictionary = new Dictionary<string, string>();
     dictionary.Add("PropModelName", "PropModelName");
     dictionary.Add("K1", "K1");
     dictionary.Add("K2", "K2");
     dictionary.Add("K3", "K3");
     dictionary.Add("K4", "K4");
     dictionary.Add("K5", "K5");
     dictionary.Add("K6", "K6");
     dictionary.Add("K7", "K7");
     dictionary.Add("Add building height", "IsAddBuildingHeight");
     dictionary.Add(PropagationResource.PROP_CLUTTER_LOSS_METHOD, "ClutterLossCalcuMethodName");
     dictionary.Add(PropagationResource.PROP_EFFECT_HEIGHT_METHOD, "EffectTxHeightCalcuMethodName");
     dictionary.Add(PropagationResource.PROP_DIFFRACTION_LOSS_METHOD, "DifLossMethodName");
     dictionary.Add(PropagationResource.PROP_LIMIT_TO_FREE_SPACE, "IsLimitedInSpaceLoss");
     dictionary.Add("Receiver on top clutter", "IsOnTopBuilding");
     dictionary.Add("Description", "Description");
     xlsTable.ModuleXlsConvertProper = dictionary;
     return dictionary;
 }
Пример #29
0
 private void ConvertXLSFromNetWorkName(SubsystemDataImple systemDateImple, XlsTable xlsNetWorkTable)
 {
     string tableName = xlsNetWorkTable.TableName;
     if (tableName != null)
     {
         if (!(tableName == "Frequency Bands"))
         {
             if (tableName == "Repeaters")
             {
                 this.ConvertXLSToRepeater(systemDateImple, xlsNetWorkTable);
             }
             else if (tableName == "Sectors")
             {
                 this.ConvertXLSToSector(systemDateImple, xlsNetWorkTable);
             }
         }
         else
         {
             this.ConvertXLSToFrequencyEquipment(systemDateImple, xlsNetWorkTable);
         }
     }
 }
Пример #30
0
 public ISubSystemData ConvertXls(XlsTable[] xlsTables)
 {
     PropagSubSystemData iSubSystemData = new PropagSubSystemData();
     foreach (XlsTable table in xlsTables)
     {
         System.Type propModelTypeFromCategoryList = null;
         if ((table.TableName == "SPM2G Clutter Table") || (table.TableName == "SPM900 Clutter Table"))
         {
             propModelTypeFromCategoryList = this.GetPropModelTypeFromCategoryList("SPM2G");
         }
         else
         {
             propModelTypeFromCategoryList = this.GetPropModelTypeFromCategoryList(table.TableName);
         }
         if (propModelTypeFromCategoryList != null)
         {
             ((PathLosCalcMethod) this.m_IPTPLossCalcMethod).PLCalcCollection[propModelTypeFromCategoryList].ConvertXls(iSubSystemData, table);
         }
     }
     return iSubSystemData;
 }