fix: 修复ToolController编译错误,兼容Java 8和lunar库API
This commit is contained in:
1 parent
e021ce5bc9
commit
dc776ab157
1 file changed
+94
-87
@@ -2,11 +2,7 @@ package xuan.controller;
|
||||
|
||||
import com.nlf.calendar.Lunar;
|
||||
import com.nlf.calendar.Solar;
|
||||
import com.nlf.calendar.LunarYear;
|
||||
import com.nlf.calendar.LunarMonth;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import xuan.core.bazi.BaZi;
|
||||
import xuan.core.bazi.settings.BaZiJiChuSetting;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
@@ -40,8 +36,8 @@ public class ToolController {
|
||||
data.put("lunarMonth", lunar.getMonthInGanZhi());
|
||||
data.put("lunarDay", lunar.getDayInGanZhi());
|
||||
data.put("lunarYearName", lunar.getYearShengXiao() + "年");
|
||||
data.put("lunarMonthName", lunar.getMonthName());
|
||||
data.put("lunarDayName", lunar.getDayName());
|
||||
data.put("lunarMonthName", lunar.getMonthInChinese());
|
||||
data.put("lunarDayName", lunar.getDayInChinese());
|
||||
data.put("festival", lunar.getFestivals());
|
||||
data.put("jieQi", lunar.getJieQi());
|
||||
data.put("week", solar.getWeekInChinese());
|
||||
@@ -52,7 +48,7 @@ public class ToolController {
|
||||
int day = Integer.parseInt(params.get("lunarDay").toString());
|
||||
boolean isLeap = params.containsKey("isLeap") && Boolean.parseBoolean(params.get("isLeap").toString());
|
||||
|
||||
Lunar lunar = Lunar.fromYmd(year, month, day, isLeap ? 1 : 0);
|
||||
Lunar lunar = isLeap ? Lunar.fromYmd(year, -month, day) : Lunar.fromYmd(year, month, day);
|
||||
Solar solar = lunar.getSolar();
|
||||
|
||||
data.put("lunar", lunar.toString());
|
||||
@@ -123,7 +119,6 @@ public class ToolController {
|
||||
data.put("year", year);
|
||||
data.put("shengXiao", shengXiao);
|
||||
|
||||
String[] shengXiaoOrder = {"鼠", "牛", "虎", "兔", "龙", "蛇", "马", "羊", "猴", "鸡", "狗", "猪"};
|
||||
Map<String, String> shengXiaoInfo = new HashMap<>();
|
||||
shengXiaoInfo.put("鼠", "子鼠,五行属水,聪明机智,适应力强");
|
||||
shengXiaoInfo.put("牛", "丑牛,五行属土,勤劳踏实,责任心强");
|
||||
@@ -139,9 +134,7 @@ public class ToolController {
|
||||
shengXiaoInfo.put("猪", "亥猪,五行属水,善良宽厚,乐观豁达");
|
||||
|
||||
data.put("info", shengXiaoInfo.getOrDefault(shengXiao, "未知生肖"));
|
||||
|
||||
String ganZhi = lunar.getYearInGanZhi();
|
||||
data.put("ganZhi", ganZhi);
|
||||
data.put("ganZhi", lunar.getYearInGanZhi());
|
||||
|
||||
result.put("success", true);
|
||||
result.put("data", data);
|
||||
@@ -168,80 +161,95 @@ public class ToolController {
|
||||
data.put("xingZuo", xingZuo);
|
||||
|
||||
Map<String, Map<String, String>> xingZuoInfo = new HashMap<>();
|
||||
xingZuoInfo.put("白羊座", Map.of(
|
||||
"dateRange", "3月21日-4月19日",
|
||||
"element", "火象星座",
|
||||
"character", "热情、冲动、自信",
|
||||
"desc", "白羊座是黄道十二宫的第一宫,代表着新的开始和生命力。白羊座的人充满活力,勇于冒险,具有领导才能。"
|
||||
));
|
||||
xingZuoInfo.put("金牛座", Map.of(
|
||||
"dateRange", "4月20日-5月20日",
|
||||
"element", "土象星座",
|
||||
"character", "稳重、务实、固执",
|
||||
"desc", "金牛座是黄道十二宫的第二宫,代表着物质和财富。金牛座的人踏实可靠,追求稳定,有很强的耐心。"
|
||||
));
|
||||
xingZuoInfo.put("双子座", Map.of(
|
||||
"dateRange", "5月21日-6月21日",
|
||||
"element", "风象星座",
|
||||
"character", "聪明、善变、好奇",
|
||||
"desc", "双子座是黄道十二宫的第三宫,代表着沟通和交流。双子座的人思维敏捷,善于表达,兴趣广泛。"
|
||||
));
|
||||
xingZuoInfo.put("巨蟹座", Map.of(
|
||||
"dateRange", "6月22日-7月22日",
|
||||
"element", "水象星座",
|
||||
"character", "敏感、顾家、情绪化",
|
||||
"desc", "巨蟹座是黄道十二宫的第四宫,代表着家庭和情感。巨蟹座的人重视家庭,情感丰富,有很强的保护欲。"
|
||||
));
|
||||
xingZuoInfo.put("狮子座", Map.of(
|
||||
"dateRange", "7月23日-8月22日",
|
||||
"element", "火象星座",
|
||||
"character", "自信、慷慨、霸道",
|
||||
"desc", "狮子座是黄道十二宫的第五宫,代表着创造力和自我表达。狮子座的人自信大方,有领导才能,喜欢成为焦点。"
|
||||
));
|
||||
xingZuoInfo.put("处女座", Map.of(
|
||||
"dateRange", "8月23日-9月22日",
|
||||
"element", "土象星座",
|
||||
"character", "细心、完美主义、挑剔",
|
||||
"desc", "处女座是黄道十二宫的第六宫,代表着分析和服务。处女座的人注重细节,追求完美,有很强的分析能力。"
|
||||
));
|
||||
xingZuoInfo.put("天秤座", Map.of(
|
||||
"dateRange", "9月23日-10月23日",
|
||||
"element", "风象星座",
|
||||
"character", "优雅、公正、犹豫",
|
||||
"desc", "天秤座是黄道十二宫的第七宫,代表着平衡和和谐。天秤座的人追求公正,善于社交,有很强的审美能力。"
|
||||
));
|
||||
xingZuoInfo.put("天蝎座", Map.of(
|
||||
"dateRange", "10月24日-11月22日",
|
||||
"element", "水象星座",
|
||||
"character", "神秘、执着、多疑",
|
||||
"desc", "天蝎座是黄道十二宫的第八宫,代表着转化和重生。天蝎座的人意志坚定,洞察力强,有很强的直觉。"
|
||||
));
|
||||
xingZuoInfo.put("射手座", Map.of(
|
||||
"dateRange", "11月23日-12月21日",
|
||||
"element", "火象星座",
|
||||
"character", "乐观、自由、粗心",
|
||||
"desc", "射手座是黄道十二宫的第九宫,代表着探索和哲学。射手座的人热爱自由,乐观开朗,有很强的冒险精神。"
|
||||
));
|
||||
xingZuoInfo.put("摩羯座", Map.of(
|
||||
"dateRange", "12月22日-1月19日",
|
||||
"element", "土象星座",
|
||||
"character", "务实、有责任感、悲观",
|
||||
"desc", "摩羯座是黄道十二宫的第十宫,代表着成就和责任。摩羯座的人有很强的责任感,追求成功,脚踏实地。"
|
||||
));
|
||||
xingZuoInfo.put("水瓶座", Map.of(
|
||||
"dateRange", "1月20日-2月18日",
|
||||
"element", "风象星座",
|
||||
"character", "独立、创新、叛逆",
|
||||
"desc", "水瓶座是黄道十二宫的第十一宫,代表着创新和人道主义。水瓶座的人思想前卫,独立自主,有很强的创造力。"
|
||||
));
|
||||
xingZuoInfo.put("双鱼座", Map.of(
|
||||
"dateRange", "2月19日-3月20日",
|
||||
"element", "水象星座",
|
||||
"character", "浪漫、敏感、优柔寡断",
|
||||
"desc", "双鱼座是黄道十二宫的最后一宫,代表着灵性和直觉。双鱼座的人富有想象力,感情丰富,有很强的同理心。"
|
||||
));
|
||||
|
||||
Map<String, String> info = xingZuoInfo.getOrDefault(xingZuo, Map.of("desc", "未知星座"));
|
||||
Map<String, String> aries = new HashMap<>();
|
||||
aries.put("dateRange", "3月21日-4月19日");
|
||||
aries.put("element", "火象星座");
|
||||
aries.put("character", "热情、冲动、自信");
|
||||
aries.put("desc", "白羊座是黄道十二宫的第一宫,代表着新的开始和生命力。");
|
||||
xingZuoInfo.put("白羊座", aries);
|
||||
|
||||
Map<String, String> taurus = new HashMap<>();
|
||||
taurus.put("dateRange", "4月20日-5月20日");
|
||||
taurus.put("element", "土象星座");
|
||||
taurus.put("character", "稳重、务实、固执");
|
||||
taurus.put("desc", "金牛座是黄道十二宫的第二宫,代表着物质和财富。");
|
||||
xingZuoInfo.put("金牛座", taurus);
|
||||
|
||||
Map<String, String> gemini = new HashMap<>();
|
||||
gemini.put("dateRange", "5月21日-6月21日");
|
||||
gemini.put("element", "风象星座");
|
||||
gemini.put("character", "聪明、善变、好奇");
|
||||
gemini.put("desc", "双子座是黄道十二宫的第三宫,代表着沟通和交流。");
|
||||
xingZuoInfo.put("双子座", gemini);
|
||||
|
||||
Map<String, String> cancer = new HashMap<>();
|
||||
cancer.put("dateRange", "6月22日-7月22日");
|
||||
cancer.put("element", "水象星座");
|
||||
cancer.put("character", "敏感、顾家、情绪化");
|
||||
cancer.put("desc", "巨蟹座是黄道十二宫的第四宫,代表着家庭和情感。");
|
||||
xingZuoInfo.put("巨蟹座", cancer);
|
||||
|
||||
Map<String, String> leo = new HashMap<>();
|
||||
leo.put("dateRange", "7月23日-8月22日");
|
||||
leo.put("element", "火象星座");
|
||||
leo.put("character", "自信、慷慨、霸道");
|
||||
leo.put("desc", "狮子座是黄道十二宫的第五宫,代表着创造力和自我表达。");
|
||||
xingZuoInfo.put("狮子座", leo);
|
||||
|
||||
Map<String, String> virgo = new HashMap<>();
|
||||
virgo.put("dateRange", "8月23日-9月22日");
|
||||
virgo.put("element", "土象星座");
|
||||
virgo.put("character", "细心、完美主义、挑剔");
|
||||
virgo.put("desc", "处女座是黄道十二宫的第六宫,代表着分析和服务。");
|
||||
xingZuoInfo.put("处女座", virgo);
|
||||
|
||||
Map<String, String> libra = new HashMap<>();
|
||||
libra.put("dateRange", "9月23日-10月23日");
|
||||
libra.put("element", "风象星座");
|
||||
libra.put("character", "优雅、公正、犹豫");
|
||||
libra.put("desc", "天秤座是黄道十二宫的第七宫,代表着平衡和和谐。");
|
||||
xingZuoInfo.put("天秤座", libra);
|
||||
|
||||
Map<String, String> scorpio = new HashMap<>();
|
||||
scorpio.put("dateRange", "10月24日-11月22日");
|
||||
scorpio.put("element", "水象星座");
|
||||
scorpio.put("character", "神秘、执着、多疑");
|
||||
scorpio.put("desc", "天蝎座是黄道十二宫的第八宫,代表着转化和重生。");
|
||||
xingZuoInfo.put("天蝎座", scorpio);
|
||||
|
||||
Map<String, String> sagittarius = new HashMap<>();
|
||||
sagittarius.put("dateRange", "11月23日-12月21日");
|
||||
sagittarius.put("element", "火象星座");
|
||||
sagittarius.put("character", "乐观、自由、粗心");
|
||||
sagittarius.put("desc", "射手座是黄道十二宫的第九宫,代表着探索和哲学。");
|
||||
xingZuoInfo.put("射手座", sagittarius);
|
||||
|
||||
Map<String, String> capricorn = new HashMap<>();
|
||||
capricorn.put("dateRange", "12月22日-1月19日");
|
||||
capricorn.put("element", "土象星座");
|
||||
capricorn.put("character", "务实、有责任感、悲观");
|
||||
capricorn.put("desc", "摩羯座是黄道十二宫的第十宫,代表着成就和责任。");
|
||||
xingZuoInfo.put("摩羯座", capricorn);
|
||||
|
||||
Map<String, String> aquarius = new HashMap<>();
|
||||
aquarius.put("dateRange", "1月20日-2月18日");
|
||||
aquarius.put("element", "风象星座");
|
||||
aquarius.put("character", "独立、创新、叛逆");
|
||||
aquarius.put("desc", "水瓶座是黄道十二宫的第十一宫,代表着创新和人道主义。");
|
||||
xingZuoInfo.put("水瓶座", aquarius);
|
||||
|
||||
Map<String, String> pisces = new HashMap<>();
|
||||
pisces.put("dateRange", "2月19日-3月20日");
|
||||
pisces.put("element", "水象星座");
|
||||
pisces.put("character", "浪漫、敏感、优柔寡断");
|
||||
pisces.put("desc", "双鱼座是黄道十二宫的最后一宫,代表着灵性和直觉。");
|
||||
xingZuoInfo.put("双鱼座", pisces);
|
||||
|
||||
Map<String, String> defaultInfo = new HashMap<>();
|
||||
defaultInfo.put("desc", "未知星座");
|
||||
|
||||
Map<String, String> info = xingZuoInfo.getOrDefault(xingZuo, defaultInfo);
|
||||
data.put("dateRange", info.get("dateRange"));
|
||||
data.put("element", info.get("element"));
|
||||
data.put("character", info.get("character"));
|
||||
@@ -372,10 +380,9 @@ public class ToolController {
|
||||
data.put("yi", yi);
|
||||
data.put("ji", ji);
|
||||
|
||||
String[] chong = lunar.getDayChong().split(" ");
|
||||
data.put("chong", chong.length > 0 ? chong[0] : "");
|
||||
String chong = lunar.getDayChong();
|
||||
data.put("chong", chong);
|
||||
data.put("chongGan", lunar.getDayChongGan());
|
||||
data.put("chongZhi", lunar.getDayChongZhi());
|
||||
data.put("sha", lunar.getDaySha());
|
||||
|
||||
String jieQi = lunar.getJieQi();
|
||||
|
||||
Reference in new issue
Block a user