D
Size: a a a
AG
в
s
@PostMapping
public Mono<? extends BaseResponse> setUserPreference(@AuthenticationPrincipal UserDetail userDetail,
@RequestBody List<UserPreferenceRequest> request) {
return userService.getByUserDetails(userDetail)
.doOnNext(user -> request.forEach(pref -> userPreferenceService.setUserPreference(user, pref.getType(), pref.getValue())))
.map(none -> OkResponse.ok());
}
------------------
public Mono<UserPreference> setUserPreference(User user, String type, String value) {
return userPreferenceRepository.findAllByUserIdAndType(user.getId(), type)
.filter(userPreference -> type.equalsIgnoreCase(userPreference.getValue()))
.flatMap(userPreference -> {
userPreference.setValue(value);
return userPreferenceRepository.save(userPreference);
})
.switchIfEmpty(userPreferenceRepository.save(UserPreference.builder()
.user(user)
.type(type)
.value(value)
.build()));
}
АС
@PostMapping
public Mono<? extends BaseResponse> setUserPreference(@AuthenticationPrincipal UserDetail userDetail,
@RequestBody List<UserPreferenceRequest> request) {
return userService.getByUserDetails(userDetail)
.doOnNext(user -> request.forEach(pref -> userPreferenceService.setUserPreference(user, pref.getType(), pref.getValue())))
.map(none -> OkResponse.ok());
}
------------------
public Mono<UserPreference> setUserPreference(User user, String type, String value) {
return userPreferenceRepository.findAllByUserIdAndType(user.getId(), type)
.filter(userPreference -> type.equalsIgnoreCase(userPreference.getValue()))
.flatMap(userPreference -> {
userPreference.setValue(value);
return userPreferenceRepository.save(userPreference);
})
.switchIfEmpty(userPreferenceRepository.save(UserPreference.builder()
.user(user)
.type(type)
.value(value)
.build()));
}
АС
I
I
I
D
VP
D
AS
AS
VP
AK