| Line 401... |
Line 401... |
| 401 |
nodes = root.findall('HAWBDetails/HAWBHistory/HAWBUpdate')
|
401 |
nodes = root.findall('HAWBDetails/HAWBHistory/HAWBUpdate')
|
| 402 |
for element in reversed(nodes):
|
402 |
for element in reversed(nodes):
|
| 403 |
if element.findtext('Status', '') == 'SHUD' and (element.findtext('Condition', '') == 'ATDL' or element.findtext('Condition', '') == 'CSCN'):
|
403 |
if element.findtext('Status', '') == 'SHUD' and (element.findtext('Condition', '') == 'ATDL' or element.findtext('Condition', '') == 'CSCN'):
|
| 404 |
delivery_date = get_py_datetime(element.findtext('ActionDate', ''))
|
404 |
delivery_date = get_py_datetime(element.findtext('ActionDate', ''))
|
| 405 |
reason_for_nondelivery = element.findtext('CustomerDescription', '')
|
405 |
reason_for_nondelivery = element.findtext('CustomerDescription', '')
|
| 406 |
first_atdl_orders[order.airwaybill_no] = str(delivery_date) + "|" + reason_for_nondelivery
|
406 |
first_atdl_orders[order.airwaybill_no] = str(delivery_date) + "|" + reason_for_nondelivery.decode('utf-8','ignore').encode("utf-8")
|
| 407 |
break
|
407 |
break
|
| 408 |
except:
|
408 |
except:
|
| 409 |
pass
|
409 |
pass
|
| 410 |
|
410 |
|
| 411 |
print "FIRST DELIVERY ATTEMPT MADE Orders"
|
411 |
print "FIRST DELIVERY ATTEMPT MADE Orders"
|
| Line 425... |
Line 425... |
| 425 |
node_number = len(nodes)-1
|
425 |
node_number = len(nodes)-1
|
| 426 |
for element in reversed(nodes):
|
426 |
for element in reversed(nodes):
|
| 427 |
if element.findtext('Status', '') == 'SHDL' and (element.findtext('Condition', '') == 'DLVD' or element.findtext('Condition', '') == 'DPTT' or element.findtext('Condition', '') == 'DLPT' or element.findtext('Condition', '') == 'LTRB'):
|
427 |
if element.findtext('Status', '') == 'SHDL' and (element.findtext('Condition', '') == 'DLVD' or element.findtext('Condition', '') == 'DPTT' or element.findtext('Condition', '') == 'DLPT' or element.findtext('Condition', '') == 'LTRB'):
|
| 428 |
delivery_date = get_py_datetime(element.findtext('ActionDate', ''))
|
428 |
delivery_date = get_py_datetime(element.findtext('ActionDate', ''))
|
| 429 |
receiver = root.findtext('HAWBDetails/DeliveredTo', '')
|
429 |
receiver = root.findtext('HAWBDetails/DeliveredTo', '')
|
| 430 |
delivered_orders[order.airwaybill_no] = str(delivery_date) + "|" + receiver
|
430 |
delivered_orders[order.airwaybill_no] = str(delivery_date) + "|" + receiver.decode('utf-8','ignore').encode("utf-8")
|
| 431 |
break
|
431 |
break
|
| 432 |
elif element.findtext('Condition', '') == 'RTRN' and (element.findtext('Status', '') == 'SHRH' or element.findtext('Status', '') == 'SHUP'):
|
432 |
elif element.findtext('Condition', '') == 'RTRN' and (element.findtext('Status', '') == 'SHRH' or element.findtext('Status', '') == 'SHUP'):
|
| 433 |
delivery_date = get_py_datetime(element.findtext('ActionDate', ''))
|
433 |
delivery_date = get_py_datetime(element.findtext('ActionDate', ''))
|
| 434 |
if node_number < len(nodes)-1:
|
434 |
if node_number < len(nodes)-1:
|
| 435 |
reason_for_return = nodes[node_number+1].findtext('CustomerDescription', '')
|
435 |
reason_for_return = nodes[node_number+1].findtext('CustomerDescription', '')
|
| 436 |
else:
|
436 |
else:
|
| 437 |
reason_for_return = element.findtext('CustomerDescription', '')
|
437 |
reason_for_return = element.findtext('CustomerDescription', '')
|
| 438 |
returned_orders[order.airwaybill_no] = str(delivery_date) + "|" + reason_for_return
|
438 |
returned_orders[order.airwaybill_no] = str(delivery_date) + "|" + reason_for_return.decode('utf-8','ignore').encode("utf-8")
|
| 439 |
break
|
439 |
break
|
| 440 |
elif node_number == 0:
|
440 |
elif node_number == 0:
|
| 441 |
reason = root.findtext('HAWBDetails/CurrentStatus', '')
|
441 |
reason = root.findtext('HAWBDetails/CurrentStatus', '')
|
| 442 |
undelivered_orders[order.airwaybill_no] = reason
|
442 |
undelivered_orders[order.airwaybill_no] = reason.decode('utf-8','ignore').encode("utf-8")
|
| 443 |
break
|
443 |
break
|
| 444 |
node_number = node_number - 1
|
444 |
node_number = node_number - 1
|
| 445 |
except:
|
445 |
except:
|
| 446 |
pass
|
446 |
pass
|
| 447 |
|
447 |
|