فهرست منبع

子女问题处理。

zhangbin 1 سال پیش
والد
کامیت
c908602793

+ 99 - 0
xpgx-common/src/main/java/com/miaxis/common/config/ShiShenConfig.java

@@ -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 = "";
 

+ 46 - 0
xpgx-service/src/main/java/com/miaxis/gan/service/impl/GanZhiServiceImpl.java

@@ -2547,6 +2547,7 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
         String sex = ganZhiRowVoList.get(4).getShiShen1();
         String dayGan = ganZhiRowVoList.get(4).getName();
         String dayZhi = ganZhiRowVoList.get(5).getName();
+        String timeGan = ganZhiRowVoList.get(6).getName();
         String timeZhi = ganZhiRowVoList.get(7).getName();
 
         boolean dayZhiAndTimeZhi = ShiShenConfig.areZodiacsChong(dayZhi, timeZhi);
@@ -2746,6 +2747,51 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
 
 
 
+        //看子女的成就
+        //时柱为命主格局的用神,表示子女能力强,孝顺,社会地位高成就高过父母。
+
+        String timeGanShiShen = ganZhiRowVoList.get(6).getShiShen1();
+        String timeZhiShiShen = ganZhiRowVoList.get(7).getShiShen1();
+        timeZhiShiShen = timeZhiShiShen.substring(2,4);
+
+        int cj1 = ShiShenConfig.shiShenRelationship(geju,timeGanShiShen);
+        int cj2 = ShiShenConfig.shiShenRelationship(geju,timeZhiShiShen);
+
+        //1生 2克 3被克 4被生 0同
+        if(cj1==-1) { //消耗能量为喜用
+            ziNvMap.put(x++, "时干为您的"+geju+"格的用神("+timeGanShiShen+"),表示长子或长女能力强,社会地位高、成就高过父母。");
+        }
+        if(cj1==1) { //生助能量为忌用
+            ziNvMap.put(x++, "时干为您的"+geju+"格的忌神("+timeGanShiShen+"),表示长子或长女能力不够,成就不太可能高过父母。");
+        }
+
+        //1生 2克 3被克 4被生 0同
+        if(cj2==-1) { //消耗能量为喜用
+            ziNvMap.put(x++, "时支为您的"+geju+"格的用神("+timeZhiShiShen+"),表示次子或次女能力强,社会地位高、成就高过父母。");
+        }
+        if(cj2==1) { //生助能量为忌用
+            ziNvMap.put(x++, "时支为您的"+geju+"格的忌神("+timeZhiShiShen+"),表示次子或次女能力不够,成就不太可能高过父母。");
+        }
+
+
+        if(xiYongOld.contains(timeGan)) {
+            ziNvMap.put(x++, "时干是你的喜用,代表与长子或长女关系好,比较孝顺父母能够享受子女的福气。");
+        } else {
+            ziNvMap.put(x++, "时干是你的忌凶,代表与长子或长女关系不好,不容易享受到子女的福气。");
+        }
+
+        if(xiYongOld.contains(timeZhi)) {
+            ziNvMap.put(x++, "时支是你的喜用,代表与次子或次女关系好,比较孝顺父母能够享受子女的福气。");
+        } else {
+            ziNvMap.put(x++, "时支是你的忌凶,代表与次子或次女关系不好,不容易享受到子女的福气。");
+        }
+
+        String lao1 = shiShenConfig.getXingGe().get(timeGanShiShen);
+        String lao2 = shiShenConfig.getXingGe().get(timeZhiShiShen);
+
+        ziNvMap.put(x++, "你长子或长女的性格————"+lao1);
+        ziNvMap.put(x++, "你次子或次女的性格————"+lao2);
+
         return ziNvMap;
     }