You've already forked FrameTour-BE
实现“扫码访问人数、推送订阅人数、预览视频人数统计”
This commit is contained in:
@ -3,6 +3,7 @@ package com.ycwl.basic.service.impl.mobile;
|
||||
import com.ycwl.basic.mapper.StatisticsMapper;
|
||||
import com.ycwl.basic.model.mobile.statistic.AppSta1VO;
|
||||
import com.ycwl.basic.model.mobile.statistic.AppSta2VO;
|
||||
import com.ycwl.basic.model.mobile.statistic.AppSta3VO;
|
||||
import com.ycwl.basic.model.mobile.statistic.CommonQueryReq;
|
||||
import com.ycwl.basic.service.mobile.AppStatisticsService;
|
||||
import com.ycwl.basic.utils.ApiResponse;
|
||||
@ -87,6 +88,63 @@ public class AppStatisticsServiceImpl implements AppStatisticsService {
|
||||
return ApiResponse.success(vo);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResponse<AppSta3VO> freeStatistics(CommonQueryReq query) {
|
||||
AppSta3VO vo = new AppSta3VO();
|
||||
if(query.getEndTime()==null && query.getStartTime()==null){
|
||||
// 没有传时间,则代表用户没有自定义查询时间,使用standard来判断查询时间范围
|
||||
Integer standard = query.getStandard();
|
||||
if(standard==null){
|
||||
query.setStandard(0);
|
||||
}
|
||||
//获取当前周期的具体时间范围
|
||||
standardToNewSpecificTime(query);
|
||||
//查询处理数据逻辑
|
||||
freeStatisticsHandler(1,query,vo);
|
||||
//----------------------------------------------------
|
||||
//获取当前周期的具体时间范围
|
||||
standardToPreviousSpecificTime(query);
|
||||
//查询处理数据逻辑
|
||||
freeStatisticsHandler(2,query,vo);
|
||||
}else{
|
||||
//自定义时间查询,只有当前数据,没有往期对比数据
|
||||
//查询处理数据逻辑
|
||||
freeStatisticsHandler(1,query,vo);
|
||||
}
|
||||
return ApiResponse.success(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param cycle 周期 1当前 2往期
|
||||
* @param query
|
||||
* @param vo
|
||||
*/
|
||||
private void freeStatisticsHandler(Integer cycle,CommonQueryReq query,AppSta3VO vo){
|
||||
//查询扫码访问人数
|
||||
int sceneNum=statisticsMapper.countScanCodeOfMember(query);
|
||||
//查询推送订阅人数
|
||||
int pushNum=statisticsMapper.countPushOfMember(query);
|
||||
// 查询预览视频人数
|
||||
Integer previewNum=statisticsMapper.countPreviewOfMember(query);
|
||||
|
||||
if(cycle==1){
|
||||
//当前周期的扫码访问人数
|
||||
vo.setNowScanCodeOfPeopleNum(sceneNum);
|
||||
//当前周期的推送订阅人数
|
||||
vo.setNowPushOfPeopleNum(pushNum);
|
||||
//当前周期的预览视频人数
|
||||
vo.setNowPreviewVideoOfPeopleNum(previewNum);
|
||||
}else if(cycle==2){
|
||||
//上一个周期的扫码访问人数
|
||||
vo.setPreviousScanCodeOfPeopleNum(sceneNum);
|
||||
//上一个周期的推送订阅人数
|
||||
vo.setPreviousPushOfPeopleNum(pushNum);
|
||||
//上一个周期的预览视频人数
|
||||
vo.setPreviousPreviewVideoOfPeopleNum(previewNum);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param cycle 周期 1当前 2往期
|
||||
@ -104,16 +162,16 @@ public class AppStatisticsServiceImpl implements AppStatisticsService {
|
||||
if(cycle==1){
|
||||
//当前周期的总支付订单数
|
||||
vo.setNowPayOrderNum(totalOrderNum);
|
||||
//查询现场支付订单数
|
||||
//当前周期的现场支付订单数
|
||||
vo.setNowSceneOrderNum(sceneOrderNum);
|
||||
//查询推送支付订单数
|
||||
//当前周期的推送支付订单数
|
||||
vo.setNowPushOrderNum(pushOrderNum);
|
||||
}else if(cycle==2){
|
||||
//当前周期的总支付订单数
|
||||
//上一个周期的总支付订单数
|
||||
vo.setPreviousPayOrderNum(totalOrderNum);
|
||||
//查询现场支付订单数
|
||||
//上一个周期的现场支付订单数
|
||||
vo.setPreviousSceneOrderNum(sceneOrderNum);
|
||||
//查询推送支付订单数
|
||||
//上一个周期的推送支付订单数
|
||||
vo.setPreviousPushOrderNum(pushOrderNum);
|
||||
}
|
||||
}
|
||||
|
@ -2,6 +2,7 @@ package com.ycwl.basic.service.mobile;
|
||||
|
||||
import com.ycwl.basic.model.mobile.statistic.AppSta1VO;
|
||||
import com.ycwl.basic.model.mobile.statistic.AppSta2VO;
|
||||
import com.ycwl.basic.model.mobile.statistic.AppSta3VO;
|
||||
import com.ycwl.basic.model.mobile.statistic.CommonQueryReq;
|
||||
import com.ycwl.basic.utils.ApiResponse;
|
||||
|
||||
@ -14,4 +15,6 @@ public interface AppStatisticsService {
|
||||
ApiResponse<AppSta1VO> oneStatistics(CommonQueryReq query);
|
||||
|
||||
ApiResponse<AppSta2VO> twoStatistics(CommonQueryReq query);
|
||||
|
||||
ApiResponse<AppSta3VO> freeStatistics(CommonQueryReq query);
|
||||
}
|
||||
|
Reference in New Issue
Block a user