[chuni] fix user item being overwritten

[api] fix set diva news
This commit is contained in:
samnyan
2020-01-18 13:29:34 +09:00
parent c230c47c36
commit a417e4032c
6 changed files with 24 additions and 13 deletions

View File

@@ -191,16 +191,17 @@ public class UpsertUserAllHandler implements BaseHandler {
userItemList.forEach(userItemMap -> {
String itemId = (String) userItemMap.get("itemId");
String itemKind = (String) userItemMap.get("itemKind");
Optional<UserItem> userItemOptional = userItemService.getByUserAndItemId(newUserData, itemId);
Optional<UserItem> userItemOptional = userItemService.getByUserAndItemId(newUserData, itemId, itemKind);
UserItem userItem = userItemOptional.orElseGet(() -> new UserItem(newUserData));
UserItem newUserItem = mapper.convert(userItemMap, UserItem.class);
newUserItem.setId(userItem.getId());
newUserItem.setUser(userItem.getUser());
newUserItemMap.put(itemId, newUserItem);
newUserItemMap.put(itemId + "-" + itemKind, newUserItem);
});
userItemService.saveAll(newUserItemMap.values());
}