Пример #1
0
        //
        // GET: /QuocGia/
        public ActionResult Index(int? page, string TuNgaySearch, string DenNgaySearch, string tenTaiKhoan)
        {
            int currentPageIndex = page.HasValue ? page.Value : 0;

            const int pageSize = 10;
            IFormatProvider provider = new System.Globalization.CultureInfo("en-CA", true);
            String datetime = TuNgaySearch;
            DateTime tn = new DateTime(1975, 1, 1);

            DateTime dn = DateTime.Now;
            if (TuNgaySearch != null && TuNgaySearch != "")
            {
                tn = DateTime.Parse(datetime, provider, System.Globalization.DateTimeStyles.NoCurrentDateDefault);
                //tnStr = tn.ToString("MM/dd/yyyy");
            }
            datetime = DenNgaySearch;
            if (DenNgaySearch != null && DenNgaySearch != "")
            {
                dn = DateTime.Parse(datetime, provider, System.Globalization.DateTimeStyles.NoCurrentDateDefault);
                //dnStr = dn.ToString("MM/dd/yyyy");
            }

            var objs = HistoryRes.FindAll(tenTaiKhoan, tn, dn);
            var paginatedAccounts = new PaginatedList<Histories>(objs, currentPageIndex, pageSize);

            return View(paginatedAccounts);
        }
Пример #2
0
        /// <summary>
        /// Get the certificate data with its documents paginated
        /// </summary>
        /// <param name="certificateId">Certificate id</param>
        /// <param name="searchHeader">Flag to know if it is required to get the certificate information or only the documents</param>
        public void GetCertificateDetail(int certificateId, bool searchHeader)
        {
            PaginatedList<Document> result = new PaginatedList<Document>();
            using (VocEntities db = new VocEntities())
            {
                //Get the certificate data detail
                if (searchHeader)
                {
                    Certificate =
                    (from certificate in db.Certificates.Include("EntryPoint")
                     where certificate.CertificateId == certificateId
                     select certificate).FirstOrDefault();
                }

                //Get the documents related to the certificate
                var querydocs = (from documents in db.Documents
                                 where documents.CertificateId == certificateId && documents.IsDeleted == false
                                 orderby documents.Certificate.IssuanceDate descending
                                 select documents);

                result.TotalCount = querydocs.Count();

                var supportDocument = querydocs.Where(doc => doc.DocumentType == DocumentTypeEnum.SupportingDocument).ToList();
                var releaseNotes = querydocs.Where(doc => doc.DocumentType == DocumentTypeEnum.ReleaseNote).ToList();
                supportDocument.AddRange(releaseNotes);

                var certificatDoc = querydocs.Where(doc => doc.DocumentType == DocumentTypeEnum.Certificate).FirstOrDefault();
                if (certificatDoc != null) supportDocument.Insert(0, certificatDoc);

                result.Collection = supportDocument;

                Documents = result;

            }
        }
Пример #3
0
 public List<AccountInformation> BankAccountInformationList(int pageIndex, int pageSize, string sortName, string sortOrder, ref int totalRows, int investorId)
 {
     using (DeepBlueEntities context = new DeepBlueEntities()) {
         IQueryable<AccountInformation> query = (from account in context.InvestorAccountsTable
                                                 where account.InvestorID == investorId
                                                 select new AccountInformation {
                                                     ABANumber = account.Routing,
                                                     AccountNumber = account.Account,
                                                     Attention = account.Attention,
                                                     AccountOf = account.AccountOf,
                                                     BankName = account.BankName,
                                                     ByOrderOf = account.ByOrderOf,
                                                     FFC = account.FFC,
                                                     FFCNumber = account.FFCNumber,
                                                     AccountId = account.InvestorAccountID,
                                                     IBAN = account.IBAN,
                                                     Reference = account.Reference,
                                                     Swift = account.SWIFT,
                                                     InvestorId = account.InvestorID
                                                 });
         query = query.OrderBy(sortName, (sortOrder == "asc"));
         PaginatedList<AccountInformation> paginatedList = new PaginatedList<AccountInformation>(query, pageIndex, pageSize);
         totalRows = paginatedList.TotalCount;
         return paginatedList;
     }
 }
Пример #4
0
        private TransactionList GetTransactions(DateTime startDate, 
                                                DateTime endDate, 
                                                string msisdn, 
                                                string gameTitle, 
                                                int portalId, 
                                                int? page)
        {
            if (page == null) page = 0;

            TransactionRepository transactionRepository = new TransactionRepository();
            var transactions = transactionRepository.GetTransactions(startDate,
                                                                     endDate,
                                                                     msisdn,
                                                                     gameTitle,
                                                                     portalId);

            var paginatedTransactions = new PaginatedList<Transaction>(transactions,
                                                                       (int)page,
                                                                       Settings.PageSize);

            // Khoa.Nguyen: Get GetInstallLastNotify in Store Procedure
            //foreach (Transaction trx in paginatedTransactions)
            //    trx.InstallStatus = transactionRepository.GetInstallLastNotify(trx.ID);

            var model = new TransactionList(paginatedTransactions,
                                            startDate,
                                            endDate,
                                            msisdn,
                                            gameTitle);
            model.PortalId = portalId;
            //return
            return model;
        }
Пример #5
0
        public ActionResult BookList(int? pageIndex)
        {
            IQueryable<Book> books = unitOfWork.BookRepository.Get(orderBy: q => q.OrderBy(d => d.BookId));

            var bookList = new PaginatedList<Book>(books, pageIndex ?? 0, PAGESIZE);
            return View("BookList", bookList);
        }
Пример #6
0
        public ActionResult @New(int? page, string domainname, string ext, string sortingmode)
        {
            //sortingmode: new, contraversial, hot, etc
            ViewBag.SortingMode = sortingmode;

            if (!sortingmode.Equals("new")) return RedirectToAction("Index", "Home");
            ViewBag.SelectedSubverse = "domains";
            ViewBag.SelectedDomain = domainname + "." + ext;

            const int pageSize = 25;
            int pageNumber = (page ?? 0);

            if (pageNumber < 0)
            {
                return View("~/Views/Errors/Error_404.cshtml");
            }

            //check if at least one submission for given domain was found, if not, send to a page not found error
            //IQueryable<Message> submissions = _db.Messages
            //    .Where(x => x.Name != "deleted" & x.Type == 2 & x.MessageContent.ToLower().Contains(domainname + "." + ext))
            //    .OrderByDescending(s => s.Date);

            IQueryable<Message> submissions = (from m in _db.Messages
                                               join s in _db.Subverses on m.Subverse equals s.name
                                               where !s.admin_disabled.Value && !m.IsDeleted & m.Type == 2 & m.MessageContent.ToLower().Contains(domainname + "." + ext)
                                               orderby m.Date descending
                                               select m);

            var paginatedSubmissions = new PaginatedList<Message>(submissions, page ?? 0, pageSize);

            ViewBag.Title = "Showing all newest submissions which link to " + domainname;
            return View("Index", paginatedSubmissions);
        }
Пример #7
0
        // GET: Domains
        // GET: all submissions which link to given domain
        public ActionResult Index(int? page, string domainname, string ext, string sortingmode)
        {
            const int pageSize = 25;
            int pageNumber = (page ?? 0);

            if (pageNumber < 0)
            {
                return View("~/Views/Errors/Error_404.cshtml");
            }

            ViewBag.SelectedSubverse = "domains";
            ViewBag.SelectedDomain = domainname + "." + ext;

            // check if at least one submission for given domain was found, if not, send to a page not found error
            //IQueryable<Message> submissions = 
            //    _db.Messages
            //    .Where(
            //        x => x.Name != "deleted" & x.Type == 2 & x.MessageContent.ToLower().Contains(domainname + "." + ext))
            //    .OrderByDescending(s => s.Rank)
            //    .ThenByDescending(s => s.Date);

            //restrict disabled subs from result list
            IQueryable<Submission> submissions = (from m in _db.Submissions
                                                  join s in _db.Subverses on m.Subverse equals s.Name
                                               where !s.IsAdminDisabled.Value && !m.IsDeleted & m.Type == 2 & m.Content.ToLower().Contains(domainname + "." + ext)
                                               orderby m.Rank descending, m.CreationDate descending
                                               select m);

            var paginatedSubmissions = new PaginatedList<Submission>(submissions, page ?? 0, pageSize);

            ViewBag.Title = "Showing all submissions which link to " + domainname;
            return View("Index", paginatedSubmissions);
        }
Пример #8
0
        public PaginatedList<Common.User> SearchUsers(string query, int pageNumber, int pageSize)
        {
            var finalQuery = (from u in this.context.Users
                         select u);

            if (!string.IsNullOrWhiteSpace(query))
            {
                finalQuery = (from u in finalQuery
                              where u.Username.Contains(query) ||
                              u.Email.Contains(query) ||
                              u.FirstName.Contains(query) ||
                              u.LastName.Contains(query)
                              orderby u.CreateDateUtc descending
                              select u);
            }
            else
            {
                finalQuery = (from u in finalQuery
                              orderby u.CreateDateUtc descending
                              select u);
            }

            // convert to business paginated list with entity framework
            var list1 = new PaginatedList<User>(finalQuery, pageNumber, pageSize);
            var move = (from m in list1 select m.ToBusinessUser()).AsQueryable();
            return new PaginatedList<Common.User>(move, pageNumber, pageSize, list1.TotalCount);
        }
 public CatalogueValueSearchModel()
 {
     CatalogueSelectedName = string.Empty;
     BusinessApplicatioName = string.Empty;
     CatalogueSelectedId = Guid.Empty;
     SearchResult = new PaginatedList<CatalogueValue>();
 }
Пример #10
0
 public SubscriptionList(PaginatedList<SubscriptionActivity> paginatedList, 
                         string msisdn, 
                         List<Subscriber> subscriber)
 {
     Msisdn = msisdn;
     PaginatedList = paginatedList;
     Subscriber = subscriber;
 }
