コード例 #1
0
ファイル: FlowQueryService.cs プロジェクト: yanzj/BackGround
        public List <FlowView> QueryTopFlowViews(DateTime begin, DateTime end, int topCount, OrderTopFlowPolicy policy)
        {
            var zteStats    = ZteRepository.FilterTopList(begin, end);
            var huaweiStats = HuaweiRepository.FilterTopList(begin, end);
            var joinViews   = HuaweiCellRepository.QueryAllFlowViews <FlowView, FlowZte, FlowHuawei>(zteStats, huaweiStats);

            return(joinViews.ToList().QueryTopViewsByPolicy(topCount, policy));
        }
コード例 #2
0
ファイル: HuaweiPrbQuery.cs プロジェクト: yanzj/BackGround
 protected override List <PrbHuawei> QueryList(DateTime begin, DateTime end, byte localCellId)
 {
     return
         (HuaweiRepository.GetAllList(
              x =>
              x.StatTime >= begin && x.StatTime < end && x.ENodebId == ENodebId &&
              x.LocalCellId == localCellId));
 }
コード例 #3
0
ファイル: PrbQueryService.cs プロジェクト: yanzj/BackGround
        public List <PrbView> QueryTopPrbViews(DateTime begin, DateTime end, int topCount, OrderPrbStatPolicy policy)
        {
            var zteStats    = ZteRepository.FilterTopList(begin, end);
            var huaweiStats = HuaweiRepository.FilterTopList(begin, end);
            var joinViews   = HuaweiCellRepository.QueryAllFlowViews <PrbView, PrbZte, PrbHuawei>(zteStats, huaweiStats).ToList();
            var days        = (joinViews.Max(x => x.StatTime) - joinViews.Min(x => x.StatTime)).Days + 1;

            return(QueryTopViewsByPolicy(joinViews, topCount * days, policy));
        }
コード例 #4
0
ファイル: CqiReportService.cs プロジェクト: yanzj/BackGround
        public List <CqiView> QueryTopDistrictViews(DateTime begin, DateTime end, int topCount, OrderCqiPolicy policy)
        {
            var zteStats    = ZteRepository.FilterTopList(begin, end);
            var huaweiStats = HuaweiRepository.FilterTopList(begin, end);
            var joinViews   = zteStats.MapTo <IEnumerable <CqiView> >().Concat(huaweiStats.MapTo <IEnumerable <CqiView> >()).ToList();
            var days        = (joinViews.Max(x => x.StatTime) - joinViews.Min(x => x.StatTime)).Days + 1;

            return(QueryTopViewsByPolicy(joinViews, topCount * days, policy));
        }
コード例 #5
0
ファイル: FlowQueryService.cs プロジェクト: yanzj/BackGround
        public List <FlowView> QueryTopDownSwitchViews(DateTime begin, DateTime end, int topCount,
                                                       OrderDownSwitchPolicy policy)
        {
            var zteStats    = ZteRepository.GetHighDownSwitchList(begin, end, DownSwitchThreshold);
            var huaweiStats = HuaweiRepository.GetHighDownSwitchList(begin, end, DownSwitchThreshold);
            var joinViews   =
                HuaweiCellRepository.QueryAllFlowViews <FlowView, FlowZte, FlowHuawei>(zteStats, huaweiStats);

            return(joinViews.ToList().QueryTopViewsByPolicy(topCount, policy));
        }
コード例 #6
0
        protected IEnumerable <TView> QueryDistrictViews(string city, string district, DateTime begin, DateTime end)
        {
            var zteStats    = ZteRepository.FilterTopList(begin, end);
            var huaweiStats = HuaweiRepository.FilterTopList(begin, end);
            var results     = ENodebRepository.QueryDistrictKpiViews <TView, TZte, THuawei>(city, district,
                                                                                            zteStats,
                                                                                            huaweiStats,
                                                                                            TownRepository);

            return(results);
        }
コード例 #7
0
ファイル: FlowQueryService.cs プロジェクト: yanzj/BackGround
        private IEnumerable <FlowView> QueryDistrictDownSwitchViews(string city, string district, DateTime begin, DateTime end)
        {
            var zteStats    = ZteRepository.GetHighDownSwitchList(begin, end, DownSwitchThreshold);
            var huaweiStats = HuaweiRepository.GetHighDownSwitchList(begin, end, DownSwitchThreshold);
            var results     = HuaweiCellRepository.QueryDistrictFlowViews <FlowView, FlowZte, FlowHuawei>(city, district,
                                                                                                          zteStats,
                                                                                                          huaweiStats,
                                                                                                          TownRepository, ENodebRepository);

            return(results);
        }
