Revision 57650
Added by Michele Artini over 4 years ago
DatabaseUtils.java | ||
---|---|---|
1 | 1 |
package eu.dnetlib.organizations.utils; |
2 | 2 |
|
3 | 3 |
import java.time.OffsetDateTime; |
4 |
import java.util.Arrays; |
|
4 | 5 |
import java.util.List; |
6 |
import java.util.stream.Collectors; |
|
5 | 7 |
|
6 | 8 |
import javax.transaction.Transactional; |
7 | 9 |
|
... | ... | |
131 | 133 |
|
132 | 134 |
@Transactional |
133 | 135 |
public void saveUser(@RequestBody final UserView userView) { |
134 |
|
|
135 | 136 |
final User user = userRepository.findById(userView.getEmail()).orElseThrow(() -> new RuntimeException("User not found")); |
136 | 137 |
user.setRole(userView.getRole()); |
137 | 138 |
user.setValid(userView.isValid()); |
138 | 139 |
userRepository.save(user); |
139 |
|
|
140 | 140 |
userCountryRepository.deleteByEmail(userView.getEmail()); |
141 |
for (final String country : userView.getCountries()) { |
|
142 |
userCountryRepository.save(new UserCountry(userView.getEmail(), country)); |
|
141 |
if (userView.getCountries() != null) { |
|
142 |
userCountryRepository |
|
143 |
.saveAll(Arrays.stream(userView.getCountries()).map(c -> new UserCountry(userView.getEmail(), c)).collect(Collectors.toList())); |
|
143 | 144 |
} |
144 | 145 |
} |
145 | 146 |
|
... | ... | |
149 | 150 |
userRepository.deleteById(email); |
150 | 151 |
} |
151 | 152 |
|
153 |
@Transactional |
|
154 |
public void newUser(final String email, final List<String> countries) { |
|
155 |
final User user = new User(); |
|
156 |
user.setEmail(email); |
|
157 |
user.setRole(OpenOrgsConstants.pendingRole); |
|
158 |
user.setValid(false); |
|
159 |
userRepository.save(user); |
|
160 |
if (countries != null) { |
|
161 |
userCountryRepository.saveAll(countries.stream().map(c -> new UserCountry(email, c)).collect(Collectors.toList())); |
|
162 |
} |
|
163 |
} |
|
164 |
|
|
152 | 165 |
} |
Also available in: Unified diff
new registration form