Пример #11
0
        // GET: /Dinners/
        public ActionResult Index(int? page)
        {
            const int pageSize = 3;

            var upcomingDinners = dinnerRepository.FindUpcomingDinners();
            var paginatedDinners = new PaginatedList<Dinner>(upcomingDinners, page ?? 0, pageSize);
            return View("Index", paginatedDinners);
        }
        /// <summary>
        /// Gets all the topics from the parent category
        /// </summary>
        private void GetTopicsFromCategory()
        {
            // Before anything see if the category has been marked as private, if so make sure user is loggged in
            var currentCategory = Mapper.MapForumCategory(CurrentNode);
            var userHasAccess = true;
            if (MembershipHelper.IsAuthenticated())
            {
                // Member is logged in so it doesn't matter if forum is private or not,
                // now check they have enough karma to view this category and hide if not
                if (CurrentMember.MemberKarmaAmount < currentCategory.KarmaAccessAmount)
                {
                    userHasAccess = false;
                }
            }
            else
            {
                if (currentCategory.IsPrivate)
                {
                    userHasAccess = false;
                }
            }

            // Check to see if user has access
            if(!userHasAccess)
            {
                Response.Redirect(string.Concat(Settings.Url, "?m=", library.GetDictionaryItem("NoPermissionToViewPage")));
            }

            // Get the paging variable
            int? p = null;
            if (Request.QueryString["p"] != null)
                p = Convert.ToInt32(Request.QueryString["p"]);

            // Set cache variables
            var useNodeFactory = Request.QueryString["nf"] != null;
            var maintopics = from t in Factory.ReturnAllTopicsInCategory(CurrentNode.Id, true, useNodeFactory)
                             where !t.IsSticky
                             select t;

            if(!ShowAll)
            {
                maintopics = maintopics.Take(2);
                btnShowAll.Visible = true;
            }

            // Pass to my pager helper
            var pagedResults = new PaginatedList<ForumTopic>(maintopics, p ?? 0, Convert.ToInt32(Settings.TopicsPerPage));

            // Decide whether to show pager or not
            if (pagedResults.TotalPages > 1)
            {
                litPager.Text = pagedResults.ReturnPager();
            }

            // Now bind
            rptTopicList.DataSource = pagedResults;
            rptTopicList.DataBind();
        }
        public ViewResult FindAll(int? page)
        {
            const int howManyRowsPerPage = 8;

            var petsSubset = _petRepository.FindAll().AsQueryable();
            var paginatedPets = new PaginatedList<Pet>(petsSubset, page ?? 0, howManyRowsPerPage);

            return View(paginatedPets);
        }
Пример #14
0
        public ActionResult UserSubmissions(string id, int? page, string whattodisplay)
        {
                var userSubmissions = from b in _db.Submissions.OrderByDescending(s => s.CreationDate)
                                      where (b.UserName.Equals(id) && b.IsAnonymized == false) && (b.UserName.Equals(id) && b.Subverse1.IsAnonymized == false)
                                      select b;

                PaginatedList<Submission> paginatedUserSubmissions = new PaginatedList<Submission>(userSubmissions, page ?? 0, pageSize);

                return View("~/Views/Home/UserSubmitted.cshtml", paginatedUserSubmissions);
        }
Пример #15
0
        public ActionResult UserComments(string id, int? page, string whattodisplay)
        {
                var userComments = from c in _db.Comments.OrderByDescending(c => c.CreationDate)
                                   where (c.UserName.Equals(id) && c.Submission.IsAnonymized == false) && (c.UserName.Equals(id) && c.Submission.Subverse1.IsAnonymized == false)
                                   select c;

                PaginatedList<Comment> paginatedUserComments = new PaginatedList<Comment>(userComments, page ?? 0, pageSize);

                return View("~/Views/Home/UserComments.cshtml", paginatedUserComments);
        }
Пример #16
0
        public ActionResult Index(int page = 0)
        {
            var posty = from posts in blogDB.Post
                        where posts.status==0
                        orderby posts.data_dodania descending
                        select posts;

            var strPosty = new PaginatedList<Post>(posty, page, pageSize);

            return View(strPosty);
        }
Пример #17
0
        public PaginatedList<BlogPreview> GetPagedBlogPreviews(int page = 1, int pageSize = 5)
        {
            PaginatedList<BlogPreview> previews = new PaginatedList<BlogPreview>();
            var blogItems = this._contentService.GetContentOfContentType(_blogContentType.Id).ToList();
            previews.TotalItems = blogItems.Count();
            previews.Items = this.GetBlogPreviews(page - 1, pageSize).ToList();
            previews.ItemsPerPage = pageSize;
            previews.CurrentPage = page;

            return previews;
        }
Пример #18
0
        public async Task<ActionResult> List(int? page)
        {
            await MenuManager.InitAsync(RouteName.News);

            var model = new PaginatedList<Article>(page ?? 0, 5);
            var source = Repository.Articles
                .Where(x => x.Type != ArticleType.History)
                .OrderByDescending(x => x.Created);
            await model.SetSourceAsync(source);
            return View(model);
        }
Пример #19
0
        public PaginatedList<Common.ReportedListing> GetReported(int pageNumber, int pageSize)
        {
            var query = (from u in this.context.Buildings
                         where u.IsReported && !u.IsRemovedByAdmin && !u.IsDeleted && u.IsActive
                         orderby u.CreateDateUtc
                         select u);

            // convert to business paginated list with entity framework
            var list1 = new PaginatedList<Building>(query, pageNumber, pageSize);
            var move = (from m in list1 select m.ToReportedListing()).AsQueryable();
            return new PaginatedList<Common.ReportedListing>(move, pageNumber, pageSize, list1.TotalCount);
        }
Пример #20
0
 public TransactionList(PaginatedList<Transaction> paginatedList, 
                        DateTime startDate, 
                        DateTime endDate, 
                        string msisdn, 
                        string gameTitle)
 {
     StartDate = startDate;
     EndDate = endDate;
     Msisdn = msisdn;
     GameTitle = gameTitle;
     PaginatedList = paginatedList;
 }
Пример #21
0
        public ActionResult List(int? page, FormCollection formCollection)
        {
            var deleted_user_roles = String.IsNullOrEmpty(formCollection["Delete"]) ? new string[]{} : formCollection["Delete"].Split(',');

            foreach (var role in deleted_user_roles)
            {
                Roles.DeleteRole(role, false);
            }

            var paginated_userRoles = new PaginatedList<string>(Roles.GetAllRoles().Cast<string>().AsQueryable<string>(), page.HasValue ? page.Value : 0, 10);

            return View(paginated_userRoles);
        }
        public void Sets_The_PageSize_Property_Corretly()
        {
            // Arrange
            var source = Enumerable.Empty<object>();
            var pageIndex = 2;
            var pageSize = 20;
            var totalCount = 50;

            // Act
            var paginatedList = new PaginatedList<object>(source, pageIndex, pageSize, totalCount);

            // Assert
            Assert.Equal(pageSize, paginatedList.PageSize);
        }
Пример #23
0
        public ActionResult Index(string q, int? page)
        {
            const int pageSize = 25;

              IQueryable<Library> libraries = null;

              if (!string.IsNullOrEmpty(q))
            libraries = libraryRepository.FindLibrariesByText(q);
              else
            libraries = libraryRepository.All.OrderBy(l => l.Id);

              var paginatedLibraries = new PaginatedList<Library>(libraries, page ?? 0, pageSize);

              return View(paginatedLibraries);
        }
        //
        // GET: /Claims/

        public ActionResult Index(int? page)
        {
            const int pageSize = 10;

            var claimResponse = claimService.FindAllClaims();
            
            List<Claim> listOfClaims = new List<Claim>();
            foreach (var webClaim in claimResponse)
            {
                listOfClaims.Add(webClaim);
            }
            var paginatedClaims = new PaginatedList<Claim>(listOfClaims.AsQueryable<Claim>(), page ?? 0, pageSize);

            return View(paginatedClaims);
        }
Пример #25
0
        public ActionResult Index(string q, int? page)
        {
            const int pageSize = 25;

            IQueryable<Dinner> dinners;

            //Searching?
            if(!string.IsNullOrWhiteSpace(q))
                dinners = dinnerReadModel.FindDinnersByText(q).OrderBy(d => d.EventDate);
            else
                dinners = dinnerReadModel.FindUpcomingDinners();

            var paginatedDinners = new PaginatedList<Dinner>(dinners, page ?? 0, pageSize);

            return View(paginatedDinners);
        }
        /// <summary>
        /// Get all success stories
        /// </summary>
        /// <param name="pageIndex">Page index</param>
        /// <param name="pageSize">Page size</param>
        /// <param name="active">Active flag</param>
        /// <param name="search">Search </param>
        /// <returns>Paginated success story collection</returns>
        public IPaginatedList<SuccessStory> GetAllSuccessStories(int pageIndex = 0, int pageSize = -1, bool? active = true, string search = "")
        {
            var query = _successStoryRepository.Table;

            query = query.Where(s => !s.Deleted);

            if (active != null)
                query = query.Where(s => s.Active == active);

            if (search != null)
                query = query.Where(s => s.Title.Contains(search) || s.ShortSummary.Contains(search) || s.Author.DisplayName.Contains(search));

            query = query.OrderByDescending(s => s.Id);

            var stories = new PaginatedList<SuccessStory>(query, pageIndex, pageSize);
            return stories;
        }
        public void CanRead_Empty_Items()
        {
            // Arrange
            var expected = new PaginatedList<Player> { Page = 1, Pages = 100, Total = 1500, PerPage = 15 };
            var jsonString = JsonConvert.SerializeObject(expected);

            var convertor = new PaginatedListConvertor<Player>("players");

            // Act
            var players = JsonConvert.DeserializeObject<PaginatedList<Player>>(jsonString, convertor);

            // Assert
            Assert.AreEqual(expected.Page, players.Page);
            Assert.AreEqual(expected.Pages, players.Pages);
            Assert.AreEqual(expected.Total, players.Total);
            Assert.AreEqual(expected.PerPage, players.PerPage);
        }
Пример #28
0
        /// <summary>
        /// Get all pages
        /// </summary>
        /// <param name="pageIndex">Page index</param>
        /// <param name="pageSize">Page size</param>
        /// <param name="active">Active flag</param>
        /// <param name="search">search </param>
        /// <returns>Paginated page collection</returns>
        public IPaginatedList<Page> GetAllPages(int pageIndex, int pageSize, bool? active = true, string search = "")
        {
            var query = _pageRepository.Table;

            query = query.Where(s => !s.Deleted);

            if (active != null)
                query = query.Where(s => s.Active == active);

            if (search != null)
                query = query.Where(s => s.Title.Contains(search));

            query = query.OrderBy(s => s.Title);

            var pages = new PaginatedList<Page>(query, pageIndex, pageSize);
            return pages;
        }
        /// <summary>
        /// Get all comments
        /// </summary>
        /// <param name="pageIndex">Current page</param>
        /// <param name="pageSize">Items per page</param>
        /// <param name="active">Active flag</param>
        /// <param name="search">Search query</param>
        /// <returns>Paginated collection of comments</returns>
        public IPaginatedList<Comment> GetAllComments(int pageIndex, int pageSize, bool? active = true, string search = "")
        {
            var query = _commentRepository.Table;

            query = query.Where(s => !s.Deleted);

            if (active != null)
                query = query.Where(s => s.Active == active);

            if (search != null)
                query = query.Where(s => s.UserComment.Contains(search));

            query = query.OrderBy(s => s.Id);

            var comments = new PaginatedList<Comment>(query, pageIndex, pageSize);
            return comments;
        }
