| Line 298... |
Line 298... |
| 298 |
order = Order.query.filter_by(airwaybill_no=awb, logistics_provider_id = provider_id).first()
|
298 |
order = Order.query.filter_by(airwaybill_no=awb, logistics_provider_id = provider_id).first()
|
| 299 |
if order == None:
|
299 |
if order == None:
|
| 300 |
raise TransactionServiceException(102, "No order found for the awb: " + awb)
|
300 |
raise TransactionServiceException(102, "No order found for the awb: " + awb)
|
| 301 |
order.status = OrderStatus.SHIPPED_TO_LOGST
|
301 |
order.status = OrderStatus.SHIPPED_TO_LOGST
|
| 302 |
order.statusDescription = "Order picked up by Courier Company"
|
302 |
order.statusDescription = "Order picked up by Courier Company"
|
| 303 |
order.pickup_timestamp = to_py_date(pickup_timestamp)
|
303 |
order.pickup_timestamp = pickup_timestamp
|
| 304 |
session.commit()
|
304 |
session.commit()
|
| 305 |
|
305 |
|
| 306 |
current_time = datetime.datetime.now()
|
306 |
current_time = datetime.datetime.now()
|
| 307 |
to_datetime = datetime.datetime(current_time.year, current_time.month, current_time.day)
|
307 |
to_datetime = datetime.datetime(current_time.year, current_time.month, current_time.day)
|
| 308 |
from_datetime = to_datetime - datetime.timedelta(1)
|
308 |
from_datetime = to_datetime - datetime.timedelta(2)
|
| 309 |
orders_not_picked_up = Order.query.filter_by(logistics_provider_id = provider_id).filter_by(status=OrderStatus.SHIPPED_FROM_WH).filter(Order.shipping_timestamp >= from_datetime).filter(Order.shipping_timestamp <= to_datetime).all()
|
309 |
orders_not_picked_up = Order.query.filter_by(logistics_provider_id = provider_id).filter_by(status=OrderStatus.SHIPPED_FROM_WH).filter(Order.shipping_timestamp >= from_datetime).filter(Order.shipping_timestamp <= to_datetime).all()
|
| 310 |
return orders_not_picked_up
|
310 |
return orders_not_picked_up
|
| 311 |
|
311 |
|
| 312 |
def mark_orders_as_delivered(provider_id, delivered_orders):
|
312 |
def mark_orders_as_delivered(provider_id, delivered_orders):
|
| 313 |
for awb, detail in delivered_orders.iteritems():
|
313 |
for awb, detail in delivered_orders.iteritems():
|
| Line 327... |
Line 327... |
| 327 |
order.status = OrderStatus.FAILED
|
327 |
order.status = OrderStatus.FAILED
|
| 328 |
order.delivery_timestamp, reason = detail.split('|')
|
328 |
order.delivery_timestamp, reason = detail.split('|')
|
| 329 |
order.statusDescription = "Order Returned to Origin:" + reason
|
329 |
order.statusDescription = "Order Returned to Origin:" + reason
|
| 330 |
session.commit()
|
330 |
session.commit()
|
| 331 |
|
331 |
|
| - |
|
332 |
def update_non_delivery_reason(provider_id, undelivered_orders):
|
| - |
|
333 |
for awb, reason in undelivered_orders.iteritems():
|
| - |
|
334 |
order = Order.query.filter_by(airwaybill_no=awb, logistics_provider_id = provider_id).first()
|
| - |
|
335 |
if order == None:
|
| - |
|
336 |
raise TransactionServiceException(103, "No order found for the awb:" + awb)
|
| - |
|
337 |
order.statusDescription = reason
|
| - |
|
338 |
session.commit()
|
| - |
|
339 |
|
| 332 |
def get_alerts(order_id, all):
|
340 |
def get_alerts(order_id, all):
|
| 333 |
query = Alerts.query.filter_by(order_id=order_id)
|
341 |
query = Alerts.query.filter_by(order_id=order_id)
|
| 334 |
if not all:
|
342 |
if not all:
|
| 335 |
query = query.filter_by(valid=True)
|
343 |
query = query.filter_by(valid=True)
|
| 336 |
return query.all()
|
344 |
return query.all()
|