Subversion Repositories SmartDukaan

Rev

Rev 9724 | Rev 9779 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
122 ashish 1
'''
2
Created on 27-Apr-2010
3
 
4
@author: ashish
5
'''
5110 mandeep.dh 6
from shop2020.config.client.ConfigClient import ConfigClient
6511 kshitij.so 7
from shop2020.model.v1.catalog.impl.Convertors import to_t_item, to_t_category, \
8
    to_t_source_item_pricing, to_t_product_notification_request, \
6848 kshitij.so 9
    to_t_product_notification_request_count, to_t_voucher_item_mapping, to_t_insurer, \
7438 amit.gupta 10
    to_t_banner, to_t_banner_map, to_t_product_notification_request_count, \
8579 kshitij.so 11
    to_t_voucher_item_mapping, to_t_insurer, to_t_Amazonlisted, to_t_ebay_item, \
9621 manish.sha 12
    to_t_uri_mapping, to_t_banner_list, to_t_campaign,to_t_snapdeal_item, \
9776 vikram.rag 13
    to_t_snapdeal_item_details, to_t_product_feed_submit, to_t_marketplace_items, to_t_marketplace_itemprice
6511 kshitij.so 14
from shop2020.model.v1.catalog.impl.DataAcessors import add_item, retire_item, \
15
    change_item_status, get_item, get_all_items, get_all_items_by_status, \
5944 mandeep.dh 16
    update_item, start_item_on, close_session, retire_item_on, \
5110 mandeep.dh 17
    get_items_by_catalog_id, get_best_deals, get_best_deals_catalog_ids, \
18
    get_best_deals_count, get_best_sellers, get_latest_arrivals, \
19
    get_latest_arrivals_catalog_ids, get_latest_arrivals_count, is_active, \
20
    get_best_sellers_catalog_ids, get_best_sellers_count, put_category_object, \
5944 mandeep.dh 21
    get_category_object, mark_item_as_content_complete, generate_new_entity_id, \
22
    get_category, get_all_categories, add_category, get_item_status_description, \
6511 kshitij.so 23
    check_similar_item, change_risky_flag, get_items_for_mastersheet, \
24
    get_risky_items, get_similar_items_catalog_ids, add_product_notification, \
25
    send_product_notifications, get_all_brands_by_category, is_alive, \
26
    get_item_pricing_by_source, add_source_item_pricing, get_all_sources, \
27
    get_item_for_source, get_all_source_pricing, get_item_count_by_status, \
28
    search_items, get_search_result_count, get_product_notifications, \
29
    get_product_notification_request_count, get_all_similar_items_catalog_ids, \
30
    add_similar_item_catalog_id, delete_similar_item_catalog_id, \
31
    add_authorization_log_for_item, get_thrift_item_list, get_all_brands, \
32
    get_coming_soon, get_coming_soon_catalog_ids, get_coming_soon_count, initialize, \
7438 amit.gupta 33
    add_update_voucher_for_item, delete_voucher_for_item, get_voucher_amount, \
34
    get_all_vouchers_for_item, is_valid_catalog_id, check_risky_item, \
35
    get_vat_percentage_for_item, get_vat_amount_for_item, add_tag, get_all_tags, \
36
    get_all_entities_by_tag_name, delete_tag, delete_entity_tag, \
37
    get_all_ignored_inventoryupdate_items_list, add_banner, get_all_banners, \
38
    delete_banner, get_banner_details, get_active_banners, add_banner_map, \
39
    delete_banner_map, get_banner_map_details, get_insurance_amount, get_insurer, \
40
    get_all_alive_items, get_all_insurers, get_all_entity_tags, \
41
    update_insurance_declared_amount, get_freebie_for_item, \
42
    add_or_update_freebie_for_item, get_all_amazon_listed_items, get_store_pricing, \
43
    update_store_pricing, get_amazon_item_details, update_amazon_item_details, \
44
    add_amazon_item, get_asin_items, get_all_fba_listed_items, \
45
    get_all_nonfba_listed_items, add_or_update_brand_info, get_brand_info, \
7897 amar.kumar 46
    get_items_status, update_item_inventory, update_timestamp_for_amazon_feeds, \
8182 amar.kumar 47
    get_all_parent_categories,add_page_view_event,add_cart_event, \
8379 vikram.rag 48
    insert_ebay_item, get_ebay_item, update_ebay_item, update_amazon_attributes_in_bulk, \
8579 kshitij.so 49
    get_all_items_to_list_on_fba,get_all_items_to_list_on_nonfba, \
50
    update_banner,add_banner_uri,get_uri_mapping,add_campaign,get_campaigns, \
8619 kshitij.so 51
    delete_campaign, get_all_campaigns, get_amazon_listed_items, search_amazon_items, \
8739 vikram.rag 52
    get_count_for_amazonlisted_items, get_amazon_search_result_count,update_asin, \
9242 kshitij.so 53
    add_or_update_snapdeal_item, get_snapdeal_item, get_all_snapdeal_items , get_snapdeal_items, \
54
    search_snapdeal_items , get_count_for_snapdeal_items , get_snapdeal_search_result_count, \
9621 manish.sha 55
    get_active_banners_for_mobile_site, get_preffered_insurer_for_item, get_snapdealitem_by_skuatsnapdeal, \
56
    get_product_feed_submit, add_product_feed_submit, update_product_feed_submit, \
9724 kshitij.so 57
    delete_product_feed_submit, get_all_product_feed_submit, get_snapdeal_item_detail,\
9776 vikram.rag 58
    get_marketplace_details_for_item, update_marketplace_attributes_for_item, \
59
    get_all_marketplace_items_for_priceupdate, update_marketplace_priceupdate_status
5944 mandeep.dh 60
from shop2020.thriftpy.model.v1.catalog.ttypes import status
61
from shop2020.utils.Utils import log_entry, to_py_date
5110 mandeep.dh 62
import datetime
122 ashish 63
 
5944 mandeep.dh 64
class CatalogServiceHandler:
122 ashish 65
    '''
66
    classdocs
67
    '''
599 chandransh 68
 
3187 rajveer 69
    def __init__(self, dbname='catalog', db_hostname='localhost'):
122 ashish 70
        '''
71
        Constructor
72
        '''
5295 rajveer 73
        initialize(dbname, db_hostname)
599 chandransh 74
        try:
621 chandransh 75
            config_client = ConfigClient()
76
            self.latest_arrivals_limit = int(config_client.get_property("LATEST_ARRIVALS_LIMIT"));
