View Javadoc
1   /*
2    * The Kuali Financial System, a comprehensive financial management system for higher education.
3    * 
4    * Copyright 2005-2014 The Kuali Foundation
5    * 
6    * This program is free software: you can redistribute it and/or modify
7    * it under the terms of the GNU Affero General Public License as
8    * published by the Free Software Foundation, either version 3 of the
9    * License, or (at your option) any later version.
10   * 
11   * This program is distributed in the hope that it will be useful,
12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14   * GNU Affero General Public License for more details.
15   * 
16   * You should have received a copy of the GNU Affero General Public License
17   * along with this program.  If not, see <http://www.gnu.org/licenses/>.
18   */
19  
20  package org.kuali.kfs.module.external.kc.businessobject;
21  
22  import java.sql.Date;
23  import java.sql.Timestamp;
24  
25  import org.kuali.kfs.integration.cg.ContractAndGrantsProposal;
26  import org.kuali.kfs.module.external.kc.dto.ProposalDTO;
27  import org.kuali.rice.core.api.util.type.KualiDecimal;
28  
29  /**
30   * See functional documentation.
31   */
32  public class Proposal implements ContractAndGrantsProposal {
33  
34      private Long proposalNumber;
35      private boolean proposalFederalPassThroughIndicator;
36      private String grantNumber;
37      private String federalPassThroughAgencyNumber;
38      private boolean active;
39  
40      private Award award;
41  
42      private Date proposalBeginningDate;
43      private Date proposalEndingDate;
44      private KualiDecimal proposalTotalAmount;
45      private KualiDecimal proposalDirectCostAmount;
46      private KualiDecimal proposalIndirectCostAmount;
47      private Date proposalRejectedDate;
48      private Timestamp proposalLastUpdateDate;
49      private Date proposalDueDate;
50      private KualiDecimal proposalTotalProjectAmount;
51      private Date proposalSubmissionDate;
52      private String oldProposalNumber;
53      private Date proposalClosingDate;
54      private String proposalAwardTypeCode;
55      private String agencyNumber;
56      private String proposalStatusCode;
57      private String cfdaNumber;
58      private String proposalFellowName;
59      private String proposalPurposeCode;
60      private String proposalProjectTitle;
61  
62      public Proposal(ProposalDTO kcProposal) {
63          setProposalNumber(kcProposal.getProposalNumber() == null ? null : Long.valueOf(kcProposal.getProposalNumber()));
64          setProposalBeginningDate(new Date(kcProposal.getRequestedStartDateTotal().getDate()));
65          setProposalEndingDate(new Date(kcProposal.getRequestedEndDateTotal().getDate()));
66          setProposalTotalAmount(kcProposal.getProposalTotalAmount());
67          setProposalDirectCostAmount(kcProposal.getTotalDirectCostTotal());
68          setProposalIndirectCostAmount(kcProposal.getTotalIndirectCostTotal());
69          setProposalLastUpdateDate(new Timestamp(kcProposal.getProposalLastUpdateDate().getDate()));
70          setProposalAwardTypeCode(kcProposal.getAwardTypeCode().toString());
71          setAgencyNumber(kcProposal.getSponsorCode());
72          setProposalStatusCode(kcProposal.getStatusCode().toString());
73          setCfdaNumber(kcProposal.getCfdaNumber());
74          setProposalProjectTitle(kcProposal.getTitle());
75          setGrantNumber(kcProposal.getSponsorAwardNumber());
76      }
77  
78      public Proposal() {
79  
80      }
81      /**
82       * Gets the proposalNumber attribute.
83       *
84       * @return Returns the proposalNumber
85       */
86      @Override
87      public Long getProposalNumber() {
88          return proposalNumber;
89      }
90  
91      /**
92       * Sets the proposalNumber attribute.
93       *
94       * @param proposalNumber The proposalNumber to set.
95       */
96      public void setProposalNumber(Long proposalNumber) {
97          this.proposalNumber = proposalNumber;
98      }
99  
100 
101     /**
102      * Gets the proposalFederalPassThroughIndicator attribute.
103      *
104      * @return Returns the proposalFederalPassThroughIndicator
105      */
106     @Override
107     public boolean getProposalFederalPassThroughIndicator() {
108         return proposalFederalPassThroughIndicator;
109     }
110 
111     /**
112      * Sets the proposalFederalPassThroughIndicator attribute.
113      *
114      * @param proposalFederalPassThroughIndicator The proposalFederalPassThroughIndicator to set.
115      */
116     public void setProposalFederalPassThroughIndicator(boolean proposalFederalPassThroughIndicator) {
117         this.proposalFederalPassThroughIndicator = proposalFederalPassThroughIndicator;
118     }
119 
120     /**
121      * Gets the grantNumber attribute.
122      *
123      * @return Returns the grantNumber
124      */
125     @Override
126     public String getGrantNumber() {
127         return grantNumber;
128     }
129 
130     /**
131      * Sets the grantNumber attribute.
132      *
133      * @param grantNumber The grantNumber to set.
134      */
135     public void setGrantNumber(String grantNumber) {
136         this.grantNumber = grantNumber;
137     }
138 
139     /**
140      * Gets the federalPassThroughAgencyNumber attribute.
141      *
142      * @return Returns the federalPassThroughAgencyNumber
143      */
144     @Override
145     public String getFederalPassThroughAgencyNumber() {
146         return federalPassThroughAgencyNumber;
147     }
148 
149     /**
150      * Sets the federalPassThroughAgencyNumber attribute.
151      *
152      * @param federalPassThroughAgencyNumber The federalPassThroughAgencyNumber to set.
153      */
154     public void setFederalPassThroughAgencyNumber(String federalPassThroughAgencyNumber) {
155         this.federalPassThroughAgencyNumber = federalPassThroughAgencyNumber;
156     }
157 
158 
159     /**
160      * Gets the active attribute.
161      *
162      * @return Returns the active.
163      */
164     @Override
165     public boolean isActive() {
166         return active;
167     }
168 
169     /**
170      * Sets the active attribute value.
171      *
172      * @param active The active to set.
173      */
174     public void setActive(boolean active) {
175         this.active = active;
176     }
177 
178     public void prepareForWorkflow() {}
179 
180     @Override
181     public void refresh() {}
182     @Override
183     public Award getAward() {
184         return award;
185     }
186     public void setAward(Award award) {
187         this.award = award;
188     }
189     @Override
190     public Date getProposalBeginningDate() {
191         return proposalBeginningDate;
192     }
193     public void setProposalBeginningDate(Date proposalBeginningDate) {
194         this.proposalBeginningDate = proposalBeginningDate;
195     }
196     @Override
197     public Date getProposalEndingDate() {
198         return proposalEndingDate;
199     }
200     public void setProposalEndingDate(Date proposalEndingDate) {
201         this.proposalEndingDate = proposalEndingDate;
202     }
203     @Override
204     public KualiDecimal getProposalTotalAmount() {
205         return proposalTotalAmount;
206     }
207     public void setProposalTotalAmount(KualiDecimal proposalTotalAmount) {
208         this.proposalTotalAmount = proposalTotalAmount;
209     }
210     @Override
211     public KualiDecimal getProposalDirectCostAmount() {
212         return proposalDirectCostAmount;
213     }
214     public void setProposalDirectCostAmount(KualiDecimal proposalDirectCostAmount) {
215         this.proposalDirectCostAmount = proposalDirectCostAmount;
216     }
217     @Override
218     public KualiDecimal getProposalIndirectCostAmount() {
219         return proposalIndirectCostAmount;
220     }
221     public void setProposalIndirectCostAmount(KualiDecimal proposalIndirectCostAmount) {
222         this.proposalIndirectCostAmount = proposalIndirectCostAmount;
223     }
224     @Override
225     public Date getProposalRejectedDate() {
226         return proposalRejectedDate;
227     }
228     public void setProposalRejectedDate(Date proposalRejectedDate) {
229         this.proposalRejectedDate = proposalRejectedDate;
230     }
231     @Override
232     public Timestamp getProposalLastUpdateDate() {
233         return proposalLastUpdateDate;
234     }
235     public void setProposalLastUpdateDate(Timestamp proposalLastUpdateDate) {
236         this.proposalLastUpdateDate = proposalLastUpdateDate;
237     }
238     @Override
239     public Date getProposalDueDate() {
240         return proposalDueDate;
241     }
242     public void setProposalDueDate(Date proposalDueDate) {
243         this.proposalDueDate = proposalDueDate;
244     }
245     @Override
246     public KualiDecimal getProposalTotalProjectAmount() {
247         return proposalTotalProjectAmount;
248     }
249     public void setProposalTotalProjectAmount(KualiDecimal proposalTotalProjectAmount) {
250         this.proposalTotalProjectAmount = proposalTotalProjectAmount;
251     }
252     @Override
253     public Date getProposalSubmissionDate() {
254         return proposalSubmissionDate;
255     }
256     public void setProposalSubmissionDate(Date proposalSubmissionDate) {
257         this.proposalSubmissionDate = proposalSubmissionDate;
258     }
259     @Override
260     public String getOldProposalNumber() {
261         return oldProposalNumber;
262     }
263     public void setOldProposalNumber(String oldProposalNumber) {
264         this.oldProposalNumber = oldProposalNumber;
265     }
266     @Override
267     public Date getProposalClosingDate() {
268         return proposalClosingDate;
269     }
270     public void setProposalClosingDate(Date proposalClosingDate) {
271         this.proposalClosingDate = proposalClosingDate;
272     }
273     @Override
274     public String getProposalAwardTypeCode() {
275         return proposalAwardTypeCode;
276     }
277     public void setProposalAwardTypeCode(String proposalAwardTypeCode) {
278         this.proposalAwardTypeCode = proposalAwardTypeCode;
279     }
280     @Override
281     public String getAgencyNumber() {
282         return agencyNumber;
283     }
284     public void setAgencyNumber(String agencyNumber) {
285         this.agencyNumber = agencyNumber;
286     }
287     @Override
288     public String getProposalStatusCode() {
289         return proposalStatusCode;
290     }
291     public void setProposalStatusCode(String proposalStatusCode) {
292         this.proposalStatusCode = proposalStatusCode;
293     }
294     @Override
295     public String getCfdaNumber() {
296         return cfdaNumber;
297     }
298     public void setCfdaNumber(String cfdaNumber) {
299         this.cfdaNumber = cfdaNumber;
300     }
301     @Override
302     public String getProposalFellowName() {
303         return proposalFellowName;
304     }
305     public void setProposalFellowName(String proposalFellowName) {
306         this.proposalFellowName = proposalFellowName;
307     }
308     @Override
309     public String getProposalPurposeCode() {
310         return proposalPurposeCode;
311     }
312     public void setProposalPurposeCode(String proposalPurposeCode) {
313         this.proposalPurposeCode = proposalPurposeCode;
314     }
315     @Override
316     public String getProposalProjectTitle() {
317         return proposalProjectTitle;
318     }
319     public void setProposalProjectTitle(String proposalProjectTitle) {
320         this.proposalProjectTitle = proposalProjectTitle;
321     }
322 }
323