public async Task <TaskServiceModel> AddAsync(TaskCreationServiceModel entity) { DAL.Models.Entities.Task task = _mapper.Map <TaskCreationServiceModel, DAL.Models.Entities.Task>(entity); await _uow.GetRepository <DAL.Models.Entities.Task>().AddAsync(task); await _uow.SaveChangesAsync(); await _schedulerService.ScheduleTaskById(task.Id); TaskServiceModel taskServiceModel = _mapper.Map <DAL.Models.Entities.Task, TaskServiceModel>(task); return(taskServiceModel); }
public async Task <ActionResult <TaskModel> > CreateTask(Guid userId, [FromBody] TaskCreationModel taskCreationModel) { UserServiceModel user = await _userService.GetByPrincipalAsync(User); if (user == null || user.Id != userId) { return(Unauthorized()); } TaskCreationServiceModel taskCreationServiceModel = _mapper .Map <TaskCreationModel, TaskCreationServiceModel>(taskCreationModel); TaskServiceModel taskServiceModel = await _taskService.AddAsync(taskCreationServiceModel); TaskModel taskModel = _mapper.Map <TaskServiceModel, TaskModel>(taskServiceModel); return(CreatedAtAction(nameof(GetTask), new { taskId = taskModel.Id, userId = user.Id }, taskModel)); }