diff --git a/platform-common/src/main/java/com/lyms/platform/common/utils/NumberUtils.java b/platform-common/src/main/java/com/lyms/platform/common/utils/NumberUtils.java index 36d3b83..75ea74e 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/utils/NumberUtils.java +++ b/platform-common/src/main/java/com/lyms/platform/common/utils/NumberUtils.java @@ -19,6 +19,40 @@ public class NumberUtils { } return builder.toString(); } + + /** + * 判断字符串是否数字 + * @param str + * @return + */ + public static boolean isNumber(String str) { + if (StringUtils.isNotEmpty(str)) { + //判断有+号的字符,+不会被认为是正数 + if ("+".equals(str.substring(0, 1))) { + str = str.substring(1); + } + if (org.apache.commons.lang.math.NumberUtils.isNumber(str)) { + return true; + } + } + return false; + } + + /** + * 去除+ + * @param str + * @return + */ + public static String strDel(String str) { + if (StringUtils.isNotEmpty(str)) { + //判断有+号的字符 + if ("+".equals(str.substring(0, 1))) { + return str.substring(1); + } + } + return str; + } + public static void main(String[] args){ System.out.print(getRandomString(6)); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LhBabyEyeCheckFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LhBabyEyeCheckFacade.java index 3889efb..eb74e3b 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LhBabyEyeCheckFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LhBabyEyeCheckFacade.java @@ -8,10 +8,7 @@ import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.common.result.RespBuilder; import com.lyms.platform.common.result.ResponseCode; -import com.lyms.platform.common.utils.DateUtil; -import com.lyms.platform.common.utils.MapUtil; -import com.lyms.platform.common.utils.ReflectionUtils; -import com.lyms.platform.common.utils.StringUtils; +import com.lyms.platform.common.utils.*; import com.lyms.platform.operate.web.utils.CollectionUtils; import com.lyms.platform.permission.dao.master.CouponMapper; import com.lyms.platform.permission.model.Organization; @@ -20,6 +17,7 @@ import com.lyms.platform.pojo.BabyModel; import com.lyms.platform.pojo.LhBabyEyeCheck; import com.lyms.platform.query.BabyModelQuery; import com.lyms.platform.query.LhBabyEyelCheckQuery; +import com.sun.tools.javac.util.Convert; import org.apache.commons.collections.MapUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Sort; @@ -68,11 +66,11 @@ public class LhBabyEyeCheckFacade { "2".equals(babyCheck.getLhgzfyRight()) || "2".equals(babyCheck.getLhgzfyLeft()) || "2".equals(babyCheck.getLhhqsy()) || "2".equals(babyCheck.getLhhgfsRight()) || "2".equals(babyCheck.getLhhgfsLeft()) || "2".equals(babyCheck.getLhkyqgbzRight()) || "2".equals(babyCheck.getLhkyqgbzLeft()) || "2".equals(babyCheck.getLhdyyesyRight()) || "2".equals(babyCheck.getLhdyyesyLeft()) || - "2".equals(babyCheck.getLhywjc()) || ("48".equals(babyCheck.getCheckMonthId()) && 0.6>babyCheck.getLhsljcstRight()) || - (("60".equals(babyCheck.getCheckMonthId()) || "72".equals(babyCheck.getCheckMonthId())) && 0.8>babyCheck.getLhsljcstRight()) || - ("48".equals(babyCheck.getCheckMonthId()) && 0.6>babyCheck.getLhsljcstLeft()) || - (("60".equals(babyCheck.getCheckMonthId()) || "72".equals(babyCheck.getCheckMonthId())) && 0.8>babyCheck.getLhsljcstLeft()) || - "2".equals(babyCheck.getLhsldcRight()) || "2".equals(babyCheck.getLhsldcLeft()) + "2".equals(babyCheck.getLhywjc()) || ("48".equals(babyCheck.getCheckMonthId()) && null!=babyCheck.getLhsljcstRight() && 0.6>babyCheck.getLhsljcstRight()) || + (Arrays.asList("60","72").contains(babyCheck.getCheckMonthId()) && null!=babyCheck.getLhsljcstRight() && 0.8>babyCheck.getLhsljcstRight()) || + ("48".equals(babyCheck.getCheckMonthId()) && null!=babyCheck.getLhsljcstLeft() && 0.6>babyCheck.getLhsljcstLeft()) || + (Arrays.asList("60","72").contains(babyCheck.getCheckMonthId()) && null!=babyCheck.getLhsljcstLeft() && 0.8>babyCheck.getLhsljcstLeft()) || + "2".equals(babyCheck.getLhsldcRight()) || "2".equals(babyCheck.getLhsldcLeft()) || dioptricAnomaly(babyCheck) ){ babyCheck.setPositiveType("2"); @@ -387,12 +385,12 @@ public class LhBabyEyeCheckFacade { if("2".equals(babyCheck.getLhywjc())){ abnormal+="眼位检查;"; } - if(("48".equals(babyCheck.getCheckMonthId()) && 0.6>babyCheck.getLhsljcstRight()) || - (("60".equals(babyCheck.getCheckMonthId()) || "72".equals(babyCheck.getCheckMonthId())) && 0.8>babyCheck.getLhsljcstRight())){ + if(("48".equals(babyCheck.getCheckMonthId()) && null!=babyCheck.getLhsljcstRight() && 0.6 > babyCheck.getLhsljcstRight()) || + (Arrays.asList("60","72").contains(babyCheck.getCheckMonthId()) && null!=babyCheck.getLhsljcstRight() && 0.8 > babyCheck.getLhsljcstRight())){ abnormal+="视力检查(右);"; } - if(("48".equals(babyCheck.getCheckMonthId()) && 0.6>babyCheck.getLhsljcstLeft()) || - (("60".equals(babyCheck.getCheckMonthId()) || "72".equals(babyCheck.getCheckMonthId())) && 0.8>babyCheck.getLhsljcstLeft())){ + if(("48".equals(babyCheck.getCheckMonthId()) && null!=babyCheck.getLhsljcstLeft() && 0.6 > babyCheck.getLhsljcstLeft()) || + (Arrays.asList("60","72").contains(babyCheck.getCheckMonthId()) && null!=babyCheck.getLhsljcstLeft() && 0.8 > babyCheck.getLhsljcstLeft())){ abnormal+="视力检查(左);"; } if("2".equals(babyCheck.getLhsldcRight())){ @@ -401,8 +399,148 @@ public class LhBabyEyeCheckFacade { if("2".equals(babyCheck.getLhsldcLeft())){ abnormal+="视力低常(左);"; } + if(dioptricAnomaly(babyCheck)){ + abnormal+="屈光筛查"; + } return abnormal; } + /** + * 是否屈光异常 + * @param babyCheck + * @return + */ + public boolean dioptricAnomaly(LhBabyEyeCheck babyCheck){ + //6月-1岁 + if(Arrays.asList("6","8","12").contains(babyCheck.getCheckMonthId())){ + if(NumberUtils.isNumber(babyCheck.getLhdsr())){ + if(2.5d>Double.valueOf(NumberUtils.strDel(babyCheck.getLhdsr())) ){ + return true; + } + } + if(NumberUtils.isNumber(babyCheck.getLhdcr())){ + if(-0.5d>Double.valueOf(NumberUtils.strDel(babyCheck.getLhdcr())) || + 0.5dDouble.valueOf(NumberUtils.strDel(babyCheck.getLhdsl())) ){ + return true; + } + } + if(NumberUtils.isNumber(babyCheck.getLhdcl())){ + if(-0.5d>Double.valueOf(NumberUtils.strDel(babyCheck.getLhdcl())) || + 0.5d Double.valueOf(NumberUtils.strDel(babyCheck.getLhdsr()))) { + return true; + } + } + if (NumberUtils.isNumber(babyCheck.getLhdcr())) { + if (-0.5d > Double.valueOf(NumberUtils.strDel(babyCheck.getLhdcr())) || + 0.5d < Double.valueOf(NumberUtils.strDel(babyCheck.getLhdcr()))) { + return true; + } + } + if (NumberUtils.isNumber(babyCheck.getLhdsl())) { + if (2.0d > Double.valueOf(NumberUtils.strDel(babyCheck.getLhdsl()))) { + return true; + } + } + if (NumberUtils.isNumber(babyCheck.getLhdcl())) { + if (-0.5d > Double.valueOf(NumberUtils.strDel(babyCheck.getLhdcl())) || + 0.5d < Double.valueOf(NumberUtils.strDel(babyCheck.getLhdcl()))) { + return true; + } + } + } + //4-5岁 + if(Arrays.asList("48","60").contains(babyCheck.getCheckMonthId())){ + if(NumberUtils.isNumber(babyCheck.getLhdsr())){ + if(2.5d>Double.valueOf(NumberUtils.strDel(babyCheck.getLhdsr())) ){ + return true; + } + } + if(NumberUtils.isNumber(babyCheck.getLhdcr())){ + if(-0.5d>Double.valueOf(NumberUtils.strDel(babyCheck.getLhdcr())) || + 0.5dDouble.valueOf(NumberUtils.strDel(babyCheck.getLhdsl())) ){ + return true; + } + } + if(NumberUtils.isNumber(babyCheck.getLhdcl())){ + if(-0.5d>Double.valueOf(NumberUtils.strDel(babyCheck.getLhdcl())) || + 0.5dDouble.valueOf(NumberUtils.strDel(babyCheck.getLhdsr())) || + 1.5dDouble.valueOf(NumberUtils.strDel(babyCheck.getLhdcr())) || + 0.5dDouble.valueOf(NumberUtils.strDel(babyCheck.getLhdsl())) || + 1.5dDouble.valueOf(NumberUtils.strDel(babyCheck.getLhdcl())) || + 0.5dDouble.valueOf(NumberUtils.strDel(babyCheck.getLhdsr()))){ + return true; + } + } + if(NumberUtils.isNumber(babyCheck.getLhdcr())){ + if(-1.0d>Double.valueOf(NumberUtils.strDel(babyCheck.getLhdcr())) || + 1.0dDouble.valueOf(NumberUtils.strDel(babyCheck.getLhdsl()))){ + return true; + } + } + if(NumberUtils.isNumber(babyCheck.getLhdcl())){ + if(-1.0d>Double.valueOf(NumberUtils.strDel(babyCheck.getLhdcl())) || + 1.0d