77
            self.best_sellers_limit = int(config_client.get_property("BEST_SELLERS_LIMIT"))
599 chandransh 78
        except:
621 chandransh 79
            self.latest_arrivals_limit = 50
80
            self.best_sellers_limit = 50
122 ashish 81
 
82
    #DONE
83
    def addItem(self, item):
84
        """
85
        Availability and inventory attributes
86
 
87
        Parameters:
88
         - item
89
        """
90
        log_entry(self, "addItem called")
785 rajveer 91
        try:
92
            return add_item(item)
93
        finally:
94
            close_session()
6511 kshitij.so 95
 
96
 
97
    def addTag(self, displayName, catalogId):
98
        result = False
99
        try:
100
            return add_tag(displayName, catalogId)
101
        except:
102
            result = True
103
        finally:
104
            close_session()
105
            return result
6848 kshitij.so 106
 
8590 kshitij.so 107
    def addBanner(self, bannerCongregate):
6848 kshitij.so 108
        try:
8590 kshitij.so 109
            add_banner(bannerCongregate)
6848 kshitij.so 110
        finally:
111
            close_session()
112
 
113
    def getAllBanners(self):
8579 kshitij.so 114
        bannerList=[]
6848 kshitij.so 115
        try:
8579 kshitij.so 116
            for banner in get_all_banners():
117
                bannerList.append(to_t_banner(banner))
6848 kshitij.so 118
        finally:
119
            close_session()
8579 kshitij.so 120
            return bannerList
6848 kshitij.so 121
 
9155 kshitij.so 122
    def deleteBanner(self,name,bannerType):
6848 kshitij.so 123
        try:
9155 kshitij.so 124
            return delete_banner(name,bannerType)
6848 kshitij.so 125
        finally:
126
            close_session()
127
 
9155 kshitij.so 128
    def getBannerDetails(self,name,bannerType):
6848 kshitij.so 129
        result = None
130
        try:
9155 kshitij.so 131
            result = get_banner_details(name,bannerType)
6848 kshitij.so 132
            if result is not None:
133
                result = to_t_banner(result)
134
        finally:
135
            close_session()
136
            return result
137
 
138
    def getActiveBanners(self):
139
        try:
8579 kshitij.so 140
            active_banners = get_active_banners()
141
            for bannerName,banners in active_banners.iteritems():
142
                active_banners[bannerName] = to_t_banner_list(banners)
6848 kshitij.so 143
        finally:
144
            close_session()
8579 kshitij.so 145
            return active_banners
146
 
147
    def addBannerMap(self, bannerMaps):
6848 kshitij.so 148
        try:
8579 kshitij.so 149
            return add_banner_map(bannerMaps)
6848 kshitij.so 150
        finally:
151
            close_session()
152
 
153
    def deleteBannerMap(self, name):
154
        try:
155
            return delete_banner_map(name)
156
        finally:
157
            close_session()
158
 
9155 kshitij.so 159
    def getBannerMapDetails(self,name,bannerType):
6848 kshitij.so 160
        banners=[]
161
        try:
9155 kshitij.so 162
            for result in get_banner_map_details(name,bannerType):
6848 kshitij.so 163
                if result is not None:
8579 kshitij.so 164
                    banners.append(to_t_banner_map(result))
6848 kshitij.so 165
        finally:
166
            close_session()
167
            return banners
8579 kshitij.so 168
    def updateBanner(self,banner):
169
        try:
170
            return update_banner(banner)
171
        finally:
172
            close_session()
173
 
174
    def addBannerUri(self,bannerUriMappings):
175
        try:
176
            add_banner_uri(bannerUriMappings)
177
        finally:
178
            close_session()
179
 
9155 kshitij.so 180
    def getUriMapping(self,bannerName,bannerType):
8579 kshitij.so 181
        uriMapping=[]
182
        try:
9155 kshitij.so 183
            for uri in get_uri_mapping(bannerName,bannerType):
8579 kshitij.so 184
                uriMapping.append(to_t_uri_mapping(uri))
185
        finally:
186
            close_session()
187
            return uriMapping
188
 
189
    def addCampaign(self,campaign):
190
        try:
191
            add_campaign(campaign)
192
        finally:
193
            close_session()
194
 
195
    def getCampaigns(self,campaignName):
196
        campaigns = []
197
        try:
198
            for campaign in get_campaigns(campaignName):
199
                campaigns.append(to_t_campaign(campaign))
200
        finally:
201
            close_session()
202
            return campaigns
203
 
204
    def deleteCampaign(self,campaignId):
205
        try:
206
            delete_campaign(campaignId)
207
        finally:
208
            close_session()
6848 kshitij.so 209
 
8579 kshitij.so 210
    def getAllCampaigns(self):
211
        campaigns = []
212
        try:
213
            for campaign in get_all_campaigns():
214
                campaigns.append(campaign[0])
215
        finally:
216
            close_session()
217
            return campaigns
6848 kshitij.so 218
 
9155 kshitij.so 219
    def getActiveBannersForMobileSite(self):
220
        try:
221
            active_banners = get_active_banners_for_mobile_site()
222
            for bannerName,banners in active_banners.iteritems():
223
                active_banners[bannerName] = to_t_banner_list(banners)
224
        finally:
225
            close_session()
226
            return active_banners
227
 
6511 kshitij.so 228
 
229
    def getAllTags(self):
230
        result = []
231
        try:
232
            result = get_all_tags()
233
        except:
234
            result = True
235
        finally:
236
            close_session()
237
            return result
238
 
239
    def getAllEntitiesByTagName(self,displayName):
240
        result = []
241
        try:
242
            result = get_all_entities_by_tag_name(displayName)
243
        except:
244
            result = True
245
        finally:
246
            close_session()
247
            return result
248
 
249
    def deleteTag(self,displayName):
250
        result = False
251
        try:
252
            return delete_tag(displayName)
253
        except:
254
            result = True
255
        finally:
256
            close_session()
257
            return result
258
 
6518 kshitij.so 259
    def deleteEntityTag(self,displayName,catalogId):
260
        result = False
261
        try:
262
            return delete_entity_tag(displayName,catalogId)
263
        except:
264
            result = True
265
        finally:
266
            close_session()
267
            return result
268
 
635 rajveer 269
    def isActive(self, item_id):
563 chandransh 270
        """
271
        Parameters:
635 rajveer 272
         - item_id
563 chandransh 273
        """
785 rajveer 274
        try:
275
            return is_active(item_id)
276
        finally:
277
            close_session()
7438 amit.gupta 278
 
279
    def getItemsStatus(self, item_ids):
