public List <FeedbackContract> GetFeedbacks(FeedbackCriteriaContract feedbackSearchCriteria) { m_authorizationManager.CheckUserCanManageFeedbacks(); var sortCriteria = feedbackSearchCriteria.SortCriteria; var categoriesContract = feedbackSearchCriteria.Categories; var categories = categoriesContract != null && categoriesContract.Count > 0 ? categoriesContract.Select(category => (FeedbackCategoryEnum)category).ToList() : null; var feedbacks = m_feedbackRepository.GetFeedbacks(categories, (FeedbackSortEnum)sortCriteria.SortByField, sortCriteria.SortAsc, feedbackSearchCriteria.Start, feedbackSearchCriteria.Count); var resultFeedbacks = Mapper.Map <List <FeedbackContract> >(feedbacks); if (feedbacks.Any(x => x.FeedbackType == FeedbackType.Headword)) { var headwordFeedbacks = feedbacks.Where(x => x.FeedbackType == FeedbackType.Headword).Cast <HeadwordFeedback>(); var headwordFeedbacksDetail = m_feedbackRepository.GetHeadwordFeedbacksById(headwordFeedbacks.Select(x => x.Id)); var headwordFeedbacksDetailDict = headwordFeedbacksDetail.ToDictionary(x => x.Id); foreach (var resultFeedback in resultFeedbacks.Where(x => x.FeedbackType == FeedbackTypeEnumContract.Headword)) { resultFeedback.HeadwordInfo = Mapper.Map <FeedbackHeadwordInfoContract>(headwordFeedbacksDetailDict[resultFeedback.Id].BookHeadword); } } return(resultFeedbacks); }
public int GetFeedbacksCount(FeedbackCriteriaContract feedbackSearchCriteria) { m_authorizationManager.CheckUserCanManageFeedbacks(); var categoriesContract = feedbackSearchCriteria.Categories; var categories = categoriesContract != null && categoriesContract.Count > 0 ? categoriesContract.Select(category => (FeedbackCategoryEnum)category).ToList() : null; return(m_feedbackRepository.GetFeedbacksCount(categories)); }
public ActionResult GetFeedbacksCount(IEnumerable <byte> categories) { var feedbackCriteria = new FeedbackCriteriaContract { Categories = categories?.Select(x => (FeedbackCategoryEnumContract)x).ToList() }; using (var client = GetMainServiceClient()) { var count = client.GetFeedbacksCount(feedbackCriteria); return(Json(count)); } }
public ActionResult GetFeedbacks(IEnumerable <byte> categories, int?start, int?count, byte sortCriteria, bool sortAsc) { var feedbackCriteria = new FeedbackCriteriaContract { Start = start, Count = count, Categories = categories?.Select(x => (FeedbackCategoryEnumContract)x).ToList(), SortCriteria = new FeedbackSortCriteriaContract { SortAsc = sortAsc, SortByField = (FeedbackSortEnum)sortCriteria } }; using (var client = GetMainServiceClient()) { var results = client.GetFeedbacks(feedbackCriteria); return(Json(results)); } }
public int GetFeedbacksCount(FeedbackCriteriaContract feedbackSearchCriteria) { return(m_feedbackManager.GetFeedbacksCount(feedbackSearchCriteria)); }
public List <FeedbackContract> GetFeedbacks(FeedbackCriteriaContract feedbackSearchCriteria) { return(m_feedbackManager.GetFeedbacks(feedbackSearchCriteria)); }