예제 #1
0
        public FilteredListInformation <TaskViewModel, TaskCriteria> Get(FilteredListInformation <TaskViewModel, TaskCriteria> listInformation)
        {
            var tasks = repositoryService.GetAll <Task>();
            var items = objectMapper.Map <IEnumerable <TaskViewModel> >(tasks);

            listService.UpdateListInformation(listInformation, items);

            return(listInformation);
        }
예제 #2
0
        /// <summary>
        /// Process list information
        /// </summary>
        /// <param name="listInformation">ListInformation[of T]<seealso cref="ListInformation{T}"/></param>
        /// <param name="items">List items to be processed</param>
        public void UpdateListInformation <TCriteria>(FilteredListInformation <T, TCriteria> listInformation, IEnumerable <T> items) where TCriteria : class, IBaseModel
        {
            if (listInformation == null)
            {
                return;
            }

            UpdateListInformation((ListInformation <T>)listInformation, items);

            formService.UpdateFormInformation(listInformation.FilterFormInformation);
        }
예제 #3
0
 public IActionResult Get(FilteredListInformation <TaskViewModel, TaskCriteria> listInformation)
 {
     return(Json(taskService.Get(listInformation)));
 }
 public IActionResult Get(FilteredListInformation <AssignmentViewModel, AssignmentCriteria> listInformation)
 {
     return(Json(todoService.GetWorklistItems(listInformation)));
 }
예제 #5
0
        public FilteredListInformation <AssignmentViewModel, AssignmentCriteria> GetWorklistItems(FilteredListInformation <AssignmentViewModel, AssignmentCriteria> listInformation)
        {
            if (listInformation == null)
            {
                return(null);
            }

            var personId = listInformation?.FilterFormInformation?.Model?.PersonID ?? 0;
            var result   = from a in this.context.Set <Data.Assignment>()
                           join p in this.context.Set <Person>() on a.AssignedToID equals p.ID
                           join t in this.context.Set <Task>() on a.TaskID equals t.ID
                           where personId == 0 || a.AssignedToID == personId
                           select new Models.Assignment()
            {
                AssignmentDescription = t.Name,
                AssignedToID          = a.AssignedToID,
                AssignedOn            = a.AssignedOn,
                AssignedToFirstName   = p.FirstName,
                AssignedToLastName    = p.LastName,
                AssignedToMiddleName  = p.MiddleName,
                DueOn      = (t.DueInMinutes ?? 0) > 0 ? a.AssignedOn.AddMinutes(t.DueInMinutes.Value) : default(DateTime?),
                EscalateOn = (t.EscalateInMinutes ?? 0) > 0 ? a.AssignedOn.AddMinutes(t.EscalateInMinutes.Value) : default(DateTime?),
                Escalated  = a.Escalated ?? false,
            };

            var items = result
                        .GroupBy(r => new Models.Assignment()
            {
                AssignmentDescription = r.AssignmentDescription,
                AssignedOn            = r.AssignedOn,
                DueOn      = r.DueOn,
                EscalateOn = r.EscalateOn,
                Escalated  = r.Escalated
            })
                        .Select(r => mapper.Map <AssignmentViewModel>(r))
                        .ToList();

            listService.UpdateListInformation(listInformation, items);

            return(listInformation);
        }