| 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):
|