001: /*
002: * Copyright 2007 The Kuali Foundation.
003: *
004: * Licensed under the Educational Community License, Version 1.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/ecl1.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.module.purap.document;
017:
018: import java.util.Date;
019: import java.util.List;
020:
021: import org.kuali.core.document.DocumentBase;
022: import org.kuali.kfs.bo.SourceAccountingLine;
023:
024: /**
025: * Purchase Order Document subset containing fields needed for routing and searchable attributes for workflow, in order to reduce
026: * data transfer and improve performance.
027: */
028: public class WorkflowXmlPurchaseOrderDocument extends DocumentBase {
029:
030: // fields from LedgerPostingDocumentBase
031: protected Integer postingYear;
032:
033: // fields from PurchasingAccountsPayableDocumentBase
034: private Integer purapDocumentIdentifier;
035: private Integer vendorHeaderGeneratedIdentifier;
036: private Integer vendorDetailAssignedIdentifier;
037: private String vendorName;
038: private String vendorNumber;
039: private List<SourceAccountingLine> accountsForRouting;
040: private String statusCode;
041:
042: // fields from PurchasingDocumentBase
043: private String chartOfAccountsCode;
044: private String organizationCode;
045: private String deliveryCampusCode;
046: private Date deliveryRequiredDate;
047: private String requestorPersonName;
048: private Integer contractManagerCode;
049: private String vendorContractName;
050: private boolean purchaseOrderAutomaticIndicator;
051: private String purchaseOrderTransmissionMethodCode;
052:
053: // fields from PurchaseOrderDocument
054: private Integer requisitionIdentifier;
055: private Integer purchaseOrderPreviousIdentifier;
056: private boolean purchaseOrderCurrentIndicator;
057: private Date purchaseOrderCreateDate;
058: private Date purchaseOrderLastTransmitDate;
059:
060: // dummy reference objects, with same field names as the original reference objects,
061: // but only contain the fields that are actually used in workflow
062: private DummyContractManager contractManager;
063: private DummyVendorContract vendorContract;
064: private DummyStatus status;
065:
066: /**
067: * Dummy Reference Object for Contract Manager.
068: */
069: public class DummyContractManager {
070: private String contractManagerName;
071:
072: /**
073: * Constructs a Dummy Contract Manager.
074: *
075: * @param contractManagerName String name of the contract manager.
076: */
077: public DummyContractManager(String contractManagerName) {
078: this .contractManagerName = contractManagerName;
079: }
080:
081: public String getContractManagerName() {
082: return this .contractManagerName;
083: }
084:
085: public void setContractManagerName(String contractManagerName) {
086: this .contractManagerName = contractManagerName;
087: }
088: }
089:
090: /**
091: * Dummy Reference Object for Vendor Contract.
092: */
093: public class DummyVendorContract {
094: private String vendorContractName;
095:
096: /**
097: * Constructs a Dummy Vendor Contract.
098: *
099: * @param vendorContractName String name assigned to the contract
100: */
101: public DummyVendorContract(String vendorContractName) {
102: this .vendorContractName = vendorContractName;
103: }
104:
105: public String getVendorContractName() {
106: return this .vendorContractName;
107: }
108:
109: public void setVendorContractName(String vendorContractName) {
110: this .vendorContractName = vendorContractName;
111: }
112: }
113:
114: /**
115: * Dummy Reference Object for Status.
116: */
117: public class DummyStatus {
118: private String statusDescription;
119:
120: /**
121: * Constructs a Dummy Status.
122: *
123: * @param statusDescription String description of the status
124: */
125: public DummyStatus(String statusDescription) {
126: this .statusDescription = statusDescription;
127: }
128:
129: public String getStatusDescription() {
130: return this .statusDescription;
131: }
132:
133: public void setStatusDescription(String statusDescription) {
134: this .statusDescription = statusDescription;
135: }
136: }
137:
138: /**
139: * Constructs a WorkflowXmlPurchaseOrderDocument.java.
140: */
141: public WorkflowXmlPurchaseOrderDocument() {
142: super ();
143: }
144:
145: /**
146: * Constructor to populate from PurchaseOrderDocument
147: *
148: * @param document A PurchaseOrderDocument.
149: */
150: public WorkflowXmlPurchaseOrderDocument(
151: PurchaseOrderDocument document) {
152: super ();
153:
154: this .documentHeader = document.getDocumentHeader();
155: this .documentNumber = document.getDocumentNumber();
156: this .postingYear = document.getPostingYear();
157:
158: this .purapDocumentIdentifier = document
159: .getPurapDocumentIdentifier();
160: this .vendorHeaderGeneratedIdentifier = document
161: .getVendorHeaderGeneratedIdentifier();
162: this .vendorDetailAssignedIdentifier = document
163: .getVendorDetailAssignedIdentifier();
164: this .vendorName = document.getVendorName();
165: this .vendorNumber = document.getVendorNumber();
166: this .accountsForRouting = document.getAccountsForRouting();
167: this .statusCode = document.getStatusCode();
168:
169: this .chartOfAccountsCode = document.getChartOfAccountsCode();
170: this .organizationCode = document.getOrganizationCode();
171: this .deliveryCampusCode = document.getDeliveryCampusCode();
172: this .deliveryRequiredDate = document.getDeliveryRequiredDate();
173: this .requestorPersonName = document.getRequestorPersonName();
174: this .contractManagerCode = document.getContractManagerCode();
175: this .vendorContractName = document.getVendorContractName();
176: this .purchaseOrderAutomaticIndicator = document
177: .getPurchaseOrderAutomaticIndicator();
178: this .purchaseOrderTransmissionMethodCode = document
179: .getPurchaseOrderTransmissionMethodCode();
180:
181: this .requisitionIdentifier = document
182: .getRequisitionIdentifier();
183: this .purchaseOrderPreviousIdentifier = document
184: .getPurchaseOrderPreviousIdentifier();
185: this .purchaseOrderCurrentIndicator = document
186: .isPurchaseOrderCurrentIndicator();
187: this .purchaseOrderCreateDate = document
188: .getPurchaseOrderCreateDate();
189: this .purchaseOrderLastTransmitDate = document
190: .getPurchaseOrderLastTransmitDate();
191:
192: if (document.getContractManager() != null)
193: this .contractManager = new DummyContractManager(document
194: .getContractManager().getContractManagerName());
195: if (document.getVendorContract() != null)
196: this .vendorContract = new DummyVendorContract(document
197: .getVendorContract().getVendorContractName());
198: this .status = new DummyStatus(document.getStatus()
199: .getStatusDescription());
200: }
201:
202: public List<SourceAccountingLine> getAccountsForRouting() {
203: return accountsForRouting;
204: }
205:
206: public void setAccountsForRouting(
207: List<SourceAccountingLine> accountsForRouting) {
208: this .accountsForRouting = accountsForRouting;
209: }
210:
211: public String getChartOfAccountsCode() {
212: return chartOfAccountsCode;
213: }
214:
215: public void setChartOfAccountsCode(String chartOfAccountsCode) {
216: this .chartOfAccountsCode = chartOfAccountsCode;
217: }
218:
219: public DummyContractManager getContractManager() {
220: return contractManager;
221: }
222:
223: public void setContractManager(DummyContractManager contractManager) {
224: this .contractManager = contractManager;
225: }
226:
227: public Integer getContractManagerCode() {
228: return contractManagerCode;
229: }
230:
231: public void setContractManagerCode(Integer contractManagerCode) {
232: this .contractManagerCode = contractManagerCode;
233: }
234:
235: public String getDeliveryCampusCode() {
236: return deliveryCampusCode;
237: }
238:
239: public void setDeliveryCampusCode(String deliveryCampusCode) {
240: this .deliveryCampusCode = deliveryCampusCode;
241: }
242:
243: public Date getDeliveryRequiredDate() {
244: return deliveryRequiredDate;
245: }
246:
247: public void setDeliveryRequiredDate(Date deliveryRequiredDate) {
248: this .deliveryRequiredDate = deliveryRequiredDate;
249: }
250:
251: public String getOrganizationCode() {
252: return organizationCode;
253: }
254:
255: public void setOrganizationCode(String organizationCode) {
256: this .organizationCode = organizationCode;
257: }
258:
259: public Integer getPostingYear() {
260: return postingYear;
261: }
262:
263: public void setPostingYear(Integer postingYear) {
264: this .postingYear = postingYear;
265: }
266:
267: public Integer getPurapDocumentIdentifier() {
268: return purapDocumentIdentifier;
269: }
270:
271: public void setPurapDocumentIdentifier(
272: Integer purapDocumentIdentifier) {
273: this .purapDocumentIdentifier = purapDocumentIdentifier;
274: }
275:
276: public boolean isPurchaseOrderAutomaticIndicator() {
277: return purchaseOrderAutomaticIndicator;
278: }
279:
280: public void setPurchaseOrderAutomaticIndicator(
281: boolean purchaseOrderAutomaticIndicator) {
282: this .purchaseOrderAutomaticIndicator = purchaseOrderAutomaticIndicator;
283: }
284:
285: public Date getPurchaseOrderCreateDate() {
286: return purchaseOrderCreateDate;
287: }
288:
289: public void setPurchaseOrderCreateDate(Date purchaseOrderCreateDate) {
290: this .purchaseOrderCreateDate = purchaseOrderCreateDate;
291: }
292:
293: public boolean isPurchaseOrderCurrentIndicator() {
294: return purchaseOrderCurrentIndicator;
295: }
296:
297: public void setPurchaseOrderCurrentIndicator(
298: boolean purchaseOrderCurrentIndicator) {
299: this .purchaseOrderCurrentIndicator = purchaseOrderCurrentIndicator;
300: }
301:
302: public Date getPurchaseOrderLastTransmitDate() {
303: return purchaseOrderLastTransmitDate;
304: }
305:
306: public void setPurchaseOrderLastTransmitDate(
307: Date purchaseOrderLastTransmitDate) {
308: this .purchaseOrderLastTransmitDate = purchaseOrderLastTransmitDate;
309: }
310:
311: public Integer getPurchaseOrderPreviousIdentifier() {
312: return purchaseOrderPreviousIdentifier;
313: }
314:
315: public void setPurchaseOrderPreviousIdentifier(
316: Integer purchaseOrderPreviousIdentifier) {
317: this .purchaseOrderPreviousIdentifier = purchaseOrderPreviousIdentifier;
318: }
319:
320: public String getPurchaseOrderTransmissionMethodCode() {
321: return purchaseOrderTransmissionMethodCode;
322: }
323:
324: public void setPurchaseOrderTransmissionMethodCode(
325: String purchaseOrderTransmissionMethodCode) {
326: this .purchaseOrderTransmissionMethodCode = purchaseOrderTransmissionMethodCode;
327: }
328:
329: public String getRequestorPersonName() {
330: return requestorPersonName;
331: }
332:
333: public void setRequestorPersonName(String requestorPersonName) {
334: this .requestorPersonName = requestorPersonName;
335: }
336:
337: public Integer getRequisitionIdentifier() {
338: return requisitionIdentifier;
339: }
340:
341: public void setRequisitionIdentifier(Integer requisitionIdentifier) {
342: this .requisitionIdentifier = requisitionIdentifier;
343: }
344:
345: public DummyStatus getStatus() {
346: return status;
347: }
348:
349: public void setStatus(DummyStatus status) {
350: this .status = status;
351: }
352:
353: public String getStatusCode() {
354: return statusCode;
355: }
356:
357: public void setStatusCode(String statusCode) {
358: this .statusCode = statusCode;
359: }
360:
361: public DummyVendorContract getVendorContract() {
362: return vendorContract;
363: }
364:
365: public void setVendorContract(DummyVendorContract vendorContract) {
366: this .vendorContract = vendorContract;
367: }
368:
369: public String getVendorContractName() {
370: return vendorContractName;
371: }
372:
373: public void setVendorContractName(String vendorContractName) {
374: this .vendorContractName = vendorContractName;
375: }
376:
377: public Integer getVendorDetailAssignedIdentifier() {
378: return vendorDetailAssignedIdentifier;
379: }
380:
381: public void setVendorDetailAssignedIdentifier(
382: Integer vendorDetailAssignedIdentifier) {
383: this .vendorDetailAssignedIdentifier = vendorDetailAssignedIdentifier;
384: }
385:
386: public Integer getVendorHeaderGeneratedIdentifier() {
387: return vendorHeaderGeneratedIdentifier;
388: }
389:
390: public void setVendorHeaderGeneratedIdentifier(
391: Integer vendorHeaderGeneratedIdentifier) {
392: this .vendorHeaderGeneratedIdentifier = vendorHeaderGeneratedIdentifier;
393: }
394:
395: public String getVendorName() {
396: return vendorName;
397: }
398:
399: public void setVendorName(String vendorName) {
400: this .vendorName = vendorName;
401: }
402:
403: public String getVendorNumber() {
404: return vendorNumber;
405: }
406:
407: public void setVendorNumber(String vendorNumber) {
408: this.vendorNumber = vendorNumber;
409: }
410:
411: }
|