Subversion Repositories SmartDukaan

Rev

Rev 8282 | Rev 8445 | Go to most recent revision | Details | Compare with Previous | 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,\
4600 varun.gupt 8
    LineItem as T_LineItem, Order as T_Order, Alert as T_Alert, OrderStatus, DelayReason, \
5527 anupam.sin 9
    PaymentSettlement as T_PaymentSettlement, CODVerificationAgent as T_CODVerificationAgent, \
7080 anupam.sin 10
    Attribute as T_Attribute, EmiScheme as T_EmiScheme, RechargeTransaction as T_rechargeTransaction, \
7311 kshitij.so 11
    FRC as T_FRC, HotspotStore as T_HotSpotStore, SourceDetail as T_SourceDetail , \
7967 anupam.sin 12
    AmazonOrder as T_AmazonOrder, StoreOrderDetail as T_StoreOrderDetail, StoreOrderCollection as T_StoreOrderCollection, \
8282 kshitij.so 13
    HotspotServiceMatrix as T_HotspotServiceMatrix, EbayOrder as T_EbayOrder, AmazonFbaSalesSnapshot as T_AmazonFbaSalesSnapshot
104 ashish 14
from shop2020.utils.Utils import to_java_date
4394 rajveer 15
from shop2020.model.v1.order.impl.DataService import Alert, Transaction
8282 kshitij.so 16
import datetime
104 ashish 17
 
18
def to_t_transaction(transaction):
19
    t_transaction = T_Transaction()
20
    t_transaction.id = transaction.id
483 rajveer 21
    t_transaction.createdOn = to_java_date(transaction.createdOn)
699 chandransh 22
    t_transaction.transactionStatus = transaction.status
483 rajveer 23
    t_transaction.statusDescription = transaction.status_message
24
    t_transaction.customer_id = transaction.customer_id
25
    t_transaction.shoppingCartid = transaction.shopping_cart_id
2219 varun.gupt 26
    t_transaction.coupon_code = transaction.coupon_code
2815 vikas 27
    t_transaction.sessionSource = transaction.session_source
28
    t_transaction.sessionStartTime = to_java_date(transaction.session_start_time)
3858 vikas 29
    t_transaction.firstSource = transaction.first_source
30
    t_transaction.firstSourceTime = to_java_date(transaction.first_source_start_time)
483 rajveer 31
    t_transaction.orders = []
32
    #populate orders
33
    for order in transaction.orders:
34
        t_order = to_t_order(order)
35
        t_transaction.orders.append(t_order)
36
    return t_transaction
37
 
38
def to_t_order(order):
39
    t_order = T_Order()
40
    t_order.id = order.id
41
    t_order.warehouse_id = order.warehouse_id
42
    t_order.logistics_provider_id = order.logistics_provider_id
4815 phani.kuma 43
    if order.doa_logistics_provider_id is not None:
44
        t_order.doa_logistics_provider_id = order.doa_logistics_provider_id
483 rajveer 45
    t_order.airwaybill_no = order.airwaybill_no
46
    t_order.tracking_id = order.tracking_id
47
    t_order.expected_delivery_time = to_java_date(order.expected_delivery_time)
3986 chandransh 48
    t_order.promised_delivery_time = to_java_date(order.promised_delivery_time)
4004 chandransh 49
    t_order.expected_shipping_time = to_java_date(order.expected_shipping_time)
4102 chandransh 50
    t_order.promised_shipping_time = to_java_date(order.promised_shipping_time)
6726 rajveer 51
    t_order.courier_delivery_time = to_java_date(order.courier_delivery_time)
483 rajveer 52
    t_order.customer_id = order.customer_id
53
    t_order.customer_name = order.customer_name
54
    t_order.customer_mobilenumber = order.customer_mobilenumber
55
    t_order.customer_pincode = order.customer_pincode
738 chandransh 56
    t_order.customer_address1 = order.customer_address1
57
    t_order.customer_address2 = order.customer_address2
669 chandransh 58
    t_order.customer_city = order.customer_city
