Commit ef9cd6fb83cb5e4fda86865edbe65159a598f1b4

Authored by yangfei
1 parent 7f61fddc7c

根据生日、出生孕周计算末次月经

Showing 2 changed files with 21 additions and 10 deletions

platform-operate-api/src/main/java/com/lyms/platform/operate/web/Test.java View file @ ef9cd6f
1 1 package com.lyms.platform.operate.web;
2 2  
3   -import com.lyms.platform.common.enums.BabyDeformityEnums;
4   -import com.lyms.platform.common.utils.EnumUtil;
  3 +import com.lyms.platform.common.utils.DateUtil;
5 4 import com.lyms.platform.pojo.BasicConfig;
6 5 import net.sourceforge.pinyin4j.PinyinHelper;
7 6 import org.apache.log4j.Logger;
8 7  
9 8 import java.util.Comparator;
  9 +import java.util.Date;
10 10 import java.util.List;
11 11 import java.util.Map;
12 12  
... ... @@ -23,7 +23,14 @@
23 23 // List jctc = EnumUtil.toJson(ChildCareEnums.JCTCEnums.class);
24 24 // System.out.println(jctc);
25 25  
26   - System.out.println(EnumUtil.toJson(BabyDeformityEnums.class));
  26 + //根据出生孕周计算末次月经
  27 + Date LastMens = DateUtil.addWeek(DateUtil.parseYMD("2018-01-01"),-34);
  28 + //根据末次月经计算预产期
  29 + Date dueDate = DateUtil.addMonth(LastMens, 9);
  30 + dueDate = DateUtil.addDay(dueDate, 7);
  31 + System.out.println(DateUtil.getyyyy_MM_dd(dueDate));
  32 + // System.out.println(EnumUtil.toJson(BabyDeformityEnums.class));
  33 +
27 34 // int day = DateUtil.getExcludeMonthDay(DateUtil.parseYMD("2018-04-19"),new Date());
28 35 // System.out.println(day);
29 36  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java View file @ ef9cd6f
... ... @@ -780,13 +780,17 @@
780 780 base.setMonthAge(DateUtil.getBabyMonthAge(model.getBirth(), new Date()));
781 781 //计算儿童的预产期
782 782 if(model.getBirth()!=null&&model.getDueWeek()!=null&&model.getDueWeek()<37){//早产儿,根据出生孕周计算末次月经,在根据末次月经计算预产期
783   - //根据出生孕周计算末次月经
784   - Date LastMens = DateUtil.addWeek(model.getBirth(),-model.getDueWeek());
785   - //根据末次月经计算预产期
786   - Date dueDate = DateUtil.addMonth(LastMens, 9);
787   - dueDate = DateUtil.addDay(dueDate, 7);
788   - //返回预产期
789   - base.setDueDate(DateUtil.getyyyy_MM_dd(dueDate));
  783 + if(DateUtil.isGtOrEq(model.getBirth(),model.getDueDate())){//如果相等,预产期与生日一致
  784 + //根据出生孕周计算末次月经
  785 + Date LastMens = DateUtil.addWeek(model.getBirth(),-model.getDueWeek());
  786 + //根据末次月经计算预产期
  787 + Date dueDate = DateUtil.addMonth(LastMens, 9);
  788 + dueDate = DateUtil.addDay(dueDate, 7);
  789 + //返回预产期
  790 + base.setDueDate(DateUtil.getyyyy_MM_dd(dueDate));
  791 + }else{
  792 + base.setDueDate(DateUtil.getyyyy_MM_dd(model.getDueDate()));
  793 + }
790 794 }
791 795  
792 796