| Line 3... |
Line 3... |
| 3 |
|
3 |
|
| 4 |
@author: ashish
|
4 |
@author: ashish
|
| 5 |
'''
|
5 |
'''
|
| 6 |
|
6 |
|
| 7 |
from shop2020.thriftpy.model.v1.order.ttypes import Transaction as T_Transaction,\
|
7 |
from shop2020.thriftpy.model.v1.order.ttypes import Transaction as T_Transaction,\
|
| - |
|
8 |
Item as T_Item, LineItem as T_LineItem, PaymentInfo, Payment, BillingInfo,\
|
| 8 |
Item as T_Item, LineItem as T_LineItem
|
9 |
ShipmentInfo, Item, OrderInfo as T_OrderInfo
|
| 9 |
from shop2020.thriftpy.model.v1.order.ttypes import Billing as T_Billing
|
10 |
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.thriftpy.model.v1.order.ttypes import Shipment as T_Shipment
|
| 11 |
from shop2020.utils.Utils import to_java_date
|
12 |
from shop2020.utils.Utils import to_java_date
|
| 12 |
from shop2020.utils import OrderStatus
|
13 |
from shop2020.utils import OrderStatus
|
| 13 |
from shop2020.model.v1.order.impl.DataService import Billing
|
14 |
from shop2020.model.v1.order.impl.DataService import Billing
|
| Line 17... |
Line 18... |
| 17 |
t_transaction = T_Transaction()
|
18 |
t_transaction = T_Transaction()
|
| 18 |
t_transaction.id = transaction.id
|
19 |
t_transaction.id = transaction.id
|
| 19 |
t_transaction.createdOn = to_java_date(transaction.createdOn)
|
20 |
t_transaction.createdOn = to_java_date(transaction.createdOn)
|
| 20 |
t_transaction.transactionStatus = OrderStatus.get_t_status(transaction.status)
|
21 |
t_transaction.transactionStatus = OrderStatus.get_t_status(transaction.status)
|
| 21 |
t_transaction.statusDescription = transaction.status_details
|
22 |
t_transaction.statusDescription = transaction.status_details
|
| - |
|
23 |
t_transaction.expectedDeliveryTime = to_java_date(transaction.expected_delivery_time)
|
| - |
|
24 |
t_transaction.customer_id = transaction.customer_id
|
| - |
|
25 |
t_transaction.shoppingCartid = transaction.shopping_cart_id
|
| - |
|
26 |
t_transaction.orderInfo = to_t_order_info(transaction.lineitems)
|
| - |
|
27 |
t_transaction.shipmentInfo = to_t_shipment_info(transaction.shipments)
|
| - |
|
28 |
t_transaction.billingInfo = to_t_billing_info(transaction.lineitems)
|
| - |
|
29 |
t_transaction.paymentInfo = to_t_payment_info(transaction.payments)
|
| - |
|
30 |
#populate order info
|
| 22 |
|
31 |
|
| 23 |
return t_transaction
|
32 |
return t_transaction
|
| 24 |
|
33 |
|
| - |
|
34 |
def to_t_payment_info(payments):
|
| - |
|
35 |
t_payment_info = PaymentInfo()
|
| - |
|
36 |
if payments:
|
| - |
|
37 |
payment_map = {}
|
| - |
|
38 |
for payment in payments:
|
| - |
|
39 |
t_payment_info.id = payment.id
|
| - |
|
40 |
t_payment = Payment()
|
| - |
|
41 |
t_payment.merchant_tx_id = payment.merchant_tx_id
|
| - |
|
42 |
t_payment.bank_tx_id = payment.bank_tx_id
|
| - |
|
43 |
t_payment.mode = payment.mode
|
| - |
|
44 |
t_payment.amount = payment.amount
|
| - |
|
45 |
t_payment.status = payment.status
|
| - |
|
46 |
t_payment.description = payment.status_message
|
| - |
|
47 |
t_payment.submissionTimestamp = payment.start_time
|
| - |
|
48 |
t_payment.completionTimestamp = payment.finish_time
|
| - |
|
49 |
payment_map[t_payment.submissionTimestamp] = t_payment
|
| - |
|
50 |
t_payment_info.payments = payment_map
|
| - |
|
51 |
|
| - |
|
52 |
return t_payment_info
|
| - |
|
53 |
|
| - |
|
54 |
def to_t_billing_info(lineitems):
|
| - |
|
55 |
t_billing_info = BillingInfo()
|
| - |
|
56 |
if lineitems:
|
| - |
|
57 |
billed_items = []
|
| - |
|
58 |
billings = []
|
| - |
|
59 |
for item in lineitems:
|
| - |
|
60 |
#each item has a billing
|
| - |
|
61 |
t_billing_info.id = item.transaction.id
|
| - |
|
62 |
billing = item.billing
|
| - |
|
63 |
if billing:
|
| - |
|
64 |
if billed_items.count(billing.id) == 0:
|
| - |
|
65 |
billed_items.append(billing.id)
|
| - |
|
66 |
billings.append(to_t_billing(billing))
|
| - |
|
67 |
t_billing_info.billings = billings
|
| - |
|
68 |
return t_billing_info
|
| - |
|
69 |
|
| - |
|
70 |
def to_t_order_info(lineitems):
|
| - |
|
71 |
t_order_info = T_OrderInfo()
|
| - |
|
72 |
if lineitems:
|
| - |
|
73 |
line_item_list = []
|
| - |
|
74 |
for lineitem in lineitems:
|
| - |
|
75 |
t_order_info.id = lineitem.transaction.id
|
| - |
|
76 |
line_item_list.append(to_t_lineitem(lineitem))
|
| - |
|
77 |
t_order_info.lineitems = line_item_list
|
| - |
|
78 |
return t_order_info
|
| - |
|
79 |
|
| - |
|
80 |
def to_t_shipment_info(shipments):
|
| - |
|
81 |
shipment_info = ShipmentInfo()
|
| - |
|
82 |
if shipments:
|
| - |
|
83 |
shipment_list = []
|
| - |
|
84 |
for shipment in shipments:
|
| - |
|
85 |
shipment_info.id = shipment.transaction.id
|
| - |
|
86 |
shipment_list.append(to_t_shipment(shipment))
|
| - |
|
87 |
shipment_info.shipments = shipment_list
|
| - |
|
88 |
return shipment_info
|
| - |
|
89 |
|
| 25 |
def to_t_billing(billing):
|
90 |
def to_t_billing(billing):
|
| 26 |
t_billing = T_Billing()
|
91 |
t_billing = T_Billing()
|
| 27 |
t_billing.id = billing.id
|
92 |
t_billing.id = billing.id
|
| 28 |
t_billing.billNumber = billing.bill_number
|
93 |
t_billing.billNumber = billing.bill_number
|
| 29 |
t_billing.generatedBy = billing.generated_by
|
94 |
t_billing.generatedBy = billing.generated_by
|
| - |
|
95 |
try:
|
| 30 |
t_billing.generatedTimestamp = to_java_date(billing.created_on)
|
96 |
t_billing.generatedTimestamp = to_java_date(billing.created_on)
|
| - |
|
97 |
except:
|
| - |
|
98 |
print "date not found"
|
| 31 |
t_billing.lineItem = to_t_lineitem(billing.line_item)
|
99 |
t_billing.lineItem = to_t_lineitem(billing.line_item)
|
| - |
|
100 |
return t_billing
|
| 32 |
|
101 |
|
| 33 |
def to_t_lineitem(lineitem):
|
102 |
def to_t_lineitem(lineitem):
|
| 34 |
t_line_item = T_LineItem()
|
103 |
t_line_item = T_LineItem()
|
| 35 |
t_line_item.id = lineitem.id
|
104 |
t_line_item.id = lineitem.id
|
| - |
|
105 |
if lineitem.item_info:
|
| 36 |
t_line_item.item = lineitem.item_id
|
106 |
t_line_item.item = to_t_item_info(lineitem.item_info)
|
| - |
|
107 |
|
| 37 |
t_line_item.addedOn = to_java_date(lineitem.added_on)
|
108 |
t_line_item.addedOn = to_java_date(lineitem.added_on)
|
| 38 |
t_line_item.additionalInfo = {}
|
109 |
t_line_item.additionalInfo = {}
|
| 39 |
if lineitem.additional_info:
|
110 |
if lineitem.additional_info:
|
| 40 |
for k,v in lineitem.additional_info.iteritems():
|
111 |
for k,v in lineitem.additional_info.iteritems():
|
| 41 |
t_line_item.additionalInfo[k] = v
|
112 |
t_line_item.additionalInfo[k] = v
|
| 42 |
return t_line_item
|
113 |
return t_line_item
|
| 43 |
|
114 |
|
| - |
|
115 |
def to_t_item_info(item_info):
|
| - |
|
116 |
t_item = Item()
|
| - |
|
117 |
t_item.id = item_info.line_item.item_id
|
| - |
|
118 |
t_item.price = item_info.price
|
| - |
|
119 |
t_item.weight = item_info.weight
|
| - |
|
120 |
return t_item
|
| - |
|
121 |
|
| 44 |
def to_t_shipment(shipment):
|
122 |
def to_t_shipment(shipment):
|
| 45 |
t_shipment = T_Shipment()
|
123 |
t_shipment = T_Shipment()
|
| 46 |
t_shipment.id = shipment.id
|
124 |
t_shipment.id = shipment.id
|
| 47 |
t_shipment.address = shipment.address
|
125 |
t_shipment.address = shipment.address
|
| 48 |
t_shipment.airwayBillNo = shipment.airway_bill_no
|
126 |
t_shipment.airwayBillNo = shipment.airway_bill_no
|
| Line 64... |
Line 142... |
| 64 |
t_shipment.lineItems = []
|
142 |
t_shipment.lineItems = []
|
| 65 |
if shipment.line_items:
|
143 |
if shipment.line_items:
|
| 66 |
for line_item in shipment.line_items:
|
144 |
for line_item in shipment.line_items:
|
| 67 |
t_shipment.lineItems.append(to_t_lineitem(line_item))
|
145 |
t_shipment.lineItems.append(to_t_lineitem(line_item))
|
| 68 |
return t_shipment
|
146 |
return t_shipment
|
| - |
|
147 |
|