1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.kuali.kfs.module.ar.businessobject;
20
21 import java.util.Arrays;
22 import java.util.LinkedHashMap;
23
24 import org.apache.commons.lang.StringUtils;
25 import org.kuali.kfs.module.ar.ArKeyConstants;
26 import org.kuali.kfs.module.ar.ArPropertyConstants;
27 import org.kuali.kfs.sys.KFSPropertyConstants;
28 import org.kuali.kfs.sys.ObjectUtil;
29 import org.kuali.kfs.sys.context.SpringContext;
30 import org.kuali.rice.core.api.config.property.ConfigurationService;
31 import org.kuali.rice.krad.bo.PersistableBusinessObjectBase;
32 import org.kuali.rice.krad.util.ObjectUtils;
33
34 public class InvoiceSuspensionCategory extends PersistableBusinessObjectBase {
35
36 private String documentNumber;
37 private String suspensionCategoryCode;
38
39 public InvoiceSuspensionCategory() {
40 super();
41 }
42
43
44
45
46
47
48 public InvoiceSuspensionCategory(String documentNumber, String suspensionCategoryCode) {
49 this.documentNumber = documentNumber;
50 this.suspensionCategoryCode = suspensionCategoryCode;
51 }
52
53
54
55
56
57
58 public String getDocumentNumber() {
59 return documentNumber;
60 }
61
62
63
64
65
66
67 public void setDocumentNumber(String documentNumber) {
68 this.documentNumber = documentNumber;
69 }
70
71
72
73
74
75
76 public String getSuspensionCategoryCode() {
77 return suspensionCategoryCode;
78 }
79
80
81
82
83
84
85 public void setSuspensionCategoryCode(String suspensionCategoryCode) {
86 this.suspensionCategoryCode = suspensionCategoryCode;
87 }
88
89
90
91
92
93
94 public String getSuspensionCategoryDescription() {
95 return SpringContext.getBean(ConfigurationService.class).getPropertyValueAsString(ArKeyConstants.INVOICE_DOCUMENT_SUSPENSION_CATEGORY + suspensionCategoryCode);
96 }
97
98
99
100
101 @Override
102 public boolean equals(Object obj) {
103 if (ObjectUtils.isNotNull(obj)) {
104 if (this.getClass().equals(obj.getClass())) {
105 InvoiceSuspensionCategory other = (InvoiceSuspensionCategory) obj;
106 return (StringUtils.equalsIgnoreCase(this.documentNumber, other.documentNumber) &&
107 StringUtils.equalsIgnoreCase(this.suspensionCategoryCode, other.suspensionCategoryCode));
108 }
109 }
110 return false;
111 }
112
113
114
115
116 @Override
117 public int hashCode() {
118 return ObjectUtil.generateHashCode(this, Arrays.asList(KFSPropertyConstants.DOCUMENT_NUMBER, ArPropertyConstants.SuspensionCategoryReportFields.SUSPENSION_CATEGORY_CODE));
119 }
120
121
122
123
124 protected LinkedHashMap toStringMapper_RICE20_REFACTORME() {
125 LinkedHashMap m = new LinkedHashMap();
126 m.put(KFSPropertyConstants.DOCUMENT_NUMBER, getDocumentNumber());
127 m.put("suspensionCategoryCode", getSuspensionCategoryCode());
128 return m;
129 }
130 }