|
@ -0,0 +1,96 @@
|
|
|
package com.yihu.wlyy.statistics.controller;
|
|
|
|
|
|
import com.alibaba.druid.sql.ast.SQLExpr;
|
|
|
import com.alibaba.druid.sql.ast.expr.SQLQueryExpr;
|
|
|
import com.alibaba.druid.sql.parser.ParserException;
|
|
|
import com.alibaba.druid.sql.parser.SQLExprParser;
|
|
|
import com.alibaba.druid.sql.parser.Token;
|
|
|
import com.yihu.wlyy.statistics.etl.save.es.ElasticFactory;
|
|
|
import com.yihu.wlyy.statistics.model.job.ElasticsearchService;
|
|
|
import com.yihu.wlyy.statistics.util.DateUtil;
|
|
|
import com.yihu.wlyy.statistics.vo.SaveModel;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
import org.elasticsearch.action.search.SearchResponse;
|
|
|
import org.nlpcn.es4sql.jdbc.ObjectResult;
|
|
|
import org.nlpcn.es4sql.jdbc.ObjectResultsExtractor;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.util.StringUtils;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
import org.nlpcn.es4sql.domain.Select;
|
|
|
import org.nlpcn.es4sql.parse.ElasticSqlExprParser;
|
|
|
import org.nlpcn.es4sql.parse.SqlParser;
|
|
|
import org.nlpcn.es4sql.query.AggregationQueryAction;
|
|
|
import org.nlpcn.es4sql.query.DefaultQueryAction;
|
|
|
import org.nlpcn.es4sql.query.SqlElasticSearchRequestBuilder;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
|
* Created by chenweida on 2017/7/1.
|
|
|
*/
|
|
|
@RestController
|
|
|
@RequestMapping("/quotaQuery")
|
|
|
@Api(description = "指标查询")
|
|
|
public class QueryController {
|
|
|
@Autowired
|
|
|
private ElasticsearchService elasticsearchService;
|
|
|
@Autowired
|
|
|
private ElasticFactory elasticFactory;
|
|
|
|
|
|
@ApiOperation(value = "查询某几个指标某个层级的列表")
|
|
|
@RequestMapping(value = "/getQuotasList", method = RequestMethod.GET)
|
|
|
public String getQuotasList(
|
|
|
@ApiParam(name = "ids", value = "指标id,多个逗号分割", required = true) @RequestParam(value = "ids", required = true) String ids,
|
|
|
@ApiParam(name = "code", value = "指标的code", required = true) @RequestParam(value = "code", required = true) String code,
|
|
|
@ApiParam(name = "arealevel", value = "指标的level(1 省 2 市 3 区县 4 机构 5团队)", required = true) @RequestParam(value = "arealevel", required = true) String arealevel,
|
|
|
@ApiParam(name = "timeLevel", value = " 1增量的指标 2到达量的指标", required = true) @RequestParam(value = "timeLevel", required = true) String timeLevel,
|
|
|
@ApiParam(name = "date", value = "时间(yyyy-MM-dd),不传默认查今天", required = false) @RequestParam(value = "date", required = false) String date) {
|
|
|
//如果日期是空初始化是今天
|
|
|
if (StringUtils.isEmpty(date)) {
|
|
|
date = DateUtil.dateToStrShort(new Date());
|
|
|
}
|
|
|
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "查询某个指标某个层级的折线图")
|
|
|
@RequestMapping(value = "/getQuotasLine", method = RequestMethod.GET)
|
|
|
public String getQuotasLine(
|
|
|
@ApiParam(name = "id", value = "指标id", required = true) @RequestParam(value = "id", required = true) String id,
|
|
|
@ApiParam(name = "code", value = "指标的code", required = true) @RequestParam(value = "code", required = true) String code,
|
|
|
@ApiParam(name = "arealevel", value = "指标的level(1 省 2 市 3 区县 4 机构 5团队)", required = true) @RequestParam(value = "arealevel", required = true) String arealevel,
|
|
|
@ApiParam(name = "timeLevel", value = " 1增量的指标 2到达量的指标", required = true) @RequestParam(value = "timeLevel", required = true) String timeLevel,
|
|
|
@ApiParam(name = "startDate", value = "时间(yyyy-MM-dd)", required = false) @RequestParam(value = "startDate", required = true) String startDate,
|
|
|
@ApiParam(name = "endDate", value = "时间(yyyy-MM-dd),不传默认查今天", required = false) @RequestParam(value = "endDate", required = false) String endDate) {
|
|
|
//如果日期是空初始化是今天
|
|
|
if (StringUtils.isEmpty(endDate)) {
|
|
|
endDate = DateUtil.dateToStrShort(new Date());
|
|
|
}
|
|
|
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "查询某几个指标的到达量")
|
|
|
@RequestMapping(value = "/getQuotas", method = RequestMethod.GET)
|
|
|
public String getQuotas(
|
|
|
@ApiParam(name = "ids", value = "指标id,多个逗号分割", required = true) @RequestParam(value = "ids", required = true) String ids,
|
|
|
@ApiParam(name = "code", value = "指标的code", required = true) @RequestParam(value = "code", required = true) String code,
|
|
|
@ApiParam(name = "arealevel", value = "指标的level(1 省 2 市 3 区县 4 机构 5团队)", required = true) @RequestParam(value = "arealevel", required = true) String arealevel,
|
|
|
@ApiParam(name = "date", value = "时间(yyyy-MM-dd),不传默认查今天", required = false) @RequestParam(value = "date", required = false) String date) {
|
|
|
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
@RequestMapping(value = "/test", method = RequestMethod.GET)
|
|
|
public List<SaveModel> getQuotas()throws Exception {
|
|
|
String sql="SELECT city,cityName,sum(result1) result1 FROM wlyy_quota_test group by town,townName";
|
|
|
|
|
|
return elasticsearchService.excute(sql);
|
|
|
}
|
|
|
}
|