From 26857cc8888232167acf206fb84b9d97364b513f Mon Sep 17 00:00:00 2001 From: wtt Date: Tue, 20 Apr 2021 12:21:51 +0800 Subject: [PATCH] update --- .../com/lyms/platform/query/AntExRecordQuery.java | 33 ++++++++++++++++ .../operate/web/result/AntExManagerResult.java | 10 +++++ .../operate/web/worker/AntExRecordWorker.java | 44 ++++++++++++++++++++++ 3 files changed, 87 insertions(+) diff --git a/platform-dal/src/main/java/com/lyms/platform/query/AntExRecordQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/AntExRecordQuery.java index 549cf83..96000ba 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/AntExRecordQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/AntExRecordQuery.java @@ -409,6 +409,8 @@ public class AntExRecordQuery extends BaseQuery implements IConvertToNativeQuery private Date checkTimeEnd; private Date checkTimeLt; private Date createdlt; + private Date createdgte; + private Date createdlte; private Date dueDateStart; private Date dueDateEnd; @@ -437,6 +439,14 @@ public class AntExRecordQuery extends BaseQuery implements IConvertToNativeQuery this.checkTimeStart = checkTimeStart; } + public Date getCreatedlte() { + return createdlte; + } + + public void setCreatedlte(Date createdlte) { + this.createdlte = createdlte; + } + public Date getCheckTimeEnd() { return checkTimeEnd; } @@ -453,6 +463,15 @@ public class AntExRecordQuery extends BaseQuery implements IConvertToNativeQuery this.createdlt = createdlt; } + + public Date getCreatedgte() { + return createdgte; + } + + public void setCreatedgte(Date createdgte) { + this.createdgte = createdgte; + } + public List getHospitalList() { return hospitalList; } @@ -809,6 +828,20 @@ public class AntExRecordQuery extends BaseQuery implements IConvertToNativeQuery c = Criteria.where("created").lt(createdlt); } } + if (null != createdlte) { + if (null != c) { + c = c.lt(createdlte); + } else { + c = Criteria.where("created").lte(createdlte); + } + } + if (null != createdgte) { + if (null != c) { + c = c.lte(createdgte); + } else { + c = Criteria.where("created").gte(createdgte); + } + } if (null != lastMensesStart) { if (null != c) { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntExManagerResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntExManagerResult.java index c9632a9..7146fea 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntExManagerResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntExManagerResult.java @@ -49,6 +49,8 @@ public class AntExManagerResult { private int tTimes; //预约产检日期 private String nextCheckTime; + //上次预约产检日期 + private String prevCheckTime; //预产期 private String dueDate; //产检医生 @@ -78,6 +80,14 @@ public class AntExManagerResult { //操作人id private String operaterUser; + public String getPrevCheckTime() { + return prevCheckTime; + } + + public void setPrevCheckTime(String prevCheckTime) { + this.prevCheckTime = prevCheckTime; + } + public String getOperaterUser() { return operaterUser; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/AntExRecordWorker.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/AntExRecordWorker.java index 0b90d17..7b389cf 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/AntExRecordWorker.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/AntExRecordWorker.java @@ -2,6 +2,7 @@ package com.lyms.platform.operate.web.worker; import com.lyms.platform.biz.service.*; import com.lyms.platform.common.enums.YnEnums; +import com.lyms.platform.common.utils.DateUtil; import com.lyms.platform.common.utils.ExceptionUtils; import com.lyms.platform.common.utils.StringUtils; import com.lyms.platform.operate.web.result.AntExManagerResult; @@ -15,12 +16,15 @@ import com.lyms.platform.pojo.AntExRecordModel; import com.lyms.platform.pojo.AntenatalExaminationModel; import com.lyms.platform.pojo.Patients; import com.lyms.platform.query.AntExRecordQuery; +import com.lyms.platform.query.PatientsQuery; import com.lyms.platform.query.SieveApplyOrderQuery; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.math.NumberUtils; +import org.springframework.data.domain.Sort; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.concurrent.Callable; @@ -186,6 +190,46 @@ public class AntExRecordWorker implements Callable> { antExManagerResult.setIsSieve(CollectionUtils.isEmpty(applyOrderService.querySieveApplyOrderWithQuery(applyOrderQuery)) ? "未做" : "已做"); } + //定制,滦平医院,限制只有他们医院的档案 + if("2100001377".equals(hospital) && StringUtils.isNotEmpty(e.getParentId())){ + AntExRecordQuery antExRecordQuery = new AntExRecordQuery(); + antExRecordQuery.setHospitalId(hospital); + antExRecordQuery.setParentId(e.getParentId()); + antExRecordQuery.setType(e.getType());//1 复诊 2 初诊 +// antExRecordQuery.setCreatedgte(e.getCreated()); + antExRecordQuery.setCreatedlte(e.getCreated()); + List antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.DESC, "created"); + if(CollectionUtils.isNotEmpty(antExRecordModelList)){ + Date prevCheckTime= null; + if(e.getType() == 1 ){ + if(antExRecordModelList.size() > 1){ + prevCheckTime = antExRecordModelList.get(1).getNextCheckTime(); + } + if(antExRecordModelList.size() == 1){ + antExRecordQuery.setType(2);//1 复诊 2 初诊 + antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.DESC, "created"); + if(CollectionUtils.isNotEmpty(antExRecordModelList)){ + prevCheckTime = antExRecordModelList.get(0).getNextCheckTime(); + } + + } + }else if(e.getType() == 2 ){ + //初诊获取建档的,下次预约。 + PatientsQuery patientsQuery = new PatientsQuery(); + patientsQuery.setYn(YnEnums.YES.getId()); + patientsQuery.setId(e.getParentId()); + patientsQuery.setHospitalId(hospital); + patientsQuery.setExtSource(false);//获取主档案 + List patientsList = patientsService.queryPatient(patientsQuery); + if(CollectionUtils.isNotEmpty(patientsList)){ + prevCheckTime = patientsList.get(0).getNextCheckTime(); + } + } + + antExManagerResult.setPrevCheckTime(prevCheckTime == null ? "" : DateUtil.getyyyy_MM_dd(prevCheckTime)); + } + } + data.add(antExManagerResult); } catch (Exception e1) { -- 1.8.3.1