1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.kuali.kfs.sys.web.struts;
20
21 import java.util.ArrayList;
22 import java.util.List;
23
24 import org.apache.commons.lang.StringUtils;
25 import org.kuali.kfs.sys.KFSKeyConstants;
26 import org.kuali.kfs.sys.businessobject.ElectronicPaymentClaim;
27 import org.kuali.kfs.sys.context.SpringContext;
28 import org.kuali.kfs.sys.service.ElectronicPaymentClaimingDocumentGenerationStrategy;
29 import org.kuali.kfs.sys.service.ElectronicPaymentClaimingService;
30 import org.kuali.rice.kim.api.identity.Person;
31 import org.kuali.rice.kns.web.struts.form.KualiForm;
32 import org.kuali.rice.krad.util.GlobalVariables;
33
34 public class ElectronicFundTransferForm extends KualiForm {
35 private List<ElectronicPaymentClaim> claims;
36 private List<ElectronicPaymentClaimingDocumentGenerationStrategy> availableClaimingDocumentStrategies;
37 private List<ElectronicPaymentClaimClaimedHelper> claimedByCheckboxHelpers;
38 private String chosenElectronicPaymentClaimingDocumentCode;
39 private String hasDocumentation;
40
41
42
43
44 public ElectronicFundTransferForm() {
45 claims = new ArrayList<ElectronicPaymentClaim>();
46 claimedByCheckboxHelpers = new ArrayList<ElectronicPaymentClaimClaimedHelper>();
47 }
48
49
50
51
52
53 public List<ElectronicPaymentClaimingDocumentGenerationStrategy> getAvailableClaimingDocumentStrategies() {
54 return availableClaimingDocumentStrategies;
55 }
56
57
58
59
60 public void setAvailableClaimingDocumentStrategies(List<ElectronicPaymentClaimingDocumentGenerationStrategy> availableClaimingDocuments) {
61 this.availableClaimingDocumentStrategies = availableClaimingDocuments;
62 }
63
64 public boolean hasAvailableClaimingDocumentStrategies() {
65 return availableClaimingDocumentStrategies !=null && !availableClaimingDocumentStrategies.isEmpty();
66 }
67
68
69
70
71 public String getChosenElectronicPaymentClaimingDocumentCode() {
72 return chosenElectronicPaymentClaimingDocumentCode;
73 }
74
75
76
77
78 public void setChosenElectronicPaymentClaimingDocumentCode(String chosenElectronicPaymentClaimingDocumentCode) {
79 this.chosenElectronicPaymentClaimingDocumentCode = chosenElectronicPaymentClaimingDocumentCode;
80 }
81
82
83
84
85 public List<ElectronicPaymentClaim> getClaims() {
86 return claims;
87 }
88
89
90
91
92
93 public ElectronicPaymentClaim getClaim(int i) {
94 while (claims.size() <= i) {
95 claims.add(new ElectronicPaymentClaim());
96 }
97 return claims.get(i);
98 }
99
100
101
102
103
104 public void setClaim(ElectronicPaymentClaim claim, int i) {
105 while (claims.size() <= i) {
106 claims.add(new ElectronicPaymentClaim());
107 }
108 claims.add(i, claim);
109 }
110
111
112
113
114 public void setClaims(List<ElectronicPaymentClaim> claims) {
115 this.claims = claims;
116 }
117
118
119
120
121
122 public String getHasDocumentation() {
123 return hasDocumentation;
124 }
125
126
127
128
129
130 public void setHasDocumentation(String hasDocumentation) {
131 this.hasDocumentation = hasDocumentation;
132 }
133
134
135
136
137
138 public boolean isProperlyDocumented() {
139 return StringUtils.isNotBlank(this.hasDocumentation) && this.hasDocumentation.equals("Yep");
140 }
141
142
143
144
145
146 public boolean isAllowElectronicFundsTransferAdministration() {
147 Person currentUser = GlobalVariables.getUserSession().getPerson();
148
149 return SpringContext.getBean(ElectronicPaymentClaimingService.class).isAuthorizedForClaimingElectronicPayment(currentUser, null);
150 }
151
152
153
154
155 public String getDocumentationMessageKey() {
156 return KFSKeyConstants.ElectronicPaymentClaim.MESSAGE_EFT_CLAIMING_DOCUMENTATION;
157 }
158
159
160
161
162 public String getDocumentChoiceMessageKey() {
163 return KFSKeyConstants.ElectronicPaymentClaim.MESSAGE_EFT_DOCUMENT_CHOICE;
164 }
165
166
167
168
169 public String getPreviouslyClaimedHeaderKey() {
170 return KFSKeyConstants.ElectronicPaymentClaim.MESSAGE_EFT_PREVIOUSLY_CLAIMED_HEADER;
171 }
172
173
174
175
176 public String getClaimingDocumentNumberHeaderKey() {
177 return KFSKeyConstants.ElectronicPaymentClaim.MESSAGE_EFT_CLAIMING_DOCUMENT_NUMBER_HEADER;
178 }
179
180
181
182
183
184 public List<ElectronicPaymentClaimClaimedHelper> getClaimedByCheckboxHelpers() {
185 return claimedByCheckboxHelpers;
186 }
187
188
189
190
191
192 public void setClaimedByCheckboxHelpers(List<ElectronicPaymentClaimClaimedHelper> claimedByCheckboxHelpers) {
193 this.claimedByCheckboxHelpers = claimedByCheckboxHelpers;
194 }
195
196
197
198
199
200
201 public void setClaimedByCheckboxHelper(ElectronicPaymentClaimClaimedHelper claimedHelper, int index) {
202 while (claimedByCheckboxHelpers.size() <= index) {
203 claimedByCheckboxHelpers.add(new ElectronicPaymentClaimClaimedHelper());
204 }
205 claimedByCheckboxHelpers.set(index, claimedHelper);
206 }
207
208
209
210
211
212 public ElectronicPaymentClaimClaimedHelper getClaimedByCheckboxHelper(int index) {
213 while (claimedByCheckboxHelpers.size() <= index) {
214 claimedByCheckboxHelpers.add(new ElectronicPaymentClaimClaimedHelper());
215 }
216 return claimedByCheckboxHelpers.get(index);
217 }
218 }
219