public RetrieveAllPagedResultOutput <GameTaskDto, long> RetrieveAllPagedResult(RetrieveAllGameTasksPagedResultInput input) { if (input.IsActive ?? true) { UowManager.Current.EnableFilter(Filters.IPassivableFilter); } GameTaskRepository.Includes.Add(r => r.LastModifierUser); GameTaskRepository.Includes.Add(r => r.CreatorUser); GameTaskRepository.Includes.Add(r => r.GameTaskType); GameTaskRepository.Includes.Add(r => r.Conditions); GameTaskRepository.Includes.Add(r => r.Tips); IQueryable <GameTask> gameTasksQuery = GameTaskPolicy.CanRetrieveManyEntities( GameTaskRepository.GetAll() .WhereIf(!input.GameTaskIds.IsNullOrEmpty(), r => input.GameTaskIds.Contains(r.Id)) .WhereIf(!String.IsNullOrEmpty(input.Name), r => r.Name.ToLower().Contains(input.Name.ToLower()))); int totalCount = gameTasksQuery.Count(); IReadOnlyList <GameTaskDto> gameTaskDtos = gameTasksQuery .OrderBy(r => r.Order).ThenByDescending(r => r.IsActive).ThenBy(r => r.Name) .Skip(input.SkipCount).Take(input.MaxResultCount) .ToList().MapIList <GameTask, GameTaskDto>().ToList(); GameTaskRepository.Includes.Clear(); return(new RetrieveAllPagedResultOutput <GameTaskDto, long>() { Items = gameTaskDtos, TotalCount = totalCount }); }
public RetrieveAllOutput <GameTaskDto, long> RetrieveAll(RetrieveAllGameTaskInput input) { if (input.IsActive ?? true) { UowManager.Current.EnableFilter(Filters.IPassivableFilter); } GameTaskRepository.Includes.Add(r => r.LastModifierUser); GameTaskRepository.Includes.Add(r => r.CreatorUser); GameTaskRepository.Includes.Add(r => r.GameTaskType); GameTaskRepository.Includes.Add(r => r.Conditions); GameTaskRepository.Includes.Add(r => r.Tips); IList <GameTask> gameTaskEntities = GameTaskPolicy.CanRetrieveManyEntities( GameTaskRepository.GetAll() .WhereIf(!input.GameTaskIds.IsNullOrEmpty(), r => input.GameTaskIds.Contains(r.Id)) .WhereIf(!String.IsNullOrEmpty(input.Name), r => r.Name.ToLower().Contains(input.Name.ToLower()))) .ToList(); IList <GameTaskDto> result = gameTaskEntities.MapIList <GameTask, GameTaskDto>(); GameTaskRepository.Includes.Clear(); return(new RetrieveAllOutput <GameTaskDto, long>() { RetrievedEntities = result }); }
public RetrieveAllGameTasksLikeComboBoxesOutput RetrieveAllGameTasksLikeComboBoxes(RetrieveAllGameTasksLikeComboBoxesInput input) { if (input.IsActive ?? true) { UowManager.Current.EnableFilter(Filters.IPassivableFilter); } IReadOnlyList <ComboboxItemDto> gameTasksLikeComboBoxes = GameTaskPolicy.CanRetrieveManyEntities( GameTaskRepository.GetAll()).ToList() .Select(r => new ComboboxItemDto(r.Id.ToString(), r.Name)).ToList(); return(new RetrieveAllGameTasksLikeComboBoxesOutput() { Items = gameTasksLikeComboBoxes }); }
public RetrieveOutput <GameTaskDto, long> Retrieve(RetrieveGameTaskInput input) { if (input.IsActive ?? true) { UowManager.Current.EnableFilter(Filters.IPassivableFilter); } GameTaskRepository.Includes.Add(r => r.LastModifierUser); GameTaskRepository.Includes.Add(r => r.CreatorUser); GameTaskRepository.Includes.Add(r => r.GameTaskType); GameTaskRepository.Includes.Add(r => r.Conditions); GameTaskRepository.Includes.Add(r => r.Tips); IList <GameTask> gameTaskEntities = GameTaskRepository.GetAll() .WhereIf(input.Id != null, r => r.Id == input.Id) .WhereIf(!String.IsNullOrEmpty(input.Name), r => r.Name.ToLower().Contains(input.Name.ToLower())) .ToList(); if (gameTaskEntities.Count != 1) { throw new CityQuestItemNotFoundException(CityQuestConsts.CityQuestItemNotFoundExceptionMessageBody, "\"GameTask\""); } if (!GameTaskPolicy.CanRetrieveEntity(gameTaskEntities.Single())) { throw new CityQuestPolicyException(CityQuestConsts.CQPolicyExceptionRetrieveDenied, "\"GameTask\""); } GameTaskDto gameTaskEntity = gameTaskEntities.Single().MapTo <GameTaskDto>(); GameTaskRepository.Includes.Clear(); return(new RetrieveOutput <GameTaskDto, long>() { RetrievedEntity = gameTaskEntity }); }