Commit 1ab3ccf4b41c06d49f15ad6b7d59080ad1b65cba
Exists in
master
and in
8 other branches
Merge remote-tracking branch 'origin/master'
Showing 4 changed files
- platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/BabyCheckService.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyCheckController.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/BabyCheckService.java
View file @
1ab3ccf
... | ... | @@ -69,6 +69,15 @@ |
69 | 69 | return babyAwDao.queryAwByHeight(condition.toMongoQuery()); |
70 | 70 | } |
71 | 71 | |
72 | + public List<AwModel> queryBabyHealthConfig(Integer agetType, Integer sex,Integer type,Double height) { | |
73 | + MongoCondition condition = MongoCondition.newInstance(); | |
74 | + condition = condition.and("agetType", agetType, MongoOper.IS); | |
75 | + condition = condition.and("sex", sex, MongoOper.IS); | |
76 | + condition = condition.and("type", type, MongoOper.IS); | |
77 | + condition = condition.and("height", height, MongoOper.IS); | |
78 | + return babyAwDao.queryAwByHeight(condition.toMongoQuery()); | |
79 | + } | |
80 | + | |
72 | 81 | public List<BabyCheckModel> queryLastCheck(List<String> ids) { |
73 | 82 | return babyCheckDao.queryLastCheck(ids); |
74 | 83 | } |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyCheckController.java
View file @
1ab3ccf
... | ... | @@ -122,8 +122,10 @@ |
122 | 122 | @ResponseBody |
123 | 123 | public BaseObjectResponse queryHWByHeight( |
124 | 124 | @RequestParam(required = true) Double height, |
125 | - @RequestParam(required = true) Integer sex){ | |
126 | - return babyCheckFacade.queryHWByHeight(height, sex); | |
125 | + @RequestParam(required = true) Double weight, | |
126 | + @RequestParam(required = true) Integer sex, | |
127 | + @RequestParam(required = true) String birth){ | |
128 | + return babyCheckFacade.queryHWByHeight(height,weight, sex,birth); | |
127 | 129 | |
128 | 130 | } |
129 | 131 |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java
View file @
1ab3ccf
... | ... | @@ -854,18 +854,57 @@ |
854 | 854 | * @param sex |
855 | 855 | * @return |
856 | 856 | */ |
857 | - public BaseObjectResponse queryHWByHeight(Double height, Integer sex) { | |
857 | + public BaseObjectResponse queryHWByHeight(Double height,Double value, Integer sex,String birth) { | |
858 | 858 | |
859 | 859 | Double hw = getHw(height); |
860 | - String value = ""; | |
861 | - List<HwModel> hws = babyCheckService.queryHWByHeight(hw,sex); | |
862 | - if(CollectionUtils.isNotEmpty(hws)) | |
860 | + | |
861 | + //计算儿童的月龄 | |
862 | + int monthAge = DateUtil.getBabyAgeMonth(DateUtil.parseYMD(birth), new Date()); | |
863 | + int ageType = 0; | |
864 | + if (monthAge > 24) | |
863 | 865 | { |
864 | - value = String.valueOf(hws.get(0).getMiddleSd()); | |
866 | + ageType = 1; | |
865 | 867 | } |
866 | 868 | |
869 | + //查询该月龄的年龄别体重值 | |
870 | + List<AwModel> list = babyCheckService.queryBabyHealthConfig(ageType,sex,3,hw); | |
871 | + | |
872 | + String res = ""; | |
873 | + if (CollectionUtils.isNotEmpty(list)) { | |
874 | + AwModel model = list.get(0); | |
875 | + | |
876 | + if (model.getPthreeDs() < value) | |
877 | + { | |
878 | + res = "上"; | |
879 | + } | |
880 | + else if (model.getPthreeDs() >=value && value > model.getPtwoDs()) | |
881 | + { | |
882 | + res = "中上"; | |
883 | + } | |
884 | + else if (model.getPtwoDs() >=value && value > model.getPoneDs()) | |
885 | + { | |
886 | + res = "中+"; | |
887 | + } | |
888 | + else if (model.getPoneDs() >=value && value >= model.getRoneDs()) | |
889 | + { | |
890 | + res = "中"; | |
891 | + } | |
892 | + else if (model.getRoneDs() >value && value >= model.getRtwoDs()) | |
893 | + { | |
894 | + res = "中-"; | |
895 | + } | |
896 | + else if (model.getRtwoDs() >value && value >= model.getRthreeDs()) | |
897 | + { | |
898 | + res = "中下"; | |
899 | + } | |
900 | + else if (model.getRtwoDs() >value) | |
901 | + { | |
902 | + res = "下"; | |
903 | + } | |
904 | + } | |
905 | + | |
867 | 906 | BaseObjectResponse br = new BaseObjectResponse(); |
868 | - br.setData(value); | |
907 | + br.setData(res); | |
869 | 908 | br.setErrorcode(ErrorCodeConstants.SUCCESS); |
870 | 909 | br.setErrormsg("成功"); |
871 | 910 | return br; |
872 | 911 | |
873 | 912 | |
874 | 913 | |
875 | 914 | |
876 | 915 | |
877 | 916 | |
878 | 917 | |
879 | 918 | |
880 | 919 | |
881 | 920 | |
882 | 921 | |
883 | 922 | |
884 | 923 | |
885 | 924 | |
886 | 925 | |
887 | 926 | |
888 | 927 | |
889 | 928 | |
890 | 929 | |
... | ... | @@ -919,75 +958,73 @@ |
919 | 958 | public BaseObjectResponse queryGrowthEvaluate(Double height, Integer sex, String birth,Double weight) { |
920 | 959 | |
921 | 960 | List<String> growthEvaluate = new ArrayList<>(); |
922 | - | |
923 | - | |
924 | 961 | Double hw = getHw(height); |
925 | - Double value = null; | |
926 | - HwModel hmodel = null; | |
927 | 962 | |
928 | - //身长别体重 | |
929 | - List<HwModel> hws = babyCheckService.queryHWByHeight(hw, sex); | |
930 | - if(CollectionUtils.isNotEmpty(hws)) | |
963 | + //计算儿童的月龄 | |
964 | + int monthAge = DateUtil.getBabyAgeMonth(DateUtil.parseYMD(birth), new Date()); | |
965 | + int ageType = 0; | |
966 | + if (monthAge > 24) | |
931 | 967 | { |
932 | - hmodel = hws.get(0); | |
933 | - value = hmodel.getMiddleSd(); | |
968 | + ageType = 1; | |
934 | 969 | } |
935 | 970 | |
936 | - | |
937 | - //计算儿童的月龄 | |
938 | - int monthAge = DateUtil.getBabyAgeMonth(DateUtil.parseYMD(birth), new Date()); | |
939 | - | |
940 | - | |
941 | 971 | //查询该月龄的年龄别体重值 |
942 | - List<AwModel> aws = babyCheckService.queryBabyHealthConfig(monthAge, sex,0); | |
943 | - if (CollectionUtils.isNotEmpty(aws) && aws.size() > 1) | |
972 | + List<AwModel> list = babyCheckService.queryBabyHealthConfig(ageType, sex, 3, hw); | |
973 | + | |
974 | + if(CollectionUtils.isNotEmpty(list)) | |
944 | 975 | { |
945 | - AwModel model = aws.get(0); | |
946 | - AwModel model1 = aws.get(1); | |
976 | + Double value = list.get(0).getMiddleDs(); | |
947 | 977 | |
948 | - if(model.getType() == 1) | |
978 | + //查询该月龄的年龄别体重值 | |
979 | + List<AwModel> aws = babyCheckService.queryBabyHealthConfig(monthAge, sex,0); | |
980 | + if (CollectionUtils.isNotEmpty(aws) && aws.size() > 1) | |
949 | 981 | { |
950 | - model = aws.get(1); | |
951 | - model1 = aws.get(0); | |
952 | - } | |
982 | + AwModel model = aws.get(0); | |
983 | + AwModel model1 = aws.get(1); | |
953 | 984 | |
954 | - //低于参考人群的年龄别体重的M -2s | |
955 | - if (model.getRtwoDs() > weight) | |
956 | - { | |
957 | - growthEvaluate.add("低体重"); | |
958 | - } | |
959 | - if (value != null) | |
960 | - { | |
961 | - //中位数百分比 | |
962 | - Double mp = weight/value; | |
963 | - if (mp < 0.8) | |
985 | + if(model.getType() == 1) | |
964 | 986 | { |
965 | - growthEvaluate.add("重度消瘦"); | |
987 | + model = aws.get(1); | |
988 | + model1 = aws.get(0); | |
966 | 989 | } |
967 | - else if (0.8 <= mp && mp < 0.9) | |
990 | + | |
991 | + //低于参考人群的年龄别体重的M -2s | |
992 | + if (model.getRtwoDs() > weight) | |
968 | 993 | { |
969 | - growthEvaluate.add("轻度消瘦"); | |
994 | + growthEvaluate.add("低体重"); | |
970 | 995 | } |
971 | - else if (1.1 < mp && mp <= 1.2) | |
996 | + if (value != null) | |
972 | 997 | { |
973 | - growthEvaluate.add("超重"); | |
998 | + //中位数百分比 | |
999 | + Double mp = weight/value; | |
1000 | + if (mp < 0.8) | |
1001 | + { | |
1002 | + growthEvaluate.add("重度消瘦"); | |
1003 | + } | |
1004 | + else if (0.8 <= mp && mp < 0.9) | |
1005 | + { | |
1006 | + growthEvaluate.add("轻度消瘦"); | |
1007 | + } | |
1008 | + else if (1.1 < mp && mp <= 1.2) | |
1009 | + { | |
1010 | + growthEvaluate.add("超重"); | |
1011 | + } | |
1012 | + else if ( mp > 1.2) | |
1013 | + { | |
1014 | + growthEvaluate.add("肥胖"); | |
1015 | + } | |
974 | 1016 | } |
975 | - else if ( mp > 1.2) | |
1017 | + | |
1018 | + if (weight > list.get(0).getPtwoDs() && height < model1.getRtwoDs()) | |
976 | 1019 | { |
977 | - growthEvaluate.add("肥胖"); | |
1020 | + growthEvaluate.add("生长迟缓"); | |
978 | 1021 | } |
1022 | + if (weight < list.get(0).getPtwoDs() && height < model1.getRtwoDs()) | |
1023 | + { | |
1024 | + growthEvaluate.add("慢性严重营养不良"); | |
1025 | + } | |
979 | 1026 | } |
980 | - | |
981 | - if (weight > hmodel.getPlusSd() && height < model1.getRtwoDs()) | |
982 | - { | |
983 | - growthEvaluate.add("生长迟缓"); | |
984 | - } | |
985 | - if (weight < hmodel.getPlusSd() && height < model1.getRtwoDs()) | |
986 | - { | |
987 | - growthEvaluate.add("慢性严重营养不良"); | |
988 | - } | |
989 | 1027 | } |
990 | - | |
991 | 1028 | BaseObjectResponse br = new BaseObjectResponse(); |
992 | 1029 | br.setData(growthEvaluate); |
993 | 1030 | br.setErrorcode(ErrorCodeConstants.SUCCESS); |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java
View file @
1ab3ccf
... | ... | @@ -282,7 +282,7 @@ |
282 | 282 | } |
283 | 283 | |
284 | 284 | |
285 | - private BabyModel fillBaby(Patients patients) { | |
285 | + private BabyModel fillBaby(Patients patients,MatDeliverAddRequest deliverAddRequest) { | |
286 | 286 | BabyModel babyModel = new BabyModel(); |
287 | 287 | if (null != patients) { |
288 | 288 | babyModel.setAreaId(patients.getAreaId()); |
... | ... | @@ -312,8 +312,10 @@ |
312 | 312 | babyModel.setBuildDoctor("a9e5507f-e7da-4ec6-b8db-9a1e4d1b7c29"); |
313 | 313 | babyModel.setServiceStatus(patients.getServiceStatus()); |
314 | 314 | babyModel.setServiceType(patients.getServiceType()); |
315 | - int day=DateUtil.getDays(patients.getLastMenses(),patients.getFmDate()); | |
316 | - babyModel.setDueWeek(day/7); | |
315 | + if(null!=deliverAddRequest.getDueDate()){ | |
316 | + int day=DateUtil.getDays(patients.getLastMenses(),DateUtil.parseYMD(deliverAddRequest.getDueDate())); | |
317 | + babyModel.setDueWeek(day/7); | |
318 | + } | |
317 | 319 | } |
318 | 320 | // 产妇分娩建档 |
319 | 321 | babyModel.setBuildType(2); |
... | ... | @@ -410,7 +412,7 @@ |
410 | 412 | MaternalDeliverModel.Baby baby1 = baby.convertToDataModel(); |
411 | 413 | babyList.add(baby1); |
412 | 414 | //填充小孩基本信息 |
413 | - BabyModel babyModel = fillBaby(patients); | |
415 | + BabyModel babyModel = fillBaby(patients,deliverAddRequest); | |
414 | 416 | babyModel.setDeliverOrg(hospital); |
415 | 417 | baby.setId(baby1.getId()); |
416 | 418 | babyModel.setBirth(DateUtil.parseYMD(deliverAddRequest.getDueDate())); |