Пример #1
0
  private PendingEmergencyAdmissionShortVo populatePendingAdmission(
      TrackingForBedAvailabilityVo tracking) {
    PendingEmergencyAdmissionShortVo pendingAdmission =
        tracking.getAssociatedPendingEmergencyAdmission();
    if (pendingAdmission == null) pendingAdmission = new PendingEmergencyAdmissionShortVo();

    pendingAdmission.setAdmissionStatus(EmergencyAdmissionStatus.DTA);
    pendingAdmission.setDTADateTime(form.dtimAwaitingBed().getValue());
    pendingAdmission.setAdmissionType(AdmissionType.PLANNED);

    LocationLiteVo currentLocation = (LocationLiteVo) engine.getCurrentLocation();
    if (currentLocation != null) // WDEV-17615
    {
      // WDEV-17615
      LocationLiteVo currentHospital = domain.getCurrentHospital(currentLocation);
      pendingAdmission.setCurrentLocation(currentHospital);
    }

    if (pendingAdmission.getPasEvent() == null) {
      PasEventShortVo newPasEvent = new PasEventShortVo();

      newPasEvent.setEventDateTime(tracking.getAttendance().getRegistrationDateTime());
      newPasEvent.setPatient(form.getGlobalContext().Core.getPatientShort());
      newPasEvent.setPasEventId(new DateTime().toString());

      if (currentLocation != null) // WDEV-17615
      {
        // WDEV-17615
        LocationLiteVo currentHospital = domain.getCurrentHospital(currentLocation);
        newPasEvent.setLocation(currentHospital);
      }

      newPasEvent.setSpecialty(Specialty.EMERGENCY);

      pendingAdmission.setPasEvent(newPasEvent);
    }

    pendingAdmission.setBedTypeRequested(form.cmbDTABedType().getValue());

    return pendingAdmission;
  }