| 7460 |
kshitij.so |
1 |
from elixir import *
|
|
|
2 |
from shop2020.model.v1.order.impl import DataService
|
|
|
3 |
from shop2020.model.v1.order.impl.DataService import Order, AmazonOrder
|
|
|
4 |
from datetime import datetime, timedelta, date ,time
|
|
|
5 |
import xlrd
|
|
|
6 |
from shop2020.clients.TransactionClient import TransactionClient
|
|
|
7 |
from shop2020.config.client.ConfigClient import ConfigClient
|
|
|
8 |
|
|
|
9 |
|
|
|
10 |
config_client = ConfigClient()
|
|
|
11 |
host = config_client.get_property('transaction_service_db_hostname')
|
|
|
12 |
DataService.initialize(db_hostname=host)
|
|
|
13 |
directory = "/tmp/amazon.xls"
|
|
|
14 |
amazonOrder = [[]]
|
|
|
15 |
sheet = xlrd.open_workbook(directory)
|
|
|
16 |
sh = sheet.sheet_by_index(0)
|
|
|
17 |
for i in range (0,sh.nrows):
|
|
|
18 |
amazonOrder.append([sh.cell_value(i,0),sh.cell_value(i,1),sh.cell_value(i,2)])
|
|
|
19 |
for row in amazonOrder:
|
|
|
20 |
if not len(row) == 0:
|
|
|
21 |
amazonOrderCode = row[0]
|
|
|
22 |
minDeliveryDate = row[1]
|
|
|
23 |
maxDeliveryDate = row[2]
|
|
|
24 |
print "=============================="
|
|
|
25 |
print "OrderId",amazonOrderCode
|
|
|
26 |
print "Minimum Delivery Date",minDeliveryDate
|
|
|
27 |
print "Maxmium Delivery Date",maxDeliveryDate
|
|
|
28 |
print "=============================="
|
|
|
29 |
print "\n"
|
|
|
30 |
print "Fetching OrderId's For Amazon Order Code"
|
|
|
31 |
print "==============================="
|
|
|
32 |
orders = AmazonOrder.query.filter(AmazonOrder.amazonOrderCode==amazonOrderCode).filter(AmazonOrder.status=='Acknowledgement-Sent').all()
|
|
|
33 |
for order in orders:
|
|
|
34 |
row = Order.query.filter(Order.id==order.orderId).first()
|
|
|
35 |
if row is None:
|
|
|
36 |
continue
|
|
|
37 |
expectedDeliveryTime = row.expected_delivery_time
|
|
|
38 |
promisedDeliveryTime = row.promised_delivery_time
|
|
|
39 |
expectedShippingTime = row.expected_shipping_time
|
|
|
40 |
promisedShippingTime = row.promised_shipping_time
|
|
|
41 |
deltaTime = (expectedDeliveryTime-expectedShippingTime)
|
|
|
42 |
|
|
|
43 |
|
|
|
44 |
print "+++++++++++++++++++++++"
|
|
|
45 |
print "Expected Delivery Time : ",expectedDeliveryTime
|
|
|
46 |
print "Promised Delivery Time : ",promisedDeliveryTime
|
|
|
47 |
print "Expected Shipping Time : ",expectedShippingTime
|
|
|
48 |
print "Promised Shipping Time : ",promisedShippingTime
|
|
|
49 |
print "Delta Time : ", deltaTime
|
|
|
50 |
print "=============================="
|
|
|
51 |
|
|
|
52 |
newExpectedDeliveryTime=datetime.strptime(minDeliveryDate, "%d-%m-%Y")
|
|
|
53 |
newTime = time(expectedDeliveryTime.hour, expectedDeliveryTime.minute, expectedDeliveryTime.second)
|
|
|
54 |
newExpectedDeliveryTime = datetime.combine(newExpectedDeliveryTime, newTime)
|
|
|
55 |
newPromisedDeliveryTime=datetime.strptime(minDeliveryDate, "%d-%m-%Y")
|
|
|
56 |
newTime = time(promisedDeliveryTime.hour, promisedDeliveryTime.minute, promisedDeliveryTime.second)
|
|
|
57 |
newPromisedDeliveryTime = datetime.combine(newPromisedDeliveryTime, newTime)
|
|
|
58 |
newExpectedShippingTime=newExpectedDeliveryTime-deltaTime
|
|
|
59 |
newPromisedShippingTime=newPromisedDeliveryTime-deltaTime
|
|
|
60 |
|
|
|
61 |
|
|
|
62 |
|
|
|
63 |
print "######################"
|
|
|
64 |
print "New Expected Delivery Time : ",newExpectedDeliveryTime
|
|
|
65 |
print "New Promised Delivery Time : ",newPromisedDeliveryTime
|
|
|
66 |
print "New Expected Shipping Time : ",newExpectedShippingTime
|
|
|
67 |
print "New Promised Shipping Time : ",newPromisedShippingTime
|
|
|
68 |
|
|
|
69 |
client = TransactionClient().get_client()
|
|
|
70 |
client.updateTimestampForAmazonOrder(order.orderId, ((newExpectedDeliveryTime-datetime(1970,1,1))-timedelta(hours = 5,minutes=30)).total_seconds(), ((newPromisedDeliveryTime-datetime(1970,1,1))-timedelta(hours = 5,minutes=30)).total_seconds(), ((newExpectedShippingTime-datetime(1970,1,1))-timedelta(hours = 5,minutes=30)).total_seconds(), ((newPromisedShippingTime-datetime(1970,1,1))-timedelta(hours = 5,minutes=30)).total_seconds())
|
|
|
71 |
|
|
|
72 |
|
|
|
73 |
|
|
|
74 |
|
|
|
75 |
|
|
|
76 |
|