| Line 1... |
Line 1... |
| 1 |
import pymongo
|
1 |
import pymongo
|
| 2 |
from datetime import datetime
|
2 |
from datetime import datetime
|
| 3 |
from dtr.main import Store
|
3 |
from dtr.main import Store
|
| 4 |
from dtr.utils.utils import to_java_date
|
4 |
from dtr.utils.utils import to_java_date
|
| 5 |
from operator import itemgetter
|
5 |
from operator import itemgetter
|
| - |
|
6 |
from bson.objectid import ObjectId
|
| 6 |
|
7 |
|
| 7 |
con = None
|
8 |
con = None
|
| 8 |
cashBackMap = {}
|
9 |
cashBackMap = {}
|
| 9 |
itemCashBackMap = {}
|
10 |
itemCashBackMap = {}
|
| 10 |
|
11 |
|
| Line 25... |
Line 26... |
| 25 |
global itemCashBackMap
|
26 |
global itemCashBackMap
|
| 26 |
cashBackMap = {}
|
27 |
cashBackMap = {}
|
| 27 |
itemCashBackMap = {}
|
28 |
itemCashBackMap = {}
|
| 28 |
cashBack = list(get_mongo_connection().Catalog.CategoryCashBack.find())
|
29 |
cashBack = list(get_mongo_connection().Catalog.CategoryCashBack.find())
|
| 29 |
for row in cashBack:
|
30 |
for row in cashBack:
|
| - |
|
31 |
temp_map = {}
|
| - |
|
32 |
temp_list = []
|
| 30 |
if cashBackMap.has_key(row['source_id']):
|
33 |
if cashBackMap.has_key(row['source_id']):
|
| 31 |
temp_map = {}
|
- |
|
| 32 |
temp_list = []
|
- |
|
| 33 |
arr = cashBackMap.get(row['source_id'])
|
34 |
arr = cashBackMap.get(row['source_id'])
|
| 34 |
for val in arr:
|
35 |
for val in arr:
|
| 35 |
temp_list.append(val)
|
36 |
temp_list.append(val)
|
| 36 |
temp_map[row['category_id']] = row
|
37 |
temp_map[row['category_id']] = row
|
| 37 |
temp_list.append(temp_map)
|
38 |
temp_list.append(temp_map)
|
| 38 |
cashBackMap[row['source_id']] = temp_list
|
39 |
cashBackMap[row['source_id']] = temp_list
|
| 39 |
else:
|
40 |
else:
|
| 40 |
temp_map = {}
|
- |
|
| 41 |
temp_list = []
|
- |
|
| 42 |
temp_map[row['category_id']] = row
|
41 |
temp_map[row['category_id']] = row
|
| 43 |
temp_list.append(temp_map)
|
42 |
temp_list.append(temp_map)
|
| 44 |
cashBackMap[row['source_id']] = temp_list
|
43 |
cashBackMap[row['source_id']] = temp_list
|
| 45 |
itemCashBack = list(get_mongo_connection().Catalog.ItemCashBack.find())
|
44 |
itemCashBack = list(get_mongo_connection().Catalog.ItemCashBack.find())
|
| 46 |
for row in itemCashBack:
|
45 |
for row in itemCashBack:
|
| 47 |
if not itemCashBackMap.has_key(row['skuId']):
|
46 |
if not itemCashBackMap.has_key(row['skuId']):
|
| 48 |
itemCashBackMap[row['skuId']] = row
|
47 |
itemCashBackMap[row['skuId']] = row
|
| 49 |
|
48 |
|
| 50 |
def addCategoryDiscount(data):
|
49 |
def addCategoryDiscount(data):
|
| 51 |
collection = get_mongo_connection().Dtr.CategoryDiscount
|
50 |
collection = get_mongo_connection().Catalog.CategoryDiscount
|
| 52 |
query = []
|
51 |
query = []
|
| 53 |
data['brand'] = data['brand'].strip().upper()
|
52 |
data['brand'] = data['brand'].strip().upper()
|
| - |
|
53 |
data['discountType'] = data['discountType'].upper().strip()
|
| 54 |
query.append({"brand":data['brand']})
|
54 |
query.append({"brand":data['brand']})
|
| 55 |
query.append({"category_id":data['category_id']})
|
55 |
query.append({"category_id":data['category_id']})
|
| 56 |
r = collection.find({"$and":query})
|
56 |
r = collection.find({"$and":query})
|
| 57 |
if r.count() > 0:
|
57 |
if r.count() > 0:
|
| 58 |
return {0:"Brand & Category info already present."}
|
58 |
return {0:"Brand & Category info already present."}
|
| 59 |
else:
|
59 |
else:
|
| 60 |
collection.insert(data)
|
60 |
collection.insert(data)
|
| - |
|
61 |
get_mongo_connection().Catalog.MasterData.update({'brand':data['brand'],'category_id':data['category_id']},{"$set":{'updatedOn':to_java_date(datetime.now())}},multi=True)
|
| 61 |
return {1:"Data added successfully"}
|
62 |
return {1:"Data added successfully"}
|
| 62 |
|
63 |
|
| - |
|
64 |
def updateCategoryDiscount(data,_id):
|
| - |
|
65 |
try:
|
| - |
|
66 |
collection = get_mongo_connection().Catalog.CategoryDiscount
|
| - |
|
67 |
collection.update({'_id':ObjectId(_id)},{"$set":{'min_discount':data['min_discount'],'max_discount':data['max_discount'],'discountType':data['discountType'].upper().strip()}},upsert=False, multi = False)
|
| - |
|
68 |
get_mongo_connection().Catalog.MasterData.update({'brand':data['brand'],'category_id':data['category_id']},{"$set":{'updatedOn':to_java_date(datetime.now())}},multi=True)
|
| - |
|
69 |
return {1:"Data updated successfully"}
|
| - |
|
70 |
except:
|
| - |
|
71 |
return {0:"Data not updated."}
|
| - |
|
72 |
|
| - |
|
73 |
|
| 63 |
def getAllCategoryDiscount():
|
74 |
def getAllCategoryDiscount():
|
| 64 |
data = []
|
75 |
data = []
|
| 65 |
collection = get_mongo_connection().Dtr.CategoryDiscount
|
76 |
collection = get_mongo_connection().Catalog.CategoryDiscount
|
| 66 |
cursor = collection.find()
|
77 |
cursor = collection.find()
|
| 67 |
for val in cursor:
|
78 |
for val in cursor:
|
| 68 |
data.append(val)
|
79 |
data.append(val)
|
| 69 |
return data
|
80 |
return data
|
| 70 |
|
81 |
|
| 71 |
def addSchemeDetailsForSku(data):
|
82 |
def addSchemeDetailsForSku(data):
|
| 72 |
collection = get_mongo_connection().Dtr.SkuSchemeDetails
|
83 |
collection = get_mongo_connection().Catalog.SkuSchemeDetails
|
| 73 |
data['addedOn'] = to_java_date(datetime.now())
|
84 |
data['addedOn'] = to_java_date(datetime.now())
|
| 74 |
collection.insert(data)
|
85 |
collection.insert(data)
|
| 75 |
return {1:"Data added successfully"}
|
86 |
return {1:"Data added successfully"}
|
| 76 |
|
87 |
|
| 77 |
def getAllSkuWiseSchemeDetails():
|
88 |
def getAllSkuWiseSchemeDetails():
|
| 78 |
data = []
|
89 |
data = []
|
| 79 |
collection = get_mongo_connection().Dtr.SkuSchemeDetails
|
90 |
collection = get_mongo_connection().Catalog.SkuSchemeDetails
|
| 80 |
cursor = collection.find()
|
91 |
cursor = collection.find()
|
| 81 |
for val in cursor:
|
92 |
for val in cursor:
|
| 82 |
data.append(val)
|
93 |
data.append(val)
|
| 83 |
return data
|
94 |
return data
|
| 84 |
|
95 |
|
| 85 |
def addSkuDiscountInfo(data):
|
96 |
def addSkuDiscountInfo(data):
|
| 86 |
collection = get_mongo_connection().Dtr.SkuDiscountInfo
|
97 |
collection = get_mongo_connection().Catalog.SkuDiscountInfo
|
| 87 |
cursor = collection.find({"sku":data['sku']})
|
98 |
cursor = collection.find({"sku":data['sku']})
|
| 88 |
if cursor.count() > 0:
|
99 |
if cursor.count() > 0:
|
| 89 |
return {0:"Sku information already present."}
|
100 |
return {0:"Sku information already present."}
|
| 90 |
else:
|
101 |
else:
|
| 91 |
collection.insert(data)
|
102 |
collection.insert(data)
|
| - |
|
103 |
get_mongo_connection().Catalog.MasterData.update({'_id':data['sku']},{"$set":{'updatedOn':to_java_date(datetime.now())}},multi=False)
|
| 92 |
return {1:"Data added successfully"}
|
104 |
return {1:"Data added successfully"}
|
| 93 |
|
105 |
|
| 94 |
def getallSkuDiscountInfo():
|
106 |
def getallSkuDiscountInfo(offset, limit):
|
| 95 |
data = []
|
107 |
data = []
|
| 96 |
collection = get_mongo_connection().Dtr.SkuDiscountInfo
|
108 |
collection = get_mongo_connection().Catalog.SkuDiscountInfo
|
| 97 |
cursor = collection.find()
|
109 |
cursor = collection.find().skip(offset).limit(limit)
|
| 98 |
for val in cursor:
|
110 |
for val in cursor:
|
| - |
|
111 |
master = list(get_mongo_connection().Catalog.MasterData.find({'_id':val['sku']}))
|
| - |
|
112 |
if len(master) > 0:
|
| - |
|
113 |
val['brand'] = master['brand']
|
| - |
|
114 |
val['source_product_name'] = master['source_product_name']
|
| - |
|
115 |
val['skuBundleId'] = master['skuBundleId']
|
| - |
|
116 |
else:
|
| - |
|
117 |
val['brand'] = ""
|
| - |
|
118 |
val['source_product_name'] = ""
|
| - |
|
119 |
val['skuBundleId'] = ""
|
| 99 |
data.append(val)
|
120 |
data.append(val)
|
| 100 |
return data
|
121 |
return data
|
| 101 |
|
122 |
|
| - |
|
123 |
def updateSkuDiscount(data,_id):
|
| - |
|
124 |
try:
|
| - |
|
125 |
collection = get_mongo_connection().Catalog.SkuDiscountInfo
|
| - |
|
126 |
collection.update({'_id':ObjectId(_id)},{"$set":{'min_discount':data['min_discount'],'max_discount':data['max_discount'],'discountType':data['discountType'].upper().strip()}},upsert=False, multi = False)
|
| - |
|
127 |
get_mongo_connection().Catalog.MasterData.update({'_id':data['sku']},{"$set":{'updatedOn':to_java_date(datetime.now())}},multi=False)
|
| - |
|
128 |
return {1:"Data updated successfully"}
|
| - |
|
129 |
except:
|
| - |
|
130 |
return {0:"Data not updated."}
|
| - |
|
131 |
|
| - |
|
132 |
|
| 102 |
def addExceptionalNlc(data):
|
133 |
def addExceptionalNlc(data):
|
| 103 |
collection = get_mongo_connection().Dtr.ExceptionalNlc
|
134 |
collection = get_mongo_connection().Catalog.ExceptionalNlc
|
| 104 |
cursor = collection.find({"sku":data['sku']})
|
135 |
cursor = collection.find({"sku":data['sku']})
|
| 105 |
if cursor.count() > 0:
|
136 |
if cursor.count() > 0:
|
| 106 |
return {0:"Sku information already present."}
|
137 |
return {0:"Sku information already present."}
|
| 107 |
else:
|
138 |
else:
|
| 108 |
collection.insert(data)
|
139 |
collection.insert(data)
|
| - |
|
140 |
get_mongo_connection().Catalog.MasterData.update({'_id':data['sku']},{"$set":{'updatedOn':to_java_date(datetime.now())}},multi=False)
|
| 109 |
return {1:"Data added successfully"}
|
141 |
return {1:"Data added successfully"}
|
| 110 |
|
142 |
|
| 111 |
def getAllExceptionlNlcItems():
|
143 |
def getAllExceptionlNlcItems(offset, limit):
|
| 112 |
data = []
|
144 |
data = []
|
| 113 |
collection = get_mongo_connection().Dtr.ExceptionalNlc
|
145 |
collection = get_mongo_connection().Catalog.ExceptionalNlc
|
| 114 |
cursor = collection.find()
|
146 |
cursor = collection.find()
|
| 115 |
for val in cursor:
|
147 |
for val in cursor:
|
| - |
|
148 |
master = list(get_mongo_connection().Catalog.MasterData.find({'_id':val['sku']}))
|
| - |
|
149 |
if len(master) > 0:
|
| - |
|
150 |
val['brand'] = master['brand']
|
| - |
|
151 |
val['source_product_name'] = master['source_product_name']
|
| - |
|
152 |
val['skuBundleId'] = master['skuBundleId']
|
| - |
|
153 |
else:
|
| - |
|
154 |
val['brand'] = ""
|
| - |
|
155 |
val['source_product_name'] = ""
|
| - |
|
156 |
val['skuBundleId'] = ""
|
| 116 |
data.append(val)
|
157 |
data.append(val)
|
| 117 |
return data
|
158 |
return data
|
| 118 |
|
159 |
|
| 119 |
def getMerchantOrdersByUser(userId, page=1, window=50):
|
160 |
def getMerchantOrdersByUser(userId, page=1, window=50):
|
| 120 |
if page==None:
|
161 |
if page==None:
|
| Line 283... |
Line 324... |
| 283 |
return cashBack.get(skuData[0]['category_id'])
|
324 |
return cashBack.get(skuData[0]['category_id'])
|
| 284 |
else:
|
325 |
else:
|
| 285 |
return {}
|
326 |
return {}
|
| 286 |
else:
|
327 |
else:
|
| 287 |
return {}
|
328 |
return {}
|
| - |
|
329 |
|
| - |
|
330 |
def getAllDealerPrices(offset, limit):
|
| - |
|
331 |
data = []
|
| - |
|
332 |
collection = get_mongo_connection().Catalog.SkuDealerPrices
|
| - |
|
333 |
cursor = collection.find().skip(offset).limit(limit)
|
| - |
|
334 |
for val in cursor:
|
| - |
|
335 |
master = list(get_mongo_connection().Catalog.MasterData.find({'_id':val['sku']}))
|
| - |
|
336 |
if len(master) > 0:
|
| - |
|
337 |
val['brand'] = master['brand']
|
| - |
|
338 |
val['source_product_name'] = master['source_product_name']
|
| - |
|
339 |
val['skuBundleId'] = master['skuBundleId']
|
| - |
|
340 |
else:
|
| - |
|
341 |
val['brand'] = ""
|
| - |
|
342 |
val['source_product_name'] = ""
|
| - |
|
343 |
val['skuBundleId'] = ""
|
| - |
|
344 |
data.append(val)
|
| - |
|
345 |
return data
|
| - |
|
346 |
|
| - |
|
347 |
def addSkuDealerPrice(data):
|
| - |
|
348 |
collection = get_mongo_connection().Catalog.SkuDealerPrices
|
| - |
|
349 |
cursor = collection.find({"sku":data['sku']})
|
| - |
|
350 |
if cursor.count() > 0:
|
| - |
|
351 |
return {0:"Sku information already present."}
|
| 288 |
|
352 |
else:
|
| - |
|
353 |
collection.insert(data)
|
| - |
|
354 |
get_mongo_connection().Catalog.MasterData.update({'_id':data['sku']},{"$set":{'updatedOn':to_java_date(datetime.now())}},multi=False)
|
| - |
|
355 |
return {1:"Data added successfully"}
|
| - |
|
356 |
|
| - |
|
357 |
def updateSkuDealerPrice(data, _id):
|
| 289 |
|
358 |
try:
|
| - |
|
359 |
collection = get_mongo_connection().Catalog.SkuDealerPrices
|
| - |
|
360 |
collection.update({'_id':ObjectId(_id)},{"$set":{'dp':data['dp']}},upsert=False, multi = False)
|
| - |
|
361 |
get_mongo_connection().Catalog.MasterData.update({'_id':data['sku']},{"$set":{'updatedOn':to_java_date(datetime.now())}},multi=False)
|
| - |
|
362 |
return {1:"Data updated successfully"}
|
| - |
|
363 |
except:
|
| - |
|
364 |
return {0:"Data not updated."}
|
| - |
|
365 |
|
| - |
|
366 |
def updateExceptionalNlc(data, _id):
|
| 290 |
|
367 |
try:
|
| - |
|
368 |
collection = get_mongo_connection().Catalog.ExceptionalNlc
|
| - |
|
369 |
collection.update({'_id':ObjectId(_id)},{"$set":{'maxNlc':data['maxNlc'], 'minNlc':data['minNlc'], 'overrideNlc':data['overrideNlc']}},upsert=False, multi = False)
|
| - |
|
370 |
get_mongo_connection().Catalog.MasterData.update({'_id':data['sku']},{"$set":{'updatedOn':to_java_date(datetime.now())}},multi=False)
|
| - |
|
371 |
return {1:"Data updated successfully"}
|
| - |
|
372 |
except:
|
| - |
|
373 |
return {0:"Data not updated."}
|
| - |
|
374 |
|
| 291 |
|
375 |
|
| 292 |
def main():
|
376 |
def main():
|
| 293 |
populateCashBack()
|
377 |
populateCashBack()
|
| 294 |
cashBack = __getCashBack(8839,3,5)
|
378 |
cashBack = __getCashBack(8839,3,5)
|
| 295 |
if not cashBack or cashBack.get('cash_back_status')!=1:
|
379 |
if not cashBack or cashBack.get('cash_back_status')!=1:
|