Пример #30
0
        private void GetSearchResults()
        {
            // Get the paging variable
            int? p = null;
            if (Request.QueryString["p"] != null)
                p = Convert.ToInt32(Request.QueryString["p"]);

            // Get the search variable
            string s = null;
            if (Request.QueryString["s"] != null)
                s = Request.QueryString["s"];

            if(s != null)
            {
                // Strip out any nasties from the term
                var searchterm = Helpers.SafePlainText(s).ToLower();

                // Get the posts that contain the search
                var posts = Factory.SearchPosts(searchterm).Select(x => x.ParentId);

                // Now get topics the posts are in
                var maintopics = from t in Factory.ReturnAllTopics(true)
                                 where posts.Contains(t.Id)
                                 select t;

                // Pass to my pager helper
                var pagedResults = new PaginatedList<ForumTopic>(maintopics, p ?? 0, Helpers.MainForumSettings().TopicsPerPage);

                // Decide whether to show pager or not
                if (pagedResults.TotalPages > 1)
                {
                    litPager.Text = pagedResults.ReturnPager();
                }

                // Now bind
                rptTopicList.DataSource = pagedResults;
                rptTopicList.DataBind();
            }
            else
            {
                topiclist.Visible = false;
            }
        }
Пример #31
0
        // GET: ArtistModels
        public async Task <IActionResult> Index(string sortOrder, string currentFilter, string searchString, int?pageNumber)
        {
            ViewData["CurrentSort"]  = sortOrder;
            ViewData["ArtistSort"]   = String.IsNullOrEmpty(sortOrder) ? "name_desc" : "";
            ViewData["CountrySort"]  = sortOrder == "Country" ? "country_desc" : "Country";
            ViewData["SubgenreSort"] = sortOrder == "Subgenre" ? "subgenre_desc" : "Subgenre";

            if (searchString != null)
            {
                pageNumber = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            ViewData["CurrentFilter"] = searchString;

            var artists = from a in _context.Artists
                          .Include(s => s.Subgenre)
                          select a;

            if (!String.IsNullOrEmpty(searchString))
            {
                artists = artists.Where(a => a.ArtistName.Contains(searchString) ||
                                        a.CountryOfOrigin.Contains(searchString) ||
                                        a.Subgenre.SubgenreName.Contains(searchString));

                if (!artists.Any(a => a.ArtistName.Contains(searchString) ||
                                 a.CountryOfOrigin.Contains(searchString) ||
                                 a.Subgenre.SubgenreName.Contains(searchString)))
                {
                    TempData["messageNonFound"] = "Oops! There is nothing here. Try another search.";
                }
            }

            switch (sortOrder)
            {
            case "name_desc":
                artists = artists.OrderByDescending(a => a.ArtistName);
                break;

            case "Country":
                artists = artists.OrderBy(a => a.CountryOfOrigin);
                break;

            case "country_desc":
                artists = artists.OrderByDescending(a => a.CountryOfOrigin);
                break;

            case "Subgenre":
                artists = artists.OrderBy(a => a.Subgenre.SubgenreName);
                break;

            case "subgenre_desc":
                artists = artists.OrderByDescending(a => a.Subgenre.SubgenreName);
                break;

            default:
                artists = artists.OrderBy(a => a.ArtistName);
                break;
            }

            int pageSize = 8;

            return(View(await PaginatedList <ArtistModel> .CreateAsync(artists.AsNoTracking(), pageNumber ?? 1, pageSize)));
        }
Пример #32
0
        public static PaginatedList <Application> Query(Zippy.Data.IDalProvider db, Guid tenantID, int PageSize, int PageIndex, Hashtable paras, int?orderCol)
        {
            PaginatedList <Application>           rtn      = new PaginatedList <Application>();
            List <System.Data.Common.DbParameter> dbParams = new List <System.Data.Common.DbParameter>();

            string where = " [TenantID]=@TenantID";
            dbParams.Add(db.CreateParameter("TenantID", tenantID));

            #region 开始查询
            if (paras != null)
            {
                object qTitle = paras["qTitle"];
                if (qTitle != null)
                {
                    where += " and [Title] like @Title";
                    dbParams.Add(db.CreateParameter("Title", "%" + qTitle + "%"));
                }
                object qApplicationType = paras["qApplicationType"];
                if (qApplicationType != null && qApplicationType.ToString() != "")
                {
                    Int32 intqApplicationType = (Int32)qApplicationType;
                    if (intqApplicationType > 0)
                    {
                        where += " and ([ApplicationType] & @ApplicationType = @ApplicationType)";
                        dbParams.Add(db.CreateParameter("ApplicationType", qApplicationType));
                    }
                }
                object qApplicationStatus = paras["qApplicationStatus"];
                if (qApplicationStatus != null && qApplicationStatus.ToString() != "")
                {
                    Int32 intqApplicationStatus = (Int32)qApplicationStatus;
                    if (intqApplicationStatus > 0)
                    {
                        where += " and [ApplicationStatus] = @ApplicationStatus";
                        dbParams.Add(db.CreateParameter("ApplicationStatus", qApplicationStatus));
                    }
                }
                object qCreateDateStart = paras["qCreateDateStart"];
                if (qCreateDateStart != null && qCreateDateStart.ToString() != "")
                {
                    where += " and [CreateDate] >= @CreateDateStart";
                    dbParams.Add(db.CreateParameter("CreateDateStart", qCreateDateStart));
                }
                object qCreateDateEnd = paras["qCreateDateEnd"];
                if (qCreateDateEnd != null && qCreateDateEnd.ToString() != "")
                {
                    where += " and [CreateDate] < @CreateDateEnd";
                    dbParams.Add(db.CreateParameter("CreateDateEnd", ((DateTime)qCreateDateEnd).AddDays(1)));
                }
            }
            #endregion

            string orderBy = "[CreateDate] desc";
            if (orderCol == 0)
            {
                orderBy = "[CreateDate] desc";
            }
            else if (orderCol == 1)
            {
                orderBy = "[ApplicationID]";
            }
            else if (orderCol == 2)
            {
                orderBy = "[ApplicationID] desc";
            }
            else if (orderCol == 3)
            {
                orderBy = "[Title]";
            }
            else if (orderCol == 4)
            {
                orderBy = "[Title] desc";
            }
            else if (orderCol == 5)
            {
                orderBy = "[ClientApiStartServeice]";
            }
            else if (orderCol == 6)
            {
                orderBy = "[ClientApiStartServeice] desc";
            }
            else if (orderCol == 7)
            {
                orderBy = "[ClientApiStopService]";
            }
            else if (orderCol == 8)
            {
                orderBy = "[ClientApiStopService] desc";
            }
            else if (orderCol == 9)
            {
                orderBy = "[ClientApiDeleteService]";
            }
            else if (orderCol == 10)
            {
                orderBy = "[ClientApiDeleteService] desc";
            }
            else if (orderCol == 11)
            {
                orderBy = "[ClientApiPauseService]";
            }
            else if (orderCol == 12)
            {
                orderBy = "[ClientApiPauseService] desc";
            }
            else if (orderCol == 13)
            {
                orderBy = "[ClientApiGetMenu]";
            }
            else if (orderCol == 14)
            {
                orderBy = "[ClientApiGetMenu] desc";
            }
            else if (orderCol == 15)
            {
                orderBy = "[ApplicationType]";
            }
            else if (orderCol == 16)
            {
                orderBy = "[ApplicationType] desc";
            }
            else if (orderCol == 17)
            {
                orderBy = "[ApplicationStatus]";
            }
            else if (orderCol == 18)
            {
                orderBy = "[ApplicationStatus] desc";
            }
            else if (orderCol == 19)
            {
                orderBy = "[CreateDate]";
            }
            else if (orderCol == 20)
            {
                orderBy = "[CreateDate] desc";
            }
            int RecordCount = db.Count <Application>(where, dbParams.ToArray());
            int PageCount   = 0;
            if (RecordCount % PageSize == 0)
            {
                PageCount = RecordCount / PageSize;
            }
            else
            {
                PageCount = RecordCount / PageSize + 1;
            }
            if (PageIndex > PageCount)
            {
                PageIndex = PageCount;
            }
            if (PageIndex < 1)
            {
                PageIndex = 1;
            }


            List <Application> records = db.Take <Application>(where + " order by " + orderBy, PageSize, PageIndex, dbParams.ToArray());
            rtn.AddRange(records);
            rtn.PageIndex  = PageIndex;
            rtn.PageSize   = PageSize;
            rtn.TotalCount = RecordCount;

            return(rtn);
        }
Пример #33
0
        public async Task <PaginatedList <MemberHistory> > GetMemberHistory(MemberHistoryQuery query)
        {
            if (!query.OperatorId.HasValue)
            {
                return(PaginatedList <MemberHistory> .Empty(query.PageIndex, query.PageSize));
            }

            using (var db = databaseManager.GetReadOnlyDatabase(query.OperatorId))
            {
                if (query.TransactionId.HasValue)
                {
                    var tnxId = query.TransactionId.Value;

                    var historyWithGameUser = await db.GameHistories.Where(trx => trx.GameTransactionId == tnxId)
                                              .Select(h => new
                    {
                        h.CreatedOnUtc,
                        h.Bet,
                        h.GameId,
                        h.Id,
                        h.IsFreeGame,
                        h.IsDeleted,
                        h.PlatformType,
                        h.RoundId,
                        h.GameResultType,
                        h.UserId,
                        h.Win,
                        UserName = h.User.Name,
                        GameName = h.Game.Name
                    }).FirstOrDefaultAsync();


                    var memberHistory = historyWithGameUser == null ? new List <MemberHistory>() : new List <MemberHistory> {
                        new MemberHistory {
                            Bet               = historyWithGameUser.Bet,
                            CreatedOnUtc      = historyWithGameUser.CreatedOnUtc,
                            GameId            = historyWithGameUser.GameId,
                            IsSideBet         = false,
                            GameTransactionId = tnxId,
                            GameName          = historyWithGameUser.GameName,
                            Id           = historyWithGameUser.Id,
                            IsFreeGame   = historyWithGameUser.IsFreeGame,
                            IsVoid       = historyWithGameUser.IsDeleted,
                            PlatformType = (int)historyWithGameUser.PlatformType,
                            RoundId      = historyWithGameUser.RoundId,
                            Type         = (int)historyWithGameUser.GameResultType,
                            UserId       = historyWithGameUser.UserId,
                            UserName     = historyWithGameUser.UserName,
                            Win          = historyWithGameUser.Win
                        }
                    };

                    return(PaginatedList <MemberHistory> .Create(memberHistory, query.PageIndex, query.PageSize));
                }
                else
                {
                    await query.GetUserId(db);

                    var gamesEnum      = ((GameId[])System.Enum.GetValues(typeof(GameId))).Select(c => (int)c).ToList();
                    var platformTypes  = ((PlatformType[])System.Enum.GetValues(typeof(PlatformType))).Select(c => (int)c).ToList();
                    var gameResultType = ((GameResultType[])System.Enum.GetValues(typeof(GameResultType))).Select(c => (int)c).ToList();

                    var memberHistories = new List <MemberHistory>();
                    var gameHistories   = new List <GameHistory>();

                    var gameIds       = (query.GameId == null || query.GameId == 0) ? gamesEnum : gamesEnum.Where(i => i == query.GameId.Value).ToList();
                    var platformIds   = string.IsNullOrEmpty(query.PlatformType) ? platformTypes : query.PlatformType.Split(',').Select(int.Parse).ToList();
                    var gameResultIds = query.GameTransactionType == 0 ? gameResultType : gameResultType.Where(i => i == query.GameTransactionType).ToList();


                    var sql = db.GameHistories.Where(trx => trx.UserId == query.MemberId &&
                                                     trx.DateTimeUtc >= query.StartDateInUTC &&
                                                     trx.DateTimeUtc <= query.EndDateInUTC);
                    if (gameIds.Count > 0)
                    {
                        sql = sql.Where(trx => gameIds.Contains(trx.GameId));
                    }
                    if (platformIds.Count > 0)
                    {
                        sql = sql.Where(trx => platformIds.Contains((int)trx.PlatformType));
                    }
                    if (gameResultIds.Count > 0)
                    {
                        sql = sql.Where(trx => gameResultIds.Contains((int)trx.GameResultType));
                    }

                    gameHistories = await sql.OrderByDescending(trx => trx.DateTimeUtc)
                                    .Skip(query.Offset)
                                    .Take(query.PageSize)
                                    .ToListAsync();


                    var historyWithGameUser = gameHistories
                                              .Select(h => new
                    {
                        h.GameTransactionId,
                        h.CreatedOnUtc,
                        h.Bet,
                        h.GameId,
                        h.Id,
                        h.IsFreeGame,
                        h.IsDeleted,
                        h.PlatformType,
                        h.RoundId,
                        h.GameResultType,
                        h.UserId,
                        h.Win,
                        UserName = query.MemberName,
                        GameName = ((GameId)h.GameId).ToString()
                    }).ToList();

                    var listId = historyWithGameUser.Select(hu => hu.GameTransactionId).ToArray();

                    var profileSideBet = await db.SpinBetProfiles.Where(sb => listId.Contains(sb.GameTransactionId) && sb.IsSideBet).ToListAsync();

                    var listIdSideBet = profileSideBet.Select(sb => sb.GameTransactionId).ToArray();

                    foreach (var item in historyWithGameUser)
                    {
                        var isSideBet = listIdSideBet.Contains(item.GameTransactionId);

                        memberHistories.Add(new MemberHistory
                        {
                            Bet               = isSideBet ? item.Bet * 2 : item.Bet,
                            CreatedOnUtc      = item.CreatedOnUtc,
                            GameId            = item.GameId,
                            IsSideBet         = false,
                            GameTransactionId = item.GameTransactionId,
                            GameName          = item.GameName,
                            Id           = item.Id,
                            IsFreeGame   = item.IsFreeGame,
                            IsVoid       = item.IsDeleted,
                            PlatformType = (int)item.PlatformType,
                            RoundId      = item.RoundId,
                            Type         = (int)item.GameResultType,
                            UserId       = item.UserId,
                            UserName     = item.UserName,
                            Win          = item.Win
                        });
                    }

                    return(PaginatedList <MemberHistory> .Create(memberHistories, query.PageIndex, query.PageSize));
                }
            }
        }
Пример #34
0
        /// <summary>
        ///     Gets a paged list of badges
        /// </summary>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public async Task <PaginatedList <Badge> > GetPagedGroupedBadges(int pageIndex, int pageSize)
        {
            var query = _context.Badge.OrderByDescending(x => x.Name);

            return(await PaginatedList <Badge> .CreateAsync(query.AsNoTracking(), pageIndex, pageSize));
        }
Пример #35
0
        public IActionResult AllRequestedVideos(int?pageNumber)
        {
            var allRequestedVideos = requestedVideoService.AllRequestedVideos();

            return(View(PaginatedList <VideoViewModel> .Create(allRequestedVideos.AllVideos, pageNumber ?? 1, GlobalConstants.PageSize)));
        }
Пример #36
0
        public ActionResult DownloadCards(string sortOrder, string currentFilter, string searchString, int product, int?page)
        {
            if (!_accountController)
            {
                return(RedirectToAction("SignOff", "Account"));
            }

            ViewData["ProductSortParm"]      = String.IsNullOrEmpty(sortOrder) ? "product_desc" : "";
            ViewData["StatusSortParm"]       = String.IsNullOrEmpty(sortOrder) ? "status_desc" : "";
            ViewData["BranchSortParm"]       = String.IsNullOrEmpty(sortOrder) ? "branch_desc" : "";
            ViewData["PickUpBranchSortParm"] = String.IsNullOrEmpty(sortOrder) ? "pickup_desc" : "";
            ViewData["EntryDateSortParm"]    = sortOrder == "Date" ? "date_desc" : "Date";
            ViewData["ExpiryDateSortParm"]   = sortOrder == "Date" ? "date_desc" : "Date";

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            ViewData["CurrentFilter"] = searchString;
            ViewBag.AllProducts       = _eBankingRepo.GetAllCardProducts();

            var requests = _eBankingRepo.GetAllCardReqs().OrderBy(o => o.Id);

            if (product > 0)
            {
                requests = _eBankingRepo.GetCardRequestByProduct(product).OrderByDescending(o => o.Id);
            }
            switch (sortOrder)
            {
            case "product_desc":
                requests = requests.OrderByDescending(s => s.Product);
                break;

            case "status_desc":
                requests = requests.OrderByDescending(s => s.CardStatus);
                break;

            case "branch_desc":
                requests = requests.OrderByDescending(s => s.Branch);
                break;

            case "pickup_desc":
                requests = requests.OrderByDescending(s => s.PickUpBranch);
                break;

            case "Date":
                requests = requests.OrderBy(s => s.EntryDate);
                break;

            case "date_desc":
                requests = requests.OrderByDescending(s => s.ExpiryDate);
                break;

            default:
                requests = requests.OrderBy(s => s.Id);
                break;
            }

            var str = JsonConvert.SerializeObject(requests);

            _session.SetString("ProcessRequests", str);
            _session.SetInt32("product", product);
            ViewBag.RequestnotFound = TempData["RequestnotFound"];

            ViewBag.CardStatus = _eBankingRepo.GetCardStatus();
            ViewBag.PinStatus  = _eBankingRepo.GetPinStatus();

            int pageSize = 10;

            return(View(PaginatedList <IssuanceDisplayViewModel> .CreateAsync(requests.AsQueryable(), page ?? 1, pageSize)));
            //return View(requests);
        }
Пример #37
0
        // GET: EBanking
        public ActionResult Index(string sortOrder, string currentFilter, string searchString, string branch, string cardStatus, string pinStatus, string fromDate, string toDate, int?page)
        {
            if (!_accountController)
            {
                return(RedirectToAction("SignOff", "Account"));
            }

            ViewData["ProductSortParm"]      = String.IsNullOrEmpty(sortOrder) ? "product_desc" : "";
            ViewData["StatusSortParm"]       = String.IsNullOrEmpty(sortOrder) ? "status_desc" : "";
            ViewData["BranchSortParm"]       = String.IsNullOrEmpty(sortOrder) ? "branch_desc" : "";
            ViewData["PickUpBranchSortParm"] = String.IsNullOrEmpty(sortOrder) ? "pickup_desc" : "";
            ViewData["EntryDateSortParm"]    = sortOrder == "Date" ? "date_desc" : "Date";
            ViewData["ExpiryDateSortParm"]   = sortOrder == "Date" ? "date_desc" : "Date";

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            ViewData["CurrentFilter"] = searchString;
            ViewBag.AllBranches       = _eBankingRepo.GetAllBranches();

            var requests = _eBankingRepo.GetAllCardReqs().OrderBy(o => o.Id);

            if (!String.IsNullOrEmpty(searchString) || branch != null || cardStatus != null || pinStatus != null || fromDate != null || toDate != null)
            {
                requests = _eBankingRepo.GetCardRequestBySearchString(searchString, branch, cardStatus, pinStatus, fromDate, toDate).OrderBy(o => o.Id);
            }
            switch (sortOrder)
            {
            case "product_desc":
                requests = requests.OrderByDescending(s => s.Product);
                break;

            case "status_desc":
                requests = requests.OrderByDescending(s => s.CardStatus);
                break;

            case "branch_desc":
                requests = requests.OrderByDescending(s => s.Branch);
                break;

            case "pickup_desc":
                requests = requests.OrderByDescending(s => s.PickUpBranch);
                break;

            case "Date":
                requests = requests.OrderBy(s => s.EntryDate);
                break;

            case "date_desc":
                requests = requests.OrderByDescending(s => s.ExpiryDate);
                break;

            default:
                requests = requests.OrderBy(s => s.Id);
                break;
            }

            var str = JsonConvert.SerializeObject(requests);

            _session.SetString("requests", str);

            ViewBag.CardStatus = _eBankingRepo.GetCardStatus();
            ViewBag.PinStatus  = _eBankingRepo.GetPinStatus();

            int pageSize = 10;

            return(View(PaginatedList <IssuanceDisplayViewModel> .CreateAsync(requests.AsQueryable(), page ?? 1, pageSize)));
            //return View(requests);
        }
 internal PaginatedDto <TDto> DtoResult <TEntity, TDto>(PaginatedList <TEntity> paginatedEntity)
     where TDto : IDto
 {
     return(paginatedEntity.ToDto <TEntity, TDto>(_mapper));
 }
Пример #39
0
        // GET: TrackModels
        public async Task <IActionResult> Index(string sortOrder, string currentFilter, string searchString, int?pageNumber)
        {
            ViewData["CurrentSort"] = sortOrder;
            ViewData["NameSort"]    = String.IsNullOrEmpty(sortOrder) ? "name_desc" : "";
            ViewData["AlbumSort"]   = sortOrder == "Album" ? "album_desc" : "Album";
            ViewData["ArtistSort"]  = sortOrder == "Artist" ? "artist_desc" : "Artist";

            if (searchString != null)
            {
                pageNumber = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            ViewData["CurrentFilter"] = searchString;

            var tracks = from t in _context.Tracks
                         .Include(a => a.Album)
                         .ThenInclude(r => r.Artist)
                         select t;

            if (!String.IsNullOrEmpty(searchString))
            {
                tracks = tracks.Where(t => t.TrackName.Contains(searchString) ||
                                      t.Album.AlbumName.Contains(searchString) ||
                                      t.Album.Artist.ArtistName.Contains(searchString));

                if (!tracks.Any(t => t.TrackName.Contains(searchString) ||
                                t.Album.AlbumName.Contains(searchString) ||
                                t.Album.Artist.ArtistName.Contains(searchString)))
                {
                    TempData["messageNonFound"] = "Oops! There is nothing here. Try another search.";
                }
            }

            switch (sortOrder)
            {
            case "name_desc":
                tracks = tracks.OrderByDescending(t => t.TrackName);
                break;

            case "Album":
                tracks = tracks.OrderBy(t => t.Album.AlbumName);
                break;

            case "album_desc":
                tracks = tracks.OrderByDescending(t => t.Album.AlbumName);
                break;

            case "Artist":
                tracks = tracks.OrderBy(t => t.Album.Artist.ArtistName);
                break;

            case "artist_desc":
                tracks = tracks.OrderByDescending(t => t.Album.Artist.ArtistName);
                break;

            default:
                tracks = tracks.OrderBy(t => t.TrackName);
                break;
            }

            int pageSize = 8;

            return(View(await PaginatedList <TrackModel> .CreateAsync(tracks.AsNoTracking(), pageNumber ?? 1, pageSize)));
        }
Пример #40
0
        // GET: Products
        public async Task <IActionResult> Index(string searchString, int?pageNumber, string currentFilter,
                                                string sortOrder, int pageSize, string setPageSize)
        {
            ViewData["NameSortParm"]     = sortOrder == "name" ? "name_desc" : "name";
            ViewData["QuantitySortParm"] = sortOrder == "quantity" ? "quantity_desc" : "quantity";
            ViewData["PriceSortParm"]    = sortOrder == "price" ? "price_desc" : "price";
            ViewData["CurrentFilter"]    = searchString;
            if (HttpContext.Session.GetInt32("userId") != null)
            {
                var products = from p in _context.Product
                               select p;

                if (sortOrder != null)
                {
                    HttpContext.Session.SetString("sort", sortOrder);
                }
                sortOrder = HttpContext.Session.GetString("sort");

                switch (sortOrder)
                {
                case "name":
                    products = products.OrderBy(p => p.Name);
                    break;

                case "name_desc":
                    products = products.OrderByDescending(p => p.Name);
                    break;

                case "quantity":
                    products = products.OrderBy(p => p.Quantity);
                    break;

                case "quantity_desc":
                    products = products.OrderByDescending(p => p.Quantity);
                    break;

                case "price":
                    products = products.OrderBy(p => p.Price);
                    break;

                case "price_desc":
                    products = products.OrderByDescending(p => p.Price);
                    break;

                default:
                    products = products.OrderBy(p => p.Name);
                    break;
                }

                switch (setPageSize)
                {
                case "set10":
                    HttpContext.Session.SetInt32("pagesize", 10);
                    break;

                case "set20":
                    HttpContext.Session.SetInt32("pagesize", 20);
                    break;

                case "set100":
                    HttpContext.Session.SetInt32("pagesize", 100);
                    break;

                case "setAll":
                    HttpContext.Session.SetInt32("pagesize", products.Count());
                    break;
                }

                if (searchString != null)
                {
                    pageNumber = 1;
                }
                else
                {
                    searchString = currentFilter;
                }
                if (!String.IsNullOrEmpty(searchString))
                {
                    products = products.Where(p => p.Name.ToUpper().Contains(searchString.ToUpper()));
                }


                if (HttpContext.Session.GetInt32("pagesize").HasValue)
                {
                    pageSize = HttpContext.Session.GetInt32("pagesize").GetValueOrDefault();
                }
                else
                {
                    pageSize = 10;
                }

                return(View(await PaginatedList <Product> .CreateAsyc(products.AsNoTracking(), pageNumber ?? 1, pageSize)));
            }
            else
            {
                return(RedirectToAction("Login", "Login"));
            }
        }
Пример #41
0
        //[OutputCache(Duration = 600, VaryByParam = "*")]
        public ActionResult SearchResults(int?page, string q, string l, string sub)
        {
            if (q == null || q.Length < 3)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            //sanitize
            q = q.Trim();

            if (q == "rick roll")
            {
                return(new RedirectResult("https://www.youtube.com/watch?v=dQw4w9WgXcQ"));
            }

            if (q == "spoon")
            {
                return(View("Jaje"));
            }

            // limit the search to selected subverse
            if (l != null && sub != null)
            {
                // ViewBag.SelectedSubverse = string.Empty;
                ViewBag.SearchTerm = q;

                const int pageSize   = 25;
                int       pageNumber = (page ?? 0);

                if (pageNumber < 0)
                {
                    return(View("~/Views/Errors/Error_404.cshtml"));
                }

                string          cacheKey  = CacheHandler.Keys.Search(sub, q);
                IList <Message> cacheData = (IList <Message>)CacheHandler.Retrieve(cacheKey);
                if (cacheData == null)
                {
                    cacheData = (IList <Message>)CacheHandler.Register(cacheKey, new Func <object>(() =>
                    {
                        var results = (from m in _db.Messages
                                       join s in _db.Subverses on m.Subverse equals s.name
                                       where
                                       !s.admin_disabled.Value &&
                                       m.Name != "deleted" &&
                                       m.Subverse == sub &&
                                       (m.Linkdescription.ToLower().Contains(q) || m.MessageContent.ToLower().Contains(q) || m.Title.ToLower().Contains(q))
                                       orderby m.Rank ascending, m.Date descending
                                       select m).Take(25).ToList();
                        return(results);
                    }), TimeSpan.FromMinutes(10));
                }


                //var resultsx = _db.Messages
                //    .Where(x => x.Name != "deleted" && x.Subverse == sub &&
                //        (x.Linkdescription.ToLower().Contains(q) || x.MessageContent.ToLower().Contains(q) || x.Title.ToLower().Contains(q))
                //    ).OrderByDescending(s => s.Rank)
                //    .ThenByDescending(s => s.Date).Take(25);


                ViewBag.Title = "search results";

                var paginatedResults = new PaginatedList <Message>(cacheData, 0, pageSize, 24); //HACK: To turn off paging

                return(View("~/Views/Search/Index.cshtml", paginatedResults));
            }
            else
            {
                ViewBag.SelectedSubverse = string.Empty;
                ViewBag.SearchTerm       = q;

                const int pageSize   = 25;
                int       pageNumber = (page ?? 0);

                if (pageNumber < 0)
                {
                    return(View("~/Views/Errors/Error_404.cshtml"));
                }

                string          cacheKey  = CacheHandler.Keys.Search(q);
                IList <Message> cacheData = (IList <Message>)CacheHandler.Retrieve(cacheKey);
                if (cacheData == null)
                {
                    cacheData = (IList <Message>)CacheHandler.Register(cacheKey, new Func <object>(() =>
                    {
                        var results = (from m in _db.Messages
                                       join s in _db.Subverses on m.Subverse equals s.name
                                       where
                                       !s.admin_disabled.Value &&
                                       m.Name != "deleted" &&
                                       //m.Subverse == sub &&
                                       (m.Linkdescription.ToLower().Contains(q) || m.MessageContent.ToLower().Contains(q) || m.Title.ToLower().Contains(q))
                                       orderby m.Rank ascending, m.Date descending
                                       select m
                                       ).Take(25).ToList();
                        return(results);
                    }), TimeSpan.FromMinutes(10));
                }

                var paginatedResults = new PaginatedList <Message>(cacheData, 0, pageSize, 24);//HACK to stop paging

                ViewBag.Title = "search results";

                return(View("~/Views/Search/Index.cshtml", paginatedResults));
            }
        }
Пример #42
0
        public async Task <PaginatedList <MembershipUser> > GetAll(int pageIndex, int pageSize)
        {
            var query = _context.MembershipUser.OrderBy(x => x.UserName);

            return(await PaginatedList <MembershipUser> .CreateAsync(query.AsNoTracking(), pageIndex, pageSize));
        }
Пример #43
0
        public static PaginatedList <Z01Title> Query(Zippy.Data.IDalProvider db, Guid tenantID, int PageSize, int PageIndex, Hashtable paras, int?orderCol)
        {
            PaginatedList <Z01Title> rtn = new PaginatedList <Z01Title>();
            List <System.Data.Common.DbParameter> dbParams = new List <System.Data.Common.DbParameter>();

            string where = " [TenantID]=@TenantID";
            dbParams.Add(db.CreateParameter("TenantID", tenantID));

            #region 开始查询
            if (paras != null)
            {
                object qTitle = paras["qTitle"];
                if (qTitle.IsNotNullOrEmpty())
                {
                    where += " and [Title] like @Title";
                    dbParams.Add(db.CreateParameter("Title", "%" + qTitle + "%"));
                }
                object qContent = paras["qContent"];
                if (qContent.IsNotNullOrEmpty())
                {
                    where += " and [Content] like @Content";
                    dbParams.Add(db.CreateParameter("Content", "%" + qContent + "%"));
                }
                object qCreateDateStart = paras["qCreateDateStart"];
                if (qCreateDateStart != null && qCreateDateStart.ToString() != "")
                {
                    where += " and [CreateDate] >= @CreateDateStart";
                    dbParams.Add(db.CreateParameter("CreateDateStart", qCreateDateStart));
                }
                object qCreateDateEnd = paras["qCreateDateEnd"];
                if (qCreateDateEnd != null && qCreateDateEnd.ToString() != "")
                {
                    where += " and [CreateDate] < @CreateDateEnd";
                    dbParams.Add(db.CreateParameter("CreateDateEnd", ((DateTime)qCreateDateEnd).AddDays(1)));
                }
            }
            #endregion

            string orderBy = "[DisplayOrder]";
            if (orderCol == 0)
            {
                orderBy = "[DisplayOrder] desc";
            }
            else if (orderCol == 1)
            {
                orderBy = "[Title]";
            }
            else if (orderCol == 2)
            {
                orderBy = "[Title] desc";
            }
            else if (orderCol == 3)
            {
                orderBy = "[CreateDate]";
            }
            else if (orderCol == 4)
            {
                orderBy = "[CreateDate] desc";
            }
            int RecordCount = db.Count <Z01Title>(where, dbParams.ToArray());
            int PageCount   = 0;
            if (RecordCount % PageSize == 0)
            {
                PageCount = RecordCount / PageSize;
            }
            else
            {
                PageCount = RecordCount / PageSize + 1;
            }
            if (PageIndex > PageCount)
            {
                PageIndex = PageCount;
            }
            if (PageIndex < 1)
            {
                PageIndex = 1;
            }


            List <Z01Title> records = db.Take <Z01Title>(where + " order by " + orderBy, PageSize, PageIndex, dbParams.ToArray());
            rtn.AddRange(records);
            rtn.PageIndex  = PageIndex;
            rtn.PageSize   = PageSize;
            rtn.TotalCount = RecordCount;

            return(rtn);
        }
Пример #44
0
        // GET: Students
        public async Task <IActionResult> Index(
            string sortOrder,
            string currentFilter,
            string searchString,
            int?pageNumber)
        {
            // dykstra3

            /* The code passes a sortOrder parameter from the URL query string to the action method.
             * Then switch statement will check for what's needed to be sorted and sort the results based on what
             * users click on.
             * After that, the code is supposed to create an IQueryable variable, which is modified in the switch statement and
             * then the ToListAsync method will be called to convert the IQueryable object into a collection.
             * Lastly, ViewData will be called to configure the column heading hyperlinks with query string values.
             * Overall Purpose: to add sorting to Student index page based on what users click on and provide
             * heading hyperlinks for the view
             *
             * Changes: add the sorting for GPA and Email, beside Last name and Enrollment date
             */

            // this code configures the view for current sort order, which keeps the current sort order
            // the same while clicking on next or previous page.
            ViewData["CurrentSort"] = sortOrder;

            ViewData["NameSortParm"] = String.IsNullOrEmpty(sortOrder) ? "LastName_desc" : "";
            ViewData["DateSortParm"] =
                sortOrder == "EnrollmentDate" ? "EnrollmentDate_desc" : "EnrollmentDate";

            // used for paging
            // if search string is changed during page, the page resets to number 1 page.
            // this makes sure there wont be different data displaying in the view when filtering
            if (searchString != null)
            {
                pageNumber = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            // configures the view with current filter string.
            // It is used to maintain the filter setting while paging.
            ViewData["CurrentFilter"] = searchString;
            var students = from s in _context.Students
                           select s;


            /* The string parameter "searchString" is added to the method in order to receive the string value
             * from a text box in the Index view.
             * searchString parameter pass to an action method and then if statement will check if string is not
             * null or empty, it will look for a name in database using where clause, which selects
             * only first name or last name that contains the search string.
             * ViewData "CurrentFilter" configures the view for results.
             */
            if (!String.IsNullOrEmpty(searchString))
            {
                students = students.Where(s => s.LastName.Contains(searchString) ||
                                          s.FirstName.Contains(searchString));
            }

            // if nothing sorted, then last name will be sorted first
            if (string.IsNullOrEmpty(sortOrder))
            {
                sortOrder = "LastName";
            }

            // set descending false
            bool descending = false;

            // if sortOrder variables (such as LastName_desc, IntGPA_desc, etc) end with "_desc",
            // then it will remove "_desc" by using substring, and keep the rest of words.
            // For example, LastName_desc will become LastName,
            // EnrollmentDate_desc => EnrollmentDate
            // Also, it set descending true to get sortOrder sorted
            if (sortOrder.EndsWith("_desc"))
            {
                sortOrder  = sortOrder.Substring(0, sortOrder.Length - 5);
                descending = true;
            }

            // if descending = true, values in the view will be sorted by descending by passing sortOrder into EF Property method
            if (descending)
            {
                students = students.OrderByDescending(e => EF.Property <object>(e, sortOrder));
            }

            // if it is false, then  values in the view will be sorted by ascending by passing sortOrder into EF Property method
            else
            {
                students = students.OrderBy(e => EF.Property <object>(e, sortOrder));
            }


            // default page size = 3
            int pageSize = 3;

            // this code convert the list of student to a single page in a collection that supports paging.
            // Then it will be passed to the view.
            return(View(await PaginatedList <Student> .CreateAsync(students.AsNoTracking(), pageNumber ?? 1, pageSize)));
        }
Пример #45
0
        public async Task <IActionResult> Index(string sortOrder, string currentFilter, string searchString, int?pageNumber)
        {
            var user = await this.userManager.GetUserAsync(this.User);

            if (user == null)
            {
                return(RedirectToPage("~/Account/Login"));
            }

            if (user.OrganizationId == null)
            {
                return(this.RedirectToAction("Create", "Organizations"));
            }

            var allUserCustomers = this.customersService.GetAll <CustomerViewModel>(user.Id, false);

            ViewData["CurrentSort"] = sortOrder;
            ViewData["SortByName"]  = String.IsNullOrEmpty(sortOrder) ? "name_desc" : "";

            if (searchString != null)
            {
                pageNumber = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            ViewData["CurrentFilter"] = searchString;

            var customers = from c in allUserCustomers
                            select c;

            if (!String.IsNullOrEmpty(searchString))
            {
                customers = customers.Where(s => s.LastName.Contains(searchString) ||
                                            s.FirstName.Contains(searchString));
            }
            switch (sortOrder)
            {
            case "name_desc":
                customers = customers
                            .OrderByDescending(c => c.FirstName)
                            .ThenByDescending(c => c.LastName)
                            .ThenByDescending(c => c.MiddleName);
                break;

            case "Date":
                customers = customers.OrderBy(c => c.OrdersCount);
                break;

            case "date_desc":
                customers = customers.OrderByDescending(c => c.OrdersCount);
                break;

            default:
                customers = customers.OrderBy(c => c.LastName);
                break;
            }

            int pageSize = 3;

            return(View(await PaginatedList <CustomerViewModel> .CreateAsync(customers, pageNumber ?? 1, pageSize)));
        }
 public async Task OnGetAsync(string sortOrder, string currentFilter, string searchString, int? pageIndex,
                              string entitySelect, string entityFilter, DateTime dateBegin, DateTime dateBeginSelect, DateTime dateEnd, DateTime dateEndSelect)
 {
     selectedEntity = new SelectList(_context.Entity.Where(a => a.Active == "Y"), "Name", "Name");
                            
     CurrentSort = sortOrder;
     IDSort = sortOrder == "ID" ? "ID_Desc" : "ID";
     EventDateSort = sortOrder == "EventDate" ? "EventDate_Desc" : "EventDate";
     ContactNameSort = sortOrder == "ContactName" ? "ContactName_Desc" : "ContactName";
     EventTypeSort = sortOrder == "EventType" ? "EventType_Desc" : "EventType";
     ShiftRangeSort = sortOrder == "ShiftRange" ? "ShiftRange_Desc" : "ShiftRange";            
     OfficerNameSort = sortOrder == "OfficerName" ? "OfficerName_Desc" : "OfficerName";
     IQueryable<SecurityLog> sort = from s in _context.SecurityLog select s;
     
     switch (sortOrder)
     {
         case "ID_Desc":
             sort = sort.OrderByDescending(s => s.ID);
             break;
         case "ID":
             sort = sort.OrderBy(s => s.ID);
             break;
         case "EventDate":
             sort = sort.OrderBy(s => s.EventDate);
             break;                
         case "ShiftRange":
             sort = sort.OrderBy(s => s.ShiftRange.Name).ThenBy(s => s.EventDate);
             break;
         case "ShiftRange_Desc":
             sort = sort.OrderByDescending(s => s.ShiftRange.Name).ThenBy(s => s.EventDate);
             break;
         case "EventType":
             sort = sort.OrderBy(s => s.EventType.Name).ThenBy(s => s.EventDate);
             break;
         case "EventType_Desc":
             sort = sort.OrderByDescending(s => s.EventType.Name).ThenBy(s => s.EventDate);
             break;                
         case "OfficerName":                    
             sort = sort.OrderBy(s => officerList.ToString()).ThenBy(s => s.EventDate);
             break;
         case "OfficerName_Desc":                    
             sort = sort.OrderByDescending(s => officerList.ToString()).ThenBy(s => s.EventDate);
             break;
         default:
             sort = sort.OrderByDescending(s => s.EventDate);
             break;
     }
     int pageSize = 5;
     
     SecurityLog = await PaginatedList<SecurityLog>.CreateAsync(sort
     .Include(a => a.Entity)
     .Include(b => b.EventType)
     .Include(c => c.Location)
     .Include(d => d.ShiftRange)
     .Include(e => e.Officer)                                    
     .AsNoTracking(), pageIndex ?? 1, pageSize);
     
     
     int rowID;
     rowID = 0;
     
     foreach (SecurityLog secLog in SecurityLog)
     {
         secLogCopy = secLog;
         OfficerLists = officerList.GetOfficerList(_context, secLog, rowID, OfficerIDs);
         if (!String.IsNullOrEmpty(searchString))
         {
             sort = sort.Where(s => OfficerIDs.ToString().Contains(searchString));
         }
         rowID++;
     }
  
     if (!String.IsNullOrEmpty(searchString))
     {                                                
         sort = sort.Where(s => s.Narrative.Contains(searchString)
                             || s.RecordLocked.Contains(searchString)
                             || s.ContactName.Contains(searchString)
                             || s.Location.Name.Contains(searchString)
                             || s.EventType.Name.Contains(searchString)
                             || s.ShiftRange.Name.Contains(searchString)
                             || s.ID.ToString().Contains(searchString)
                             || s.SubjectFirst.Contains(searchString)
                             || s.SubjectLast.Contains(searchString));                                    
     }
  
 }
 public static PaginatedDto <TDto> ToDto <TEntity, TDto>(this PaginatedList <TEntity> paginatedEntity, IMapper mapper)
     where TDto : IDto
 {
     return(mapper.Map <PaginatedList <TEntity>, PaginatedDto <TDto> >(paginatedEntity));
 }
Пример #48
0
        public PaginatedList <JobViewModel> FindAllView(Predicate <JobViewModel> predicate = null, string sortColumn = "", OrderByDirectionType direction = OrderByDirectionType.Ascending, int skip = 0, int take = 100)
        {
            PaginatedList <JobViewModel> paginatedList = new PaginatedList <JobViewModel>();

            var jobsList = base.Find(null, j => j.IsDeleted == false);

            if (jobsList != null && jobsList.Items != null && jobsList.Items.Count > 0)
            {
                var jobRecord = from j in jobsList.Items
                                join a in dbContext.Agents on j.AgentId equals a.Id into table1
                                from a in table1.DefaultIfEmpty()
                                join p in dbContext.Processes on j.ProcessId equals p.Id into table2
                                from p in table2.DefaultIfEmpty()
                                select new JobViewModel
                {
                    Id           = j?.Id,
                    CreatedOn    = j?.CreatedOn,
                    CreatedBy    = j?.CreatedBy,
                    IsSuccessful = j?.IsSuccessful,
                    Message      = j?.Message,
                    JobStatus    = j?.JobStatus,
                    AgentId      = (a == null || a.Id == null) ? Guid.Empty : a.Id.Value,
                    AgentName    = a?.Name,
                    ProcessId    = (p == null || p.Id == null) ? Guid.Empty : p.Id.Value,
                    ProcessName  = p?.Name,
                    StartTime    = j.StartTime,
                    EndTime      = j.EndTime,
                    EnqueueTime  = j.EnqueueTime,
                    DequeueTime  = j.DequeueTime
                };

                if (!string.IsNullOrWhiteSpace(sortColumn))
                {
                    if (direction == OrderByDirectionType.Ascending)
                    {
                        jobRecord = jobRecord.OrderBy(j => j.GetType().GetProperty(sortColumn).GetValue(j)).ToList();
                    }
                    else if (direction == OrderByDirectionType.Descending)
                    {
                        jobRecord = jobRecord.OrderByDescending(j => j.GetType().GetProperty(sortColumn).GetValue(j)).ToList();
                    }
                }

                List <JobViewModel> filterRecord = null;
                if (predicate != null)
                {
                    filterRecord = jobRecord.ToList().FindAll(predicate);
                }
                else
                {
                    filterRecord = jobRecord.ToList();
                }

                paginatedList.Items = filterRecord.Skip(skip).Take(take).ToList();

                paginatedList.Completed   = jobsList.Completed;
                paginatedList.Impediments = jobsList.Impediments;
                paginatedList.PageNumber  = jobsList.PageNumber;
                paginatedList.PageSize    = jobsList.PageSize;
                paginatedList.ParentId    = jobsList.ParentId;
                paginatedList.Started     = jobsList.Started;
                paginatedList.TotalCount  = filterRecord?.Count;//jobsList.TotalCount;
            }

            return(paginatedList);
        }
Пример #49
0
        public PaginatedList <PostReviewDisplay> GetPostReviews(int postId, int reviewPageIndex, int reviewPageSize, string currUserId, string order = "publishDate")
        {
            PaginatedList <PostReviewDisplay> ret = new PaginatedList <PostReviewDisplay>();

            // TODO : "best" OPTION IS NOT WORKING (ToList() Throws Exception)
            if (order == "best")
            {
                var asd = _dbEntitySet.AsNoTracking()
                          .Where(p => p.PostId == postId && p.IsPublished)
                          .Include(p => p.UserLikes)
                          .Select(p => new { DbEntity = p, LikeCount = p.UserLikes.Where(f => f.LikeStatus == LikeStatus.Like).Count(), DislikeCount = p.UserLikes.Where(f => f.LikeStatus == LikeStatus.Dislike).Count() })
                          .OrderByDescending(p => p.LikeCount - p.DislikeCount)
                          .Skip((reviewPageIndex - 1) * reviewPageSize)
                          .Take(reviewPageSize)
                          .Select(p => new PostReviewDisplay()
                {
                    CommentCount          = p.DbEntity.Comments.Count(),
                    DislikeCount          = p.DislikeCount,
                    LikeCount             = p.LikeCount,
                    IsCurrentUserDisliked = p.DbEntity.UserLikes.Any(w => w.UserInfoId == currUserId && w.LikeStatus == LikeStatus.Dislike),
                    IsCurrentUserLiked    = p.DbEntity.UserLikes.Any(w => w.UserInfoId == currUserId && w.LikeStatus == LikeStatus.Like),

                    Content  = p.DbEntity.Content,
                    Id       = p.DbEntity.Id,
                    UserInfo = new UserInfoExtraSmall()
                    {
                        AppUserId    = p.DbEntity.UserInfo.AppUserId,
                        UserName     = p.DbEntity.UserInfo.UName,
                        ProfileImage = p.DbEntity.UserInfo.ProfilePicture.SmallPath
                    }
                });
                return(asd.ToPaginatedList(reviewPageIndex, reviewPageSize, _dbEntitySet.Where(p => p.PostId == postId && p.IsPublished).Count()));
            }
            else if (order == "publishDate")
            {
                ret = _dbEntitySet.AsNoTracking()
                      .Where(p => p.PostId == postId && p.IsPublished)
                      .Include(p => p.UserLikes)
                      .OrderByDescending(p => p.DateUtcPublished)
                      .Skip((reviewPageIndex - 1) * reviewPageSize)
                      .Take(reviewPageSize)
                      .Select(p => new PostReviewDisplay()
                {
                    CommentCount = p.Comments.Count(),
                    DislikeCount = p.UserLikes.Where(q => q.LikeStatus == LikeStatus.Dislike).Count(),
                    LikeCount    = p.UserLikes.Where(q => q.LikeStatus == LikeStatus.Like).Count(),

                    IsCurrentUserDisliked = p.UserLikes.Any(w => w.LikeStatus == LikeStatus.Dislike && w.UserInfoId == currUserId),
                    IsCurrentUserLiked    = p.UserLikes.Any(w => w.LikeStatus == LikeStatus.Like && w.UserInfoId == currUserId),

                    Content  = p.Content,
                    Id       = p.Id,
                    UserInfo = new UserInfoExtraSmall()
                    {
                        AppUserId    = p.UserInfo.AppUserId,
                        UserName     = p.UserInfo.UName,
                        ProfileImage = p.UserInfo.ProfilePicture.SmallPath
                    }
                })
                      .ToPaginatedList(reviewPageIndex, reviewPageSize, _dbEntitySet.Where(p => p.PostId == postId && p.IsPublished).Count());
            }
            return(ret);
        }
Пример #50
0
        // GET: Vittories
        public async Task <IActionResult> Welcome(
            string sortOrder,
            string currentFilter,
            string searchString,
            int?page)
        {
            // Sorting
            ViewData["CurrentSort"]        = sortOrder;
            ViewData["AllenatoreSortParm"] = sortOrder == "allenatore" ? "allenatore_desc" : "allenatore";
            ViewData["TrofeoSortParm"]     = sortOrder == "trofeo" ? "trofeo_desc" : "trofeo";
            ViewData["StagioneSortParm"]   = String.IsNullOrEmpty(sortOrder) ? "stagione_desc" : "";

            //Filtering
            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }
            ViewData["CurrentFilter"] = searchString;

            // Query
            var vittorie = from m in _context.Vittorie
                           .Include(s => s.Trofei)
                           select m;

            if (!String.IsNullOrEmpty(searchString))
            {
                vittorie = vittorie.Where(s => s.Allenatore.Contains(searchString) ||
                                          s.Stagione.Contains(searchString) ||
                                          s.Trofei.Trofeo.Contains(searchString));
            }

            switch (sortOrder)
            {
            case "allenatore_desc":
                vittorie = vittorie.OrderByDescending(s => s.Allenatore);
                break;

            case "allenatore":
                vittorie = vittorie.OrderBy(s => s.Allenatore);
                break;

            case "trofeo_desc":
                vittorie = vittorie.OrderByDescending(s => s.Trofei.Trofeo);
                break;

            case "trofeo":
                vittorie = vittorie.OrderBy(s => s.Trofei.Trofeo);
                break;

            case "stagione_desc":
                vittorie = vittorie.OrderByDescending(s => s.Stagione);
                break;

            default:
                vittorie = vittorie.OrderBy(s => s.Stagione);
                break;
            }

            int pageSize = 10;

            return(View(await PaginatedList <Vittorie> .CreateAsync(vittorie.AsNoTracking(), page ?? 1, pageSize)));
        }
Пример #51
0
 public static PaginatedList <TDestination> ToPaginatedList <TDestination>(this IQueryable <TDestination> queryable, int pageNumber, int pageSize)
 => PaginatedList <TDestination> .Create(queryable, pageNumber, pageSize);
        // GET: Peminjamen
        public async Task <IActionResult> Index(string pnjm, string searchString, string sortOrder, string currentFilter, int?pageNumber)
        {
            //list menyimpan ketersediaan
            var pnjmList = new List <string>();

            //query mengambil data
            var pnjmQuery = from d in _context.Peminjaman orderby d.IdPeminjaman select d.IdPeminjaman.ToString();

            pnjmList.AddRange(pnjmQuery.Distinct());

            //Menampilkan di view
            ViewBag.pnjm = new SelectList(pnjmList);

            //memanggil db context
            var menu = from m in _context.Peminjaman.Include(k => k.IdCustomerNavigation).Include(k => k.IdJaminanNavigation).Include(k => k.IdKendaraanNavigation) select m;

            //memilih dropdownlist IdPeminjaman.ToString()
            if (!string.IsNullOrEmpty(pnjm))
            {
                menu = menu.Where(x => x.IdPeminjaman.ToString() == pnjm);
            }

            //Search data
            if (!string.IsNullOrEmpty(searchString))
            {
                menu = menu.Where(s => s.Biaya.ToString().Contains(searchString) || s.IdCustomerNavigation.NamaCustomer.Contains(searchString) ||
                                  s.IdJaminanNavigation.NamaJaminan.Contains(searchString) || s.IdKendaraanNavigation.NamaKendaraan.Contains(searchString));
            }

            //Membuat pagedlist
            ViewData["currentSort"] = sortOrder;

            if (searchString != null)
            {
                pageNumber = 1;
            }
            else
            {
                searchString = currentFilter;
            }

            ViewData["currentFilter"] = searchString;

            //definisi jum;ah data pada halaman
            int pageSize = 5;

            //Sorting data
            ViewData["NameSortParam"]      = string.IsNullOrEmpty(sortOrder)?"name_desc" : "";
            ViewData["DateSortParam"]      = sortOrder == "Date"? "date_desc" : "Date";
            ViewData["BiayaSortParam"]     = sortOrder == "Biaya" ? "biaya_desc" : "Biaya";
            ViewData["JaminanSortParam"]   = sortOrder == "Jaminan"? "jaminan_desc" : "Jaminan";
            ViewData["KendaraanSortParam"] = sortOrder == "Kendaraan" ? "kendaraan_desc" : "Kendaraan";

            switch (sortOrder)
            {
            case "name_desc":
                menu = menu.OrderByDescending(s => s.IdCustomerNavigation.NamaCustomer);
                break;

            case "Date":
                menu = menu.OrderBy(s => s.TglPeminjaman);
                break;

            case "date_desc":
                menu = menu.OrderByDescending(s => s.TglPeminjaman);
                break;

            case "Biaya":
                menu = menu.OrderBy(s => s.Biaya);
                break;

            case "biaya_desc":
                menu = menu.OrderByDescending(s => s.Biaya);
                break;

            case "Jaminan":
                menu = menu.OrderBy(s => s.IdJaminanNavigation.NamaJaminan);
                break;

            case "jaminan_desc":
                menu = menu.OrderByDescending(s => s.IdJaminanNavigation.NamaJaminan);
                break;

            case "Kendaraan":
                menu = menu.OrderBy(s => s.IdKendaraanNavigation.NamaKendaraan);
                break;

            case "kendaraan_desc":
                menu = menu.OrderByDescending(s => s.IdKendaraanNavigation.NamaKendaraan);
                break;

            default:
                menu = menu.OrderBy(s => s.IdCustomerNavigation.NamaCustomer);
                break;
            }


            return(View(await PaginatedList <Peminjaman> .CreateAsync(menu.AsNoTracking(), pageNumber ?? 1, pageSize)));
            //return View(await menu.ToListAsync());
        }
Пример #53
0
 public static Task <PaginatedList <TDestination> > ToPaginatedListAsync <TDestination>(this IQueryable <TDestination> queryable, int pageNumber, int pageSize)
 => PaginatedList <TDestination> .CreateAsync(queryable, pageNumber, pageSize);
Пример #54
0
        public PaginatedList <PostReviewDisplay> GetPostReviews(int postId, int reviewPageIndex, int reviewPageSize, string order = "publishDate")
        {
            PaginatedList <PostReviewDisplay> ret = new PaginatedList <PostReviewDisplay>();

            if (order == "best")
            {
                IQueryable <PostReviewDisplay> reviews = _dbEntitySet.AsNoTracking()
                                                         .Where(p => p.PostId == postId && p.IsPublished)
                                                         .Include(p => p.UserLikes)
                                                         .OrderByDescending(p => p.UserLikes.Select(f => f.LikeStatus == LikeStatus.Like).Count() - p.UserLikes.Select(f => f.LikeStatus == LikeStatus.Dislike).Count())
                                                         .Skip((reviewPageIndex - 1) * reviewPageSize)
                                                         .Take(reviewPageSize)
                                                         .Select(p => new PostReviewDisplay()
                {
                    CommentCount          = p.Comments.Count(),
                    DislikeCount          = p.UserLikes.Where(q => q.LikeStatus == LikeStatus.Dislike).Count(),
                    LikeCount             = p.UserLikes.Where(q => q.LikeStatus == LikeStatus.Like).Count(),
                    IsCurrentUserDisliked = false,
                    IsCurrentUserLiked    = false,

                    Content  = p.Content,
                    Id       = p.Id,
                    UserInfo = new UserInfoExtraSmall()
                    {
                        AppUserId    = p.UserInfo.AppUserId,
                        UserName     = p.UserInfo.UName,
                        ProfileImage = p.UserInfo.ProfilePicture.SmallPath
                    }
                });

                ret = reviews.ToPaginatedList(reviewPageIndex, reviewPageSize, _dbEntitySet.Where(p => p.PostId == postId && p.IsPublished).Count());
            }
            else if (order == "publishDate")
            {
                IQueryable <PostReviewDisplay> reviews = _dbEntitySet.AsNoTracking()
                                                         .Where(p => p.PostId == postId && p.IsPublished)
                                                         .Include(p => p.UserLikes)
                                                         .OrderByDescending(p => p.DateUtcPublished)
                                                         .Skip((reviewPageIndex - 1) * reviewPageSize)
                                                         .Take(reviewPageSize)
                                                         .Select(p => new PostReviewDisplay()
                {
                    CommentCount          = p.Comments.Count(),
                    DislikeCount          = p.UserLikes.Where(q => q.LikeStatus == LikeStatus.Dislike).Count(),
                    LikeCount             = p.UserLikes.Where(q => q.LikeStatus == LikeStatus.Like).Count(),
                    Content               = p.Content,
                    IsCurrentUserDisliked = false,
                    IsCurrentUserLiked    = false,
                    Id       = p.Id,
                    UserInfo = new UserInfoExtraSmall()
                    {
                        AppUserId    = p.UserInfo.AppUserId,
                        UserName     = p.UserInfo.UName,
                        ProfileImage = p.UserInfo.ProfilePicture.SmallPath
                    }
                });

                ret = reviews.ToPaginatedList(reviewPageIndex, reviewPageSize, _dbEntitySet.Where(p => p.PostId == postId && p.IsPublished).Count());
            }
            return(ret);
        }
Пример #55
0
        // GET: Dateks
        public async Task <IActionResult> Index(string sortOrder, string searchString, string currentFilter, int?page)
        {
            ViewData["NameSortParm"] = String.IsNullOrEmpty(sortOrder) ? "name_desc" : "";
            ViewData["DateSortParm"] = sortOrder == "Date" ? "date_desc" : "Date";
            ViewData["CurrentSort"]  = sortOrder;

            if (searchString != null)
            {
                page = 1;  // Start on Page
            }
            else
            {
                searchString = currentFilter;
            }

            ViewData["CurrentFilter"] = searchString;

            var dateks = from s in _context.Dateks
                         select s;

            // Searching
            if (!String.IsNullOrEmpty(searchString))
            {
                dateks = dateks.Where(s => s.Name.Contains(searchString) ||
                                      s.Alamat.Contains(searchString) ||
                                      s.AO.Contains(searchString) ||
                                      s.AreaCode.Contains(searchString) ||
                                      s.Dat.Contains(searchString) ||
                                      s.Gpon.Contains(searchString) ||
                                      s.Komen.Contains(searchString) ||
                                      s.KomenItenos.Contains(searchString) ||    // Search for each Var
                                      s.Metro.Contains(searchString) ||
                                      s.Pic.Contains(searchString) ||
                                      s.SID.Contains(searchString) ||
                                      s.SN.Contains(searchString) ||
                                      s.Status.Contains(searchString) ||
                                      s.ServiceOrder.Contains(searchString) ||
                                      s.TaggingODP.Contains(searchString) ||
                                      s.TaggingPelanggan.Contains(searchString) ||
                                      s.TeknisiPTmin1.Contains(searchString) ||
                                      s.TeknisiSurvei.Contains(searchString) ||
                                      s.TQ.Contains(searchString) ||
                                      s.Vlan.Contains(searchString));
            }
            // Sorting
            switch (sortOrder)
            {
            case "ServiceOrder":
                dateks = dateks.OrderBy(s => s.ServiceOrder);        // Sort Ascending
                break;

            case "ServiceOrder_desc":
                dateks = dateks.OrderByDescending(s => s.ServiceOrder);      // Sort Decending
                break;                                                       // Ect

            case "SID":
                dateks = dateks.OrderBy(s => s.SID);
                break;

            case "SID_desc":
                dateks = dateks.OrderByDescending(s => s.SID);
                break;

            case "TQ":
                dateks = dateks.OrderBy(s => s.TQ);
                break;

            case "TQ_desc":
                dateks = dateks.OrderByDescending(s => s.TQ);
                break;

            case "AO":
                dateks = dateks.OrderBy(s => s.AO);
                break;

            case "AO_desc":
                dateks = dateks.OrderByDescending(s => s.AO);
                break;

            case "name_desc":
                dateks = dateks.OrderByDescending(s => s.Name);
                break;

            case "Date":
                dateks = dateks.OrderBy(s => s.TglOrderItenos);
                break;

            case "date_desc":
                dateks = dateks.OrderByDescending(s => s.TglOrderItenos);
                break;

            case "Alamat":
                dateks = dateks.OrderBy(s => s.Alamat);
                break;

            case "Alamat_desc":
                dateks = dateks.OrderByDescending(s => s.Alamat);
                break;

            case "KomenItenos":
                dateks = dateks.OrderBy(s => s.KomenItenos);
                break;

            case "KomenItenos_desc":
                dateks = dateks.OrderByDescending(s => s.KomenItenos);
                break;

            case "Pic":
                dateks = dateks.OrderBy(s => s.Pic);
                break;

            case "Pic_desc":
                dateks = dateks.OrderByDescending(s => s.Pic);
                break;

            case "AreaCode":
                dateks = dateks.OrderBy(s => s.AreaCode);
                break;

            case "AreaCode_desc":
                dateks = dateks.OrderByDescending(s => s.AreaCode);
                break;

            case "Metro":
                dateks = dateks.OrderBy(s => s.Metro);
                break;

            case "Metro_desc":
                dateks = dateks.OrderByDescending(s => s.Metro);
                break;

            case "Datek":
                dateks = dateks.OrderBy(s => s.Dat);
                break;

            case "Datek_desc":
                dateks = dateks.OrderByDescending(s => s.Dat);
                break;

            case "Gpon":
                dateks = dateks.OrderBy(s => s.Gpon);
                break;

            case "Gpon_desc":
                dateks = dateks.OrderByDescending(s => s.Gpon);
                break;

            case "SN":
                dateks = dateks.OrderBy(s => s.SN);
                break;

            case "SN_desc":
                dateks = dateks.OrderByDescending(s => s.SN);
                break;

            case "Vlan":
                dateks = dateks.OrderBy(s => s.Vlan);
                break;

            case "Vlan_desc":
                dateks = dateks.OrderByDescending(s => s.Vlan);
                break;

            case "TglPerintahSurvei":
                dateks = dateks.OrderBy(s => s.TglPerintahSurvei);
                break;

            case "TglPerintahSurvei_desc":
                dateks = dateks.OrderByDescending(s => s.TglPerintahSurvei);
                break;

            case "TglHasilSurvei":
                dateks = dateks.OrderBy(s => s.TglHasilSurvei);
                break;

            case "TglHasilSurvei_desc":
                dateks = dateks.OrderByDescending(s => s.TglHasilSurvei);
                break;

            case "TaggingPelanggan":
                dateks = dateks.OrderBy(s => s.TaggingPelanggan);
                break;

            case "TaggingPelanggan_desc":
                dateks = dateks.OrderByDescending(s => s.TaggingPelanggan);
                break;

            case "TeknisiSurvei":
                dateks = dateks.OrderBy(s => s.TeknisiSurvei);
                break;

            case "TeknisiSurvei_desc":
                dateks = dateks.OrderByDescending(s => s.TeknisiSurvei);
                break;

            case "TaggingODP":
                dateks = dateks.OrderBy(s => s.TaggingPelanggan);
                break;

            case "TaggingODP_desc":
                dateks = dateks.OrderByDescending(s => s.TaggingODP);
                break;

            case "TglPerintahPT1":
                dateks = dateks.OrderBy(s => s.TglPerintahPT1);
                break;

            case "TglPerintahPT1_desc":
                dateks = dateks.OrderByDescending(s => s.TglPerintahPT1);
                break;

            case "TglSelesaiPT-1":
                dateks = dateks.OrderBy(s => s.TglSelesaiPTmin1);
                break;

            case "TglSelesaiPT-1_desc":
                dateks = dateks.OrderByDescending(s => s.TglSelesaiPTmin1);
                break;

            case "TeknisiPT-1":
                dateks = dateks.OrderBy(s => s.TeknisiPTmin1);
                break;

            case "TeknisiPT-1_desc":
                dateks = dateks.OrderByDescending(s => s.TeknisiPTmin1);
                break;

            case "TglPerintahJT":
                dateks = dateks.OrderBy(s => s.TglPerintahJT);
                break;

            case "TglPerintahJT_desc":
                dateks = dateks.OrderByDescending(s => s.TglPerintahJT);
                break;

            case "TglJTSelesai":
                dateks = dateks.OrderBy(s => s.TglJTSelesai);
                break;

            case "TglJTSelesai_desc":
                dateks = dateks.OrderByDescending(s => s.TglJTSelesai);
                break;

            case "Komen":
                dateks = dateks.OrderBy(s => s.Komen);
                break;

            case "Komen_desc":
                dateks = dateks.OrderByDescending(s => s.Komen);
                break;

            case "TglClosed":
                dateks = dateks.OrderBy(s => s.TglClosed);
                break;

            case "TglClosed_desc":
                dateks = dateks.OrderByDescending(s => s.TglClosed);
                break;

            case "Status":
                dateks = dateks.OrderBy(s => s.Status);
                break;

            case "Status_desc":
                dateks = dateks.OrderByDescending(s => s.Status);
                break;

            default:
                dateks = dateks.OrderBy(s => s.Name);
                break;
            }
            int pageSize = 5;  // Data on Each Page

            return(View(await PaginatedList <Datek> .CreateAsync(dateks.AsNoTracking(), page ?? 1, pageSize)));
        }