001package org.kuali.ole.select.document.service;
002
003import org.kuali.ole.docstore.common.document.ids.BibId;
004import org.kuali.ole.select.businessobject.*;
005import org.kuali.rice.core.api.util.type.KualiDecimal;
006import org.kuali.rice.core.api.util.type.KualiInteger;
007
008import java.util.HashMap;
009import java.util.List;
010
011/**
012 * Created with IntelliJ IDEA.
013 * User: vivekb
014 * Date: 11/13/13
015 * Time: 1:05 PM
016 * To change this template use File | Settings | File Templates.
017 */
018public interface OleCopyHelperService {
019
020    public HashMap<String, List<OleCopy>> getCopyListBasedOnLocation(List<OleCopy> copyList, String bibId);
021
022    public HashMap<String, List<OleCopy>> getCopyListBasedOnCopyNumber(List<OleCopy> copyList,Integer partNumber);
023
024    public List<OleCopies> setCopiesToLineItem(List<OleCopy> copyList, KualiInteger noOfParts, String bibId);
025
026    public List<OleCopy> setCopyValues(OleRequisitionCopies itemCopy, String bibId, List<String> volChar);
027
028    public boolean checkCopyEntry(KualiDecimal noOfCopies, String location, Integer itemCount, KualiDecimal noOfCopiesOrdered,
029                                  KualiInteger noOfPartsOrdered, List<OleCopies> copiesList, String volumeNumber, boolean isRoute);
030
031    public void updateRequisitionAndPOItems(OlePurchaseOrderItem olePurchaseOrderItem,
032                                            OleLineItemReceivingItem oleLineItemReceivingItem, OleCorrectionReceivingItem oleCorrectionReceivingItem, boolean isReceiving);
033
034    public List<OleCopy> setCopyValuesForList(List<OleCopies> itemCopies, String bibId, BibId bibTree);
035
036    public boolean checkForTotalCopiesGreaterThanQuantityAtSubmit(List<OleCopies> copyList, KualiDecimal noOfCopiesOrdered);
037}