59
    t_order.customer_state = order.customer_state
483 rajveer 60
    t_order.customer_email = order.customer_email    
699 chandransh 61
    t_order.status = order.status 
483 rajveer 62
    t_order.statusDescription = order.statusDescription
63
    t_order.total_amount = order.total_amount
6318 rajveer 64
    t_order.gvAmount = order.gvAmount
483 rajveer 65
    t_order.total_weight = order.total_weight
66
    t_order.created_timestamp = to_java_date(order.created_timestamp)
67
    t_order.invoice_number = order.invoice_number
68
    t_order.billed_by = order.billed_by
986 chandransh 69
    t_order.accepted_timestamp = to_java_date(order.accepted_timestamp)
70
    t_order.billing_timestamp = to_java_date(order.billing_timestamp)
71
    t_order.shipping_timestamp = to_java_date(order.shipping_timestamp)
72
    t_order.delivery_timestamp = to_java_date(order.delivery_timestamp)
1208 chandransh 73
    t_order.outofstock_timestamp = to_java_date(order.outofstock_timestamp)
4004 chandransh 74
    t_order.verification_timestamp = to_java_date(order.verification_timestamp)
642 chandransh 75
    t_order.jacket_number = order.jacket_number
1220 chandransh 76
    t_order.receiver = order.receiver
77
    t_order.batchNo = order.batchNo
78
    t_order.serialNo = order.serialNo
2536 chandransh 79
    t_order.doaFlag = order.doaFlag
80
    t_order.pickupRequestNo = order.pickupRequestNo
3064 chandransh 81
    t_order.cod = order.cod
5062 varun.gupt 82
    t_order.originalOrderId = order.originalOrderId
3581 chandransh 83
    if order.delay_reason:
84
        t_order.delayReason = DelayReason._NAMES_TO_VALUES[order.delay_reason]
4647 rajveer 85
    t_order.delayReasonText = order.delayReasonText
2676 vikas 86
    t_order.transactionId = order.transaction_id
483 rajveer 87
    t_order.lineitems = []
88
    for lineitem in order.lineitems:
89
        t_lineitem = to_t_lineitem(lineitem)
90
        t_order.lineitems.append(t_lineitem)
4192 anupam.sin 91
    if order.reship_timestamp:
92
        t_order.reship_timestamp = to_java_date(order.reship_timestamp)
93
    if order.refund_timestamp:
94
        t_order.refund_timestamp = to_java_date(order.refund_timestamp)
4506 phani.kuma 95
    if order.doa_auth_timestamp:
96
        t_order.doa_auth_timestamp = to_java_date(order.doa_auth_timestamp)
4192 anupam.sin 97
    if order.new_order_id:
98
        t_order.new_order_id = order.new_order_id
4581 phani.kuma 99
    t_order.pickup_timestamp = to_java_date(order.pickup_timestamp)
4269 anupam.sin 100
    t_order.previousStatus = order.previousStatus
101
    t_order.vendorId = order.vendorId
4709 rajveer 102
    t_order.refundReason = order.refund_reason
5110 mandeep.dh 103
    t_order.fulfilmentWarehouseId = order.fulfilmentWarehouseId
5189 varun.gupt 104
    t_order.vendorPaid = order.vendor_paid
4758 mandeep.dh 105
    if order.purchase_order_id:
106
        t_order.purchaseOrderId = order.purchase_order_id
5354 anupam.sin 107
    if order.received_return_timestamp:
108
        t_order.received_return_timestamp = to_java_date(order.received_return_timestamp)
109
    if order.first_dlvyatmp_timestamp:
110
        t_order.first_attempt_timestamp = to_java_date(order.first_dlvyatmp_timestamp)
5527 anupam.sin 111
    t_order.orderType = order.orderType
5555 rajveer 112
    t_order.pickupStoreId = order.pickupStoreId
113
    t_order.logisticsCod = not order.pickupStoreId and order.cod
6525 rajveer 114
    t_order.otg = order.otg
6903 anupam.sin 115
    t_order.insurer = order.insurer