280
        """
281
        Parameters:
282
         - item_id
283
        """
284
        try:
285
            return get_items_status(item_ids)
286
        finally:
287
            close_session()
122 ashish 288
 
2035 rajveer 289
    def getItemStatusDescription(self, itemId):
290
        """
291
        Parameters:
292
         - itemId
293
        """
294
        try:
295
            return get_item_status_description(itemId)
296
        finally:
297
            close_session()
122 ashish 298
 
299
    def retireItem(self, item_id):
300
        """
301
        Parameters:
302
        - item_id
303
        """
304
        log_entry(self, "retire item called")
785 rajveer 305
        try:
306
            return retire_item(item_id)
307
        finally:
308
            close_session()
122 ashish 309
 
310
    def startItemOn(self, item_id, timestamp):
311
        """
312
        Parameters:
313
         - item_id
314
         - timestamp
315
        """
785 rajveer 316
        try:
317
            start_item_on(item_id, timestamp)
318
        finally:
319
            close_session()
122 ashish 320
 
321
    def retireItemOn(self, item_id, timestamp):
322
        """
323
        Parameters:
324
         - item_id
325
         - timestamp
326
        """
785 rajveer 327
        try:
328
            retire_item_on(item_id, timestamp)
329
        finally:
330
            close_session()
122 ashish 331
 
332
    def changeItemStatus(self, item_id, timestamp, newstatus):
333
        """
334
        Parameters:
335
         - item_id
336
         - timestamp
337
         - newstatus
338
        """
339
        log_entry(self, "change item status called")
785 rajveer 340
        try:
341
            return change_item_status(item_id, newstatus)
342
        finally:
343
            close_session()
122 ashish 344
 
785 rajveer 345
 
122 ashish 346
    def getItem(self, item_id):
347
        """
348
        Parameters:
349
         - item_id
350
        """
351
        log_entry(self, "item requested")
785 rajveer 352
        try:
2065 ankur.sing 353
            item = to_t_item( get_item(item_id))
354
            return item
785 rajveer 355
        finally:
356
            close_session()
379 ashish 357
 
635 rajveer 358
    def getItemsByCatalogId(self, catalog_item_id):
379 ashish 359
        """
360
        Parameters:
361
        - catalog_item_id
362
        """
386 ashish 363
        log_entry(self, "item requested")
766 rajveer 364
        try:
4934 amit.gupta 365
            return get_thrift_item_list(get_items_by_catalog_id(catalog_item_id))
766 rajveer 366
        finally:
367
            close_session()
122 ashish 368
 
4934 amit.gupta 369
    def getValidItemsByCatalogId(self, catalog_item_id):
370
        """
371
        Parameters:
372
         - catalog_item_id
373
        """
374
        log_entry(self, "items requested for CatalogItem")
375
        try:
376
            return get_thrift_item_list(filter(is_valid, get_items_by_catalog_id(catalog_item_id)))
377
        finally:
378
            close_session()
379
 
5586 phani.kuma 380
    def isValidCatalogItemId(self, catalog_item_id):
381
        """
382
        Parameters:
383
         - catalog_item_id
384
        """
385
        try:
386
            return is_valid_catalog_id(catalog_item_id)
387
        finally:
388
            close_session()
389
 
122 ashish 390
    def getAllItems(self, isActive):
391
        """
392
        Parameters:
393
         - isActive
394
        """
395
        log_entry(self, "all items requested")
766 rajveer 396
        try:
397
            items = get_all_items(isActive)
398
            ret_items = []
399
            for item in items:
400
                if item:
401
                    ret_items.append(to_t_item(item))
402
            return ret_items
403
        finally:
404
            close_session()
405
 
122 ashish 406
    def getAllItemsByStatus(self, itemStatus):
407
        """
408
        Parameters:
409
         - itemStatus
410
        """
411
        log_entry(self, "all items requested")
766 rajveer 412
        try:
413
            items = get_all_items_by_status(itemStatus)
414
            ret_items = []
415
            for item in items:
416
                if item:
417
                    ret_items.append(to_t_item(item))
418
            return ret_items
419
        finally:
420
            close_session()
6821 amar.kumar 421
 
422
    def getAllAliveItems(self):
423
        """
424
        Parameters:
425
         - itemStatus
426
        """
427
        log_entry(self, "all non phased non deleted items requested")
428
        try:
429
            items = get_all_alive_items()
430
            ret_items = []
431
            for item in items:
432
                if item:
433
                    ret_items.append(to_t_item(item))
434
            return ret_items
435
        finally:
436
            close_session()
437
 
122 ashish 438
 
3348 varun.gupt 439
    def getAllBrandsByCategory(self, categoryId):
440
        """
441
        Parameters:
442
         - categoryId
443
        """
444
        try:
445
            return get_all_brands_by_category(categoryId)
446
        finally:
447
            close_session()
448
 
4957 phani.kuma 449
    def getAllBrands(self):
450
        try:
451
            return get_all_brands()
452
        finally:
453
            close_session()
5944 mandeep.dh 454
 
3849 chandransh 455
    def getAllItemsInRange(self, offset, limit):
456
        """
457
        Gets at most 'limit' items starting at the given offset. Returns an empty list if there are no more items at the given offset.
458
 
459
        Parameters:
460
         - offset
461
         - limit
462
        """
463
        try:
464
            items = get_all_items(False, offset, limit)
465
            return [to_t_item(item) for item in items]
466
        finally:
467
            close_session()
379 ashish 468
 
3849 chandransh 469
    def getAllItemsByStatusInRange(self, itemStatus, offset, limit):
470
        """
471
        Gets at most 'limit' items starting at the given offset in the given status. Returns an empty list if there are no more items at the given offset.
472
 
473
        Parameters:
474
         - itemStatus
475
         - offset
476
         - limit
477
        """
478
        log_entry(self, "all items requested")
479
        try:
480
            items = get_all_items_by_status(itemStatus, offset, limit)
481
            return [to_t_item(item) for item in items]
482
        finally:
483
            close_session()
484
 
485
    def getItemCountByStatus(self, useStatus, itemStatus):
486
        """
487
        Gets a count of all items by status
488
 
489
        Parameters:
490
         - useStatus
491
         - itemStatus
492
        """
493
        try:
494
            return get_item_count_by_status(useStatus, itemStatus)
495
        finally:
496
            close_session()
497
 
9253 rajveer 498
    def markItemAsContentComplete(self, entityId, category, brand, modelName, modelNumber, isAndroid):
