提交 c2594372 authored 作者: 吴德鹏's avatar 吴德鹏

完成首页注册量统计

上级 6629b251
......@@ -5,6 +5,8 @@ import com.platform.service.TbCfUserInfoService;
import com.platform.utils.PageUtils;
import com.platform.utils.Query;
import com.platform.utils.R;
import com.platform.vo.StatisticalVo;
import org.apache.ibatis.annotations.Param;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
......@@ -108,4 +110,50 @@ public class TbCfUserInfoController {
String userId = tbCfUserInfoService.queryById(account);
return R.ok().put("userId", userId);
}
/**
* 统计分析:
* 1)统计每天的注册量,2)统计今天的注册量,3)统计本周注册量,4)统计本月注册量,5)统计今年的注册量
*/
@ResponseBody
@GetMapping("/getDailyRegistered")
public R getDailyRegistered() {
List<StatisticalVo> userList = tbCfUserInfoService.getDailyRegistered();
return R.ok().put("list", userList);
}
@ResponseBody
@GetMapping("/getDayRegistered")
public R getDayRegistered() {
List<StatisticalVo> userList = tbCfUserInfoService.getDayRegistered();
return R.ok().put("list", userList);
}
@ResponseBody
@GetMapping("/getWeekRegistered")
public R getWeekRegistered() {
List<StatisticalVo> userList = tbCfUserInfoService.getWeekRegistered();
return R.ok().put("list", userList);
}
@ResponseBody
@GetMapping("/getMonthRegistered")
public R getMonthRegistered() {
List<StatisticalVo> userList = tbCfUserInfoService.getMonthRegistered();
return R.ok().put("list", userList);
}
@ResponseBody
@GetMapping("/getYearRegistered")
public R getYearRegistered() {
List<StatisticalVo> userList = tbCfUserInfoService.getYearRegistered();
return R.ok().put("list", userList);
}
@ResponseBody
@GetMapping("/getRegisteredByDate")
public R getRegisteredByDate(String start, String end) {
List<StatisticalVo> userList = tbCfUserInfoService.getRegisteredByDate(start, end);
return R.ok().put("list", userList);
}
}
package com.platform.dao;
import com.platform.entity.TbCfUserInfoEntity;
import com.platform.vo.StatisticalVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
......@@ -20,4 +22,16 @@ public interface TbCfUserInfoDao extends BaseDao<TbCfUserInfoEntity> {
List<String> getUserIdsByNick(String nick);
List<String> getUserIds(String name);
List<StatisticalVo> getDailyRegistered();
List<StatisticalVo> getDayRegistered();
List<StatisticalVo> getWeekRegistered();
List<StatisticalVo> getMonthRegistered();
List<StatisticalVo> getYearRegistered();
List<StatisticalVo> getRegisteredByDate(@Param("start") String start, @Param("end") String end);
}
package com.platform.service;
import com.platform.entity.TbCfUserInfoEntity;
import com.platform.vo.StatisticalVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
......@@ -74,4 +76,16 @@ public interface TbCfUserInfoService {
long queryUserTotal();
String queryByAccount(String account);
List<StatisticalVo> getDailyRegistered();
List<StatisticalVo> getDayRegistered();
List<StatisticalVo> getWeekRegistered();
List<StatisticalVo> getMonthRegistered();
List<StatisticalVo> getYearRegistered();
List<StatisticalVo> getRegisteredByDate(String start, String end);
}
......@@ -4,6 +4,7 @@ import com.platform.dao.TbCfUserInfoDao;
import com.platform.entity.TbCfUserInfoEntity;
import com.platform.service.TbCfUserInfoService;
import com.platform.utils.IdUtil;
import com.platform.vo.StatisticalVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -70,6 +71,42 @@ public class TbCfUserInfoServiceImpl implements TbCfUserInfoService {
@Override
public String queryByAccount(String account) {
return tbCfUserInfoDao.queryById(account) ;
return tbCfUserInfoDao.queryById(account);
}
@Override
public List<StatisticalVo> getDailyRegistered() {
return tbCfUserInfoDao.getDailyRegistered();
}
@Override
public List<StatisticalVo> getDayRegistered() {
return tbCfUserInfoDao.getDayRegistered();
}
@Override
public List<StatisticalVo> getWeekRegistered() {
return tbCfUserInfoDao.getWeekRegistered();
}
@Override
public List<StatisticalVo> getMonthRegistered() {
return tbCfUserInfoDao.getMonthRegistered();
}
@Override
public List<StatisticalVo> getYearRegistered() {
return tbCfUserInfoDao.getYearRegistered();
}
@Override
public List<StatisticalVo> getRegisteredByDate(String start, String end) {
return tbCfUserInfoDao.getRegisteredByDate(start, end);
}
}
package com.platform.vo;
/**
* @Auther: wudepeng
* @Date: 2020/07/14
* @Description:数据统计实体类
*/
public class StatisticalVo {
//日期
private String date;
//数量
private Integer num;
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date;
}
public Integer getNum() {
return num;
}
public void setNum(Integer num) {
this.num = num;
}
}
......@@ -53,6 +53,75 @@
from tb_cf_user_info
where user_id = #{id}
</select>
<!--查询每日注册量-->
<select id="getDailyRegistered" resultType="com.platform.vo.StatisticalVo">
SELECT
DATE_FORMAT( create_time, '%Y-%m-%d' ) date,
count( 1 ) num
FROM
tb_cf_user_info
GROUP BY
date
</select>
<!--查询当天注册量-->
<select id="getDayRegistered" resultType="com.platform.vo.StatisticalVo">
SELECT
DATE_FORMAT( create_time, '%Y-%m-%d' ) date,
count( 1 ) num
FROM
tb_cf_user_info
WHERE
DATE_FORMAT( create_time, '%Y-%m-%d' ) = curdate( )
</select>
<!--查询本周注册量-->
<select id="getWeekRegistered" resultType="com.platform.vo.StatisticalVo">
SELECT
DATE_FORMAT( create_time, '%Y-%m-%d' ) date,
count( 1 ) num
FROM
tb_cf_user_info
WHERE
YEARWEEK( date_format( create_time, '%Y-%m-%d' ) ) = YEARWEEK( now( ) )
GROUP BY
date
</select>
<!--查询本月注册量-->
<select id="getMonthRegistered" resultType="com.platform.vo.StatisticalVo">
SELECT
DATE_FORMAT( create_time, '%Y-%m-%d' ) date,
count( 1 ) num
FROM
tb_cf_user_info
WHERE
date_format( create_time, '%Y%m' ) = date_format( curdate( ), '%Y%m' )
GROUP BY
date
</select>
<!--查询今年注册量-->
<select id="getYearRegistered" resultType="com.platform.vo.StatisticalVo">
SELECT
DATE_FORMAT( create_time, '%Y-%m-%d' ) date,
count( 1 ) num
FROM
tb_cf_user_info
WHERE
date_format( create_time, '%Y' ) = date_format( curdate( ), '%Y' )
GROUP BY
date
</select>
<select id="getRegisteredByDate" resultType="com.platform.vo.StatisticalVo">
SELECT
DATE_FORMAT( create_time, '%Y-%m-%d' ) date,
count( 1 ) num
FROM
tb_cf_user_info
WHERE
date_format( create_time, '%Y-%m-%d' ) > #{start}
AND date_format( create_time, '%Y-%m-%d' ) &lt; #{end}
GROUP BY
date
</select>
<select id="queryList" resultType="com.platform.entity.TbCfUserInfoEntityExtends">
SELECT
u.*,
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论