Subversion Repositories SmartDukaan

Rev

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

Rev 103 Rev 122
Line 1... Line 1...
1
'''
1
'''
2
Created on 23-Mar-2010
2
Created on 23-Mar-2010
3
 
3
 
4
@author: ashish
4
@author: ashish
5
'''
5
'''
6
from shop2020.thriftpy.model.v1.catalog.ttypes import Category, Item,\
6
from shop2020.thriftpy.model.v1.catalog.ttypes import  Item,\
7
    ItemInventory, Warehouse, Vendor
7
    ItemInventory, Warehouse
8
import time
8
import time
9
 
-
 
10
def to_t_category(category):
-
 
11
    t_category = Category()
-
 
12
    t_category.id = category.id
-
 
13
    t_category.name = category.name
-
 
14
    t_category.isTopLevel = False
-
 
15
    if category.isRoot == 1:
-
 
16
        t_category.isTopLevel = True
-
 
17
    t_category.addedOn = int(time.mktime(category.addedOn.timetuple()))
-
 
18
    
-
 
19
    if category.parent:
-
 
20
        t_category.parent_id = category.parent.id
9
from shop2020.utils.Utils import to_java_date
21
    if category.children:
-
 
22
        t_category.childCategories = []
-
 
23
        for child in category.children:
-
 
24
            t_category.childCategories.append(child.id)
-
 
25
    return t_category
-
 
26
 
10
 
27
def to_t_item(item):
11
def to_t_item(item):
28
    t_item = Item()
12
    t_item = Item()
29
    t_item.id = item.id
13
    t_item.id = item.id
-
 
14
    t_item.catalogItemId = item.catalog_item_id
-
 
15
    t_item.vendorItemId = item.vendor_item_id
-
 
16
    t_item.weight = item.weight
30
    t_item.category_id = item.category.id
17
    t_item.featureId = item.feature_id
-
 
18
    t_item.featureDescription = item.feature_description
-
 
19
    if item.startDate:
-
 
20
        t_item.startDate = to_java_date(item.startDate)
-
 
21
    if item.addedOn:
-
 
22
        t_item.addedOn = to_java_date(item.addedOn)
-
 
23
    t_item.itemStatus = item.status
31
    t_item.itemInventory = to_t_item_inventory(item.currentInventory, item.id)
24
    t_item.itemInventory = to_t_item_inventory(item.currentInventory, item.id)
-
 
25
    
-
 
26
    t_item.otherInfo = to_t_other_info(item)
32
    return t_item
27
    return t_item
-
 
28
 
-
 
29
def to_t_other_info(item):
-
 
30
    t_other_info = {}
-
 
31
    for item_info in item.iteminfo:
-
 
32
        t_other_info[item_info.key] = item_info.value
33
    
33
    
34
def to_t_item_inventory(item_inventory_list, item_id):
34
def to_t_item_inventory(item_inventory_list, item_id):
35
    t_item_inventory = ItemInventory()
35
    t_item_inventory = ItemInventory()
36
    t_item_inventory.id = item_id
36
    t_item_inventory.id = item_id
37
    t_item_inventory.availability = {}
37
    t_item_inventory.availability = {}
38
    for inventory_item in item_inventory_list:
38
    for inventory_item in item_inventory_list:
39
        t_item_inventory.availability[inventory_item.Warehouse.id] = inventory_item.availibility
39
        t_item_inventory.availability[inventory_item.warehouse.id] = inventory_item.availibility
40
    #TODO:- populate itemattribs here
40
        if inventory_item.checkedOn:
-
 
41
            t_item_inventory.lastCheckedOn = to_java_date(inventory_item.checkedOn)
41
    return t_item_inventory
42
    return t_item_inventory
42
 
43
 
43
def to_t_warehouse(warehouse):
44
def to_t_warehouse(warehouse):
44
    t_warehouse = Warehouse()
45
    t_warehouse = Warehouse()
45
    t_warehouse.id = warehouse.id
46
    t_warehouse.id = warehouse.id
46
    t_warehouse.location = warehouse.location
47
    t_warehouse.location = warehouse.location
47
    #todo - add vendors as well here
48
    t_warehouse.warehouseStatus = warehouse.status
48
    
-
 
49
def to_t_vendor(vendor):
-
 
50
    t_vendor = Vendor()
49
    if warehouse.addedOn:
51
    t_vendor.id = vendor.id
50
        t_warehouse.addedOn = to_java_date(warehouse.addedOn)
52
    t_vendor.name = vendor.name
51
    return t_warehouse
53
 
52
 
-
 
53