zhangjinli 3 years ago
parent 20a700377e
commit 525e601c16

@ -1,18 +1,28 @@
package com.zh.project0512.controller.wxApp;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zh.project0512.annotation.AdminTokenValid;
import com.zh.project0512.annotation.TokenValid;
import com.zh.project0512.controller.manage.StatisticsController;
import com.zh.project0512.mapper.UserEffectRecordsMapper;
import com.zh.project0512.model.UserEffectRecords;
import com.zh.project0512.model.dto.RankListDTO;
import com.zh.project0512.service.IRankService;
import com.zh.project0512.service.IVideoService;
import com.zh.project0512.utils.JwtUtil;
import com.zh.project0512.utils.result.Result;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.Data;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
/**
*
@ -25,17 +35,55 @@ public class RankUController {
IRankService rankService;
@Autowired
private IVideoService videoService;
@Autowired
private UserEffectRecordsMapper userEffectRecordsMapper;
// /**
// * 查询排行榜列表
// *
// * @param rankListDTO 排行列表DTO
// * @return 排行榜列表
// */
// @Operation(summary = "排行列表")
// @PostMapping("/list")
// public Result rankList(@Validated @RequestBody RankListDTO rankListDTO) {
// return Result.success(rankService.rankList(rankListDTO), "请求成功");
// }
@Data
static class RankParam {
@Schema(title = "时间条件", description = "1今日;2本周;3本月;4全年")
private Integer dateCondition;
@Schema(title = "1经销商2员工", description = "默认1")
private Integer type;
}
/**
*
*
* @param rankListDTO DTO
* @return
*/
@Operation(summary = "排行列表")
@PostMapping("/list")
public Result rankList(@Validated @RequestBody RankListDTO rankListDTO) {
return Result.success(rankService.rankList(rankListDTO), "请求成功");
@AdminTokenValid
public Result list(@Validated @RequestBody RankParam param) {
QueryWrapper<UserEffectRecords> qw = new QueryWrapper<>();
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDateTime now = LocalDateTime.of(LocalDateTime.now().toLocalDate(), LocalTime.MIN);
LocalDateTime before = now.minusMonths(1);
if (param.getDateCondition() != null) {
switch (param.getDateCondition()) {
case 1:
before = now;
break;
case 2:
before = now.minusWeeks(1);
break;
case 3:
before = now.minusMonths(1);
break;
case 4:
before = now.minusYears(1);
break;
default:
}
}
qw.between("t1.createAt", before, now.plusDays(1));
return Result.success((param.getType() != null && param.getType() == 1) ? userEffectRecordsMapper.rankByDepartment(qw) : userEffectRecordsMapper.rankByUser(qw), "请求成功");
}
@Operation(summary = "个人总记录")

Loading…
Cancel
Save