Subversion Repositories SmartDukaan

Rev

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

Rev 22545 Rev 22546
Line 427... Line 427...
427
            for element in reversed(nodes):
427
            for element in reversed(nodes):
428
                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
                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'):
429
                    delivery_date = get_py_datetime(element.findtext('ActionDate', ''))
429
                    delivery_date = get_py_datetime(element.findtext('ActionDate', ''))
430
                    receiver = root.findtext('HAWBDetails/DeliveredTo', '')
430
                    receiver = root.findtext('HAWBDetails/DeliveredTo', '')
431
                    #Added replacement as separator may come itself in reciever
431
                    #Added replacement as separator may come itself in reciever
-
 
432
                    re.sub(r'[^\x00-\x7F]+','', receiver)
432
                    delivered_orders[order.airwaybill_no] = str(delivery_date) + "|" +  re.sub(r'[^\x00-\x7F]\s+','', receiver).encode('utf-8', 'ignore').strip().replace("|", "l")
433
                    delivered_orders[order.airwaybill_no] = str(delivery_date) + "|" +  sanitizeUnicode(receiver).replace("|", "l")
433
                    break
434
                    break
434
                elif element.findtext('Condition', '') == 'RTRN' and (element.findtext('Status', '') == 'SHRH' or element.findtext('Status', '') == 'SHUP'):
435
                elif element.findtext('Condition', '') == 'RTRN' and (element.findtext('Status', '') == 'SHRH' or element.findtext('Status', '') == 'SHUP'):
435
                    delivery_date = get_py_datetime(element.findtext('ActionDate', ''))
436
                    delivery_date = get_py_datetime(element.findtext('ActionDate', ''))
436
                    if node_number < len(nodes)-1:
437
                    if node_number < len(nodes)-1:
437
                        reason_for_return = nodes[node_number+1].findtext('CustomerDescription', '')
438
                        reason_for_return = nodes[node_number+1].findtext('CustomerDescription', '')
438
                    else:
439
                    else:
439
                        reason_for_return = element.findtext('CustomerDescription', '')
440
                        reason_for_return = element.findtext('CustomerDescription', '')
440
                    returned_orders[order.airwaybill_no] = str(delivery_date) + "|" + reason_for_return.decode('utf-8','ignore').encode("utf-8")
441
                    returned_orders[order.airwaybill_no] = str(delivery_date) + "|" + sanitizeUnicode(reason_for_return)
441
                    break
442
                    break
442
                elif node_number == 0:
443
                elif node_number == 0:
443
                    reason = root.findtext('HAWBDetails/CurrentStatus', '')
444
                    reason = root.findtext('HAWBDetails/CurrentStatus', '')
444
                    undelivered_orders[order.airwaybill_no] = reason.decode('utf-8','ignore').encode("utf-8")
445
                    undelivered_orders[order.airwaybill_no] = sanitizeUnicode(reason)
445
                    break
446
                    break
446
                node_number = node_number - 1
447
                node_number = node_number - 1
447
        except:
448
        except:
448
            print "order.airwaybill_no==========", order.airwaybill_no
449
            print "order.airwaybill_no==========", order.airwaybill_no
449
            traceback.print_exc()
450
            traceback.print_exc()
Line 610... Line 611...
610
    branchId_OriginCitymap = {'DEL':'7933'}
611
    branchId_OriginCitymap = {'DEL':'7933'}
611
    if originCity is None or originCity == '':
612
    if originCity is None or originCity == '':
612
        return ''
613
        return ''
613
    else:
614
    else:
614
        return branchId_OriginCitymap.get(originCity)
615
        return branchId_OriginCitymap.get(originCity)
-
 
616
    
-
 
617
def sanitizeUnicode(unicodeText):
-
 
618
    #remove unicode characters
-
 
619
    unicodeText = re.sub(r'[^\x00-\x7F]+','', unicodeText)
-
 
620
    #remove whitespaces and strip
-
 
621
    unicodeText = re.sub(r'[^\S]+',' ', unicodeText)
-
 
622
    return unicodeText.strip().encode('utf-8', 'ignore')
615
 
623
 
616
def main():
624
def main():
617
    parser = optparse.OptionParser()
625
    parser = optparse.OptionParser()
618
    parser.add_option("-p", "--pickup", dest="pickup_report",
626
    parser.add_option("-p", "--pickup", dest="pickup_report",
619
                   action="store_true",
627
                   action="store_true",