| Line 19... |
Line 19... |
| 19 |
|
19 |
|
| 20 |
config_client = ConfigClient()
|
20 |
config_client = ConfigClient()
|
| 21 |
host_memCache = config_client.get_property('mem_cache_host_dtr')
|
21 |
host_memCache = config_client.get_property('mem_cache_host_dtr')
|
| 22 |
host = config_client.get_property('mongo_dtr_host')
|
22 |
host = config_client.get_property('mongo_dtr_host')
|
| 23 |
|
23 |
|
| - |
|
24 |
saholicPricingHost = config_client.get_property('dtr_pricing_host')
|
| - |
|
25 |
|
| 24 |
mc = MemCache(host_memCache)
|
26 |
mc = MemCache(host_memCache)
|
| 25 |
|
27 |
|
| 26 |
|
28 |
|
| 27 |
con = None
|
29 |
con = None
|
| 28 |
SOURCE_MAP = {'AMAZON':1,'FLIPKART':2,'SNAPDEAL':3,'SAHOLIC':4, 'SHOPCLUES.COM':5,'PAYTM.COM':6,'HOMESHOP18':7}
|
30 |
SOURCE_MAP = {'AMAZON':1,'FLIPKART':2,'SNAPDEAL':3,'SAHOLIC':4, 'SHOPCLUES.COM':5,'PAYTM.COM':6,'HOMESHOP18':7}
|
| Line 114... |
Line 116... |
| 114 |
return {}
|
116 |
return {}
|
| 115 |
|
117 |
|
| 116 |
if data.get('ignorePricing') ==1:
|
118 |
if data.get('ignorePricing') ==1:
|
| 117 |
return {'_id':data['_id'],'available_price':data['available_price'],'in_stock':data['in_stock'],'source_id':4,'source_product_name':data['source_product_name'],'marketPlaceUrl':data['marketPlaceUrl'],'thumbnail':data['thumbnail'], 'coupon':data['coupon'], 'codAvailable':data['codAvailable'], 'tagline': data['tagline'], 'offer': data['offer']}
|
119 |
return {'_id':data['_id'],'available_price':data['available_price'],'in_stock':data['in_stock'],'source_id':4,'source_product_name':data['source_product_name'],'marketPlaceUrl':data['marketPlaceUrl'],'thumbnail':data['thumbnail'], 'coupon':data['coupon'], 'codAvailable':data['codAvailable'], 'tagline': data['tagline'], 'offer': data['offer']}
|
| 118 |
|
120 |
|
| 119 |
try:
|
121 |
# try:
|
| 120 |
if ignoreLastUpdated and data['priceUpdatedOn'] > to_java_date(now - timedelta(minutes=5)):
|
122 |
# if ignoreLastUpdated and data['priceUpdatedOn'] > to_java_date(now - timedelta(minutes=5)):
|
| 121 |
print "sku id is already updated",data['_id']
|
123 |
# print "sku id is already updated",data['_id']
|
| 122 |
return {'_id':data['_id'],'available_price':data['available_price'],'in_stock':data['in_stock'],'source_id':4,'source_product_name':data['source_product_name'],'marketPlaceUrl':data['marketPlaceUrl'],'thumbnail':data['thumbnail'], 'coupon':data['coupon'], 'codAvailable':data['codAvailable'], 'tagline': data['tagline'], 'offer': data['offer']}
|
124 |
# return {'_id':data['_id'],'available_price':data['available_price'],'in_stock':data['in_stock'],'source_id':4,'source_product_name':data['source_product_name'],'marketPlaceUrl':data['marketPlaceUrl'],'thumbnail':data['thumbnail'], 'coupon':data['coupon'], 'codAvailable':data['codAvailable'], 'tagline': data['tagline'], 'offer': data['offer']}
|
| 123 |
except:
|
125 |
# except:
|
| 124 |
pass
|
126 |
# pass
|
| 125 |
|
127 |
#
|
| 126 |
url = "http://173.255.209.200:8080/mobileapi/dtr-pricing?id=%s"%(data['identifier'])
|
128 |
url = "http://"+saholicPricingHost+":8080/mobileapi/dtr-pricing?id=%s"%(data['identifier'])
|
| 127 |
lowestPrice = 0.0
|
129 |
lowestPrice = 0.0
|
| 128 |
instock = 0
|
130 |
instock = 0
|
| 129 |
req = urllib2.Request(url,headers=headers)
|
131 |
req = urllib2.Request(url,headers=headers)
|
| 130 |
response = urllib2.urlopen(req)
|
132 |
response = urllib2.urlopen(req)
|
| 131 |
json_input = response.read()
|
133 |
json_input = response.read()
|
| 132 |
response.close()
|
134 |
response.close()
|
| 133 |
priceInfo = json.loads(json_input)
|
135 |
priceInfo = json.loads(json_input)
|
| 134 |
print "PriceInfo ",data['identifier']
|
136 |
print "PriceInfo ",data['identifier']
|
| 135 |
print priceInfo
|
137 |
print priceInfo
|
| 136 |
lowestPrice = priceInfo['response']['sellingPrice']
|
138 |
lowestPrice = priceInfo['response']['sellingPrice']
|
| - |
|
139 |
cheapestBulkPrice = None
|
| - |
|
140 |
try:
|
| - |
|
141 |
bulkPricing = priceInfo['response']['bulkPricing']
|
| - |
|
142 |
for k,v in bulkPricing.iteritems():
|
| - |
|
143 |
if cheapestBulkPrice is None:
|
| - |
|
144 |
cheapestBulkPrice = v
|
| - |
|
145 |
continue
|
| - |
|
146 |
if cheapestBulkPrice > v:
|
| - |
|
147 |
cheapestBulkPrice = v
|
| - |
|
148 |
except:
|
| - |
|
149 |
cheapestBulkPrice = 0
|
| - |
|
150 |
|
| 137 |
if lowestPrice > 0:
|
151 |
if lowestPrice > 0:
|
| 138 |
instock = 1
|
152 |
instock = 1
|
| 139 |
if instock == 1:
|
153 |
if instock == 1:
|
| 140 |
get_mongo_connection().Catalog.MasterData.update({'_id':data['_id']}, {'$set' : {'available_price':lowestPrice,'updatedOn':to_java_date(now),'priceUpdatedOn':to_java_date(now),'in_stock':instock}}, multi=True)
|
154 |
get_mongo_connection().Catalog.MasterData.update({'_id':data['_id']}, {'$set' : {'available_price':lowestPrice,'updatedOn':to_java_date(now),'priceUpdatedOn':to_java_date(now),'in_stock':instock}}, multi=True)
|
| 141 |
get_mongo_connection().Catalog.Deals.update({'_id':data['_id']}, {'$set' : {'available_price':lowestPrice , 'in_stock':instock,'codAvailable':data['codAvailable']}}, multi=True)
|
155 |
get_mongo_connection().Catalog.Deals.update({'_id':data['_id']}, {'$set' : {'available_price':lowestPrice , 'in_stock':instock,'codAvailable':data['codAvailable']}}, multi=True)
|
| 142 |
else:
|
156 |
else:
|
| 143 |
lowestPrice = data['available_price']
|
157 |
lowestPrice = data['available_price']
|
| 144 |
get_mongo_connection().Catalog.MasterData.update({'_id':data['_id']}, {'$set' : {'updatedOn':to_java_date(now),'in_stock':instock,'priceUpdatedOn':to_java_date(now)}}, multi=True)
|
158 |
get_mongo_connection().Catalog.MasterData.update({'_id':data['_id']}, {'$set' : {'updatedOn':to_java_date(now),'in_stock':instock,'priceUpdatedOn':to_java_date(now)}}, multi=True)
|
| 145 |
get_mongo_connection().Catalog.Deals.update({'_id':data['_id']}, {'$set' : {'in_stock':instock,'codAvailable':data['codAvailable']}}, multi=True)
|
159 |
get_mongo_connection().Catalog.Deals.update({'_id':data['_id']}, {'$set' : {'in_stock':instock,'codAvailable':data['codAvailable']}}, multi=True)
|
| 146 |
|
160 |
|
| 147 |
return {'_id':data['_id'],'available_price':lowestPrice,'in_stock':instock,'source_id':4,'source_product_name':data['source_product_name'],'marketPlaceUrl':data['marketPlaceUrl'],'thumbnail':data['thumbnail'],'coupon':data['coupon'], 'codAvailable':data['codAvailable'],'tagline': data['tagline'], 'offer': data['offer']}
|
161 |
return {'_id':data['_id'],'available_price':lowestPrice,'in_stock':instock,'source_id':4,'source_product_name':data['source_product_name'],'marketPlaceUrl':data['marketPlaceUrl'],'thumbnail':data['thumbnail'],'coupon':data['coupon'], 'codAvailable':data['codAvailable'],'tagline': data['tagline'], 'offer': data['offer'], 'cheapestBulkPrice': cheapestBulkPrice}
|
| 148 |
|
162 |
|
| 149 |
except Exception as e:
|
163 |
except Exception as e:
|
| 150 |
print "Exception for _id %d and source %s"%(data['_id'], source_id)
|
164 |
print "Exception for _id %d and source %s"%(data['_id'], source_id)
|
| 151 |
print e
|
165 |
print e
|
| 152 |
return {'_id':data['_id'],'available_price':data['available_price'],'in_stock':data['in_stock'],'source_id':4,'source_product_name':data['source_product_name'],'marketPlaceUrl':data['marketPlaceUrl'],'thumbnail':data['thumbnail'],'coupon':data['coupon'], 'codAvailable':data['codAvailable'],'tagline': data['tagline'], 'offer': data['offer']}
|
166 |
return {'_id':data['_id'],'available_price':data['available_price'],'in_stock':data['in_stock'],'source_id':4,'source_product_name':data['source_product_name'],'marketPlaceUrl':data['marketPlaceUrl'],'thumbnail':data['thumbnail'],'coupon':data['coupon'], 'codAvailable':data['codAvailable'],'tagline': data['tagline'], 'offer': data['offer']}
|
| Line 672... |
Line 686... |
| 672 |
info = returnLatestPrice(item, item['source_id'],False)
|
686 |
info = returnLatestPrice(item, item['source_id'],False)
|
| 673 |
print info
|
687 |
print info
|
| 674 |
|
688 |
|
| 675 |
def main():
|
689 |
def main():
|
| 676 |
print datetime.now()
|
690 |
print datetime.now()
|
| 677 |
print "retuned %s"%(str(getLatestPriceById(277)))
|
691 |
print "retuned %s"%(str(getLatestPriceById(8840)))
|
| 678 |
print datetime.now()
|
692 |
print datetime.now()
|
| 679 |
if __name__=='__main__':
|
693 |
if __name__=='__main__':
|
| 680 |
main()
|
694 |
main()
|
| 681 |
|
695 |
|