public async Task <ValidationOutputDto> ValidateAssignDepartmentInput(AssignDepartmentInputDto request) { var userProfile = await _unitOfWork.Repository <UserProfile>().GetByIdAsync(request.UserProfileId); if (userProfile == null) { return new ValidationOutputDto { IsSuccess = false, Message = "User profile is not existing.", StatusCode = 400 } } ; var department = await _unitOfWork.Repository <Department>().GetByIdAsync(request.DepartmentId); if (department == null) { return new ValidationOutputDto { IsSuccess = false, Message = "Department is not existing.", StatusCode = 400 } } ; return(new ValidationOutputDto { IsSuccess = true, Message = string.Empty, StatusCode = 200 }); }
public async Task AssignUserToDepartment(AssignDepartmentInputDto request) { var userProfile = await _unitOfWork.Repository <UserProfile>().GetByIdAsync(request.UserProfileId); userProfile.DepartmentId = request.DepartmentId; _unitOfWork.Repository <UserProfile>().Update(userProfile); await _unitOfWork.Complete(); }
public async Task <IActionResult> AssignDepartmentToUser([FromBody] AssignDepartmentInputDto request) { try { var validationResponse = await _userProfileService.ValidateAssignDepartmentInput(request); if (!validationResponse.IsSuccess) { return(BadRequest(new ApiResponse(validationResponse.StatusCode, validationResponse.Message))); } await _userProfileService.AssignUserToDepartment(request); return(Ok(new ApiResponse(200, "Success"))); } catch { return(BadRequest(new ApiResponse(400, "Something went wrong."))); } }