|
@@ -21,6 +21,7 @@ import com.bizmatics.service.util.SecurityUtils;
|
|
|
import com.bizmatics.service.vo.*;
|
|
|
import com.fasterxml.jackson.core.type.TypeReference;
|
|
|
import lombok.SneakyThrows;
|
|
|
+import org.apache.lucene.index.OneMergeWrappingMergePolicy;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
@@ -630,13 +631,40 @@ public class HtAnalogDataServiceImpl extends AbstractCrudService<HtAnalogDataMap
|
|
|
|
|
|
@Override
|
|
|
public List<CommonIcoVO> demandAnalysis(String deviceCode, String monthDate, int cycle) {
|
|
|
+ SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ SimpleDateFormat formatter1 = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
+ String date = FieldEscapeUtils.getLastDayOfMonth(monthDate);
|
|
|
+ String date1=monthDate+"-01 00:00:00";
|
|
|
+ String date2 = date + " 23:59:59";
|
|
|
+ Date startTime;
|
|
|
+ Date endTime;
|
|
|
+ try {
|
|
|
+ startTime = formatter.parse(date1);
|
|
|
+ endTime = formatter.parse(date2);
|
|
|
+ } catch (Exception e) {
|
|
|
+ throw new BusinessException("时间错误");
|
|
|
+ }
|
|
|
+
|
|
|
+ LambdaQueryWrapper<HtAnalogData> queryWrapper = Wrappers.lambdaQuery();
|
|
|
+ queryWrapper.select(HtAnalogData::getDemand,HtAnalogData::getFreezingTime)
|
|
|
+ .eq(HtAnalogData::getDeviceName,deviceCode)
|
|
|
+ .between(HtAnalogData::getFreezingTime,startTime,endTime).groupBy(HtAnalogData::getFreezingTime);
|
|
|
+ List<HtAnalogData> list1 = this.list(queryWrapper);
|
|
|
List<Object> demandList = new ArrayList<>();
|
|
|
List<Object> freezingTimesList = new ArrayList<>();
|
|
|
- List<HtAnalogDataVo> maxdemandAnalysis = baseMapper.demandAnalysisList(deviceCode, monthDate);
|
|
|
- for (int i = 0; i < maxdemandAnalysis.size(); i++){
|
|
|
- demandList.add(maxdemandAnalysis.get(i).getDemand());
|
|
|
- freezingTimesList.add(maxdemandAnalysis.get(i).getFreezingTimes());
|
|
|
+ for (int i = 0; i < list1.size(); i++){
|
|
|
+ demandList.add(list1.get(i).getDemand());
|
|
|
+ freezingTimesList.add(formatter1.format(list1.get(i).getFreezingTime()));
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+// List<Object> demandList = new ArrayList<>();
|
|
|
+// List<Object> freezingTimesList = new ArrayList<>();
|
|
|
+// List<HtAnalogDataVo> maxdemandAnalysis = baseMapper.demandAnalysisList(deviceCode, monthDate);
|
|
|
+// for (int i = 0; i < maxdemandAnalysis.size(); i++){
|
|
|
+// demandList.add(maxdemandAnalysis.get(i).getDemand());
|
|
|
+// freezingTimesList.add(maxdemandAnalysis.get(i).getFreezingTimes());
|
|
|
+// }
|
|
|
List<CommonIcoVO> list = new ArrayList<>();
|
|
|
list.add(CommonIcoVO.builder().name("实时有功需量").list(demandList).listDate(freezingTimesList).build());
|
|
|
return list;
|