1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.kuali.kfs.module.purap.fixture;
20
21 import java.sql.Date;
22
23 import org.kuali.kfs.module.purap.document.LineItemReceivingDocument;
24 import org.kuali.kfs.sys.DocumentTestUtils;
25 import org.kuali.kfs.sys.context.SpringContext;
26 import org.kuali.rice.kew.api.exception.WorkflowException;
27 import org.kuali.rice.krad.service.DocumentService;
28
29 public enum LineItemReceivingDocumentFixture {
30
31
32 EMPTY_LINE_ITEM_RECEIVING(
33 null,
34 "",
35 "",
36 "",
37 new Date(108, 7, 11),
38 new Integer(0),
39 new Integer(0),
40 "",
41 "",
42 "",
43 "",
44 "",
45 "",
46 "",
47 "",
48 "",
49 "",
50 "",
51 "",
52 "",
53 "",
54 "",
55 "",
56 "",
57 "",
58 "",
59 "",
60 new Date(108, 7, 11),
61 "",
62 null,
63 new Integer(0),
64 new Integer(0),
65 "",
66 false,
67 null,
68 new Integer(0),
69 null,
70 new Integer(0),
71 new LineItemReceivingItemFixture[] {}
72 ),
73 REQUIRED_FIELDS(
74 null,
75 "",
76 "",
77 "",
78 new Date(108, 7, 11),
79 new Integer(1000),
80 new Integer(0),
81 "ABC CLEANING SERVICES",
82 "123456 BROAD ST",
83 "",
84 "TRUMANSBURG",
85 "NY",
86 "14886",
87 "US",
88 "BL",
89 "",
90 "Law",
91 "1324",
92 "211 S Indiana Ave",
93 "",
94 "Bloomington",
95 "IN",
96 "47405-7001",
97 "",
98 "ABEYTA,JULIANNE Z",
99 "",
100 "",
101 new Date(108, 7, 11),
102 "",
103 "",
104 new Integer(0),
105 new Integer(0),
106 "",
107 false,
108 "1000-0",
109 new Integer(1000),
110 null,
111 new Integer(0),
112 new LineItemReceivingItemFixture[] {
113 LineItemReceivingItemFixture.NORMAL_ITEM_1 }
114 );
115
116 public String carrierCode;
117 public String shipmentPackingSlipNumber;
118 public String shipmentReferenceNumber;
119 public String shipmentBillOfLadingNumber;
120 public Date shipmentReceivedDate;
121 public Integer vendorHeaderGeneratedIdentifier;
122 public Integer vendorDetailAssignedIdentifier;
123 public String vendorName;
124 public String vendorLine1Address;
125 public String vendorLine2Address;
126 public String vendorCityName;
127 public String vendorStateCode;
128 public String vendorPostalCode;
129 public String vendorCountryCode;
130 public String deliveryCampusCode;
131 public String deliveryBuildingCode;
132 public String deliveryBuildingName;
133 public String deliveryBuildingRoomNumber;
134 public String deliveryBuildingLine1Address;
135 public String deliveryBuildingLine2Address;
136 public String deliveryCityName;
137 public String deliveryStateCode;
138 public String deliveryPostalCode;
139 public String deliveryCountryCode;
140 public String deliveryToName;
141 public String deliveryToEmailAddress;
142 public String deliveryToPhoneNumber;
143 public Date deliveryRequiredDate;
144 public String deliveryInstructionText;
145 public String deliveryRequiredDateReasonCode;
146 private Integer purchaseOrderIdentifier;
147
148 public Integer alternateVendorHeaderGeneratedIdentifier;
149 public Integer alternateVendorDetailAssignedIdentifier;
150 public String alternateVendorName;
151
152
153 public boolean deliveryBuildingOtherIndicator;
154 public String vendorNumber;
155 public Integer vendorAddressGeneratedIdentifier;
156 public String alternateVendorNumber;
157
158 private LineItemReceivingItemFixture[] lineItemReceivingItemFixtures;
159
160 private LineItemReceivingDocumentFixture(
161 String carrierCode, String shipmentPackingSlipNumber, String shipmentReferenceNumber, String shipmentBillOfLadingNumber, Date shipmentReceivedDate,
162 Integer vendorHeaderGeneratedIdentifier, Integer vendorDetailAssignedIdentifier, String vendorName, String vendorLine1Address,
163 String vendorLine2Address, String vendorCityName, String vendorStateCode, String vendorPostalCode, String vendorCountryCode,
164 String deliveryCampusCode, String deliveryBuildingCode, String deliveryBuildingName, String deliveryBuildingRoomNumber,
165 String deliveryBuildingLine1Address, String deliveryBuildingLine2Address, String deliveryCityName, String deliveryStateCode,
166 String deliveryPostalCode, String deliveryCountryCode, String deliveryToName, String deliveryToEmailAddress, String deliveryToPhoneNumber,
167 Date deliveryRequiredDate, String deliveryInstructionText, String deliveryRequiredDateReasonCode,
168 Integer alternateVendorHeaderGeneratedIdentifier, Integer alternateVendorDetailAssignedIdentifier,
169 String alternateVendorName, boolean deliveryBuildingOther, String vendorNumber, Integer vendorAddressGeneratedIdentifier, String alternateVendorNumber,
170 Integer purchaseOrderIdentifier, LineItemReceivingItemFixture[] lineItemReceivingItemFixtures) {
171
172 this.carrierCode = carrierCode;
173 this.shipmentPackingSlipNumber = shipmentPackingSlipNumber;
174 this.shipmentReferenceNumber = shipmentReferenceNumber;
175 this.shipmentBillOfLadingNumber = shipmentBillOfLadingNumber;
176 this.shipmentReceivedDate = shipmentReceivedDate;
177 this.vendorHeaderGeneratedIdentifier = vendorHeaderGeneratedIdentifier;
178 this.vendorDetailAssignedIdentifier = vendorDetailAssignedIdentifier;
179 this.vendorName = vendorName;
180 this.vendorLine1Address = vendorLine1Address;
181 this.vendorLine2Address = vendorLine2Address;
182 this.vendorCityName = vendorCityName;
183 this.vendorStateCode = vendorStateCode;
184 this.vendorPostalCode = vendorPostalCode;
185 this.vendorCountryCode = vendorCountryCode;
186 this.deliveryCampusCode = deliveryCampusCode;
187 this.deliveryBuildingCode = deliveryBuildingCode;
188 this.deliveryBuildingName = deliveryBuildingName;
189 this.deliveryBuildingRoomNumber = deliveryBuildingRoomNumber;
190 this.deliveryBuildingLine1Address = deliveryBuildingLine1Address;
191 this.deliveryBuildingLine2Address = deliveryBuildingLine2Address;
192 this.deliveryCityName = deliveryCityName;
193 this.deliveryStateCode = deliveryStateCode;
194 this.deliveryPostalCode = deliveryPostalCode;
195 this.deliveryCountryCode = deliveryCountryCode;
196 this.deliveryToName = deliveryToName;
197 this.deliveryToEmailAddress = deliveryToEmailAddress;
198 this.deliveryToPhoneNumber = deliveryToPhoneNumber;
199 this.deliveryRequiredDate = deliveryRequiredDate;
200 this.deliveryInstructionText = deliveryInstructionText;
201 this.deliveryRequiredDateReasonCode = deliveryRequiredDateReasonCode;
202 this.alternateVendorHeaderGeneratedIdentifier = alternateVendorHeaderGeneratedIdentifier;
203 this.alternateVendorDetailAssignedIdentifier = alternateVendorDetailAssignedIdentifier;
204 this.alternateVendorName = alternateVendorName;
205 this.deliveryBuildingOtherIndicator = deliveryBuildingOtherIndicator;
206 this.vendorNumber = vendorNumber;
207 this.vendorAddressGeneratedIdentifier = vendorAddressGeneratedIdentifier;
208 this.alternateVendorNumber = alternateVendorNumber;
209 this.purchaseOrderIdentifier = purchaseOrderIdentifier;
210
211 this.lineItemReceivingItemFixtures = lineItemReceivingItemFixtures;
212 }
213
214 public LineItemReceivingDocument createLineItemReceivingDocument() {
215 LineItemReceivingDocument doc = null;
216
217 try {
218 doc = (LineItemReceivingDocument) DocumentTestUtils.createDocument(SpringContext.getBean(DocumentService.class), LineItemReceivingDocument.class);
219 }
220 catch (WorkflowException e) {
221 throw new RuntimeException("Document creation failed.");
222 }
223
224 doc.setCarrierCode(this.carrierCode);
225 doc.setShipmentPackingSlipNumber(this.shipmentPackingSlipNumber);
226 doc.setShipmentReferenceNumber(this.shipmentReferenceNumber);
227 doc.setShipmentBillOfLadingNumber(this.shipmentBillOfLadingNumber);
228 doc.setShipmentReceivedDate(this.shipmentReceivedDate);
229 doc.setVendorHeaderGeneratedIdentifier(this.vendorHeaderGeneratedIdentifier);
230 doc.setVendorDetailAssignedIdentifier(this.vendorDetailAssignedIdentifier);
231 doc.setVendorName(this.vendorName);
232 doc.setVendorLine1Address(this.vendorLine1Address);
233 doc.setVendorLine2Address(this.vendorLine2Address);
234 doc.setVendorCityName(this.vendorCityName);
235 doc.setVendorStateCode(this.vendorStateCode);
236 doc.setVendorPostalCode(this.vendorPostalCode);
237 doc.setVendorCountryCode(this.vendorCountryCode);
238 doc.setDeliveryCampusCode(this.deliveryCampusCode);
239 doc.setDeliveryBuildingCode(this.deliveryBuildingCode);
240 doc.setDeliveryBuildingName(this.deliveryBuildingName);
241 doc.setDeliveryBuildingRoomNumber(this.deliveryBuildingRoomNumber);
242 doc.setDeliveryBuildingLine1Address(this.deliveryBuildingLine1Address);
243 doc.setDeliveryBuildingLine2Address(this.deliveryBuildingLine2Address);
244 doc.setDeliveryCityName(this.deliveryCityName);
245 doc.setDeliveryStateCode(this.deliveryStateCode);
246 doc.setDeliveryPostalCode(this.deliveryPostalCode);
247 doc.setDeliveryCountryCode(this.deliveryCountryCode);
248 doc.setDeliveryToName(this.deliveryToName);
249 doc.setDeliveryToEmailAddress(this.deliveryToEmailAddress);
250 doc.setDeliveryToPhoneNumber(this.deliveryToPhoneNumber);
251 doc.setDeliveryRequiredDate(this.deliveryRequiredDate);
252 doc.setDeliveryInstructionText(this.deliveryInstructionText);
253 doc.setDeliveryRequiredDateReasonCode(this.deliveryRequiredDateReasonCode);
254 doc.setAlternateVendorHeaderGeneratedIdentifier(this.alternateVendorHeaderGeneratedIdentifier);
255 doc.setAlternateVendorDetailAssignedIdentifier(this.alternateVendorDetailAssignedIdentifier);
256 doc.setAlternateVendorName(this.alternateVendorName);
257 doc.setDeliveryBuildingOtherIndicator(this.deliveryBuildingOtherIndicator);
258 doc.setVendorNumber(this.vendorNumber);
259 doc.setVendorAddressGeneratedIdentifier(this.vendorAddressGeneratedIdentifier);
260 doc.setAlternateVendorNumber(this.alternateVendorNumber);
261 doc.setPurchaseOrderIdentifier(this.purchaseOrderIdentifier);
262
263 for (LineItemReceivingItemFixture lineItemReceivingItemFixture : lineItemReceivingItemFixtures) {
264 lineItemReceivingItemFixture.addTo(doc);
265 }
266
267 return doc;
268 }
269
270 }