|
@@ -3,20 +3,26 @@ package com.cpp.web.controller.regulation;
|
|
|
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.cpp.common.core.domain.R;
|
|
|
+import com.cpp.common.core.domain.entity.SysUser;
|
|
|
import com.cpp.common.core.domain.model.LoginUser;
|
|
|
import com.cpp.common.utils.DateUtils;
|
|
|
import com.cpp.common.utils.SecurityUtils;
|
|
|
import com.cpp.system.service.ISysConfigService;
|
|
|
+import com.cpp.system.service.ISysUserService;
|
|
|
import com.cpp.web.domain.accuracy.AccuracyPassRate;
|
|
|
import com.cpp.web.domain.enums.DataSourcesEnum;
|
|
|
import com.cpp.web.domain.enums.ForecastTypeEnum;
|
|
|
+import com.cpp.web.domain.enums.RegulationStatusEnum;
|
|
|
import com.cpp.web.domain.regulation.TempShortRegulation;
|
|
|
import com.cpp.web.domain.regulation.TempShortRegulationDetail;
|
|
|
import com.cpp.web.domain.regulation.TempShortUsual;
|
|
|
import com.cpp.web.domain.regulation.TempShortUsualDetail;
|
|
|
import com.cpp.web.domain.station.ElectricField;
|
|
|
import com.cpp.web.domain.station.ForecastPowerShortTermStation;
|
|
|
+import com.cpp.web.domain.station.InverterStatusData;
|
|
|
import com.cpp.web.dto.TempShortRegulationDto;
|
|
|
import com.cpp.web.service.accuracy.AccuracyPassRateService;
|
|
|
import com.cpp.web.service.regulation.TempShortRegulationDetailService;
|
|
@@ -26,6 +32,7 @@ import com.cpp.web.service.regulation.TempShortUsualService;
|
|
|
import com.cpp.web.service.station.ElectricFieldService;
|
|
|
import com.cpp.web.service.station.ForecastPowerShortTermStationService;
|
|
|
import com.cpp.web.utils.DateTimeUtil;
|
|
|
+import io.swagger.annotations.ApiOperation;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
@@ -60,6 +67,8 @@ public class DqRegulationController {
|
|
|
TempShortUsualDetailService tempShortUsualDetailService;
|
|
|
@Autowired
|
|
|
ISysConfigService configService;
|
|
|
+ @Autowired
|
|
|
+ ISysUserService iSysUserService;
|
|
|
|
|
|
|
|
|
|
|
@@ -224,6 +233,8 @@ public class DqRegulationController {
|
|
|
tempShortRegulation.setForecastDate(tempShortRegulationDto.getForecastDate());
|
|
|
tempShortRegulation.setTkDate(tempShortRegulationDto.getTkDate());
|
|
|
tempShortRegulation.setCreateBy(loginUser.getUsername());
|
|
|
+ // 设置未下发
|
|
|
+ tempShortRegulation.setRegulationStatusEnum(RegulationStatusEnum.E2.name());
|
|
|
tempShortRegulationService.save(tempShortRegulation);
|
|
|
|
|
|
// 封装新的调控明细插入数据
|
|
@@ -315,4 +326,47 @@ public class DqRegulationController {
|
|
|
calendar.set(Calendar.SECOND, 0);
|
|
|
return R.ok(DateUtil.format(calendar.getTime(), "yyyy-MM-dd HH:mm:ss"));
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 短期调控记录列表分页
|
|
|
+ *
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @ApiOperation(value = "分页查询", notes = "分页查询")
|
|
|
+ @GetMapping("/getDqRegulationRecordList")
|
|
|
+ public R getDqRegulationRecordList(String stationCode, Long startTime,Long endTime) {
|
|
|
+ QueryWrapper<TempShortRegulation> tempShortRegulationQueryWrapper = new QueryWrapper<>();
|
|
|
+ tempShortRegulationQueryWrapper.eq("station_code", stationCode);
|
|
|
+ tempShortRegulationQueryWrapper.between("tk_date", new Date(startTime), new Date(endTime));
|
|
|
+ tempShortRegulationQueryWrapper.orderByAsc("tk_date").orderByAsc("station_code").orderByAsc("forecast_date");
|
|
|
+ List<TempShortRegulation> tempShortRegulationList = tempShortRegulationService.list(tempShortRegulationQueryWrapper);
|
|
|
+ if (tempShortRegulationList.size()>0){
|
|
|
+ // 排序调控日期、调控场站、上报预测日期
|
|
|
+ tempShortRegulationList.sort(Comparator.comparing(TempShortRegulation::getTkDate).thenComparing(TempShortRegulation::getStationCode).thenComparing(TempShortRegulation::getForecastDate));
|
|
|
+ }
|
|
|
+ List<Map<String, Object>> tableList = new ArrayList();
|
|
|
+ List<SysUser> sysUserList = iSysUserService.findAll();
|
|
|
+ // 封装列表数据
|
|
|
+ for (TempShortRegulation tempShortRegulation : tempShortRegulationList) {
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ map.put("tkDate", DateUtil.format(tempShortRegulation.getTkDate(), "yyyy-MM-dd"));
|
|
|
+ map.put("stationCode", tempShortRegulation.getStationCode());
|
|
|
+ map.put("forecastDate", DateUtil.format(tempShortRegulation.getForecastDate(), "yyyy-MM-dd"));
|
|
|
+ map.put("regulationStatusEnum", RegulationStatusEnum.valueOf(tempShortRegulation.getRegulationStatusEnum()).getMessage());
|
|
|
+ map.put("sbzt", "成功");
|
|
|
+ // 根据账号获取昵称
|
|
|
+ Optional<SysUser> sysUserOptional = sysUserList.stream().filter(sysUser -> sysUser.getUserName().equals(tempShortRegulation.getCreateBy())).findFirst();
|
|
|
+ if (sysUserOptional.isPresent()) {
|
|
|
+ map.put("createBy", sysUserOptional.get().getNickName());
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ map.put("createBy", tempShortRegulation.getCreateBy());
|
|
|
+ }
|
|
|
+ tableList.add(map);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ return R.ok(tableList);
|
|
|
+ }
|
|
|
}
|