Commit a3b677063877314d0116f8a1739a8269702971eb

Authored by liquanyu
1 parent fe961f81d9

update

Showing 1 changed file with 59 additions and 5 deletions

platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TrackDownServiceImpl.java View file @ a3b6770
... ... @@ -46,6 +46,9 @@
46 46 private AntExRecordService recordService;
47 47  
48 48 @Autowired
  49 + private AntenatalExaminationService antenatalExaminationService;
  50 +
  51 + @Autowired
49 52 private SieveService sieveService;
50 53 @Autowired
51 54 private PostReviewService postReviewService;
... ... @@ -885,6 +888,11 @@
885 888 } else if (3 == trackDown.getTrackDownTransfer()) {
886 889 patients.setStop("1");
887 890 }
  891 + //预约时间冗余到下次产检时间
  892 + if (trackDown.getTrackDownDateType() == TrackDownDateEnums.C.getId())
  893 + {
  894 + patients.setNextCheckTime(trackDown.getReservatDate());
  895 + }
888 896 patientsService.updatePatientOne(patients, trackDownRecord.getParentId());
889 897 }
890 898 //获取妇女建党id
... ... @@ -918,6 +926,13 @@
918 926 trackDownRecord1.setStop("1");
919 927 }
920 928 }
  929 +
  930 + //预约时间冗余到下次产检时间
  931 + if (trackDown.getTrackDownDateType() == TrackDownDateEnums.C.getId())
  932 + {
  933 + trackDownRecord1.setNextCheckTime(trackDown.getReservatDate());
  934 + }
  935 +
921 936 //冗余产筛 预约追访时间
922 937 if (trackDown.getTrackDownDateType() == 4) {
923 938 if (trackDown.getReservatDate() != null) {
... ... @@ -950,7 +965,7 @@
950 965 trackDownService.add(trackDown);
951 966 String recordId = trackDown.getTrackDownRecId();
952 967 updateRecordStatus(trackDown, recordId);
953   - updateTrackCount(trackDown.getParentId());
  968 + updateTrackCount(trackDown);
954 969 return RespBuilder.buildSuccess(trackDown.getId());
955 970 }
956 971 /**
957 972  
958 973  
... ... @@ -974,12 +989,12 @@
974 989  
975 990  
976 991 /**
977   - * 追访统计
978   - * @param patientId
  992 + * 追访统计 和更新产检的最后一次产检的预约时间
  993 + * @param trackDown
979 994 */
980   - private void updateTrackCount(String patientId)
  995 + private void updateTrackCount(TrackDown trackDown)
981 996 {
982   - Patients patients = patientsService.findOnePatientById(patientId);
  997 + Patients patients = patientsService.findOnePatientById(trackDown.getParentId());
983 998 if (patients != null)
984 999 {
985 1000 TrackCountRecord record = mongoTemplate.findOne(Query.query(Criteria.where("pid").is(patients.getPid())).with(new Sort(Sort.Direction.DESC,
... ... @@ -991,6 +1006,45 @@
991 1006 Update update = MongoConvertHelper
992 1007 .convertToNativeUpdate(ReflectionUtils.getUpdateField(record));
993 1008 mongoTemplate.updateFirst(query, update, TrackCountRecord.class);
  1009 + }
  1010 +
  1011 +
  1012 + if (trackDown.getTrackDownDateType() == TrackDownDateEnums.C.getId())
  1013 + {
  1014 + System.out.println("pid="+trackDown.getPid());
  1015 + String fid = "";
  1016 + List<AntenatalExaminationModel> examinationModel = mongoTemplate.find(Query.query(Criteria.where("pid").is(trackDown.getPid()).and("yn").is(YnEnums.YES.getId()).and("lastMenses").gte(patients.getLastMenses())), AntenatalExaminationModel.class);
  1017 + if (CollectionUtils.isNotEmpty(examinationModel)) {
  1018 + AntenatalExaminationModel model = examinationModel.get(0);
  1019 + fid = model.getId();
  1020 + model.setNextCheckTime(trackDown.getReservatDate());
  1021 + antenatalExaminationService.updateOneAnt(model, model.getId());
  1022 + }
  1023 + else
  1024 + {
  1025 + List<AntExChuModel> antExChuModels = mongoTemplate.find(Query.query(Criteria.where("pid").is(trackDown.getPid()).and("yn").
  1026 + is(YnEnums.YES.getId()).and("lastMenses").gte(patients.getLastMenses())), AntExChuModel.class);
  1027 + if (CollectionUtils.isNotEmpty(antExChuModels)) {
  1028 + AntExChuModel model = antExChuModels.get(0);
  1029 + model.setNextCheckTime(trackDown.getReservatDate());
  1030 + fid = model.getId();
  1031 + antenatalExaminationService.updateAntExChu(model, model.getId());
  1032 + }
  1033 + }
  1034 + System.out.println("fid="+fid);
  1035 + if (StringUtils.isNotEmpty(fid))
  1036 + {
  1037 + //更新产检记录冗余表
  1038 + AntExRecordQuery antExRecordQuery = new AntExRecordQuery();
  1039 + antExRecordQuery.setfId(fid);
  1040 + List<AntExRecordModel> antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.DESC, "created");
  1041 + if (CollectionUtils.isNotEmpty(antExRecordModelList))
  1042 + {
  1043 + AntExRecordModel model = antExRecordModelList.get(0);
  1044 + model.setNextCheckTime(trackDown.getReservatDate());
  1045 + recordService.updateOne(model,model.getId());
  1046 + }
  1047 + }
994 1048 }
995 1049 }
996 1050 }