protected void editStandardRegimen(FormEntrySession session, HttpServletRequest submission, String regCode, Date startDate, Date discontinuedDate, String discontinuedReasonStr) { if (existingStandardRegimen != null && regCode.equals(existingStandardRegimen.getCodeName())){ //the drug orders are already there and attached to the encounter. for (Order o : regDrugOrders){ if (!StringUtils.isEmpty(discontinuedReasonStr)) o.setDiscontinuedReason(HtmlFormEntryUtil.getConcept(discontinuedReasonStr)); if (discontinuedDate != null){ o.setDiscontinuedDate(discontinuedDate); o.setDiscontinued(true); } o.setStartDate(startDate); } } else { //standard regimen changed in the drop-down... I'm going to have this void the old DrugOrders, and create new ones. voidDrugOrders(regDrugOrders, session); enterStandardRegimen(session, submission, regCode, startDate, discontinuedDate, discontinuedReasonStr); } }
@Override public Encounter getEncounterToView(){ Encounter e = new Encounter(); Patient p = Context.getPatientService().getPatient(2); e.setPatient(p); e.setEncounterDatetime(date); e.setProvider(Context.getPersonService().getPerson(502)); e.setEncounterType(Context.getEncounterService().getEncounterType(1)); e.setLocation(Context.getLocationService().getLocation(2)); //add standard regimen to encounter: List<RegimenSuggestion> rs = DrugOrderSupport.getInstance().getStandardRegimens(); RegimenSuggestion rsug = RegimenUtil.getStandardRegimenByCode(rs, "all3"); Set<Order> dors = RegimenUtil.standardRegimenToDrugOrders(rsug, date, p); for (Order o : dors){ o.setDiscontinuedDate(new Date(date.getTime() + 10)); o.setDiscontinuedBy(Context.getAuthenticatedUser()); o.setDiscontinuedReason(Context.getConceptService().getConcept(102)); o.setDiscontinued(true); o.setDiscontinuedReasonNonCoded("non-coded reason"); e.addOrder(o); } //save so interceptor sets missing mandatory values return Context.getEncounterService().saveEncounter(e); }
protected void enterStandardRegimen(FormEntrySession session, HttpServletRequest submission, String regCode, Date startDate, Date discontinuedDate, String discontinuedReasonStr) { RegimenSuggestion rs = RegimenUtil.getStandardRegimenByCode(possibleRegimens, regCode); //create new drugOrders Set<Order> ords = RegimenUtil.standardRegimenToDrugOrders(rs, startDate, session.getPatient()); for (Order o: ords){ if (o.getDateCreated() == null) o.setDateCreated(new Date()); if (o.getCreator() == null) o.setCreator(Context.getAuthenticatedUser()); if (o.getUuid() == null) o.setUuid(UUID.randomUUID().toString()); if (!StringUtils.isEmpty(discontinuedReasonStr)) o.setDiscontinuedReason(HtmlFormEntryUtil.getConcept(discontinuedReasonStr)); if (discontinuedDate != null){ o.setDiscontinuedDate(discontinuedDate); o.setDiscontinued(true); o.setDiscontinuedBy(Context.getAuthenticatedUser()); } session.getSubmissionActions().getCurrentEncounter().addOrder(o); } }