Пример #1
0
        public ValidationMessageCollection ValidateRaise(RaiseTaskRequest request)
        {
            var assignedTo         = request.AssignedToId.HasValue ? _userRepository.GetById(request.AssignedToId.Value) : null;
            var type               = request.TypeId.HasValue ? _taskTypeRepository.GetById(request.TypeId.Value) : null;
            var currentUser        = _userRepository.GetByUsername(request.UserName);
            var validationMessages = Task.ValidateRaise(request.Description, assignedTo, type, currentUser);

            return(validationMessages);
        }
Пример #2
0
        public TodoTask TaskViewModelToTodoTask(TodoTaskViewModel model)
        {
            int typeId   = int.Parse(model.Type);
            var taskType = _typeReposiotry.GetById(typeId);

            return(new TodoTask()
            {
                Id = model.Id,
                Title = model.Title,
                Description = model.Description,
                Priority = model.Priority,
                TodoStatus = model.TodoStatus,
                TaskTypeId = taskType.Id,
                UserId = model.UserId
            });
        }
Пример #3
0
        /// <summary>
        /// Проверка существования типа задачи
        /// </summary>
        /// <param name="id">Идентификатор типа задачи</param>
        /// <param name="message">Сообщение об ошибке</param>
        /// <returns>Тип задачи</returns>
        public TaskType CheckTaskTypeExistence(short id, string message = "")
        {
            var val = taskTypeRepository.GetById(id);

            ValidationUtils.NotNull(val, String.IsNullOrEmpty(message) ? "Тип задачи не найден. Возможно, он был удален." : message);

            return(val);
        }
Пример #4
0
        public async Task <UserTask> UpdateUserTask(UpdateTaskRequest updateTaskRequest)
        {
            var userTask = await _userTaskRepository.GetById(updateTaskRequest.UserTaskID);

            var taskTypeIsValid = await _taskTypeRepository.GetById(updateTaskRequest.TaskType) != null;

            var validUser = await _userRepository.GetById(updateTaskRequest.AssignedToUserId) != null;

            if (userTask == null)
            {
                return(null);
            }

            if (validUser)
            {
                userTask.AssignedToUserID = updateTaskRequest.AssignedToUserId;
            }

            if (taskTypeIsValid)
            {
                userTask.TaskType = updateTaskRequest.TaskType;
            }

            if (updateTaskRequest.Name != userTask.Name)
            {
                var validName = await _userTaskRepository.GetByName(updateTaskRequest.Name) == null;

                if (!validName)
                {
                    return(null);
                }
                userTask.Name = updateTaskRequest.Name;
            }


            userTask.StartDate       = updateTaskRequest.StartDate;
            userTask.EndDate         = updateTaskRequest.EndDate;
            userTask.Description     = updateTaskRequest.Description;
            userTask.MinutesSpended += updateTaskRequest.MinutesSpend;

            var result = await _userTaskRepository.Update(userTask);

            return(result);
        }
Пример #5
0
 public async Task <TaskType> GetTaskTypeById(int id)
 {
     return(await _taskTypeRepository.GetById(id));
 }