Subversion Repositories SmartDukaan

Rev

Rev 10120 | Blame | Compare with Previous | Last modification | View Log | RSS feed

/**
 * 
 */
package in.shop2020.warehouse.persistence;

import java.util.Date;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Param;

import in.shop2020.warehouse.TransferLotStatus;
import in.shop2020.warehouse.domain.RemovalStockShipmentReference;
import in.shop2020.warehouse.domain.TransferLot;

/**
 * @author amar
 *
 */
public interface TransferLotMapper {

        void createTransferLot(in.shop2020.warehouse.domain.TransferLot transferLot);

        TransferLot getTransferLot(long transferLotId);

        List<TransferLot> getTransferLotsByDate(@Param("fromDate")Date fromDate, @Param("toDate")Date toDate);

        @MapKey("itemId")
        Map<Integer, Integer> getItemsInTransferLot(long transferLotId);

        void markTransferLotAsReceived(@Param("id")long id, @Param("remoteTransferRefNumber")String remoteTransferRefNumber);

        List<Long> getAllowedDestinationWarehousesForTransfer(long originWarehouseId);

        void updateTransferLotStatus(@Param("id")long id, @Param("status")TransferLotStatus status);
        
        void markTransferLotAsReceivedPartial(@Param("id")long id, @Param("remoteTransferRefNumber")String remoteTransferRefNumber);
        
        RemovalStockShipmentReference getRemovalStockShipmentReferenceByTrackingId(@Param("trackingId")String trackingId);

        void createRemovalStockShipmentReference(RemovalStockShipmentReference removalStockShipmentReference);
        
        void updateStockShipment(@Param("lineItemQuantity")long lineItemQuantity, @Param("id")long id);
        
        void markStockShipmentComplete(@Param("id")long id);
        
        RemovalStockShipmentReference getRemovalStockShipmentReferenceById(@Param("id")long id);
        
        List<RemovalStockShipmentReference> getAllUnCompletedStockShipments(@Param("source") String source);
        
        void updateShipmentReferenceTransferLot(@Param("id")long id, @Param("shipmentReference")long shipmentReference);
        
        
}