Browse Source

物计算优化

2025年7月15日08:55:52
qingyuan_dev_new
lishuai 6 months ago
parent
commit
17b42d5142
  1. 38
      modules/quartz/src/main/java/com/thing/quartz/calc/task/CalcTask.java

38
modules/quartz/src/main/java/com/thing/quartz/calc/task/CalcTask.java

@ -1,8 +1,14 @@
package com.thing.quartz.calc.task; package com.thing.quartz.calc.task;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Lists;
import com.thing.calculation.dto.CalcTargetConfigDTO;
import com.thing.calculation.dto.ExecuteCalcRequest; import com.thing.calculation.dto.ExecuteCalcRequest;
import com.thing.calculation.dto.ReCalcRequest;
import com.thing.calculation.handler.CalcExecuteHandler; import com.thing.calculation.handler.CalcExecuteHandler;
import com.thing.calculation.service.CalcTargetConfigService;
import com.thing.common.core.utils.DateTimeUtils;
import com.thing.quartz.timetask.task.ITask; import com.thing.quartz.timetask.task.ITask;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
@ -11,6 +17,12 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
import static com.thing.common.core.utils.DateTimeUtils.DATE_TIME_PATTERN;
/** /**
* @author siyang * @author siyang
* @date 2024-03-04 * @date 2024-03-04
@ -22,6 +34,7 @@ import org.springframework.stereotype.Component;
public class CalcTask implements ITask { public class CalcTask implements ITask {
private final CalcExecuteHandler calcExecuteHandler; private final CalcExecuteHandler calcExecuteHandler;
private final CalcTargetConfigService calcTargetConfigService;
@Override @Override
public void run(String params) { public void run(String params) {
@ -31,6 +44,29 @@ public class CalcTask implements ITask {
} else { } else {
request = JSONObject.parseObject(params, ExecuteCalcRequest.class); request = JSONObject.parseObject(params, ExecuteCalcRequest.class);
} }
calcExecuteHandler.handleCalculate(request,null);
List<CalcTargetConfigDTO> targetConfigs = calcTargetConfigService.getAllEnabled();
if(CollectionUtil.isEmpty(targetConfigs)){
return;
}
String dayBeginTime;
String dayEndTime;
if(!Objects.isNull(request) && !Objects.isNull(request.getStartTime())&& !Objects.isNull(request.getEndTime())){
dayBeginTime = request.getStartTime();
dayEndTime = request.getEndTime();
}else{
LocalDateTime hourStart = DateTimeUtils.getHourStart(LocalDateTime.now());
LocalDateTime hourEnd = DateTimeUtils.getHourEnd(LocalDateTime.now());
dayBeginTime = hourStart.minusHours(1).format(DATE_TIME_PATTERN);
dayEndTime = hourEnd.format(DATE_TIME_PATTERN);
}
for (CalcTargetConfigDTO targetConfig : targetConfigs) {
ReCalcRequest request1 = new ReCalcRequest();
request1.setCalcTargetConfigIds(Lists.newArrayList(targetConfig.getId()));
request1.setStartTime(dayBeginTime);
request1.setEndTime(dayEndTime);
calcTargetConfigService.reCalculate(request1);
}
// calcExecuteHandler.handleCalculate(request,null);
} }
} }
Loading…
Cancel
Save