|
@@ -166,6 +166,8 @@ public class ShiShenConfig {
|
|
|
//方位对向
|
|
|
private final Map<String, String> fangWeiDui = new TreeMap<String, String>();
|
|
|
|
|
|
+ //十神性格
|
|
|
+ private final Map<String, String> xingGe = new TreeMap<String, String>();
|
|
|
|
|
|
@PostConstruct
|
|
|
public void init() {
|
|
@@ -1444,6 +1446,17 @@ public class ShiShenConfig {
|
|
|
fangWeiDui.put("西北", "东南");
|
|
|
|
|
|
|
|
|
+ xingGe.put("正印","聪明智慧,记性好,喜欢学习,心地善良,责任心强,少病少灾。");
|
|
|
+ xingGe.put("食神","口才好,喜欢玩,好歌舞酒色,吃货多福多寿,心宽体胖,为人宽宏大量,对艺术天赋异禀。");
|
|
|
+ xingGe.put("正官","守信用、正直、光明磊落、好面子在乎名声地位、廉洁、公正、稳重。");
|
|
|
+ xingGe.put("正财","守本分,诚实可靠,脚踏实地,勤俭节约重视家庭,诚信,爱妻子,是个值得信赖的人。");
|
|
|
+ xingGe.put("七杀","正面性格:执行力强,有正义感和侠义精神,做事有魄力,勇于向困难挑战,勇于突破困境,坚强之意志力与干劲。负面性格:霸道,急躁如火,脾气古怪,任性倔强,好胜好斗报复心强,偏激叛逆,鲁莽冲动,听不进谏言、易树敌。");
|
|
|
+ xingGe.put("偏印","正面性格:敏锐的观察力,分析力,感受力,理解力,困难的东西都能迅速学,会多才多艺,心思细腻。负面性格:敏感,内心孤独,不开心,优柔寡断,犹豫不决不善于与人交往,宁可一个人独处,也不愿到人多的地方。");
|
|
|
+ xingGe.put("伤官","正面性格:聪明灵巧,个性突出,容易抢风头,能言善辩,不愿服输胆大,有魄力,有才华。过于自信到自负的程度。负面性格:言语尖锐刻薄,狂傲不羁,肚量狭小,记仇,得理不饶人任性蛮横,逞强好胜,一身傲骨,鄙视他人,死不认错。");
|
|
|
+ xingGe.put("劫财","正面性格:性格开朗,心思敏捷,个性明显,自尊心强,口才好善于活跃气氛,鬼点子多,初次交往中能得到别人的好感。负面性格:固执己见,自我矛盾,好酒好赌,贪小便宜,好吹牛喜抬杠,不讲信用,借钱不还,不诚实,满嘴瞎话。");
|
|
|
+ xingGe.put("比肩","正面性格:意志坚强,重情重义,独立自主,不轻易变动,敦厚忠实做事有耐心,力争上游。负面性格:固执己见,独断专行,自我中心,朋友很多,但知己不多严厉刻薄,不通人情,喜自我封闭,闭门造车,刚慎自用。");
|
|
|
+ xingGe.put("偏财","正面性格:慷慨大方,重义轻财,聪明机巧,开朗乐观,乐善好施人脉广阔,风流多情,豪爽出手大方(男命)容易得女人欢心。负面性格:不重视金钱,不善理财,一心多用,轻浮放荡嗜酒好色,赌性太大。");
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|
|
@@ -1497,6 +1510,92 @@ public class ShiShenConfig {
|
|
|
return -99;
|
|
|
}
|
|
|
|
|
|
+ public static int shiShenRelationship(String element1, String element2) {
|
|
|
+
|
|
|
+ if("正官".equals(element1) || "七杀".equals(element1)){
|
|
|
+ element1 = "官杀";
|
|
|
+ }
|
|
|
+ if("正印".equals(element1) || "偏印".equals(element1)){
|
|
|
+ element1 = "印枭";
|
|
|
+ }
|
|
|
+ if("比肩".equals(element1) || "劫财".equals(element1)){
|
|
|
+ element1 = "比劫";
|
|
|
+ }
|
|
|
+ if("食神".equals(element1) || "伤官".equals(element1)){
|
|
|
+ element1 = "食伤";
|
|
|
+ }
|
|
|
+ if("正财".equals(element1) || "偏财".equals(element1)){
|
|
|
+ element1 = "财才";
|
|
|
+ }
|
|
|
+
|
|
|
+ if("正官".equals(element2) || "七杀".equals(element2)){
|
|
|
+ element2 = "官杀";
|
|
|
+ }
|
|
|
+ if("正印".equals(element2) || "偏印".equals(element2)){
|
|
|
+ element2 = "印枭";
|
|
|
+ }
|
|
|
+ if("比肩".equals(element2) || "劫财".equals(element2)){
|
|
|
+ element2 = "比劫";
|
|
|
+ }
|
|
|
+ if("食神".equals(element2) || "伤官".equals(element2)){
|
|
|
+ element2 = "食伤";
|
|
|
+ }
|
|
|
+ if("正财".equals(element2) || "偏财".equals(element2)){
|
|
|
+ element2 = "财才";
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ // 五行关系的映射关系
|
|
|
+ String[][] relationships = {
|
|
|
+ //木属性
|
|
|
+ {"官杀", "印枭", "1"}, //木生火 = 1
|
|
|
+ {"官杀", "比劫", "2"}, //木克土 = 2
|
|
|
+ {"官杀", "食伤", "3"}, //木被金克 = 3
|
|
|
+ {"官杀", "财才", "4"}, //木被水生 = 4
|
|
|
+ {"官杀", "官杀", "0"}, //木被木生= 0
|
|
|
+ // 火属性
|
|
|
+ {"印枭", "比劫", "1"}, //火生土 = 1
|
|
|
+ {"印枭", "食伤", "2"}, //火克金 = 2
|
|
|
+ {"印枭", "财才", "3"}, //火被水克 = 3
|
|
|
+ {"印枭", "官杀", "4"}, //火被木生 = 4
|
|
|
+ {"印枭", "印枭", "0"}, //火被火生 = 0
|
|
|
+ // 土属性的关系
|
|
|
+ {"比劫", "食伤", "1"}, //土生金 = 1
|
|
|
+ {"比劫", "财才", "2"}, //土克水 = 2
|
|
|
+ {"比劫", "官杀", "3"}, //土被木克 = 3
|
|
|
+ {"比劫", "印枭", "4"}, //土被火生 = 4
|
|
|
+ {"比劫", "比劫", "0"}, //土被土生 = 0
|
|
|
+ // 金属性的关系
|
|
|
+ {"食伤", "财才", "1"}, //金生水 = 1
|
|
|
+ {"食伤", "官杀", "2"}, //金克木 = 2
|
|
|
+ {"食伤", "印枭", "3"}, //金被火克 = 3
|
|
|
+ {"食伤", "比劫", "4"}, //金被土生 = 4
|
|
|
+ {"食伤", "食伤", "0"}, //金被金生 = 0
|
|
|
+ // 水属性的关系
|
|
|
+ {"财才", "官杀", "1"}, //水生木 = 1
|
|
|
+ {"财才", "印枭", "2"}, //水克火 = 2
|
|
|
+ {"财才", "比劫", "3"}, //水被土克 = 3
|
|
|
+ {"财才", "食伤", "4"}, //水被金生 = 4
|
|
|
+ {"财才", "财才", "0"}, //水被水生 = 0
|
|
|
+ };
|
|
|
+
|
|
|
+ // 查找两个元素之间的关系
|
|
|
+ for (String[] relationship : relationships) {
|
|
|
+ if (relationship[0].equals(element1) && relationship[1].equals(element2)) {
|
|
|
+ int result = Integer.parseInt(relationship[2]);
|
|
|
+ if (result == 1 || result == 2 || result == 3) { //减分
|
|
|
+ return -1;
|
|
|
+ } else if (result == 4 || result == 0) { //加减
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 如果没有找到对应关系,可以返回一个默认值或抛出异常,这里简单返回 -1
|
|
|
+ return -99;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
public static String fangWei(String line) {
|
|
|
String result = "";
|
|
|
|