private void setOrderer(FormEntrySession session, DrugOrder drugOrder) { if (drugOrder.getUuid() == null) drugOrder.setUuid(UUID.randomUUID().toString()); Set<EncounterProvider> encounterProviders = session.getSubmissionActions().getCurrentEncounter() .getEncounterProviders(); for (EncounterProvider encounterProvider : encounterProviders) { if (!encounterProvider.isVoided()) { drugOrder.setOrderer(encounterProvider.getProvider()); } } }
/** * @see OrderService#saveOrder(org.openmrs.Order, OrderContext, org.openmrs.Order[]) */ @Test public void saveOrder_shouldPassIfAnKnownDrugOrderForTheSameDrugFormulationSpecified() { executeDataSet("org/openmrs/api/include/OrderServiceTest-drugOrdersWithSameConceptAndDifferentFormAndStrength.xml"); final Patient patient = patientService.getPatient(2); //sanity check that we have an active order for the same concept DrugOrder existingOrder = (DrugOrder) orderService.getOrder(1000); assertTrue(existingOrder.isActive()); //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 5 days"); order.setQuantity(10.0); order.setQuantityUnits(conceptService.getConcept(51)); order.setNumRefills(2); OrderContext orderContext = new OrderContext(); orderContext.setAttribute(OrderService.PARALLEL_ORDERS, new String[] { existingOrder.getUuid() }); orderService.saveOrder(order, orderContext); assertNotNull(orderService.getOrder(order.getOrderId())); }
if (drugOrder.getCreator() == null) drugOrder.setCreator(Context.getAuthenticatedUser()); if (drugOrder.getUuid() == null) drugOrder.setUuid(UUID.randomUUID().toString()); drugOrder.setDrug(orderTag.drug);