生年月日を年号で
生年月日が西暦で表示されるが,年号で表示されないと不便なので,年号で表示できるようにソースを変更した。これで,受付画面で年齢を表示するようにした時は年号で生年月日を表示するようになり,西暦を知りたい時は,年齢を非表示にすると西暦表示になる。
infomodel/ModelUtils.java の編集
public static String getAgeBirthday(String mmlBirthday) { String age = getAge(mmlBirthday); if (age != null) { StringBuffer buf = new StringBuffer(); buf.append(age); buf.append(" "); buf.append(AGE); buf.append(" ("); //// buf.append(mmlBirthday); buf.append(toNengo(mmlBirthday)); buf.append(")"); return buf.toString(); } return null; } //// 西暦=>年号変換 public static String toNengo(String mmlBirthday) { int year; int month; int day; String nengo; year = Integer.valueOf(mmlBirthday.substring(0,4)); month = Integer.valueOf(mmlBirthday.substring(5,7)); day = Integer.valueOf(mmlBirthday.substring(8,10)); // 1990年より先は平成 if (year >= 1990) { nengo = "H"; year = year - 1988; } // 1989年だったら,1月7日以前は昭和 else if (year == 1989) { if (month == 1 & day <= 7) { nengo = "S"; year = 64; } else { nengo = "H"; year = 1; } } // 1927年から1988年は昭和 else if (year >= 1927 & year <= 1988) { nengo = "S"; year = year - 1925; } // 1926年だったら,12月25日以降は昭和 else if (year == 1926) { if (month == 12 & day >= 25) { nengo = "S"; year = 1; } else { nengo = "T"; year = 15; } } // 1913年から1925年は大正 else if (year >= 1913 & year <= 1925) { nengo = "T"; year = year - 1911; } // 1912 年だったら,7/30 以降は大正 else if (year == 1912) { if (month >= 8) { nengo = "T"; year = 1; } else if (month <= 6) { nengo = "M"; year = 45; } else if (day >= 30) { nengo = "T"; year = 1; } else { nengo = "M"; year = 45; } } // 1911年以前は明治 else { nengo = "M"; year = year - 1867; } StringBuffer buf = new StringBuffer(); buf.append(nengo); if (year <= 9) buf.append("0"); buf.append(Integer.toString(year)); buf.append("-"); if (month <= 9) buf.append("0"); buf.append(Integer.toString(month)); buf.append("-"); if (day <= 9) buf.append("0"); buf.append(Integer.toString(day)); return buf.toString(); }
« サーバ速度比較 | トップページ | NetBeans の ant の設定 »
「OpenDolphin」カテゴリの記事
- Java 17 への移行(7) - OpenDolphin client の対応 (2023.02.04)
- Java 17 への移行(6) - Hibernate 6 でやらかす(2023.02.03)
- Java 17 への移行(5) - OpenDolphin server の対応(2023.02.02)
- Java 17 への移行(4) - OpenSearch の準備 [ubuntu 編](2023.02.01)
- Java 17 への移行(3) - OpenSearch の準備 [mac 編](2023.01.31)