From 8fdbfb79713f2a63ab96b9aefd0489247f3d78b1 Mon Sep 17 00:00:00 2001 From: liuzhiming Date: Mon, 16 Mar 2026 16:43:19 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E6=8F=90=E4=BA=A4=EF=BC=9A?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=88=86=E6=97=B6=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../power/grid/controller/DnerController.java | 2 -- .../grid/entity/DnerHourlyPowerOutageEvent.java | 4 ++-- .../impl/HourlyOutageExcelProcessService.java | 16 ++++++++-------- 3 files changed, 10 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/southern/power/grid/controller/DnerController.java b/src/main/java/com/southern/power/grid/controller/DnerController.java index 1a8bed2..832ed0d 100644 --- a/src/main/java/com/southern/power/grid/controller/DnerController.java +++ b/src/main/java/com/southern/power/grid/controller/DnerController.java @@ -10,11 +10,9 @@ import com.southern.power.grid.service.IDnerSiteAreaConfigurationService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; import java.io.InputStream; import java.util.List; -import java.util.UUID; /** * 配网抢修-Controller diff --git a/src/main/java/com/southern/power/grid/entity/DnerHourlyPowerOutageEvent.java b/src/main/java/com/southern/power/grid/entity/DnerHourlyPowerOutageEvent.java index 159bd75..43d8d26 100644 --- a/src/main/java/com/southern/power/grid/entity/DnerHourlyPowerOutageEvent.java +++ b/src/main/java/com/southern/power/grid/entity/DnerHourlyPowerOutageEvent.java @@ -71,12 +71,12 @@ public class DnerHourlyPowerOutageEvent { /** * 停电状态(1-待停电;2-停电中;3-已复电) */ - private Integer outageState; + private String outageState; /** * 停电类型(1-故障类;2-计划类) */ - private Integer outageType; + private String outageType; /** * 创建人 diff --git a/src/main/java/com/southern/power/grid/service/impl/HourlyOutageExcelProcessService.java b/src/main/java/com/southern/power/grid/service/impl/HourlyOutageExcelProcessService.java index 502d1ac..8db084f 100644 --- a/src/main/java/com/southern/power/grid/service/impl/HourlyOutageExcelProcessService.java +++ b/src/main/java/com/southern/power/grid/service/impl/HourlyOutageExcelProcessService.java @@ -3,8 +3,8 @@ package com.southern.power.grid.service.impl; import com.southern.power.grid.dao.DnerHourlyPowerOutageEventMapper; import com.southern.power.grid.dao.NwSiteAreaConfigurationMapper; import com.southern.power.grid.dao.WeatherSiteAreaConfigurationMapper; +import com.southern.power.grid.entity.DataExcelEntity; import com.southern.power.grid.entity.DnerHourlyPowerOutageEvent; -import com.southern.power.grid.entity.ExcelHourlyOutageRowDTO; import com.southern.power.grid.entity.NwSiteAreaConfiguration; import com.southern.power.grid.entity.WeatherDataDTO; import com.southern.power.grid.entity.WeatherSiteAreaConfiguration; @@ -51,7 +51,7 @@ public class HourlyOutageExcelProcessService { * 对外主入口:处理一批 Excel 解析后的数据,按逻辑补齐气象数据并批量入库 */ @Transactional(rollbackFor = Exception.class) - public void process(List excelRows) { + public void process(List excelRows) { // 1. 加载南网配置表 loadNwAreaConfig(); // 2. 加载气象区划配置表 @@ -60,9 +60,9 @@ public class HourlyOutageExcelProcessService { List toInsert = new ArrayList<>(); // 3 & 4. 循环处理 Excel 行 - for (ExcelHourlyOutageRowDTO row : excelRows) { + for (DataExcelEntity row : excelRows) { // 3.1 根据南网省/市/区县 → district_code - String districtCode = findDistrictCode(row.getNwProvince(), row.getNwCity(), row.getNwDistrict()); + String districtCode = findDistrictCode(row.getProvince(), row.getCity(), row.getDistrict()); if (districtCode == null) { // 找不到映射,可记录日志或统计 continue; @@ -77,7 +77,7 @@ public class HourlyOutageExcelProcessService { String stationId = weatherArea.getStationId(); // 3.3 通过 stationId + 时间,统一取7天气象数据(内部做缓存) - LocalDateTime dataTime = row.getDataTime(); + LocalDateTime dataTime = row.getStartTime(); WeatherDataDTO weatherData = weatherDataService.getWeatherData(stationId, dataTime); // 3.4 组装分时停电事件实体 @@ -126,15 +126,15 @@ public class HourlyOutageExcelProcessService { return nwAreaMap.get(key); } - private DnerHourlyPowerOutageEvent buildHourlyEvent(ExcelHourlyOutageRowDTO row, + private DnerHourlyPowerOutageEvent buildHourlyEvent(DataExcelEntity row, String districtCode, WeatherDataDTO weatherData) { DnerHourlyPowerOutageEvent e = new DnerHourlyPowerOutageEvent(); e.setOrgCode(districtCode); // 时间转成字符串,入库到 data_time - if (row.getDataTime() != null) { - e.setDataTime(row.getDataTime().format(DB_DATETIME_STR)); + if (row.getStartTime() != null) { + e.setDataTime(row.getStartTime().format(DB_DATETIME_STR)); } // Excel 本身的业务字段