|
@@ -10,6 +10,7 @@ import com.miaxis.disease.dto.DiseasePartDto;
|
|
|
import com.miaxis.disease.mapper.DiseasePartMapper;
|
|
|
import com.miaxis.gan.dto.GanZhiDto;
|
|
|
import com.miaxis.gan.dto.LiuNianDto;
|
|
|
+import com.miaxis.gan.vo.GanZhiDaYunVo;
|
|
|
import com.miaxis.gan.vo.GanZhiKongWangVo;
|
|
|
import com.miaxis.gan.vo.GanZhiNaYinVo;
|
|
|
import com.miaxis.gan.vo.GanZhiRowVo;
|
|
@@ -364,9 +365,8 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public Map<String, Object> getRiYuanQr(GanZhiDto ganZhiDto) {
|
|
|
+ public Map<String, Object> getRiYuanQr(List<GanZhiRowVo> list) {
|
|
|
/*-------------------日元身强身弱---------------------*/
|
|
|
- List<GanZhiRowVo> list = this.getGanZhiRowVoList(ganZhiDto);
|
|
|
int yearGanQR = ShiShenConfig.generateRelationship(list.get(4).getFive(), list.get(0).getFive());
|
|
|
int yearZhiQR = ShiShenConfig.generateRelationship(list.get(4).getFive(), list.get(1).getFive());
|
|
|
int monthGanQR = ShiShenConfig.generateRelationship(list.get(4).getFive(), list.get(2).getFive());
|
|
@@ -411,7 +411,7 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
String xi1 = xiYong.get(0);
|
|
|
String xi2 = xiYong.get(1);
|
|
|
|
|
|
- Map<String, Integer> fiveCountMap = this.getGanZhiRowVoCount(ganZhiDto);
|
|
|
+ Map<String, Integer> fiveCountMap = this.getGanZhiRowVoCount(list);
|
|
|
int xi1Count = fiveCountMap.get(xi1);
|
|
|
int xi2Count = fiveCountMap.get(xi2);
|
|
|
|
|
@@ -434,8 +434,7 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
|
|
|
|
|
|
@Override
|
|
|
- public List<DiseasePart> getJiBing(GanZhiDto ganZhiDto) {
|
|
|
- List<GanZhiRowVo> ganZhiRowVoList = this.selectGanZhiRowVoList(ganZhiDto);
|
|
|
+ public List<DiseasePart> getJiBing(List<GanZhiRowVo> ganZhiRowVoList) {
|
|
|
String sex = ganZhiRowVoList.get(4).getShiShen1();
|
|
|
|
|
|
String gender = null;
|
|
@@ -605,7 +604,7 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
|
|
|
//五行得出疾病
|
|
|
List<DiseasePart> fivePartList = new ArrayList<DiseasePart>();
|
|
|
- Map<String, Integer> fiveCount = this.getGanZhiRowVoCount(ganZhiDto);
|
|
|
+ Map<String, Integer> fiveCount = this.getGanZhiRowVoCount(ganZhiRowVoList);
|
|
|
for (String key : fiveCount.keySet()) {
|
|
|
int count = fiveCount.get(key);
|
|
|
if (count >= 3) {
|
|
@@ -658,8 +657,7 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
- public GanZhiDto getDaYun(GanZhiDto ganZhiDto) {
|
|
|
-
|
|
|
+ public GanZhiDaYunVo getDaYun(GanZhiDto ganZhiDto, GanZhiDaYunVo ganZhiDaYunVo) {
|
|
|
int daYun = 0;
|
|
|
String tianGan = ganZhiDto.getYearGan();
|
|
|
String yy = shiShenConfig.getTianGanYY().get(tianGan);
|
|
@@ -698,7 +696,7 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
Lunar lunar2 = Lunar.fromDate(d2);
|
|
|
ganZhiDto.setMonthGan(lunar2.getMonthGan());
|
|
|
ganZhiDto.setMonthZhi(lunar2.getMonthZhi());
|
|
|
- System.out.println(lunar2.getYearGan()+","+lunar2.getYearZhi()+","+lunar2.getMonthGan()+","+lunar2.getMonthZhi()+","+lunar2.getDayGan()+","+lunar2.getDayZhi()+","+lunar2.getTimeGan()+","+lunar2.getTimeZhi());
|
|
|
+ System.out.println(lunar2.getYearGan() + "," + lunar2.getYearZhi() + "," + lunar2.getMonthGan() + "," + lunar2.getMonthZhi() + "," + lunar2.getDayGan() + "," + lunar2.getDayZhi() + "," + lunar2.getTimeGan() + "," + lunar2.getTimeZhi());
|
|
|
|
|
|
}
|
|
|
}
|
|
@@ -717,12 +715,11 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
Lunar lunar3 = Lunar.fromDate(d3);
|
|
|
ganZhiDto.setDayGan(lunar3.getDayGan());
|
|
|
ganZhiDto.setDayZhi(lunar3.getDayZhi());
|
|
|
- ganZhiDto.setLunar(lunar3);
|
|
|
- System.out.println(lunar3.getYearGan()+","+lunar3.getYearZhi()+","+lunar3.getMonthGan()+","+lunar3.getMonthZhi()+","+lunar3.getDayGan()+","+lunar3.getDayZhi()+","+lunar3.getTimeGan()+","+lunar3.getTimeZhi());
|
|
|
+ ganZhiDaYunVo.setLunar(lunar3);
|
|
|
+ System.out.println(lunar3.getYearGan() + "," + lunar3.getYearZhi() + "," + lunar3.getMonthGan() + "," + lunar3.getMonthZhi() + "," + lunar3.getDayGan() + "," + lunar3.getDayZhi() + "," + lunar3.getTimeGan() + "," + lunar3.getTimeZhi());
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
if (daYun == 1) { //大运顺
|
|
|
int daYunCount = 0;
|
|
|
double dayDiff = Math.abs(list.get(1).getDaysDifference());
|
|
@@ -759,7 +756,7 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
flag = true;
|
|
|
}
|
|
|
}
|
|
|
- ganZhiDto.setDaYunList(daYunList);
|
|
|
+ ganZhiDaYunVo.setDaYunList(daYunList);
|
|
|
} else if (daYun == 2) { //大运逆
|
|
|
int daYunCount = 0;
|
|
|
double dayDiff = Math.abs(list.get(0).getDaysDifference());
|
|
@@ -793,9 +790,9 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
flag = true;
|
|
|
}
|
|
|
}
|
|
|
- ganZhiDto.setDaYunList(daYunList);
|
|
|
+ ganZhiDaYunVo.setDaYunList(daYunList);
|
|
|
}
|
|
|
- return ganZhiDto;
|
|
|
+ return ganZhiDaYunVo;
|
|
|
}
|
|
|
|
|
|
|
|
@@ -913,11 +910,11 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
/**
|
|
|
* 获取五行数量
|
|
|
*
|
|
|
- * @param ganZhiDto
|
|
|
+ * @param list
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
- public Map<String, Integer> getGanZhiRowVoCount(GanZhiDto ganZhiDto) {
|
|
|
+ public Map<String, Integer> getGanZhiRowVoCount(List<GanZhiRowVo> list) {
|
|
|
|
|
|
Map<String, Integer> fiveCount = new TreeMap<String, Integer>();
|
|
|
fiveCount.put("木", 0);
|
|
@@ -926,7 +923,6 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
fiveCount.put("金", 0);
|
|
|
fiveCount.put("水", 0);
|
|
|
|
|
|
- List<GanZhiRowVo> list = this.getGanZhiRowVoList(ganZhiDto);
|
|
|
for (int i = 0; i < list.size(); i++) {
|
|
|
String five = list.get(i).getFive();
|
|
|
Integer fiveC = fiveCount.get(five) + 1;
|
|
@@ -935,18 +931,194 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
return fiveCount;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取十神数量
|
|
|
+ *
|
|
|
+ * @param list
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public Map<String, Integer> getShiShenCount(List<GanZhiRowVo> list) {
|
|
|
+
|
|
|
+ Map<String, Integer> shiShenCount = new TreeMap<String, Integer>();
|
|
|
+ shiShenCount.put("正印", 0);
|
|
|
+ shiShenCount.put("食神", 0);
|
|
|
+ shiShenCount.put("正官", 0);
|
|
|
+ shiShenCount.put("正财", 0);
|
|
|
+ shiShenCount.put("七杀", 0);
|
|
|
+ shiShenCount.put("偏印", 0);
|
|
|
+ shiShenCount.put("偏财", 0);
|
|
|
+ shiShenCount.put("伤官", 0);
|
|
|
+ shiShenCount.put("劫财", 0);
|
|
|
+ shiShenCount.put("比肩", 0);
|
|
|
+
|
|
|
+ for (int i = 0; i < list.size(); i++) {
|
|
|
+ String shiShen1 = list.get(i).getShiShen1();
|
|
|
+ String shiShen2 = list.get(i).getShiShen2();
|
|
|
+ String shiShen3 = list.get(i).getShiShen3();
|
|
|
+ //正印
|
|
|
+ if (shiShen1 != null && shiShen1.contains("正印")) {
|
|
|
+ Integer count = shiShenCount.get("正印") + 1;
|
|
|
+ shiShenCount.put("正印", count);
|
|
|
+ }
|
|
|
+ if (shiShen2 != null && shiShen2.contains("正印")) {
|
|
|
+ Integer count = shiShenCount.get("正印") + 1;
|
|
|
+ shiShenCount.put("正印", count);
|
|
|
+ }
|
|
|
+ if (shiShen3 != null && shiShen3.contains("正印")) {
|
|
|
+ Integer count = shiShenCount.get("正印") + 1;
|
|
|
+ shiShenCount.put("正印", count);
|
|
|
+ }
|
|
|
+ //食神
|
|
|
+ if (shiShen1 != null && shiShen1.contains("食神")) {
|
|
|
+ Integer count = shiShenCount.get("食神") + 1;
|
|
|
+ shiShenCount.put("食神", count);
|
|
|
+ }
|
|
|
+ if (shiShen2 != null && shiShen2.contains("食神")) {
|
|
|
+ Integer count = shiShenCount.get("食神") + 1;
|
|
|
+ shiShenCount.put("食神", count);
|
|
|
+ }
|
|
|
+ if (shiShen3 != null && shiShen3.contains("食神")) {
|
|
|
+ Integer count = shiShenCount.get("食神") + 1;
|
|
|
+ shiShenCount.put("食神", count);
|
|
|
+ }
|
|
|
+
|
|
|
+ //正官
|
|
|
+ if (shiShen1 != null && shiShen1.contains("正官")) {
|
|
|
+ Integer count = shiShenCount.get("正官") + 1;
|
|
|
+ shiShenCount.put("正官", count);
|
|
|
+ }
|
|
|
+ if (shiShen2 != null && shiShen2.contains("正官")) {
|
|
|
+ Integer count = shiShenCount.get("正官") + 1;
|
|
|
+ shiShenCount.put("正官", count);
|
|
|
+ }
|
|
|
+ if (shiShen3 != null && shiShen3.contains("正官")) {
|
|
|
+ Integer count = shiShenCount.get("正官") + 1;
|
|
|
+ shiShenCount.put("正官", count);
|
|
|
+ }
|
|
|
+
|
|
|
+ //正财
|
|
|
+ if (shiShen1 != null && shiShen1.contains("正财")) {
|
|
|
+ Integer count = shiShenCount.get("正财") + 1;
|
|
|
+ shiShenCount.put("正财", count);
|
|
|
+ }
|
|
|
+ if (shiShen2 != null && shiShen2.contains("正财")) {
|
|
|
+ Integer count = shiShenCount.get("正财") + 1;
|
|
|
+ shiShenCount.put("正财", count);
|
|
|
+ }
|
|
|
+ if (shiShen3 != null && shiShen3.contains("正财")) {
|
|
|
+ Integer count = shiShenCount.get("正财") + 1;
|
|
|
+ shiShenCount.put("正财", count);
|
|
|
+ }
|
|
|
+
|
|
|
+ //七杀
|
|
|
+ if (shiShen1 != null && shiShen1.contains("七杀")) {
|
|
|
+ Integer count = shiShenCount.get("七杀") + 1;
|
|
|
+ shiShenCount.put("七杀", count);
|
|
|
+ }
|
|
|
+ if (shiShen2 != null && shiShen2.contains("七杀")) {
|
|
|
+ Integer count = shiShenCount.get("七杀") + 1;
|
|
|
+ shiShenCount.put("七杀", count);
|
|
|
+ }
|
|
|
+ if (shiShen3 != null && shiShen3.contains("七杀")) {
|
|
|
+ Integer count = shiShenCount.get("七杀") + 1;
|
|
|
+ shiShenCount.put("七杀", count);
|
|
|
+ }
|
|
|
+
|
|
|
+ //偏印
|
|
|
+ if (shiShen1 != null && shiShen1.contains("偏印")) {
|
|
|
+ Integer count = shiShenCount.get("偏印") + 1;
|
|
|
+ shiShenCount.put("偏印", count);
|
|
|
+ }
|
|
|
+ if (shiShen2 != null && shiShen2.contains("偏印")) {
|
|
|
+ Integer count = shiShenCount.get("偏印") + 1;
|
|
|
+ shiShenCount.put("偏印", count);
|
|
|
+ }
|
|
|
+ if (shiShen3 != null && shiShen3.contains("偏印")) {
|
|
|
+ Integer count = shiShenCount.get("偏印") + 1;
|
|
|
+ shiShenCount.put("偏印", count);
|
|
|
+ }
|
|
|
+
|
|
|
+ //偏财
|
|
|
+ if (shiShen1 != null && shiShen1.contains("偏财")) {
|
|
|
+ Integer count = shiShenCount.get("偏财") + 1;
|
|
|
+ shiShenCount.put("偏财", count);
|
|
|
+ }
|
|
|
+ if (shiShen2 != null && shiShen2.contains("偏财")) {
|
|
|
+ Integer count = shiShenCount.get("偏财") + 1;
|
|
|
+ shiShenCount.put("偏财", count);
|
|
|
+ }
|
|
|
+ if (shiShen3 != null && shiShen3.contains("偏财")) {
|
|
|
+ Integer count = shiShenCount.get("偏财") + 1;
|
|
|
+ shiShenCount.put("偏财", count);
|
|
|
+ }
|
|
|
+
|
|
|
+ //伤官
|
|
|
+ if (shiShen1 != null && shiShen1.contains("伤官")) {
|
|
|
+ Integer count = shiShenCount.get("伤官") + 1;
|
|
|
+ shiShenCount.put("伤官", count);
|
|
|
+ }
|
|
|
+ if (shiShen2 != null && shiShen2.contains("伤官")) {
|
|
|
+ Integer count = shiShenCount.get("伤官") + 1;
|
|
|
+ shiShenCount.put("伤官", count);
|
|
|
+ }
|
|
|
+ if (shiShen3 != null && shiShen3.contains("伤官")) {
|
|
|
+ Integer count = shiShenCount.get("伤官") + 1;
|
|
|
+ shiShenCount.put("伤官", count);
|
|
|
+ }
|
|
|
+
|
|
|
+ //劫财
|
|
|
+ if (shiShen1 != null && shiShen1.contains("劫财")) {
|
|
|
+ Integer count = shiShenCount.get("劫财") + 1;
|
|
|
+ shiShenCount.put("劫财", count);
|
|
|
+ }
|
|
|
+ if (shiShen2 != null && shiShen2.contains("劫财")) {
|
|
|
+ Integer count = shiShenCount.get("劫财") + 1;
|
|
|
+ shiShenCount.put("劫财", count);
|
|
|
+ }
|
|
|
+ if (shiShen3 != null && shiShen3.contains("劫财")) {
|
|
|
+ Integer count = shiShenCount.get("劫财") + 1;
|
|
|
+ shiShenCount.put("劫财", count);
|
|
|
+ }
|
|
|
+
|
|
|
+ //比肩
|
|
|
+ if (shiShen1 != null && shiShen1.contains("比肩")) {
|
|
|
+ Integer count = shiShenCount.get("比肩") + 1;
|
|
|
+ shiShenCount.put("比肩", count);
|
|
|
+ }
|
|
|
+ if (shiShen2 != null && shiShen2.contains("比肩")) {
|
|
|
+ Integer count = shiShenCount.get("比肩") + 1;
|
|
|
+ shiShenCount.put("比肩", count);
|
|
|
+ }
|
|
|
+ if (shiShen3 != null && shiShen3.contains("比肩")) {
|
|
|
+ Integer count = shiShenCount.get("比肩") + 1;
|
|
|
+ shiShenCount.put("比肩", count);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ StringBuffer zeroCotent = new StringBuffer();
|
|
|
+ shiShenCount.forEach((key, value) -> {
|
|
|
+ if (value == 0) {
|
|
|
+ zeroCotent.append(shiShenConfig.getZeroShiShen().get(key));
|
|
|
+ zeroCotent.append(";");
|
|
|
+ }
|
|
|
+ });
|
|
|
+ System.out.println(zeroCotent.toString());
|
|
|
+
|
|
|
+ return shiShenCount;
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 潮湿平衡
|
|
|
*
|
|
|
- * @param ganZhiDto
|
|
|
+ * @param list
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
- public Map<String, Object> getZaoShiCount(GanZhiDto ganZhiDto) {
|
|
|
- List<GanZhiRowVo> list = this.getGanZhiRowVoList(ganZhiDto);
|
|
|
+ public Map<String, Object> getZaoShiCount(List<GanZhiRowVo> list) {
|
|
|
|
|
|
- Map<String, Integer> fiveCount = this.getGanZhiRowVoCount(ganZhiDto);
|
|
|
+ Map<String, Integer> fiveCount = this.getGanZhiRowVoCount(list);
|
|
|
int huoCount = fiveCount.get("火");
|
|
|
int shuiCount = fiveCount.get("水");
|
|
|
|
|
@@ -1468,22 +1640,21 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
|
|
|
StringBuffer fangWei = new StringBuffer();
|
|
|
|
|
|
System.out.println(str);
|
|
|
+ str = str.substring(str.indexOf("喜神方位"));
|
|
|
|
|
|
- System.out.println(s[14]);
|
|
|
- System.out.println(s[15]);
|
|
|
- System.out.println(s[16]);
|
|
|
-
|
|
|
-// fangWei.append(ShiShenConfig.fangWei(s[14]));
|
|
|
-// fangWei.append(ShiShenConfig.fangWei(s[15]));
|
|
|
-// fangWei.append(ShiShenConfig.fangWei(s[16]));
|
|
|
-// fangWei.append(ShiShenConfig.fangWei(s[17]));
|
|
|
-// fangWei.append(ShiShenConfig.fangWei(s[18]));
|
|
|
-// fangWei.append(ShiShenConfig.fangWei(s[20]));
|
|
|
+ System.out.println(str);
|
|
|
|
|
|
- return fangWei.toString();
|
|
|
+ fangWei.append(s[14]).append(";");
|
|
|
+ fangWei.append(s[15]).append(";");
|
|
|
+ fangWei.append(s[16]).append(";");
|
|
|
+ fangWei.append(s[17]).append(";");
|
|
|
+ fangWei.append(s[18]).append(";");
|
|
|
+ fangWei.append(s[19]).append(";");
|
|
|
+ fangWei.append(s[20]);
|
|
|
+ System.out.println(fangWei.toString());
|
|
|
+ return str;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
}
|