Subversion Repositories SmartDukaan

Rev

Rev 132 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
104 ashish 1
'''
2
Created on 29-Mar-2010
3
 
4
@author: ashish
5
'''
6
 
7
from shop2020.thriftpy.model.v1.order.ttypes import Transaction as T_Transaction,\
8
    Item as T_Item, LineItem as T_LineItem
9
from shop2020.thriftpy.model.v1.order.ttypes import Billing as T_Billing
10
from shop2020.thriftpy.model.v1.order.ttypes import Shipment as T_Shipment
11
from shop2020.utils.Utils import to_java_date
12
from shop2020.utils import OrderStatus
13
from shop2020.model.v1.order.impl.DataService import Billing
14
from shop2020.utils.OrderStatus import get_t_status
15
 
16
def to_t_transaction(transaction):
17
    t_transaction = T_Transaction()
18
    t_transaction.id = transaction.id
19
    t_transaction.createdOn = to_java_date(transaction.createdOn)
20
    t_transaction.transactionStatus = OrderStatus.get_t_status(transaction.status)
21
    t_transaction.statusDescription = transaction.status_details
22
 
23
    return t_transaction
24
 
25
def to_t_billing(billing):
26
    t_billing = T_Billing()
27
    t_billing.id = billing.id
28
    t_billing.billNumber = billing.bill_number
29
    t_billing.generatedBy = billing.generated_by
30
    t_billing.generatedTimestamp = to_java_date(billing.created_on)
31
    t_billing.lineItem = to_t_lineitem(billing.line_item)
32
 
33
def to_t_lineitem(lineitem):
34
    t_line_item = T_LineItem()
35
    t_line_item.id = lineitem.id
36
    t_line_item.item = lineitem.item_id
37
    t_line_item.addedOn = to_java_date(lineitem.added_on)
38
    t_line_item.additionalInfo = {}
39
    if lineitem.additional_info:
40
        for k,v in lineitem.additional_info.iteritems():
41
            t_line_item.additionalInfo[k] = v
42
    return t_line_item
43
 
44
def to_t_shipment(shipment):
45
    t_shipment = T_Shipment()
46
    t_shipment.id = shipment.id
47
    t_shipment.address = shipment.address
48
    t_shipment.airwayBillNo = shipment.airway_bill_no
49
    try:
50
        t_shipment.deliveryTimestamp = to_java_date(shipment.delivery_time)
51
    except:
52
        print "no delivery timestamp"
53
    t_shipment.insurance = shipment.insurance_value
54
    t_shipment.provider = shipment.provider
55
    t_shipment.value = shipment.declared_value
56
    try:
57
        t_shipment.shipmentTimestamp = to_java_date(shipment.shipment_time)
58
    except:
59
        print "no shipment timestamp"
60
    t_shipment.status = get_t_status(shipment.status)
61
    t_shipment.weight = shipment.weight
62
    t_shipment.trackingId = shipment.tracking_id
63
 
64
    t_shipment.lineItems = []
65
    if shipment.line_items:
66
        for line_item in shipment.line_items:
67
            t_shipment.lineItems.append(to_t_lineitem(line_item))
68
    return t_shipment