Skip to content
Snippets Groups Projects
PrescriptionBean.java 3.64 KiB
Newer Older
  • Learn to ignore specific revisions
  • HMoss's avatar
    HMoss committed
    package edu.ncsu.csc.itrust.beans;
    
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;
    
    /**
     * A bean for storing data about a prescription.
     * 
     * A bean's purpose is to store data. Period. Little or no functionality is to be added to a bean 
     * (with the exception of minor formatting such as concatenating phone numbers together). 
     * A bean must only have Getters and Setters (Eclipse Hint: Use Source > Generate Getters and Setters.
     * to create these easily)
     */
    public class PrescriptionBean {
    	private long id = 0L;
    	private MedicationBean medication = new MedicationBean();
    	private long visitID = 0L;
    	private String startDateStr = new SimpleDateFormat("MM/dd/yyyy").format(new Date());
    	private String endDateStr = new SimpleDateFormat("MM/dd/yyyy").format(new Date());
    	private int dosage = 0;
    	private String instructions = "";
    	private List<OverrideReasonBean> reasons = null;
    	private String overrideReasonOther = "";
    	public PrescriptionBean() {
    	}
    
    	@Override
    	public boolean equals(Object other) {
    		return (other != null) && this.getClass().equals(other.getClass())
    				&& this.equals((PrescriptionBean) other);
    	}
    
    	/**
    	 * @param other
    	 * @return
    	 */
    	private boolean equals(PrescriptionBean other) {
    		return (medication == other.medication || (medication != null && medication.equals(other.medication)))
    				&& visitID == other.visitID
    				&& startDateStr.equals(other.startDateStr)
    				&& endDateStr.equals(other.endDateStr)
    				&& dosage == other.dosage
    				&& instructions.equals(other.instructions);
    	}
    
    	@Override
    	public int hashCode() {
    		return 42; // any arbitrary constant will do
    	}
    /**
     * getters and setters for dosage,
     * reason, override reason
     */
    	public int getDosage() {
    		return dosage;
    	}
    
    	public void setDosage(int dosage) {
    		this.dosage = dosage;
    	}
    	
    	public List<OverrideReasonBean> getReasons() {
    		if (reasons==null){
    			reasons = new ArrayList<OverrideReasonBean>();
    		}
    		return reasons;
    	}
    
    	public void setReasons(List<OverrideReasonBean> reasons) {
    		this.reasons = reasons;
    	}
    	
    	public void addReason(OverrideReasonBean reason){
    		if(reasons == null){
    			reasons = new ArrayList<OverrideReasonBean>();
    		}
    		reasons.add(reason);
    	}
    
    	public Date getEndDate() {
    		try {
    			return new SimpleDateFormat("MM/dd/yyyy").parse(endDateStr);
    		} catch (java.text.ParseException e) {
    			return null;
    		}
    	}
    
    	public void setEndDateStr(String endDate) {
    		this.endDateStr = endDate;
    	}
    
    	public void setEndDate(Date endDate) {
    		this.endDateStr = new SimpleDateFormat("MM/dd/yyyy").format(endDate);
    	}
    
    	public String getInstructions() {
    		return instructions;
    	}
    
    	public void setInstructions(String instruction) {
    		this.instructions = instruction;
    	}
    
    	public MedicationBean getMedication() {
    		return medication;
    	}
    
    	public void setMedication(MedicationBean medication) {
    		this.medication = medication;
    	}
    
    	public Date getStartDate() {
    		try {
    			return new SimpleDateFormat("MM/dd/yyyy").parse(startDateStr);
    		} catch (ParseException e) {
    			return null;
    		}
    	}
    
    	public String getStartDateStr() {
    		return startDateStr;
    	}
    
    	public String getEndDateStr() {
    		return endDateStr;
    	}
    
    	public void setStartDateStr(String startDate) {
    		this.startDateStr = startDate;
    	}
    
    	public long getVisitID() {
    		return visitID;
    	}
    
    	public void setVisitID(long visitID) {
    		this.visitID = visitID;
    	}
    
    	public long getId() {
    		return id;
    	}
    
    	public void setId(long id) {
    		this.id = id;
    	}
    
    	public String getOverrideReasonOther() {
    		return overrideReasonOther;
    	}
    
    	public void setOverrideReasonOther(String overrideReasonOther) {
    		this.overrideReasonOther = overrideReasonOther;
    	}
    
    
    }