1、在service_statistics模块中的StatisticsDailyController里实现查询图表显示数据方法
@ApiOperation(value = "查询图表显示数据")
@GetMapping("showData/{type}/{begin}/{end}")
public R showData(@PathVariable String type,
@PathVariable String begin,
@PathVariable String end){
Map<String,Object> map = staService.getShowData(type,begin,end);
return R.ok().data(map);
}
2、在StatisticsDailyService中添加接口方法
Map<String, Object> getChartData(String begin, String end, String type);
3、在StatisticsDailyServiceImpl中实现接口方法
@Override
public Map<String, Object> getShowData(String type, String begin, String end) {
QueryWrapper<StatisticsDaily> wrapper = new QueryWrapper<>();
wrapper.between("date_calculated",begin,end);
wrapper.select("date_calculated",type);
List<StatisticsDaily> staList = baseMapper.selectList(wrapper);
List<String> dateCalculatedList = new ArrayList<>();
List<Integer> dataList = new ArrayList<>();
for (int i = 0; i <staList.size() ; i++) {
StatisticsDaily sta = staList.get(i);
String dateCalculated = sta.getDateCalculated();
dateCalculatedList.add(dateCalculated);
switch (type){
case "login_num":
Integer loginNum = sta.getLoginNum();
dataList.add(loginNum);
break;
case "register_num":
Integer registerNum = sta.getRegisterNum();
dataList.add(registerNum);
break;
case "video_view_num":
Integer videoViewNum = sta.getVideoViewNum();
dataList.add(videoViewNum);
break;
case "course_num":
Integer courseNum = sta.getCourseNum();
dataList.add(courseNum);
break;
default:
break;
}
}
Map<String, Object> map = new HashMap<>();
map.put("dateCalculatedList",dateCalculatedList);
map.put("dataList",dataList);
return map;
}