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.document.service; 20 21 import java.util.List; 22 23 import org.kuali.kfs.module.purap.businessobject.B2BInformation; 24 import org.kuali.kfs.module.purap.util.cxml.B2BShoppingCart; 25 import org.kuali.rice.kew.api.exception.WorkflowException; 26 import org.kuali.rice.kim.api.identity.Person; 27 28 /** 29 * These items will allow a user to punch out for shopping and will create requisitions from an order. 30 */ 31 public interface B2BShoppingService { 32 33 /** 34 * Get URL to punch out to 35 * 36 * @param User ID punching out 37 * @return URL to punch out to 38 */ 39 public String getPunchOutUrl(Person user); 40 41 /** 42 * Create requisition(s) from cxml and return list for display 43 * 44 * @param cxml cXml string 45 * @param user User doing the requisitioning 46 * @return List of requisitions 47 */ 48 public List createRequisitionsFromCxml(B2BShoppingCart message, Person user) throws WorkflowException; 49 50 /** 51 * Get cxml punch out request xml. 52 * @return xml for punch out request 53 */ 54 public String getPunchOutSetupRequestMessage(Person user, B2BInformation b2bInformation); 55 56 }