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    /*
017     * Created on Jul 5, 2004
018     *
019     */
020    package org.kuali.kfs.pdp.businessobject;
021    
022    import java.util.LinkedHashMap;
023    import java.util.List;
024    
025    import org.apache.commons.lang.builder.EqualsBuilder;
026    import org.apache.commons.lang.builder.HashCodeBuilder;
027    import org.apache.commons.lang.builder.ToStringBuilder;
028    import org.kuali.kfs.coa.businessobject.Account;
029    import org.kuali.kfs.coa.businessobject.Chart;
030    import org.kuali.kfs.coa.businessobject.ObjectCode;
031    import org.kuali.kfs.coa.businessobject.SubAccount;
032    import org.kuali.kfs.coa.businessobject.SubObjectCode;
033    import org.kuali.kfs.sys.KFSPropertyConstants;
034    import org.kuali.kfs.sys.context.SpringContext;
035    import org.kuali.rice.kns.bo.Campus;
036    import org.kuali.rice.kns.bo.Country;
037    import org.kuali.rice.kns.bo.Inactivateable;
038    import org.kuali.rice.kns.bo.PersistableBusinessObjectBase;
039    import org.kuali.rice.kns.bo.PostalCode;
040    import org.kuali.rice.kns.bo.State;
041    import org.kuali.rice.kns.service.CountryService;
042    import org.kuali.rice.kns.service.KualiModuleService;
043    import org.kuali.rice.kns.service.PostalCodeService;
044    import org.kuali.rice.kns.service.StateService;
045    import org.kuali.rice.kns.util.KualiDecimal;
046    import org.kuali.rice.kns.util.KualiInteger;
047    import org.kuali.rice.kns.util.TypedArrayList;
048    
049    public class CustomerProfile extends PersistableBusinessObjectBase implements Inactivateable {
050        private static org.apache.log4j.Logger LOG = org.apache.log4j.Logger.getLogger(CustomerProfile.class);
051    
052        private String achPaymentDescription; // ACH_PMT_DESC
053        private String additionalCheckNoteTextLine1;
054        private String additionalCheckNoteTextLine2;
055        private String additionalCheckNoteTextLine3;
056        private String additionalCheckNoteTextLine4;
057        private String address1; // CUST_LN1_ADDR
058        private String address2; // CUST_LN2_ADDR
059        private String address3; // CUST_LN3_ADDR
060        private String address4; // CUST_LN4_ADDR
061        private boolean adviceCreate; // ADV_CRTE_IND
062        private String adviceHeaderText; // ADV_HDR_TXT
063        private String adviceSubjectLine;
064        private String adviceReturnEmailAddr;
065        private String chartCode; // FIN_COA_CD
066        private String checkHeaderNoteTextLine1;
067        private String checkHeaderNoteTextLine2;
068        private String checkHeaderNoteTextLine3;
069        private String checkHeaderNoteTextLine4;
070        private String city; // CUST_CTY_NM
071        private String contactFullName; // CUST_CNTC_FULL_NM
072        private String countryCode; // CUST_CNTRY_NM
073        private String customerDescription; // CUST_DESC
074        private String defaultChartCode; // DFLT_COA_CD
075        private String defaultAccountNumber; // DFLT_ACCT_NBR
076        private String defaultSubAccountNumber; // DFLT_SUB_ACCT_NBR
077        private String defaultObjectCode; // DFLT_OBJ_CD
078        private String defaultPhysicalCampusProcessingCode; // DFLT_PHYS_CMP_PROC_CD
079        private String defaultSubObjectCode; // DFLT_SUB_OBJ_CD
080        private boolean employeeCheck; // CUST_EMP_CHK_IND
081        private KualiDecimal fileThresholdAmount; // FL_THRSHLD_AMT
082        private String fileThresholdEmailAddress; // CUST_FILE_THRSHLD_EMAIL_ADDR
083        private KualiInteger id; // CUST_ID
084        private boolean nraReview; // CUST_NRA_RVW_IND
085        private String unitCode; // ORG_CD
086        private boolean ownershipCodeRequired; // CUST_OWNR_CD_REQ_IND
087        private boolean payeeIdRequired; // CUST_PAYEE_ID_REQ_IND
088        private KualiDecimal paymentThresholdAmount; // PMT_THRSHLD_AMT
089        private String paymentThresholdEmailAddress; // CUST_PMT_THRSHLD_EMAIL_ADDR
090        private String processingEmailAddr; // CUST_PRCS_EMAIL_ADDR
091        private String achTransactionType; 
092        private String stateCode; // CUST_ST_CD
093        private String subUnitCode; // SBUNT_CD
094        private String zipCode; // CUST_ZIP_CD
095        private boolean accountingEditRequired; // ACCTG_EDIT_REQ_IND
096        private boolean relieveLiabilities;
097        private boolean active; 
098        private boolean selectedForFormat;
099    
100        private Chart chartOfAccounts;
101        private Campus defaultProcessingCampus;
102        private Chart defaultChart;
103        private Account defaultAccount;
104        private SubAccount defaultSubAccount;
105        private ObjectCode defaultObject;
106        private SubObjectCode defaultSubObject;
107        private State state;
108        private PostalCode postalCode;
109        private Country country;
110        private ACHTransactionType transactionType;
111    
112        private List<CustomerBank> customerBanks;
113    
114    
115        public CustomerProfile() {
116            super();
117            customerBanks = new TypedArrayList(CustomerBank.class);;
118        }
119    
120        public String getCustomerShortName() {
121            return chartCode + "-" + unitCode + "-" + subUnitCode;
122        }
123    
124        public void setCustomerShortName(String customerShortName) {
125            
126        }
127    
128        public String getSortName() {
129            return (this.chartCode + this.unitCode + this.subUnitCode);
130        }
131    
132        /**
133         * @hibernate.property column="ACCTG_EDIT_REQ_IND" type="yes_no" not-null="true"
134         * @return Returns the accountingEditRequird.
135         */
136        public boolean getAccountingEditRequired() {
137            return accountingEditRequired;
138        }
139    
140        /**
141         * @param accountingEditRequird The accountingEditRequird to set.
142         */
143        public void setAccountingEditRequired(boolean accountingEditRequird) {
144            this.accountingEditRequired = accountingEditRequird;
145        }
146    
147        /**
148         * @hibernate.property column="DFLT_SUB_ACCT_NBR" length="5" not-null="true"
149         * @return Returns the defaultSubAccountNumber.
150         */
151        public String getDefaultSubAccountNumber() {
152            return defaultSubAccountNumber;
153        }
154    
155        /**
156         * @param defaultSubAccountNumber The defaultSubAccountNumber to set.
157         */
158        public void setDefaultSubAccountNumber(String defaultSubAccountNumber) {
159            this.defaultSubAccountNumber = defaultSubAccountNumber;
160        }
161    
162        public List<CustomerBank> getCustomerBanks() {
163            return customerBanks;
164        }
165    
166        public CustomerBank getCustomerBankByDisbursementType(String dt) {
167            for (CustomerBank element : customerBanks) {
168                if (element.getDisbursementType().getCode().equals(dt)) {
169                    return element;
170                }
171            }
172    
173            return null;
174        }
175    
176        public void setCustomerBanks(List<CustomerBank> cbs) {
177            customerBanks = cbs;
178        }
179    
180        public boolean equals(Object obj) {
181            if (!(obj instanceof CustomerProfile)) {
182                return false;
183            }
184            CustomerProfile tc = (CustomerProfile) obj;
185            return new EqualsBuilder().append(chartCode, tc.getChartCode()).append(unitCode, tc.getUnitCode()).append(subUnitCode, tc.getSubUnitCode()).isEquals();
186        }
187    
188        /**
189         * @hibernate.property column="ACH_PMT_DESC" length="100" not-null="false"
190         * @return Returns the achPaymentDescription.
191         */
192        public String getAchPaymentDescription() {
193            return achPaymentDescription;
194        }
195    
196        /**
197         * @hibernate.property column="ADDL_CHK_NTE_TXT_LN1" length="90" not-null="false"
198         * @return Returns the additionalCheckNoteTextLine1.
199         */
200        public String getAdditionalCheckNoteTextLine1() {
201            return additionalCheckNoteTextLine1;
202        }
203    
204        /**
205         * @hibernate.property column="ADDL_CHK_NTE_TXT_LN2" length="90" not-null="false"
206         * @return Returns the additionalCheckNoteTextLine2.
207         */
208        public String getAdditionalCheckNoteTextLine2() {
209            return additionalCheckNoteTextLine2;
210        }
211    
212        /**
213         * @hibernate.property column="ADDL_CHK_NTE_LN3_TXT" length="90" not-null="false"
214         * @return Returns the additionalCheckNoteTextLine3.
215         */
216        public String getAdditionalCheckNoteTextLine3() {
217            return additionalCheckNoteTextLine3;
218        }
219    
220        /**
221         * @hibernate.property column="ADDL_CHK_NTE_TXT_LN4" length="90" not-null="false"
222         * @return Returns the additionalCheckNoteTextLine4.
223         */
224        public String getAdditionalCheckNoteTextLine4() {
225            return additionalCheckNoteTextLine4;
226        }
227    
228        /**
229         * @hibernate.property column="CUST_LN1_ADDR" length="55" not-null="false"
230         * @return Returns the address1.
231         */
232        public String getAddress1() {
233            return address1;
234        }
235    
236        /**
237         * @hibernate.property column="CUST_LN2_ADDR" length="55" not-null="false"
238         * @return Returns the address2.
239         */
240        public String getAddress2() {
241            return address2;
242        }
243    
244        /**
245         * @hibernate.property column="CUST_LN3_ADDR" length="55" not-null="false"
246         * @return Returns the address3.
247         */
248        public String getAddress3() {
249            return address3;
250        }
251    
252        /**
253         * @hibernate.property column="CUST_LN4_ADDR" length="55" not-null="false"
254         * @return Returns the address4.
255         */
256        public String getAddress4() {
257            return address4;
258        }
259    
260        /**
261         * @hibernate.property column="ADV_HDR_TXT" length="200" not-null="false"
262         * @return Returns the adviceHeaderText.
263         */
264        public String getAdviceHeaderText() {
265            return adviceHeaderText;
266        }
267    
268        /**
269         * @hibernate.property column="FIN_COA_CD" length="2" not-null="true"
270         * @return Returns the chartCode.
271         */
272        public String getChartCode() {
273            return chartCode;
274        }
275    
276        /**
277         * @hibernate.property column="CHK_HDR_NTE_TXT_LN1" length="90" not-null="false"
278         * @return Returns the checkHeaderNoteTextLine1.
279         */
280        public String getCheckHeaderNoteTextLine1() {
281            return checkHeaderNoteTextLine1;
282        }
283    
284        /**
285         * @hibernate.property column="CHK_HDR_NTE_TXT_LN2" length="90" not-null="false"
286         * @return Returns the checkHeaderNoteTextLine2.
287         */
288        public String getCheckHeaderNoteTextLine2() {
289            return checkHeaderNoteTextLine2;
290        }
291    
292        /**
293         * @hibernate.property column="CHK_HDR_NTE_LN3_TXT" length="90" not-null="false"
294         * @return Returns the checkHeaderNoteTextLine3.
295         */
296        public String getCheckHeaderNoteTextLine3() {
297            return checkHeaderNoteTextLine3;
298        }
299    
300        /**
301         * @hibernate.property column="CHK_HDR_NTE_TXT_LN4" length="90" not-null="false"
302         * @return Returns the checkHeaderNoteTextLine4.
303         */
304        public String getCheckHeaderNoteTextLine4() {
305            return checkHeaderNoteTextLine4;
306        }
307    
308        /**
309         * @hibernate.property column="CUST_CTY_NM" length="30" not-null="false"
310         * @return Returns the city.
311         */
312        public String getCity() {
313            return city;
314        }
315    
316        /**
317         * @hibernate.property column="CUST_CNTC_FULL_NM" length="50" not-null="false"
318         * @return Returns the contactFullName.
319         */
320        public String getContactFullName() {
321            return contactFullName;
322        }
323    
324    
325        /**
326         * @hibernate.property column="CUST_DESC" length="50" not-null="false"
327         * @return Returns the customerDescription.
328         */
329        public String getCustomerDescription() {
330            return customerDescription;
331        }
332    
333        /**
334         * @hibernate.property column="DFLT_ACCT_NBR" length="7" not-null="true"
335         * @return Returns the defaultAccountNumber.
336         */
337        public String getDefaultAccountNumber() {
338            return defaultAccountNumber;
339        }
340    
341        /**
342         * @hibernate.property column="DFLT_COA_CD" length="2" not-null="true"
343         * @return Returns the defaultChartCode.
344         */
345        public String getDefaultChartCode() {
346            return defaultChartCode;
347        }
348    
349        /**
350         * @hibernate.property column="DFLT_OBJ_CD" length="4" not-null="true"
351         * @return Returns the defaultObjectCode.
352         */
353        public String getDefaultObjectCode() {
354            return defaultObjectCode;
355        }
356    
357        /**
358         * @hibernate.property column="DFLT_PHYS_CMP_PROC_CD" length="2" not-null="false"
359         * @return Returns the defaultPhysicalCampusProcessingCode.
360         */
361        public String getDefaultPhysicalCampusProcessingCode() {
362            return defaultPhysicalCampusProcessingCode;
363        }
364    
365        /**
366         * @hibernate.property column="DFLT_SUB_OBJ_CD" length="3" not-null="true"
367         * @return Returns the defaultSubObjectCode.
368         */
369        public String getDefaultSubObjectCode() {
370            return defaultSubObjectCode;
371        }
372    
373        /**
374         * @hibernate.property column="FL_THRSHLD_AMT" not-null="false"
375         * @return Returns the fileThresholdAmount.
376         */
377        public KualiDecimal getFileThresholdAmount() {
378            return fileThresholdAmount;
379        }
380    
381        /**
382         * @hibernate.property column="CUST_FILE_THRSHLD_EMAIL_ADDR" length="50" not-null="false"
383         * @return Returns the fileThresholdEmailAddress.
384         */
385        public String getFileThresholdEmailAddress() {
386            return fileThresholdEmailAddress;
387        }
388    
389        /**
390         * @return Returns the id.
391         * @hibernate.id column="CUST_ID" generator-class="sequence"
392         * @hibernate.generator-param name="sequence" value="PDP.PDP_CUST_ID_SEQ"
393         */
394        public KualiInteger getId() {
395            return id;
396        }
397    
398        /**
399         * @hibernate.property column="ORG_CD" length="4" not-null="true"
400         * @return Returns the unitCode.
401         */
402        public String getUnitCode() {
403            return unitCode;
404        }
405    
406        /**
407         * @hibernate.property column="PMT_THRSHLD_AMT" not-null="false"
408         * @return Returns the paymentThresholdAmount.
409         */
410        public KualiDecimal getPaymentThresholdAmount() {
411            return paymentThresholdAmount;
412        }
413    
414        /**
415         * @hibernate.property column="CUST_PMT_THRSHLD_EMAIL_ADDR" length="50" not-null="false"
416         * @return Returns the paymentThresholdEmailAddress.
417         */
418        public String getPaymentThresholdEmailAddress() {
419            return paymentThresholdEmailAddress;
420        }
421    
422        /**
423         * @hibernate.property column="CUST_PRCS_EMAIL_ADDR" length="50" not-null="false"
424         * @return Returns the processingEmailAddr.
425         */
426        public String getProcessingEmailAddr() {
427            return processingEmailAddr;
428        }
429    
430        public String getFirstFiftyProcessingEmailAddr() {
431            if ((processingEmailAddr != null) && (processingEmailAddr.length() > 50)) {
432                return processingEmailAddr.substring(0, 50);
433            }
434            return processingEmailAddr;
435        }
436    
437        /**
438         * @hibernate.property column="CUST_ST_CD" length="30" not-null="false"
439         * @return Returns the state.
440         */
441        public String getStateCode() {
442            return stateCode;
443        }
444    
445        /**
446         * @hibernate.property column="SBUNT_CD" length="4" not-null="true"
447         * @return Returns the subUnitCode.
448         */
449        public String getSubUnitCode() {
450            return subUnitCode;
451        }
452    
453        /**
454         * @hibernate.property column="CUST_ZIP_CD" length="20" not-null="false"
455         * @return Returns the zipCode.
456         */
457        public String getZipCode() {
458            return zipCode;
459        }
460    
461        public int hashCode() {
462            return new HashCodeBuilder(59, 67).append(chartCode).append(unitCode).append(subUnitCode).toHashCode();
463        }
464    
465        /**
466         * @hibernate.property column="ADV_CRTE_IND" type="yes_no" not-null="false"
467         * @return Returns the adviceCreate.
468         */
469        public boolean getAdviceCreate() {
470            return adviceCreate;
471        }
472    
473        /**
474         * @hibernate.property column="ADV_SUBJ_LN_TXT" length="40" not-null="false"
475         * @return Returns the adviceSubjectLine.
476         */
477        public String getAdviceSubjectLine() {
478            return adviceSubjectLine;
479        }
480    
481        /**
482         * @hibernate.property column="ADV_RTRN_EMAIL_ADDR" length="50" not-null="false"
483         * @return Returns the adviceReturnEmailAddr.
484         */
485        public String getAdviceReturnEmailAddr() {
486            return adviceReturnEmailAddr;
487        }
488    
489        /**
490         * @hibernate.property column="CUST_EMP_CHK_IND" type="yes_no" not-null="false"
491         * @return Returns the employeeCheck.
492         */
493        public boolean getEmployeeCheck() {
494            return employeeCheck;
495        }
496    
497        /**
498         * @hibernate.property column="CUST_NRA_RVW_IND" type="yes_no" not-null="false"
499         * @return Returns the nraReview.
500         */
501        public boolean getNraReview() {
502            return nraReview;
503        }
504    
505        /**
506         * @hibernate.property column="CUST_OWNR_CD_REQ_IND" type="yes_no" not-null="false"
507         * @return Returns the ownershipCodeRequired.
508         */
509        public boolean getOwnershipCodeRequired() {
510            return ownershipCodeRequired;
511        }
512    
513        /**
514         * @hibernate.property column="CUST_PAYEE_ID_REQ_IND" type="yes_no" not-null="false"
515         * @return Returns the payeeIdRequired.
516         */
517        public boolean getPayeeIdRequired() {
518            return payeeIdRequired;
519        }
520    
521        /**
522         * @param achPaymentDescription The achPaymentDescription to set.
523         */
524        public void setAchPaymentDescription(String achPaymentDescription) {
525            this.achPaymentDescription = achPaymentDescription;
526        }
527    
528        /**
529         * @param additionalCheckNoteTextLine1 The additionalCheckNoteTextLine1 to set.
530         */
531        public void setAdditionalCheckNoteTextLine1(String additionalCheckNoteTextLine1) {
532            this.additionalCheckNoteTextLine1 = additionalCheckNoteTextLine1;
533        }
534    
535        /**
536         * @param additionalCheckNoteTextLine2 The additionalCheckNoteTextLine2 to set.
537         */
538        public void setAdditionalCheckNoteTextLine2(String additionalCheckNoteTextLine2) {
539            this.additionalCheckNoteTextLine2 = additionalCheckNoteTextLine2;
540        }
541    
542        /**
543         * @param additionalCheckNoteTextLine3 The additionalCheckNoteTexLine3 to set.
544         */
545        public void setAdditionalCheckNoteTextLine3(String additionalCheckNoteTextLine3) {
546            this.additionalCheckNoteTextLine3 = additionalCheckNoteTextLine3;
547        }
548    
549        /**
550         * @param additionalCheckNoteTextLine4 The additionalCheckNoteTextLine4 to set.
551         */
552        public void setAdditionalCheckNoteTextLine4(String additionalCheckNoteTextLine4) {
553            this.additionalCheckNoteTextLine4 = additionalCheckNoteTextLine4;
554        }
555    
556        /**
557         * @param address1 The address1 to set.
558         */
559        public void setAddress1(String address1) {
560            this.address1 = address1;
561        }
562    
563        /**
564         * @param address2 The address2 to set.
565         */
566        public void setAddress2(String address2) {
567            this.address2 = address2;
568        }
569    
570        /**
571         * @param address3 The address3 to set.
572         */
573        public void setAddress3(String address3) {
574            this.address3 = address3;
575        }
576    
577        /**
578         * @param address4 The address4 to set.
579         */
580        public void setAddress4(String address4) {
581            this.address4 = address4;
582        }
583    
584        /**
585         * @param adviceCreate The adviceCreate to set.
586         */
587        public void setAdviceCreate(boolean adviceCreate) {
588            this.adviceCreate = adviceCreate;
589        }
590    
591        /**
592         * @param adviceHeaderText The adviceHeaderText to set.
593         */
594        public void setAdviceHeaderText(String adviceHeaderText) {
595            this.adviceHeaderText = adviceHeaderText;
596        }
597    
598        /**
599         * @param adviceSubjectLine The adviceSubjectLine to set.
600         */
601        public void setAdviceSubjectLine(String adviceSubjectLine) {
602            this.adviceSubjectLine = adviceSubjectLine;
603        }
604    
605        /**
606         * @param adviceReturnEmailAddr The adviceReturnEmailAddr to set.
607         */
608        public void setAdviceReturnEmailAddr(String adviceReturnEmailAddr) {
609            this.adviceReturnEmailAddr = adviceReturnEmailAddr;
610        }
611    
612        /**
613         * @param chartCode The chartCode to set.
614         */
615        public void setChartCode(String chartCode) {
616            this.chartCode = chartCode;
617        }
618    
619        /**
620         * @param checkHeaderNoteTextLine1 The checkHeaderNoteTextLine1 to set.
621         */
622        public void setCheckHeaderNoteTextLine1(String checkHeaderNoteTextLine1) {
623            this.checkHeaderNoteTextLine1 = checkHeaderNoteTextLine1;
624        }
625    
626        /**
627         * @param checkHeaderNoteTextLine2 The checkHeaderNoteTextLine2 to set.
628         */
629        public void setCheckHeaderNoteTextLine2(String checkHeaderNoteTextLine2) {
630            this.checkHeaderNoteTextLine2 = checkHeaderNoteTextLine2;
631        }
632    
633        /**
634         * @param checkHeaderNoteTextLine3 The checkHeaderNoteTextLine3 to set.
635         */
636        public void setCheckHeaderNoteTextLine3(String checkHeaderNoteTextLine3) {
637            this.checkHeaderNoteTextLine3 = checkHeaderNoteTextLine3;
638        }
639    
640        /**
641         * @param checkHeaderNoteTextLine4 The checkHeaderNoteTextLine4 to set.
642         */
643        public void setCheckHeaderNoteTextLine4(String checkHeaderNoteTextLine4) {
644            this.checkHeaderNoteTextLine4 = checkHeaderNoteTextLine4;
645        }
646    
647        /**
648         * @param city The city to set.
649         */
650        public void setCity(String city) {
651            this.city = city;
652        }
653    
654        /**
655         * @param contactFullName The contactFullName to set.
656         */
657        public void setContactFullName(String contactFullName) {
658            this.contactFullName = contactFullName;
659        }
660    
661        /**
662         * @param customerDescription The customerDescription to set.
663         */
664        public void setCustomerDescription(String customerDescription) {
665            this.customerDescription = customerDescription;
666        }
667    
668        /**
669         * @param defaultAccountNumber The defaultAccountNumber to set.
670         */
671        public void setDefaultAccountNumber(String defaultAccountNumber) {
672            this.defaultAccountNumber = defaultAccountNumber;
673        }
674    
675        /**
676         * @param defaultChartCode The defaultChartCode to set.
677         */
678        public void setDefaultChartCode(String defaultChartCode) {
679            this.defaultChartCode = defaultChartCode;
680        }
681    
682        /**
683         * @param defaultObjectCode The defaultObjectCode to set.
684         */
685        public void setDefaultObjectCode(String defaultObjectCode) {
686            this.defaultObjectCode = defaultObjectCode;
687        }
688    
689        /**
690         * @param defaultPhysicalCampusProcessingCode The defaultPhysicalCampusProcessingCode to set.
691         */
692        public void setDefaultPhysicalCampusProcessingCode(String defaultPhysicalCampusProcessingCode) {
693            this.defaultPhysicalCampusProcessingCode = defaultPhysicalCampusProcessingCode;
694        }
695    
696        /**
697         * @param defaultSubObjectCode The defaultSubObjectCode to set.
698         */
699        public void setDefaultSubObjectCode(String defaultSubObjectCode) {
700            this.defaultSubObjectCode = defaultSubObjectCode;
701        }
702    
703        /**
704         * @param employeeCheck The employeeCheck to set.
705         */
706        public void setEmployeeCheck(boolean employeeCheck) {
707            this.employeeCheck = employeeCheck;
708        }
709    
710        /**
711         * @param fileThresholdAmount The fileThresholdAmount to set.
712         */
713        public void setFileThresholdAmount(KualiDecimal fileThresholdAmount) {
714            this.fileThresholdAmount = fileThresholdAmount;
715        }
716    
717        /**
718         * @param fileThresholdEmailAddress The fileThresholdEmailAddress to set.
719         */
720        public void setFileThresholdEmailAddress(String fileThresholdEmailAddress) {
721            this.fileThresholdEmailAddress = fileThresholdEmailAddress;
722        }
723    
724        /**
725         * @param id The id to set.
726         */
727        public void setId(KualiInteger id) {
728            this.id = id;
729        }
730    
731        /**
732         * @param nraReview The nraReview to set.
733         */
734        public void setNraReview(boolean nraReview) {
735            this.nraReview = nraReview;
736        }
737    
738        /**
739         * @param unitCode The unitCode to set.
740         */
741        public void setUnitCode(String orgCode) {
742            this.unitCode = orgCode;
743        }
744    
745        /**
746         * @param ownershipCodeRequired The ownershipCodeRequired to set.
747         */
748        public void setOwnershipCodeRequired(boolean ownershipCodeRequired) {
749            this.ownershipCodeRequired = ownershipCodeRequired;
750        }
751    
752        /**
753         * @param payeeIdRequired The payeeIdRequired to set.
754         */
755        public void setPayeeIdRequired(boolean payeeIdRequired) {
756            this.payeeIdRequired = payeeIdRequired;
757        }
758    
759        /**
760         * @param paymentThresholdAmount The paymentThresholdAmount to set.
761         */
762        public void setPaymentThresholdAmount(KualiDecimal paymentThresholdAmount) {
763            this.paymentThresholdAmount = paymentThresholdAmount;
764        }
765    
766        /**
767         * @param paymentThresholdEmailAddress The paymentThresholdEmailAddress to set.
768         */
769        public void setPaymentThresholdEmailAddress(String paymentThresholdEmailAddress) {
770            this.paymentThresholdEmailAddress = paymentThresholdEmailAddress;
771        }
772    
773        /**
774         * @param processingEmailAddr The processingEmailAddr to set.
775         */
776        public void setProcessingEmailAddr(String processingEmailAddr) {
777            this.processingEmailAddr = processingEmailAddr;
778        }
779    
780        /**
781         * @param state The state to set.
782         */
783        public void setStateCode(String state) {
784            this.stateCode = state;
785        }
786    
787        /**
788         * @param subUnitCode The subUnitCode to set.
789         */
790        public void setSubUnitCode(String subUnitCode) {
791            this.subUnitCode = subUnitCode;
792        }
793    
794        /**
795         * @param zipCode The zipCode to set.
796         */
797        public void setZipCode(String zipCode) {
798            this.zipCode = zipCode;
799        }
800    
801        /**
802         * @return Returns the relieveLiabilities.
803         */
804        public boolean getRelieveLiabilities() {
805            return relieveLiabilities;
806        }
807    
808        /**
809         * @param relieveLiabilities The relieveLiabilities to set.
810         */
811        public void setRelieveLiabilities(boolean relieveLiabilities) {
812            this.relieveLiabilities = relieveLiabilities;
813        }
814    
815        public String toString() {
816            return new ToStringBuilder(this).append("chartCode", this.chartCode).append("unitCode", this.unitCode).append("subUnitCode", this.subUnitCode).toString();
817        }
818    
819        public Chart getChartOfAccounts() {
820            return chartOfAccounts;
821        }
822    
823        public void setChartOfAccounts(Chart chartOfAccounts) {
824            this.chartOfAccounts = chartOfAccounts;
825        }
826    
827    
828        /**
829         * Gets the defaultProcessingCampus attribute.
830         * 
831         * @return Returns the defaultProcessingCampus.
832         */
833        public Campus getDefaultProcessingCampus() {
834            return defaultProcessingCampus = (Campus) SpringContext.getBean(KualiModuleService.class).getResponsibleModuleService(Campus.class).retrieveExternalizableBusinessObjectIfNecessary(this, defaultProcessingCampus, "defaultProcessingCampus");
835        }
836    
837        /**
838         * Sets the defaultProcessingCampus attribute value.
839         * 
840         * @param defaultProcessingCampus The defaultProcessingCampus to set.
841         */
842        public void setDefaultProcessingCampus(Campus defaultProcessingCampus) {
843            this.defaultProcessingCampus = defaultProcessingCampus;
844        }
845    
846        /**
847         * Gets the defaultChart attribute.
848         * 
849         * @return Returns the defaultChart.
850         */
851        public Chart getDefaultChart() {
852            return defaultChart;
853        }
854    
855        /**
856         * Sets the defaultChart attribute value.
857         * 
858         * @param defaultChart The defaultChart to set.
859         */
860        public void setDefaultChart(Chart defaultChart) {
861            this.defaultChart = defaultChart;
862        }
863    
864        /**
865         * Gets the defaultAccount attribute.
866         * 
867         * @return Returns the defaultAccount.
868         */
869        public Account getDefaultAccount() {
870            return defaultAccount;
871        }
872    
873        /**
874         * Sets the defaultAccount attribute value.
875         * 
876         * @param defaultAccount The defaultAccount to set.
877         */
878        public void setDefaultAccount(Account defaultAccount) {
879            this.defaultAccount = defaultAccount;
880        }
881    
882        /**
883         * Gets the defaultSubAccount attribute.
884         * 
885         * @return Returns the defaultSubAccount.
886         */
887        public SubAccount getDefaultSubAccount() {
888            return defaultSubAccount;
889        }
890    
891        /**
892         * Sets the defaultSubAccount attribute value.
893         * 
894         * @param defaultSubAccount The defaultSubAccount to set.
895         */
896        public void setDefaultSubAccount(SubAccount defaultSubAccount) {
897            this.defaultSubAccount = defaultSubAccount;
898        }
899    
900        /**
901         * Gets the defaultObject attribute.
902         * 
903         * @return Returns the defaultObject.
904         */
905        public ObjectCode getDefaultObject() {
906            return defaultObject;
907        }
908    
909        /**
910         * Sets the defaultObject attribute value.
911         * 
912         * @param defaultObject The defaultObject to set.
913         */
914        public void setDefaultObject(ObjectCode defaultObject) {
915            this.defaultObject = defaultObject;
916        }
917    
918        /**
919         * Gets the defaultSubObject attribute.
920         * 
921         * @return Returns the defaultSubObject.
922         */
923        public SubObjectCode getDefaultSubObject() {
924            return defaultSubObject;
925        }
926    
927        /**
928         * Sets the defaultSubObject attribute value.
929         * 
930         * @param defaultSubObject The defaultSubObject to set.
931         */
932        public void setDefaultSubObject(SubObjectCode defaultSubObject) {
933            this.defaultSubObject = defaultSubObject;
934        }
935    
936        /**
937         * Gets the state attribute.
938         * 
939         * @return Returns the state.
940         */
941        public State getState() {
942            state = SpringContext.getBean(StateService.class).getByPrimaryIdIfNecessary(this.stateCode, this.state);
943            return state;
944        }
945    
946        /**
947         * Sets the state attribute value.
948         * 
949         * @param state The state to set.
950         */
951        public void setState(State state) {
952            this.state = state;
953        }
954    
955        /**
956         * Gets the postalCode attribute.
957         * 
958         * @return Returns the postalCode.
959         */
960        public PostalCode getPostalCode() {
961            postalCode = SpringContext.getBean(PostalCodeService.class).getByPostalCodeInDefaultCountryIfNecessary(this.zipCode, this.postalCode);
962            return postalCode;
963        }
964    
965        /**
966         * Sets the postalCode attribute value.
967         * 
968         * @param postalCode The postalCode to set.
969         */
970        public void setPostalCode(PostalCode postalCode) {
971            this.postalCode = postalCode;
972        }
973    
974        /**
975         * Gets the country attribute.
976         * 
977         * @return Returns the country.
978         */
979        public Country getCountry() {
980            country = SpringContext.getBean(CountryService.class).getByPrimaryIdIfNecessary(this.countryCode, this.country);
981            return country;
982        }
983    
984        /**
985         * Sets the country attribute value.
986         * 
987         * @param country The country to set.
988         */
989        public void setCountry(Country country) {
990            this.country = country;
991        }
992    
993        /**
994         * @see org.kuali.rice.kns.bo.Inactivateable#isActive()
995         */
996        public boolean isActive() {
997            return active;
998        }
999    
1000        /**
1001         * @see org.kuali.rice.kns.bo.Inactivateable#setActive(boolean)
1002         */
1003        public void setActive(boolean active) {
1004            this.active = active;
1005        }
1006    
1007        /**
1008         * Gets the countryCode attribute. 
1009         * @return Returns the countryCode.
1010         */
1011        public String getCountryCode() {
1012            return countryCode;
1013        }
1014    
1015        /**
1016         * Sets the countryCode attribute value.
1017         * @param countryCode The countryCode to set.
1018         */
1019        public void setCountryCode(String countryCode) {
1020            this.countryCode = countryCode;
1021        }
1022    
1023        /**
1024         * Gets the achTransactionType attribute.
1025         * 
1026         * @return Returns the achTransactionType.
1027         */
1028        public String getAchTransactionType() {
1029            return achTransactionType;
1030        }
1031    
1032        /**
1033         * Sets the achTransactionType attribute value.
1034         * 
1035         * @param achTransactionType The achTransactionType to set.
1036         */
1037        public void setAchTransactionType(String achTransactionType) {
1038            this.achTransactionType = achTransactionType;
1039        }
1040    
1041        /**
1042         * Gets the transactionType attribute.
1043         * 
1044         * @return Returns the transactionType.
1045         */
1046        public ACHTransactionType getTransactionType() {
1047            return transactionType;
1048        }
1049    
1050        /**
1051         * Sets the transactionType attribute value.
1052         * 
1053         * @param transactionType The transactionType to set.
1054         */
1055        public void setTransactionType(ACHTransactionType transactionType) {
1056            this.transactionType = transactionType;
1057        }
1058    
1059        /**
1060         * @see org.kuali.rice.kns.bo.BusinessObjectBase#toStringMapper()
1061         */
1062        protected LinkedHashMap toStringMapper() {
1063            LinkedHashMap m = new LinkedHashMap();
1064            m.put(KFSPropertyConstants.ID, this.id);
1065            
1066            return m;
1067        }
1068    
1069        /**
1070         * This method gets the selected for format flag.
1071         * @return selectedForFormat
1072         */
1073        public boolean isSelectedForFormat() {
1074            return selectedForFormat;
1075    }
1076        /**
1077         * This method sets the selectedForFormat value.
1078         * @param sameCampus
1079         */
1080        public void setSelectedForFormat(boolean sameCampus) {
1081            this.selectedForFormat = sameCampus;
1082        }
1083        
1084    }