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
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), "未知预警等级");
|
|
}
|
|
|
|
}
|