Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
19247 kshitij.so 1
from datetime import datetime
2
from dtr.utils.utils import to_java_date, CATEGORY_MAP, SUB_CATEGORY_MAP, get_mongo_connection_cms, get_mongo_connection
3
from shop2020.config.client.ConfigClient import ConfigClient
4
from dtr.dao import ProductInfo
5
from pymongo import DESCENDING
19255 kshitij.so 6
import traceback
19247 kshitij.so 7
 
8
config_client = ConfigClient()
9
mongo_cms_host = config_client.get_property('mongo_cms_host')
10
 
11
 
12
 
13
def addData(bulkItemsList):
14
    notAdded = []
15
    for item in bulkItemsList:
16
        v= ProductInfo(None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None,None)
17
        v. _id = None
18
        v.addedOn = to_java_date(datetime.now())
19254 kshitij.so 19
        v.available_price = item.available_price 
19247 kshitij.so 20
        v.brand = item.brand 
21
        v.cashback = ""
22
        v.category= CATEGORY_MAP.get(item.category_id)
23
        v.category_id = item.category_id
24
        v.identifier = item.identifier      
25
        v.in_stock = 0
26
        v.marketPlaceUrl = None
27
        v.model_name = item.model_name
19254 kshitij.so 28
        v.mrp = item.mrp if item.mrp else 0
19247 kshitij.so 29
        v.product_name = item.product_name
30
        v.rank = 0
31
        v.secondaryIdentifier = ""
32
        v.skuBundleId = None
33
        v.source = "saholic.com"
34
        v.sourceCategoryId=""
35
        v.sourceProductId=""
36
        v.source_id=4
37
        v.source_product_name = item.source_product_name
38
        v.source_url = ""
39
        v.status  = 1
40
        v.stock_status = "Out of stock"
41
        v.thumbnail = None
42
        v.updatedOn = to_java_date(datetime.now())
43
        v.url = None
44
        v.priceUpdatedOn = 0
45
        v.offer = item.offer
46
        v.tagline = item.tagline
47
        v.is_shortage = 0
48
        v.brand_id = item.brand_id
49
        v.maxPrice = 0
50
        v.buyBoxFlag = 1
51
        v.coupon = ""
52
        v.codAvailable = 1
53
        v.gross_price = 0
54
        v.ignorePricing = 0       
55
        v.quantity = item.quantity
56
        v.videoLink = ""
57
        v.showVideo = 0
58
        v.subCategoryId = item.subCategoryId
59
        v.subCategory= SUB_CATEGORY_MAP.get(item.subCategoryId)
60
        v.showMrp = 1 if item.showMrpFlag else 0
61
        v.shippingCost = 0
62
        v.showNetPrice = 1 if item.showNetPrice else 0
63
 
64
 
65
        try:
66
            col = list(get_mongo_connection_cms(host=mongo_cms_host).CONTENT.siteContent.find({'_id':long(v.identifier)}))
67
            if len(col) ==0:
19255 kshitij.so 68
                print "Content not found for %s"%(v.identifier)
19247 kshitij.so 69
                notAdded.append(v.identifier)
70
                continue
71
            else:
72
                v.url = "http://saholic.com/"+col[0]['url']
73
                v.thumbnail = col[0]['defaultImageUrl']
74
                v.marketPlaceUrl = "http://saholic.com/"+col[0]['url']
75
        except:
19255 kshitij.so 76
            traceback.print_exc()
77
            print "Exception in %s"%(v.identifier)
19247 kshitij.so 78
            notAdded.append(v.identifier)
79
            continue
80
 
81
 
82
        exist = list(get_mongo_connection().Catalog.MasterData.find({'identifier':v.identifier}))
83
        if len(exist) > 0:
84
            notAdded.append(v.identifier)
85
            continue
86
        max_id = list(get_mongo_connection().Catalog.MasterData.find().sort([('_id',DESCENDING)]).limit(1))
87
        max_bundle = list(get_mongo_connection().Catalog.MasterData.find().sort([('skuBundleId',DESCENDING)]).limit(1))
88
        v._id = max_id[0]['_id'] + 1
89
        v.skuBundleId = max_bundle[0]['skuBundleId'] + 1
90
        get_mongo_connection().Catalog.MasterDataTest.insert(v.__dict__)
91
 
92
    return notAdded