diff --git a/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java b/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java
index ec6870f..bb43baa 100644
--- a/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java
+++ b/platform-common/src/main/java/com/lyms/platform/common/utils/DateUtil.java
@@ -1742,10 +1742,12 @@ public class DateUtil {
Date date = addMonth(birth, month);
int days = daysBetween(date, new Date());
BigDecimal bg = new BigDecimal(1.0/30*days);
- double doubleValue = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
+ double doubleValue = bg.setScale(1, BigDecimal.ROUND_HALF_EVEN).doubleValue();
return doubleValue;
}
+
+
/**
* 身份证-获取出生日期
*
@@ -1960,10 +1962,64 @@ public class DateUtil {
return calendar.get(Calendar.YEAR);
}
+ /**
+ * 计算月龄 int
+ * @param birth
+ * @param checkDate
+ * @return
+ */
+ public static double getDoubleBabyMonthAge(Date birth, Date checkDate) {
+ if (birth == null) {
+ return 0.0;
+ }
+ Calendar rightNow = Calendar.getInstance();
+ rightNow.setTime(checkDate);
+ rightNow.add(Calendar.MONTH, -1);
+ if (birth.getTime() > rightNow.getTime().getTime()) {
+ int day = daysBetween(birth, checkDate);
+ BigDecimal bg = new BigDecimal(day/30);
+ double doubleValue = bg.setScale(1, BigDecimal.ROUND_HALF_EVEN).doubleValue();
+ return doubleValue;
+ }
+ Calendar rightNow1 = Calendar.getInstance();
+ rightNow1.setTime(checkDate);
+ rightNow1.add(Calendar.YEAR, -1);
- public static void main(String[] args) {
- System.out.println(DateUtil.parseYMDHMS(DateUtil.getyyyy_MM_dd(new Date(1704384000000L+1500000L)) ));
+ if (birth.getTime() > rightNow1.getTime().getTime()) {
+ int month = getMonthSpace(birth, checkDate);
+ Calendar yearNow = Calendar.getInstance();
+ yearNow.setTime(birth);
+ yearNow.add(Calendar.MONTH, month);
+
+ int day = daysBetween(yearNow.getTime(), checkDate);
+ double doubleValue = 0;
+ if (day != 0) {
+ BigDecimal bg = new BigDecimal(day);
+ doubleValue= bg.divide(new BigDecimal("30"),1, BigDecimal.ROUND_DOWN).doubleValue();
+ }
+
+ if (month != 0) {
+ doubleValue = doubleValue + month;
+ }
+ return doubleValue;
+ }
+ int year = getYearSpace(birth, checkDate);
+ rightNow.setTime(checkDate);
+ rightNow.add(Calendar.YEAR, year);
+
+ int month = getMonthSpace1(birth, rightNow.getTime());
+
+ return Double.valueOf(year*12+month);
+ }
+
+ public static void main(String[] args) {
+ //System.out.println(DateUtil.parseYMDHMS(DateUtil.getyyyy_MM_dd(new Date(1704384000000L+1500000L)) ));
+ // double monthDay =getBabyAgeMonth(DateUtil.parseYMD("2023-03-12"),new Date())+getMonthDays(DateUtil.parseYMD("2023-03-2"));
+ //getMonthDays()
+ // System.out.println(getBabyMonthAge(DateUtil.parseYMD("2023-03-12"),new Date()));
+ double monthDay =getDoubleBabyMonthAge(DateUtil.parseYMD("2023-08-25"),new Date());
+ System.out.println(monthDay);
}
}
diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AccessPermissionFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AccessPermissionFacade.java
index 32398cc..a4411f8 100644
--- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AccessPermissionFacade.java
+++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AccessPermissionFacade.java
@@ -223,7 +223,7 @@ public class AccessPermissionFacade {
*/
public void initUser(){
Date date=new Date();
- Date day= DateUtil.parseYMD("2024-03-25");
+ Date day= DateUtil.parseYMD("2024-05-20");
if (date.compareTo(day)>0){
UsersQuery usersQuery=new UsersQuery();
usersQuery.setOrgId(2100001377);
diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEvaluationCriterionServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEvaluationCriterionServiceImpl.java
index 5f00ac4..bc4ecc3 100644
--- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEvaluationCriterionServiceImpl.java
+++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/BabyEvaluationCriterionServiceImpl.java
@@ -745,7 +745,12 @@ public class BabyEvaluationCriterionServiceImpl implements BabyEvaluationCriteri
return new BaseResponse().setErrorcode(ErrorCodeConstants.SYSTEM_ERROR).setErrormsg("儿童建档数据缺失");
}
Integer checkMonth = DateUtil.getBabyAgeMonth(babyModel.getBirth(), new Date());
+
double monthDay = checkMonth+DateUtil.getMonthDays(babyModel.getBirth());
+ if ("2100001377".equals(hospitalId)){
+ //滦平儿保月龄计算公式
+ monthDay = DateUtil.getDoubleBabyMonthAge(babyModel.getBirth(),new Date());
+ }
paramModel.setName(babyModel.getName());
paramModel.setGender(babyModel.getSex());
paramModel.setBirth(babyModel.getBirth());
diff --git a/platform-operate-api/src/main/resources/spring/applicationContext-quartz.xml b/platform-operate-api/src/main/resources/spring/applicationContext-quartz.xml
index 4659dbd..15c874d 100644
--- a/platform-operate-api/src/main/resources/spring/applicationContext-quartz.xml
+++ b/platform-operate-api/src/main/resources/spring/applicationContext-quartz.xml
@@ -703,6 +703,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -773,6 +792,7 @@
+