コード例 #1
0
        public async Task <IPagedList <Ticket> > ListTicketsAsync(int pageIndex, TdDomainContext context)
        {
            var filterColumns = CurrentListSetting.FilterColumns.ToList();

            //if filtering by project, add filter for selected project
            var projectId = await context.UserSettingsManager.GetUserSelectedProjectIdAsync(context);

            if (projectId != default(int))
            {
                filterColumns.Add(new UserTicketListFilterColumn("ProjectId", true, projectId));
            }
            DisplayProjects = context.Projects.Count() > 1;

            DateTime toDate   = Convert.ToDateTime(filterColumns.FirstOrDefault(w => w.ColumnName.Equals("ToDate")).ColumnValue);
            DateTime fromDate = Convert.ToDateTime(filterColumns.FirstOrDefault(w => w.ColumnName.Equals("FromDate")).ColumnValue);

            var sortColumns = CurrentListSetting.SortColumns.ToList();
            var pageSize    = CurrentListSetting.ItemsPerPage;
            var query       = context.GetObjectQueryFor(context.Tickets);

            query = filterColumns.ApplyToQuery(query);
            query = sortColumns.ApplyToQuery(query);
            if (query != null)
            {
                Expression <Func <Ticket, bool> > filter = m => m.DueDate >= toDate && m.DueDate <= fromDate;
                query = query.Where(filter) as ObjectQuery <Ticket>;
            }
            return(await query.ToPagedListAsync(pageIndex, pageSize));
        }
コード例 #2
0
        public async Task<IPagedList<Ticket>> ListTicketsAsync(int pageIndex, TdDomainContext context)
        {
            var filterColumns = CurrentListSetting.FilterColumns.ToList();

            //if filtering by project, add filter for selected project
            var projectId = await context.UserSettingsManager.GetUserSelectedProjectIdAsync(context);
            if (projectId != default(int))
            {
                filterColumns.Add(new UserTicketListFilterColumn("ProjectId", true, projectId));
            }

            DisplayProjects = context.Projects.Count() > 1;


            var sortColumns = CurrentListSetting.SortColumns.ToList();
            var pageSize = CurrentListSetting.ItemsPerPage;
            var query = context.GetObjectQueryFor(context.Tickets);

            query = filterColumns.ApplyToQuery(query);
            query = sortColumns.ApplyToQuery(query);

            return await query.ToPagedListAsync(pageIndex, pageSize);
        }
コード例 #3
0
        public async Task <IPagedList <Ticket> > ListTicketsAsync(int pageIndex, TdDomainContext context)
        {
            var filterColumns = CurrentListSetting.FilterColumns.ToList();

            //if filtering by project, add filter for selected project
            var projectId = await context.UserSettingsManager.GetUserSelectedProjectIdAsync(context);

            if (projectId != default(int))
            {
                filterColumns.Add(new UserTicketListFilterColumn("ProjectId", true, projectId));
            }

            DisplayProjects = context.Projects.Count() > 1;


            var sortColumns = CurrentListSetting.SortColumns.ToList();
            var pageSize    = CurrentListSetting.ItemsPerPage;
            var query       = context.GetObjectQueryFor(context.Tickets);

            query = filterColumns.ApplyToQuery(query);
            query = sortColumns.ApplyToQuery(query);

            return(await query.ToPagedListAsync(pageIndex, pageSize));
        }