2080 rajveer 499
        """
500
        Parameters:
501
         - entityId
502
         - category
503
         - brand
504
         - modelName
505
         - modelNumber
9253 rajveer 506
         - isAndroid
2080 rajveer 507
        """
508
        try:
9253 rajveer 509
            return mark_item_as_content_complete(entityId, category, brand, modelName, modelNumber, isAndroid)
2080 rajveer 510
        finally:
511
            close_session()
766 rajveer 512
 
122 ashish 513
    def updateItem(self, item):
514
        """
515
        Parameters:
516
         - item
517
        """
518
        log_entry(self, "addItem called")
766 rajveer 519
        try:
520
            return update_item(item)
521
        finally:
522
            close_session()
523
 
626 chandransh 524
    def getBestSellers(self, start_index=0, total_items=None, category=-1):
766 rajveer 525
        try:
526
            if total_items is None:
527
                total_items = self.best_sellers_limit
528
            stop_index = start_index + total_items
529
            return get_best_sellers(start_index, stop_index, category)
530
        finally:
531
            close_session()
532
 
1926 rajveer 533
    def getBestSellersCatalogIds(self, start_index, total_items, brand, category=-1):
548 rajveer 534
        """
535
        Parameters:
536
         - beginIndex
537
         - totalItems
538
        """
766 rajveer 539
        try:
540
            if total_items is None:
541
                total_items = self.best_sellers_limit
542
            stop_index = start_index + total_items
1926 rajveer 543
            return get_best_sellers_catalog_ids(start_index, stop_index, brand, category)
766 rajveer 544
        finally:
545
            close_session()
546
 
591 chandransh 547
    def getBestSellersCount(self, ):
766 rajveer 548
        try:
2093 chandransh 549
            return get_best_sellers_count()
766 rajveer 550
        finally:
551
            close_session()
552
 
591 chandransh 553
    def getBestDeals(self,):
766 rajveer 554
        try:
555
            return get_best_deals()
556
        finally:
557
            close_session()
558
 
1926 rajveer 559
    def getBestDealsCatalogIds(self, start_index, total_items, brand,category=-1):
548 rajveer 560
        """
561
        Parameters:
562
         - beginIndex
563
         - totalItems
564
        """
766 rajveer 565
        try:
566
            stop_index = start_index + total_items
1926 rajveer 567
            return get_best_deals_catalog_ids(start_index, stop_index, brand, category)
766 rajveer 568
        finally:
569
            close_session()
570
 
591 chandransh 571
    def getBestDealsCount(self, ):
766 rajveer 572
        try:
573
            return get_best_deals_count()
574
        finally:
575
            close_session()
576
 
5217 amit.gupta 577
    def getComingSoon(self,):
578
        try:
579
            return get_coming_soon()
580
        finally:
581
            close_session()
582
 
583
    def getComingSoonCatalogIds(self, start_index, total_items, brand,category=-1):
584
        """
585
        Parameters:
586
         - beginIndex
587
         - totalItems
588
        """
589
        try:
590
            stop_index = start_index + total_items
591
            return get_coming_soon_catalog_ids(start_index, stop_index, brand, category)
592
        finally:
593
            close_session()
594
 
595
    def getComingSoonCount(self, ):
596
        try:
597
            return get_coming_soon_count()
598
        finally:
599
            close_session()
600
 
591 chandransh 601
    def getLatestArrivals(self,):
766 rajveer 602
        try:
603
            return get_latest_arrivals(self.latest_arrivals_limit)
604
        finally:
605
            close_session()
2975 chandransh 606
 
607
    def getLatestArrivalsCatalogIds(self, beginIndex, totalItems, brand, categories):
548 rajveer 608
        """
2975 chandransh 609
        Returns the list of catalog ids of latest arrivals in the given categories of the given brand.
610
        To ignore the categories, pass the list as empty. To ignore brand, pass it as null.
611
 
548 rajveer 612
        Parameters:
613
         - beginIndex
614
         - totalItems
2975 chandransh 615
         - brand
616
         - categories
548 rajveer 617
        """
766 rajveer 618
        try:
2975 chandransh 619
            if beginIndex > self.latest_arrivals_limit:
766 rajveer 620
                return []
2975 chandransh 621
            stopIndex = beginIndex + totalItems
622
            if stopIndex > self.latest_arrivals_limit:
623
                stopIndex = self.latest_arrivals_limit
624
            return get_latest_arrivals_catalog_ids(beginIndex, stopIndex, brand, categories)
766 rajveer 625
        finally:
626
            close_session()
627
 
591 chandransh 628
    def getLatestArrivalsCount(self, ):
766 rajveer 629
        try:
630
            return get_latest_arrivals_count(self.latest_arrivals_limit)
631
        finally:
632
            close_session()
591 chandransh 633
 
1155 rajveer 634
    def generateNewEntityID(self, ):
635
        try:
636
            return generate_new_entity_id()
637
        finally:
638
            close_session()
639
 
635 rajveer 640
    def putCategoryObject(self, object):
641
        """
642
        Parameters:
643
         - object
644
        """
766 rajveer 645
        try:
646
            return put_category_object(object)
647
        finally:
648
            close_session()
649
 
635 rajveer 650
    def getCategoryObject(self, ):
766 rajveer 651
        try:
652
            return get_category_object()
653
        finally:
654
            close_session()
1970 rajveer 655
 
656
    def addCategory(self, category):
657
        """
658
        Parameters:
659
         - category
660
        """
661
        try:
662
            return add_category(category)
663
        finally:
664
            close_session()
665
 
666
    def getCategory(self, id):
667
        """
668
        Parameters:
669
         - id
670
        """
671
        try:
672
            return to_t_category(get_category(id))
673
        finally:
674
            close_session()
675
 
676
    def getAllCategories(self, ):
677
        try:
678
            categories = get_all_categories()
679
            return [to_t_category(category) for category in categories]
680
        finally:
681
            close_session()
4432 rajveer 682
 
4423 phani.kuma 683
    def getAllSimilarItems(self, itemId):
684
        """
685
        Returns list of similar items.
686
 
687
        Parameters:
688
         - itemId
689
        """
4432 rajveer 690
        try:
691
            return get_all_similar_items_catalog_ids(itemId)
692
        finally:
693
            close_session()
694
 
4423 phani.kuma 695
    def addSimilarItem(self, itemId, catalogItemId):
696
        """
697
        add similar item.
698
 
699
        Parameters:
700
         - itemId, catalogItemId
701
        """
702
        try:
703
            return add_similar_item_catalog_id(itemId, catalogItemId)
704
        finally:
