Commit 077edadc2c1d242cada27eb432d233b4f6325e58

Authored by wtt
1 parent 202e7b5c9c

update

Showing 4 changed files with 417 additions and 4 deletions

platform-dal/src/main/java/com/lyms/platform/pojo/AutoBabyRiskRecord.java View file @ 077edad
... ... @@ -42,6 +42,7 @@
42 42 private String diagnosisMonth;
43 43 //自动诊断结果risks
44 44 private List <Map <String, String>> diagnosis;
  45 + private List <String> diagnosislist;
45 46 //自动诊断时间
46 47 private Date diagnosisDate;
47 48 //状态 0 未确认 1已经确认
... ... @@ -49,6 +50,14 @@
49 50 //诊断来源 0孕妇分娩建档 1儿童建档 2儿童检查
50 51 private Integer type;
51 52  
  53 +
  54 + public List <String> getDiagnosislist() {
  55 + return diagnosislist;
  56 + }
  57 +
  58 + public void setDiagnosislist(List <String> diagnosislist) {
  59 + this.diagnosislist = diagnosislist;
  60 + }
52 61  
53 62 public Integer getYn() {
54 63 return yn;
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyAutoDiagnoseRiskController.java View file @ 077edad
... ... @@ -6,6 +6,7 @@
6 6 import com.lyms.platform.common.result.BaseResponse;
7 7 import com.lyms.platform.operate.web.facade.BabyAutoDiagnoseRiskFacade;
8 8 import com.lyms.platform.operate.web.request.AntExManagerQueryRequest;
  9 +import com.lyms.platform.operate.web.request.BabyAutoRiskInfoRequest;
9 10 import com.lyms.platform.pojo.AutoBabyRiskRecord;
10 11 import org.apache.commons.lang.StringUtils;
11 12 import org.springframework.beans.factory.annotation.Autowired;
... ... @@ -69,6 +70,18 @@
69 70  
70 71  
71 72  
  73 + /**
  74 + 儿童建档,儿童检查自动诊断
  75 + * @Author: 武涛涛
  76 + * @Date: 2020/9/3 21:00
  77 + */
  78 + @RequestMapping(method = RequestMethod.POST, value = "/autoBabyInfoRisk")
  79 + @ResponseBody
  80 + @TokenRequired
  81 + public BaseResponse autoBabyInfoRisk(@RequestBody BabyAutoRiskInfoRequest babyAutoRiskInfoRequest, HttpServletRequest request) throws Exception{
  82 + LoginContext loginState = (LoginContext) request.getAttribute("loginContext");
  83 + return autoDiagnoseRiskFacade.autoBabyInfoRisk(babyAutoRiskInfoRequest);
  84 + }
72 85  
73 86  
74 87  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyAutoDiagnoseRiskFacade.java View file @ 077edad
... ... @@ -13,6 +13,7 @@
13 13 import com.lyms.platform.common.utils.ExceptionUtils;
14 14 import com.lyms.platform.common.utils.JsonUtil;
15 15 import com.lyms.platform.operate.web.request.AntExManagerQueryRequest;
  16 +import com.lyms.platform.operate.web.request.BabyAutoRiskInfoRequest;
16 17 import com.lyms.platform.operate.web.request.BabyAutoRiskRequest;
17 18 import com.lyms.platform.operate.web.request.MatDeliverAddRequest;
18 19 import com.lyms.platform.pojo.*;
... ... @@ -95,6 +96,9 @@
95 96 //自动诊断高危
96 97 List <Map <String, String>> riskList = autoRisk(babyAutoRiskRequest, babyAutoRiskRequest.getHospitalId(), type);
97 98 autoBabyRiskRecord.setDiagnosis(riskList);
  99 + List <String> list = new ArrayList <>();
  100 + getDiagnosisId(autoBabyRiskRecord,list);
  101 + autoBabyRiskRecord.setDiagnosislist(list);
98 102  
99 103  
100 104 /*保存自动诊断数据*/
... ... @@ -102,6 +106,23 @@
102 106 }
103 107  
104 108 /**
  109 + * 儿童建档,儿童检查自动诊断
  110 + *
  111 + * @param babyAutoRiskInfoRequest
  112 + * @Author: 武涛涛
  113 + * @Date: 2020/9/3 20:54
  114 + */
  115 + public BaseResponse autoBabyInfoRisk(BabyAutoRiskInfoRequest babyAutoRiskInfoRequest) throws NoSuchFieldException, IllegalAccessException {
  116 + BabyAutoRiskRequest babyAutoRiskRequest = babyAutoRiskInfoRequest.convertToDataModel();
  117 +
  118 + //自动诊断高危
  119 + List <Map <String, String>> riskList = autoRisk(babyAutoRiskRequest, babyAutoRiskRequest.getHospitalId(), babyAutoRiskInfoRequest.getType());
  120 +
  121 + return new BaseListResponse().setData(riskList).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功");
  122 +
  123 + }
  124 +
  125 + /**
105 126 * 儿童,自动判定高危因素
106 127 *
107 128 * @param hospitalId
108 129  
109 130  
110 131  
... ... @@ -686,15 +707,18 @@
686 707 Criteria c1 = null;
687 708 if (null != antExManagerQueryRequest.getQueryNo()) {
688 709 MongoCondition c = MongoCondition.newInstance();
689   - MongoCondition con1 = MongoCondition.newInstance("phone", antExManagerQueryRequest.getQueryNo(), MongoOper.IS);
690   - MongoCondition con2 = MongoCondition.newInstance("username", "^" + antExManagerQueryRequest.getQueryNo(), MongoOper.LIKE);
  710 + MongoCondition con1 = MongoCondition.newInstance("mphone", antExManagerQueryRequest.getQueryNo(), MongoOper.IS);
  711 + MongoCondition con2 = MongoCondition.newInstance("name", "^" + antExManagerQueryRequest.getQueryNo(), MongoOper.LIKE);
691 712 MongoCondition con3 = MongoCondition.newInstance("cardNo", antExManagerQueryRequest.getQueryNo(), MongoOper.IS);
  713 + MongoCondition con4 = MongoCondition.newInstance("mcertNo", antExManagerQueryRequest.getQueryNo(), MongoOper.IS);
692 714 //MongoCondition con4 = MongoCondition.newInstance("fileCode", queryNo, MongoOper.IS);
693 715 MongoCondition con5 = MongoCondition.newInstance("vcCardNo", antExManagerQueryRequest.getQueryNo(), MongoOper.IS);
694 716 if (c1 != null) {
695   - c1 = c1.andOperator(c.orCondition(new MongoCondition[]{con1, con2, con3, con5}).getCriteria());
  717 + c1 = c1.andOperator(c.orCondition(new MongoCondition[]{con1, con2, con3, con4,con5}).getCriteria());
  718 + query.addCriteria(c1);
696 719 } else {
697   - c1 = c.orCondition(new MongoCondition[]{con1, con2, con3, con5}).getCriteria();
  720 + c1 = c.orCondition(new MongoCondition[]{con1, con2, con3, con4, con5}).getCriteria();
  721 + query.addCriteria(c1);
698 722 }
699 723 }
700 724 if (StringUtils.isNotEmpty(antExManagerQueryRequest.getAutoTime())) {
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabyAutoRiskInfoRequest.java View file @ 077edad
  1 +package com.lyms.platform.operate.web.request;
  2 +
  3 +import com.lyms.platform.common.base.IBasicRequestConvert;
  4 +import com.lyms.platform.common.core.annotation.form.Form;
  5 +import org.hibernate.validator.constraints.NotEmpty;
  6 +import org.springframework.data.mongodb.core.mapping.Document;
  7 +
  8 +import javax.validation.constraints.NotNull;
  9 +import java.util.ArrayList;
  10 +import java.util.List;
  11 +import java.util.Map;
  12 +
  13 +/**
  14 + * 儿童检查,自动高危页面入参类
  15 + */
  16 +@Form
  17 +@Document
  18 +public class BabyAutoRiskInfoRequest implements IBasicRequestConvert <BabyAutoRiskRequest> {
  19 +
  20 +
  21 + //新生儿重量 getBaby
  22 + private String babyWeight;
  23 + //apgar评分
  24 + private Map apgarScore;
  25 + //分娩孕周
  26 + private String dueWeek;
  27 + //分娩方式
  28 + private Map deliveryMode;
  29 + //1 儿童建档,2儿童检查使用自动诊断
  30 + @NotNull(message = "type不能为空")
  31 + @NotEmpty(message = "type不能为空")
  32 + private Integer type;
  33 +
  34 +
  35 + /***畸形详情 getBaby ****/
  36 + //无脑畸形
  37 + private boolean jxWn;
  38 + //脊柱裂
  39 + private boolean jxJzl;
  40 + //脑彭出
  41 + private boolean jxNpc;
  42 + //先天性脑积水
  43 + private boolean jxNjs;
  44 + //腭裂
  45 + private boolean jxEl;
  46 + //唇裂
  47 + private boolean jxCl;
  48 + //唇裂合并腭裂
  49 + private boolean jxClhb;
  50 + //小耳(包括无耳)
  51 + private boolean jxXe;
  52 + //外耳其他畸形(小耳、无耳除外)
  53 + private boolean jxWe;
  54 + //食道闭锁或狭窄
  55 + private boolean jxSdbs;
  56 + //直肠肛门闭锁或狭窄(包括无肛)
  57 + private boolean jxZcgm;
  58 + //尿道下裂
  59 + private boolean jxNdxl;
  60 + //膀胱外翻
  61 + private boolean jxPwwf;
  62 + //马蹄内翻足
  63 + private boolean jxMtn;
  64 + //多指
  65 + private boolean jxDz;
  66 + //多趾
  67 + private boolean jxDc;
  68 + //并指
  69 + private boolean jxBz;
  70 + //并趾
  71 + private boolean jxBc;
  72 + //肢体短缩包括缺指(趾)、裂手(足)]
  73 + private boolean jxZtds;
  74 + //先天性隔疝
  75 + private boolean jxXtxe;
  76 + //脐膨出
  77 + private boolean jxQpc;
  78 + //腹裂
  79 + private boolean jxFl;
  80 + //联体双胎
  81 + private boolean jxLtst;
  82 + //唐氏综合征(21-三体综合征)
  83 + private boolean jxTszh;
  84 + //先天性心脏病
  85 + private boolean jxXtx;
  86 +
  87 + @Override
  88 + public BabyAutoRiskRequest convertToDataModel() {
  89 + BabyAutoRiskRequest babyAutoRiskRequest = new BabyAutoRiskRequest();
  90 + babyAutoRiskRequest.setDueWeek(dueWeek);
  91 + babyAutoRiskRequest.setDeliveryMode(deliveryMode);
  92 + List <MatDeliverAddRequest.Baby> babies = new ArrayList <>();
  93 + MatDeliverAddRequest.Baby baby = new MatDeliverAddRequest.Baby();
  94 + baby.setBabyWeight(babyWeight);
  95 + baby.setApgarScore(apgarScore);
  96 + baby.setJxWn(jxWn);
  97 + baby.setJxJzl(jxJzl);
  98 + baby.setJxNpc(jxNpc);
  99 + baby.setJxNjs(jxNjs);
  100 + baby.setJxEl(jxEl);
  101 + baby.setJxCl(jxCl);
  102 + baby.setJxClhb(jxClhb);
  103 + baby.setJxXe(jxXe);
  104 + baby.setJxWe(jxWe);
  105 + baby.setJxSdbs(jxSdbs);
  106 + baby.setJxZcgm(jxZcgm);
  107 + baby.setJxNdxl(jxNdxl);
  108 + baby.setJxPwwf(jxPwwf);
  109 + baby.setJxMtn(jxMtn);
  110 + baby.setJxDz(jxDz);
  111 + baby.setJxDc(jxDc);
  112 + baby.setJxBz(jxBz);
  113 + baby.setJxBc(jxBc);
  114 + baby.setJxZtds(jxZtds);
  115 + baby.setJxXtxe(jxXtxe);
  116 + baby.setJxQpc(jxQpc);
  117 + baby.setJxFl(jxFl);
  118 + baby.setJxLtst(jxLtst);
  119 + baby.setJxTszh(jxTszh);
  120 + baby.setJxXtx(jxXtx);
  121 + babies.add(baby);
  122 + babyAutoRiskRequest.setBabies(babies);
  123 + return babyAutoRiskRequest;
  124 + }
  125 +
  126 + public Integer getType() {
  127 + return type;
  128 + }
  129 +
  130 + public void setType(Integer type) {
  131 + this.type = type;
  132 + }
  133 +
  134 + public String getBabyWeight() {
  135 + return babyWeight;
  136 + }
  137 +
  138 + public void setBabyWeight(String babyWeight) {
  139 + this.babyWeight = babyWeight;
  140 + }
  141 +
  142 + public Map getApgarScore() {
  143 + return apgarScore;
  144 + }
  145 +
  146 + public void setApgarScore(Map apgarScore) {
  147 + this.apgarScore = apgarScore;
  148 + }
  149 +
  150 + public String getDueWeek() {
  151 + return dueWeek;
  152 + }
  153 +
  154 + public void setDueWeek(String dueWeek) {
  155 + this.dueWeek = dueWeek;
  156 + }
  157 +
  158 + public Map getDeliveryMode() {
  159 + return deliveryMode;
  160 + }
  161 +
  162 + public void setDeliveryMode(Map deliveryMode) {
  163 + this.deliveryMode = deliveryMode;
  164 + }
  165 +
  166 + public boolean isJxWn() {
  167 + return jxWn;
  168 + }
  169 +
  170 + public void setJxWn(boolean jxWn) {
  171 + this.jxWn = jxWn;
  172 + }
  173 +
  174 + public boolean isJxJzl() {
  175 + return jxJzl;
  176 + }
  177 +
  178 + public void setJxJzl(boolean jxJzl) {
  179 + this.jxJzl = jxJzl;
  180 + }
  181 +
  182 + public boolean isJxNpc() {
  183 + return jxNpc;
  184 + }
  185 +
  186 + public void setJxNpc(boolean jxNpc) {
  187 + this.jxNpc = jxNpc;
  188 + }
  189 +
  190 + public boolean isJxNjs() {
  191 + return jxNjs;
  192 + }
  193 +
  194 + public void setJxNjs(boolean jxNjs) {
  195 + this.jxNjs = jxNjs;
  196 + }
  197 +
  198 + public boolean isJxEl() {
  199 + return jxEl;
  200 + }
  201 +
  202 + public void setJxEl(boolean jxEl) {
  203 + this.jxEl = jxEl;
  204 + }
  205 +
  206 + public boolean isJxCl() {
  207 + return jxCl;
  208 + }
  209 +
  210 + public void setJxCl(boolean jxCl) {
  211 + this.jxCl = jxCl;
  212 + }
  213 +
  214 + public boolean isJxClhb() {
  215 + return jxClhb;
  216 + }
  217 +
  218 + public void setJxClhb(boolean jxClhb) {
  219 + this.jxClhb = jxClhb;
  220 + }
  221 +
  222 + public boolean isJxXe() {
  223 + return jxXe;
  224 + }
  225 +
  226 + public void setJxXe(boolean jxXe) {
  227 + this.jxXe = jxXe;
  228 + }
  229 +
  230 + public boolean isJxWe() {
  231 + return jxWe;
  232 + }
  233 +
  234 + public void setJxWe(boolean jxWe) {
  235 + this.jxWe = jxWe;
  236 + }
  237 +
  238 + public boolean isJxSdbs() {
  239 + return jxSdbs;
  240 + }
  241 +
  242 + public void setJxSdbs(boolean jxSdbs) {
  243 + this.jxSdbs = jxSdbs;
  244 + }
  245 +
  246 + public boolean isJxZcgm() {
  247 + return jxZcgm;
  248 + }
  249 +
  250 + public void setJxZcgm(boolean jxZcgm) {
  251 + this.jxZcgm = jxZcgm;
  252 + }
  253 +
  254 + public boolean isJxNdxl() {
  255 + return jxNdxl;
  256 + }
  257 +
  258 + public void setJxNdxl(boolean jxNdxl) {
  259 + this.jxNdxl = jxNdxl;
  260 + }
  261 +
  262 + public boolean isJxPwwf() {
  263 + return jxPwwf;
  264 + }
  265 +
  266 + public void setJxPwwf(boolean jxPwwf) {
  267 + this.jxPwwf = jxPwwf;
  268 + }
  269 +
  270 + public boolean isJxMtn() {
  271 + return jxMtn;
  272 + }
  273 +
  274 + public void setJxMtn(boolean jxMtn) {
  275 + this.jxMtn = jxMtn;
  276 + }
  277 +
  278 + public boolean isJxDz() {
  279 + return jxDz;
  280 + }
  281 +
  282 + public void setJxDz(boolean jxDz) {
  283 + this.jxDz = jxDz;
  284 + }
  285 +
  286 + public boolean isJxDc() {
  287 + return jxDc;
  288 + }
  289 +
  290 + public void setJxDc(boolean jxDc) {
  291 + this.jxDc = jxDc;
  292 + }
  293 +
  294 + public boolean isJxBz() {
  295 + return jxBz;
  296 + }
  297 +
  298 + public void setJxBz(boolean jxBz) {
  299 + this.jxBz = jxBz;
  300 + }
  301 +
  302 + public boolean isJxBc() {
  303 + return jxBc;
  304 + }
  305 +
  306 + public void setJxBc(boolean jxBc) {
  307 + this.jxBc = jxBc;
  308 + }
  309 +
  310 + public boolean isJxZtds() {
  311 + return jxZtds;
  312 + }
  313 +
  314 + public void setJxZtds(boolean jxZtds) {
  315 + this.jxZtds = jxZtds;
  316 + }
  317 +
  318 + public boolean isJxXtxe() {
  319 + return jxXtxe;
  320 + }
  321 +
  322 + public void setJxXtxe(boolean jxXtxe) {
  323 + this.jxXtxe = jxXtxe;
  324 + }
  325 +
  326 + public boolean isJxQpc() {
  327 + return jxQpc;
  328 + }
  329 +
  330 + public void setJxQpc(boolean jxQpc) {
  331 + this.jxQpc = jxQpc;
  332 + }
  333 +
  334 + public boolean isJxFl() {
  335 + return jxFl;
  336 + }
  337 +
  338 + public void setJxFl(boolean jxFl) {
  339 + this.jxFl = jxFl;
  340 + }
  341 +
  342 + public boolean isJxLtst() {
  343 + return jxLtst;
  344 + }
  345 +
  346 + public void setJxLtst(boolean jxLtst) {
  347 + this.jxLtst = jxLtst;
  348 + }
  349 +
  350 + public boolean isJxTszh() {
  351 + return jxTszh;
  352 + }
  353 +
  354 + public void setJxTszh(boolean jxTszh) {
  355 + this.jxTszh = jxTszh;
  356 + }
  357 +
  358 + public boolean isJxXtx() {
  359 + return jxXtx;
  360 + }
  361 +
  362 + public void setJxXtx(boolean jxXtx) {
  363 + this.jxXtx = jxXtx;
  364 + }
  365 +
  366 +
  367 +}