116
    t_order.insuranceAmount = order.insuranceAmount
7190 amar.kumar 117
    t_order.freebieItemId = order.freebieItemId
7293 anupam.sin 118
    t_order.source = order.source
119
    t_order.storeId = order.storeId
120
    t_order.advanceAmount = order.advanceAmount
483 rajveer 121
    return t_order
122
 
123
def to_t_lineitem(lineitem):
124
    t_lineitem = T_LineItem()
125
    t_lineitem.id = lineitem.id
699 chandransh 126
    t_lineitem.item_id = lineitem.item_id
970 chandransh 127
    t_lineitem.productGroup = lineitem.productGroup
128
    t_lineitem.brand = lineitem.brand
129
    t_lineitem.model_number = lineitem.model_number
130
    t_lineitem.color = lineitem.color
131
    t_lineitem.model_name = lineitem.model_name
132
    t_lineitem.extra_info = lineitem.extra_info
483 rajveer 133
    t_lineitem.unit_weight = lineitem.unit_weight
134
    t_lineitem.unit_price = lineitem.unit_price
135
    t_lineitem.total_price = lineitem.total_price
996 varun.gupt 136
    t_lineitem.transfer_price = lineitem.transfer_price
7672 rajveer 137
    t_lineitem.nlc = lineitem.nlc
483 rajveer 138
    t_lineitem.total_weight = lineitem.total_weight 
669 chandransh 139
    t_lineitem.quantity = lineitem.quantity
2783 chandransh 140
    t_lineitem.item_number = lineitem.item_number
4658 mandeep.dh 141
    t_lineitem.serial_number = lineitem.serial_number
4172 rajveer 142
    t_lineitem.dealText = lineitem.dealText
4295 varun.gupt 143
    t_lineitem.warrantry_expiry_timestamp = to_java_date(lineitem.warranty_expiry_timestamp)
6039 amit.gupta 144
    t_lineitem.vatRate = lineitem.vatRate
4295 varun.gupt 145
 
483 rajveer 146
    return t_lineitem
147
 
148
def to_t_alert(alert):
149
    t_alert = T_Alert()
150
    t_alert.id = alert.id
4394 rajveer 151
    t_alert.description = alert.description
483 rajveer 152
    try:
4394 rajveer 153
        t_alert.timestamp = to_java_date(alert.timestamp)
483 rajveer 154
    except:
155
        pass
156
    t_alert.type = alert.type
4394 rajveer 157
    t_alert.status = alert.status
2783 chandransh 158
    return t_alert
4600 varun.gupt 159
 
160
def to_t_payment_settlement(payment_settlement):
161
    t_payment_settlement = T_PaymentSettlement()
162
 
163
    if payment_settlement:
4905 varun.gupt 164
        t_payment_settlement.referenceId = payment_settlement.referenceId
4600 varun.gupt 165
        t_payment_settlement.paymentGatewayId = payment_settlement.paymentGatewayId
166
        t_payment_settlement.settlementDate = to_java_date(payment_settlement.settlementDate)
167
        t_payment_settlement.serviceTax = payment_settlement.serviceTax
168
        t_payment_settlement.otherCharges = payment_settlement.otherCharges
169
        t_payment_settlement.netCollection = payment_settlement.netCollection
5447 anupam.sin 170
    return t_payment_settlement
171
 
172
def to_t_verification_agent(codVerificationAgent):
173
    t_verification_agent = T_CODVerificationAgent()
174
 
175
    if codVerificationAgent:
176
        t_verification_agent.orderId = codVerificationAgent.orderId
177
        t_verification_agent.agentEmailId = codVerificationAgent.verificationAgent
5527 anupam.sin 178
    return t_verification_agent    
179
 
180
def to_t_attribute(attribute):
6396 amit.gupta 181
    t_attribute = T_Attribute() 
5527 anupam.sin 182
    if attribute:
183
        t_attribute.name = attribute.name
184
        t_attribute.value = attribute.value
6396 amit.gupta 185
    return t_attribute
186
 
