View Javadoc
1   /*
2    * Copyright 2006-2008 The Kuali Foundation
3    * 
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    * 
8    * http://www.opensource.org/licenses/ecl2.php
9    * 
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.kuali.ole.module.purap.document.service;
17  
18  import org.kuali.ole.module.purap.document.PurchaseOrderDocument;
19  import org.kuali.ole.vnd.businessobject.ContractManager;
20  
21  /**
22   * These items will allow a user to send Purchase Orders electronically to vendors
23   */
24  public interface B2BPurchaseOrderService {
25  
26      /**
27       * Send the Purchase Order
28       *
29       * @param po
30       * @return Response
31       */
32      public String sendPurchaseOrder(PurchaseOrderDocument po);
33  
34      /**
35       * Returns the cxml of the Purchase Order for electronic transmission to the vendor
36       *
37       * @param purchaseOrder        PurchaseOrderDocument - PO data
38       * @param requisitionInitiator Person - user that created the Requisition
39       * @param password             String - password for PO transmission
40       * @param contractManager      ContractManager - contract manager for the PO
41       * @param contractManagerEmail String - email address for the contract manager
42       * @param vendorDuns           String - vendor DUNS number for the PO
43       * @return String which is the cxml of the PO to send to the vendor
44       */
45      public String getCxml(PurchaseOrderDocument purchaseOrder, String requisitionInitiatorId, String password, ContractManager contractManager, String contractManagerEmail, String vendorDuns);
46  
47      /**
48       * Verifies that each piece of data required for the PO cXML is present.
49       *
50       * @param purchaseOrder
51       * @param requisitionInitiator
52       * @param password
53       * @param contractManager
54       * @param contractManagerEmail
55       * @param vendorDuns
56       * @return
57       */
58      public String verifyCxmlPOData(PurchaseOrderDocument purchaseOrder, String requisitionInitiatorId, String password, ContractManager contractManager, String contractManagerEmail, String vendorDuns);
59  
60  }