@Transactional
public void saveCompositeUser(UserCompositeDTO userCompositeDTO) {
var userInfo = new UserInfo();
userInfo.setFirstName(userCompositeDTO.getFirstName())
.setMiddleName(userCompositeDTO.getMiddleName())
.setLastName(userCompositeDTO.getLastName())
.setBirthDate(userCompositeDTO.getBirthDate())
.setPhoneNumber(userCompositeDTO.getPhoneNumber());
User user = new User();
user.setAuthorities(userCompositeDTO.getAuthorities())
.setEmail(userCompositeDTO.getEmail())
.setPassword(userCompositeDTO.getPassword())
.setUsername(userCompositeDTO.getUsername())
.setEnabled(true)
.setOrganization(userCompositeDTO.getOrganization())
.setUserInfo(userInfo);
User currentUser = userRepository.save(user);
userInfo.setUser(currentUser);
userInfoRepository.save(userInfo);
}