123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- 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 town,townName,sum(result1) result1 FROM wlyy_quota_test group by town,townName";
- return elasticsearchService.excute(sql);
- }
- }
|