public static IQueryable <ProjectListDto> FilterProjectBy( this IQueryable <ProjectListDto> projects, ProjectFilterBy filterBy, string filterValue) { if (string.IsNullOrEmpty(filterValue)) { return(projects); } switch (filterBy) { case ProjectFilterBy.NoFilter: return(projects); case ProjectFilterBy.Type: var filterval = filterValue.ParseEnum <ProjectType>(); return(projects.Where(x => x.Type == filterval)); case ProjectFilterBy.Contractory: int contractorId = int.Parse(filterValue); return(projects.Where(x => x.ContractorId == contractorId)); default: throw new ArgumentOutOfRangeException (nameof(filterBy), filterBy, null); } }
public IEnumerable <DropdownTuple> GetFilterDropDownValues(ProjectFilterBy filterBy) { switch (filterBy) { case ProjectFilterBy.NoFilter: return(new List <DropdownTuple>()); case ProjectFilterBy.Type: return(Enum.GetValues(typeof(ProjectType)) .Cast <ProjectType>().Select(v => new DropdownTuple { Value = v.ToString(), Text = v.ToString() })); case ProjectFilterBy.Contractory: return(_db.Contractors.Select(v => new DropdownTuple { Value = v.Id.ToString(), Text = v.Name.ToString() })); default: throw new ArgumentOutOfRangeException(nameof(filterBy), filterBy, null); } }
public dtoDisplayTimelineContext(dtoProjectContext context, Int32 idContainerCommunity, PageContainerType container, PageListType currentPage, PageListType fromPage, SummaryTimeLine timeline, SummaryDisplay display, ProjectFilterBy filterBy = ProjectFilterBy.All, ItemsGroupBy groupBy = ItemsGroupBy.None, ItemListStatus status = ItemListStatus.All) { FromPage = fromPage; ProjectContext = context; FromPage = fromPage; CurrentPage = currentPage; IdContainerCommunity = idContainerCommunity; Display = display; FilterBy = filterBy; ContainerTimeline = timeline; Container = container; GroupBy = groupBy; Status = status; }
public static String ProjectListManager(int idCommunity, Boolean forPortal, Boolean isPersonal, Boolean fromCookies = false, long idProject = 0, ItemsGroupBy groupBy = ItemsGroupBy.None, ProjectFilterBy filterBy = ProjectFilterBy.All, ItemListStatus filterStatus = ItemListStatus.All, SummaryTimeLine timeline = SummaryTimeLine.Week, SummaryDisplay display = SummaryDisplay.All) { return(modulehome + "ListManager.aspx?" + (idCommunity > 0 ? "&cId=" + idCommunity.ToString() : "") + "&isPortal=" + forPortal.ToString() + "&isPersonal=" + isPersonal.ToString() + (fromCookies ? "&fromCookies=true" : "") + GetFilterParameters(groupBy, filterBy, filterStatus, timeline, display) + (idProject == 0 ? "" : "#" + idProject.ToString())); }
public static String GetFilterParameters(ItemsGroupBy groupBy = ItemsGroupBy.None, ProjectFilterBy filterBy = ProjectFilterBy.All, ItemListStatus filterStatus = ItemListStatus.All, SummaryTimeLine timeline = SummaryTimeLine.Week, SummaryDisplay display = SummaryDisplay.All) { return(groupBy == ItemsGroupBy.None ? "" : "&grp=" + groupBy.ToString() + "&fltBy=" + filterBy.ToString() + "&fltSts=" + filterStatus.ToString() + "&tml=" + timeline.ToString() + "&smd=" + display.ToString()); }
public static String Dashboard(dtoProjectContext context, long idProject, Int32 idContainerCommunity, PageContainerType container, PageListType fromPage, PageListType toPage, SummaryTimeLine timeline, SummaryDisplay display, ProjectFilterBy filterBy, ItemsGroupBy groupBy, ItemListStatus status, UserActivityStatus actStatus = UserActivityStatus.Ignore, SummaryTimeLine actTimeline = SummaryTimeLine.Week) { return(Dashboard(new dtoDisplayTimelineContext(context, idContainerCommunity, container, fromPage, timeline, display, filterBy, groupBy, status), idProject, toPage, actStatus, actTimeline)); }
public static String SummaryUser(Int32 idUser, ProjectFilterBy by, ItemListStatus status, Int32 idCommunity = -100) { return(All + "_" + idUser.ToString() + "_" + by.ToString() + "_" + status.ToString() + ((idCommunity == -100 || (by != ProjectFilterBy.AllPersonalFromCurrentCommunity && by != ProjectFilterBy.CurrentCommunity)) ? "" : "_" + idCommunity.ToString())); }
public void InitView(dtoProjectContext context, Int32 idContainerCommunity, Boolean loadFromCookies, TabListItem tab, PageContainerType container, PageListType fromPage, PageListType currentPageType, ItemsGroupBy preloadGroupBy, ProjectFilterBy pFilterBy, ItemListStatus pProjectsStatus, ItemListStatus pActivitiesStatus, SummaryTimeLine pFilterTimeLine = SummaryTimeLine.Week, SummaryDisplay pFilterDisplay = SummaryDisplay.All, long idProject = 0, UserActivityStatus pUserActivitiesStatus = UserActivityStatus.Ignore, SummaryTimeLine pUserActivitiesTimeLine = SummaryTimeLine.Week) { Person p = CurrentManager.GetPerson(UserContext.CurrentUserID); View.PageContext = context; View.PageContainer = container; View.PageType = currentPageType; View.CurrentFromPage = fromPage; View.CurrendIdProject = idProject; View.IdContainerCommunity = idContainerCommunity; View.CurrentActivityStatus = pUserActivitiesStatus; View.CurrentActivityTimeLine = pUserActivitiesTimeLine; if (UserContext.isAnonymous || p == null) { View.DisplaySessionTimeout(); } else { View.CookieName = View.CookieStartName + container.ToString() + tab.ToString(); dtoItemsFilter filter = null; if (loadFromCookies) { filter = View.GetSavedFilters; View.CurrentActivityStatus = filter.UserActivitiesStatus; View.CurrentActivityTimeLine = filter.UserActivitiesTimeLine; idProject = filter.IdProject; View.CurrendIdProject = idProject; } if (filter == null) { filter = dtoItemsFilter.GenerateForGroup(container, (preloadGroupBy == ItemsGroupBy.None) ? ItemsGroupBy.Plain : preloadGroupBy); if (preloadGroupBy != ItemsGroupBy.None) { filter.FilterBy = pFilterBy; filter.ProjectsStatus = pProjectsStatus; filter.Display = pFilterDisplay; filter.TimeLine = pFilterTimeLine; filter.ActivitiesStatus = pActivitiesStatus; filter.UserActivitiesStatus = pUserActivitiesStatus; filter.UserActivitiesTimeLine = pUserActivitiesTimeLine; } filter.IdProject = idProject; } LoadFilters(p, context, filter, container, currentPageType, fromPage, pFilterTimeLine, idProject); View.SaveCurrentFilters(filter); View.InitializeTabs(Service.GetAvailableTabs(p.Id, context, container), tab, filter, context); LoadSummary(context, idContainerCommunity, currentPageType, fromPage, p, idProject, filter, pFilterTimeLine, pFilterDisplay, (context.IdCommunity > 0 ? context.IdCommunity : -100)); } }
private void LoadSummary(dtoProjectContext context, Int32 idContainerCommunity, PageListType currentPageType, PageListType fromPage, Person person, SummaryTimeLine timeline, SummaryDisplay display, ProjectFilterBy filter = ProjectFilterBy.All, ItemListStatus filterStatus = ItemListStatus.All, Int32 idCommunity = -100) { if (person.Id != UserContext.CurrentUserID) { View.DisplayUserName((person == null) ? "" : person.SurnameAndName); } LoadSummary(context, idContainerCommunity, currentPageType, fromPage, Service.GetSummary(person.Id, filter, filterStatus, idCommunity), timeline, display); }