| Line 71... |
Line 71... |
| 71 |
if t_order.logistics_provider_id:
|
71 |
if t_order.logistics_provider_id:
|
| 72 |
order.logistics_provider_id = t_order.logistics_provider_id
|
72 |
order.logistics_provider_id = t_order.logistics_provider_id
|
| 73 |
order.airwaybill_no = t_order.airwaybill_no
|
73 |
order.airwaybill_no = t_order.airwaybill_no
|
| 74 |
order.tracking_id = t_order.tracking_id
|
74 |
order.tracking_id = t_order.tracking_id
|
| 75 |
if t_order.expected_shipping_time:
|
75 |
if t_order.expected_shipping_time:
|
| 76 |
order.expected_shipping_time = to_py_date(t_order.expected_shipping_time)
|
76 |
order.expected_shipping_time = to_py_date(t_order.expected_shipping_time).replace(hour=15, minute=0, second=0)
|
| 77 |
if t_order.expected_delivery_time:
|
77 |
if t_order.expected_delivery_time:
|
| 78 |
order.expected_delivery_time = to_py_date(t_order.expected_delivery_time)
|
78 |
order.expected_delivery_time = to_py_date(t_order.expected_delivery_time)
|
| 79 |
order.promised_delivery_time = to_py_date(t_order.expected_delivery_time)
|
79 |
order.promised_delivery_time = to_py_date(t_order.expected_delivery_time)
|
| 80 |
if t_order.customer_id:
|
80 |
if t_order.customer_id:
|
| 81 |
order.customer_id = t_order.customer_id
|
81 |
order.customer_id = t_order.customer_id
|
| Line 200... |
Line 200... |
| 200 |
|
200 |
|
| 201 |
order.warehouse_id = logistics_info.warehouseId
|
201 |
order.warehouse_id = logistics_info.warehouseId
|
| 202 |
order.logistics_provider_id = logistics_info.providerId
|
202 |
order.logistics_provider_id = logistics_info.providerId
|
| 203 |
order.airwaybill_no = logistics_info.airway_billno
|
203 |
order.airwaybill_no = logistics_info.airway_billno
|
| 204 |
order.tracking_id = order.airwaybill_no
|
204 |
order.tracking_id = order.airwaybill_no
|
| 205 |
order.expected_shipping_time = current_time + datetime.timedelta(days=logistics_info.shippingTime)
|
205 |
order.expected_shipping_time = (current_time + datetime.timedelta(days=logistics_info.shippingTime)).replace(hour=15, minute=0, second=0)
|
| 206 |
order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
|
206 |
order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
|
| 207 |
order.promised_delivery_time = order.expected_delivery_time
|
207 |
order.promised_delivery_time = order.expected_delivery_time
|
| 208 |
|
208 |
|
| 209 |
catalog_client = CatalogClient().get_client()
|
209 |
catalog_client = CatalogClient().get_client()
|
| 210 |
catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
|
210 |
catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
|
| Line 228... |
Line 228... |
| 228 |
|
228 |
|
| 229 |
order.warehouse_id = logistics_info.warehouseId
|
229 |
order.warehouse_id = logistics_info.warehouseId
|
| 230 |
order.logistics_provider_id = logistics_info.providerId
|
230 |
order.logistics_provider_id = logistics_info.providerId
|
| 231 |
order.airwaybill_no = logistics_info.airway_billno
|
231 |
order.airwaybill_no = logistics_info.airway_billno
|
| 232 |
order.tracking_id = order.airwaybill_no
|
232 |
order.tracking_id = order.airwaybill_no
|
| 233 |
order.expected_shipping_time = current_time + datetime.timedelta(days=logistics_info.shippingTime)
|
233 |
order.expected_shipping_time = (current_time + datetime.timedelta(days=logistics_info.shippingTime)).replace(hour=12, minute=0, second=0)
|
| 234 |
order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
|
234 |
order.expected_delivery_time = current_time + datetime.timedelta(days=logistics_info.deliveryTime)
|
| 235 |
order.promised_delivery_time = order.expected_delivery_time
|
235 |
order.promised_delivery_time = order.expected_delivery_time
|
| 236 |
|
236 |
|
| 237 |
catalog_client = CatalogClient().get_client()
|
237 |
catalog_client = CatalogClient().get_client()
|
| 238 |
catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
|
238 |
catalog_client.reserveItemInWarehouse(item_id, logistics_info.warehouseId, order.lineitems[0].quantity)
|
| Line 1408... |
Line 1408... |
| 1408 |
def mark_transaction_as_processed(transactionId, category):
|
1408 |
def mark_transaction_as_processed(transactionId, category):
|
| 1409 |
TransactionRequiringExtraProcessing.query.filter_by(transaction_id = transactionId).filter_by(category = ExtraTransactionProcessingType._VALUES_TO_NAMES.get(category)).delete()
|
1409 |
TransactionRequiringExtraProcessing.query.filter_by(transaction_id = transactionId).filter_by(category = ExtraTransactionProcessingType._VALUES_TO_NAMES.get(category)).delete()
|
| 1410 |
session.commit()
|
1410 |
session.commit()
|
| 1411 |
return
|
1411 |
return
|
| 1412 |
|
1412 |
|
| - |
|
1413 |
def get_item_wise_risky_orders_count():
|
| - |
|
1414 |
"""
|
| - |
|
1415 |
Returns a map containing the number of risky orders keyed by item id. A risky order
|
| - |
|
1416 |
is defined as one whose shipping date is about to expire.
|
| - |
|
1417 |
"""
|
| - |
|
1418 |
item_wise_risky_orders_count = {}
|
| - |
|
1419 |
shipping_cutoff_time = (datetime.datetime.now() + datetime.timedelta(days = 1)).replace(hour=15, minute=0, second=0)
|
| - |
|
1420 |
orders = Order.query.filter(Order.status.in_(tuple([OrderStatus.SUBMITTED_FOR_PROCESSING, OrderStatus.INVENTORY_LOW, OrderStatus.ACCEPTED]))).filter(Order.expected_shipping_time <= shipping_cutoff_time).all()
|
| - |
|
1421 |
for order in orders:
|
| - |
|
1422 |
for lineitem in order.lineitems:
|
| - |
|
1423 |
quantity = lineitem.quantity
|
| - |
|
1424 |
if item_wise_risky_orders_count.has_key(lineitem.item_id):
|
| - |
|
1425 |
quantity = quantity + item_wise_risky_orders_count[lineitem.item_id]
|
| - |
|
1426 |
|
| - |
|
1427 |
item_wise_risky_orders_count[lineitem.item_id] = quantity
|
| - |
|
1428 |
return item_wise_risky_orders_count
|
| - |
|
1429 |
|
| 1413 |
def close_session():
|
1430 |
def close_session():
|
| 1414 |
if session.is_active:
|
1431 |
if session.is_active:
|
| 1415 |
print "session is active. closing it."
|
1432 |
print "session is active. closing it."
|
| 1416 |
session.close()
|
1433 |
session.close()
|
| 1417 |
|
1434 |
|