Пример #1
0
        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
        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));
        }
Пример #3
0
        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));
        }
Пример #4
0
        public 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     = HuaweiCellRepository.QueryDistrictFlowViews <TView, TZte, THuawei>(city, district,
                                                                                                 zteStats,
                                                                                                 huaweiStats,
                                                                                                 TownRepository, ENodebRepository);

            return(results);
        }
Пример #5
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.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));
        }
Пример #6
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));
        }
Пример #7
0
        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
        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 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);
        }
Пример #10
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);
        }
Пример #11
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));
        }
Пример #12
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);
        }