From 1a296f04870ed3b6ca4d2237398c9adebe6c5605 Mon Sep 17 00:00:00 2001 From: fsyud Date: Fri, 17 Apr 2026 17:00:45 +0800 Subject: [PATCH] =?UTF-8?q?chore(gitignore):=20=E4=BF=AE=E6=94=B9=E5=B9=B6?= =?UTF-8?q?=E7=BB=9F=E4=B8=80.gitignore=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 删除了.gitignore文件开头多余的空白行 - 将忽略规则中的所有前缀由负向规则改为正向规则(-改为+) - 新增对CLAUDE.md文件的忽略规则 - 调整并统一不同IDE和系统相关忽略规则格式 - 删除不必要的缩进,增强可读性 --- ...rDailyPowerOutageEventSyncServiceImpl.java | 16 +++++++++++---- .../impl/HourlyOutageExcelProcessService.java | 20 +++++++++++-------- .../impl/RegionalWeatherDataSyncService.java | 4 +++- .../power/grid/utils/AreaConfigUtil.java | 8 +++++--- 4 files changed, 32 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/southern/power/grid/service/impl/DnerDailyPowerOutageEventSyncServiceImpl.java b/src/main/java/com/southern/power/grid/service/impl/DnerDailyPowerOutageEventSyncServiceImpl.java index 32e7a2b..f07c49f 100644 --- a/src/main/java/com/southern/power/grid/service/impl/DnerDailyPowerOutageEventSyncServiceImpl.java +++ b/src/main/java/com/southern/power/grid/service/impl/DnerDailyPowerOutageEventSyncServiceImpl.java @@ -16,6 +16,7 @@ import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.stereotype.Service; import org.springframework.util.Assert; import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; import org.springframework.util.StringUtils; import java.time.LocalDate; @@ -54,9 +55,9 @@ public class DnerDailyPowerOutageEventSyncServiceImpl extends ServiceImpl()); + if (ObjectUtils.isEmpty(count) || count == 0) { + log.info("同步日K数据,分时表数据为空"); + return true; + } if (!StringUtils.hasLength(startDate)) { startDate = getStartDate(eventId); } @@ -90,6 +96,8 @@ public class DnerDailyPowerOutageEventSyncServiceImpl extends ServiceImpl allDates = getAllDates(startDate, endDate); if (CollectionUtils.isEmpty(allDates)) { @@ -205,7 +213,7 @@ public class DnerDailyPowerOutageEventSyncServiceImpl extends ServiceImpl future : futures) { 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 4f5ccb5..93eec55 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 @@ -67,7 +67,7 @@ public class HourlyOutageExcelProcessService { if (rowContexts.isEmpty()) { return; } - + log.info("需要处理数据数量:{}",districtTimeRangeMap.size()); // 3.2 按区县分批 IN 查询气象数据,并建立区县+时次索引 Map> weatherIndex = loadWeatherIndexByDistrict(districtTimeRangeMap); @@ -133,10 +133,10 @@ public class HourlyOutageExcelProcessService { /** * 遍历原始 Excel 行,完成预处理、合法性校验、区域编码映射,并产出后续处理所需上下文。 * - * @param excelRows 原始 Excel 行 - * @param districtCodeCache 区域编码缓存(省市区 -> 区县编码) - * @param rowContexts 输出参数:有效行与区县编码映射 - * @param districtTimeRangeMap 输出参数:每个区县对应的最小开始时间与最大结束时间 + * @param excelRows 原始 Excel 行 + * @param districtCodeCache 区域编码缓存(省市区 -> 区县编码) + * @param rowContexts 输出参数:有效行与区县编码映射 + * @param districtTimeRangeMap 输出参数:每个区县对应的最小开始时间与最大结束时间 */ private void collectValidRowsAndRanges(List excelRows, Map districtCodeCache, @@ -267,12 +267,16 @@ public class HourlyOutageExcelProcessService { continue; } + String startDate = formatToHourStart(batchMinStart); + String endDate = formatToHourStart(batchMaxEnd); // 批量拉取该批区县在时间窗内的气象数据 List weatherDataList = regionalWeatherDataMapper.selectByOrgCodesAndTimeRange( new ArrayList<>(batchCodes), - formatToHourStart(batchMinStart), - formatToHourStart(batchMaxEnd)); - + startDate, + endDate); + if (!weatherDataList.isEmpty()) { + log.error("xxxxxxxx"); + } for (RegionalWeatherData weatherData : weatherDataList) { String orgCode = weatherData.getOrgCode(); TimeRange districtRange = districtTimeRangeMap.get(orgCode); diff --git a/src/main/java/com/southern/power/grid/service/impl/RegionalWeatherDataSyncService.java b/src/main/java/com/southern/power/grid/service/impl/RegionalWeatherDataSyncService.java index 1664860..d346990 100644 --- a/src/main/java/com/southern/power/grid/service/impl/RegionalWeatherDataSyncService.java +++ b/src/main/java/com/southern/power/grid/service/impl/RegionalWeatherDataSyncService.java @@ -190,7 +190,9 @@ public class RegionalWeatherDataSyncService extends ServiceImpl config.getDistrictCode().length() > 6 + ? config.getDistrictCode().substring(0, 6) + : config.getDistrictCode(), (oldValue, newValue) -> oldValue)); // 全部放入你的成员变量 Map diff --git a/src/main/java/com/southern/power/grid/utils/AreaConfigUtil.java b/src/main/java/com/southern/power/grid/utils/AreaConfigUtil.java index d2426bc..15b5250 100644 --- a/src/main/java/com/southern/power/grid/utils/AreaConfigUtil.java +++ b/src/main/java/com/southern/power/grid/utils/AreaConfigUtil.java @@ -92,7 +92,7 @@ public class AreaConfigUtil { nwAreaMap.put(key, cfg.getDistrictCode()); } nwAreaMapThreadLocal.set(nwAreaMap); - log.debug("南网区划配置加载完成,共 {} 条", nwAreaMap.size()); + log.info("南网区划配置加载完成,共 {} 条", nwAreaMap.size()); } /** @@ -112,10 +112,12 @@ public class AreaConfigUtil { Map> weatherAreaMap = new HashMap<>((int)(list.size() / 0.75) + 1); for (WeatherSiteAreaConfiguration cfg : list) { - weatherAreaMap.computeIfAbsent(cfg.getDistrictCode(), k -> new ArrayList<>()).add(cfg); + String districtCode = cfg.getDistrictCode(); + String key = districtCode.length() > 6 ? districtCode.substring(0, 6) : districtCode; + weatherAreaMap.computeIfAbsent(key, k -> new ArrayList<>()).add(cfg); } weatherAreaMapThreadLocal.set(weatherAreaMap); - log.debug("气象区划配置加载完成,共 {} 条", weatherAreaMap.size()); + log.info("气象区划配置加载完成,共 {} 条", weatherAreaMap.size()); } /**