187
def to_t_emi_scheme(emi_scheme):
188
    t_emi_scheme = T_EmiScheme()
189
    if emi_scheme:
190
        t_emi_scheme.id = emi_scheme.id
191
        t_emi_scheme.bankId = emi_scheme.bankId
192
        t_emi_scheme.bankName = emi_scheme.bankName
193
        t_emi_scheme.gatewayId = emi_scheme.gatewayId
194
        t_emi_scheme.tenure = emi_scheme.tenure
195
        t_emi_scheme.tenureDescription = emi_scheme.tenureDescription
196
        t_emi_scheme.minAmount = emi_scheme.minAmount
197
        t_emi_scheme.chargeType = emi_scheme.chargeType
198
        t_emi_scheme.chargeValue = emi_scheme.chargeValue
7073 anupam.sin 199
    return t_emi_scheme
200
 
201
def to_t_rechargeTransaction(rechargeTransaction):
202
    t_recharge = T_rechargeTransaction()
203
    if rechargeTransaction:
7080 anupam.sin 204
        t_recharge.id = rechargeTransaction.id
205
        t_recharge.amount = rechargeTransaction.amount 
7075 rajveer 206
        t_recharge.circleId = rechargeTransaction.circleId
207
        t_recharge.operatorId = rechargeTransaction.operatorId
208
        t_recharge.plan = rechargeTransaction.plan 
7073 anupam.sin 209
        t_recharge.deviceNum = rechargeTransaction.deviceNum
210
        t_recharge.deviceType = rechargeTransaction.deviceType
211
        t_recharge.discount = rechargeTransaction.discount 
212
        t_recharge.email = rechargeTransaction.email
213
        t_recharge.name = rechargeTransaction.name
214
        t_recharge.cafNum = rechargeTransaction.cafNum
215
        t_recharge.simNum = rechargeTransaction.simNum
216
        t_recharge.isFrc = rechargeTransaction.isFrc
217
        t_recharge.status = rechargeTransaction.status
218
        t_recharge.storeId = rechargeTransaction.storeId
7080 anupam.sin 219
        t_recharge.alternateNum = rechargeTransaction.alternateNumber
220
        t_recharge.transactionTime = to_java_date(rechargeTransaction.transactionTime)
7096 anupam.sin 221
        t_recharge.description = rechargeTransaction.description
7139 amit.gupta 222
        t_recharge.payMethod = rechargeTransaction.payMethod
7169 anupam.sin 223
        t_recharge.paymentAmount = rechargeTransaction.paymentAmount
7369 rajveer 224
        t_recharge.spiceTID = rechargeTransaction.spiceTID
225
        t_recharge.providerTID = rechargeTransaction.providerTID
226
        t_recharge.aggTID = rechargeTransaction.aggTID
7080 anupam.sin 227
    return t_recharge
228
 
229
def to_t_frc(frc):
230
    t_frc = T_FRC()
231
    if frc:
232
        t_frc.id = frc.id
233
        t_frc.operatorId =frc.operatorId
234
        t_frc.circleId = frc.circleId
235
        t_frc.denomination = frc.denomination
236
        t_frc.maxDiscount = frc.maxDiscount
7096 anupam.sin 237
    return t_frc
238
 
239
def to_t_hotspot(hotspot):
240
    t_hotspot = T_HotSpotStore();
241
    if hotspot:
242
        t_hotspot.id = hotspot.id 
243
        t_hotspot.hotspotId = hotspot.hotspotId
244
        t_hotspot.companyId = hotspot.companyId
245
        t_hotspot.name = hotspot.name
246
        t_hotspot.city = hotspot.city
247
        t_hotspot.collectedAmount = hotspot.collectedAmount
248
        t_hotspot.availableLimit = hotspot.availableLimit
249
        t_hotspot.creditLimit = hotspot.creditLimit
250
        t_hotspot.salt = hotspot.salt
251
        t_hotspot.password = hotspot.password
252
        t_hotspot.isActive = hotspot.isActive
253
        t_hotspot.circleId = hotspot.circleId
