diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownJobFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownJobFacade.java index 01134ad..082fb06 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownJobFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/TrackDownJobFacade.java @@ -145,25 +145,28 @@ public class TrackDownJobFacade { public void execute() { int page = 0; List data = null; - do { - PatientsQuery patientsQuery1 = new PatientsQuery(); - patientsQuery1.setYn(YnEnums.YES.getId()); - patientsQuery1.setSort("created asc"); - patientsQuery1.setNeed("1"); - patientsQuery1.setPage(page); - patientsQuery1.setLimit(limit); - patientsQuery1.setType(1); - - //查询妇女建档 - data = patientsService.queryPatient(patientsQuery1); - System.out.println("开始处理产检追访数据!一共" + patientsQuery1.getCount() + ",当前第:" + page + "页"); - if (CollectionUtils.isNotEmpty(data)) { - for (Patients model : data) { - handOneByOne(model); + try { + PatientsQuery patientsQuery1 = new PatientsQuery(); + patientsQuery1.setYn(YnEnums.YES.getId()); + patientsQuery1.setSort("created asc"); + patientsQuery1.setNeed("1"); + patientsQuery1.setPage(page); + patientsQuery1.setLimit(limit); + patientsQuery1.setType(1); + + //查询妇女建档 + data = patientsService.queryPatient(patientsQuery1); + System.out.println("开始处理产检追访数据!一共" + patientsQuery1.getCount() + ",当前第:" + page + "页"); + if (CollectionUtils.isNotEmpty(data)) { + for (Patients model : data) { + handOneByOne(model); + } } + page++; + }catch (Exception e){ + e.printStackTrace(); } - page++; } while (CollectionUtils.isNotEmpty(data) && data.size() == limit); System.out.println("处理产检追访数据结束!"); } @@ -172,33 +175,37 @@ public class TrackDownJobFacade { @Override public void handOneByOne(Patients model) { logger.info("CJTrackDownDataLoader addTrackDown by id :" + model.getId()); - //添加产检追访信息 - TrackDownRecord trackDownRecord = model.build(); - //根据patient查询是否存在追访信息 - TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); - downRecordQuery.setParentId(model.getId()); - List records = trackDownRecordService.queryTrackDown(downRecordQuery); - if (CollectionUtils.isNotEmpty(records)) {//存在则跳过 - return; - } else {//不存在则查询继续查追访记录,可能来至妇女建档追访数据 - downRecordQuery = new TrackDownRecordQuery(); - downRecordQuery.setHospitalId(model.getHospitalId()); - if (StringUtils.isNotEmpty(model.getCardNo())) { - downRecordQuery.setCardNo(model.getCardNo()); - } else if (StringUtils.isNotEmpty(model.getPhone())) { - downRecordQuery.setPhone(model.getPhone()); + try { + //添加产检追访信息 + TrackDownRecord trackDownRecord = model.build(); + //根据patient查询是否存在追访信息 + TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); + downRecordQuery.setParentId(model.getId()); + List records = trackDownRecordService.queryTrackDown(downRecordQuery); + if (CollectionUtils.isNotEmpty(records)) {//存在则跳过 + return; + } else {//不存在则查询继续查追访记录,可能来至妇女建档追访数据 + downRecordQuery = new TrackDownRecordQuery(); + downRecordQuery.setHospitalId(model.getHospitalId()); + if (StringUtils.isNotEmpty(model.getCardNo())) { + downRecordQuery.setCardNo(model.getCardNo()); + } else if (StringUtils.isNotEmpty(model.getPhone())) { + downRecordQuery.setPhone(model.getPhone()); + } + records = trackDownRecordService.queryTrackDown(downRecordQuery); + if (CollectionUtils.isNotEmpty(records)) { + TrackDownRecord trackDownRecord1 = records.get(0); + trackDownRecord.setId(trackDownRecord1.getId()); + } } - records = trackDownRecordService.queryTrackDown(downRecordQuery); - if (CollectionUtils.isNotEmpty(records)) { - TrackDownRecord trackDownRecord1 = records.get(0); - trackDownRecord.setId(trackDownRecord1.getId()); + int week = DateUtil.getWeek2(model.getLastMenses(), new Date()); + if (week > 20) {//不能做产前筛查追访,显示产前检查追访 + trackDownRecord.setTrackType(TrackDownDateEnums.I.getId()); } + trackDownService.addOrupdateTrackDownRecord(model.getOperator(), trackDownRecord); + }catch (Exception e){ + e.printStackTrace(); } - int week = DateUtil.getWeek2(model.getLastMenses(), new Date()); - if (week > 20) {//不能做产前筛查追访,显示产前检查追访 - trackDownRecord.setTrackType(TrackDownDateEnums.I.getId()); - } - trackDownService.addOrupdateTrackDownRecord(model.getOperator(), trackDownRecord); } } @@ -216,22 +223,26 @@ public class TrackDownJobFacade { List data = null; System.out.println("开始处理怀孕建档追访数据!"); do { - PremaritalCheckupQuery premaritalCheckupQuery = new PremaritalCheckupQuery(); - premaritalCheckupQuery.setYn(YnEnums.YES.getId()); - premaritalCheckupQuery.setSexType(1); - premaritalCheckupQuery.setSort("created asc"); - premaritalCheckupQuery.setNeed("1"); - premaritalCheckupQuery.setPage(page); - premaritalCheckupQuery.setLimit(limit); - data = premaritalCheckupService.queryPremaritalCheckup(premaritalCheckupQuery); - - //查询妇女建档 - if (CollectionUtils.isNotEmpty(data)) { - for (PremaritalCheckup model : data) { - handOneByOne(model); + try { + PremaritalCheckupQuery premaritalCheckupQuery = new PremaritalCheckupQuery(); + premaritalCheckupQuery.setYn(YnEnums.YES.getId()); + premaritalCheckupQuery.setSexType(1); + premaritalCheckupQuery.setSort("created asc"); + premaritalCheckupQuery.setNeed("1"); + premaritalCheckupQuery.setPage(page); + premaritalCheckupQuery.setLimit(limit); + data = premaritalCheckupService.queryPremaritalCheckup(premaritalCheckupQuery); + + //查询妇女建档 + if (CollectionUtils.isNotEmpty(data)) { + for (PremaritalCheckup model : data) { + handOneByOne(model); + } } + page++; + }catch (Exception e){ + e.printStackTrace(); } - page++; } while (CollectionUtils.isNotEmpty(data) && data.size() == limit); System.out.println("处理怀孕建档追访数据结束!"); } @@ -306,44 +317,52 @@ public class TrackDownJobFacade { List data = null; //处理女性档案 do { - ResidentsArchiveQuery archiveQuery = new ResidentsArchiveQuery(); - archiveQuery.setYn(YnEnums.YES.getId()); - archiveQuery.setSex("c23779f1-cb6e-44d0-9fc8-0a990bf6184c"); - archiveQuery.setSort("created asc"); - archiveQuery.setNeed("1"); - archiveQuery.setPage(page); - archiveQuery.setLimit(limit); - //查询妇女建档 - data = residentsArchiveService.queryResident(archiveQuery); - if (CollectionUtils.isNotEmpty(data)) { - for (ResidentsArchiveModel model : data) { - //单条数据处理 - handOneByOne(model); + try { + ResidentsArchiveQuery archiveQuery = new ResidentsArchiveQuery(); + archiveQuery.setYn(YnEnums.YES.getId()); + archiveQuery.setSex("c23779f1-cb6e-44d0-9fc8-0a990bf6184c"); + archiveQuery.setSort("created asc"); + archiveQuery.setNeed("1"); + archiveQuery.setPage(page); + archiveQuery.setLimit(limit); + //查询妇女建档 + data = residentsArchiveService.queryResident(archiveQuery); + if (CollectionUtils.isNotEmpty(data)) { + for (ResidentsArchiveModel model : data) { + //单条数据处理 + handOneByOne(model); + } } + page++; + }catch (Exception e){ + e.printStackTrace(); } - page++; } while (CollectionUtils.isNotEmpty(data) && data.size() == limit); //处理男性未婚档案 page = 1; do { - ResidentsArchiveQuery archiveQuery = new ResidentsArchiveQuery(); - archiveQuery.setYn(YnEnums.YES.getId()); - archiveQuery.setSort("created asc"); - archiveQuery.setMarriageId("d049eaaa-7265-4cdb-879f-992ab6320a3a"); - archiveQuery.setSex("5d0b782f-b61b-441b-b8c5-4bf55eece273"); - archiveQuery.setNeed("1"); - archiveQuery.setPage(page); - archiveQuery.setLimit(limit); - //查询妇女建档 - data = residentsArchiveService.queryResident(archiveQuery); - if (CollectionUtils.isNotEmpty(data)) { - for (ResidentsArchiveModel model : data) { - //单条数据处理 - handOneByOne(model); + try { + ResidentsArchiveQuery archiveQuery = new ResidentsArchiveQuery(); + archiveQuery.setYn(YnEnums.YES.getId()); + archiveQuery.setSort("created asc"); + archiveQuery.setMarriageId("d049eaaa-7265-4cdb-879f-992ab6320a3a"); + archiveQuery.setSex("5d0b782f-b61b-441b-b8c5-4bf55eece273"); + archiveQuery.setNeed("1"); + archiveQuery.setPage(page); + archiveQuery.setLimit(limit); + //查询妇女建档 + data = residentsArchiveService.queryResident(archiveQuery); + if (CollectionUtils.isNotEmpty(data)) { + for (ResidentsArchiveModel model : data) { + //单条数据处理 + handOneByOne(model); + } } + page++; + }catch (Exception e){ + e.printStackTrace(); } - page++; } while (CollectionUtils.isNotEmpty(data) && data.size() == limit); System.out.println("妇女档案生成追访数据完成!"); @@ -361,35 +380,38 @@ public class TrackDownJobFacade { // return; // } // } + try { + if (null != model && StringUtils.isNotEmpty(model.getId())) { + PremaritalCheckupQuery premaritalCheckupQuery = new PremaritalCheckupQuery(); + premaritalCheckupQuery.setYn(YnEnums.YES.getId()); + premaritalCheckupQuery.setParentId(model.getId()); + //查询居民婚检信息 + List premaritalCheckup = premaritalCheckupService.queryPremaritalCheckup(premaritalCheckupQuery); + //没有婚前检查,预备生成婚前检查追访 + if (CollectionUtils.isEmpty(premaritalCheckup)) { + //先根据医院id和证件号、手机号查询是否存在追访信息 + TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); + downRecordQuery.setHospitalId(model.getHospitalId()); + if (StringUtils.isNotEmpty(model.getCertificateNum())) { + downRecordQuery.setCardNo(model.getCertificateNum()); + } else if (StringUtils.isNotEmpty(model.getPhone())) { + downRecordQuery.setPhone(model.getPhone()); + } + List records = trackDownRecordService.queryTrackDown(downRecordQuery); + if (CollectionUtils.isNotEmpty(records)) {//存在追访信息 + return; + } - if (null != model && StringUtils.isNotEmpty(model.getId())) { - PremaritalCheckupQuery premaritalCheckupQuery = new PremaritalCheckupQuery(); - premaritalCheckupQuery.setYn(YnEnums.YES.getId()); - premaritalCheckupQuery.setParentId(model.getId()); - //查询居民婚检信息 - List premaritalCheckup = premaritalCheckupService.queryPremaritalCheckup(premaritalCheckupQuery); - //没有婚前检查,预备生成婚前检查追访 - if (CollectionUtils.isEmpty(premaritalCheckup)) { - //先根据医院id和证件号、手机号查询是否存在追访信息 - TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); - downRecordQuery.setHospitalId(model.getHospitalId()); - if (StringUtils.isNotEmpty(model.getCertificateNum())) { - downRecordQuery.setCardNo(model.getCertificateNum()); - } else if (StringUtils.isNotEmpty(model.getPhone())) { - downRecordQuery.setPhone(model.getPhone()); - } - List records = trackDownRecordService.queryTrackDown(downRecordQuery); - if (CollectionUtils.isNotEmpty(records)) {//存在追访信息 - return; - } - - TrackDownRecord record = model.build(); - if ("d75d1902-61a5-4a17-a68a-5b8a9826537b".equals(model.getMarriageId())) {//女已婚,直接进入孕妇建档追访 - record.setStatus(1); - record.setTrackType(TrackDownDateEnums.B.getId()); + TrackDownRecord record = model.build(); + if ("d75d1902-61a5-4a17-a68a-5b8a9826537b".equals(model.getMarriageId())) {//女已婚,直接进入孕妇建档追访 + record.setStatus(1); + record.setTrackType(TrackDownDateEnums.B.getId()); + } + downRecordService.addTrackDown(record); } - downRecordService.addTrackDown(record); } + }catch (Exception e){ + e.printStackTrace(); } } } @@ -408,66 +430,73 @@ public class TrackDownJobFacade { List data = null; do { logger.info("CHTrackDownDataLoader execute "); - //查询出满足预产期前两周的孕妇 - Date endDate = DateUtil.addDay(DateUtil.formatDate(new Date()), -60); - PatientsQuery patientsQuery = new PatientsQuery(); - patientsQuery.setFmDateStart(endDate); - patientsQuery.setFmDateEnd(new Date()); - patientsQuery.setPage(page); - patientsQuery.setLimit(limit); - patientsQuery.setYn(YnEnums.YES.getId()); - patientsQuery.setNeed("1"); - patientsQuery.setType(3); - - data = patientsService.queryPatient(patientsQuery); - System.out.println("开始产后访视/产后复查追访数据!一共" + patientsQuery.getCount() + ",当前第:" + page + "页"); - //查询妇女建档 - if (CollectionUtils.isNotEmpty(data)) { - for (Patients model : data) { - handOneByOne(model); - // if (model.getId().equals("5a98f71fc07d3a2c0da220f8")) { - // } + try { + //查询出满足预产期前两周的孕妇 + Date endDate = DateUtil.addDay(DateUtil.formatDate(new Date()), -60); + PatientsQuery patientsQuery = new PatientsQuery(); + patientsQuery.setFmDateStart(endDate); + patientsQuery.setFmDateEnd(new Date()); + patientsQuery.setPage(page); + patientsQuery.setLimit(limit); + patientsQuery.setYn(YnEnums.YES.getId()); + patientsQuery.setNeed("1"); + patientsQuery.setType(3); + + data = patientsService.queryPatient(patientsQuery); + System.out.println("开始产后访视/产后复查追访数据!一共" + patientsQuery.getCount() + ",当前第:" + page + "页"); + //查询妇女建档 + if (CollectionUtils.isNotEmpty(data)) { + for (Patients model : data) { + handOneByOne(model); + // if (model.getId().equals("5a98f71fc07d3a2c0da220f8")) { + // } + } } + page++; + }catch (Exception e){ + e.printStackTrace(); } - page++; } while (CollectionUtils.isNotEmpty(data) && data.size() == limit); System.out.println("产后访视/产后复查追访数据结束!"); } @Override public void handOneByOne(Patients patients) { + try { + //分娩日期不为空 + //分娩距当前时间天数 + int day = DateUtil.daysBetween(patients.getFmDate(), new Date()); + if (day <= 60) {//产后60天内,可做产后访视或产后复查环节 + if (null != patients) { + TrackDownRecord trackDownRecord = patients.build(); + trackDownRecord.setTrackType(TrackDownDateEnums.F.getId()); + if (patients.getDueStatus() == 1) {//终止妊娠 + //当前孕妇是孕28周后,进入产后复查追访,否则结束流程 + int dueWeek = DateUtil.getWeek2(patients.getLastMenses(), patients.getFmDate()); + if (dueWeek >= 28) {//进入产后复查 + trackDownRecord.setTrackType(TrackDownDateEnums.J.getId()); + } else {//结束流程 + trackDownRecord.setStatus(0); + } - //分娩日期不为空 - //分娩距当前时间天数 - int day = DateUtil.daysBetween(patients.getFmDate(), new Date()); - if (day <= 60) {//产后60天内,可做产后访视或产后复查环节 - if (null != patients) { - TrackDownRecord trackDownRecord = patients.build(); - trackDownRecord.setTrackType(TrackDownDateEnums.F.getId()); - if (patients.getDueStatus() == 1) {//终止妊娠 - //当前孕妇是孕28周后,进入产后复查追访,否则结束流程 - int dueWeek = DateUtil.getWeek2(patients.getLastMenses(), patients.getFmDate()); - if (dueWeek >= 28) {//进入产后复查 + } + //查询是否存在追访记录,如果有则修改,没有则新增 + TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); + downRecordQuery.setParentId(patients.getId()); + List records = downRecordService.queryTrackDown(downRecordQuery); + logger.info("CHTrackDownDataLoader addTrackDown by id :" + patients.getId()); + if (CollectionUtils.isNotEmpty(records)) { + TrackDownRecord track = records.get(0); + trackDownRecord.setId(track.getId()); + } + if (day > 42) {//不需要做产后访视追访记录,只做产后复查追访 trackDownRecord.setTrackType(TrackDownDateEnums.J.getId()); - } else {//结束流程 - trackDownRecord.setStatus(0); } - - } - //查询是否存在追访记录,如果有则修改,没有则新增 - TrackDownRecordQuery downRecordQuery = new TrackDownRecordQuery(); - downRecordQuery.setParentId(patients.getId()); - List records = downRecordService.queryTrackDown(downRecordQuery); - logger.info("CHTrackDownDataLoader addTrackDown by id :" + patients.getId()); - if (CollectionUtils.isNotEmpty(records)) { - TrackDownRecord track = records.get(0); - trackDownRecord.setId(track.getId()); - } - if (day > 42) {//不需要做产后访视追访记录,只做产后复查追访 - trackDownRecord.setTrackType(TrackDownDateEnums.J.getId()); + trackDownService.addOrupdateTrackDownRecord(patients.getOperator(), trackDownRecord); } - trackDownService.addOrupdateTrackDownRecord(patients.getOperator(), trackDownRecord); } + }catch (Exception e){ + e.printStackTrace(); } } }