From 16f73d8c17047c3ab8111edd9d0b19aea53680f9 Mon Sep 17 00:00:00 2001 From: shiyang <316555390@qq.com> Date: Tue, 1 Mar 2022 13:48:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=BB=A6=E5=B9=B3=E5=AD=95=E4=BA=A7=E3=80=81?= =?UTF-8?q?=E5=84=BF=E7=AB=A5=EF=BC=8C=E8=B4=AB=E8=A1=80=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=97=A0=E8=B4=AB=E8=A1=80=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/lyms/platform/query/AntExChuQuery.java | 46 ++++++++++------------ .../lyms/platform/query/BabyCheckModelQuery.java | 31 ++++++++++----- .../operate/web/facade/BabyCheckFacade.java | 32 ++++++++++----- .../platform/operate/web/facade/ViewFacade.java | 12 ++++-- 4 files changed, 73 insertions(+), 48 deletions(-) diff --git a/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java index d2d9ebf..c32f4ec 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java @@ -63,15 +63,6 @@ public class AntExChuQuery extends BaseQuery implements IConvertToNativeQuery { private String lpXhdbStart; private String lpXhdbEnd; - private String xhdbXiao; - - public String getXhdbXiao() { - return xhdbXiao; - } - - public void setXhdbXiao(String xhdbXiao) { - this.xhdbXiao = xhdbXiao; - } public String getXhdb() { return xhdb; @@ -421,32 +412,37 @@ public class AntExChuQuery extends BaseQuery implements IConvertToNativeQuery { MongoCondition condition2 = new MongoCondition("created", gteCreated, MongoOper.GTE); condition = condition.orCondition(new MongoCondition[]{mongoCondition, condition2}); } - if (null != lpXhdbStart&&null!=lpXhdbEnd) { + + Criteria c2=MongoCondition.newInstance().getCriteria(); + if(StringUtils.isNotEmpty(lpXhdbStart)){//大于等于 //字符串判断大小 String formatXhdb = String.format("function() {\n" + - " return this.xhdb >= %s &&this.xhdb <= %s \n" + - " }",lpXhdbStart,lpXhdbEnd); - if (null != c) { - c.and("$where").is(formatXhdb).and("xhdb").ne("");//加ne:该字段在mongo中是”“ ,如果表达式有>=0也可查出。可以避免空数据 - } else { - c = Criteria.where("$where").is(formatXhdb).and("xhdb").ne(""); + " return this.xhdb >= %s \n" + + " }",lpXhdbStart); + if(null != c2){ + c2 = c2.and("$where").is(formatXhdb).and("xhdb").ne("");//加ne:该字段在mongo中是”“ ,如果表达式有>=0也可查出。可以避免空数据 + }else{ + c2 = Criteria.where("$where").is(formatXhdb).and("xhdb").ne(""); } } - if(StringUtils.isNotEmpty(xhdbXiao)){ + + Criteria c3=MongoCondition.newInstance().getCriteria(); + if(StringUtils.isNotEmpty(lpXhdbEnd)){//小于等于 + //字符串判断大小 String formatXhdb = String.format("function() {\n" + - " return this.xhdb < %s \n" + - " }",xhdbXiao); - if(null != c){ - c = c.and("$where").is(formatXhdb).and("xhdb").ne("");//加ne:该字段在mongo中是”“ ,如果表达式有>=0也可查出。可以避免空数据 + " return this.xhdb <= %s \n" + + " }",lpXhdbEnd); + if(null != c3){ + c3 = c3.and("$where").is(formatXhdb).and("xhdb").ne("");//加ne:该字段在mongo中是”“ ,如果表达式有>=0也可查出。可以避免空数据 }else{ - c = Criteria.where("$where").is(formatXhdb).and("xhdb").ne(""); + c3 = Criteria.where("$where").is(formatXhdb).and("xhdb").ne(""); } } - if (null != c) { - condition = condition.andCondition(new MongoCondition(c)); + if (c != null) { + return new MongoCondition(c.andOperator(condition.getCriteria(),c2,c3)).toMongoQuery(); } - return condition.toMongoQuery(); + return new MongoCondition(c2.andOperator(condition.getCriteria(),c3)).toMongoQuery(); } public String getOtherHighRisk() { diff --git a/platform-dal/src/main/java/com/lyms/platform/query/BabyCheckModelQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/BabyCheckModelQuery.java index 6a3d964..5f097f2 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/BabyCheckModelQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/BabyCheckModelQuery.java @@ -260,24 +260,35 @@ public class BabyCheckModelQuery extends BaseQuery implements IConvertToNativeQu c = Criteria.where("modified").gte(modifiedStart).lte(modifiedEnd); } } - - if(StringUtils.isNotEmpty(hemoglobinStart) && StringUtils.isNotEmpty(hemoglobinEnd)){ + Criteria c2=MongoCondition.newInstance().getCriteria(); + if(StringUtils.isNotEmpty(hemoglobinStart)){//大于等于 //字符串判断大小 String formatXhdb = String.format("function() {\n" + - " return this.hemoglobin >= %s &&this.hemoglobin <= %s \n" + - " }",hemoglobinStart,hemoglobinEnd); - if(null != c){ - c = c.and("$where").is(formatXhdb).and("hemoglobin").ne("");//加ne:该字段在mongo中是”“ ,如果表达式有>=0也可查出。可以避免空数据 + " return this.hemoglobin >= %s \n" + + " }",hemoglobinStart); + if(null != c2){ + c2 = c2.and("$where").is(formatXhdb).and("hemoglobin").ne("");//加ne:该字段在mongo中是”“ ,如果表达式有>=0也可查出。可以避免空数据 }else{ - c = Criteria.where("$where").is(formatXhdb).and("hemoglobin").ne(""); + c2 = Criteria.where("$where").is(formatXhdb).and("hemoglobin").ne(""); } } + Criteria c3=MongoCondition.newInstance().getCriteria(); + if(StringUtils.isNotEmpty(hemoglobinEnd)){//小于等于 + //字符串判断大小 + String formatXhdb = String.format("function() {\n" + + " return this.hemoglobin <= %s \n" + + " }",hemoglobinEnd); + if(null != c3){ + c3 = c3.and("$where").is(formatXhdb).and("hemoglobin").ne("");//加ne:该字段在mongo中是”“ ,如果表达式有>=0也可查出。可以避免空数据 + }else{ + c3 = Criteria.where("$where").is(formatXhdb).and("hemoglobin").ne(""); + } + } if (c != null) { - return new MongoCondition(c.andOperator(condition.getCriteria())).toMongoQuery(); + return new MongoCondition(c.andOperator(condition.getCriteria(),c2,c3)).toMongoQuery(); } - - return condition.toMongoQuery(); + return new MongoCondition(c2.andOperator(condition.getCriteria(),c3)).toMongoQuery(); } public Integer getCheckMonthStart() { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java index e22024b..f075f27 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyCheckFacade.java @@ -4706,6 +4706,8 @@ public class BabyCheckFacade extends BaseServiceImpl { mapList.add(map); break; } + + String noHls="0"; String lightHls="0",lightHln="0"; String middleHls="0",middleHln="0"; String matterHls="0",matterHln="0"; @@ -4715,8 +4717,9 @@ public class BabyCheckFacade extends BaseServiceImpl { * 1-3个月 */ cms=1;cme=3; + noHls="90"; middleHls="60";middleHln="89"; - matterHls="30";matterHln="59"; + matterHls="0";matterHln="59"; break; case 2: /** @@ -4724,8 +4727,9 @@ public class BabyCheckFacade extends BaseServiceImpl { */ cms=4;cme=5; //(90-100g/l) + noHls="101"; lightHls="90";lightHln="100"; middleHls="60";middleHln="89"; - matterHls="30";matterHln="59"; + matterHls="0";matterHln="59"; break; case 3: /** @@ -4733,8 +4737,9 @@ public class BabyCheckFacade extends BaseServiceImpl { */ cms=6;cme=11; //(90-110g/l) + noHls="111"; lightHls="90";lightHln="110"; middleHls="60";middleHln="89"; - matterHls="30";matterHln="59"; + matterHls="0";matterHln="59"; break; case 4: /** @@ -4742,8 +4747,9 @@ public class BabyCheckFacade extends BaseServiceImpl { */ cms=12;cme=17; //(90-115g/l) + noHls="116"; lightHls="90";lightHln="110"; middleHls="60";middleHln="89"; - matterHls="30";matterHln="59"; + matterHls="0";matterHln="59"; break; case 5: /** @@ -4751,8 +4757,9 @@ public class BabyCheckFacade extends BaseServiceImpl { */ cms=18;cme=24; //(90-120g/l) + noHls="121"; lightHls="90";lightHln="110"; middleHls="60";middleHln="89"; - matterHls="30";matterHln="59"; + matterHls="0";matterHln="59"; break; case 6: /** @@ -4760,8 +4767,9 @@ public class BabyCheckFacade extends BaseServiceImpl { */ cms=25;cme=35; //(90-120g/l) + noHls="121"; lightHls="90";lightHln="110"; middleHls="60";middleHln="89"; - matterHls="30";matterHln="59"; + matterHls="0";matterHln="59"; break; case 7: /** @@ -4769,8 +4777,9 @@ public class BabyCheckFacade extends BaseServiceImpl { */ cms=36;cme=72; //(90-120g/l) + noHls="121"; lightHls="90";lightHln="110"; middleHls="60";middleHln="89"; - matterHls="30";matterHln="59"; + matterHls="0";matterHln="59"; break; } query.setCheckMonthStart(cms); @@ -4793,11 +4802,16 @@ public class BabyCheckFacade extends BaseServiceImpl { query.setHemoglobinEnd(matterHln); int matter =babyCheckService.queryBabyCheckCount(query); map.put("matter"+i,matter); + //无贫血 + query.setHemoglobinStart(noHls); + query.setHemoglobinEnd(null); + int nothing =babyCheckService.queryBabyCheckCount(query); + map.put("nothing"+i,nothing); //月龄区间总数 - map.put("total"+i,light+middle+matter); + map.put("total"+i,light+middle+matter+nothing); if(cms==1){ - map.put("total"+i,middle+matter); + map.put("total"+i,middle+matter+nothing); } //汇总总数 total+=Integer.parseInt(map.get("total"+i).toString()); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java index dd8d6de..e9e2a91 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java @@ -8858,12 +8858,16 @@ public class ViewFacade { Long matter = mongoTemplate.count(antExChuQuery.convertToQuery().convertToMongoQuery(), AntExChuModel.class); map.put("matter",matter); //极重度贫血(<40g/l) - antExChuQuery.setXhdbXiao("40"); antExChuQuery.setLpXhdbStart(null); - antExChuQuery.setLpXhdbEnd(null); + antExChuQuery.setLpXhdbEnd("41"); Long severity = mongoTemplate.count(antExChuQuery.convertToQuery().convertToMongoQuery(), AntExChuModel.class); + //无贫血(>109g/l) + antExChuQuery.setLpXhdbStart("110"); + antExChuQuery.setLpXhdbEnd(null); + Long nothing = mongoTemplate.count(antExChuQuery.convertToQuery().convertToMongoQuery(), AntExChuModel.class); map.put("severity",severity); - map.put("total",light+middle+matter+severity); + + map.put("total",light+middle+matter+severity+nothing); br.setErrorcode(ErrorCodeConstants.SUCCESS); br.setErrormsg("成功"); br.setObject(map); @@ -8905,7 +8909,7 @@ public class ViewFacade { break; case 4: //极重度贫血(<40g/l) - antExChuQuery.setXhdbXiao("40"); + antExChuQuery.setLpXhdbEnd("41"); break; } } -- 1.8.3.1