Exemplo n.º 1
0
        //Báo cáo các tuần trong năm của 1 Chuyên mục
        public ActionResult AllDetailReports(int catid)
        {
            var db        = new VITVContext();
            var gaContext = new GoogleAnalyticContext();

            var vc = db.VideoCategories.Find(catid);

            if (vc == null)
            {
                return(Content("<b>Không có dữ liệu !</b>"));
            }
            List <AgeReport> ages = gaContext.AgeOverviews.Where(a => a.VideoCatId == catid).GroupBy(a => a.Name).Select(

                g => new AgeReport
            {
                Name         = g.Key,
                SessionCount = g.Sum(a => a.SessionCount),
                NewUser      = g.Sum(a => a.NewUser)
            }
                ).ToList();
            List <GenderReport> genders = gaContext.GenderOverviews.Where(a => a.VideoCatId == catid).GroupBy(a => a.Name).Select(

                g => new GenderReport
            {
                Name         = g.Key,
                SessionCount = g.Sum(a => a.SessionCount),
                NewUser      = g.Sum(a => a.NewUser)
            }
                ).ToList();
            List <SocialNetworkReport> socialNetworks = gaContext.SocialNetworkDetails.Where(a => a.VideoCatId == catid).GroupBy(a => a.Name).Select(

                g => new SocialNetworkReport
            {
                Name         = g.Key,
                SessionCount = g.Sum(a => a.SessionCount),
                PageView     = g.Sum(a => a.PageView)
            }
                ).ToList();

            List <CityReport> cities = gaContext.Cities.Where(a => a.VideoCatId == catid).GroupBy(a => a.Name).Select(

                g => new CityReport
            {
                Name         = g.Key,
                SessionCount = g.Sum(a => a.SessionCount),
                NewUser      = g.Sum(a => a.NewUser)
            }
                ).ToList();

            ViewBag.Ages           = ages;
            ViewBag.Genders        = genders;
            ViewBag.SocialNetworks = socialNetworks;
            ViewBag.Cities         = cities;

            if (vc.Children != null && vc.Children.Count > 0)
            {
                //tro ve trang bao cao cho chuyen muc cha
                return(View("ParentCategoryReport", vc));
            }
            return(View(vc));
        }
Exemplo n.º 2
0
        public ActionResult VideoReport(int videoId)
        {
            var vitvContext = new VITVContext();
            var video       = _videoRepository.Find(videoId);
            var gaContext   = new GoogleAnalyticContext();

            List <AgeReport> ages = gaContext.Ages.Where(a => a.VideoId == videoId).GroupBy(a => a.Name).Select(

                g => new AgeReport
            {
                Name         = g.Key,
                SessionCount = g.Sum(a => a.SessionCount),
                NewUser      = g.Sum(a => a.NewUser),
                PageView     = g.Sum(a => a.PageView)
            }
                ).ToList();
            List <GenderReport> genders = gaContext.Genders.Where(a => a.VideoId == videoId).GroupBy(a => a.Name).Select(

                g => new GenderReport
            {
                Name         = g.Key,
                SessionCount = g.Sum(a => a.SessionCount),
                NewUser      = g.Sum(a => a.NewUser),
                PageView     = g.Sum(a => a.PageView)
            }
                ).ToList();
            List <SocialNetworkReport> socialNetworks = gaContext.SocialNetworkDetails.Where(a => a.VideoId == videoId).GroupBy(a => a.Name).Select(

                g => new SocialNetworkReport
            {
                Name         = g.Key,
                SessionCount = g.Sum(a => a.SessionCount),
                PageView     = g.Sum(a => a.PageView)
            }
                ).ToList();

            List <CountryIsoCodeReport> countries = gaContext.CountryIsoCodes.Where(a => a.VideoId == videoId).GroupBy(a => new { Name = a.Name, FullName = a.FullName }).Select(
                g => new CountryIsoCodeReport
            {
                Name         = g.Key.Name,
                FullName     = g.Key.FullName,
                SessionCount = g.Sum(a => a.SessionCount),
                PageView     = g.Sum(a => a.PageView),
                NewUser      = g.Sum(a => a.NewUser)
            }
                ).ToList();

            //    g => new CityReport
            //    {
            //        Name = g.Key,
            //        SessionCount = g.Sum(a => a.SessionCount),
            //        NewUser = g.Sum(a => a.NewUser)
            //    }
            //).ToList();

            List <UserTypeReport> userTypes = gaContext.UserTypes.Where(a => a.VideoId == videoId).GroupBy(a => a.Name).Select(

                g => new UserTypeReport
            {
                Name         = g.Key,
                SessionCount = g.Sum(a => a.SessionCount),
                PageView     = g.Sum(a => a.PageView)
            }
                ).ToList();

            List <OSReport> OSs = gaContext.OSs.Where(a => a.VideoId == videoId).GroupBy(a => a.Name).Select(

                g => new OSReport
            {
                Name         = g.Key,
                SessionCount = g.Sum(a => a.SessionCount),
                NewUser      = g.Sum(a => a.NewUser),
                PageView     = g.Sum(a => a.PageView)
            }
                ).ToList();


            ViewBag.Ages           = ages;
            ViewBag.Genders        = genders;
            ViewBag.SocialNetworks = socialNetworks;
            ViewBag.Countries      = countries;
            ViewBag.UserTypes      = userTypes;
            ViewBag.OSs            = OSs;
            return(View(video));
        }