From e59bb0f81fa33d1f9541c215723b1784d00283bb Mon Sep 17 00:00:00 2001 From: kyebyungha Date: Mon, 14 Mar 2022 16:25:39 +0900 Subject: [PATCH] =?UTF-8?q?=EC=84=B1=EC=9E=A5=EC=A0=90=EC=88=98=20=20?= =?UTF-8?q?=EB=8D=B0=EC=9D=B4=ED=84=B0=20=EC=97=85=EB=8A=94=20=EA=B2=BD?= =?UTF-8?q?=EC=9A=B0=20=EC=98=A4=EB=A5=98=20=EB=B0=9C=EC=83=9D=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../m/bf_growth/M_Bf_growthController.java | 4 +- .../creative/web/util/date/DateUtil.java | 90 +++++++++++-------- .../views/ftl/m/bf_growth/growth_balance.ftl | 2 +- 3 files changed, 56 insertions(+), 40 deletions(-) diff --git a/src/main/java/com/backoffice/m/bf_growth/M_Bf_growthController.java b/src/main/java/com/backoffice/m/bf_growth/M_Bf_growthController.java index 7152cf6..8aa24ae 100644 --- a/src/main/java/com/backoffice/m/bf_growth/M_Bf_growthController.java +++ b/src/main/java/com/backoffice/m/bf_growth/M_Bf_growthController.java @@ -507,6 +507,8 @@ public class M_Bf_growthController extends AbstractControllerManager{ // 2. rm_growth_body: 마지막 측정 값 DataMap rm_growth_body = bf_growth_bodyBO.select_bf_growth_body_child_for_last(paramMap); //smc_no, OEM_CODE + if(rm_growth_body == null ) rm_growth_body = new DataMap(); + // 3. rm_child 추가 정보: age, m String birth_dt = RenaStringUtil.getData(rm_child, "birthday"); String base_dt = RenaStringUtil.getData(rm_growth_body, "base_dt"); @@ -545,7 +547,7 @@ public class M_Bf_growthController extends AbstractControllerManager{ } } } - + if( RenaStringUtil.getDataToDouble(rm_growth_body, "height") == height_min) rm_growth_body.put("degrowth", "Y"); else rm_growth_body.put("degrowth", "N"); diff --git a/src/main/java/com/renastudio/creative/web/util/date/DateUtil.java b/src/main/java/com/renastudio/creative/web/util/date/DateUtil.java index 00441b0..8c18c8f 100644 --- a/src/main/java/com/renastudio/creative/web/util/date/DateUtil.java +++ b/src/main/java/com/renastudio/creative/web/util/date/DateUtil.java @@ -381,42 +381,47 @@ public class DateUtil { } public static int getDistanceByTwoMonth(String sDate, String eDate, String s_format, String e_format){ - Calendar startCalendar = new GregorianCalendar(); - startCalendar.setTime(DateUtil.getStringToDateTime(sDate, s_format)); - Calendar endCalendar = new GregorianCalendar(); - endCalendar.setTime(DateUtil.getStringToDateTime(eDate, e_format)); - - int diffYear = endCalendar.get(Calendar.YEAR) - startCalendar.get(Calendar.YEAR); - int diffMonth = diffYear * 12 + endCalendar.get(Calendar.MONTH) - startCalendar.get(Calendar.MONTH); - - // 생일 안 지난 경우 month -1 - if (startCalendar.get(Calendar.MONTH) * 100 + startCalendar.get(Calendar.DATE) > endCalendar.get(Calendar.MONTH) * 100 + endCalendar.get(Calendar.DATE) ) - diffMonth--; - + int diffMonth =0; + if( !null2Str(sDate,"").equals("") && !null2Str(eDate,"").equals("") ) { + Calendar startCalendar = new GregorianCalendar(); + startCalendar.setTime(DateUtil.getStringToDateTime(sDate, s_format)); + Calendar endCalendar = new GregorianCalendar(); + endCalendar.setTime(DateUtil.getStringToDateTime(eDate, e_format)); + + int diffYear = endCalendar.get(Calendar.YEAR) - startCalendar.get(Calendar.YEAR); + diffMonth = diffYear * 12 + endCalendar.get(Calendar.MONTH) - startCalendar.get(Calendar.MONTH); + // 생일 안 지난 경우 month -1 + if (startCalendar.get(Calendar.MONTH) * 100 + startCalendar.get(Calendar.DATE) > endCalendar.get(Calendar.MONTH) * 100 + endCalendar.get(Calendar.DATE) ) + diffMonth--; + + } return diffMonth; } - public static int getAge(String birthDate, String birth_format, String baseDate, String base_format) - { - Calendar birthCalendar = new GregorianCalendar(); - birthCalendar.setTime(DateUtil.getStringToDateTime(birthDate, birth_format)); + public static int getAge(String birthDate, String birth_format, String baseDate, String base_format) { - int birthYear = birthCalendar.get(Calendar.YEAR); - int birthMonth = birthCalendar.get(Calendar.MONTH) + 1; - int birthDay = birthCalendar.get(Calendar.DAY_OF_MONTH); - - Calendar baseCalendar = new GregorianCalendar(); - baseCalendar.setTime(DateUtil.getStringToDateTime(baseDate, base_format)); - - int currentYear = baseCalendar.get(Calendar.YEAR); - int currentMonth = baseCalendar.get(Calendar.MONTH) + 1; - int currentDay = baseCalendar.get(Calendar.DAY_OF_MONTH); - - int age = currentYear - birthYear; - // 생일 안 지난 경우 -1 - if (birthMonth * 100 + birthDay > currentMonth * 100 + currentDay) - age--; - + int age = 0; + + if( !null2Str(birthDate,"").equals("") && !null2Str(baseDate,"").equals("") ) { + Calendar birthCalendar = new GregorianCalendar(); + birthCalendar.setTime(DateUtil.getStringToDateTime(birthDate, birth_format)); + + int birthYear = birthCalendar.get(Calendar.YEAR); + int birthMonth = birthCalendar.get(Calendar.MONTH) + 1; + int birthDay = birthCalendar.get(Calendar.DAY_OF_MONTH); + + Calendar baseCalendar = new GregorianCalendar(); + baseCalendar.setTime(DateUtil.getStringToDateTime(baseDate, base_format)); + + int currentYear = baseCalendar.get(Calendar.YEAR); + int currentMonth = baseCalendar.get(Calendar.MONTH) + 1; + int currentDay = baseCalendar.get(Calendar.DAY_OF_MONTH); + + age = currentYear - birthYear; + // 생일 안 지난 경우 -1 + if (birthMonth * 100 + birthDay > currentMonth * 100 + currentDay) + age--; + } return age; } @@ -749,12 +754,14 @@ public class DateUtil { final SimpleDateFormat f = new SimpleDateFormat(pattern); Date result = null; - try { - result = f.parse(date); - } catch (ParseException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + if(date !=null && date.length() >7 ) { + try { + result = f.parse(date); + } catch (ParseException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } return result; } @@ -957,4 +964,11 @@ public class DateUtil { return df.format(date); } + + public static String null2Str(Object str, String strDefault) { + if(str == null || str == "null" || str.toString().length() == 0) + return strDefault; + else + return str.toString(); + } } diff --git a/src/main/webapp/WEB-INF/views/ftl/m/bf_growth/growth_balance.ftl b/src/main/webapp/WEB-INF/views/ftl/m/bf_growth/growth_balance.ftl index dc3c3c9..6095354 100644 --- a/src/main/webapp/WEB-INF/views/ftl/m/bf_growth/growth_balance.ftl +++ b/src/main/webapp/WEB-INF/views/ftl/m/bf_growth/growth_balance.ftl @@ -94,7 +94,7 @@
- ${model['rm_report']['height_explain']} + ${model['rm_report']['height_explain']}