7169 anupam.sin 254
        t_hotspot.email = hotspot.email
7308 rajveer 255
        t_hotspot.line1 = hotspot.line1
256
        t_hotspot.line2 = hotspot.line2
257
        t_hotspot.state = hotspot.state
258
        t_hotspot.pin = hotspot.pin
259
        t_hotspot.phone = hotspot.phone
260
        t_hotspot.approvalEmail = hotspot.approvalEmail
261
 
262
 
7263 anupam.sin 263
    return t_hotspot
264
 
265
def to_t_sourcedetail(detail):
266
    t_sourcedetail = T_SourceDetail()
267
    if detail:
268
        t_sourcedetail.id = detail.id
269
        t_sourcedetail.name = detail.name
270
        t_sourcedetail.email = detail.email
7410 amar.kumar 271
        t_sourcedetail.tinNumber = detail.tinNumber
7530 kshitij.so 272
        t_sourcedetail.lastUpdatedOn = to_java_date(detail.lastUpdatedOn)
7311 kshitij.so 273
    return t_sourcedetail
274
 
275
def to_t_amazonorder(AmazonOrder):
276
    t_amazonorder = T_AmazonOrder()
277
    t_amazonorder.orderId=AmazonOrder.orderId
278
    t_amazonorder.amazonOrderCode=AmazonOrder.amazonOrderCode
279
    t_amazonorder.amazonOrderItemCode=AmazonOrder.amazonOrderItemCode
280
    t_amazonorder.transactionId=AmazonOrder.transactionId
281
    t_amazonorder.item_id=AmazonOrder.item_id
282
    t_amazonorder.status=AmazonOrder.status
7386 anupam.sin 283
    return t_amazonorder
284
 
285
def to_t_storeOrderDetail(storeOrderDetail):
286
    t_storeOrderDetail = T_StoreOrderDetail()
287
    if storeOrderDetail:
288
        t_storeOrderDetail.orderId = storeOrderDetail.orderId
289
        t_storeOrderDetail.storeId = storeOrderDetail.storeId
290
        t_storeOrderDetail.advanceAmount = storeOrderDetail.advanceAmount
291
        t_storeOrderDetail.cashAmount = storeOrderDetail.cashAmount
292
        t_storeOrderDetail.cardAmount = storeOrderDetail.cardAmount
293
        t_storeOrderDetail.payStatus = storeOrderDetail.payStatus
7393 anupam.sin 294
        t_storeOrderDetail.edcBank = storeOrderDetail.edcBank
295
        t_storeOrderDetail.cashRefundAmount = storeOrderDetail.cashRefundAmount
296
        t_storeOrderDetail.cardRefundAmount = storeOrderDetail.cardRefundAmount
7423 anupam.sin 297
        t_storeOrderDetail.approvalCode = storeOrderDetail.approvalCode
7611 anupam.sin 298
        t_storeOrderDetail.cardType = storeOrderDetail.cardType
7426 anupam.sin 299
    return t_storeOrderDetail
300
 
301
def to_t_storeOrderCollection(storeOrderCollection):
302
    t_storeOrderCollection = T_StoreOrderCollection()
303
    if storeOrderCollection:
304
        t_storeOrderCollection.hotspotId = storeOrderCollection.hotspotId
305
        t_storeOrderCollection.orderId = storeOrderCollection.orderId
306
        t_storeOrderCollection.collectionType = storeOrderCollection.collectionType
307
        t_storeOrderCollection.productName = storeOrderCollection.productName
308
        t_storeOrderCollection.advanceAmount = storeOrderCollection.advanceAmount
309
        t_storeOrderCollection.cash = storeOrderCollection.cash
310
        t_storeOrderCollection.card = storeOrderCollection.card
7427 anupam.sin 311
        t_storeOrderCollection.addedAt = to_java_date(storeOrderCollection.addedAt)
312
        t_storeOrderCollection.pushedAt = to_java_date(storeOrderCollection.pushedAt)
7426 anupam.sin 313
        t_storeOrderCollection.pushedToOcr = storeOrderCollection.pushedToOcr
