diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java index 4276a6f..f3f72d3 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java @@ -1,8 +1,6 @@ package com.lyms.platform.operate.web.facade; -import com.lyms.platform.biz.service.AntExRecordService; -import com.lyms.platform.biz.service.BasicConfigService; -import com.lyms.platform.biz.service.PatientsService; +import com.lyms.platform.biz.service.*; import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.enums.RiskDefaultTypeEnum; import com.lyms.platform.common.enums.YnEnums; @@ -21,13 +19,17 @@ import com.lyms.platform.operate.web.result.HighScoreResult; import com.lyms.platform.permission.model.Users; import com.lyms.platform.permission.service.UsersService; import com.lyms.platform.pojo.AntExRecordModel; +import com.lyms.platform.pojo.AntenatalExaminationModel; import com.lyms.platform.pojo.BasicConfig; import com.lyms.platform.pojo.Patients; +import com.lyms.platform.query.AntExChuQuery; +import com.lyms.platform.query.AntExQuery; import com.lyms.platform.query.AntExRecordQuery; import com.lyms.platform.query.PatientsQuery; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.math.NumberUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Sort; import org.springframework.stereotype.Component; import java.util.*; @@ -49,6 +51,10 @@ public class AntExRecordFacade { private PatientsService patientsService; @Autowired private BasicConfigService basicConfigService; + @Autowired + private CommonService commonService; + @Autowired + private AntenatalExaminationService antExService; public void syncAntRecordToList(String hospitalId) { recordService.syncAntRecordToList(hospitalId); @@ -69,12 +75,65 @@ public class AntExRecordFacade { antExRecordQuery.setName(antExManagerQueryRequest.getName()); antExRecordQuery.setPhone(antExManagerQueryRequest.getPhone()); - List data =new ArrayList<>(); + List data = new ArrayList<>(); List antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery); if (CollectionUtils.isNotEmpty(antExRecordModelList)) { + AntExChuQuery antExChuQuery = new AntExChuQuery(); + AntExQuery antExQuery = new AntExQuery(); for (AntExRecordModel e : antExRecordModelList) { AntExManagerResult antExManagerResult = new AntExManagerResult(); antExManagerResult.convertToResult(e); + //登记人 + if (org.apache.commons.lang.StringUtils.isNotEmpty(e.getBuildDoctor())) { + if (NumberUtils.isNumber(e.getBuildDoctor())) { + Users users = usersService.getUsers(NumberUtils.toInt(e.getBuildDoctor())); + if (null != users) { + antExManagerResult.setlName(users.getName()); + } else { + antExManagerResult.setlName(e.getBuildDoctor()); + } + } else { + antExManagerResult.setlName(e.getBuildDoctor()); + } + } + //产检医生 + if (org.apache.commons.lang.StringUtils.isNotEmpty(e.getCheckDoctor())) { + if (NumberUtils.isNumber(e.getBuildDoctor())) { + Users users = usersService.getUsers(NumberUtils.toInt(e.getCheckDoctor())); + if (null != users) { + antExManagerResult.setCheckDoctor(users.getName()); + } else { + antExManagerResult.setCheckDoctor(e.getCheckDoctor()); + } + } else { + antExManagerResult.setCheckDoctor(e.getCheckDoctor()); + } + } + + antExQuery.setPid(e.getPid()); + antExQuery.setYn(YnEnums.YES.getId()); + antExQuery.setHospitalId(null); + antExChuQuery.setPid(e.getPid()); + antExChuQuery.setYn(YnEnums.YES.getId()); + antExChuQuery.setHospitalId(null); + + + int i = antExService.queryAntenatalExaminationCount(antExQuery.convertToQuery()); + antExChuQuery.setHospitalId(null); + int b = antExService.queryAntExChuCount(antExChuQuery.convertToQuery()); + antExQuery.setHospitalId(hospitalId); + //本院的复诊记录 + int chi = antExService.queryAntenatalExaminationCount(antExQuery.convertToQuery()); + antExChuQuery.setHospitalId(hospitalId); + //本院的初诊记录 + int chb = antExService.queryAntExChuCount(antExChuQuery.convertToQuery()); + antExManagerResult.settTimes(i + b); + antExManagerResult.setChTimes(chi + chb); + + //高危因素 + antExManagerResult.setrLevel(commonService.findRiskLevel(e.gethLevel())); + antExManagerResult.setRiskFactor(commonService.resloveFactor(e.gethRisk())); + data.add(antExManagerResult); } } 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 2c91f4c..e1c9fa1 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 @@ -2,16 +2,18 @@ package com.lyms.platform.operate.web.result; import com.lyms.platform.common.base.IBasicResultConvert; import com.lyms.platform.common.utils.DateUtil; +import com.lyms.platform.common.utils.StringUtils; import com.lyms.platform.pojo.AntExChuModel; import com.lyms.platform.pojo.AntExRecordModel; import com.lyms.platform.pojo.AntenatalExaminationModel; import com.lyms.platform.pojo.Patients; import java.util.List; +import java.util.Map; /** - * 产检管理列表 - * + * 产检管理列表 + *

* Created by Administrator on 2016/12/19 0019. */ public class AntExManagerResult { @@ -27,9 +29,10 @@ public class AntExManagerResult { private String age; //产检孕周 private String cDueWeek; - + //风险等级 + private List rLevel; //高危因素 - private List riskFactor; + private String riskFactor; //高危评分 private String riskScore; //本院产检次数 @@ -48,16 +51,28 @@ public class AntExManagerResult { //联系电话 private String phone; - public AntexListResult convertToResult(AntExRecordModel e) { + public List getrLevel() { + return rLevel; + } + + public void setrLevel(List rLevel) { + this.rLevel = rLevel; + } + + public AntExManagerResult convertToResult(AntExRecordModel e) { setParentId(e.getParentId()); setId(e.getId()); setCheckTime(DateUtil.getyyyy_MM_dd(e.getCheckTime())); setName(e.getName()); setAge(DateUtil.getAge(e.getBrith()) + ""); setPhone(e.getPhone()); - int days=DateUtil.getDays(e.getCheckTime(),e.getLastMenses()); -// setcDueWeek(e.getCheckTime()); - return null; + setBarCode(e.getBarCode()); + int days = DateUtil.getDays(e.getCheckTime(), e.getLastMenses()); + setcDueWeek(StringUtils.dueWeek(days)); + setDueDate(DateUtil.getyyyy_MM_dd(e.getDueDate())); + setRiskScore(e.gethScore() + ""); + setNextCheckTime(DateUtil.getyyyy_MM_dd(e.getNextCheckTime())); + return this; } public String getId() { @@ -116,11 +131,11 @@ public class AntExManagerResult { this.cDueWeek = cDueWeek; } - public List getRiskFactor() { + public String getRiskFactor() { return riskFactor; } - public void setRiskFactor(List riskFactor) { + public void setRiskFactor(String riskFactor) { this.riskFactor = riskFactor; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/WorkHR.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/WorkHR.java index 670b1f0..fbcf9a7 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/WorkHR.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/WorkHR.java @@ -216,10 +216,7 @@ public class WorkHR implements Callable> { riskPatientsResult.setServiceStatus(ServiceStatusEnums.getNameById(patients.getServiceStatus())); riskPatientsResult.setcTime(nextCheckTime); stopWatch.start("query findLastRisk"); - /*HighScoreResult highScoreResult = antenatalExaminationFacade.findLastRisk(patients.getPid(), true); - riskPatientsResult.setrFactor(highScoreResult.gethighRiskStr()); - riskPatientsResult.setrLevel(highScoreResult.filter(highScoreResult.getLevel())); - riskPatientsResult.sethScore(highScoreResult.getScore());*/ + //高危因素 List factor = patients.getRiskFactorId();