Commit 3d7536ca00f68f462d24a42ed84b3b4b9f7b9069

Authored by gengxiaokai
1 parent 63db1e3749

新生儿筛查

Showing 10 changed files with 214 additions and 4 deletions

platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/IbabySieveDao.java View file @ 3d7536c
... ... @@ -16,6 +16,8 @@
16 16  
17 17 public BabySieveModel addBabySieve(BabySieveModel data);
18 18  
  19 + public BabySieveModel findOneBabySieveById(String id);
  20 +
19 21 public void updateBabySieveById(BabySieveModel obj,String id);
20 22  
21 23 public int queryBabySieveCount(MongoQuery query);
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/BabySieveDaoImpl.java View file @ 3d7536c
... ... @@ -32,6 +32,8 @@
32 32 update(new MongoQuery(new MongoCondition("id", id, MongoOper.IS)).convertToMongoQuery(), obj);
33 33 }
34 34  
  35 + public BabySieveModel findOneBabySieveById(String id){return findById(id);}
  36 +
35 37 public int queryBabySieveCount(MongoQuery query){return (int) count(query.convertToMongoQuery());}
36 38  
37 39 }
platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/BabySieveService.java View file @ 3d7536c
... ... @@ -39,9 +39,12 @@
39 39  
40 40 public void updateBabySieveById(BabySieveModel obj,String id){
41 41 obj.setModified(new Date());
42   - babySieveDao.updateBabySieveById(obj,id);
  42 + babySieveDao.updateBabySieveById(obj, id);
43 43 }
44 44  
  45 + public BabySieveModel findOneBabySieveById(String id){
  46 + return babySieveDao.findOneBabySieveById(id);
  47 + }
45 48  
46 49  
47 50 }
platform-dal/src/main/java/com/lyms/platform/pojo/BabyModel.java View file @ 3d7536c
... ... @@ -320,7 +320,7 @@
320 320 //其他(写明病名并详细描述)
321 321 private Map<String,Object> jxOther;
322 322  
323   - //用来标记是否申请新生儿筛查(null:为申请,1:已申请,2:已筛查
  323 + //用来标记是否申请新生儿筛查(null:为申请,1:已申请,2:已筛查,3:已接收
