diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/MatDeliverController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/MatDeliverController.java index 08775ae..990f38d 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/MatDeliverController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/MatDeliverController.java @@ -734,7 +734,7 @@ public class MatDeliverController extends BaseController { } /** - * 科研导出 + * 秦皇岛-科研导出 * * @param httpServletRequest * @param childbirthManagerRequest diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java index 3b137bf..9c6c012 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/MatDeliverFacade.java @@ -3893,31 +3893,35 @@ public class MatDeliverFacade { } public ChildbirthManagerResult childbirthManager2(ChildbirthManagerRequest childbirthManagerRequest) { - ChildbirthManagerResult childbirthManagerResult = new ChildbirthManagerResult(); - PatientsQuery patientsQuery = new PatientsQuery(); + Date dateStart=null; + Date dateEnd=null; if (StringUtils.isNotEmpty(childbirthManagerRequest.getBirthDate())) { try { - patientsQuery.setFmDateStart(DateUtil.getSNDate(childbirthManagerRequest.getBirthDate())[0]); - patientsQuery.setFmDateEnd(DateUtil.getSNDate(childbirthManagerRequest.getBirthDate())[1]); + dateStart = DateUtil.getSNDate(childbirthManagerRequest.getBirthDate())[0]; + dateEnd = DateUtil.getSNDate(childbirthManagerRequest.getBirthDate())[1]; } catch (Exception e) { // 什么都不做,这里是数据传入错误了 } } + ChildbirthManagerResult childbirthManagerResult = new ChildbirthManagerResult(); String hid = autoMatchFacade.getHospitalId(childbirthManagerRequest.getOperatorId()); - patientsQuery.setYn(YnEnums.YES.getId()); - patientsQuery.setIsAutoFm(YnEnums.NO.getId()); - patientsQuery.setType(3); - // 构造医院id集合 - List hospitalList = new ArrayList <>(); - hospitalList.add(hid); - patientsQuery.setQueryNo(StringUtils.isEmpty(childbirthManagerRequest.getQueryNo()) ? null : childbirthManagerRequest.getQueryNo()); - patientsQuery.setFmHospitalList(hospitalList); - patientsQuery.setDesc("fmDate"); - patientsQuery.setSort("fmDate"); - //这里查询档案信息太费时。在没有这个筛选需求的时候不去查询 List parentIdList = new ArrayList<>(); - Map patientsMap = new HashedMap(); - if(StringUtils.isNotEmpty(patientsQuery.getQueryNo())) { + //这里查询档案信息太费时。在没有这个筛选需求的时候不去查询 + if(StringUtils.isNotEmpty(childbirthManagerRequest.getQueryNo())) { + PatientsQuery patientsQuery = new PatientsQuery(); + patientsQuery.setFmDateStart(dateStart); + patientsQuery.setFmDateEnd(dateEnd); + patientsQuery.setYn(YnEnums.YES.getId()); + patientsQuery.setIsAutoFm(YnEnums.NO.getId()); + patientsQuery.setType(3); + // 构造医院id集合 + List hospitalList = new ArrayList <>(); + hospitalList.add(hid); + patientsQuery.setQueryNo(childbirthManagerRequest.getQueryNo()); + patientsQuery.setFmHospitalList(hospitalList); + patientsQuery.setDesc("fmDate"); + patientsQuery.setSort("fmDate"); + List patientsList = patientsService.queryPatient(patientsQuery); if (CollectionUtils.isEmpty(patientsList)) { @@ -3926,32 +3930,28 @@ public class MatDeliverFacade { childbirthManagerResult.setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION); return childbirthManagerResult; } - for (Patients patients : patientsList) { - parentIdList.add(patients.getId()); - } //组装查询到的档案 for (Patients patients : patientsList) { - patientsMap.put(patients.getId(), patients); + parentIdList.add(patients.getId()); } } MatDeliverQuery matDeliverQuery = new MatDeliverQuery(); + //没有筛选档案信息系的情况只查分娩 if (CollectionUtils.isNotEmpty(parentIdList)) { matDeliverQuery.setParentIdList(parentIdList); }else { - if(null != patientsQuery.getFmDateStart() && null != patientsQuery.getFmDateEnd() ){ - matDeliverQuery.setCreatedStart(patientsQuery.getFmDateStart()); - matDeliverQuery.setEndStart(patientsQuery.getFmDateEnd()); - } -// matDeliverQuery.setHospitalId(hid); + matDeliverQuery.setCreatedStart(dateStart); + matDeliverQuery.setEndStart(dateEnd); + matDeliverQuery.setHospitalId(hid); } matDeliverQuery.setLimit(childbirthManagerRequest.getLimit()); matDeliverQuery.setYn(YnEnums.YES.getId()); - matDeliverQuery.setHloseBloodType(childbirthManagerRequest.getHloseBloodType()); String deliveryModeQueryJson = "fmfs\\\":\\\"" + childbirthManagerRequest.getDeliveryMode(); matDeliverQuery.setDeliveryModeQueryJson(StringUtils.isEmpty(childbirthManagerRequest.getDeliveryMode()) ? null : deliveryModeQueryJson); + List maternalDeliverModelList = matDeliverService.pageQuery(matDeliverQuery); - List date = new LinkedList<>(); + List data = new LinkedList<>(); int batchSize = 4; int end = 0; List listFuture = new ArrayList <>(); @@ -3962,7 +3962,7 @@ public class MatDeliverFacade { } List mlist = maternalDeliverModelList.subList(i, end); Callable c = new MaterDeliverWorker2(recordService, babyService,antExService, - mlist, patientsMap,mongoTemplate); + mlist,mongoTemplate); Future f = commonThreadPool.submit(c); if (f != null) { listFuture.add(f); @@ -3971,13 +3971,13 @@ public class MatDeliverFacade { if (CollectionUtils.isNotEmpty(listFuture)) { for (Future f : listFuture) { try { - date.addAll((List) f.get(30, TimeUnit.SECONDS)); + data.addAll((List) f.get(30, TimeUnit.SECONDS)); } catch (Exception e) { ExceptionUtils.catchException(e, "fm list error."); } } } - childbirthManagerResult.setData(date); + childbirthManagerResult.setData(data); childbirthManagerResult.setErrorcode(ErrorCodeConstants.SUCCESS); childbirthManagerResult.setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION); return childbirthManagerResult; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/MaterDeliverWorker2.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/MaterDeliverWorker2.java index 3064996..343879e 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/MaterDeliverWorker2.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/MaterDeliverWorker2.java @@ -36,14 +36,11 @@ public class MaterDeliverWorker2 implements Callable { private BabyService babyService; private AntenatalExaminationService antExService; private List maternalDeliverModelList; - private Map patientsMap; private MongoTemplate mongoTemplate; public MaterDeliverWorker2(AntExRecordService recordService, BabyService babyService, AntenatalExaminationService antExService, - List maternalDeliverModelList, Map patientsMap, - MongoTemplate mongoTemplate) { + List maternalDeliverModelList, MongoTemplate mongoTemplate) { this.maternalDeliverModelList = maternalDeliverModelList; - this.patientsMap = patientsMap; this.recordService=recordService; this.babyService = babyService; this.antExService = antExService; @@ -52,18 +49,13 @@ public class MaterDeliverWorker2 implements Callable { @Override public List call() throws Exception { - List date = new LinkedList<>(); + List data = new LinkedList<>(); try { for (MaternalDeliverModel maternalDeliverModel : maternalDeliverModelList) { Map initQueryMapqhdky = new LinkedHashMap<>(); - Patients patients =null; - if(MapUtils.isNotEmpty(patientsMap)){ - patients = patientsMap.get(maternalDeliverModel.getParentId()); - }else { - Criteria criteria= Criteria.where("id").is(maternalDeliverModel.getParentId()); - patients = mongoTemplate.findOne(Query.query(criteria), Patients.class); + Criteria criteria1= Criteria.where("id").is(maternalDeliverModel.getParentId()); + Patients patients = mongoTemplate.findOne(Query.query(criteria1), Patients.class); // System.out.println(Query.query(criteria).toString()+"--------------1"); - } if (null == patients) { continue; @@ -72,8 +64,8 @@ public class MaterDeliverWorker2 implements Callable { initQueryMapqhdky.put("birth", null!=patients.getBirth()?DateUtil.getyyyy_MM_dd(patients.getBirth()):""); initQueryMapqhdky.put("lastMens", null!=patients.getLastMenses()?DateUtil.getyyyy_MM_dd(patients.getLastMenses()):""); if(StringUtils.isNotEmpty(patients.getId())){ - Criteria criteria= Criteria.where("parentId").is(patients.getId()); - AntExChuModel exChuModel = mongoTemplate.findOne(Query.query(criteria), AntExChuModel.class); + Criteria criteria2= Criteria.where("parentId").is(patients.getId()); + AntExChuModel exChuModel = mongoTemplate.findOne(Query.query(criteria2), AntExChuModel.class); // System.out.println(Query.query(criteria).toString()+"--------------2"); if(null!=exChuModel){ initQueryMapqhdky.put("cc", null!=exChuModel.getProdTime()?0 == exChuModel.getProdTime()?"是":"否":""); @@ -119,13 +111,13 @@ public class MaterDeliverWorker2 implements Callable { AntExRecordModel antExRecordModel= antExRecordModels.get(0); if(null!=antExRecordModel){ if(2==antExRecordModel.getType()){ //初诊 - Criteria criteriaf= Criteria.where("id").is(antExRecordModel.getfId()); - AntExChuModel AntExChu = mongoTemplate.findOne(Query.query(criteriaf), AntExChuModel.class); + Criteria criteria4= Criteria.where("id").is(antExRecordModel.getfId()); + AntExChuModel AntExChu = mongoTemplate.findOne(Query.query(criteria4), AntExChuModel.class); // System.out.println(Query.query(criteriaf).toString()+"--------------4"); initQueryMapqhdky.put("mweight", null!=AntExChu.getWeight()?AntExChu.getWeight().toString():""); }else { //复诊 - Criteria criteriaf= Criteria.where("id").is(antExRecordModel.getfId()); - AntenatalExaminationModel AntExFu = mongoTemplate.findOne(Query.query(criteriaf), AntenatalExaminationModel.class); + Criteria criteria5= Criteria.where("id").is(antExRecordModel.getfId()); + AntenatalExaminationModel AntExFu = mongoTemplate.findOne(Query.query(criteria5), AntenatalExaminationModel.class); // System.out.println(Query.query(criteriaf).toString()+"--------------5"); initQueryMapqhdky.put("mweight", null!=AntExFu.getWeight()?AntExFu.getWeight().toString():""); } @@ -147,13 +139,13 @@ public class MaterDeliverWorker2 implements Callable { AntExRecordModel antExRecordModel= antExRecordModels2.get(0); if(null!=antExRecordModel){ if(2==antExRecordModel.getType()){ //初诊 - Criteria criteriaf= Criteria.where("id").is(antExRecordModel.getfId()); - AntExChuModel AntExChu = mongoTemplate.findOne(Query.query(criteriaf), AntExChuModel.class); + Criteria criteria7= Criteria.where("id").is(antExRecordModel.getfId()); + AntExChuModel AntExChu = mongoTemplate.findOne(Query.query(criteria7), AntExChuModel.class); // System.out.println(Query.query(criteriaf).toString()+"--------------7"); initQueryMapqhdky.put("cweight", null!=AntExChu?null!=AntExChu.getWeight()?AntExChu.getWeight().toString():"":""); }else { //复诊 - Criteria criteriaf= Criteria.where("id").is(antExRecordModel.getfId()); - AntenatalExaminationModel AntExFu = mongoTemplate.findOne(Query.query(criteriaf), AntenatalExaminationModel.class); + Criteria criteria8= Criteria.where("id").is(antExRecordModel.getfId()); + AntenatalExaminationModel AntExFu = mongoTemplate.findOne(Query.query(criteria8), AntenatalExaminationModel.class); // System.out.println(Query.query(criteriaf).toString()+"--------------8"); initQueryMapqhdky.put("cweight", null!=AntExFu?null!=AntExFu.getWeight()?AntExFu.getWeight().toString():"":""); } @@ -243,8 +235,8 @@ public class MaterDeliverWorker2 implements Callable { // System.out.println(antExRecordQuery3.convertToQuery().convertToMongoQuery().toString()+"--------------9"); if(CollectionUtils.isNotEmpty(antExRecordModels3)) { AntExRecordModel antExRecordModel = antExRecordModels3.get(0); - Criteria criteriaf= Criteria.where("id").is(antExRecordModel.getfId()); - AntenatalExaminationModel AntExFu = mongoTemplate.findOne(Query.query(criteriaf), AntenatalExaminationModel.class); + Criteria criteria3= Criteria.where("id").is(antExRecordModel.getfId()); + AntenatalExaminationModel AntExFu = mongoTemplate.findOne(Query.query(criteria3), AntenatalExaminationModel.class); // System.out.println(Query.query(criteriaf).toString()+"--------------10"); if(null!=AntExFu){ initQueryMapqhdky.put("bloodSugarKf", StringUtils.isNotEmpty(AntExFu.getBloodSugarKf())?AntExFu.getBloodSugarKf():""); @@ -344,12 +336,12 @@ public class MaterDeliverWorker2 implements Callable { initQueryMapqhdky.put("xsext", ""); initQueryMapqhdky.put("apgarScore", ""); } - date.add(initQueryMapqhdky); + data.add(initQueryMapqhdky); } }catch (Exception e) { e.printStackTrace(); } - return date; + return data; } }