705
            close_session()
706
 
707
    def deleteSimilarItem(self, itemId, catalogItemId):
708
        """
709
        delete similar items.
710
 
711
        Parameters:
712
         - itemId, catalogItemIds
713
        """
714
        try:
715
            return delete_similar_item_catalog_id(itemId, catalogItemId)
716
        finally:
717
            close_session()
4762 phani.kuma 718
 
5504 phani.kuma 719
    def getAllItemVouchers(self, itemId):
720
        """
721
        Returns list of vouchers.
722
 
723
        Parameters:
724
         - itemId
725
        """
726
        try:
727
            vouchers = get_all_vouchers_for_item(itemId)
728
            return [to_t_voucher_item_mapping(voucher) for voucher in vouchers]
729
        finally:
730
            close_session()
731
 
732
    def getVoucherAmount(self, itemId, voucherType):
733
        """
734
        Returns voucher amount.
735
 
736
        Parameters:
737
         - itemId, voucherType
738
        """
739
        try:
740
            return get_voucher_amount(itemId, voucherType)
741
        finally:
742
            close_session()
743
 
744
    def addupdateVoucherForItem(self, catalogItemId, voucherType, voucherAmount):
745
        """
746
        add or update voucher for item.
747
 
748
        Parameters:
749
         - catalogItemId, voucherType, voucherAmount
750
        """
751
        try:
752
            return add_update_voucher_for_item(catalogItemId, voucherType, voucherAmount)
753
        finally:
754
            close_session()
755
 
756
    def deleteVoucherForItem(self, catalogItemId, voucherType):
757
        """
758
        delete voucher for item.
759
 
760
        Parameters:
761
         - catalogItemId, voucherType
762
        """
763
        try:
764
            return delete_voucher_for_item(catalogItemId, voucherType)
765
        finally:
766
            close_session()
2116 ankur.sing 767
 
4725 phani.kuma 768
    def checkSimilarItem(self, brand, modelNumber, modelName, color):
2116 ankur.sing 769
        """
4725 phani.kuma 770
        Checks if similar item exists (with same Brand, ModelNumber, ModelName, Color)
2116 ankur.sing 771
        If yes, returns the itemId else returns 0
772
 
773
        Parameters:
774
         - brand
775
         - modelNumber
4725 phani.kuma 776
         - modelName
2116 ankur.sing 777
         - color
778
        """
779
        try:
4725 phani.kuma 780
            return check_similar_item(brand, modelNumber, modelName, color)
2116 ankur.sing 781
        finally:
782
            close_session()
783
 
2286 ankur.sing 784
    def changeItemRiskyFlag(self, itemId, risky):
785
        """
786
        Marks/Unmarks an item as risky. This flag is used for automatic marking of an item as INACTIVE in case of zero inventory.
787
 
788
        Parameters:
789
         - itemId
790
         - risky
791
        """
792
        try:
793
            change_risky_flag(itemId, risky)
794
        finally:
795
            close_session()
2116 ankur.sing 796
 
4957 phani.kuma 797
    def getItemsForMasterSheet(self, category, brand):
2358 ankur.sing 798
        """
4957 phani.kuma 799
        Returns list of items with any status except PHASED_OUT and filtered by category, brand.
2358 ankur.sing 800
 
801
        Parameters:
4762 phani.kuma 802
         - category
4957 phani.kuma 803
         - vendor
804
         - brand
2358 ankur.sing 805
        """
806
        try:
4957 phani.kuma 807
            return [to_t_item(item) for item in get_items_for_mastersheet(category, brand)]
2358 ankur.sing 808
        finally:
809
            close_session()
810
 
811
    def getItemsByRiskyFlag(self, ):
812
        """
813
        Returns list of items marked as risky.
814
        """
815
        try:
816
            return [to_t_item(item) for item in get_risky_items()]
817
        finally:
818
            close_session()
2809 rajveer 819
 
820
    def getSimilarItemsCatalogIds(self, beginIndex, totalItems, itemId):
821
        """
822
        Returns list of catalog ids of items with same similarity index as of the given itemId
823
 
824
        Parameters:
825
         - beginIndex
826
         - totalItems
827
         - itemId
828
        """
829
        try:
830
            return get_similar_items_catalog_ids(beginIndex, beginIndex+totalItems, itemId)
831
        finally:
832
            close_session()
3079 rajveer 833
 
834
    def addProductNotification(self, itemId, email):
835
        """
836
        Add user requests for out of stock items. Once user will ask for notify me an entry will
837
 
838
        Parameters:
839
        - itemId
840
        - email
841
        """
842
        try:
843
            return add_product_notification(itemId, email)
844
        finally:
845
            close_session()
2358 ankur.sing 846
 
3086 rajveer 847
    def sendProductNotifications(self, ):
848
        """
849
        Send the product notifications to the users for items which has stock.
850
        """
851
        try:
852
            return send_product_notifications()
853
        finally:
854
            close_session()
3557 rajveer 855
 
856
 
857
    def getAllSources(self, ):
858
        """
859
        Return list of all sources
860
        """
861
        try:
862
            return get_all_sources()
863
        finally:
864
            close_session()
865
 
866
    def getItemPricingBySource(self, itemId, sourceId):
867
        """
868
        Returns the pricing information of an item. If no information is found, exception will be thrown.
3376 rajveer 869
 
3557 rajveer 870
        Parameters:
871
         - itemId
872
         - sourceId
873
        """
874
        try:
875
            return to_t_source_item_pricing(get_item_pricing_by_source(itemId, sourceId))
876
        finally:
877
            close_session()
878
 
879
    def addSourceItemPricing(self, sourceItemPricing):
880
        """
881
        Adds prices to be displayed corresponding to the item if user comes from a source.
882
 
883
        Parameters:
884
         - sourceItemPricing
885
        """
886
        try:
887
            add_source_item_pricing(sourceItemPricing)
888
        finally:
889
            close_session()
890
 
891
    def getAllSourcePricing(self, itemId):
892
        """
893
        Returns the list of source pricing information of an item.
894
        Raises an exception if item not found corresponding to itemId
895
 
896
        Parameters:
897
         - itemId
898
        """
899
        try:
900
            return [to_t_source_item_pricing(source_item_pricing) for source_item_pricing in get_all_source_pricing(itemId)]
901
#        return [to_t_item(item) for item in get_risky_items()]
902
        finally:
903
            close_session()
904
 
905
    def getItemForSource(self, item_id, sourceId):
906
        """
907
        Parameters:
908
         - item_id
909
         - sourceId
910
        """
