Subversion Repositories SmartDukaan

Rev

Rev 15072 | Rev 15075 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 15072 Rev 15074
Line 3... Line 3...
3
from dtr.config import PythonPropertyReader
3
from dtr.config import PythonPropertyReader
4
from dtr.main import Store
4
from dtr.main import Store
5
from dtr.dao import FeaturedDeals
5
from dtr.dao import FeaturedDeals
6
from dtr.storage import DataService
6
from dtr.storage import DataService
7
from dtr.storage.DataService import price_preferences, brand_preferences, \
7
from dtr.storage.DataService import price_preferences, brand_preferences, \
8
    user_actions
8
    user_actions, Brands
9
from dtr.storage.MemCache import MemCache
9
from dtr.storage.MemCache import MemCache
10
from dtr.utils.utils import to_java_date
10
from dtr.utils.utils import to_java_date
11
from elixir import *
11
from elixir import *
12
from operator import itemgetter
12
from operator import itemgetter
13
import pymongo
13
import pymongo
Line 968... Line 968...
968
                    val['source_product_name'] = ""
968
                    val['source_product_name'] = ""
969
                    val['skuBundleId'] = ""
969
                    val['skuBundleId'] = ""
970
                data.append(val)
970
                data.append(val)
971
        return data
971
        return data
972
 
972
 
-
 
973
def __getBrandIdForBrand(brandName, category_id):
-
 
974
    brandInfo = Brands.query.filter(Brands.category_id==category_id).filter(Brands.name == brandName).all()
-
 
975
    if brandInfo is None or len(brandInfo)!=1:
-
 
976
        raise
-
 
977
    else:
-
 
978
        return brandInfo[0].id
-
 
979
 
973
def addNewItem(data):
980
def addNewItem(data):
974
    try:
981
    try:
975
        data['updatedOn'] = to_java_date(datetime.now())
982
        data['updatedOn'] = to_java_date(datetime.now())
976
        data['addedOn'] = to_java_date(datetime.now())
983
        data['addedOn'] = to_java_date(datetime.now())
977
        data['priceUpdatedOn'] = to_java_date(datetime.now())
984
        data['priceUpdatedOn'] = to_java_date(datetime.now())
Line 979... Line 986...
979
        max_bundle = list(get_mongo_connection().Catalog.MasterData.find().sort([('skuBundleId',pymongo.DESCENDING)]).limit(1))
986
        max_bundle = list(get_mongo_connection().Catalog.MasterData.find().sort([('skuBundleId',pymongo.DESCENDING)]).limit(1))
980
        data['_id'] = max_id[0]['_id'] + 1
987
        data['_id'] = max_id[0]['_id'] + 1
981
        data['skuBundleId'] = max_bundle[0]['skuBundleId'] + 1
988
        data['skuBundleId'] = max_bundle[0]['skuBundleId'] + 1
982
        data['identifier'] = str(data['identifier'])
989
        data['identifier'] = str(data['identifier'])
983
        data['secondaryIdentifier'] = str(data['secondaryIdentifier'])
990
        data['secondaryIdentifier'] = str(data['secondaryIdentifier'])
-
 
991
        data['brand_id'] = __getBrandIdForBrand(data['brand'], data['category_id'])
984
        get_mongo_connection().Catalog.MasterData.insert(data)
992
        get_mongo_connection().Catalog.MasterData.insert(data)
985
        return {1:'Data added successfully'}
993
        return {1:'Data added successfully'}
986
    except Exception as e:
994
    except Exception as e:
987
        print e
995
        print e
988
        return {0:'Unable to add data.'}
996
        return {0:'Unable to add data.'}
Line 994... Line 1002...
994
        data['priceUpdatedOn'] = to_java_date(datetime.now())
1002
        data['priceUpdatedOn'] = to_java_date(datetime.now())
995
        max_id = list(get_mongo_connection().Catalog.MasterData.find().sort([('_id',pymongo.DESCENDING)]).limit(1))
1003
        max_id = list(get_mongo_connection().Catalog.MasterData.find().sort([('_id',pymongo.DESCENDING)]).limit(1))
996
        data['_id'] = max_id[0]['_id'] + 1
1004
        data['_id'] = max_id[0]['_id'] + 1
997
        data['identifier'] = str(data['identifier'])
1005
        data['identifier'] = str(data['identifier'])
998
        data['secondaryIdentifier'] = str(data['secondaryIdentifier'])
1006
        data['secondaryIdentifier'] = str(data['secondaryIdentifier'])
-
 
1007
        data['brand_id'] = __getBrandIdForBrand(data['brand'], data['category_id'])
999
        get_mongo_connection().Catalog.MasterData.insert(data)
1008
        get_mongo_connection().Catalog.MasterData.insert(data)
1000
        return {1:'Data added successfully.'}
1009
        return {1:'Data added successfully.'}
1001
    except Exception as e:
1010
    except Exception as e:
1002
        print e
1011
        print e
1003
        return {0:'Unable to add data.'}
1012
        return {0:'Unable to add data.'}
Line 1135... Line 1144...
1135
        mc.set("brandFilter",{0:brandMap, 3:mobData, 5:tabData}, 600)  
1144
        mc.set("brandFilter",{0:brandMap, 3:mobData, 5:tabData}, 600)  
1136
    
1145
    
1137
    return sorted(mc.get("brandFilter").get(category_id), key = lambda x: (-x['count'], x['brand']))
1146
    return sorted(mc.get("brandFilter").get(category_id), key = lambda x: (-x['count'], x['brand']))
1138
        
1147
        
1139
def main():
1148
def main():
1140
    print (getBrandsForFilter(0))
1149
    print __getBrandIdForBrand('Apple',3)
1141
    
1150
    
1142
    
1151
    
1143
if __name__=='__main__':
1152
if __name__=='__main__':
1144
    main()
1153
    main()