日常任务-上麦1
This commit is contained in:
@@ -50,8 +50,9 @@ public class UpMicCoinHandler extends AbstractDailyTaskHandler {
|
||||
String deviceId = context.getDeviceId();
|
||||
String realIpAddress = context.getRealIpAddress();
|
||||
|
||||
String todayDate = context.getTodayDate();
|
||||
RAtomicLong userDayUpMicDuration = roomMicService.userDayUpMicDuration(todayDate, uid);
|
||||
String mondayDate = context.getTodayDate();
|
||||
String nowDate = getNowDate(context.getPartitionId(), new Date());
|
||||
RAtomicLong userDayUpMicDuration = roomMicService.userDayUpMicDuration(nowDate, uid);
|
||||
long totalDuration = userDayUpMicDuration.get();
|
||||
RBucket<Long> longRBucket = roomMicService.userUpMicTime(uid);
|
||||
Long upMicTime = longRBucket.get();
|
||||
@@ -59,11 +60,10 @@ public class UpMicCoinHandler extends AbstractDailyTaskHandler {
|
||||
if (longRBucket.isExists()) {
|
||||
Map<String, Integer> upMicDuration = roomMicService.calUserUpMicDuration(upMicTime, Calendar.getInstance().getTimeInMillis(), context.getPartitionId());
|
||||
if (!upMicDuration.isEmpty()) {
|
||||
totalDuration += upMicDuration.getOrDefault(todayDate, 0);
|
||||
totalDuration += upMicDuration.getOrDefault(nowDate, 0);
|
||||
}
|
||||
}
|
||||
|
||||
String mondayDate = getMondayDate(context.getPartitionId(), new Date());
|
||||
dailyTaskVo.setTodayDate(mondayDate);
|
||||
if (totalDuration >= dailyTaskVo.getStandardValue()) {
|
||||
taskStatus(uid, mondayDate, taskType).set(1, Duration.ofDays(1));
|
||||
@@ -109,12 +109,19 @@ public class UpMicCoinHandler extends AbstractDailyTaskHandler {
|
||||
return BusiResult.success();
|
||||
}
|
||||
|
||||
private String getMondayDate(Integer partitionId, Date date) {
|
||||
@Override
|
||||
public String getTodayDate(Integer partitionId, Date date) {
|
||||
PartitionEnum partitionEnum = PartitionEnum.getByPartitionId(partitionId);
|
||||
ZonedDateTime zonedDateTime = DateTimeUtil.convertWithZoneId(date, partitionEnum.getZoneId());
|
||||
return zonedDateTime.with(TemporalAdjusters.nextOrSame(DayOfWeek.MONDAY)).format(DateTimeUtil.dateFormatter);
|
||||
}
|
||||
|
||||
private String getNowDate(Integer partitionId, Date date) {
|
||||
PartitionEnum partitionEnum = PartitionEnum.getByPartitionId(partitionId);
|
||||
ZonedDateTime zonedDateTime = DateTimeUtil.convertWithZoneId(date, partitionEnum.getZoneId());
|
||||
return zonedDateTime.format(DateTimeUtil.dateFormatter);
|
||||
}
|
||||
|
||||
private RMap<String, Long> getIpCache(String monday) {
|
||||
return redissonClient.getMap(up_mic_coin_ip_limit.getKey(monday), new TypedJsonJacksonCodec(String.class, Long.class));
|
||||
}
|
||||
|
Reference in New Issue
Block a user