提交 d688f49e authored 作者: renjiancai's avatar renjiancai

--no commit message

上级 817a9033
......@@ -3,6 +3,7 @@ package com.zrqx.statistics.bg.controller;
import com.zrqx.core.util.response.CallBack;
import com.zrqx.statistics.commons.form.QueryTrendForm;
import com.zrqx.statistics.commons.form.QueryDistrictAnalysisForm;
import com.zrqx.statistics.commons.form.QuerySourceForm;
import com.zrqx.statistics.commons.form.QueryVisitorAttrForm;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
......@@ -42,6 +43,11 @@ public class DataLogController {
public CallBack<JSONObject> getTrend(QueryTrendForm form) {
return CallBack.success(service.loadTrend(form));
}
@ApiOperation("来源分析")
@PostMapping("/behavior")
public CallBack<JSONObject> getSource(QuerySourceForm form) {
return CallBack.success(service.loadSource(form));
}
@ApiOperation("关键词")
@PostMapping("/search-word")
public CallBack<JSONObject> getSearchWord() {
......
......@@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.zrqx.statistics.commons.form.QueryTrendForm;
import com.zrqx.statistics.commons.form.QueryDistrictAnalysisForm;
import com.zrqx.statistics.commons.form.QuerySourceForm;
import com.zrqx.statistics.commons.form.QueryVisitorAttrForm;
import com.zrqx.statistics.commons.model.DataLog;
import com.zrqx.core.service.BaseService;
......@@ -79,5 +80,13 @@ public interface DataLogService extends BaseService<DataLog, String> {
* @date: 2019年11月15日 下午5:05:03
*/
JSONObject loadTrend(QueryTrendForm form);
/**
* 获取来源分析
* @param form
* @return
* @author rjc
* @date: 2019年11月19日 上午10:47:50
*/
JSONObject loadSource(QuerySourceForm form);
}
......@@ -24,6 +24,7 @@ import com.zrqx.statistics.bg.mapper.DataLogMapper;
import com.zrqx.statistics.commons.form.BaiduLogQueryForm;
import com.zrqx.statistics.commons.form.QueryTrendForm;
import com.zrqx.statistics.commons.form.QueryDistrictAnalysisForm;
import com.zrqx.statistics.commons.form.QuerySourceForm;
import com.zrqx.statistics.commons.form.QueryVisitorAttrForm;
import com.zrqx.statistics.commons.model.DataLog;
import com.zrqx.statistics.utils.DateUtils;
......@@ -585,4 +586,38 @@ public class DataLogServiceImpl extends BaseServiceImpl<DataLog, String> impleme
return objBody;
}
@Override
public JSONObject loadSource(QuerySourceForm form) {
BaiduStatisticsBody body = null;
if (StringUtils.isNotBlank(form.getAreaType()) && TABLE.equals(form.getAreaType())) {
body = new BaiduStatisticsBody(
form.getStart_date(),
form.getEnd_date(),
FuncEnum.DISTRICT_TABLE.getSupportParams(),
FuncEnum.DISTRICT_TABLE.getFuncName()
);
} else if (StringUtils.isNotBlank(form.getAreaType()) && MAP.equals(form.getAreaType())) {
body = new BaiduStatisticsBody(
form.getStart_date(),
form.getEnd_date(),
new String[]{form.getIndicators()},
FuncEnum.SOURCE_MAP.getFuncName()
);
} else {
return null;
}
JSONObject objBody = null;
try {
byte[] res = HttpUtils.post(BaiduConfig.API_URL, this.generateHttpRequestParam(body), CHARSET);
String s = new String(res);
JSONObject obj = JSON.parseObject(s);
objBody = obj.getJSONObject("body");
//log.info(objBody.toJSONString());
} catch (Exception e) {
log.error("获取来源分析结果失败", e);
}
return objBody;
}
}
package com.zrqx.statistics.commons.form;
import com.zrqx.core.enums.statistics.FiledEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "查询来源分析Form")
public class QuerySourceForm {
@ApiModelProperty("访客属性, 全部:all,新游客:new,旧游客:old")
private String visitor;
@ApiModelProperty("开始时间, 字符串格式: 20191114")
private String start_date;
@ApiModelProperty("结束时间")
private String end_date;
/**
* {@link FiledEnum}
*/
@ApiModelProperty("维度OR指标; pv_count:访问量, visitor_count:访客数, ip_count:IP数, avg_visit_time:凭据访问时间;只有访问地图数据需要传参")
private String indicators;
///**
// * {@link FiledEnum}
// * {@link com.zrqx.core.enums.statistics.OrderTypeEnum}
// */
//@ApiModelProperty("排序")
//private String orderType;
@ApiModelProperty("分页")
private Integer offset;
@ApiModelProperty("分页")
private Integer pageSize;
@ApiModelProperty("地图中的数据:map, 表格及汇总数据:table")
private String areaType;
}
......@@ -82,6 +82,10 @@ public enum FuncEnum {
* 行为-趋势分析
*/
TREND_MAP("trend/time/a", new String[]{}),
/**
* 来源分析
*/
SOURCE_MAP("source/all/a", new String[]{}),
;
// 状态码
private final String funcName;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论