Exemplo n.º 1
0
        public async Task <TaskDto> UpdateTask(TaskRequestDTO taskToUpdateDTO)
        {
            var taskUpdate   = _mapper.Map <Models.Task>(taskToUpdateDTO);
            var taskUpdateDB = await _taskRepository.UpdateTask(taskUpdate);

            if (taskToUpdateDTO.IsAddNewAssignee && taskToUpdateDTO.AssignedUsersToAdd.Count > 0)
            {
                foreach (var user in taskToUpdateDTO.AssignedUsersToAdd)
                {
                    var newTaskAssign = new TaskAssigning
                    {
                        Task = taskToUpdateDTO.IdTask,
                        User = user
                    };
                    await _taskRepository.CreateNewTaskAssigning(newTaskAssign);
                }
            }

            if (taskToUpdateDTO.IsRemoveAssignee && taskToUpdateDTO.AssignedUsersToRemove.Count > 0)
            {
                foreach (var user in taskToUpdateDTO.AssignedUsersToRemove)
                {
                    var taskAssigningToRemove =
                        await _taskRepository.GetTaskAssigningByTaskAndUser(taskToUpdateDTO.IdTask, user);

                    await _taskRepository.DeleteTaskAssigning(taskAssigningToRemove.IdAssign);
                }
            }
            return(await this.GetTaskById(taskToUpdateDTO.IdTask));
        }
        public async Task <TaskAssigning> CreateNewTaskAssigning(TaskAssigning newTaskAssigning)
        {
            var newTaskAssignDb = await _context.TaskAssigning.AddAsync(newTaskAssigning);

            await _context.SaveChangesAsync();

            return(newTaskAssignDb.Entity);
        }
Exemplo n.º 3
0
        public async Task <TaskDto> CreateNewTask(TaskRequestDTO newTaskRequestDto)
        {
            var newTask        = _mapper.Map <Models.Task>(newTaskRequestDto);
            var newCreatedTask = await _taskRepository.CreateNewTask(newTask);

            if (newTaskRequestDto.AssignedUsers.Count > 0)
            {
                foreach (var user in newTaskRequestDto.AssignedUsers)
                {
                    var newTaskAssign = new TaskAssigning
                    {
                        Task = newCreatedTask.IdTask,
                        User = user
                    };
                    await _taskRepository.CreateNewTaskAssigning(newTaskAssign);
                }
            }
            var newCreatedTaskDto = await this.GetTaskById(newCreatedTask.IdTask);

            return(newCreatedTaskDto);
        }