911
        try:
912
            return to_t_item(get_item_for_source(item_id, sourceId))
913
        finally:
914
            close_session()
3872 chandransh 915
 
916
    def searchItemsInRange(self, searchTerms, offset, limit):
917
        """
918
        Searches items matching the the given terms in the catalog
3557 rajveer 919
 
3872 chandransh 920
        Parameters:
921
         - searchTerms
922
        """
923
        try:
924
            return [to_t_item(item) for item in search_items(searchTerms, offset, limit)]
925
        finally:
926
            close_session()
927
 
928
    def getSearchResultCount(self, searchTerms):
929
        """
930
        Gets the count of search results for the given search terms so that the user can go through all the pages.
931
 
932
        Parameters:
933
         - searchTerms
934
        """
935
        try:
936
            return get_search_result_count(searchTerms)
937
        finally:
938
            close_session()
939
 
4295 varun.gupt 940
    def getProductNotifications(self, startDateTime):
941
        '''
942
        Returns a list of Product Notification objects each representing user requests for notification
943
        '''
944
        try:
945
            return [to_t_product_notification_request(notification) for notification in get_product_notifications(to_py_date(startDateTime))]
946
        finally:
947
            close_session()
948
 
7897 amar.kumar 949
    def getProductNotificationRequestCount(self, startDateTime,  categoryId):
4295 varun.gupt 950
        '''
951
        Returns list of items and the counts of product notification requests
952
        '''
953
        try:
7897 amar.kumar 954
            notification_request_counts = [(notification.item, count) for notification, count in get_product_notification_request_count(to_py_date(startDateTime), categoryId)]
4295 varun.gupt 955
 
956
            return [to_t_product_notification_request_count(count) for count in notification_request_counts]
957
 
958
        finally:
959
            close_session()
960
 
3376 rajveer 961
    def isAlive(self, ):
962
        """
963
        For checking weather service is active alive or not. It also checks connectivity with database
964
        """
965
        try:
966
            return is_alive()
967
        finally:
968
            close_session()
969
 
766 rajveer 970
    def closeSession(self, ):
3376 rajveer 971
        """
972
        For closing the open session in sqlalchemy
973
        """
4332 anupam.sin 974
        close_session()
975
 
4649 phani.kuma 976
    def addAuthorizationLog(self, itemId, username, reason):
977
        """
978
        add a log to authorize table.
979
 
980
        Parameters:
981
         - itemId, username, reason
982
        """
983
        try:
984
            return add_authorization_log_for_item(itemId, username, reason)
985
        finally:
4934 amit.gupta 986
            close_session()
5110 mandeep.dh 987
 
7330 amit.gupta 988
    def getVatPercentageForItem(self, itemId, stateId, price):
6039 amit.gupta 989
        """
990
        get Vat percentage for item for item
991
        """
992
        try:
7340 amit.gupta 993
            return get_vat_percentage_for_item(itemId, stateId, price)
6039 amit.gupta 994
        finally:
995
            close_session()
996
 
997
    def getVatAmountForItem(self, itemId, price):
998
        """
999
        get Vat amount for item
1000
        """
1001
        try:
1002
            return get_vat_amount_for_item(itemId,price)
1003
        finally:
1004
            close_session()
1005
 
5944 mandeep.dh 1006
    def validateRiskyStatus(self, itemId):
5712 mandeep.dh 1007
        """
5944 mandeep.dh 1008
        Check wether item is risky and change status if inventory is not available for risky items
5712 mandeep.dh 1009
        """
1010
        try:
5944 mandeep.dh 1011
            return check_risky_item(itemId)
5712 mandeep.dh 1012
        finally:
1013
            close_session()
6532 amit.gupta 1014
 
1015
    def getAllIgnoredInventoryUpdateItemsList(self,offset, limit):
1016
        try:
1017
            return get_all_ignored_inventoryupdate_items_list(offset,limit)
1018
        finally:
6921 anupam.sin 1019
            close_session()
6805 anupam.sin 1020
 
6921 anupam.sin 1021
    def getInsuranceAmount(self, itemId, price, insurerId, quantity):
6805 anupam.sin 1022
        try:
6921 anupam.sin 1023
            return get_insurance_amount(itemId, price, insurerId, quantity)
6805 anupam.sin 1024
        finally:
6921 anupam.sin 1025
            close_session()
6805 anupam.sin 1026
 
1027
    def getInsurer(self, insurerId):
1028
        try:
1029
            return to_t_insurer(get_insurer(insurerId))
1030
        finally:
6838 vikram.rag 1031
            close_session()
1032
 
1033
    def getAllInsurers(self):
1034
        try:
1035
            insurers = []
1036
            all_insurers = get_all_insurers()
1037
            for insurer in all_insurers:
1038
                insurers.append(to_t_insurer(insurer))
6921 anupam.sin 1039
            return insurers
6838 vikram.rag 1040
        finally:
1041
            close_session()
9299 kshitij.so 1042
 
1043
    def getPrefferedInsurerForItem(self, itemId, insurerType):
1044
        try:
1045
            return get_preffered_insurer_for_item(itemId, insurerType)
1046
        finally:
1047
            close_session()
6962 rajveer 1048
 
1049
    def updateInsuranceDeclaredAmount(self, insurerId, amount):
1050
        try:
1051
            update_insurance_declared_amount(insurerId, amount)
1052
        finally:
1053
            close_session()
5944 mandeep.dh 1054
 
6845 amit.gupta 1055
    def getAllEntityTags(self):
1056
        try:
1057
            return get_all_entity_tags()
1058
        finally:
1059
            close_session()
1060
 
7190 amar.kumar 1061
    def getFreebieForItem(self, itemId):
1062
        try:
1063
            return get_freebie_for_item(itemId)
1064
        finally:
1065
            close_session()
1066
 
1067
    def addOrUpdateFreebieForItem(self, freebieItem):
1068
        try:
1069
            return add_or_update_freebie_for_item(freebieItem)
1070
        finally:
1071
            close_session()
7291 vikram.rag 1072
 
7272 amit.gupta 1073
    def addOrUpdateBrandInfo(self, brandInfo):
1074
        try:
1075
            return add_or_update_brand_info(brandInfo)
1076
        finally:
1077
            close_session()
1078
 
1079
    def getBrandInfo(self):
1080
        try:
1081
            return get_brand_info()
1082
        finally:
1083
            close_session()
1084
 
7256 rajveer 1085
    def getStorePricing(self, itemId):
1086
        try:
1087
            return get_store_pricing(itemId)
1088
        finally:
