Esempio n. 1
0
        public async Task <IActionResult> TodoBadgeCalculator()
        {
            var entities = (await _todoService.ListAsync(statuses: EN_TodoStatus.GetAll().Select(t => t.ID).ToArray(), searchString: null)).ToList();

            return(Ok(new
            {
                todo = entities.Where(t => EN_TodoStatus.GetAll().Where(t => t.ID != EN_TodoStatus.Completed.ID && t.ID != EN_TodoStatus.Deleted.ID).Select(t => t.ID).Contains(t.TD_StatusID)).Count(),
                important = entities.Where(t => t.TD_Important == true && EN_TodoStatus.GetAll().Where(t => t.ID != EN_TodoStatus.Completed.ID && t.ID != EN_TodoStatus.Deleted.ID).Select(t => t.ID).Contains(t.TD_StatusID)).Count(),
                done = entities.Where(t => t.TD_StatusID == EN_TodoStatus.Completed.ID).Count(),
                trash = entities.Where(t => t.TD_StatusID == EN_TodoStatus.Deleted.ID).Count()
            }));
        }
Esempio n. 2
0
            public ProfileConfig() : base(nameof(ProfileConfig))
            {
                AllowNullCollections       = true;
                AllowNullDestinationValues = true;

                CreateMap <Todo_Master, TodoDTO>()
                .ForMember(m => m.TD_Priority, o => o.MapFrom(s => (int)s.TD_Priority))
                .ForMember(m => m.TD_Deadline, o => o.MapFrom(s => (int)s.TD_Deadline))
                .ForMember(m => m.PriorityCss, o => o.MapFrom(s => s.TD_Priority.ToCssPriority()))
                .ForMember(m => m.StatusCss, o => o.MapFrom(s => EN_TodoStatus.FromID(s.TD_StatusID).ToCssStatus()))
                .ForMember(m => m.ImportantCss, o => o.MapFrom(s => s.TD_Important ? " todo-task-important " : ""));

                CreateMap <TodoDTO, Todo_Master>()
                .EqualityComparison((s, d) => s.TD_ID != 0 && s.TD_ID == d.TD_ID)
                .ForMember(m => m.TD_ID, o => o.Ignore())
                .ForMember(m => m.TD_Priority, o => o.MapFrom(s => (TodoPriorityEnum)s.TD_Priority))
                .ForMember(m => m.TD_Deadline, o => o.MapFrom(s => (TodoDeadlineEnum)s.TD_Deadline));
            }
Esempio n. 3
0
        public async Task <bool> ChangeStatusAsync(int todoId, short statusId)
        {
            var todo = await FindAsync(todoId : todoId);

            if (todo == null)
            {
                return(false);
            }

            if (EN_TodoStatus.FromID(statusId) == null)
            {
                return(false);
            }

            todo.TD_StatusDate = todo.TD_StatusID == statusId ? todo.TD_StatusDate : DateTime.Now;
            todo.TD_StatusID   = statusId;

            await _repository.UpdateAsync(todo);

            await _repository.UnitOfWork.SaveEntitiesAsync();

            return(true);
        }