Subversion Repositories SmartDukaan

Rev

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

Rev 8621 Rev 8719
Line 351... Line 351...
351
    reservation.order_id = order_id
351
    reservation.order_id = order_id
352
    reservation.created_timestamp = to_py_date(created_timestamp)
352
    reservation.created_timestamp = to_py_date(created_timestamp)
353
    reservation.promised_shipping_timestamp = to_py_date(promised_shipping_timestamp)
353
    reservation.promised_shipping_timestamp = to_py_date(promised_shipping_timestamp)
354
    reservation.reserved = quantity
354
    reservation.reserved = quantity
355
    
355
    
356
    session.commit()
356
    #session.commit()
357
    
357
    
358
    try:
358
    try:
359
        order_client = TransactionClient().get_client()
359
        order_client = TransactionClient().get_client()
360
        order = order_client.getOrder(order_id)
360
        order = order_client.getOrder(order_id)
361
        holdInventoryDetail = HoldInventoryDetail.query.filter_by(item_id = item_id, warehouse_id = warehouse_id, source = order.source).first()
361
        holdInventoryDetail = HoldInventoryDetail.query.filter_by(item_id = item_id, warehouse_id = warehouse_id, source = order.source).first()
362
        if holdInventoryDetail is not None:
362
        if holdInventoryDetail is not None:
363
            holdInventoryDetail.held = max(0, holdInventoryDetail.held -quantity)
363
            holdInventoryDetail.held = max(0, holdInventoryDetail.held -quantity)
364
            current_inventory_snapshot = CurrentInventorySnapshot.get_by(item_id=item_id, warehouse_id=warehouse_id)
364
            current_inventory_snapshot = CurrentInventorySnapshot.get_by(item_id=item_id, warehouse_id=warehouse_id)
365
            if current_inventory_snapshot is not None:
365
            if current_inventory_snapshot is not None:
366
                current_inventory_snapshot.held = max(0, current_inventory_snapshot.held - quantity)
366
                current_inventory_snapshot.held = max(0, current_inventory_snapshot.held - quantity)
367
            session.commit()
367
            #session.commit()
368
    except:
368
    except:
369
        print "Unable to release hold Inventory for item_id " + str(item_id) + " warehouse_id " + str(warehouse_id) + " source " + str(source_id)
369
        print "Unable to release hold Inventory for item_id " + str(item_id) + " warehouse_id " + str(warehouse_id) + " source " + str(source_id)
370
    
370
    session.commit()
371
    #**Update item availability cache**#
371
    #**Update item availability cache**#
372
    clear_item_availability_cache(item_id)
372
    clear_item_availability_cache(item_id)
373
    return True
373
    return True
374
 
374
 
375
def update_reservation_for_order(item_id, warehouse_id, source_id, order_id, created_timestamp, promised_shipping_timestamp, quantity):    
375
def update_reservation_for_order(item_id, warehouse_id, source_id, order_id, created_timestamp, promised_shipping_timestamp, quantity):