1089
            close_session()
1090
 
7306 rajveer 1091
    def getStorePricings(self, itemIds):
1092
        try:
1093
            return [get_store_pricing(itemId) for itemId in itemIds]
1094
        finally:
1095
            close_session()
1096
 
7382 rajveer 1097
    def updateStorePricing(self, sp, allColors):
7265 rajveer 1098
        try:
7382 rajveer 1099
            return update_store_pricing(sp, allColors)
7265 rajveer 1100
        finally:
1101
            close_session()
7190 amar.kumar 1102
 
7281 kshitij.so 1103
    def getAmazonItemDetails(self, amazonItemId):
1104
        try:
8362 kshitij.so 1105
            result = to_t_Amazonlisted(get_amazon_item_details(amazonItemId))
7281 kshitij.so 1106
        finally:
1107
            close_session()
1108
            return result
1109
 
8168 kshitij.so 1110
    def updateAmazonItemDetails(self,amazonlisted):
7281 kshitij.so 1111
        try:
8168 kshitij.so 1112
            update_amazon_item_details(amazonlisted)
7281 kshitij.so 1113
        finally:
1114
            close_session()
1115
 
1116
    def addAmazonItem(self,amazonlisted):
1117
        try:
1118
            print amazonlisted
1119
            add_amazon_item(amazonlisted)
1120
        finally:
1121
            close_session()
1122
 
7291 vikram.rag 1123
    def getAsinItems(self):
1124
        try:
1125
            items = get_asin_items()
1126
            ret_items = []
1127
            for item in items:
1128
                if item:
1129
                    ret_items.append(to_t_item(item))
1130
            return ret_items
1131
        finally:
1132
            close_session()
7281 kshitij.so 1133
 
7291 vikram.rag 1134
    def getAllFbaListedItems(self):
1135
        try:
1136
            items = get_all_fba_listed_items()
1137
            ret_items = []
1138
            for item in items:
1139
                if item:
1140
                    ret_items.append(to_t_Amazonlisted(item))
1141
            return ret_items
1142
        finally:
1143
            close_session()
1144
 
1145
    def getAllNonFbaListedItems(self):
1146
        try:
1147
            items = get_all_nonfba_listed_items()
1148
            ret_items = []
1149
            for item in items:
1150
                if item:
1151
                    ret_items.append(to_t_Amazonlisted(item))
1152
            return ret_items
1153
        finally:
1154
            close_session()
1155
 
1156
 
1157
    def getAllAmazonListedItems(self):      
1158
        try:
1159
            amazonlisteditems = []
1160
            all_listed = get_all_amazon_listed_items()
1161
            for amazonlisteditem in all_listed:
1162
                amazonlisteditems.append(to_t_Amazonlisted(amazonlisteditem))
1163
            return amazonlisteditems
1164
        finally:
8139 kshitij.so 1165
            close_session()           
7291 vikram.rag 1166
 
7460 kshitij.so 1167
    def updateItemInventory(self,itemId,holdInventory,defaultInventory):
1168
        try:
1169
            update_item_inventory(itemId,holdInventory,defaultInventory)
1170
            return True
1171
        finally:
1172
            close_session()
7291 vikram.rag 1173
 
7770 kshitij.so 1174
    def updateTimestampForAmazonFeeds(self,feedType,skuList,timestamp):
1175
        try:
1176
            return update_timestamp_for_amazon_feeds(feedType,skuList,timestamp)
1177
        finally:
1178
            close_session()
1179
 
7897 amar.kumar 1180
    def  getAllParentCategories(self):
1181
        try:
1182
            categories = get_all_parent_categories()
1183
            return [to_t_category(category) for category in categories]
1184
        finally:
1185
            close_session()
1186
 
7977 kshitij.so 1187
    def addPageViewEvent(self,pageEvent):
1188
        try:
1189
            print "csh"
1190
            add_page_view_event(pageEvent)
1191
        finally:
1192
            close_session()
1193
 
1194
    def addCartEvent(self,cartEvent):
1195
        try:
1196
            add_cart_event(cartEvent)
1197
        finally:
1198
            close_session()
8182 amar.kumar 1199
 
1200
    def addEbayItem(self, ebayItem):
1201
        try:
1202
            insert_ebay_item(ebayItem)
1203
        finally:
1204
            close_session()
1205
 
1206
    def getEbayItem(self, listingId):
1207
        try:
1208
            return to_t_ebay_item(get_ebay_item(listingId))
1209
        finally:
1210
            close_session()
7977 kshitij.so 1211
 
8182 amar.kumar 1212
    def updateEbayItem(self, ebayItem):
1213
        try:
1214
            update_ebay_item(ebayItem)
1215
        finally:
1216
            close_session()
1217
 
8168 kshitij.so 1218
    def updateAmazonAttributesInBulk(self,amazonlisted):
1219
        try:
1220
            return update_amazon_attributes_in_bulk(amazonlisted)
1221
        finally:
1222
            close_session()
8139 kshitij.so 1223
 
8379 vikram.rag 1224
    def getAllItemstoListOnFba(self):
1225
        try:
1226
            fba_items = []
1227
            for item in get_all_items_to_list_on_fba():
1228
                fba_items.append(to_t_Amazonlisted(item))
1229
            return fba_items
1230
        finally:
1231
            close_session()
1232
 
1233
    def getAllItemstoListOnNonFba(self):
1234
        try:
1235
            non_fba_items = []
1236
            for item in get_all_items_to_list_on_nonfba():
1237
                non_fba_items.append(to_t_Amazonlisted(item))
1238
            return non_fba_items
1239
        finally:
1240
            close_session()
8619 kshitij.so 1241
 
1242
    def getAmazonListedItems(self,offset,limit):
1243
        try:
1244
            amazonlisteditems = []
1245
            all_listed = get_amazon_listed_items(offset,limit)
1246
            for amazonlisteditem in all_listed:
1247
                amazonlisteditems.append(to_t_Amazonlisted(amazonlisteditem))
1248
        finally:
1249
            close_session()
1250
            return amazonlisteditems
1251
 
1252
    def searchAmazonItems(self,searchTerms,offset,limit):
1253
        try:
1254
            amazonlisteditems = []
1255
            search_result = search_amazon_items(searchTerms,offset,limit)
1256
            for amazonlisteditem in search_result:
1257
                amazonlisteditems.append(to_t_Amazonlisted(amazonlisteditem))
1258
        finally:
1259
            close_session()
1260
            return amazonlisteditems
1261
 
1262
    def getAmazonSearchResultCount(self,searchTerms):
