public int updateLikesRecord(long userId, long carRealRecordId) {
LocalDate today = LocalDate.now();//年月日
//判断点赞map中是否有此用户
Map<Long, Map<LocalDate, List>> likesRecordMap = GM.me.getLikesRecordMap();
if (likesRecordMap.containsKey(userId)) {
Map<LocalDate, List> mapByUser = likesRecordMap.get(userId);
// 判断此map的键只能含有today,如果不等于today就先清除map
if (!mapByUser.containsKey(today)) {
mapByUser.clear();
List list = new ArrayList<>();
LikesRecord likesRecord = new LikesRecord();
likesRecord.setUserId(userId);
likesRecord.setDate(new Date());
likesRecord.setCarRealRecordId(carRealRecordId);
list.add(likesRecord);
mapByUser.put(today, list);
return 0;
} else {
//判断今天点赞数是否为10
List records = mapByUser.get(today);
if (records.size() == 10) {
LogDebug.log(userId + ":今日点赞到达10");
return -1;
}
//日期为今天,存入一条记录
LikesRecord likesRecord = new LikesRecord();
likesRecord.setUserId(userId);
likesRecord.setDate(new Date());
likesRecord.setCarRealRecordId(carRealRecordId);
records.add(likesRecord);
return 0;
}
} else {
Map<LocalDate, List> mapByUser = new HashMap<>();
//点赞map中没有有此用户-新增
List list = new ArrayList<>();
LikesRecord likesRecord = new LikesRecord();
likesRecord.setUserId(userId);
likesRecord.setDate(new Date());
likesRecord.setCarRealRecordId(carRealRecordId);
list.add(likesRecord);
mapByUser.put(today, list);
likesRecordMap.put(userId, mapByUser);
return 0;
}
}