diff --git a/src/org/isf/ward/manager/WardBrowserManager.java b/src/org/isf/ward/manager/WardBrowserManager.java index 0d5c1f389b5..e9111611ba8 100644 --- a/src/org/isf/ward/manager/WardBrowserManager.java +++ b/src/org/isf/ward/manager/WardBrowserManager.java @@ -5,11 +5,10 @@ import org.isf.admission.manager.AdmissionBrowserManager; import org.isf.generaldata.MessageBundle; -import org.isf.menu.manager.Context; import org.isf.utils.exception.OHDataIntegrityViolationException; -import org.isf.utils.exception.OHServiceException; -import org.isf.utils.exception.OHOperationNotAllowedException; import org.isf.utils.exception.OHDataValidationException; +import org.isf.utils.exception.OHOperationNotAllowedException; +import org.isf.utils.exception.OHServiceException; import org.isf.utils.exception.model.OHExceptionMessage; import org.isf.utils.exception.model.OHSeverityLevel; import org.isf.ward.model.Ward; @@ -233,5 +232,15 @@ public boolean maternityControl(boolean createIfNotExists) throws OHServiceExcep public int getCurrentOccupation(Ward ward) throws OHServiceException { return ioOperations.getCurrentOccupation(ward); } - + + /** + * returns the {@link Ward} based on ward code + * + * @param code - the {@link Ward} code. + * @return the {@link Ward} + */ + public Ward findVaccine(String code) throws OHServiceException { + return ioOperations.findWard(code); + } + } diff --git a/src/org/isf/ward/service/WardIoOperations.java b/src/org/isf/ward/service/WardIoOperations.java index 7045bf2c809..ac2ec6a666d 100644 --- a/src/org/isf/ward/service/WardIoOperations.java +++ b/src/org/isf/ward/service/WardIoOperations.java @@ -8,7 +8,6 @@ import org.isf.utils.exception.OHServiceException; import org.isf.ward.model.Ward; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -166,5 +165,20 @@ public boolean isMaternityPresent() throws OHServiceException return result; } - + + /** + * returns the {@link Ward} based on code + * + * @param code - the code, must not be {@literal null} + * @return the {@link Ward} or {@literal null} if none found + * @throws OHServiceException + * @throws IllegalArgumentException if {@code code} is {@literal null} + */ + public Ward findWard(String code) throws OHServiceException + { + if (code != null) { + return repository.findOne(code); + }else + throw new IllegalArgumentException("code must not be null"); + } } diff --git a/src/org/isf/ward/test/Tests.java b/src/org/isf/ward/test/Tests.java index 05cbd892548..8192a0a0b9f 100644 --- a/src/org/isf/ward/test/Tests.java +++ b/src/org/isf/ward/test/Tests.java @@ -2,6 +2,8 @@ import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.fail; import java.util.ArrayList; @@ -319,6 +321,27 @@ public void testIoIsMaternityPresent() return; } + @Test + public void testFindWard() + { + String code = ""; + Ward result; + + try + { + code = _setupTestWard(false); + result = wardIoOperation.findWard(code); + + assertNotNull(result); + assertEquals(code,result.getCode()); + } + catch (Exception e) + { + e.printStackTrace(); + fail(); + } + } + private void _saveContext() throws OHException { testWardContext.saveAll(jpa);