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; }
private boolean removeBed(TrackingAttendanceStatusVo newStatus) { try { if (form.getLocalContext().getcurrentTrackingIsNotNull()) { form.getLocalContext().getcurrentTracking().setCurrentStatus(newStatus); PendingEmergencyAdmissionShortVo temppend = null; if (form.getLocalContext() .getcurrentTracking() .getAssociatedPendingEmergencyAdmissionIsNotNull()) { temppend = form.getLocalContext().getcurrentTracking().getAssociatedPendingEmergencyAdmission(); temppend.setAdmissionStatus(EmergencyAdmissionStatus.CANCELLED); temppend.setAllocatedWard(null); } form.getLocalContext().getcurrentTracking().setBedAvailability(null); form.getLocalContext().getcurrentTracking().getAttendance().setConclusionDateTime(null); form.getLocalContext().getcurrentTracking().getAttendance().setBedTypeRequested(null); String[] errors = form.getLocalContext().getcurrentTracking().validate(); if (errors != null && errors.length > 0) { engine.showErrors(errors); return false; } domain.save(null, form.getLocalContext().getcurrentTracking()); return true; } } catch (StaleObjectException e) { engine.showMessage(ConfigFlag.UI.STALE_OBJECT_MESSAGE.getValue()); return true; } catch (UniqueKeyViolationException e) { engine.showMessage(e.getMessage()); return false; } return false; }