Skip to content

Commit

Permalink
Rename drug_order.prn to drug_order.as_needed and add drug_order.as_n…
Browse files Browse the repository at this point in the history
…eeded_condition - TRUNK-4128

Follow up to add as_needed_condition column to drug_orders and update orders form - TRUNK-4128

Follow up to add as_needed_condition column - TRUNK-4128

Updated DrugOrder.copyHelper to include asNeededCondition- TRUNK-4128
  • Loading branch information
wluyima committed Nov 6, 2013
1 parent f3bcad8 commit 617152d
Show file tree
Hide file tree
Showing 11 changed files with 89 additions and 31 deletions.
53 changes: 45 additions & 8 deletions api/src/main/java/org/openmrs/DrugOrder.java
Expand Up @@ -32,14 +32,16 @@ public class DrugOrder extends Order implements java.io.Serializable {

private String frequency;

private Boolean prn = false;
private Boolean asNeeded = false;

private Boolean complex = false;

private Integer quantity;

private Drug drug;

private String asNeededCondition;

// Constructors

/** default constructor */
Expand Down Expand Up @@ -67,7 +69,8 @@ protected DrugOrder copyHelper(DrugOrder target) {
target.equivalentDailyDose = getEquivalentDailyDose();
target.units = getUnits();
target.frequency = getFrequency();
target.prn = getPrn();
target.asNeeded = getAsNeeded();
target.asNeededCondition = getAsNeededCondition();
target.complex = getComplex();
target.quantity = getQuantity();
target.drug = getDrug();
Expand Down Expand Up @@ -117,21 +120,39 @@ public void setFrequency(String frequency) {
}

/**
* Returns true/false whether the drug is a "pro re nata" (as needed) drug
*
* @deprecated see {@link #getAsNeeded()}
* @return Boolean
*/
@Deprecated
public Boolean getPrn() {
return this.prn;
return getAsNeeded();
}

/**
* Sets the prn
*
* @deprecated see {@link #setAsNeeded(Boolean)}
* @param prn
*/
@Deprecated
public void setPrn(Boolean prn) {
this.prn = prn;
setAsNeeded(prn);
}

/**
* Returns true/false whether the drug is a "pro re nata" drug
*
* @return Boolean
* @since 1.10
*/
public Boolean getAsNeeded() {
return asNeeded;
}

/**
* @param asNeeded the value to set
* @since 1.10
*/
public void setAsNeeded(Boolean asNeeded) {
this.asNeeded = asNeeded;
}

/**
Expand Down Expand Up @@ -188,6 +209,22 @@ public void setDrug(Drug drug) {
this.drug = drug;
}

/**
* @return the asNeededCondition
* @since 1.10
*/
public String getAsNeededCondition() {
return asNeededCondition;
}

/**
* @param asNeededCondition the asNeededCondition to set
* @since 1.10
*/
public void setAsNeededCondition(String asNeededCondition) {
this.asNeededCondition = asNeededCondition;
}

public Double getEquivalentDailyDose() {
return equivalentDailyDose;
}
Expand Down
Expand Up @@ -47,7 +47,7 @@ public boolean supports(Class c) {
*
* @see org.springframework.validation.Validator#validate(java.lang.Object,
* org.springframework.validation.Errors)
* @should fail validation if prn is null
* @should fail validation if asNeeded is null
* @should fail validation if complex is null
* @should fail validation if order concept is null
* @should fail validation if drug concept is different from order concept
Expand Down
19 changes: 19 additions & 0 deletions api/src/main/resources/liquibase-update-to-latest.xml
Expand Up @@ -6400,4 +6400,23 @@
<addForeignKeyConstraint constraintName="encounter_provider_voided_by" baseTableName="encounter_provider" baseColumnNames="voided_by" referencedTableName="users" referencedColumnNames="user_id"/>
</changeSet>

<changeSet id="201311041510" author="wyclif">
<preConditions onFail="MARK_RAN">
<not><columnExists tableName="drug_order" columnName="as_needed" /></not>
<columnExists tableName="drug_order" columnName="prn" />
</preConditions>
<comment>Renaming drug_order.prn column to drug_order.as_needed</comment>
<renameColumn tableName="drug_order" oldColumnName="prn" newColumnName="as_needed" columnDataType="boolean" />
</changeSet>

<changeSet id="201311041511" author="wyclif">
<preConditions onFail="MARK_RAN">
<not><columnExists tableName="drug_order" columnName="as_needed_condition"/></not>
</preConditions>
<comment>Adding as_needed_condition column to drug_order table</comment>
<addColumn tableName="drug_order">
<column name="as_needed_condition" type="varchar(255)" />
</addColumn>
</changeSet>

</databaseChangeLog>
Expand Up @@ -86,7 +86,8 @@
<property name="equivalentDailyDose" type="double" column="equivalent_daily_dose" length="22"/>
<property name="units" type="java.lang.String" column="units" length="255"/>
<property name="frequency" type="java.lang.String" column="frequency" length="255"/>
<property name="prn" type="boolean" column="prn" length="1" not-null="true"/>
<property name="asNeeded" type="boolean" column="as_needed" length="1" not-null="true"/>
<property name="asNeededCondition" type="string" column="as_needed_condition" length="255" />
<property name="complex" type="boolean" column="complex" length="1" not-null="true"/>
<property name="quantity" type="int" column="quantity" length="11"/>
<!-- bi-directional many-to-one association to Drug -->
Expand Down
Expand Up @@ -34,10 +34,10 @@ public class DrugOrderValidatorTest extends BaseContextSensitiveTest {
* @see {@link DrugOrderValidator#validate(Object,Errors)}
*/
@Test
@Verifies(value = "should fail validation if prn is null", method = "validate(Object,Errors)")
public void validate_shouldFailValidationIfPrnIsNull() throws Exception {
@Verifies(value = "should fail validation if asNeeded is null", method = "validate(Object,Errors)")
public void validate_shouldFailValidationIfAsNeededIsNull() throws Exception {
DrugOrder order = new DrugOrder();
order.setPrn(null);
order.setAsNeeded(null);
order.setDrug(Context.getConceptService().getDrug(3));

Errors errors = new BindException(order, "order");
Expand Down
Expand Up @@ -2,7 +2,7 @@
<dataset>
<orders order_id="6" urgency="ROUTINE" order_type_id="2" concept_id="88" orderer="1" instructions="" start_date="2012-08-19 00:00:00.0" discontinued="false" creator="1" date_created="2012-01-19 12:24:10.0" voided="false" patient_id="2" uuid="0c96f25c-4949-4f72-9931-d808fbcdb611"/>
<orders order_id="7" urgency="ROUTINE" order_type_id="2" concept_id="792" orderer="1" instructions="" start_date="2012-09-19 00:00:00.0" discontinued="false" creator="1" date_created="2012-02-19 12:24:10.0" voided="false" patient_id="2" uuid="1c96f25c-4949-4f72-9931-d808fbcdb612"/>
<drug_order order_id="6" drug_inventory_id="3" dose="125.0" units="mg" frequency="2/day x 7 days/week" prn="false" complex="false"/>
<drug_order order_id="7" drug_inventory_id="3" dose="225.0" units="mg" frequency="1/day x 7 days/week" prn="false" complex="false"/>
<drug_order order_id="6" drug_inventory_id="3" dose="125.0" units="mg" frequency="2/day x 7 days/week" as_needed="false" complex="false"/>
<drug_order order_id="7" drug_inventory_id="3" dose="225.0" units="mg" frequency="1/day x 7 days/week" as_needed="false" complex="false"/>

</dataset>
Expand Up @@ -168,11 +168,11 @@
<drug drug_id="2" concept_id="792" name="Triomune-30" combination="true" dose_strength="1.0" units="tab(s)" creator="1" date_created="2005-02-24 00:00:00.0" retired="false" uuid="3cfcf118-931c-46f7-8ff6-7b876f0d4202"/>
<drug drug_id="3" concept_id="88" name="Aspirin" combination="false" dose_strength="325.0" units="mg" creator="1" date_created="2005-02-24 00:00:00.0" retired="false" uuid="05ec820a-d297-44e3-be6e-698531d9dd3f"/>
<drug drug_id="11" concept_id="3" name="NYQUIL" combination="true" units="" creator="1" date_created="2008-08-15 15:34:03.0" retired="true" uuid="7e2323fa-0fa0-461f-9b59-6765997d849e"/>
<drug_order order_id="1" drug_inventory_id="3" dose="325.0" units="mg" frequency="1/day x 7 days/week" prn="false" complex="false"/>
<drug_order order_id="2" drug_inventory_id="2" dose="1.0" units="tab(s)" frequency="1/day x 7 days/week" prn="false" complex="false"/>
<drug_order order_id="3" drug_inventory_id="2" dose="2.0" units="tab(s)" frequency="1/day x 7 days/week" prn="false" complex="false"/>
<drug_order order_id="4" drug_inventory_id="3" dose="325.0" units="mg" frequency="1/day x 7 days/week" prn="false" complex="false"/>
<drug_order order_id="5" drug_inventory_id="3" dose="325.0" units="mg" frequency="1/day x 7 days/week" prn="false" complex="false"/>
<drug_order order_id="1" drug_inventory_id="3" dose="325.0" units="mg" frequency="1/day x 7 days/week" as_needed="false" complex="false"/>
<drug_order order_id="2" drug_inventory_id="2" dose="1.0" units="tab(s)" frequency="1/day x 7 days/week" as_needed="false" complex="false"/>
<drug_order order_id="3" drug_inventory_id="2" dose="2.0" units="tab(s)" frequency="1/day x 7 days/week" as_needed="false" complex="false"/>
<drug_order order_id="4" drug_inventory_id="3" dose="325.0" units="mg" frequency="1/day x 7 days/week" as_needed="false" complex="false"/>
<drug_order order_id="5" drug_inventory_id="3" dose="325.0" units="mg" frequency="1/day x 7 days/week" as_needed="false" complex="false"/>
<encounter_role encounter_role_id="1" name="Unknown" description="Unknown encounter role for legacy providers with no encounter role set" creator="1" retired="false" date_created="2011-08-18 14:00:00.0" uuid="a0b03050-c99b-11e0-9572-0800200c9a66" />
<provider provider_id="1" person_id="1" identifier="Test" creator="1" date_created="2005-01-01 00:00:00.0" retired="false" uuid="c2299800-cca9-11e0-9572-0800200c9a66" />
<encounter encounter_id="3" encounter_type="2" patient_id="7" location_id="1" form_id="1" encounter_datetime="2008-08-01 00:00:00.0" creator="1" date_created="2008-08-18 14:09:05.0" voided="false" uuid="6519d653-393b-4118-9c83-a3715b82d4ac"/>
Expand Down
Expand Up @@ -4,7 +4,7 @@
<concept_description concept_description_id="1" concept_id="1" description="A TB drug" locale="en" creator="1" date_created="2005-01-01 00:00:00.0" uuid="2ce39a36-e93d-4489-9f31-259372244237"/>
<concept_name concept_id="1" name="Isoniazid" locale="en" creator="1" date_created="2005-01-01 00:00:00.0" concept_name_id="1" voided="false" uuid="a354c039-98ba-4351-bac9-f0cc4b2bc903" concept_name_type="FULLY_SPECIFIED" locale_preferred="0"/>
<drug drug_id="1" concept_id="1" name="INH 300mg" combination="false" dose_strength="300.0" units="mg" creator="1" date_created="2005-01-01 00:00:00.0" retired="false" uuid="e40c80cb-0a17-47fe-b64a-076b056f42e0"/>
<drug_order order_id="1" drug_inventory_id="1" dose="900.0" units="mg" frequency="1/day 2/week" prn="false" complex="false"/>
<drug_order order_id="1" drug_inventory_id="1" dose="900.0" units="mg" frequency="1/day 2/week" as_needed="false" complex="false"/>
<location location_id="1" name="Test Location" creator="1" date_created="2005-01-01 00:00:00.0" retired="false" uuid="d033b4e1-2a21-4265-943b-d5a0710a0c2d"/>
<order_type order_type_id="1" name="Drug Order" description="Prescriptions" creator="1" date_created="2005-01-01 00:00:00.0" retired="false" uuid="9da50542-d663-4fb7-ac74-e1ace425ab8b"/>
<orders order_id="1" urgency="ROUTINE" order_type_id="1" concept_id="1" orderer="1" start_date="2005-01-01 00:00:00.0" auto_expire_date="2005-12-31 00:00:00.0" discontinued="false" creator="1" date_created="2005-01-01 00:00:00.0" voided="false" patient_id="2" uuid="f4740b0b-206c-48a4-a5b7-8a9024cb75d9"/>
Expand Down
16 changes: 8 additions & 8 deletions web/src/main/java/org/openmrs/web/dwr/DrugOrderListItem.java
Expand Up @@ -60,7 +60,7 @@ public class DrugOrderListItem {

private String frequency;

private Boolean prn;
private Boolean asNeeded;

private Boolean complex;

Expand Down Expand Up @@ -119,7 +119,7 @@ public DrugOrderListItem(DrugOrder drugOrder) {
dose = drugOrder.getDose();
units = drugOrder.getUnits();
frequency = drugOrder.getFrequency();
prn = drugOrder.getPrn();
asNeeded = drugOrder.getAsNeeded();
complex = drugOrder.getComplex();
quantity = drugOrder.getQuantity();
voided = drugOrder.getVoided();
Expand Down Expand Up @@ -348,17 +348,17 @@ public void setOrderTypeId(Integer orderTypeId) {
}

/**
* @return Returns the prn.
* @return the asNeeded
*/
public Boolean getPrn() {
return prn;
public Boolean getAsNeeded() {
return asNeeded;
}

/**
* @param prn The prn to set.
* @param asNeeded the value to set
*/
public void setPrn(Boolean prn) {
this.prn = prn;
public void setAsNeeded(Boolean asNeeded) {
this.asNeeded = asNeeded;
}

/**
Expand Down
1 change: 1 addition & 0 deletions webapp/src/main/webapp/WEB-INF/messages.properties
Expand Up @@ -808,6 +808,7 @@ DrugOrder.dose=Dose
DrugOrder.units=Units
DrugOrder.frequency=Frequency
DrugOrder.prn=PRN
DrugOrder.asNeeded=As Needed
DrugOrder.complex=Complex
DrugOrder.quantity=Quantity
DrugOrder.drug=Drug
Expand Down
Expand Up @@ -160,9 +160,9 @@
</td>
</tr>
<tr>
<td valign="top"><openmrs:message code="DrugOrder.prn"/></td>
<td valign="top"><openmrs:message code="DrugOrder.asNeeded"/></td>
<td valign="top">
<spring:bind path="order.prn">
<spring:bind path="order.asNeeded">
<openmrs:fieldGen type="java.lang.Boolean" formFieldName="${status.expression}" val="${status.editor.value}" parameters="isNullable=false" />
<c:if test="${status.errorMessage != ''}"><span class="error">${status.errorMessage}</span></c:if>
</spring:bind>
Expand Down

0 comments on commit 617152d

Please sign in to comment.