|
@ -21,6 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
|
import org.springframework.stereotype.Component;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
|
|
import java.text.ParseException;
|
|
import java.text.SimpleDateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
@ -270,18 +271,22 @@ public class ElasticsearchUtil {
|
|
groupBy.append(" group by city,cityName");
|
|
groupBy.append(" group by city,cityName");
|
|
}
|
|
}
|
|
|
|
|
|
if (SaveModel.teamLevel.equals(level + "")) {
|
|
|
|
sql.append(" team='" + area + "'");
|
|
|
|
} else if (SaveModel.OrgLevel.equals(level + "")) {
|
|
|
|
sql.append(" hospital='" + area + "'");
|
|
|
|
} else if (SaveModel.townLevel.equals(level + "")) {
|
|
|
|
sql.append(" town='" + area + "'");
|
|
|
|
} else if (SaveModel.cityLevel.equals(level + "")) {
|
|
|
|
sql.append(" city='" + area + "'");
|
|
|
|
|
|
if(StringUtils.isNotEmpty(area)){
|
|
|
|
|
|
|
|
if (SaveModel.teamLevel.equals(level + "")) {
|
|
|
|
sql.append(" team='" + area + "'");
|
|
|
|
} else if (SaveModel.OrgLevel.equals(level + "")) {
|
|
|
|
sql.append(" hospital='" + area + "'");
|
|
|
|
} else if (SaveModel.townLevel.equals(level + "")) {
|
|
|
|
sql.append(" town='" + area + "'");
|
|
|
|
} else if (SaveModel.cityLevel.equals(level + "")) {
|
|
|
|
sql.append(" city='" + area + "'");
|
|
|
|
}
|
|
|
|
sql.append(" and ");
|
|
}
|
|
}
|
|
sql.append(" and quotaCode='" + index + "' ");
|
|
|
|
sql.append(" and timeLevel='" + timeLevel + "' ");
|
|
|
|
sql.append(" and areaLevel='5'");
|
|
|
|
|
|
sql.append(" quotaCode='" + index + "' ");
|
|
|
|
sql.append(" imeLevel='" + timeLevel + "' ");
|
|
|
|
sql.append(" areaLevel='5'");
|
|
if (StringUtils.isNotEmpty(startDate)) {
|
|
if (StringUtils.isNotEmpty(startDate)) {
|
|
sql.append(" and quotaDate>='" + startDate + "'");
|
|
sql.append(" and quotaDate>='" + startDate + "'");
|
|
}
|
|
}
|
|
@ -293,11 +298,11 @@ public class ElasticsearchUtil {
|
|
//根据时间维度分组
|
|
//根据时间维度分组
|
|
if (StringUtils.isNotEmpty(interval)) {
|
|
if (StringUtils.isNotEmpty(interval)) {
|
|
if (SaveModel.interval_month.equals(interval)) {
|
|
if (SaveModel.interval_month.equals(interval)) {
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='month') ");
|
|
|
|
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='month','time_zone'='+08:00') ");
|
|
} else if (SaveModel.interval_week.equals(interval)) {
|
|
} else if (SaveModel.interval_week.equals(interval)) {
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='week') ");
|
|
|
|
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='week','time_zone'='+08:00') ");
|
|
} else if (SaveModel.interval_day.equals(interval)) {
|
|
} else if (SaveModel.interval_day.equals(interval)) {
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='1d') ");
|
|
|
|
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='1d','time_zone'='+08:00') ");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
sql.append(groupBy);
|
|
sql.append(groupBy);
|
|
@ -360,18 +365,22 @@ public class ElasticsearchUtil {
|
|
groupBy.append(" group by city,cityName,slaveKey1,slaveKey1Name");
|
|
groupBy.append(" group by city,cityName,slaveKey1,slaveKey1Name");
|
|
}
|
|
}
|
|
|
|
|
|
if (SaveModel.teamLevel.equals(lowLevel)) {
|
|
|
|
sql.append(" team='" + area + "'");
|
|
|
|
} else if (SaveModel.OrgLevel.equals(lowLevel)) {
|
|
|
|
sql.append(" hospital='" + area + "'");
|
|
|
|
} else if (SaveModel.townLevel.equals(lowLevel)) {
|
|
|
|
sql.append(" town='" + area + "'");
|
|
|
|
} else if (SaveModel.cityLevel.equals(lowLevel)) {
|
|
|
|
sql.append(" city='" + area + "'");
|
|
|
|
|
|
if(StringUtils.isNotEmpty(area)){
|
|
|
|
|
|
|
|
if (SaveModel.teamLevel.equals(level + "")) {
|
|
|
|
sql.append(" team='" + area + "'");
|
|
|
|
} else if (SaveModel.OrgLevel.equals(level + "")) {
|
|
|
|
sql.append(" hospital='" + area + "'");
|
|
|
|
} else if (SaveModel.townLevel.equals(level + "")) {
|
|
|
|
sql.append(" town='" + area + "'");
|
|
|
|
} else if (SaveModel.cityLevel.equals(level + "")) {
|
|
|
|
sql.append(" city='" + area + "'");
|
|
|
|
}
|
|
|
|
sql.append(" and ");
|
|
}
|
|
}
|
|
sql.append(" and quotaCode='" + index + "' ");
|
|
|
|
sql.append(" and timeLevel='" + timeLevel + "' ");
|
|
|
|
sql.append(" and areaLevel='5'");
|
|
|
|
|
|
sql.append(" quotaCode='" + index + "' ");
|
|
|
|
sql.append(" imeLevel='" + timeLevel + "' ");
|
|
|
|
sql.append(" areaLevel='5'");
|
|
if (StringUtils.isNotEmpty(startDate)) {
|
|
if (StringUtils.isNotEmpty(startDate)) {
|
|
sql.append(" and quotaDate>='" + startDate + "'");
|
|
sql.append(" and quotaDate>='" + startDate + "'");
|
|
}
|
|
}
|
|
@ -385,11 +394,11 @@ public class ElasticsearchUtil {
|
|
//根据时间维度分组
|
|
//根据时间维度分组
|
|
if (StringUtils.isNotEmpty(interval)) {
|
|
if (StringUtils.isNotEmpty(interval)) {
|
|
if (SaveModel.interval_month.equals(interval)) {
|
|
if (SaveModel.interval_month.equals(interval)) {
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='month') ");
|
|
|
|
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='month','time_zone'='+08:00') ");
|
|
} else if (SaveModel.interval_week.equals(interval)) {
|
|
} else if (SaveModel.interval_week.equals(interval)) {
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='week') ");
|
|
|
|
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='week','time_zone'='+08:00') ");
|
|
} else if (SaveModel.interval_day.equals(interval)) {
|
|
} else if (SaveModel.interval_day.equals(interval)) {
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='1d') ");
|
|
|
|
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='1d','time_zone'='+08:00') ");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
sql.append(groupBy);
|
|
sql.append(groupBy);
|
|
@ -450,20 +459,22 @@ public class ElasticsearchUtil {
|
|
sql.append("select city,cityName,slaveKey1,slaveKey1Name,slaveKey2,slaveKey2Name,sum(result1) result1,sum(result2) result2 from wlyy_quota_test where ");
|
|
sql.append("select city,cityName,slaveKey1,slaveKey1Name,slaveKey2,slaveKey2Name,sum(result1) result1,sum(result2) result2 from wlyy_quota_test where ");
|
|
groupBy.append(" group by city,cityName,slaveKey1,slaveKey1Name,slaveKey2,slaveKey2Name");
|
|
groupBy.append(" group by city,cityName,slaveKey1,slaveKey1Name,slaveKey2,slaveKey2Name");
|
|
}
|
|
}
|
|
|
|
if(StringUtils.isNotEmpty(area)){
|
|
|
|
|
|
|
|
|
|
if (SaveModel.teamLevel.equals(lowLevel)) {
|
|
|
|
sql.append(" team='" + area + "'");
|
|
|
|
} else if (SaveModel.OrgLevel.equals(lowLevel)) {
|
|
|
|
sql.append(" hospital='" + area + "'");
|
|
|
|
} else if (SaveModel.townLevel.equals(lowLevel)) {
|
|
|
|
sql.append(" town='" + area + "'");
|
|
|
|
} else if (SaveModel.cityLevel.equals(lowLevel)) {
|
|
|
|
sql.append(" city='" + area + "'");
|
|
|
|
|
|
if (SaveModel.teamLevel.equals(level + "")) {
|
|
|
|
sql.append(" team='" + area + "'");
|
|
|
|
} else if (SaveModel.OrgLevel.equals(level + "")) {
|
|
|
|
sql.append(" hospital='" + area + "'");
|
|
|
|
} else if (SaveModel.townLevel.equals(level + "")) {
|
|
|
|
sql.append(" town='" + area + "'");
|
|
|
|
} else if (SaveModel.cityLevel.equals(level + "")) {
|
|
|
|
sql.append(" city='" + area + "'");
|
|
|
|
}
|
|
|
|
sql.append(" and ");
|
|
}
|
|
}
|
|
sql.append(" and quotaCode='" + index + "' ");
|
|
|
|
sql.append(" and timeLevel='" + timeLevel + "' ");
|
|
|
|
sql.append(" and areaLevel='5'");
|
|
|
|
|
|
sql.append(" quotaCode='" + index + "' ");
|
|
|
|
sql.append(" imeLevel='" + timeLevel + "' ");
|
|
|
|
sql.append(" areaLevel='5'");
|
|
if (StringUtils.isNotEmpty(startDate)) {
|
|
if (StringUtils.isNotEmpty(startDate)) {
|
|
sql.append(" and quotaDate>='" + startDate + "'");
|
|
sql.append(" and quotaDate>='" + startDate + "'");
|
|
}
|
|
}
|
|
@ -481,11 +492,11 @@ public class ElasticsearchUtil {
|
|
//根据时间维度分组
|
|
//根据时间维度分组
|
|
if (StringUtils.isNotEmpty(interval)) {
|
|
if (StringUtils.isNotEmpty(interval)) {
|
|
if (SaveModel.interval_month.equals(interval)) {
|
|
if (SaveModel.interval_month.equals(interval)) {
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='month') ");
|
|
|
|
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='month','time_zone'='+08:00') ");
|
|
} else if (SaveModel.interval_week.equals(interval)) {
|
|
} else if (SaveModel.interval_week.equals(interval)) {
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='week') ");
|
|
|
|
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='week','time_zone'='+08:00') ");
|
|
} else if (SaveModel.interval_day.equals(interval)) {
|
|
} else if (SaveModel.interval_day.equals(interval)) {
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='1d') ");
|
|
|
|
|
|
groupBy.append(" ,date_histogram(field='quotaDate','interval'='1d','time_zone'='+08:00') ");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
sql.append(groupBy);
|
|
sql.append(groupBy);
|
|
@ -497,12 +508,21 @@ public class ElasticsearchUtil {
|
|
*
|
|
*
|
|
* @param quotaDate
|
|
* @param quotaDate
|
|
*/
|
|
*/
|
|
private String changeDate(String quotaDate) {
|
|
|
|
return quotaDate + "T00:00:00+0800";
|
|
|
|
|
|
private String changeDate(String quotaDate){
|
|
|
|
try {
|
|
|
|
quotaDate = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXX").format(new SimpleDateFormat("yyyy-MM-dd").parse(quotaDate));
|
|
|
|
} catch (ParseException e) {
|
|
|
|
e.printStackTrace();
|
|
|
|
}
|
|
|
|
return quotaDate;
|
|
}
|
|
}
|
|
//获取最新更新的时间
|
|
|
|
public String changeTime(String time) {
|
|
|
|
time = time.replace(" ","T")+"+0800";
|
|
|
|
|
|
|
|
|
|
public String changeTime(String time){
|
|
|
|
try {
|
|
|
|
time = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXX").format(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(time));
|
|
|
|
} catch (ParseException e) {
|
|
|
|
e.printStackTrace();
|
|
|
|
}
|
|
return time;
|
|
return time;
|
|
}
|
|
}
|
|
|
|
|