You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

82 lines
3.0 KiB
Java

package com.htfp.weather.info;
import java.util.HashMap;
import java.util.Map;
/**
* @Author : shiyi
* @Date : 2024/4/18 13:37
* @Description : 彩云天气相关映射
*/
public class CaiYunInfo {
private static final Map<String, String> skyconMap = new HashMap<>();
private static final Map<String, String> alertNameMap = new HashMap<>();
private static final Map<String, String> alertColorMap = new HashMap<>();
static {
// 彩云天气天气现象映射
skyconMap.put("CLEAR_DAY", "晴(白天)");
skyconMap.put("CLEAR_NIGHT", "晴(夜间)");
skyconMap.put("PARTLY_CLOUDY_DAY", "多云(白天)");
skyconMap.put("PARTLY_CLOUDY_NIGHT", "多云(夜间)");
skyconMap.put("CLOUDY", "阴");
skyconMap.put("LIGHT_HAZE", "轻度雾霾");
skyconMap.put("MODERATE_HAZE", "中度雾霾");
skyconMap.put("HEAVY_HAZE", "重度雾霾");
skyconMap.put("LIGHT_RAIN", "小雨");
skyconMap.put("MODERATE_RAIN", "中雨");
skyconMap.put("HEAVY_RAIN", "大雨");
skyconMap.put("STORM_RAIN", "暴雨");
skyconMap.put("FOG", "雾");
skyconMap.put("LIGHT_SNOW", "小雪");
skyconMap.put("MODERATE_SNOW", "中雪");
skyconMap.put("HEAVY_SNOW", "大雪");
skyconMap.put("STORM_SNOW", "暴雪");
skyconMap.put("DUST", "浮尘");
skyconMap.put("SAND", "沙尘");
skyconMap.put("WIND", "大风");
skyconMap.put("THUNDER_SHOWER", "雷阵雨");
skyconMap.put("HAIL", "冰雹");
skyconMap.put("SLEET", "雨夹雪");
// 彩云天气预警类型映射
alertNameMap.put("01", "台风");
alertNameMap.put("02", "暴雨");
alertNameMap.put("03", "暴雪");
alertNameMap.put("04", "寒潮");
alertNameMap.put("05", "大风");
alertNameMap.put("06", "沙尘暴");
alertNameMap.put("07", "高温");
alertNameMap.put("08", "干旱");
alertNameMap.put("09", "雷电");
alertNameMap.put("10", "冰雹");
alertNameMap.put("11", "霜冻");
alertNameMap.put("12", "大雾");
alertNameMap.put("13", "霾");
alertNameMap.put("14", "道路结冰");
alertNameMap.put("15", "森林火险");
alertNameMap.put("16", "雷雨大风");
alertNameMap.put("17", "春季沙尘天气趋势预警");
alertNameMap.put("18", "沙尘");
//
alertColorMap.put("00", "白色");
alertColorMap.put("01", "蓝色");
alertColorMap.put("02", "黄色");
alertColorMap.put("03", "橙色");
alertColorMap.put("04", "红色");
}
public static String getSkyConName(String skycon) {
return skyconMap.getOrDefault(skycon, "未知天气现象");
}
public static String getAlertName(String code) {
return alertNameMap.getOrDefault(code.substring(0,2), "未知预警类型");
}
public static String getAlertColor(String code) {
return alertColorMap.getOrDefault(code.substring(2,4), "未知预警等级");
}
}