diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java index 769c166..6eed4fb 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/PatientsService.java @@ -131,7 +131,7 @@ public class PatientsService { patientsQuery.mysqlBuild(iPatientDao.queryPatientCount(query)); query.start(patientsQuery.getOffset()).end(patientsQuery.getLimit()); } - System.out.println(query.convertToMongoQuery()); + //System.out.println(query.convertToMongoQuery()); return iPatientDao.queryPatient(query.addOrder(Sort.Direction.fromString(sort), field)); } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/AntExChuModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/AntExChuModel.java index f1ad3e2..8c50724 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/AntExChuModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/AntExChuModel.java @@ -544,6 +544,34 @@ public class AntExChuModel extends BaseModel { private Integer fuzhurenshen;//是否辅助妊娠 1是 0否 private String fuzhufangshi;//辅助方式 + private String other;//高危手册初诊其他 + private String symptoms;//高危手册症状与体征 + private String otherCheck;//高危手册其他检查项 + + public String getOther() { + return other; + } + + public void setOther(String other) { + this.other = other; + } + + public String getSymptoms() { + return symptoms; + } + + public void setSymptoms(String symptoms) { + this.symptoms = symptoms; + } + + public String getOtherCheck() { + return otherCheck; + } + + public void setOtherCheck(String otherCheck) { + this.otherCheck = otherCheck; + } + public String getYongyaoshi() { return yongyaoshi; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/AntenatalExaminationModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/AntenatalExaminationModel.java index c6ecabb..484ec8e 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/AntenatalExaminationModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/AntenatalExaminationModel.java @@ -421,6 +421,38 @@ public class AntenatalExaminationModel extends BaseModel { //本次随访日期 private String followupDate; + + + //大同高危手册 + private String other;//高危手册初诊其他 + private String symptoms;//高危手册症状与体征 + private String otherCheck;//高危手册其他检查项 + + public String getOther() { + return other; + } + + public void setOther(String other) { + this.other = other; + } + + public String getSymptoms() { + return symptoms; + } + + public void setSymptoms(String symptoms) { + this.symptoms = symptoms; + } + + public String getOtherCheck() { + return otherCheck; + } + + public void setOtherCheck(String otherCheck) { + this.otherCheck = otherCheck; + } + + public Integer getIsAppCreate() { return isAppCreate; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/MaternalDeliverModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/MaternalDeliverModel.java index c2179b0..a96d394 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/MaternalDeliverModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/MaternalDeliverModel.java @@ -236,6 +236,52 @@ public class MaternalDeliverModel extends BaseModel { */ private String cfyc; + //大同高危手册 + private String currentCondition;//本次孕期情况 + private String pelvicCondition;//骨盆情况 + private String babySize;//估计胎儿大小 + private String dtDiagnosis;//门诊诊断 + private String advice;//医生意见 + + public String getCurrentCondition() { + return currentCondition; + } + + public void setCurrentCondition(String currentCondition) { + this.currentCondition = currentCondition; + } + + public String getPelvicCondition() { + return pelvicCondition; + } + + public void setPelvicCondition(String pelvicCondition) { + this.pelvicCondition = pelvicCondition; + } + + public String getBabySize() { + return babySize; + } + + public void setBabySize(String babySize) { + this.babySize = babySize; + } + + public String getDtDiagnosis() { + return dtDiagnosis; + } + + public void setDtDiagnosis(String dtDiagnosis) { + this.dtDiagnosis = dtDiagnosis; + } + + public String getAdvice() { + return advice; + } + + public void setAdvice(String advice) { + this.advice = advice; + } public String getFmddlb() { return fmddlb; diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/dtdyrm/DtdyrmFmService.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/dtdyrm/DtdyrmFmService.java index 1b3951c..56482cc 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/dtdyrm/DtdyrmFmService.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/dtdyrm/DtdyrmFmService.java @@ -137,13 +137,15 @@ public class DtdyrmFmService implements IdtdyrmFmService { PersonModel resperson = personService.addPerson(pmodel); patient=new Patients(); + patient.setIsAutoFm(0); patient.setHospitalId(HOSPITALID); patient.setFmHospital(HOSPITALID); patient.setFmDate(new Date()); patient.setCardNo(allFm.getIdcard()); patient.setYn(1); patient.setType(3); - patient.setBookbuildingDate(new Date()); + patient.setBuildType(2); + //patient.setBookbuildingDate(new Date()); //patient.setBookbuildingDoctor(); patient.setUsername(allFm.getName()); patient.setPhone(allFm.getPhone()); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java index d9ff477..7385351 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java @@ -579,7 +579,7 @@ public class PatientFacade extends BaseServiceImpl { //根据疾病进行查询 - if (StringUtils.isNotEmpty(riskPatientsQueryRequest.getDiseaseType())) { + if (!"2100002419".equals(hospital)&&StringUtils.isNotEmpty(riskPatientsQueryRequest.getDiseaseType())) { MongoCondition criteria = new MongoCondition("hospitalId", hospital, MongoOper.IS); List mongoCondits = new ArrayList <>(); @@ -1716,6 +1716,29 @@ public class PatientFacade extends BaseServiceImpl { return new BaseListResponse().setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS).setData(data).setPageInfo(patientsQuery.getPageInfo()); } + private List convertToRhRareList(RiskPatientsQueryRequest riskPatientsQueryRequest, List patientses, Integer userId, String hospital){ + List data = new ArrayList <>(); + int batchSize = 4; + int end = 0; + List listFuture = new ArrayList <>(); + for (int i = 0; i < patientses.size(); i += batchSize) { + end = (end + batchSize); + if (end > patientses.size()) { + end = patientses.size(); + } + listFuture.add(commonThreadPool.submit(new RHWorker(riskPatientsQueryRequest, patientses.subList(i, end), usersService, hospital, antExService, basicConfigService, patientsService, organizationService))); + } + for (Future f : listFuture) { + try { + data.addAll((List) f.get(30, TimeUnit.SECONDS)); + } catch (Exception e) { + ExceptionUtils.catchException(e, "convertToQuanPatient get result Future error."); + } + } + return data; + } + + private List convertToOldPatient(RiskPatientsQueryRequest riskPatientsQueryRequest, List patientses, Integer userId, String hospital) { List data = new ArrayList <>(); int batchSize = 4; @@ -1933,11 +1956,36 @@ public class PatientFacade extends BaseServiceImpl { }*/ //组合请求 PatientsQuery patientsQuery = complayRequest(riskPatientsQueryRequest, isHighRisk, type, userId, needPage, isRegion); - patientsQuery.setRareType("1"); //查询符合条件的孕妇 StopWatch stopWatch = new StopWatch("queryPatient1 -" + hospital); stopWatch.start(); + if ("2100002419".equals(hospital)){ + Query yn = null; + String diseaseType=riskPatientsQueryRequest.getDiseaseType(); + if ("1,".equals(diseaseType)) { + Criteria criteria1 = Criteria.where("name").is("RH(-)"); + yn = Query.query(Criteria.where("yn").is(1).orOperator(criteria1)); + }else if ("2,".equals(diseaseType)){ + Criteria criteria1 = Criteria.where("name").is("Rh血型不合"); + yn = Query.query(Criteria.where("yn").is(1).orOperator(criteria1)); + + }else { + Criteria criteria1 = Criteria.where("name").is("RH(-)"); + Criteria criteria2 = Criteria.where("name").is("Rh血型不合"); + yn = Query.query(Criteria.where("yn").is(1).orOperator(criteria1, criteria2)); + } + List models = mongoTemplate.find(yn, BasicConfig.class); + List rFactorList = new ArrayList <>(); + if (models != null && models.size() > 0) { + for (int i = 0; i < models.size(); i++) { + rFactorList.add(models.get(i).getId()); + } + } + patientsQuery.setrFactorList(rFactorList); + }else { + patientsQuery.setRareType("1"); + } List patientses = patientsService.queryPatientBySort(patientsQuery, riskPatientsQueryRequest.getSort(), riskPatientsQueryRequest.getOrder()); stopWatch.stop(); @@ -1945,9 +1993,13 @@ public class PatientFacade extends BaseServiceImpl { List data = new ArrayList (); if (CollectionUtils.isNotEmpty(patientses)) { if (type == 1) { - //处理全部孕妇的情况 - data = convertToRareList(riskPatientsQueryRequest, patientses, userId, hospital); - + if ("2100002419".equals(hospital)){ + //大同做特殊处理查询RH(-)\Rh血型不合的高危因素 + data= convertToRhRareList(riskPatientsQueryRequest, patientses, userId, hospital); + }else { + //处理全部孕妇的情况 + data = convertToRareList(riskPatientsQueryRequest, patientses, userId, hospital); + } } } // patientsQuery.mysqlBuild(data.size()); @@ -3237,6 +3289,7 @@ public class PatientFacade extends BaseServiceImpl { patientsQuery.setDueStatus(null==patientManagerRequest.getDueStatus() ? null : patientManagerRequest.getDueStatus()); patientsQuery.setType(patientManagerRequest.getType()); patientsQuery.setHighRiskFileCode(patientManagerRequest.getHighRiskFileCode()); + System.out.println(patientsQuery.convertToQuery().convertToMongoQuery().toString()); List patientsList = patientsService.queryPatient(patientsQuery); List patientManagerQueryModelList = new ArrayList <>(); if (CollectionUtils.isNotEmpty(patientsList)) { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java index b3d3c35..6084914 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java @@ -436,6 +436,35 @@ public class AntExAddRequest implements IBasicRequestConvert { private Integer fuzhurenshen;//是否辅助妊娠 1是 0否 private String fuzhufangshi;//辅助方式 + private String other;//高危手册初诊其他 + private String symptoms;//高危手册症状与体征 + private String otherCheck;//高危手册其他检查项 + + public String getOther() { + return other; + } + + public void setOther(String other) { + this.other = other; + } + + public String getSymptoms() { + return symptoms; + } + + public void setSymptoms(String symptoms) { + this.symptoms = symptoms; + } + + public String getOtherCheck() { + return otherCheck; + } + + public void setOtherCheck(String otherCheck) { + this.otherCheck = otherCheck; + } + public Integer getDoctorType() { return doctorType; } @@ -2723,6 +2751,9 @@ public class AntExcAddRequest implements IBasicRequestConvert { antExChuModel.setFollowupDoctorName(followupDoctorName); antExChuModel.setName(name); antExChuModel.setFollowupDate(followupDate); + antExChuModel.setOther(other); + antExChuModel.setSymptoms(symptoms); + antExChuModel.setOtherCheck(otherCheck); return antExChuModel; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/MatDeliverAddRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/MatDeliverAddRequest.java index 819526f..66c8d0f 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/MatDeliverAddRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/MatDeliverAddRequest.java @@ -126,6 +126,57 @@ public class MatDeliverAddRequest implements IBasicRequestConvert jmxspg; private Integer jmxsScore; private Integer jmxsLevel; + + + + //大同高危手册 + private String other;//高危手册初诊其他 + private String symptoms;//高危手册症状与体征 + private String otherCheck;//高危手册其他检查项 + + public String getOther() { + return other; + } + + public void setOther(String other) { + this.other = other; + } + + public String getSymptoms() { + return symptoms; + } + + public void setSymptoms(String symptoms) { + this.symptoms = symptoms; + } + + public String getOtherCheck() { + return otherCheck; + } + + public void setOtherCheck(String otherCheck) { + this.otherCheck = otherCheck; + } + + public Integer getProductionSieveType() { return productionSieveType; } @@ -1463,6 +1496,9 @@ public class AntenatalExaminationResult implements IBasicResultConvert> { + private static final Logger logger = LoggerFactory.getLogger(PatientFacade.class); + + private List patientses; + + private String hospital; + private UsersService usersService; + private AntenatalExaminationService antExService; + private BasicConfigService basicConfigService; + private PatientsService patientsService; + private OrganizationService organizationService; + private RiskPatientsQueryRequest riskPatientsQueryRequest; + + public RHWorker(RiskPatientsQueryRequest riskPatientsQueryRequest, + List patientses, + UsersService usersService, + String hospital, + AntenatalExaminationService antExService, + BasicConfigService basicConfigService, PatientsService patientsService, OrganizationService organizationService) { + this.riskPatientsQueryRequest = riskPatientsQueryRequest; + this.patientses = patientses; + this.usersService = usersService; + this.antExService = antExService; + this.hospital = hospital; + this.basicConfigService = basicConfigService; + this.patientsService = patientsService; + this.organizationService = organizationService; + } + + @Override + public List call() throws Exception { + List data = new ArrayList<>(); + AntExQuery antExQuery = new AntExQuery(); + antExQuery.setYn(YnEnums.YES.getId()); + AntExChuQuery antExChuQuery1 = new AntExChuQuery(); + + antExChuQuery1.setYn(YnEnums.YES.getId()); + String twinsType = riskPatientsQueryRequest.getDiseaseType(); + + for (Patients patients : patientses) { + + StopWatch stopWatch = new StopWatch("RHWorker -" + patients.getId()); + TwinsPatientsResult twinsPatientsResult = new TwinsPatientsResult(); + twinsPatientsResult.setYi("-"); + twinsPatientsResult.setEr("-"); + twinsPatientsResult.setSan("-"); + twinsPatientsResult.setSi("-"); + twinsPatientsResult.setWu("-"); + twinsPatientsResult.convertToResult(patients); + antExQuery.setPid(patients.getPid()); + //增加查询本次产程条数 + antExQuery.setStart(patients.getLastMenses()); + if (StringUtils.isNotEmpty(patients.getBookbuildingDoctor())) { + if (NumberUtils.isNumber(patients.getBookbuildingDoctor())) { + Users users = usersService.getUsers(NumberUtils.toInt(patients.getBookbuildingDoctor())); + if (null != users) { + twinsPatientsResult.setlName(users.getName()); + } else { + twinsPatientsResult.setlName(patients.getBookbuildingDoctor()); + } + } else { + twinsPatientsResult.setlName(patients.getBookbuildingDoctor()); + } + } + //筛查结果 + String screenStr = basicConfigService.getScreenResult(patients.getScreenResult()); + twinsPatientsResult.setScreenResult(screenStr); + twinsPatientsResult.setbTime(DateUtil.getyyyy_MM_dd(patients.getBookbuildingDate())); + stopWatch.start("query ant count"); + antExChuQuery1.setPid(patients.getPid()); + //antExChuQuery1.setParentId(patients.getId()); + //增加查询本次产程条数 + antExChuQuery1.setStart(patients.getLastMenses()); + List chu = antExService.queryAntExChu(antExChuQuery1.convertToQuery()); + //复诊次数 + List ant = null; + if (CollectionUtils.isNotEmpty(chu)) { + for (AntExChuModel a : chu) {//唐山滦县导出判断初诊是否是本院 + if (StringUtils.isNotEmpty(a.getHospitalId())) { + if (a.getHospitalId().equals(hospital)) { + twinsPatientsResult.setYi("本院"); + } else { + twinsPatientsResult.setYi("外院"); + } + break; + } + } + ant = antExService.queryAntenatalExamination(antExQuery.convertToQuery()); + } + + //唐山滦县判断复诊是否是本院 + if (CollectionUtils.isNotEmpty(ant)) { + for (int k = 0; k < ant.size(); k++) { + if (k >= 4) { + break; + } + if (0 == k) { + if (ant.get(k).getHospitalId().equals(hospital)) { + twinsPatientsResult.setEr("本院"); + } else { + twinsPatientsResult.setEr("外院"); + } + } else if (1 == k) { + if (ant.get(k).getHospitalId().equals(hospital)) { + twinsPatientsResult.setSan("本院"); + } else { + twinsPatientsResult.setSan("外院"); + } + } else if (2 == k) { + if (ant.get(k).getHospitalId().equals(hospital)) { + twinsPatientsResult.setSi("本院"); + } else { + twinsPatientsResult.setSi("外院"); + } + } else if (3 == k) { + if (ant.get(k).getHospitalId().equals(hospital)) { + twinsPatientsResult.setWu("本院"); + } else { + twinsPatientsResult.setWu("外院"); + } + } + } + } + + //系统初诊次数 + int ichu = CollectionUtils.isEmpty(chu) ? 0 : chu.size(); + + //系统复诊次数 + int i = 0; + if (CollectionUtils.isNotEmpty(ant)) { + //复诊次数 + i = ant.size(); + sort(ant); + for (AntenatalExaminationModel a : ant) { + try { + if (StringUtils.isNotEmpty(a.getHospitalId())) { + Organization og = organizationService.getOrganization(Integer.valueOf(a.getHospitalId())); + if (null != og) { + twinsPatientsResult.setCurrentCh(og.getName()); + break; + } + } + } catch (Exception e) { + twinsPatientsResult.setCurrentCh(""); + } + } + } else { + for (AntExChuModel a : chu) { + try { + if (StringUtils.isNotEmpty(a.getHospitalId())) { + Organization og = organizationService.getOrganization(Integer.valueOf(a.getHospitalId())); + if (null != og) { + twinsPatientsResult.setCurrentCh(og.getName()); + break; + } + } + } catch (Exception e) { + twinsPatientsResult.setCurrentCh(""); + } + } + } + + twinsPatientsResult.setcTimes(i + ichu); + + + antExQuery.setHospitalId(hospital); + //本院初诊 + int chi = countAntChu(chu, hospital); + + //本院复诊 + int chb = capLocalHospital(hospital, ant); + twinsPatientsResult.setcHTimes(chi + chb); + stopWatch.stop(); + String nextCheckTime = ""; + stopWatch.start("query antex list"); + + + if (null != patients.getNextCheckTime()) { + nextCheckTime = DateUtil.getyyyy_MM_dd(patients.getNextCheckTime()); + } + + if (StringUtils.isNotEmpty(patients.getLastCheckEmployeeId())) { + if (NumberUtils.isNumber(patients.getLastCheckEmployeeId())) { + Users users = usersService.getUsers(NumberUtils.toInt(patients.getLastCheckEmployeeId())); + if (null != users) { + twinsPatientsResult.setCheckDoctor(users.getName()); + } else { + twinsPatientsResult.setCheckDoctor(patients.getLastCheckEmployeeId()); + } + } else { + twinsPatientsResult.setCheckDoctor(patients.getLastCheckEmployeeId()); + } + } + + + stopWatch.stop(); + stopWatch.start("query basicconfig"); + //注册地址 + twinsPatientsResult.setRegisterAddr(CommonsHelper.getResidence(patients.getProvinceId(), patients.getCityId(), patients.getAreaId(), patients.getStreetId(), patients.getAddress(), basicConfigService)); + twinsPatientsResult.setAddr(CommonsHelper.getResidence(patients.getProvinceRegisterId(), patients.getCityRegisterId(), patients.getAreaRegisterId(), patients.getStreetRegisterId(), patients.getAddressRegister(), basicConfigService)); + try { + twinsPatientsResult.setFirstBH(organizationService.getOrganization(Integer.valueOf(patients.getHospitalId())).getName()); + } catch (Exception e) { + twinsPatientsResult.setFirstBH(""); + } + + twinsPatientsResult.setServiceType(ServiceTypeEnums.getTitleById(patients.getServiceType())); + twinsPatientsResult.setServiceStatus(ServiceStatusEnums.getNameById(patients.getServiceStatus())); + //修改获取建档里面的高危等级不用在重新去算 +// HighScoreResult highScoreResult = antenatalExaminationFacade.findLastRisk(patients.getPid(), true); +// twinsPatientsResult.setrLevel(highScoreResult.filter(highScoreResult.getLevel())); + twinsPatientsResult.setcTime(nextCheckTime); + + + //高危因素 + List factor = patients.getRiskFactorId(); + + if (CollectionUtils.isNotEmpty(factor)) { + StringBuilder sb = new StringBuilder(56); + for (String srt : factor) { + if (StringUtils.isNotEmpty(srt)) { + BasicConfig basicConfig = basicConfigService.getOneBasicConfigById(srt); + if (null != basicConfig && sb.indexOf(basicConfig.getName()) == -1) { + if(basicConfig.getName().contains("RH(-)") || + basicConfig.getName().contains("Rh血型不合")){ + sb.append(basicConfig.getName()).append(','); + } + } + } + } + if (sb.toString().endsWith(",")) { + twinsPatientsResult.setrFactor(sb.substring(0, sb.length() - 1)); + } else { + twinsPatientsResult.setrFactor(sb.toString()); + } + + /* if (!"-".equals(twinsPatientsResult.getrFactor()) && StringUtils.isNotEmpty(patients.getoRiskFactor())) { + twinsPatientsResult.setrFactor(twinsPatientsResult.getrFactor() + "," + patients.getoRiskFactor()); + } else if (StringUtils.isNotEmpty(patients.getoRiskFactor())) { + twinsPatientsResult.setrFactor(patients.getoRiskFactor()); + }*/ + } else if (StringUtils.isNotEmpty(patients.getoRiskFactor())) { + twinsPatientsResult.setrFactor(patients.getoRiskFactor()); + } + List level = new ArrayList(); + if (StringUtils.isNotEmpty(patients.getRiskLevelId())) { + try { + List list = JsonUtil.jkstr2Obj(patients.getRiskLevelId(), List.class); + for (String str : list) { + BasicConfig basicConfig = basicConfigService.getOneBasicConfigById(str); + if (null != basicConfig) { + Map map = new HashMap(); + basicConfig.replenRisk(map); + // String name = basicConfig.getName(); + // if (name.indexOf("预警") > -1) { + // name = name.replace("预警", ""); + // } + // map.put("name", name); + // map.put("color", "risk_" + RiskDefaultTypeEnum.getColor(name)); + level.add(map); + } + } + } catch (Exception e) { + ExceptionUtils.catchException(e, "patients.getRiskLevelId error."); + } + + twinsPatientsResult.setrLevel(HighScoreResult.filter(level)); + } + twinsPatientsResult.setCardNo(patients.getCardNo()); + twinsPatientsResult.setPcerteTypeId(patients.getPcerteTypeId()); + stopWatch.stop(); + if (twinsPatientsResult.getrFactor() != null) { + + if ("1,".equals(twinsType)) { + if (twinsPatientsResult.getrFactor().contains("RH(-)")) { + data.add(twinsPatientsResult); + } + + } else if ("2,".equals(twinsType)) { + if (twinsPatientsResult.getrFactor().contains("Rh血型不合")) { + data.add(twinsPatientsResult); + } + }else { + if (twinsPatientsResult.getrFactor().contains("RH(-)")||twinsPatientsResult.getrFactor().contains("Rh血型不合")) { + data.add(twinsPatientsResult); + } + } + } + logger.debug(stopWatch.toString()); + } + return data; + } + + private int capLocalHospital(String hospitalId, List list) { + if (CollectionUtils.isEmpty(list)) { + return 0; + } + int count = 0; + for (AntenatalExaminationModel model : list) { + if (model.getHospitalId().equals(hospitalId)) { + count++; + } + } + return count; + } + + //统计复查里面的本院检查数 + private int countAntChu(List list, String hospital) { + int count = 0; + if (CollectionUtils.isEmpty(list) || StringUtils.isEmpty(hospital)) { + return count; + } + for (AntExChuModel model : list) { + if (hospital.equals(model.getHospitalId())) { + count++; + } + } + return count; + } + + private void sort(List list) { + if (CollectionUtils.isEmpty(list)) { + return; + } + Collections.sort(list, new Comparator() { + @Override + public int compare(AntenatalExaminationModel o1, AntenatalExaminationModel o2) { + if (o1.getCreated().getTime() > o2.getCreated().getTime()) { + return 1; + } else if (o1.getCreated().getTime() < o2.getCreated().getTime()) { + return -1; + } + return 0; + } + }); + } +}