Rev 6031 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
'''Created on 11-Sep-2012@author: mandeep'''from elixir.entity import Entityfrom elixir.fields import Fieldfrom elixir.options import using_options, using_table_optionsfrom sqlalchemy.types import Enum, Integer, DateTime, Stringclass BaseOrder(Entity):'''classdocs'''id = Field(Integer, primary_key=True, autoincrement=True)idPrefix = Field(String(8))transactionId = Field(Integer)creationTimestamp = Field(DateTime)amount = Field(Integer)customerId = Field(Integer)customerEmailId = Field(String(256))invoiceNumber = Field(Integer)orderType = Field(Enum('B2C', 'B2Cbulk', 'B2B'))using_options(shortnames=True, inheritance='multi')using_table_options(mysql_engine="InnoDB")def __init__(self):'''Constructor'''def to_thrift_object(self, thriftObject):'''Copies attributes to thrift object'''thriftObject.amount = self.amountthriftObject.creationTimestamp = self.creationTimestampthriftObject.customerEmailId = self.customerEmailIdthriftObject.customerId = self.customerIdthriftObject.id = self.idPrefix + self.idthriftObject.invoiceNumber = self.invoiceNumberthriftObject.orderType = self.orderTypethriftObject.transactionId = self.transactionIddef from_thrift_object(self, thriftBaseOrder):self.amount = thriftBaseOrder.amountself.creationTimestamp = thriftBaseOrder.creationTimestampself.customerEmailId = thriftBaseOrder.customerEmailIdself.customerId = thriftBaseOrder.customerIdself.id = thriftBaseOrder.id.split(self.idPrefix)[1]self.invoiceNumber = thriftBaseOrder.invoiceNumberself.orderType = thriftBaseOrder.orderTypeself.transactionId = thriftBaseOrder.transactionIddef is_valid(self):return True