001    /*
002     * Copyright 2011 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 org.kuali.kfs.fp.businessobject;
017    
018    import java.sql.Date;
019    
020    import org.apache.ojb.broker.PersistenceBrokerAware;
021    import org.kuali.rice.kns.bo.PersistableBusinessObject;
022    import org.kuali.rice.kns.util.KualiDecimal;
023    
024    
025    /**
026     * This class represents a check is cashiering related documents
027     */
028    public interface Check extends PersistableBusinessObject, PersistenceBrokerAware {
029    
030        /**
031         * Gets the checkDate attribute.
032         * 
033         * @return Returns the checkDate.
034         */
035        public Date getCheckDate();
036    
037        /**
038         * Sets the checkDate attribute value.
039         * 
040         * @param checkDate The checkDate to set.
041         */
042        public void setCheckDate(Date checkDate);
043    
044        /**
045         * Gets the checkNumber attribute.
046         * 
047         * @return Returns the checkNumber.
048         */
049        public String getCheckNumber();
050    
051        /**
052         * Sets the checkNumber attribute value.
053         * 
054         * @param checkNumber The checkNumber to set.
055         */
056        public void setCheckNumber(String checkNumber);
057    
058        /**
059         * Gets the description attribute.
060         * 
061         * @return Returns the description.
062         */
063        public String getDescription();
064    
065        /**
066         * Sets the description attribute value.
067         * 
068         * @param description The description to set.
069         */
070        public void setDescription(String description);
071    
072    
073        /**
074         * Gets the sequenceId attribute.
075         * 
076         * @return Returns the sequenceId.
077         */
078        public Integer getSequenceId();
079    
080        /**
081         * Sets the sequenceId attribute value.
082         * 
083         * @param sequenceId The sequenceId to set.
084         */
085        public void setSequenceId(Integer sequenceId);
086    
087    
088        /**
089         * Gets the amount attribute.
090         * 
091         * @return Returns the amount.
092         */
093        public KualiDecimal getAmount();
094    
095        /**
096         * Sets the amount attribute value.
097         * 
098         * @param amount The amount to set.
099         */
100        public void setAmount(KualiDecimal amount);
101    
102        /**
103         * Gets the documentNumber attribute.
104         * 
105         * @return Returns the documentNumber.
106         */
107        public String getDocumentNumber();
108    
109        /**
110         * Sets the documentNumber attribute value.
111         * 
112         * @param documentNumber The documentNumber to set.
113         */
114        public void setDocumentNumber(String documentNumber);
115    
116    
117        /**
118         * Sets the financialDocumentDepositLineNumber.
119         * 
120         * @param financialDocumentDepositLineNumber
121         */
122        public void setFinancialDocumentDepositLineNumber(Integer financialDocumentDepositLineNumber);
123    
124        /**
125         * Gets the financialDocumentDepositLineNumber attribute.
126         * 
127         * @return Returns the financialDocumentDepositLineNumber.
128         */
129        public Integer getFinancialDocumentDepositLineNumber();
130    
131        /**
132         * Returns the document type that created this record.
133         * 
134         * @return the document type of the creating document.
135         */
136        public String getFinancialDocumentTypeCode();
137    
138        /**
139         * Sets the kind of document that created this check
140         * 
141         * @param financialDocumentTypeCode
142         */
143        public void setFinancialDocumentTypeCode(String financialDocumentTypeCode);
144    
145        /**
146         * Gets the code that describes where this cashiering record came from
147         * 
148         * @return the cashiering record source
149         */
150        public String getCashieringRecordSource();
151    
152        /**
153         * Sets the source of this cashiering record.
154         * 
155         * @param cashieringRecordSource
156         */
157        public void setCashieringRecordSource(String cashieringRecordSource);
158    
159        /**
160         * Returns true if this check has the same primitive field values as the given one
161         * 
162         * @param other
163         * @return true if this Check has the same primitive field values as the given one
164         */
165        public boolean isLike(Check other);
166    }