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  package org.kuali.kfs.module.purap.fixture;
20  
21  import java.math.BigDecimal;
22  import java.sql.Timestamp;
23  
24  import org.kuali.kfs.module.purap.businessobject.ElectronicInvoiceLoadSummary;
25  import org.kuali.kfs.module.purap.document.ElectronicInvoiceRejectDocument;
26  import org.kuali.kfs.sys.DocumentTestUtils;
27  import org.kuali.kfs.sys.context.SpringContext;
28  import org.kuali.rice.kew.api.exception.WorkflowException;
29  import org.kuali.rice.krad.service.DocumentService;
30  
31  public enum ElectronicInvoiceRejectDocumentFixture {
32  
33      EIR_ONLY_REQUIRED_FIELDS(
34              new Timestamp(new java.util.Date().getTime()), // invoiceProcessTimestamp
35              Boolean.FALSE, // fileHeaderTypeIndicator
36              Boolean.FALSE, // fileInformationOnlyIndicator
37              Boolean.FALSE, // fileTaxInLineIndicator
38              Boolean.FALSE, // fileSpecHandlingInLineIndicator
39              Boolean.FALSE, // fileShippingInLineIndicator
40              Boolean.FALSE, // fileDiscountInLineIndicator
41              "nullfile.xml", // invoiceFileName
42              "123456789", // vendorDunsNumber
43              1000, // vendorHeaderID
44              0, // vendorDetailID
45              "2008-07-11", // invoiceFileDate
46              "35106833", // invoiceFileNumber
47              "standard", // filePurposeId
48              "new", // fileOperationId
49              null, // deploymentMode
50              "446665", // referenceOrderId
51              "446665", // referenceDocumentRefPayloadId
52              null, // referenceDocumentRefText
53              null, // masterAgreementReferenceId
54              null, // masterAgreementReferenceDate
55              null, // masterAgreementInfoId
56              null, // masterAgreementInfoDate
57              "446665", // invoiceOrderId
58              "2008-07-11", // invoiceOrderDate
59              "37625311", // supplierOrderInfoId
60              null, // invoiceShipDate
61              "Biology, Lynch Lab, A. Seyfert", // shipToAddressName
62              "BLBI", // shipToAddressType
63              "1001 E 3rd St", // shipToAddressLine1
64              "Room #A108", // shipToAddressLine2
65              null, // shipToAddressLine3
66              "Bloomington", // shipToAddressCityName
67              "IN", // shipToAddressStateCode
68              "47405-7005", // shipToAddressPostalCode
69              "US", // shipToAddressCountryCode
70              null, // shipToAddressCountryName
71              "IN UNIV BLOOMINGTON", // billToAddressName
72              null, // billToAddressType
73              "PO BOX 4095", // billToAddressLine1
74              "FINANCIAL MGMT SERVICES", // billToAddressLine2
75              null, // billToAddressLine3
76              "BLOOMINGTON", // billToAddressCityName
77              "IN", // billToAddressStateCode
78              "47402", // billToAddressPostalCode
79              "US", // billToAddressCountryCode
80              null, // billToAddressCountryName
81              "VWR INTERNATIONAL", // remitToAddressName
82              null, // remitToAddressType
83              "P. O. BOX 640169", // remitToAddressLine1
84              null, // remitToAddressLine2
85              null, // remitToAddressLine3
86              "PITTSBURGH", // remitToAddressCityName
87              "PA", // remitToAddressStateCode
88              "15264-0169", // remitToAddressPostalCode
89              "US", // remitToAddressCountryCode
90              null, // remitToAddressCountryName
91              null, // invoiceCustomerNumber
92              null, // invoicePurchaseOrderId
93              null, // purchaseOrderId
94              null, // purchaseOrderDeliveryCampusCode
95              "USD", // invoiceSubTotalAmountCurrency
96              null, // invoiceSpecialHandlingAmountCurrency
97              null, // invoiceSpecialHandlingDescription
98              null, // invoiceShippingAmountCurrency
99              null, // invoiceShippingDescription
100             "USD", // invoiceTaxAmountCurrency
101             null, // invoiceTaxDescription
102             "USD", // invoiceGrossAmountCurrency
103             "USD", // invoiceDiscountAmountCurrency
104             "USD", // invoiceNetAmountCurrency
105             new BigDecimal("1821.00"), // invoiceSubTotalAmount
106             new BigDecimal("1"), // invoiceSpecialHandlingAmount
107             new BigDecimal("2"), // invoiceShippingAmount
108             new BigDecimal("0"), // invoiceTaxAmount
109             new BigDecimal("1821.00"), // invoiceGrossAmount
110             new BigDecimal("1.00"), // invoiceDiscountAmount
111             new BigDecimal("1821.00"), // invoiceNetAmount
112             new ElectronicInvoiceRejectItemFixture[] {ElectronicInvoiceRejectItemFixture.EIRI_BASIC},
113             new ElectronicInvoiceRejectReasonFixture[] {}            
114     ),
115     EIR_MATCHING(
116             new Timestamp(new java.util.Date().getTime()), // invoiceProcessTimestamp
117             Boolean.FALSE, // fileHeaderTypeIndicator
118             Boolean.FALSE, // fileInformationOnlyIndicator
119             Boolean.FALSE, // fileTaxInLineIndicator
120             Boolean.FALSE, // fileSpecHandlingInLineIndicator
121             Boolean.FALSE, // fileShippingInLineIndicator
122             Boolean.FALSE, // fileDiscountInLineIndicator
123             "nullfile.xml", // invoiceFileName
124             "002254837", // vendorDunsNumber
125             1001, // vendorHeaderID
126             0, // vendorDetailID
127             "2008-07-11", // invoiceFileDate
128             "35106833", // invoiceFileNumber
129             "standard", // filePurposeId
130             "new", // fileOperationId
131             null, // deploymentMode
132             "446665", // referenceOrderId
133             "446665", // referenceDocumentRefPayloadId
134             null, // referenceDocumentRefText
135             null, // masterAgreementReferenceId
136             null, // masterAgreementReferenceDate
137             null, // masterAgreementInfoId
138             null, // masterAgreementInfoDate
139             "446665", // invoiceOrderId
140             "2008-07-11", // invoiceOrderDate
141             "37625311", // supplierOrderInfoId
142             null, // invoiceShipDate
143             "Biology, Lynch Lab, A. Seyfert", // shipToAddressName
144             "BLBI", // shipToAddressType
145             "1001 E 3rd St", // shipToAddressLine1
146             "Room #A108", // shipToAddressLine2
147             null, // shipToAddressLine3
148             "Bloomington", // shipToAddressCityName
149             "IN", // shipToAddressStateCode
150             "47405-7005", // shipToAddressPostalCode
151             "US", // shipToAddressCountryCode
152             null, // shipToAddressCountryName
153             "IN UNIV BLOOMINGTON", // billToAddressName
154             null, // billToAddressType
155             "PO BOX 4095", // billToAddressLine1
156             "FINANCIAL MGMT SERVICES", // billToAddressLine2
157             null, // billToAddressLine3
158             "BLOOMINGTON", // billToAddressCityName
159             "IN", // billToAddressStateCode
160             "47402", // billToAddressPostalCode
161             "US", // billToAddressCountryCode
162             null, // billToAddressCountryName
163             "VWR INTERNATIONAL", // remitToAddressName
164             null, // remitToAddressType
165             "P. O. BOX 640169", // remitToAddressLine1
166             null, // remitToAddressLine2
167             null, // remitToAddressLine3
168             "PITTSBURGH", // remitToAddressCityName
169             "PA", // remitToAddressStateCode
170             "15264-0169", // remitToAddressPostalCode
171             "US", // remitToAddressCountryCode
172             null, // remitToAddressCountryName
173             null, // invoiceCustomerNumber
174             null, // invoicePurchaseOrderId
175             null, // purchaseOrderId
176             null, // purchaseOrderDeliveryCampusCode
177             "USD", // invoiceSubTotalAmountCurrency
178             null, // invoiceSpecialHandlingAmountCurrency
179             null, // invoiceSpecialHandlingDescription
180             null, // invoiceShippingAmountCurrency
181             null, // invoiceShippingDescription
182             "USD", // invoiceTaxAmountCurrency
183             null, // invoiceTaxDescription
184             "USD", // invoiceGrossAmountCurrency
185             "USD", // invoiceDiscountAmountCurrency
186             "USD", // invoiceNetAmountCurrency
187             new BigDecimal("1821.00"), // invoiceSubTotalAmount
188             new BigDecimal("1"), // invoiceSpecialHandlingAmount
189             new BigDecimal("2"), // invoiceShippingAmount
190             new BigDecimal("0"), // invoiceTaxAmount
191             new BigDecimal("1821.00"), // invoiceGrossAmount
192             new BigDecimal("1.00"), // invoiceDiscountAmount
193             new BigDecimal("1821.00"), // invoiceNetAmount
194             new ElectronicInvoiceRejectItemFixture[] {ElectronicInvoiceRejectItemFixture.EIRI_BASIC},
195             new ElectronicInvoiceRejectReasonFixture[] {}            
196     ),
197     ;
198 
199     public Integer purapDocumentIdentifier;
200     public Integer accountsPayablePurchasingDocumentLinkIdentifier;
201     public Integer invoiceLoadSummaryIdentifier;
202     public Timestamp invoiceProcessTimestamp;
203     public Boolean invoiceFileHeaderTypeIndicator = Boolean.FALSE;
204     public Boolean invoiceFileInformationOnlyIndicator = Boolean.FALSE;
205     public Boolean invoiceFileTaxInLineIndicator = Boolean.FALSE;
206     public Boolean invoiceFileSpecialHandlingInLineIndicator = Boolean.FALSE;
207     public Boolean invoiceFileShippingInLineIndicator = Boolean.FALSE;
208     public Boolean invoiceFileDiscountInLineIndicator = Boolean.FALSE;
209     
210     public String invoiceFileName;
211     public String vendorDunsNumber;
212     public Integer vendorHeaderGeneratedIdentifier;
213     public Integer vendorDetailAssignedIdentifier;
214     public String invoiceFileDate;
215     public String invoiceFileNumber;
216     public String invoiceFilePurposeIdentifier;
217     public String invoiceFileOperationIdentifier;
218     public String invoiceFileDeploymentModeValue;
219     public String invoiceOrderReferenceOrderIdentifier;
220     public String invoiceOrderReferenceDocumentReferencePayloadIdentifier;
221     public String invoiceOrderReferenceDocumentReferenceText;
222     public String invoiceOrderMasterAgreementReferenceIdentifier;
223     public String invoiceOrderMasterAgreementReferenceDate;
224     public String invoiceOrderMasterAgreementInformationIdentifier;
225     public String invoiceOrderMasterAgreementInformationDate;
226     public String invoiceOrderPurchaseOrderIdentifier;
227     public String invoiceOrderPurchaseOrderDate;
228     public String invoiceOrderSupplierOrderInformationIdentifier;
229     public String invoiceShipDate;
230     public String invoiceShipToAddressName;
231     public String invoiceShipToAddressType;
232     public String invoiceShipToAddressLine1;
233     public String invoiceShipToAddressLine2;
234     public String invoiceShipToAddressLine3;
235     public String invoiceShipToAddressCityName;
236     public String invoiceShipToAddressStateCode;
237     public String invoiceShipToAddressPostalCode;
238     public String invoiceShipToAddressCountryCode;
239     public String invoiceShipToAddressCountryName;
240     public String invoiceBillToAddressName;
241     public String invoiceBillToAddressType;
242     public String invoiceBillToAddressLine1;
243     public String invoiceBillToAddressLine2;
244     public String invoiceBillToAddressLine3;
245     public String invoiceBillToAddressCityName;
246     public String invoiceBillToAddressStateCode;
247     public String invoiceBillToAddressPostalCode;
248     public String invoiceBillToAddressCountryCode;
249     public String invoiceBillToAddressCountryName;
250     public String invoiceRemitToAddressName;
251     public String invoiceRemitToAddressType;
252     public String invoiceRemitToAddressLine1;
253     public String invoiceRemitToAddressLine2;
254     public String invoiceRemitToAddressLine3;
255     public String invoiceRemitToAddressCityName;
256     public String invoiceRemitToAddressStateCode;
257     public String invoiceRemitToAddressPostalCode;
258     public String invoiceRemitToAddressCountryCode;
259     public String invoiceRemitToAddressCountryName;
260     
261     public String invoiceCustomerNumber;
262     public String invoicePurchaseOrderNumber;
263     public Integer purchaseOrderIdentifier;
264     public String purchaseOrderDeliveryCampusCode;
265     
266     public String invoiceItemSubTotalCurrencyCode;
267     public String invoiceItemSpecialHandlingCurrencyCode;
268     public String invoiceItemSpecialHandlingDescription;
269     public String invoiceItemShippingCurrencyCode;
270     public String invoiceItemShippingDescription;
271     public String invoiceItemTaxCurrencyCode;
272     public String invoiceItemTaxDescription;
273     public String invoiceItemGrossCurrencyCode;
274     public String invoiceItemDiscountCurrencyCode;
275     public String invoiceItemNetCurrencyCode;
276     
277     public BigDecimal invoiceItemSubTotalAmount;
278     public BigDecimal invoiceItemSpecialHandlingAmount;
279     public BigDecimal invoiceItemShippingAmount;
280     public BigDecimal invoiceItemTaxAmount;
281     public BigDecimal invoiceItemGrossAmount;
282     public BigDecimal invoiceItemDiscountAmount;
283     public BigDecimal invoiceItemNetAmount;
284     
285     public ElectronicInvoiceRejectItemFixture[] invoiceRejectItemFixtures;
286     public ElectronicInvoiceRejectReasonFixture[] invoiceRejectReasonFixtures;
287 
288     private ElectronicInvoiceRejectDocumentFixture(Timestamp invoiceProcessTimestamp, Boolean invoiceFileHeaderTypeIndicator, Boolean invoiceFileInformationOnlyIndicator, Boolean invoiceFileTaxInLineIndicator, Boolean invoiceFileSpecialHandlingInLineIndicator, Boolean invoiceFileShippingInLineIndicator, Boolean invoiceFileDiscountInLineIndicator, String invoiceFileName, String vendorDunsNumber,
289             Integer vendorHeaderGeneratedIdentifier, Integer vendorDetailAssignedIdentifier, String invoiceFileDate, String invoiceFileNumber, String invoiceFilePurposeIdentifier, String invoiceFileOperationIdentifier, String invoiceFileDeploymentModeValue, String invoiceOrderReferenceOrderIdentifier, String invoiceOrderReferenceDocumentReferencePayloadIdentifier, String invoiceOrderReferenceDocumentReferenceText,
290             String invoiceOrderMasterAgreementReferenceIdentifier, String invoiceOrderMasterAgreementReferenceDate, String invoiceOrderMasterAgreementInformationIdentifier, String invoiceOrderMasterAgreementInformationDate, String invoiceOrderPurchaseOrderIdentifier, String invoiceOrderPurchaseOrderDate, String invoiceOrderSupplierOrderInformationIdentifier, String invoiceShipDate,
291             String invoiceShipToAddressName, String invoiceShipToAddressType, String invoiceShipToAddressLine1, String invoiceShipToAddressLine2, String invoiceShipToAddressLine3, String invoiceShipToAddressCityName, String invoiceShipToAddressStateCode, String invoiceShipToAddressPostalCode, String invoiceShipToAddressCountryCode, String invoiceShipToAddressCountryName,
292             String invoiceBillToAddressName, String invoiceBillToAddressType, String invoiceBillToAddressLine1, String invoiceBillToAddressLine2, String invoiceBillToAddressLine3, String invoiceBillToAddressCityName, String invoiceBillToAddressStateCode, String invoiceBillToAddressPostalCode, String invoiceBillToAddressCountryCode, String invoiceBillToAddressCountryName,
293             String invoiceRemitToAddressName, String invoiceRemitToAddressType, String invoiceRemitToAddressLine1, String invoiceRemitToAddressLine2, String invoiceRemitToAddressLine3, String invoiceRemitToAddressCityName, String invoiceRemitToAddressStateCode, String invoiceRemitToAddressPostalCode, String invoiceRemitToAddressCountryCode, String invoiceRemitToAddressCountryName,
294             String invoiceCustomerNumber, String invoicePurchaseOrderNumber, Integer purchaseOrderIdentifier, String purchaseOrderDeliveryCampusCode, String invoiceItemSubTotalCurrencyCode, String invoiceItemSpecialHandlingCurrencyCode,
295             String invoiceItemSpecialHandlingDescription, String invoiceItemShippingCurrencyCode, String invoiceItemShippingDescription, String invoiceItemTaxCurrencyCode, String invoiceItemTaxDescription, String invoiceItemGrossCurrencyCode, String invoiceItemDiscountCurrencyCode, String invoiceItemNetCurrencyCode,
296             BigDecimal invoiceItemSubTotalAmount, BigDecimal invoiceItemSpecialHandlingAmount, BigDecimal invoiceItemShippingAmount, BigDecimal invoiceItemTaxAmount, BigDecimal invoiceItemGrossAmount, BigDecimal invoiceItemDiscountAmount, BigDecimal invoiceItemNetAmount,
297             ElectronicInvoiceRejectItemFixture[] invoiceRejectItemFixtures,
298             ElectronicInvoiceRejectReasonFixture[] invoiceRejectReasonFixtures) {
299 
300         this.invoiceProcessTimestamp = invoiceProcessTimestamp;
301         this.invoiceFileHeaderTypeIndicator = invoiceFileHeaderTypeIndicator;
302         this.invoiceFileInformationOnlyIndicator = invoiceFileInformationOnlyIndicator;
303         this.invoiceFileTaxInLineIndicator = invoiceFileTaxInLineIndicator;
304         this.invoiceFileSpecialHandlingInLineIndicator = invoiceFileSpecialHandlingInLineIndicator;
305         this.invoiceFileShippingInLineIndicator = invoiceFileShippingInLineIndicator;
306         this.invoiceFileDiscountInLineIndicator = invoiceFileDiscountInLineIndicator;
307 
308         this.invoiceFileName = invoiceFileName;
309         this.vendorDunsNumber = vendorDunsNumber;
310         this.vendorHeaderGeneratedIdentifier = vendorHeaderGeneratedIdentifier;
311         this.vendorDetailAssignedIdentifier = vendorDetailAssignedIdentifier;
312         this.invoiceFileDate= invoiceFileDate;
313         this.invoiceFileNumber = invoiceFileNumber;
314         this.invoiceFilePurposeIdentifier = invoiceFilePurposeIdentifier;
315         this.invoiceFileOperationIdentifier = invoiceFileOperationIdentifier;
316         this.invoiceFileDeploymentModeValue = invoiceFileDeploymentModeValue;
317         this.invoiceOrderReferenceOrderIdentifier = invoiceOrderReferenceOrderIdentifier;
318         this.invoiceOrderReferenceDocumentReferencePayloadIdentifier = invoiceOrderReferenceDocumentReferencePayloadIdentifier;
319         this.invoiceOrderReferenceDocumentReferenceText = invoiceOrderReferenceDocumentReferenceText;
320         this.invoiceOrderMasterAgreementReferenceIdentifier = invoiceOrderMasterAgreementReferenceIdentifier;
321         this.invoiceOrderMasterAgreementReferenceDate = invoiceOrderMasterAgreementReferenceDate;
322         this.invoiceOrderMasterAgreementInformationIdentifier = invoiceOrderMasterAgreementInformationIdentifier;
323         this.invoiceOrderMasterAgreementInformationDate = invoiceOrderMasterAgreementInformationDate;
324         this.invoiceOrderPurchaseOrderIdentifier = invoiceOrderPurchaseOrderIdentifier;
325         this.invoiceOrderPurchaseOrderDate = invoiceOrderPurchaseOrderDate;
326         this.invoiceOrderSupplierOrderInformationIdentifier = invoiceOrderSupplierOrderInformationIdentifier;
327         this.invoiceShipDate = invoiceShipDate;
328         this.invoiceShipToAddressName = invoiceShipToAddressName;
329         this.invoiceShipToAddressType = invoiceShipToAddressType;
330         this.invoiceShipToAddressLine1 = invoiceShipToAddressLine1;
331         this.invoiceShipToAddressLine2 = invoiceShipToAddressLine2;
332         this.invoiceShipToAddressLine3 = invoiceShipToAddressLine3;
333         this.invoiceShipToAddressCityName = invoiceShipToAddressCityName;
334         this.invoiceShipToAddressStateCode = invoiceShipToAddressStateCode;
335         this.invoiceShipToAddressPostalCode = invoiceShipToAddressPostalCode;
336         this.invoiceShipToAddressCountryCode = invoiceShipToAddressCountryCode;
337         this.invoiceShipToAddressCountryName = invoiceShipToAddressCountryName;
338         this.invoiceBillToAddressName = invoiceBillToAddressName;
339         this.invoiceBillToAddressType = invoiceBillToAddressType;
340         this.invoiceBillToAddressLine1 = invoiceBillToAddressLine1;
341         this.invoiceBillToAddressLine2 = invoiceBillToAddressLine2;
342         this.invoiceBillToAddressLine3 = invoiceBillToAddressLine3;
343         this.invoiceBillToAddressCityName = invoiceBillToAddressCityName;
344         this.invoiceBillToAddressStateCode = invoiceBillToAddressStateCode;
345         this.invoiceBillToAddressPostalCode = invoiceBillToAddressPostalCode;
346         this.invoiceBillToAddressCountryCode = invoiceBillToAddressCountryCode;
347         this.invoiceBillToAddressCountryName = invoiceBillToAddressCountryName;
348         this.invoiceRemitToAddressName = invoiceRemitToAddressName;
349         this.invoiceRemitToAddressType = invoiceRemitToAddressType;
350         this.invoiceRemitToAddressLine1 = invoiceRemitToAddressLine1;
351         this.invoiceRemitToAddressLine2 = invoiceRemitToAddressLine2;
352         this.invoiceRemitToAddressLine3 = invoiceRemitToAddressLine3;
353         this.invoiceRemitToAddressCityName = invoiceRemitToAddressCityName;
354         this.invoiceRemitToAddressStateCode = invoiceRemitToAddressStateCode;
355         this.invoiceRemitToAddressPostalCode = invoiceRemitToAddressPostalCode;
356         this.invoiceRemitToAddressCountryCode = invoiceRemitToAddressCountryCode;
357         this.invoiceRemitToAddressCountryName = invoiceRemitToAddressCountryName;
358 
359         this.invoiceCustomerNumber = invoiceCustomerNumber;
360         this.invoicePurchaseOrderNumber = invoicePurchaseOrderNumber;
361         this.purchaseOrderIdentifier = purchaseOrderIdentifier;
362         this.purchaseOrderDeliveryCampusCode = purchaseOrderDeliveryCampusCode;
363 
364         this.invoiceItemSubTotalCurrencyCode = invoiceItemSubTotalCurrencyCode;
365         this.invoiceItemSpecialHandlingCurrencyCode = invoiceItemSpecialHandlingCurrencyCode;
366         this.invoiceItemSpecialHandlingDescription = invoiceItemSpecialHandlingDescription;
367         this.invoiceItemShippingCurrencyCode = invoiceItemShippingCurrencyCode;
368         this.invoiceItemShippingDescription = invoiceItemShippingDescription;
369         this.invoiceItemTaxCurrencyCode = invoiceItemTaxCurrencyCode;
370         this.invoiceItemTaxDescription = invoiceItemTaxDescription;
371         this.invoiceItemGrossCurrencyCode = invoiceItemGrossCurrencyCode;
372         this.invoiceItemDiscountCurrencyCode = invoiceItemDiscountCurrencyCode;
373         this.invoiceItemNetCurrencyCode = invoiceItemNetCurrencyCode;
374 
375         this.invoiceItemSubTotalAmount = invoiceItemSubTotalAmount;
376         this.invoiceItemSpecialHandlingAmount = invoiceItemSpecialHandlingAmount;
377         this.invoiceItemShippingAmount = invoiceItemShippingAmount;
378         this.invoiceItemTaxAmount = invoiceItemTaxAmount;
379         this.invoiceItemGrossAmount = invoiceItemGrossAmount;
380         this.invoiceItemDiscountAmount = invoiceItemDiscountAmount;
381         this.invoiceItemNetAmount = invoiceItemNetAmount;
382         
383         this.invoiceRejectItemFixtures = invoiceRejectItemFixtures;
384         this.invoiceRejectReasonFixtures = invoiceRejectReasonFixtures;
385     }
386 
387     public ElectronicInvoiceRejectDocument createElectronicInvoiceRejectDocument(ElectronicInvoiceLoadSummary eils) {
388         ElectronicInvoiceRejectDocument doc = null;
389         try {
390             doc = (ElectronicInvoiceRejectDocument) DocumentTestUtils.createDocument(SpringContext.getBean(DocumentService.class), ElectronicInvoiceRejectDocument.class);
391         }
392         catch (WorkflowException e) {
393             throw new RuntimeException("Document creation failed.");
394         }
395         
396         doc.setInvoiceProcessTimestamp(invoiceProcessTimestamp);
397         doc.setInvoiceFileHeaderTypeIndicator(invoiceFileHeaderTypeIndicator);
398         doc.setInvoiceFileInformationOnlyIndicator(invoiceFileInformationOnlyIndicator);
399         doc.setInvoiceFileTaxInLineIndicator(invoiceFileTaxInLineIndicator);
400         doc.setInvoiceFileSpecialHandlingInLineIndicator(invoiceFileSpecialHandlingInLineIndicator);
401         doc.setInvoiceFileShippingInLineIndicator(invoiceFileShippingInLineIndicator);
402         doc.setInvoiceFileDiscountInLineIndicator(invoiceFileDiscountInLineIndicator);
403         
404         doc.setInvoiceFileName(invoiceFileName);
405         doc.setInvoiceFileNumber(invoiceFileNumber);
406         doc.setVendorDunsNumber(vendorDunsNumber);
407         doc.setVendorHeaderGeneratedIdentifier(vendorHeaderGeneratedIdentifier);
408         doc.setVendorDetailAssignedIdentifier(vendorDetailAssignedIdentifier);
409         doc.setInvoiceFileDate(invoiceFileDate);
410         doc.setInvoiceFilePurposeIdentifier(invoiceFilePurposeIdentifier);
411         doc.setInvoiceFileOperationIdentifier(invoiceFileOperationIdentifier);
412         doc.setInvoiceFileDeploymentModeValue(invoiceFileDeploymentModeValue);
413         doc.setInvoiceOrderReferenceOrderIdentifier(invoiceOrderReferenceOrderIdentifier);
414         doc.setInvoiceOrderReferenceDocumentReferencePayloadIdentifier(invoiceOrderReferenceDocumentReferencePayloadIdentifier);
415         doc.setInvoiceOrderReferenceDocumentReferenceText(invoiceOrderReferenceDocumentReferenceText);
416         doc.setInvoiceOrderMasterAgreementReferenceIdentifier(invoiceOrderMasterAgreementReferenceIdentifier);
417         doc.setInvoiceOrderMasterAgreementReferenceDate(invoiceOrderMasterAgreementReferenceDate);
418         doc.setInvoiceOrderMasterAgreementInformationIdentifier(invoiceOrderMasterAgreementInformationIdentifier);
419         doc.setInvoiceOrderMasterAgreementInformationDate(invoiceOrderMasterAgreementInformationDate);
420         doc.setInvoiceOrderPurchaseOrderIdentifier(invoiceOrderPurchaseOrderIdentifier);
421         doc.setInvoiceOrderPurchaseOrderDate(invoiceOrderPurchaseOrderDate);
422         doc.setInvoiceOrderSupplierOrderInformationIdentifier(invoiceOrderSupplierOrderInformationIdentifier);
423         doc.setInvoiceShipDate(invoiceShipDate);
424         doc.setInvoiceShipToAddressName(invoiceShipToAddressName);
425         doc.setInvoiceShipToAddressType(invoiceShipToAddressType);
426         doc.setInvoiceShipToAddressLine1(invoiceShipToAddressLine1);
427         doc.setInvoiceShipToAddressLine2(invoiceShipToAddressLine2);
428         doc.setInvoiceShipToAddressLine2(invoiceShipToAddressLine3);
429         doc.setInvoiceShipToAddressCityName(invoiceShipToAddressCityName);
430         doc.setInvoiceShipToAddressStateCode(invoiceShipToAddressStateCode);
431         doc.setInvoiceShipToAddressPostalCode(invoiceShipToAddressPostalCode);
432         doc.setInvoiceShipToAddressCountryCode(invoiceShipToAddressCountryCode);
433         doc.setInvoiceShipToAddressCountryName(invoiceShipToAddressCountryName);
434         doc.setInvoiceBillToAddressName(invoiceBillToAddressName);
435         doc.setInvoiceBillToAddressType(invoiceBillToAddressType);
436         doc.setInvoiceBillToAddressLine1(invoiceBillToAddressLine1);
437         doc.setInvoiceBillToAddressLine2(invoiceBillToAddressLine2);
438         doc.setInvoiceBillToAddressLine2(invoiceBillToAddressLine3);
439         doc.setInvoiceBillToAddressCityName(invoiceBillToAddressCityName);
440         doc.setInvoiceBillToAddressStateCode(invoiceBillToAddressStateCode);
441         doc.setInvoiceBillToAddressPostalCode(invoiceBillToAddressPostalCode);
442         doc.setInvoiceBillToAddressCountryCode(invoiceBillToAddressCountryCode);
443         doc.setInvoiceBillToAddressCountryName(invoiceBillToAddressCountryName);
444         doc.setInvoiceRemitToAddressName(invoiceRemitToAddressName);
445         doc.setInvoiceRemitToAddressType(invoiceRemitToAddressType);
446         doc.setInvoiceRemitToAddressLine1(invoiceRemitToAddressLine1);
447         doc.setInvoiceRemitToAddressLine2(invoiceRemitToAddressLine2);
448         doc.setInvoiceRemitToAddressLine2(invoiceRemitToAddressLine3);
449         doc.setInvoiceRemitToAddressCityName(invoiceRemitToAddressCityName);
450         doc.setInvoiceRemitToAddressStateCode(invoiceRemitToAddressStateCode);
451         doc.setInvoiceRemitToAddressPostalCode(invoiceRemitToAddressPostalCode);
452         doc.setInvoiceRemitToAddressCountryCode(invoiceRemitToAddressCountryCode);
453         doc.setInvoiceRemitToAddressCountryName(invoiceRemitToAddressCountryName);
454         
455         doc.setInvoiceCustomerNumber(invoiceCustomerNumber);
456         doc.setInvoicePurchaseOrderNumber(invoicePurchaseOrderNumber);
457         doc.setPurchaseOrderIdentifier(purchaseOrderIdentifier);
458         doc.setPurchaseOrderDeliveryCampusCode(purchaseOrderDeliveryCampusCode);
459         
460         doc.setInvoiceItemSubTotalCurrencyCode(invoiceItemSubTotalCurrencyCode);
461         doc.setInvoiceItemSpecialHandlingCurrencyCode(invoiceItemSpecialHandlingCurrencyCode);
462         doc.setInvoiceItemSpecialHandlingDescription(invoiceItemSpecialHandlingDescription);
463         doc.setInvoiceItemShippingCurrencyCode(invoiceItemShippingCurrencyCode);
464         doc.setInvoiceItemShippingDescription(invoiceItemShippingDescription);
465         doc.setInvoiceItemTaxCurrencyCode(invoiceItemTaxCurrencyCode);
466         doc.setInvoiceItemTaxDescription(invoiceItemTaxDescription);
467         doc.setInvoiceItemGrossCurrencyCode(invoiceItemGrossCurrencyCode);
468         doc.setInvoiceItemDiscountCurrencyCode(invoiceItemDiscountCurrencyCode);
469         doc.setInvoiceItemNetCurrencyCode(invoiceItemNetCurrencyCode);
470 
471         doc.setInvoiceItemSubTotalAmount(invoiceItemSubTotalAmount);
472         doc.setInvoiceItemSpecialHandlingAmount(invoiceItemSpecialHandlingAmount);
473         doc.setInvoiceItemShippingAmount(invoiceItemShippingAmount);
474         doc.setInvoiceItemTaxAmount(invoiceItemTaxAmount);
475         doc.setInvoiceItemGrossAmount(invoiceItemGrossAmount);
476         doc.setInvoiceItemDiscountAmount(invoiceItemDiscountAmount);
477         doc.setInvoiceItemNetAmount(invoiceItemNetAmount);
478 
479         doc.setInvoiceLoadSummary(eils);
480         for (ElectronicInvoiceRejectItemFixture invoiceRejectItemFixture : invoiceRejectItemFixtures) {
481             invoiceRejectItemFixture.addTo(doc);
482         }
483         for (ElectronicInvoiceRejectReasonFixture invoiceRejectReasonFixture : invoiceRejectReasonFixtures) {
484             invoiceRejectReasonFixture.addTo(doc);
485         }
486         
487         return doc;
488     }
489 
490 }