コード例 #8
0
ファイル: FlowQueryService.cs プロジェクト: yanzj/BackGround
        public IEnumerable <FlowView> QueryAllTopRank2Views(DateTime begin, DateTime end,
                                                            int topCount)
        {
            var results = HuaweiCellRepository.QueryAllFlowViews <FlowView, FlowZte, FlowHuawei>(
                ZteRepository.GetAllList(x => x.StatTime >= begin && x.StatTime < end &&
                                         x.SchedulingTm3 - x.SchedulingTm3Rank2 > 10000000),
                HuaweiRepository.GetAllList(
                    x => x.StatTime >= begin && x.StatTime < end && x.SchedulingRank1 > 1000000));

            return(results.OrderBy(x => x.Rank2Rate).Take(topCount));
        }
コード例 #9
0
        public List <DoubleFlowView> QueryTopDistrictViews(DateTime begin, DateTime end, int topCount,
                                                           OrderDoubleFlowPolicy policy)
        {
            var zteStats    = ZteRepository.FilterTopList(begin, end);
            var huaweiStats = HuaweiRepository.FilterTopList(begin, end);
            var joinViews   = zteStats.MapTo <IEnumerable <DoubleFlowView> >()
                              .Concat(huaweiStats.MapTo <IEnumerable <DoubleFlowView> >()).ToList();
            var topStats = joinViews.FilterSinglePortCells(_cellRepository);
            var days     = (topStats.Max(x => x.StatTime) - topStats.Min(x => x.StatTime)).Days + 1;

            return(QueryTopViewsByPolicy(topStats, topCount * days, policy));
        }
コード例 #10
0
ファイル: FlowQueryService.cs プロジェクト: yanzj/BackGround
        public IEnumerable <FlowView> QueryAllTownViews(string city, string district, string town,
                                                        DateTime begin, DateTime end, FrequencyBandType frequency)
        {
            var zteStats =
                ZteRepository.QueryZteFlows <FlowZte, IFlowZteRepository>(frequency, begin, end);
            var huaweiStats =
                HuaweiRepository.GetAllList(x => x.StatTime >= begin && x.StatTime < end);
            var results = HuaweiCellRepository.QueryTownFlowViews <FlowView, FlowZte, FlowHuawei>(city, district,
                                                                                                  town, zteStats, huaweiStats, frequency,
                                                                                                  TownRepository, ENodebRepository);

            return(results);
        }
コード例 #11
0
        public List <FlowView> QueryTopDownSwitchViews(DateTime begin, DateTime end, int topCount, OrderDownSwitchPolicy policy)
        {
            var zteViews =
                ZteRepository.GetAllList(
                    x => x.StatTime >= begin && x.StatTime < end && x.RedirectA2 + x.RedirectB2 > 2000)
                .MapTo <IEnumerable <FlowView> >();
            var huaweiViews =
                HuaweiRepository.GetAllList(x => x.StatTime >= begin && x.StatTime < end && x.RedirectCdma2000 > 2000)
                .MapTo <IEnumerable <FlowView> >();
            var joinViews = zteViews.Concat(huaweiViews);

            return(QueryTopViewsByPolicy(joinViews, topCount, policy));
        }
コード例 #12
0
        private IEnumerable <FlowView> QueryDistrictViews(string city, string district, DateTime begin, DateTime end)
        {
            var zteStats =
                ZteRepository.GetAllList(
                    x => x.StatTime >= begin && x.StatTime < end && x.RedirectA2 + x.RedirectB2 > 2000);
            var huaweiStats =
                HuaweiRepository.GetAllList(x => x.StatTime >= begin && x.StatTime < end && x.RedirectCdma2000 > 2000);
            var results = HuaweiCellRepository.QueryDistrictFlowViews <FlowView, FlowZte, FlowHuawei>(city, district,
                                                                                                      zteStats,
                                                                                                      huaweiStats,
                                                                                                      TownRepository, ENodebRepository);

            return(results);
        }
コード例 #13
0
        public List <QciView> QueryTopCqiViews(DateTime begin, DateTime end, int topCount, OrderCqiPolicy policy)
        {
            var zteViews =
                ZteRepository.GetAllList(
                    x => x.StatTime >= begin && x.StatTime < end &&
                    x.Cqi0Times + x.Cqi1Times + x.Cqi2Times + x.Cqi3Times + x.Cqi4Times
                    + x.Cqi5Times + x.Cqi6Times + x.Cqi7Times + x.Cqi8Times + x.Cqi9Times
                    + x.Cqi10Times + x.Cqi11Times + x.Cqi12Times + x.Cqi13Times + x.Cqi14Times + x.Cqi15Times > 200000)
                .MapTo <IEnumerable <QciView> >();
            var huaweiViews =
                HuaweiRepository.GetAllList(x => x.StatTime >= begin && x.StatTime < end &&
                                            x.Cqi0Times + x.Cqi1Times + x.Cqi2Times + x.Cqi3Times + x.Cqi4Times
                                            + x.Cqi5Times + x.Cqi6Times + x.Cqi7Times + x.Cqi8Times + x.Cqi9Times
                                            + x.Cqi10Times + x.Cqi11Times + x.Cqi12Times + x.Cqi13Times + x.Cqi14Times + x.Cqi15Times > 200000)
                .MapTo <IEnumerable <QciView> >();
            var joinViews = zteViews.Concat(huaweiViews);

            return(QueryTopViewsByPolicy(joinViews, topCount, policy));
        }
