接口调整

This commit is contained in:
2023-09-19 11:29:47 +08:00
parent 7da60259b6
commit 0843e11dc5
6 changed files with 60 additions and 30 deletions

View File

@@ -27,7 +27,7 @@ public class PollutionVO {
private String name;
@ApiModelProperty("污染指标")
private Double data = -1.0;
private Double data = 3.14159;
@ApiModelProperty("子级")
private List<PollutionVO> children;

View File

@@ -239,7 +239,7 @@ public class PollutionSubstationServiceImpl extends ServiceImpl<RStatPollutionSu
pollutionVO.setId(detpid);
pollutionVO.setName(name+"\n("+temp.getLineIndexes().size()+")");
pollutionVO.setData(-1.0);
pollutionVO.setData(3.14159);
setData(harmonicPublicParam, pollutionType, searchBeginTime,harmonicPublicParam.getSearchEndTime(), pollutionVO, detpid);
List<PollutionVO> subPollutionVO = new ArrayList<>();
subIndexes.forEach(subIndex -> {
@@ -249,7 +249,7 @@ public class PollutionSubstationServiceImpl extends ServiceImpl<RStatPollutionSu
pollutionsubVO.setId(id);
pollutionsubVO.setName(pollutionSubstationDTO.getName());
pollutionsubVO.setPid(temp.getIndex());
pollutionsubVO.setData(-1.0);
pollutionsubVO.setData(3.14159);
setSubData(harmonicPublicParam, pollutionType, searchBeginTime,harmonicPublicParam.getSearchEndTime(), pollutionsubVO, id);
subPollutionVO.add(pollutionsubVO);
});
@@ -299,7 +299,6 @@ public class PollutionSubstationServiceImpl extends ServiceImpl<RStatPollutionSu
}
private void setSubData(HarmonicPublicParam harmonicPublicParam, String pollutionType, String searchBeginTime,String searchEndTime, PollutionVO pollutionsubVO, String id) {
//harmonicPublicParam.setReportFlag("5");
if(Objects.equals (harmonicPublicParam.getReportFlag (), BizParamConstant.STAT_BIZ_YEAR) ){
QueryWrapper<RStatPollutionSubstationYPO> wrapper = new QueryWrapper<> ();
wrapper.eq ("substation_id",id).

View File

@@ -15,6 +15,7 @@ import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Calendar;
import java.util.Date;
/**
* 污区数据
@@ -35,6 +36,40 @@ public class HarmPollutionJob {
String date = CommonExecutorUtils.prepareTimeDeal(command);
log.info("执行日期harmPollutionJob。。。。。。。。。。"+date);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DAY_OF_MONTH,-1);
Date temDate = calendar.getTime();
String begin = null;
String end = null;
switch (command){
case BizParamConstant.STAT_BIZ_DAY:
begin = sdf.format(DateUtil.beginOfDay(temDate));
end = sdf.format(DateUtil.endOfDay(temDate));
case BizParamConstant.STAT_BIZ_WEEK:
begin = sdf.format(DateUtil.beginOfWeek(temDate));
end = sdf.format(DateUtil.endOfWeek(temDate));
case BizParamConstant.STAT_BIZ_MONTH:
begin = sdf.format(DateUtil.beginOfMonth(temDate));
end = sdf.format(DateUtil.endOfMonth(temDate));
case BizParamConstant.STAT_BIZ_QUARTER:
begin = sdf.format(DateUtil.beginOfQuarter(temDate));
end = sdf.format(DateUtil.endOfQuarter(temDate));
case BizParamConstant.STAT_BIZ_YEAR:
begin = sdf.format(DateUtil.beginOfYear(temDate));
end = sdf.format(DateUtil.endOfYear(temDate));
default:
begin = sdf.format(DateUtil.beginOfDay(temDate));
end = sdf.format(DateUtil.endOfDay(temDate));
}
lineParam.setBeginTime(begin);
lineParam.setEndTime(end);
//测试数据部署时注释
//date = "2022-10-21";
lineParam.setDataDate(date);

View File

@@ -26,6 +26,7 @@ public class CommonExecutorUtils {
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DAY_OF_MONTH,-1);
if (Objects.equals(BizParamConstant.STAT_BIZ_DAY,command)){
calendar.add(Calendar.DAY_OF_MONTH,-1);
} else if (Objects.equals(BizParamConstant.STAT_BIZ_MONTH,command)){

View File

@@ -42,4 +42,14 @@ public class LineParam {
@ApiModelProperty(name = "dataSource",value = "数据源0:oracle1:influxdb 2:mysql")
private Integer dataSource;
/**
* 调度任务开始时间
*/
private String beginTime;
/**
* 调度任务结束时间
*/
private String endTime;
}

View File

@@ -38,6 +38,7 @@ import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.*;
import java.util.function.BinaryOperator;
@@ -96,12 +97,18 @@ public class PollutionServiceImpl implements PollutionService {
@Async("asyncExecutor")
public void processPollutionData(LineParam lineParam) {
log.info("参数起始时间:"+lineParam.getBeginTime());
log.info("参数结束时间:"+lineParam.getEndTime());
TimeInterval timer = new TimeInterval();
List<PollutionDTO> pollutionList;
LocalDateTime local = LocalDateTimeUtil.now();
if (StrUtil.isNotBlank(lineParam.getDataDate())){
local = LocalDateTimeUtil.parse(lineParam.getDataDate() + "T00:00:00");
local = LocalDateTimeUtil.parse(lineParam.getBeginTime());
}
List<DictData> dictData = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.POLLUTION_STATIS.getCode()).getData();
//时间类型为日的情况下执行influxdb计算
if (Integer.valueOf(BizParamConstant.STAT_BIZ_DAY).equals(lineParam.getType())){
@@ -139,27 +146,10 @@ public class PollutionServiceImpl implements PollutionService {
LogUtil.njcnDebug(log, "监测点污染指标数据MySql插入耗时{}", timer.intervalRestart());
}
Date dateOut = DateUtil.parse(lineParam.getDataDate());
LocalDateTime localEnd = LocalDateTimeUtil.now();
LocalDateTime localEnd = LocalDateTimeUtil.parse(lineParam.getEndTime());
LambdaQueryWrapper<RMpPollutionDPO> lambdaQuery = new LambdaQueryWrapper<>();
if (Integer.valueOf(BizParamConstant.STAT_BIZ_DAY).equals(lineParam.getType())){
localEnd = LocalDateTimeUtil.parse(lineParam.getDataDate() + "T23:59:59");
}else if (Integer.valueOf(BizParamConstant.STAT_BIZ_MONTH).equals(lineParam.getType())){
Date dateOutb = DateUtil.beginOfMonth(dateOut);
Date dateOute = dateOut;
local = LocalDateTimeUtil.parse(DateUtil.formatDate(dateOutb) + "T00:00:00");
localEnd = LocalDateTimeUtil.parse(DateUtil.formatDate(dateOute) + "T23:59:59");
}else if (Integer.valueOf(BizParamConstant.STAT_BIZ_QUARTER).equals(lineParam.getType())){
Date dateOutb = DateUtil.beginOfQuarter(dateOut);
Date dateOute = dateOut;
local = LocalDateTimeUtil.parse(DateUtil.formatDate(dateOutb) + "T00:00:00");
localEnd = LocalDateTimeUtil.parse(DateUtil.formatDate(dateOute) + "T23:59:59");
}else if (Integer.valueOf(BizParamConstant.STAT_BIZ_YEAR).equals(lineParam.getType())){
Date dateOutb = DateUtil.beginOfYear(dateOut);
Date dateOute = dateOut;
local = LocalDateTimeUtil.parse(DateUtil.formatDate(dateOutb) + "T00:00:00");
localEnd = LocalDateTimeUtil.parse(DateUtil.formatDate(dateOute) + "T23:59:59");
}
log.info("污区数据统计间隔"+local+"----->"+localEnd);
List<RMpPollutionDPO> pollutionDayList =new ArrayList<>();
@@ -527,11 +517,6 @@ public class PollutionServiceImpl implements PollutionService {
List<Double> data;
PublicDTO publicDTO;
List<PublicDTO> lineData = new ArrayList<>();
// String sql = "SELECT * FROM day_i where value_type = 'CP95' and (phasic_type = 'A' or phasic_type = 'B' or phasic_type = 'C')"+ processDate(dataDate,Integer.valueOf(BizParamConstant.STAT_BIZ_DAY)) +" group by line_id order by time desc limit 3 tz('Asia/Shanghai')";
// InfluxDBResultMapper resultMapper = new InfluxDBResultMapper();
//
// QueryResult sqlResult = influxDbUtils.query(sql);
// List<DayIPO> list = resultMapper.toPOJO(sqlResult, DayIPO.class);
for (RStatDataIDPO dayI : list) {
for (Overlimit overlimit : overLimitList) {
if (Objects.equals(dayI.getLineId(),overlimit.getId())){