Subversion Repositories SmartDukaan

Rev

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

Rev 609 Rev 612
Line 237... Line 237...
237
     
237
     
238
    time = datetime.datetime.now()
238
    time = datetime.datetime.now()
239
    warehouse.lastCheckedOn = time
239
    warehouse.lastCheckedOn = time
240
    warehouse.vendorString = timestamp
240
    warehouse.vendorString = timestamp
241
    
241
    
242
    for k,v in availability.iteritems():
242
    for item_pk, quantity in availability.iteritems():
243
        vendor_id = k
-
 
244
        quantity = v
-
 
245
        try:
243
        try:
-
 
244
            brand, model, color = item_pk.split(';')
246
            item = Item.query.filter_by(vendor_item_id=vendor_id).one()
245
            item = Item.query.filter_by(manufacturer_name=brand, model_number=model, color=color).one()
247
        except:
246
        except:
248
            continue  
247
            continue  
249
        try:
248
        try:
250
            item_inventory_history = ItemInventoryHistory()
249
            item_inventory_history = ItemInventoryHistory()
251
            item_inventory_history.warehouse = warehouse
250
            item_inventory_history.warehouse = warehouse
Line 263... Line 262...
263
            current_inventory_snapshot.availibility = current_inventory_snapshot.availibility + quantity
262
            current_inventory_snapshot.availibility = current_inventory_snapshot.availibility + quantity
264
        except:
263
        except:
265
            raise InventoryServiceException(108, "Some unforeseen error while updating inventory")
264
            raise InventoryServiceException(108, "Some unforeseen error while updating inventory")
266
    session.commit() 
265
    session.commit() 
267
 
266
 
268
        
-
 
269
 
-
 
270
#this is no more used
-
 
271
def update_inventory_old(item_id, warehouse_id, quantity, timestamp):
-
 
272
    item = get_Item(item_id)
-
 
273
    warehouse = get_Warehouse(warehouse_id) 
-
 
274
    time = to_py_date(timestamp)
-
 
275
    
-
 
276
    if not item:
-
 
277
        raise InventoryServiceException(106, "Item not found, how did you get this?")
-
 
278
    if not warehouse:
-
 
279
        raise InventoryServiceException(107, "Warehouse? Where?")
-
 
280
    try:
-
 
281
        item_inventory_history = ItemInventoryHistory()
-
 
282
        item_inventory_history.warehouse = warehouse
-
 
283
        item_inventory_history.item = item
-
 
284
        item_inventory_history.timestamp = time
-
 
285
        item_inventory_history.availibility = quantity
-
 
286
        
-
 
287
        current_inventory_snapshot = CurrentInventorySnapshot.get_by(item=item, warehouse=warehouse)
-
 
288
        if not current_inventory_snapshot:
-
 
289
            current_inventory_snapshot = CurrentInventorySnapshot()
-
 
290
            current_inventory_snapshot.item = item
-
 
291
            current_inventory_snapshot.warehouse = warehouse
-
 
292
            
-
 
293
        current_inventory_snapshot.availibility = quantity
-
 
294
        current_inventory_snapshot.checkedOn = time
-
 
295
        session.commit()
-
 
296
    except:
-
 
297
        raise InventoryServiceException(108, "Some unforeseen error while updating inventory")
-
 
298
    
-
 
299
def get_item_inventoy(item_id):
267
def get_item_inventoy(item_id):
300
    
268
    
301
    inventory = Item.get_by(id=item_id).currentInventory
269
    inventory = Item.get_by(id=item_id).currentInventory
302
    if not inventory:
270
    if not inventory:
303
        raise InventoryServiceException(108, "Some unforeseen error while updating inventory")
271
        raise InventoryServiceException(108, "Some unforeseen error while updating inventory")