List of usage examples for org.apache.commons.lang3.time DateUtils addDays
public static Date addDays(final Date date, final int amount)
From source file:org.kuali.kra.subaward.service.impl.SubAwardServiceImpl.java
public Date getCalculatedFollowupDate(Date baseDate) { Date retDate = new Date(DateUtils.addDays(baseDate, getFollowupDateDefaultLengthInDays()).getTime()); return retDate; }
From source file:org.openmrs.api.OrderServiceTest.java
/** * @verifies fail for revision order if an active drug order for the same concept and care settings exists * @see OrderService#saveOrder(org.openmrs.Order, OrderContext) *///w w w.j a va 2 s . c om @Test public void saveOrder_shouldFailForRevisionOrderIfAnActiveDrugOrderForTheSameConceptAndCareSettingsExists() throws Exception { final Patient patient = patientService.getPatient(2); final Concept aspirin = conceptService.getConcept(88); DrugOrder firstOrder = new DrugOrder(); firstOrder.setPatient(patient); firstOrder.setConcept(aspirin); firstOrder.setEncounter(encounterService.getEncounter(6)); firstOrder.setOrderer(providerService.getProvider(1)); firstOrder.setCareSetting(orderService.getCareSetting(2)); firstOrder.setDrug(conceptService.getDrug(3)); firstOrder.setDateActivated(new Date()); firstOrder.setAutoExpireDate(DateUtils.addDays(new Date(), 10)); firstOrder.setDosingType(FreeTextDosingInstructions.class); firstOrder.setDosingInstructions("2 for 5 days"); firstOrder.setQuantity(10.0); firstOrder.setQuantityUnits(conceptService.getConcept(51)); firstOrder.setNumRefills(0); orderService.saveOrder(firstOrder, null); //New order in future for same concept and care setting DrugOrder secondOrder = new DrugOrder(); secondOrder.setPatient(firstOrder.getPatient()); secondOrder.setConcept(firstOrder.getConcept()); secondOrder.setEncounter(encounterService.getEncounter(6)); secondOrder.setOrderer(providerService.getProvider(1)); secondOrder.setCareSetting(firstOrder.getCareSetting()); secondOrder.setDrug(conceptService.getDrug(3)); secondOrder.setDateActivated(new Date()); secondOrder.setScheduledDate(DateUtils.addDays(firstOrder.getEffectiveStopDate(), 1)); secondOrder.setUrgency(Order.Urgency.ON_SCHEDULED_DATE); secondOrder.setDosingType(FreeTextDosingInstructions.class); secondOrder.setDosingInstructions("2 for 5 days"); secondOrder.setQuantity(10.0); secondOrder.setQuantityUnits(conceptService.getConcept(51)); secondOrder.setNumRefills(0); orderService.saveOrder(secondOrder, null); //Revise second order to have scheduled date overlapping with active order DrugOrder revision = secondOrder.cloneForRevision(); revision.setScheduledDate(DateUtils.addDays(firstOrder.getEffectiveStartDate(), 2)); revision.setEncounter(encounterService.getEncounter(6)); revision.setOrderer(providerService.getProvider(1)); expectedException.expect(APIException.class); expectedException.expectMessage("Order.cannot.have.more.than.one"); orderService.saveOrder(revision, null); }
From source file:org.openmrs.api.OrderServiceTest.java
/** * @verifies pass for revision order if an active test order for the same concept and care settings exists * @see OrderService#saveOrder(Order, OrderContext) *//*from w w w . j a v a2 s .c o m*/ @Test public void saveOrder_shouldPassForRevisionOrderIfAnActiveTestOrderForTheSameConceptAndCareSettingsExists() throws Exception { final Patient patient = patientService.getPatient(2); final Concept cd4Count = conceptService.getConcept(5497); TestOrder activeOrder = new TestOrder(); activeOrder.setPatient(patient); activeOrder.setConcept(cd4Count); activeOrder.setEncounter(encounterService.getEncounter(6)); activeOrder.setOrderer(providerService.getProvider(1)); activeOrder.setCareSetting(orderService.getCareSetting(2)); activeOrder.setDateActivated(new Date()); activeOrder.setAutoExpireDate(DateUtils.addDays(new Date(), 10)); orderService.saveOrder(activeOrder, null); //New order in future for same concept TestOrder secondOrder = new TestOrder(); secondOrder.setPatient(activeOrder.getPatient()); secondOrder.setConcept(activeOrder.getConcept()); secondOrder.setEncounter(encounterService.getEncounter(6)); secondOrder.setOrderer(providerService.getProvider(1)); secondOrder.setCareSetting(activeOrder.getCareSetting()); secondOrder.setDateActivated(new Date()); secondOrder.setScheduledDate(DateUtils.addDays(activeOrder.getEffectiveStopDate(), 1)); secondOrder.setUrgency(Order.Urgency.ON_SCHEDULED_DATE); orderService.saveOrder(secondOrder, null); //Revise second order to have scheduled date overlapping with active order TestOrder revision = secondOrder.cloneForRevision(); revision.setScheduledDate(DateUtils.addDays(activeOrder.getEffectiveStartDate(), 2)); revision.setEncounter(encounterService.getEncounter(6)); revision.setOrderer(providerService.getProvider(1)); Order savedSecondOrder = orderService.saveOrder(revision, null); assertNotNull(orderService.getOrder(savedSecondOrder.getOrderId())); }
From source file:org.openmrs.api.OrderServiceTest.java
/** * @see OrderService#saveOrder(org.openmrs.Order, OrderContext) *//*w w w . java 2 s. c o m*/ @Test public void saveOrder_shouldSaveRevisionOrderScheduledOnDateNotOverlappingWithAnActiveOrderForTheSameConceptAndCareSetting() throws Exception { //sanity check that we have an active order final Patient patient = patientService.getPatient(2); final Concept cd4Count = conceptService.getConcept(5497); TestOrder activeOrder = new TestOrder(); activeOrder.setPatient(patient); activeOrder.setConcept(cd4Count); activeOrder.setEncounter(encounterService.getEncounter(6)); activeOrder.setOrderer(providerService.getProvider(1)); activeOrder.setCareSetting(orderService.getCareSetting(2)); activeOrder.setDateActivated(new Date()); activeOrder.setAutoExpireDate(DateUtils.addDays(new Date(), 10)); orderService.saveOrder(activeOrder, null); //New Drug order in future for same concept TestOrder secondOrder = new TestOrder(); secondOrder.setPatient(activeOrder.getPatient()); secondOrder.setConcept(activeOrder.getConcept()); secondOrder.setEncounter(encounterService.getEncounter(6)); secondOrder.setOrderer(providerService.getProvider(1)); secondOrder.setCareSetting(activeOrder.getCareSetting()); secondOrder.setDateActivated(new Date()); secondOrder.setScheduledDate(DateUtils.addDays(activeOrder.getEffectiveStopDate(), 1)); secondOrder.setUrgency(Order.Urgency.ON_SCHEDULED_DATE); orderService.saveOrder(secondOrder, null); //Revise Second Order to have scheduled date not overlapping with active order TestOrder revision = secondOrder.cloneForRevision(); revision.setScheduledDate(DateUtils.addDays(activeOrder.getEffectiveStopDate(), 2)); revision.setEncounter(encounterService.getEncounter(6)); revision.setOrderer(providerService.getProvider(1)); Order savedRevisionOrder = orderService.saveOrder(revision, null); assertNotNull(orderService.getOrder(savedRevisionOrder.getOrderId())); }
From source file:org.openmrs.api.OrderServiceTest.java
/** * @verifies pass if an active drug order for the same drug formulation exists beyond new * order's schedule/* w ww .java 2s . c om*/ * @see OrderService#saveOrder(org.openmrs.Order, OrderContext) */ @Test public void saveOrder_shouldPassIfAnActiveDrugOrderForTheSameDrugFormulationExistsBeyondSchedule() throws Exception { executeDataSet("org/openmrs/api/include/OrderServiceTest-DrugOrders.xml"); final Patient patient = patientService.getPatient(2); DrugOrder existingOrder = (DrugOrder) orderService.getOrder(2000); int initialActiveOrderCount = orderService.getActiveOrders(patient, null, null, null).size(); //New Drug order DrugOrder order = new DrugOrder(); order.setPatient(patient); order.setDrug(existingOrder.getDrug()); order.setEncounter(encounterService.getEncounter(6)); order.setOrderer(providerService.getProvider(1)); order.setCareSetting(existingOrder.getCareSetting()); order.setDosingType(FreeTextDosingInstructions.class); order.setDosingInstructions("2 for 10 days"); order.setQuantity(10.0); order.setQuantityUnits(conceptService.getConcept(51)); order.setNumRefills(2); order.setUrgency(Order.Urgency.ON_SCHEDULED_DATE); order.setScheduledDate(DateUtils.addDays(existingOrder.getDateStopped(), 1)); orderService.saveOrder(order, null); List<Order> activeOrders = orderService.getActiveOrders(patient, null, null, null); assertEquals(++initialActiveOrderCount, activeOrders.size()); }
From source file:org.openmrs.ISO8601Duration.java
/** * Add this duration to given startDate/*from w ww.ja v a2 s.c o m*/ * * @param startDate * @param frequency is used to calculate time to be added to startDate when duration unit is * 'Recurring Interval' * @return date which is startDate plus duration */ public Date addToDate(Date startDate, OrderFrequency frequency) { if (SECONDS_CODE.equals(code)) return DateUtils.addSeconds(startDate, duration); if (MINUTES_CODE.equals(code)) return DateUtils.addMinutes(startDate, duration); if (HOURS_CODE.equals(code)) return DateUtils.addHours(startDate, duration); if (DAYS_CODE.equals(code)) return DateUtils.addDays(startDate, duration); if (WEEKS_CODE.equals(code)) return DateUtils.addWeeks(startDate, duration); if (MONTHS_CODE.equals(code)) return DateUtils.addMonths(startDate, duration); if (YEARS_CODE.equals(code)) return DateUtils.addYears(startDate, duration); if (RECURRING_INTERVAL_CODE.equals(code)) { if (frequency == null) throw new APIException("Frequency can not be null when duration in Recurring Interval"); return DateUtils.addSeconds(startDate, (int) (duration * SECONDS_PER_DAY / frequency.getFrequencyPerDay())); } throw new APIException(String.format("Unknown code '%s' for ISO8601 duration units", code)); }
From source file:org.openmrs.module.emrapi.encounter.mapper.OpenMRSDrugOrderMapper1_10Test.java
@Test public void shouldClearScheduledDateAndUrgencyWhenScheduledOrderRevisedToStartFromToday() { DrugOrder previousOpenMrsDrugOrder = new DrugOrder(); previousOpenMrsDrugOrder.setScheduledDate(DateUtils.addDays(new Date(), 2)); previousOpenMrsDrugOrder.setUrgency(Order.Urgency.ON_SCHEDULED_DATE); previousOpenMrsDrugOrder.setUuid(UUID.randomUUID().toString()); Drug drug = new Drug(); drug.setUuid(DRUG_UUID);//from w w w . j a va 2s .c o m previousOpenMrsDrugOrder.setDrug(drug); when(orderService.getOrderByUuid(previousOpenMrsDrugOrder.getUuid())).thenReturn(previousOpenMrsDrugOrder); EncounterTransaction.DrugOrder revisedDrugOrder = new DrugOrderBuilder().withScheduledDate(null) .withAction(Order.Action.REVISE.name()).withPreviousOrderUuid(previousOpenMrsDrugOrder.getUuid()) .withDrugUuid(DRUG_UUID).withDurationUnits(DAY_DURATION_UNIT).build(); DrugOrder revisedOpenMrsDrugOrder = openMRSDrugOrderMapper.map(revisedDrugOrder, encounter); assertThat(revisedOpenMrsDrugOrder.getUrgency(), is(equalTo(OpenMRSDrugOrderMapper.DEFAULT_URGENCY))); assertNull(revisedOpenMrsDrugOrder.getScheduledDate()); }
From source file:org.openmrs.order.OrderUtilTest.java
/** * @verifies return true if order1 and order2 do not have end date * @see OrderUtil#checkScheduleOverlap(Order,Order) *///from ww w .ja v a2 s.c om @Test public void checkScheduleOverlap_shouldReturnTrueIfOrder1AndOrder2DoNotHaveEndDate() throws Exception { Date date = new Date(); Order order1 = new Order(); order1.setScheduledDate(DateUtils.addDays(date, 4)); //Order1 scheduled after 4 days without stop date order1.setUrgency(Order.Urgency.ON_SCHEDULED_DATE); Order order2 = new Order(); order2.setDateActivated(date); order2.setScheduledDate(DateUtils.addDays(date, 6)); //Order2 scheduled after 6 days without stop date order2.setUrgency(Order.Urgency.ON_SCHEDULED_DATE); assertTrue(OrderUtil.checkScheduleOverlap(order1, order2)); assertTrue(OrderUtil.checkScheduleOverlap(order2, order1)); //Checks vice versa }
From source file:org.openmrs.order.OrderUtilTest.java
/** * @verifies return true if order1 and order2 have same start dates * @see OrderUtil#checkScheduleOverlap(Order,Order) *///from ww w .j a va 2s .com @Test public void checkScheduleOverlap_shouldReturnTrueIfOrder1AndOrder2HaveSameStartDates() throws Exception { Date date = new Date(); Order order1 = new Order(); order1.setDateActivated(date); order1.setScheduledDate(DateUtils.addDays(date, 6)); //Order1 scheduled after 6 days order1.setUrgency(Order.Urgency.ON_SCHEDULED_DATE); Order order2 = new Order(); order2.setDateActivated(date); order2.setScheduledDate(DateUtils.addDays(date, 6)); //Order2 also scheduled after 6 days order2.setUrgency(Order.Urgency.ON_SCHEDULED_DATE); assertTrue(OrderUtil.checkScheduleOverlap(order1, order2)); assertTrue(OrderUtil.checkScheduleOverlap(order2, order1)); assertTrue(OrderUtil.checkScheduleOverlap(order2, order2)); }
From source file:org.openmrs.order.OrderUtilTest.java
/** * @verifies return false if order1 ends before order2 starts Checks vice versa * @see OrderUtil#checkScheduleOverlap(Order,Order) *//* ww w .j a va 2s . c om*/ @Test public void checkScheduleOverlap_shouldReturnFalseIfOrder1EndsBeforeOrder2Starts() throws Exception { Date date = new Date(); Order order1 = new Order(); order1.setDateActivated(date); order1.setAutoExpireDate(DateUtils.addDays(date, 2)); //Order1 getting expired after 2 days Order order2 = new Order(); order2.setDateActivated(date); order2.setScheduledDate(DateUtils.addDays(date, 4)); //Order2 scheduled after 4 days order2.setUrgency(Order.Urgency.ON_SCHEDULED_DATE); assertFalse(OrderUtil.checkScheduleOverlap(order1, order2)); assertFalse(OrderUtil.checkScheduleOverlap(order2, order1)); }