添加机构

This commit is contained in:
Flow 2025-06-30 16:08:00 +08:00
parent 570ea1e405
commit 1b3a765c21

View File

@ -117,41 +117,69 @@ public class AlertMessageServiceImpl implements AlertMessageService {
// 转换按日期分组的数据 // 转换按日期分组的数据
List<AlertMessageStatisticsRespVO.DailyAlertData> dailyData = new ArrayList<>(); List<AlertMessageStatisticsRespVO.DailyAlertData> dailyData = new ArrayList<>();
for (Map<String, Object> stat : dailyStatistics) { if (dailyStatistics != null) {
AlertMessageStatisticsRespVO.DailyAlertData dailyAlertData = new AlertMessageStatisticsRespVO.DailyAlertData(); for (Map<String, Object> stat : dailyStatistics) {
// 处理日期类型转换 AlertMessageStatisticsRespVO.DailyAlertData dailyAlertData = new AlertMessageStatisticsRespVO.DailyAlertData();
Object dateObj = stat.get("date"); // 处理日期类型转换
if (dateObj instanceof java.sql.Date) { Object dateObj = stat.get("date");
dailyAlertData.setDate(((java.sql.Date) dateObj).toLocalDate()); if (dateObj instanceof java.sql.Date) {
} else if (dateObj instanceof LocalDate) { dailyAlertData.setDate(((java.sql.Date) dateObj).toLocalDate());
dailyAlertData.setDate((LocalDate) dateObj); } else if (dateObj instanceof LocalDate) {
dailyAlertData.setDate((LocalDate) dateObj);
}
dailyAlertData.setTotalCount(getNumberValue(stat, "totalCount"));
dailyAlertData.setReadCount(getNumberValue(stat, "readCount"));
dailyAlertData.setUnreadCount(getNumberValue(stat, "unreadCount"));
dailyAlertData.setSosCount(getNumberValue(stat, "sosCount"));
dailyAlertData.setAnalysisCount(getNumberValue(stat, "analysisCount"));
dailyAlertData.setSosReadCount(getNumberValue(stat, "sosReadCount"));
dailyAlertData.setSosUnreadCount(getNumberValue(stat, "sosUnreadCount"));
dailyAlertData.setAnalysisReadCount(getNumberValue(stat, "analysisReadCount"));
dailyAlertData.setAnalysisUnreadCount(getNumberValue(stat, "analysisUnreadCount"));
dailyData.add(dailyAlertData);
} }
dailyAlertData.setTotalCount(((Number) stat.get("totalCount")).longValue());
dailyAlertData.setReadCount(((Number) stat.get("readCount")).longValue());
dailyAlertData.setUnreadCount(((Number) stat.get("unreadCount")).longValue());
dailyAlertData.setSosCount(((Number) stat.get("sosCount")).longValue());
dailyAlertData.setAnalysisCount(((Number) stat.get("analysisCount")).longValue());
dailyAlertData.setSosReadCount(((Number) stat.get("sosReadCount")).longValue());
dailyAlertData.setSosUnreadCount(((Number) stat.get("sosUnreadCount")).longValue());
dailyAlertData.setAnalysisReadCount(((Number) stat.get("analysisReadCount")).longValue());
dailyAlertData.setAnalysisUnreadCount(((Number) stat.get("analysisUnreadCount")).longValue());
dailyData.add(dailyAlertData);
} }
// 构建返回结果 // 构建返回结果
AlertMessageStatisticsRespVO result = new AlertMessageStatisticsRespVO(); AlertMessageStatisticsRespVO result = new AlertMessageStatisticsRespVO();
result.setTotalCount(((Number) totalStats.get("totalCount")).longValue()); if (totalStats != null) {
result.setReadCount(((Number) totalStats.get("readCount")).longValue()); result.setTotalCount(getNumberValue(totalStats, "totalCount"));
result.setUnreadCount(((Number) totalStats.get("unreadCount")).longValue()); result.setReadCount(getNumberValue(totalStats, "readCount"));
result.setSosCount(((Number) totalStats.get("sosCount")).longValue()); result.setUnreadCount(getNumberValue(totalStats, "unreadCount"));
result.setAnalysisCount(((Number) totalStats.get("analysisCount")).longValue()); result.setSosCount(getNumberValue(totalStats, "sosCount"));
result.setSosReadCount(((Number) totalStats.get("sosReadCount")).longValue()); result.setAnalysisCount(getNumberValue(totalStats, "analysisCount"));
result.setSosUnreadCount(((Number) totalStats.get("sosUnreadCount")).longValue()); result.setSosReadCount(getNumberValue(totalStats, "sosReadCount"));
result.setAnalysisReadCount(((Number) totalStats.get("analysisReadCount")).longValue()); result.setSosUnreadCount(getNumberValue(totalStats, "sosUnreadCount"));
result.setAnalysisUnreadCount(((Number) totalStats.get("analysisUnreadCount")).longValue()); result.setAnalysisReadCount(getNumberValue(totalStats, "analysisReadCount"));
result.setAnalysisUnreadCount(getNumberValue(totalStats, "analysisUnreadCount"));
} else {
// 如果查询结果为空设置默认值
result.setTotalCount(0L);
result.setReadCount(0L);
result.setUnreadCount(0L);
result.setSosCount(0L);
result.setAnalysisCount(0L);
result.setSosReadCount(0L);
result.setSosUnreadCount(0L);
result.setAnalysisReadCount(0L);
result.setAnalysisUnreadCount(0L);
}
result.setDailyData(dailyData); result.setDailyData(dailyData);
return result; return result;
}
/**
* 安全地从Map中获取Number值并转换为Long
*/
private Long getNumberValue(Map<String, Object> map, String key) {
Object value = map.get(key);
if (value == null) {
return 0L;
}
if (value instanceof Number) {
return ((Number) value).longValue();
}
return 0L;
} }
} }