Rev 4503 | Rev 6821 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
'''Created on 29-Jul-2011@author: Chandranshu'''from elixir.entity import Entityfrom elixir.fields import Fieldfrom elixir.options import using_options, using_table_optionsfrom elixir.relationships import ManyToOnefrom shop2020.thriftpy.purchase.ttypes import LineItem as TLineItemfrom shop2020.utils.Utils import to_java_datefrom sqlalchemy.types import Integer, String, Float, DateTime, Booleanimport datetimeclass LineItem(Entity):'''classdocs'''purchaseOrder = ManyToOne("PurchaseOrder", primary_key=True)itemId = Field(Integer, primary_key=True, autoincrement=False)productGroup = Field(String(100))brand = Field(String(100))modelNumber = Field(String(50))modelName = Field(String(50))color = Field(String(20))itemNumber = Field(String(20))quantity = Field(Float)unfulfilledQuantity = Field(Float)createdAt = Field(DateTime)unitPrice = Field(Float)fulfilled = Field(Boolean)using_options(shortnames=True)using_table_options(mysql_engine="InnoDB")def __init__(self, purchase_order, t_line_item):'''Constructor'''self.purchaseOrder = purchase_orderself.itemId = t_line_item.itemIdself.productGroup = t_line_item.productGroupself.brand = t_line_item.brandself.modelNumber = t_line_item.modelNumberself.modelName = t_line_item.modelNameself.color = t_line_item.colorself.itemNumber = t_line_item.itemNumberself.quantity = t_line_item.quantityself.unfulfilledQuantity = t_line_item.unfulfilledQuantityself.createdAt = datetime.datetime.now()self.unitPrice = t_line_item.unitPriceself.fulfilled = Falsedef to_thrift_object(self):t_line_item = TLineItem()t_line_item.orderId = self.purchaseOrder.idt_line_item.itemId = self.itemId#TODO: Fetch the next 5 items from the catalog servicet_line_item.productGroup = self.productGroupt_line_item.brand = self.brandt_line_item.modelNumber = self.modelNumbert_line_item.modelName = self.modelNamet_line_item.color = self.colort_line_item.itemNumber = self.itemNumbert_line_item.quantity = self.quantityt_line_item.unfulfilledQuantity = self.unfulfilledQuantityt_line_item.createdAt = to_java_date(self.createdAt)t_line_item.unitPrice = self.unitPricet_line_item.fulfilled = self.fulfilledreturn t_line_item