public async System.Threading.Tasks.Task <IActionResult> AssignTask(AssignTaskInput input) { Result result = await _taskManager.AssignTask(input); if (result.Success) { return(Ok(result)); } else { return(BadRequest(result)); } }
public async System.Threading.Tasks.Task <Result> AssignTask(AssignTaskInput input) { List <Task> tasks = await _taskRepository.GetAllTasksByUserId(input.PhotographId); if (tasks.Find(item => item.Date == input.Date) != null) { return(new Result() { Success = false, Errors = new List <Error>() { new Error(ErrorCode.PhotographIsNotAvailable) } }); } PHOTOnlineUser user = await _userRepository.FindAsync(input.CustomerId); Task task = new Task() { Date = input.Date, Time = input.Time, EventType = input.EventType, Location = input.Location, Note = input.Note, PhotographId = input.PhotographId, CustomerFirstName = user.FirstName, CustomerLastName = user.LastName, CustomerPhoneNumber = user.PhoneNumber }; await _taskRepository.CreateAsync(task); await _requestRepository.UpdateRequestStatus( input.RequestId, RequestStatus.Approved); await _requestRepository.UpdateRequestNotification( input.RequestId, input.Notification); return(new Result() { Success = true }); }