Subversion Repositories SmartDukaan

Rev

Rev 6857 | Rev 7242 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 6857 Rev 7149
Line 793... Line 793...
793
    pending_items_inventory = []
793
    pending_items_inventory = []
794
    if warehouse_ids:
794
    if warehouse_ids:
795
        pending_items_inventory = session.query(CurrentInventorySnapshot.item_id, func.sum(CurrentInventorySnapshot.availability), func.sum(CurrentInventorySnapshot.reserved)).filter(CurrentInventorySnapshot.warehouse_id.in_(warehouse_ids)).group_by(CurrentInventorySnapshot.item_id).having(func.sum(CurrentInventorySnapshot.reserved) > 0).all()
795
        pending_items_inventory = session.query(CurrentInventorySnapshot.item_id, func.sum(CurrentInventorySnapshot.availability), func.sum(CurrentInventorySnapshot.reserved)).filter(CurrentInventorySnapshot.warehouse_id.in_(warehouse_ids)).group_by(CurrentInventorySnapshot.item_id).having(func.sum(CurrentInventorySnapshot.reserved) > 0).all()
796
    return pending_items_inventory
796
    return pending_items_inventory
797
 
797
 
-
 
798
def get_billable_inventory_and_pending_orders():
-
 
799
    """
-
 
800
    Returns a list of inventory Availability and Reserved Count for items which either have real inventory
-
 
801
    or have pending orders.
-
 
802
    """
-
 
803
    
-
 
804
    warehouse_ids = [warehouse.id for warehouse in Warehouse.query.filter(Warehouse.isAvailabilityMonitored == 1).filter(or_(Warehouse.inventoryType == 'GOOD', Warehouse.warehouseType == 'OURS'))]
-
 
805
    items_inventory = []
-
 
806
    reserved_items_inventory = []
-
 
807
    available_items_inventory = []
-
 
808
    if warehouse_ids:
-
 
809
        reserved_items_inventory = session.query(CurrentInventorySnapshot.item_id, func.sum(CurrentInventorySnapshot.availability), func.sum(CurrentInventorySnapshot.reserved)).filter(CurrentInventorySnapshot.warehouse_id.in_(warehouse_ids)).group_by(CurrentInventorySnapshot.item_id).having(func.sum(CurrentInventorySnapshot.reserved) > 0).all()
-
 
810
        available_items_inventory = session.query(CurrentInventorySnapshot.item_id, func.sum(CurrentInventorySnapshot.availability), func.sum(CurrentInventorySnapshot.reserved)).filter(CurrentInventorySnapshot.warehouse_id.in_(warehouse_ids)).group_by(CurrentInventorySnapshot.item_id).having(func.sum(CurrentInventorySnapshot.availability) > 0).all()
-
 
811
        
-
 
812
    items_inventory.extend(reserved_items_inventory)
-
 
813
    items_inventory.extend(available_items_inventory)
-
 
814
    return items_inventory
-
 
815
 
-
 
816
 
798
def close_session():
817
def close_session():
799
    if session.is_active:
818
    if session.is_active:
800
        print "session is active. closing it."
819
        print "session is active. closing it."
801
        session.close()
820
        session.close()
802
 
821