Subversion Repositories SmartDukaan

Rev

Rev 20347 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 20347 Rev 20362
Line 191... Line 191...
191
    skuBundleId = item['skuBundleId']
191
    skuBundleId = item['skuBundleId']
192
    
192
    
193
    similarItems = list(get_mongo_connection().Catalog.Deals.find({'skuBundleId':skuBundleId}).sort([('netPriceAfterCashBack',pymongo.ASCENDING)]))
193
    similarItems = list(get_mongo_connection().Catalog.Deals.find({'skuBundleId':skuBundleId}).sort([('netPriceAfterCashBack',pymongo.ASCENDING)]))
194
    bestPrice = float("inf")
194
    bestPrice = float("inf")
195
    bestOne = None
195
    bestOne = None
196
    bestSellerPoints = 0
-
 
197
    toUpdate = []
196
    toUpdate = []
198
    prepaidBestPrice = float("inf")
197
    prepaidBestPrice = float("inf")
199
    prepaidBestOne = None
198
    prepaidBestOne = None
200
    prepaidBestSellerPoints = 0
-
 
201
    for similarItem in similarItems:
199
    for similarItem in similarItems:
202
        if similarItem['codAvailable'] ==1:
200
        if similarItem['codAvailable'] ==1:
203
            if mc.get("negative_deals") is None:
201
            if mc.get("negative_deals") is None:
204
                populateNegativeDeals()
202
                populateNegativeDeals()
205
            if similarItem['in_stock'] == 0  or similarItem['_id'] in mc.get("negative_deals"):
203
            if similarItem['in_stock'] == 0  or similarItem['_id'] in mc.get("negative_deals"):
Line 209... Line 207...
209
                get_mongo_connection().Catalog.Deals.update({ '_id' : similarItem['_id'] }, {'$set':{'showDeal':0,'prepaidDeal':0 }})
207
                get_mongo_connection().Catalog.Deals.update({ '_id' : similarItem['_id'] }, {'$set':{'showDeal':0,'prepaidDeal':0 }})
210
                continue
208
                continue
211
            if similarItem.get('netPriceAfterCashBack') < bestPrice:
209
            if similarItem.get('netPriceAfterCashBack') < bestPrice:
212
                bestOne = similarItem
210
                bestOne = similarItem
213
                bestPrice = similarItem.get('netPriceAfterCashBack')
211
                bestPrice = similarItem.get('netPriceAfterCashBack')
214
                bestSellerPoints = similarItem['bestSellerPoints']
-
 
215
            elif similarItem.get('netPriceAfterCashBack') == bestPrice:
212
            elif similarItem.get('netPriceAfterCashBack') == bestPrice:
216
                
213
                
217
                try:
214
                try:
218
                    if (DEAL_PRIORITY.index(int(similarItem['source_id'])) > DEAL_PRIORITY.index(int(bestOne['source_id']))):
215
                    if (DEAL_PRIORITY.index(int(similarItem['source_id'])) > DEAL_PRIORITY.index(int(bestOne['source_id']))):
219
                        continue
216
                        continue
220
                except:
217
                except:
221
                    traceback.print_exc()
218
                    traceback.print_exc()
222
                
219
                
223
                bestOne = similarItem
220
                bestOne = similarItem
224
                bestPrice = similarItem.get('netPriceAfterCashBack')
221
                bestPrice = similarItem.get('netPriceAfterCashBack')
225
                bestSellerPoints = similarItem['bestSellerPoints']
-
 
226
            else:
222
            else:
227
                pass
223
                pass
228
        else:
224
        else:
229
            if mc.get("negative_deals") is None:
225
            if mc.get("negative_deals") is None:
230
                populateNegativeDeals()
226
                populateNegativeDeals()
Line 235... Line 231...
235
                get_mongo_connection().Catalog.Deals.update({ '_id' : similarItem['_id'] }, {'$set':{'showDeal':0,'prepaidDeal':0 }})
231
                get_mongo_connection().Catalog.Deals.update({ '_id' : similarItem['_id'] }, {'$set':{'showDeal':0,'prepaidDeal':0 }})
236
                continue
232
                continue
237
            if similarItem.get('netPriceAfterCashBack') < prepaidBestPrice:
233
            if similarItem.get('netPriceAfterCashBack') < prepaidBestPrice:
238
                prepaidBestOne = similarItem
234
                prepaidBestOne = similarItem
239
                prepaidBestPrice = similarItem.get('netPriceAfterCashBack')
235
                prepaidBestPrice = similarItem.get('netPriceAfterCashBack')
240
                prepaidBestSellerPoints = similarItem['bestSellerPoints']
-
 
241
            elif similarItem.get('netPriceAfterCashBack') == prepaidBestPrice:
236
            elif similarItem.get('netPriceAfterCashBack') == prepaidBestPrice:
242
                
237
                
243
                try:
238
                try:
244
                    if (DEAL_PRIORITY.index(int(similarItem['source_id'])) > DEAL_PRIORITY.index(int(bestOne['source_id']))):
239
                    if (DEAL_PRIORITY.index(int(similarItem['source_id'])) > DEAL_PRIORITY.index(int(prepaidBestOne['source_id']))):
245
                        continue
240
                        continue
246
                except:
241
                except:
247
                    traceback.print_exc()
242
                    traceback.print_exc()
248
                
243
                
249
                prepaidBestOne = similarItem
244
                prepaidBestOne = similarItem
250
                prepaidBestPrice = similarItem.get('netPriceAfterCashBack')
245
                prepaidBestPrice = similarItem.get('netPriceAfterCashBack')
251
                prepaidBestSellerPoints = similarItem['bestSellerPoints']
-
 
252
            else:
246
            else:
253
                pass
247
                pass
254
    if bestOne is not None or prepaidBestOne is not None:
248
    if bestOne is not None or prepaidBestOne is not None:
255
        for similarItem in similarItems:
249
        for similarItem in similarItems:
256
            toUpdate.append(similarItem['_id'])
250
            toUpdate.append(similarItem['_id'])