/** * 单宫6位号码局. * * @param condition.输入的6个数字串. * @return */ public List<Pan> getSixNumPanData(String condition) { Map<String, Object> paipanDataMap = new HashMap<String, Object>(); List<Pan> list = new ArrayList<Pan>(); ArrayList<String> juType = new ArrayList<String>(); juType.add("感情"); juType.add("事业"); juType.add("健康"); juType.add("财运"); juType.add("其他 "); paipanDataMap = QiMenUtil.get6NumPan(condition); Pan pan = QiMenUtil.setColorPoint4Pan(paipanDataMap, 1); pan.setJuType(juType); list.add(pan); return list; }
public List<Pan> getShiPanData(String dateStr, int dateType, int conditionType, String option) { JSONObject json = null; Map<String, Object> paipanParaMap = new HashMap<String, Object>(); Map<String, Object> paipanDataMap = new HashMap<String, Object>(); // 原始未着色数据. Map<String, Object> originalDataMap = new HashMap<String, Object>(); // 返回的所有数据. List<Pan> allDataList = new ArrayList<Pan>(); // 四柱. Map<String, String> sizhumap = new HashMap<String, String>(); Pan pan1 = new Pan(); int ju = -1; // 局数 int yinyang = -1; // 阴阳. String shizhi = ""; String shizhu = ""; String kezhu = ""; int panType = 1; sizhumap = Lunar.getSizhu(dateStr); // 默认时盘. if (conditionType == 0) { // 心数 } else if (conditionType == 1) { ju = Lunar.getJuByHeartNum(Integer.parseInt(option)); // 姓名 } else if (conditionType == 3) { ju = HanDict.getJu(option).get("ju"); shizhi = QiMenMsg.dizhi[HanDict.getJu(option).get("shizhi") - 1]; String rizhu = sizhumap.get("nianzhu"); shizhu = Lunar.getKeZhu(dateStr, shizhi, rizhu.substring(0, 1)); // 刻盘 } else if (conditionType == 4) { String kezhi = Lunar.getKezhi(dateStr); String shigan = Lunar.getSizhu(dateStr).get("shizhu").substring(0, 1); kezhu = Lunar.getKeZhu(dateStr, kezhi, shigan); shizhu = kezhu; sizhumap.put("kezhu", kezhu); panType = 0; } try { paipanParaMap = Lunar.getPaiPanParaByDate(dateStr, dateType, panType); } catch (Exception e) { e.printStackTrace(); } // 如果局数、阴阳、时柱没有被赋值的话,则从map中取出来. if (ju == -1) { ju = (Integer) paipanParaMap.get("ju"); } if (yinyang == -1) { yinyang = (Integer) paipanParaMap.get("yinyang"); } if (shizhu == "") { shizhu = sizhumap.get("shizhu"); } originalDataMap = QiMenUtil.getPanData(ju, yinyang, shizhu); if (conditionType == 2) { pan1 = QiMenUtil.setColorPoint4Pan(originalDataMap, 1); } else { pan1 = QiMenUtil.setColorPoint4Pan(originalDataMap, 0); } // 依次是公历 农历 月将 节气 /*paipanDataMap.put("gongli", paipanParaMap.get("gongli")); paipanDataMap.put("nongli", paipanParaMap.get("nongli")); paipanDataMap.put("yuejiang", paipanParaMap.get("yuejiang")); paipanDataMap.put("jieqi", paipanParaMap.get("jieqi")); paipanDataMap.put("sizhu", sizhumap.get("nianzhu")+" "+sizhumap.get("yuezhu")+" " +sizhumap.get("rizhu")+" "+shizhu+" "+sizhumap.get("kezhu")); paipanDataMap.put("zhifu", originalDataMap.get("zhifu")); paipanDataMap.put("zhishi", originalDataMap.get("zhishi")); paipanDataMap.put("shikongwang", originalDataMap.get("shikongwang")); paipanDataMap.put("maxin", originalDataMap.get("maxin"));*/ pan1.setNongli((String) paipanParaMap.get("nongli")); pan1.setGongli((String) paipanParaMap.get("gongli")); pan1.setYuejiang((String) paipanParaMap.get("yuejiang")); pan1.setJieqi((String) paipanParaMap.get("jieqi")); pan1.setSizhu( sizhumap.get("nianzhu") + " " + sizhumap.get("yuezhu") + " " + sizhumap.get("rizhu") + " " + sizhumap.get("shizhu") + " " + sizhumap.get("kezhu")); pan1.setZhifu((String) originalDataMap.get("zhifu")); pan1.setZhishi((String) originalDataMap.get("zhishi")); pan1.setShikognwang((String) originalDataMap.get("shikongwang")); pan1.setMaxin((String) originalDataMap.get("maxin")); pan1.setTianmendihu((ArrayList<String>) originalDataMap.get("tianmendihu")); pan1.setMa((Map<String, Object>) originalDataMap.get("ma")); ArrayList<String> juType = new ArrayList<String>(); juType.add("感情"); juType.add("事业"); juType.add("健康"); juType.add("财运"); juType.add("其他 "); pan1.setJuType(juType); // 不同的条件显示不同的遁局. if (conditionType == 1) { pan1.setDunju("心数局 " + paipanParaMap.get("dunju").toString().substring(0, 2) + ju + "局"); } else if (conditionType == 3) { pan1.setDunju("姓名局 " + paipanParaMap.get("dunju").toString().substring(0, 2) + ju + "局"); } else { pan1.setDunju(paipanParaMap.get("dunju") + ""); } allDataList.add(pan1); for (int i = 1; i < 8; i++) { Pan pan = new Pan(); pan = QiMenUtil.setColorPoint4Pan(QiMenUtil.getShunZhuan(i, originalDataMap), 0); allDataList.add(pan); } System.out.println( "所有的:" + JSONObject.toJSONString( allDataList, SerializerFeature.DisableCircularReferenceDetect)); return allDataList; }