Rev 685 | Rev 738 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
'''Created on 29-Mar-2010@author: ashish'''from elixir import *from elixir.entity import Entityfrom elixir.fields import Fieldfrom sqlalchemy.types import Integerfrom elixir.relationships import OneToMany, ManyToOneimport datetime#===============================================================================# Different entities in the model#===============================================================================def initialize():metadata.bind = "sqlite:///Transactionsnew.sqlite"metadata.bind.echo = Truesetup_all(True)if __name__=="__main__":initialize()class LineItem(Entity):id = Field(Integer, primary_key=True, autoincrement=True)item_id = Field(Integer)brand = Field(String(30))model_number = Field(String(30))model_name = Field(String(30))color = Field(String(20))extra_info = Field(String(100))quantity = Field(Float)unit_price = Field(Float)unit_weight = Field(Float)total_price = Field(Float)total_weight = Field(Float)order = ManyToOne("Order")class Order(Entity):id = Field(Integer, primary_key=True, autoincrement=True)warehouse_id = Field(Integer)logistics_provider_id = Field(Integer)airwaybill_no = Field(String(50))tracking_id = Field(String(50))expected_delivery_time = Field(DateTime)customer_id = Field(Integer)customer_name = Field(String(50))customer_mobilenumber = Field(String(20))customer_pincode = Field(String(10))customer_address = Field(String(200))customer_city = Field(String(100))customer_state = Field(String(100))customer_email = Field(String(50))status = Field(Integer)statusDescription = Field(String(50))total_amount = Field(Float)total_weight = Field(Float)invoice_number = Field(String(30))billed_by = Field(String(30))created_timestamp = Field(DateTime)accepted_timestamp = Field(DateTime)billing_timestamp = Field(DateTime)shipping_timestamp = Field(DateTime)delivery_timestamp = Field(DateTime)lineitems = OneToMany("LineItem")transaction = ManyToOne("Transaction")jacket_number = Field(Integer)class Transaction(Entity):id = Field(Integer, primary_key=True, autoincrement=True)createdOn = Field(DateTime)status = Field(Integer)status_message = Field(String(100))customer_id = Field(Integer)shopping_cart_id = Field(Integer)orders = OneToMany("Order")class Alerts(Entity):id = Field(Integer, primary_key=True, autoincrement=True)order_id = Field(Integer)valid = Field(Boolean)type = Field(Integer)time_set = Field(DateTime)comment = Field(String(100))time_unset = Field(DateTime)