001 /**
002 * Copyright 2005-2012 The Kuali Foundation
003 *
004 * Licensed under the Educational Community License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.opensource.org/licenses/ecl2.php
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016 package edu.sampleu.travel.approval.dataobject;
017
018 import edu.sampleu.travel.approval.TravelAuthorizationDocument;
019 import org.kuali.rice.krad.bo.PersistableBusinessObjectBase;
020 import org.kuali.rice.krad.util.KRADPropertyConstants;
021
022 import javax.persistence.Column;
023 import javax.persistence.Entity;
024 import javax.persistence.JoinColumn;
025 import javax.persistence.ManyToOne;
026 import javax.persistence.Table;
027 import java.util.LinkedHashMap;
028
029 @Entity
030 @Table(name="TRVL_TRANS_MD_DTL_T")
031 public class TransportationModeDetail extends PersistableBusinessObjectBase {
032
033 private String documentNumber;
034 private String transportationModeCode;
035 private TransportationMode transportationMode;
036 private TravelAuthorizationDocument travelAuthorizationDocument;
037
038
039 /**
040 *
041 * This method returns the document number this TransportationModeDetail object is associated with
042 * @return document number
043 */
044 @Column(name="doc_nbr")
045 public String getDocumentNumber() {
046 return documentNumber;
047 }
048
049 /**
050 *
051 * This method sets the document number this TransportationModeDetail object will be associated with
052 * @param documentNumber
053 */
054 public void setDocumentNumber(String documentNumber) {
055 this.documentNumber = documentNumber;
056 }
057
058 @Column(name="TRANS_MODE_CD",length=3, nullable=false)
059 public String getTransportationModeCode() {
060 return transportationModeCode;
061 }
062
063
064 public void setTransportationModeCode(String transportationModeCode) {
065 this.transportationModeCode = transportationModeCode;
066 }
067
068 @ManyToOne
069 @JoinColumn(name="TRANS_MODE_CD")
070 public TransportationMode getTransportationMode() {
071 return transportationMode;
072 }
073
074
075 public void setTransportationMode(TransportationMode transportationMode) {
076 this.transportationMode = transportationMode;
077 }
078
079 public TravelAuthorizationDocument getTravelAuthorizationDocument() {
080 return travelAuthorizationDocument;
081 }
082
083
084 public void setTravelAuthorizationDocument(TravelAuthorizationDocument travelAuthorizationDocument) {
085 this.travelAuthorizationDocument = travelAuthorizationDocument;
086 }
087
088
089 protected LinkedHashMap toStringMapper() {
090 LinkedHashMap m = new LinkedHashMap();
091 m.put(KRADPropertyConstants.DOCUMENT_NUMBER, this.documentNumber);
092 m.put("transportationModeCode", this.transportationModeCode);
093 return m;
094 }
095
096 /**
097 * @see java.lang.Object#equals(java.lang.Object)
098 */
099 @Override
100 public boolean equals(Object obj) {
101 TransportationModeDetail detail = (TransportationModeDetail)obj;
102
103 if(this.transportationModeCode.equals(detail.getTransportationModeCode()) && this.documentNumber.equals(detail.getDocumentNumber())) {
104 return true;
105 }
106 return false;
107 }
108
109 }