7967 anupam.sin 314
    return t_storeOrderCollection
315
 
316
def to_t_hotspotServiceMatrix(hotspotServiceMatrix):
317
    t_hotspotServiceMatrix = T_HotspotServiceMatrix()
318
    if hotspotServiceMatrix:
319
        t_hotspotServiceMatrix.storeId = hotspotServiceMatrix.storeId
320
        t_hotspotServiceMatrix.hotspotId = hotspotServiceMatrix.hotspotId
321
        t_hotspotServiceMatrix.rechargeService = hotspotServiceMatrix.rechargeService
322
        t_hotspotServiceMatrix.storeWebsiteService = hotspotServiceMatrix.storeWebsiteService
323
        t_hotspotServiceMatrix.pickupFromStoreService = hotspotServiceMatrix.pickupFromStoreService
324
    return t_hotspotServiceMatrix
8182 amar.kumar 325
 
326
def to_t_ebayOrder(ebayOrder):
327
    t_ebayOrder = T_EbayOrder()
328
    t_ebayOrder.orderId = ebayOrder.orderId
329
    t_ebayOrder.salesRecordNumber = ebayOrder.salesRecordNumber
330
    t_ebayOrder.paisaPayId = ebayOrder.paisaPayId
331
    t_ebayOrder.ebayListingId = ebayOrder.ebayListingId
332
    t_ebayOrder.subsidyAmount = ebayOrder.subsidyAmount
333
    t_ebayOrder.ebayTxnDate = to_java_date(ebayOrder.ebayTxnDate)
334
    t_ebayOrder.transactionId = ebayOrder.transactionId
335
    t_ebayOrder.listingName = ebayOrder.listingName
336
    t_ebayOrder.listingPrice = ebayOrder.listingPrice
8247 amar.kumar 337
    t_ebayOrder.bluedartPaisaPayRef = ebayOrder.bluedartPaisaPayRef
8182 amar.kumar 338
    return t_ebayOrder 
8282 kshitij.so 339
 
340
def to_t_amazonFbaSalesSnapshot(amazonFbaSalesSnapshot):
341
    t_amazonFbaSalesSnapshot = T_AmazonFbaSalesSnapshot()
342
    if amazonFbaSalesSnapshot:
343
        t_amazonFbaSalesSnapshot.dateOfSale = to_java_date(datetime.datetime.combine(amazonFbaSalesSnapshot.dateOfSale,datetime.time(0,0)))
344
        t_amazonFbaSalesSnapshot.item_id    = amazonFbaSalesSnapshot.item_id 
8363 vikram.rag 345
        t_amazonFbaSalesSnapshot.totalOrderCount = amazonFbaSalesSnapshot.totalOrderCount 
8282 kshitij.so 346
        t_amazonFbaSalesSnapshot.amazonFbaInventory = amazonFbaSalesSnapshot.amazonFbaInventory
347
        t_amazonFbaSalesSnapshot.isOutOfStock = amazonFbaSalesSnapshot.isOutOfStock
348
        t_amazonFbaSalesSnapshot.salePrice = amazonFbaSalesSnapshot.salePrice
349
        if amazonFbaSalesSnapshot.minFbaPrice is not None:
350
            t_amazonFbaSalesSnapshot.minFbaPrice = amazonFbaSalesSnapshot.minFbaPrice
351
        if amazonFbaSalesSnapshot.minMfnPrice is not None:    
352
            t_amazonFbaSalesSnapshot.minMfnPrice = amazonFbaSalesSnapshot.minMfnPrice
8363 vikram.rag 353
        t_amazonFbaSalesSnapshot.totalSale = amazonFbaSalesSnapshot.totalSale
354
        t_amazonFbaSalesSnapshot.promotionSale = amazonFbaSalesSnapshot.promotionSale    
355
        t_amazonFbaSalesSnapshot.promotionOrderCount = amazonFbaSalesSnapshot.promotionOrderCount
8282 kshitij.so 356
    return t_amazonFbaSalesSnapshot
357
 
7967 anupam.sin 358