コード例 #14
0
        private IEnumerable <QciView> QueryDistrictViews(string city, string district, DateTime begin, DateTime end)
        {
            var zteStats =
                ZteRepository.GetAllList(
                    x => x.StatTime >= begin && x.StatTime < end &&
                    x.Cqi0Times + x.Cqi1Times + x.Cqi2Times + x.Cqi3Times + x.Cqi4Times
                    + x.Cqi5Times + x.Cqi6Times + x.Cqi7Times + x.Cqi8Times + x.Cqi9Times
                    + x.Cqi10Times + x.Cqi11Times + x.Cqi12Times + x.Cqi13Times + x.Cqi14Times + x.Cqi15Times > 2000);
            var huaweiStats =
                HuaweiRepository.GetAllList(x => x.StatTime >= begin && x.StatTime < end &&
                                            x.Cqi0Times + x.Cqi1Times + x.Cqi2Times + x.Cqi3Times + x.Cqi4Times
                                            + x.Cqi5Times + x.Cqi6Times + x.Cqi7Times + x.Cqi8Times + x.Cqi9Times
                                            + x.Cqi10Times + x.Cqi11Times + x.Cqi12Times + x.Cqi13Times + x.Cqi14Times + x.Cqi15Times > 2000);
            var results = HuaweiCellRepository.QueryDistrictFlowViews <QciView, QciZte, QciHuawei>(city, district,
                                                                                                   zteStats,
                                                                                                   huaweiStats,
                                                                                                   TownRepository, ENodebRepository);

            return(results);
        }
コード例 #15
0
 protected override List <FlowHuawei> QueryList(DateTime begin, DateTime end, byte localCellId)
 {
     return(HuaweiRepository.GetAllList(begin, end, ENodebId, localCellId));
 }
コード例 #16
0
        public IEnumerable <RrcView> QueryTopRrcFailViews(string city, string district, DateTime begin, DateTime end,
                                                          int topCount)
        {
            var results = HuaweiCellRepository.QueryDistrictFlowViews <RrcView, RrcZte, RrcHuawei>(city, district,
                                                                                                   ZteRepository.GetAllList(
                                                                                                       x =>
                                                                                                       x.StatTime >= begin && x.StatTime < end &&
                                                                                                       x.MoDataRrcRequest + x.MoSignallingRrcRequest + x.MtAccessRrcRequest > 20000),
                                                                                                   HuaweiRepository.GetAllList(
                                                                                                       x =>
                                                                                                       x.StatTime >= begin && x.StatTime < end &&
                                                                                                       x.MoDataRrcRequest + x.MoSignallingRrcRequest + x.MtAccessRrcRequest > 20000),
                                                                                                   TownRepository, ENodebRepository);

            return(results.OrderByDescending(x => x.TotalRrcFail).Take(topCount));
        }
コード例 #17
0
ファイル: RrcQueryService.cs プロジェクト: yanzj/BackGround
        public IEnumerable <RrcView> QueryTopRrcFailViews(string city, string district, DateTime begin, DateTime end,
                                                          int topCount)
        {
            var results = HuaweiCellRepository.QueryDistrictFlowViews <RrcView, RrcZte, RrcHuawei>(city, district,
                                                                                                   ZteRepository.FilterTopList(begin, end),
                                                                                                   HuaweiRepository.FilterTopList(begin, end),
                                                                                                   TownRepository, ENodebRepository).ToList();
            var days = (results.Max(x => x.StatTime) - results.Min(x => x.StatTime)).Days + 1;

            return(results.OrderByDescending(x => x.TotalRrcFail).Take(topCount * days));
        }
コード例 #18
0
        public IEnumerable <FlowView> QueryTopRank2Views(string city, string district, DateTime begin, DateTime end,
                                                         int topCount)
        {
            var results = HuaweiCellRepository.QueryDistrictFlowViews <FlowView, FlowZte, FlowHuawei>(city, district,
                                                                                                      ZteRepository.GetAllList(x => x.StatTime >= begin && x.StatTime < end && x.SchedulingTm3 > 10000000),
                                                                                                      HuaweiRepository.GetAllList(
                                                                                                          x => x.StatTime >= begin && x.StatTime < end && x.SchedulingRank1 + x.SchedulingRank2 > 20000000),
                                                                                                      TownRepository, ENodebRepository);

            return(results.OrderBy(x => x.Rank2Rate).Take(topCount));
        }