123
This commit is contained in:
@@ -15,6 +15,7 @@ import org.springframework.web.bind.annotation.GetMapping;
|
|||||||
import java.time.DayOfWeek;
|
import java.time.DayOfWeek;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
|
import java.time.temporal.TemporalAdjusters;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@@ -48,7 +49,7 @@ public class RankJob {
|
|||||||
log.error("保存邀请 日榜失败", e);
|
log.error("保存邀请 日榜失败", e);
|
||||||
}
|
}
|
||||||
DayOfWeek week = now.getDayOfWeek();
|
DayOfWeek week = now.getDayOfWeek();
|
||||||
if (week.getValue() == 1) { // 昨天是周一 做一下持久化
|
if (week.getValue() == 1) { // 今天是周一 做一下持久化
|
||||||
LocalDate lastWeekDate = now.plusDays(-7);
|
LocalDate lastWeekDate = now.plusDays(-7);
|
||||||
try {
|
try {
|
||||||
rankService.saveWeekRank(lastWeekDate,1);
|
rankService.saveWeekRank(lastWeekDate,1);
|
||||||
|
|||||||
@@ -0,0 +1,50 @@
|
|||||||
|
package com.ruoyi.web.controller.cai.admin.op;
|
||||||
|
|
||||||
|
|
||||||
|
import com.ruoyi.cai.service.RankService;
|
||||||
|
import com.ruoyi.common.core.domain.R;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import java.text.DateFormat;
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.time.format.DateTimeFormatter;
|
||||||
|
|
||||||
|
@Validated
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/cai/op/refresh")
|
||||||
|
@Slf4j
|
||||||
|
public class RefreshOpController {
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private RankService rankService;
|
||||||
|
|
||||||
|
@GetMapping("/day")
|
||||||
|
public R<Void> day(String date,Integer type) {
|
||||||
|
LocalDate localDate = LocalDate.parse(date, DateTimeFormatter.ofPattern("yyyy-MM-dd"));
|
||||||
|
rankService.saveDayRank(localDate, type);
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/week")
|
||||||
|
public R<Void> week(String date,Integer type){
|
||||||
|
LocalDate localDate = LocalDate.parse(date, DateTimeFormatter.ofPattern("yyyy-MM-dd"));
|
||||||
|
rankService.saveWeekRank(localDate,type);
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/month")
|
||||||
|
public R<Void> month(String date,Integer type){
|
||||||
|
LocalDate localDate = LocalDate.parse(date, DateTimeFormatter.ofPattern("yyyy-MM-dd"));
|
||||||
|
rankService.saveMonthRank(localDate,type);
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -93,6 +93,7 @@ public class RankServiceImpl extends ServiceImpl<RankMapper,Rank> implements Ran
|
|||||||
}
|
}
|
||||||
boolean exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
boolean exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
||||||
.eq(Rank::getType, type)
|
.eq(Rank::getType, type)
|
||||||
|
.eq(Rank::getDataType, RankDataTypeEnum.DAY.getCode())
|
||||||
.eq(Rank::getRankBeginTime, date));
|
.eq(Rank::getRankBeginTime, date));
|
||||||
if(exists){
|
if(exists){
|
||||||
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
||||||
@@ -103,6 +104,7 @@ public class RankServiceImpl extends ServiceImpl<RankMapper,Rank> implements Ran
|
|||||||
lock.lock();
|
lock.lock();
|
||||||
exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
||||||
.eq(Rank::getType, type)
|
.eq(Rank::getType, type)
|
||||||
|
.eq(Rank::getDataType, RankDataTypeEnum.DAY.getCode())
|
||||||
.eq(Rank::getRankBeginTime, date));
|
.eq(Rank::getRankBeginTime, date));
|
||||||
if(exists){
|
if(exists){
|
||||||
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
||||||
@@ -150,6 +152,7 @@ public class RankServiceImpl extends ServiceImpl<RankMapper,Rank> implements Ran
|
|||||||
}
|
}
|
||||||
boolean exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
boolean exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
||||||
.eq(Rank::getType, type)
|
.eq(Rank::getType, type)
|
||||||
|
.eq(Rank::getDataType, RankDataTypeEnum.WEEK.getCode())
|
||||||
.eq(Rank::getRankBeginTime, date));
|
.eq(Rank::getRankBeginTime, date));
|
||||||
if(exists){
|
if(exists){
|
||||||
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
||||||
@@ -160,12 +163,13 @@ public class RankServiceImpl extends ServiceImpl<RankMapper,Rank> implements Ran
|
|||||||
lock.lock();
|
lock.lock();
|
||||||
exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
||||||
.eq(Rank::getType, type)
|
.eq(Rank::getType, type)
|
||||||
|
.eq(Rank::getDataType, RankDataTypeEnum.WEEK.getCode())
|
||||||
.eq(Rank::getRankBeginTime, date));
|
.eq(Rank::getRankBeginTime, date));
|
||||||
if(exists){
|
if(exists){
|
||||||
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
List<Long> rankValue = getRankValue(type, RankDataTypeEnum.DAY.getCode());
|
List<Long> rankValue = getRankValue(type, RankDataTypeEnum.WEEK.getCode());
|
||||||
List<Rank> res = new ArrayList<>();
|
List<Rank> res = new ArrayList<>();
|
||||||
LocalDate endDate = date.plusDays(7);
|
LocalDate endDate = date.plusDays(7);
|
||||||
String rankTime = date.format(DateTimeFormatter.ofPattern("yyyyMMdd")) +"-"+endDate.format(DateTimeFormatter.ofPattern("yyyyMMdd"));
|
String rankTime = date.format(DateTimeFormatter.ofPattern("yyyyMMdd")) +"-"+endDate.format(DateTimeFormatter.ofPattern("yyyyMMdd"));
|
||||||
@@ -197,9 +201,9 @@ public class RankServiceImpl extends ServiceImpl<RankMapper,Rank> implements Ran
|
|||||||
public void saveMonthRank(LocalDate date, Integer type) {
|
public void saveMonthRank(LocalDate date, Integer type) {
|
||||||
List<RankNode> rank;
|
List<RankNode> rank;
|
||||||
if(type == 1){
|
if(type == 1){
|
||||||
rank = rankManager.getLoveRankDay(date, 30);
|
rank = rankManager.getLoveRankMonth(date, 30);
|
||||||
}else if(type == 2){
|
}else if(type == 2){
|
||||||
rank = rankManager.getInviteRankDay(date, 30);
|
rank = rankManager.getInviteRankMonth(date, 30);
|
||||||
}else{
|
}else{
|
||||||
throw new ServiceException("type 参数错误");
|
throw new ServiceException("type 参数错误");
|
||||||
}
|
}
|
||||||
@@ -208,6 +212,7 @@ public class RankServiceImpl extends ServiceImpl<RankMapper,Rank> implements Ran
|
|||||||
}
|
}
|
||||||
boolean exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
boolean exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
||||||
.eq(Rank::getType, type)
|
.eq(Rank::getType, type)
|
||||||
|
.eq(Rank::getDataType, RankDataTypeEnum.MONTH.getCode())
|
||||||
.eq(Rank::getRankBeginTime, date));
|
.eq(Rank::getRankBeginTime, date));
|
||||||
if(exists){
|
if(exists){
|
||||||
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
||||||
@@ -218,6 +223,7 @@ public class RankServiceImpl extends ServiceImpl<RankMapper,Rank> implements Ran
|
|||||||
lock.lock();
|
lock.lock();
|
||||||
exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
exists = this.exists(Wrappers.lambdaQuery(Rank.class)
|
||||||
.eq(Rank::getType, type)
|
.eq(Rank::getType, type)
|
||||||
|
.eq(Rank::getDataType, RankDataTypeEnum.MONTH.getCode())
|
||||||
.eq(Rank::getRankBeginTime, date));
|
.eq(Rank::getRankBeginTime, date));
|
||||||
if(exists){
|
if(exists){
|
||||||
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
log.error("本期榜单已经持久化 date={},type={}",date,type);
|
||||||
|
|||||||
Reference in New Issue
Block a user