1263
        try:
1264
            return get_amazon_search_result_count(searchTerms)
1265
        finally:
1266
            close_session()
1267
 
1268
    def getCountForAmazonlistedItems(self):
1269
        try:
1270
            return get_count_for_amazonlisted_items()
1271
        finally:
1272
            close_session()
1273
 
1274
    def updateAsin(self,amazonAsinMap):
1275
        try:
1276
            update_asin(amazonAsinMap)
1277
        finally:
1278
            close_session()
8168 kshitij.so 1279
 
8739 vikram.rag 1280
    def addOrUpdateSnapdealItem(self,snapdealitem):
1281
        try:
1282
            return add_or_update_snapdeal_item(snapdealitem)
1283
        finally:    
1284
            close_session()
1285
 
1286
    def getSnapdealItem(self,item_id):
1287
        try:
1288
            return to_t_snapdeal_item(get_snapdeal_item(item_id))
1289
        finally:
1290
            close_session()
9242 kshitij.so 1291
 
1292
    def getSnapdealItemDetails(self,item_id):
1293
        try:
9724 kshitij.so 1294
            snapdealItem, snapdealInventory = get_snapdeal_item_detail(item_id)
1295
            return to_t_snapdeal_item_details(snapdealItem, snapdealInventory)
9242 kshitij.so 1296
        finally:
1297
            close_session()
8739 vikram.rag 1298
 
1299
    def getAllSnapdealItems(self):
1300
        try:
1301
            items = get_all_snapdeal_items() 
9724 kshitij.so 1302
            return [to_t_snapdeal_item_details(item,None) for item in items]
8739 vikram.rag 1303
        finally:
9242 kshitij.so 1304
            close_session()
8739 vikram.rag 1305
 
9242 kshitij.so 1306
    def getSnapdealItems(self,offset,limit):
1307
        try:
1308
            items = get_snapdeal_items(offset,limit) 
9724 kshitij.so 1309
            return [to_t_snapdeal_item_details(item,None) for item in items]
9242 kshitij.so 1310
        finally:
1311
            close_session()
1312
 
1313
    def searchSnapdealItems(self,searchterm,offset,limit):
1314
        try:
1315
            snapdealitems = []
1316
            search_result = search_snapdeal_items(searchterm,offset,limit)
1317
            for snapdealitem in search_result:
9724 kshitij.so 1318
                snapdealitems.append(to_t_snapdeal_item_details(snapdealitem,None))
9242 kshitij.so 1319
        finally:
1320
            close_session()
1321
            return snapdealitems
1322
 
1323
    def getCountForSnapdealItems(self):
1324
        try:
1325
            return get_count_for_snapdeal_items()
1326
        finally:
1327
            close_session()
1328
 
1329
 
1330
    def getSnapdealSearchResultCount(self,searchterms):
1331
        try:
1332
            return get_snapdeal_search_result_count(searchterms)
1333
        finally:
1334
            close_session()
1335
 
9456 vikram.rag 1336
    def getSnapdealItembySkuAtSnapdeal(self,skuatsnapdeal):
1337
        try:
1338
            return to_t_snapdeal_item(get_snapdealitem_by_skuatsnapdeal(skuatsnapdeal))
1339
        finally:
9724 kshitij.so 1340
            close_session()
1341
 
1342
    def getMarketplacedetailsForItem(self,itemId,sourceId):
1343
        try:
1344
            return to_t_marketplace_items(get_marketplace_details_for_item(itemId,sourceId))
1345
        finally:
1346
            close_session()
1347
 
1348
    def updateMarketplaceAttributesForItem(self,marketplaceItem):
1349
        try:
1350
            return update_marketplace_attributes_for_item(marketplaceItem)
1351
        finally:
1352
            close_session() 
9456 vikram.rag 1353
 
9621 manish.sha 1354
    def getProductFeedSubmit(self, catalog_itemId):
1355
        try:
1356
            return to_t_product_feed_submit(get_product_feed_submit(catalog_itemId))
1357
        finally:
1358
            close_session()
1359
 
1360
    def addProductFeedSubmit(self, productFeedSubmit):
1361
        try:
1362
            return add_product_feed_submit(productFeedSubmit)
1363
        finally:
1364
            close_session()
1365
 
1366
    def updateProductFeedSubmit(self, productFeedSubmit):
1367
        try:
1368
            return update_product_feed_submit(productFeedSubmit)
1369
        finally:
1370
            close_session()
1371
 
1372
    def deleteProductFeedSubmit(self, catalog_itemId):
1373
        try:
1374
            return delete_product_feed_submit(catalog_itemId)
1375
        finally:
1376
            close_session()
1377
 
1378
    def getAllProductFeedSubmit(self):
1379
        try:
1380
            log_entry(self, "all ProductFeedSubmit requested")
1381
            feedSubmits = get_all_product_feed_submit()
1382
            ret_feedSubmits = []
1383
            for feedSubmit in feedSubmits:
1384
                if feedSubmit:
1385
                    ret_feedSubmits.append(to_t_product_feed_submit(feedSubmit))
1386
            return ret_feedSubmits
1387
        finally:
9776 vikram.rag 1388
            close_session()
1389
 
1390
    def getMarketPlaceItemsForPriceUpdate(self,source):
1391
        try:
1392
            items = get_all_marketplace_items_for_priceupdate(source) 
1393
            return [to_t_marketplace_itemprice(item) for item in items]
1394
        finally:
1395
            close_session()
9621 manish.sha 1396
 
9776 vikram.rag 1397
    def updateMarketPlacePriceUpdateStatus(self,skulist,timestamp):
1398
        try:
1399
            update_marketplace_priceupdate_status(skulist,timestamp)
1400
        finally:
1401
            close_session()
1402
 
1403
 
1404
if __name__ == '__main__':
1405
    items = get_all_alive_items()
1406
    ret_items = []
1407
    for item in items:
1408
        if item:
1409
            ret_items.append(to_t_item(item))
1410
    print ret_items
1411
 
1412
 
4934 amit.gupta 1413
def is_valid(item):
1414
    if item.status in [status.ACTIVE, status.PAUSED, status.PAUSED_BY_RISK]:
4936 amit.gupta 1415
        if item.startDate:
1416
            return not(datetime.datetime.now() < item.startDate or item.sellingPrice == 0)
1417
        else:
1418
            return True
6256 rajveer 1419
    elif item.status == status.COMING_SOON:
1420
        return True
1421
    else:
7190 amar.kumar 1422
        return False
7438 amit.gupta 1423