public async Task <IActionResult> Update(int id, [FromBody] SaveUserDepartmentResource userDepartmentResource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var userDepartment = await userDepartmentRepository.GetOne(id);

            if (userDepartment == null)
            {
                return(NotFound());
            }

            userDepartment = mapper.Map(userDepartmentResource, userDepartment);

            if (await unitOfWork.CompleteAsync() == false)
            {
                throw new Exception(message: $"Updating userDepartment {id} failed on save");
            }

            userDepartment = await userDepartmentRepository.GetOne(userDepartment.Id);

            var result = mapper.Map <UserDepartment, ViewUserDepartmentResource>(userDepartment);

            return(Ok(result));
        }
        public async Task <IActionResult> Create([FromBody] SaveUserDepartmentResource userDepartmentResource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var userDepartment = mapper.Map <SaveUserDepartmentResource, UserDepartment>(userDepartmentResource);

            userDepartmentRepository.Add(userDepartment);
            if (await unitOfWork.CompleteAsync() == false)
            {
                throw new Exception(message: "Create new userDepartment failed on save");
            }

            userDepartment = await userDepartmentRepository.GetOne(userDepartment.Id);

            var result = mapper.Map <UserDepartment, ViewUserDepartmentResource>(userDepartment);

            return(Ok(result));
        }