Rev 5460 | Rev 5944 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
'''Created on 23-Mar-2010@author: ashish'''from shop2020.thriftpy.model.v1.catalog.ttypes import Item, ItemInventory, \Warehouse, VendorItemPricing, Vendor, Category, VendorItemMapping, \SourceItemPricing, Source, ItemType, \ProductNotificationRequest as TProductNotificationRequest, \ProductNotificationRequestCount as TProductNotificationRequestCount, \InventoryType, WarehouseType, VoucherItemMappingfrom shop2020.utils.Utils import to_java_dateimport timedef to_t_item(item):t_item = Item()if item is None:return t_itemt_item.id = item.idt_item.productGroup = item.product_groupt_item.brand = item.brandt_item.modelNumber = item.model_numbert_item.modelName = item.model_namet_item.color = item.colort_item.category = item.categoryt_item.catalogItemId = item.catalog_item_idt_item.weight = item.weightt_item.featureId = item.feature_idt_item.featureDescription = item.feature_descriptionif item.startDate:t_item.startDate = to_java_date(item.startDate)if item.comingSoonStartDate:t_item.comingSoonStartDate = to_java_date(item.comingSoonStartDate)if item.expectedArrivalDate:t_item.expectedArrivalDate = to_java_date(item.expectedArrivalDate)if item.addedOn:t_item.addedOn = to_java_date(item.addedOn)if item.updatedOn:t_item.updatedOn = to_java_date(item.updatedOn)t_item.itemStatus = item.statust_item.status_description = item.status_descriptionif item.sellingPrice:t_item.sellingPrice = item.sellingPriceif item.mrp:t_item.mrp = item.mrpif item.comments:t_item.comments = item.commentsif item.bestDealText:t_item.bestDealText = item.bestDealTextif item.bestDealValue:t_item.bestDealValue = item.bestDealValuet_item.defaultForEntity = item.defaultForEntityt_item.bestSellingRank = item.bestSellingRankt_item.risky = item.riskyt_item.expectedDelay = item.expectedDelayt_item.isWarehousePreferenceSticky = item.isWarehousePreferenceStickyt_item.warrantyPeriod = item.warranty_periodt_item.preferredVendor = item.preferredVendort_item.type = ItemType._NAMES_TO_VALUES[item.type]t_item.hasItemNo = item.hasItemNot_item.clearance = item.clearancereturn t_itemdef to_t_item_inventory(item_inventory_list, item_id):t_item_inventory = ItemInventory()t_item_inventory.id = item_idt_item_inventory.availability = {}t_item_inventory.reserved = {}for inventory_item in item_inventory_list:t_item_inventory.availability[inventory_item.warehouse.id] = inventory_item.availabilityt_item_inventory.reserved[inventory_item.warehouse.id] = inventory_item.reserved# need review again# if inventory_item.checkedOn:# t_item_inventory.lastCheckedOn = to_java_date(inventory_item.checkedOn)return t_item_inventorydef to_t_warehouse(warehouse):t_warehouse = Warehouse()t_warehouse.id = warehouse.idt_warehouse.displayName = warehouse.displayNamet_warehouse.location = warehouse.locationt_warehouse.tinNumber = warehouse.tinNumbert_warehouse.pincode = warehouse.pincodet_warehouse.billingType = warehouse.billingTypet_warehouse.vendor = to_t_vendor(warehouse.vendor)t_warehouse.billingWarehouseId = warehouse.billingWarehouseIdt_warehouse.shippingWarehouseId = warehouse.shippingWarehouseIdt_warehouse.isAvailabilityMonitored = warehouse.isAvailabilityMonitoredt_warehouse.transferDelayInHours = warehouse.transferDelayInHourst_warehouse.inventoryType = InventoryType._NAMES_TO_VALUES[warehouse.inventoryType]t_warehouse.warehouseType = WarehouseType._NAMES_TO_VALUES[warehouse.warehouseType]if warehouse.vendorString:t_warehouse.vendorString = warehouse.vendorStringif warehouse.addedOn:t_warehouse.addedOn = to_java_date(warehouse.addedOn)if warehouse.lastCheckedOn:t_warehouse.lastCheckedOn = to_java_date(warehouse.lastCheckedOn)return t_warehousedef to_t_vendor(vendor):t_vendor = Vendor()t_vendor.id = vendor.idt_vendor.name = vendor.namereturn t_vendordef to_t_vendor_item_pricing(vendor_item_pricing):t_vendor_item_pricing = VendorItemPricing()t_vendor_item_pricing.vendorId = vendor_item_pricing.vendor.idt_vendor_item_pricing.itemId = vendor_item_pricing.item.idt_vendor_item_pricing.transferPrice = vendor_item_pricing.transfer_pricet_vendor_item_pricing.dealerPrice = vendor_item_pricing.dealerPricet_vendor_item_pricing.mop = vendor_item_pricing.mopreturn t_vendor_item_pricingdef to_t_vendor_item_mapping(vendor_item_mapping):t_vendor_item_mapping = VendorItemMapping()t_vendor_item_mapping.vendorId = vendor_item_mapping.vendor.idt_vendor_item_mapping.itemId = vendor_item_mapping.item.idt_vendor_item_mapping.itemKey = vendor_item_mapping.item_keyreturn t_vendor_item_mappingdef to_t_voucher_item_mapping(voucher):t_voucher = VoucherItemMapping()t_voucher.voucherType = voucher.voucherTypet_voucher.itemId = voucher.item.idt_voucher.amount = voucher.amountreturn t_voucherdef to_t_category(category):t_category = Category()t_category.id = category.idt_category.label = category.labelt_category.description = category.descriptiont_category.parent_category_id = category.parent_category_idt_category.display_name = category.display_namereturn t_categorydef to_t_source_item_pricing(source_item_pricing):t_source_item_pricing = SourceItemPricing()t_source_item_pricing.sourceId = source_item_pricing.source.idt_source_item_pricing.itemId = source_item_pricing.item.idt_source_item_pricing.mrp = source_item_pricing.mrpt_source_item_pricing.sellingPrice = source_item_pricing.sellingPricereturn t_source_item_pricingdef to_t_source(source):t_source = Source()t_source.id = source.idt_source.name = source.namet_source.identifier = source.identifierreturn t_sourcedef to_t_product_notification_request(product_notification_request):t_product_notification_request = TProductNotificationRequest()if product_notification_request:t_product_notification_request.item = to_t_item(product_notification_request.item)t_product_notification_request.email = product_notification_request.emailt_product_notification_request.addedOn = to_java_date(product_notification_request.addedOn)return t_product_notification_requestdef to_t_product_notification_request_count(product_notification_request_count):t_product_notification_request_count = TProductNotificationRequestCount()if product_notification_request_count:item, count = product_notification_request_countt_product_notification_request_count.item = to_t_item(item)t_product_notification_request_count.count = countreturn t_product_notification_request_count