324 324 private String sieveStatus;
325 325  
326 326 public String getSieveStatus() {
platform-dal/src/main/java/com/lyms/platform/query/BabySieveQuery.java View file @ 3d7536c
... ... @@ -5,7 +5,9 @@
5 5 import com.lyms.platform.common.dao.operator.MongoCondition;
6 6 import com.lyms.platform.common.dao.operator.MongoOper;
7 7 import com.lyms.platform.common.dao.operator.MongoQuery;
  8 +import org.springframework.data.mongodb.core.query.Criteria;
8 9  
  10 +import java.util.Date;
9 11 import java.util.List;
10 12  
11 13 /**
12 14  
... ... @@ -19,7 +21,43 @@
19 21 private String matdeliverId;//分娩ID
20 22 private String patientId;//孕妇建档ID
21 23 private List<String> listBabyId;//儿童建档ID集合
  24 + private Date applyDateStrat;//申请开始时间
  25 + private Date applyDateEnd;//申请结束时间
  26 + private String testNumber;//血样码
  27 + private String collectHospitalId;//申请医院(采血单位)
22 28  
  29 + public Date getApplyDateStrat() {
  30 + return applyDateStrat;
  31 + }
  32 +
  33 + public void setApplyDateStrat(Date applyDateStrat) {
  34 + this.applyDateStrat = applyDateStrat;
  35 + }
  36 +
  37 + public Date getApplyDateEnd() {
  38 + return applyDateEnd;
  39 + }
  40 +
  41 + public void setApplyDateEnd(Date applyDateEnd) {
  42 + this.applyDateEnd = applyDateEnd;
  43 + }
  44 +
  45 + public String getTestNumber() {
  46 + return testNumber;
  47 + }
  48 +
  49 + public void setTestNumber(String testNumber) {
  50 + this.testNumber = testNumber;
  51 + }
  52 +
  53 + public String getCollectHospitalId() {
  54 + return collectHospitalId;
  55 + }
  56 +
  57 + public void setCollectHospitalId(String collectHospitalId) {
  58 + this.collectHospitalId = collectHospitalId;
  59 + }
  60 +
23 61 public String getId() {
24 62 return id;
25 63 }
... ... @@ -77,6 +115,23 @@
77 115 }
78 116 if(listBabyId != null && listBabyId.size() > 0){
79 117 condition = condition.and("babyId", listBabyId, MongoOper.IN);
  118 + }
  119 + if(testNumber != null){
  120 + condition = condition.and("testNumber", testNumber, MongoOper.IS);
  121 + }
  122 + if(collectHospitalId != null){
  123 + condition = condition.and("collectHospitalId", collectHospitalId, MongoOper.IS);
  124 + }
  125 + Criteria c = null;
  126 + if(null != applyDateStrat){
  127 + c = Criteria.where("created").gte(applyDateStrat);
  128 + }
  129 + if(null != applyDateEnd){
  130 + if (null != c) {
  131 + c = c.lte(applyDateEnd);
  132 + } else {
  133 + c = Criteria.where("created").lte(applyDateEnd);
  134 + }
80 135 }
81 136  
82 137 return condition.toMongoQuery();
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabySieveController.java View file @ 3d7536c
... ... @@ -88,5 +88,31 @@
88 88 return babySieveFacede.queryBabySieveList(babySieveAddRequest);
89 89 }
90 90  
  91 + /**
  92 + * 根据ID查看新生儿筛查申请
  93 + * @param id
  94 + * @return
  95 + */
  96 + @ResponseBody
  97 + @RequestMapping(value = "/getOneBabySieve",method = RequestMethod.GET)
  98 + public BaseResponse oneBabySieve(String id) {
  99 + return babySieveFacede.getOneBabySieve(id);
  100 + }
  101 +
  102 +
  103 + /**
  104 + * 新生儿实验室
  105 + * @param babySieveAddRequest
  106 + * @return
  107 + */
  108 + @ResponseBody
  109 + @RequestMapping(value = "/babySieveLab",method = RequestMethod.GET)
  110 + public BaseResponse babySieveLab(BabySieveAddRequest babySieveAddRequest,HttpServletRequest request) {
  111 + //babySieveAddRequest.setOperatorId(((LoginContext) request.getAttribute("loginContext")).getId());
  112 + babySieveAddRequest.setOperatorId(1000000185);
  113 + return babySieveFacede.queryBabySieveList(babySieveAddRequest);
  114 + }
  115 +
  116 +
91 117 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabySieveFacede.java View file @ 3d7536c
... ... @@ -258,7 +258,11 @@
258 258 babyModelQuery.setDataStatus(false);
259 259 babyModelQuery.setDeformityKey(babySieveAddRequest.getDeformityKey());
260 260 babyModelQuery.setDueType(StringUtils.isEmpty(babySieveAddRequest.getDueType()) ? null : babySieveAddRequest.getDueType());
261   - babyModelQuery.setSieveStatus(babySieveAddRequest.getSieveStatus());
  261 + if("0".equals(babySieveAddRequest.getSieveStatus())){
  262 + babyModelQuery.setSieveStatus(null);
  263 + }else {
  264 + babyModelQuery.setSieveStatus(babySieveAddRequest.getSieveStatus());
  265 + }
262 266 babyModelQuery.setPage(babySieveAddRequest.getPage());
263 267 babyModelQuery.setLimit(babySieveAddRequest.getLimit());
264 268 babyModelQuery.setNeed("Need");
... ... @@ -287,6 +291,15 @@
287 291 for(BabyModel babyModel : babyModelList){
288 292 if(maternalDeliverModel.getParentId().equals(babyModel.getParentId())){
289 293 BabySieveManager babySieveManager = new BabySieveManager();
  294 + //获取母亲基本信息
  295 + Patients patients = patientsService.findOnePatientById(babyModel.getParentId());
  296 + //获取高危因素,高危评分
  297 + HighScoreResult highScoreResult = antenatalExaminationFacade.findLastRisk(patients.getPid(), false);
  298 + babySieveManager.setRiskFactor(highScoreResult.getHighRisk());
  299 + babySieveManager.setRiskScore(highScoreResult.getScoreStr());
  300 + if(null != patients.getDueDate()){
  301 + babySieveManager.setyChanQi(DateUtil.getyyyy_MM_dd(patients.getDueDate()));
  302 + }
290 303 List<MaternalDeliverModel.Baby> babies = maternalDeliverModel.getBaby();
291 304 if (CollectionUtils.isNotEmpty(babies)) {
292 305 for (MaternalDeliverModel.Baby baby : babies) {
... ... @@ -349,6 +362,69 @@
349 362 babySieveManagerResult.setPageInfo(babyModelQuery.getPageInfo());
350 363 babySieveManagerResult.setErrorcode(ErrorCodeConstants.SUCCESS);
351 364 babySieveManagerResult.setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION);
  365 + return babySieveManagerResult;
  366 + }
  367 +
  368 +
  369 + /**
  370 + * 根据ID查看新生儿筛查申请
  371 + * @param id
  372 + * @return
  373 + */
  374 + public BaseObjectResponse getOneBabySieve(String id){
  375 + BaseObjectResponse br = new BaseObjectResponse();
  376 + BabySieveModel bm = babySieveService.findOneBabySieveById(id);
  377 + if(bm != null){
  378 + br.setData(bm);
  379 + br.setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION);
  380 + return br;
  381 + }
  382 + return br;
  383 + }
  384 +
  385 +
  386 + /**
  387 + * 修改申请单状态(新筛实验室接收按钮)
  388 + * @param id
  389 + * @return
  390 + */
  391 + public BaseObjectResponse updateSieveStarts(String id,Integer userId){
  392 + BaseObjectResponse br = new BaseObjectResponse();
  393 + String hospital = autoMatchFacade.getHospitalId(userId);
  394 + BabySieveModel bm = babySieveService.findOneBabySieveById(id);
  395 + if(null != bm){
  396 + BabyModelQuery babyModelQuery = new BabyModelQuery();
  397 + babyModelQuery.setId(bm.getBabyId());
  398 + List<BabyModel> list = babyBookbuildingService.queryBabyBuildByCond(babyModelQuery);
  399 + if(list != null && list.size() > 0){
  400 + //修改儿童档案sieveStatus字段的值
  401 + BabyModel model = new BabyModel();
  402 + model.setSieveStatus("3");
  403 + model.setModified(new Date());
  404 + model.setOperator(userId);
  405 + operateLogFacade.addModifyOptLog(userId, Integer.valueOf(hospital), list.get(0), model, OptActionEnums.UPDATE.getId(), "修改儿童筛查状态");
  406 + babyBookbuildingService.updateBabyBuild(model, bm.getBabyId());
  407 + }
  408 + br.setData(bm.getId());
  409 + br.setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION);
  410 + }
  411 + return br;
  412 + }
  413 +
  414 +
  415 + /**
  416 + * 新生儿筛查实验室列表
  417 + * @param babySieveAddRequest
  418 + * @return
  419 + */
  420 + public BabySieveManagerResult getBabySieveLab(BabySieveAddRequest babySieveAddRequest){
  421 + BabySieveManagerResult babySieveManagerResult = new BabySieveManagerResult();
  422 + BabyModelQuery babyModelQuery = new BabyModelQuery();
  423 + //查询号
  424 + babyModelQuery.setQueryNo(StringUtils.isEmpty(babySieveAddRequest.getQueryNo()) ? null : babySieveAddRequest.getQueryNo());
  425 + babyModelQuery.setDataStatus(false);
  426 +
  427 +
352 428 return babySieveManagerResult;
353 429 }
354 430  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/BabySieveAddRequest.java View file @ 3d7536c
... ... @@ -116,6 +116,17 @@
116 116 //医院ID
117 117 private Integer operatorId;
118 118  
  119 + //申请时间
  120 + private String applyDate;
  121 +
  122 + public String getApplyDate() {
  123 + return applyDate;
  124 + }
  125 +
  126 + public void setApplyDate(String applyDate) {
  127 + this.applyDate = applyDate;
  128 + }
  129 +
119 130 public String getDuescfs() {
120 131 return duescfs;
121 132 }
... ... @@ -346,6 +357,7 @@
346 357 babySieveModel.setId(id);
347 358 babySieveModel.setCurrentHospitalId(currentHospitalId);
348 359 babySieveModel.setAddress(address);
  360 + babySieveModel.setCollectHospitalId(collectHospitalId);
349 361 babySieveModel.setCollectDate(DateUtil.parseYMD(collectDate));
350 362 babySieveModel.setCollectDocterId(collectDocterId);
351 363 babySieveModel.setTestNumber(testNumber);
platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabySieveManager.java View file @ 3d7536c
1 1 package com.lyms.platform.operate.web.result;
2 2  
  3 +import java.util.List;
  4 +
3 5 /**
4 6 * 新生儿筛查管理返回模型
5 7 * Created by Administrator on 2018/9/3.
... ... @@ -24,6 +26,14 @@
24 26 //是否高危
25 27 private String highRisk;
26 28  
  29 + //高危因素
  30 + private List riskFactor;
  31 + //高危评分
  32 + private String riskScore;
  33 +
  34 + //预产期
  35 + private String yChanQi;
  36 +
27 37 //分娩孕周
28 38 private Integer dueWeek;
29 39  
... ... @@ -38,6 +48,30 @@
38 48  
39 49 //母亲姓名
40 50 private String mName;
  51 +
  52 + public List getRiskFactor() {
  53 + return riskFactor;
  54 + }
  55 +
  56 + public void setRiskFactor(List riskFactor) {
  57 + this.riskFactor = riskFactor;
  58 + }
  59 +
  60 + public String getRiskScore() {
  61 + return riskScore;
  62 + }
  63 +
  64 + public void setRiskScore(String riskScore) {
  65 + this.riskScore = riskScore;
  66 + }
  67 +
  68 + public String getyChanQi() {
  69 + return yChanQi;
  70 + }
  71 +
  72 + public void setyChanQi(String yChanQi) {
  73 + this.yChanQi = yChanQi;
  74 + }
41 75  
42 76 public String getBirthYMD() {
43 77 return birthYMD;
platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/BabySieveResult.java View file @ 3d7536c
... ... @@ -9,7 +9,7 @@
9 9 import java.util.List;
10 10  
11 11 /**
12   - * 新生儿筛查返回的对象
  12 + * 新生儿筛查申请返回的对象
13 13 * Created by Administrator on 2018/8/29.
14 14 */
15 15 public class BabySieveResult {