Subversion Repositories SmartDukaan

Rev

Rev 996 | Rev 1122 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
104 ashish 1
'''
2
Created on 29-Mar-2010
3
 
4
@author: ashish
5
'''
6
 
7
from elixir import *
8
from elixir.entity import Entity
9
from elixir.fields import Field
10
from sqlalchemy.types import Integer
11
from elixir.relationships import OneToMany, ManyToOne
12
import datetime
746 rajveer 13
import elixir
104 ashish 14
 
15
 
16
 
17
#===============================================================================
18
# Different entities in the model
19
#===============================================================================
20
 
483 rajveer 21
def initialize():
746 rajveer 22
    #metadata.bind = "sqlite:///Transactionsnew.sqlite"
23
    metadata.bind = 'mysql://root:shop2020@localhost/transaction'
483 rajveer 24
    metadata.bind.echo = True
25
    setup_all(True)
26
 
27
 
28
if __name__=="__main__":
29
    initialize()
30
 
31
 
32
class LineItem(Entity):
33
    id = Field(Integer, primary_key=True, autoincrement=True)
699 chandransh 34
    item_id = Field(Integer)
963 chandransh 35
    productGroup = Field(String(100))
36
    brand = Field(String(100))
37
    model_number = Field(String(50))
38
    model_name = Field(String(50))
669 chandransh 39
    color = Field(String(20))
483 rajveer 40
    extra_info = Field(String(100))
41
    quantity = Field(Float)
42
    unit_price = Field(Float)
43
    unit_weight = Field(Float)
44
    total_price = Field(Float)
996 varun.gupt 45
    transfer_price = Field(Float)
483 rajveer 46
    total_weight = Field(Float)
47
    order = ManyToOne("Order")
746 rajveer 48
    using_options(shortnames=True)
49
    using_table_options(mysql_engine="InnoDB")
50
 
483 rajveer 51
class Order(Entity):
52
    id = Field(Integer, primary_key=True, autoincrement=True)
53
    warehouse_id = Field(Integer)
54
    logistics_provider_id = Field(Integer)
55
    airwaybill_no = Field(String(50))
56
    tracking_id = Field(String(50))
57
    expected_delivery_time = Field(DateTime)
58
    customer_id = Field(Integer)
59
    customer_name = Field(String(50))
60
    customer_mobilenumber = Field(String(20))
61
    customer_pincode = Field(String(10))
738 chandransh 62
    customer_address1 = Field(String(100))
63
    customer_address2 = Field(String(100))
669 chandransh 64
    customer_city = Field(String(100))
65
    customer_state = Field(String(100))
483 rajveer 66
    customer_email = Field(String(50))
67
    status = Field(Integer)
68
    statusDescription = Field(String(50))
69
    total_amount = Field(Float)
70
    total_weight = Field(Float)
71
    invoice_number = Field(String(30))
72
    billed_by = Field(String(30))
73
    created_timestamp = Field(DateTime)
74
    accepted_timestamp = Field(DateTime)
75
    billing_timestamp = Field(DateTime)
76
    shipping_timestamp = Field(DateTime)
1113 chandransh 77
    pickup_timestamp = Field(DateTime)
483 rajveer 78
    delivery_timestamp = Field(DateTime)
79
    lineitems = OneToMany("LineItem")
80
    transaction = ManyToOne("Transaction")
642 chandransh 81
    jacket_number = Field(Integer)
746 rajveer 82
    using_options(shortnames=True)
83
    using_table_options(mysql_engine="InnoDB")
483 rajveer 84
 
104 ashish 85
class Transaction(Entity):
483 rajveer 86
    id = Field(Integer, primary_key=True, autoincrement=True)
87
    createdOn = Field(DateTime)
88
    status = Field(Integer)
89
    status_message = Field(String(100))
90
    customer_id = Field(Integer)
91
    shopping_cart_id = Field(Integer)
92
    orders = OneToMany("Order")
746 rajveer 93
    using_options(shortnames=True)
94
    using_table_options(mysql_engine="InnoDB")
132 ashish 95
 
483 rajveer 96
class Alerts(Entity):
132 ashish 97
    id = Field(Integer, primary_key=True, autoincrement=True)
483 rajveer 98
    order_id = Field(Integer)
99
    valid = Field(Boolean)
100
    type = Field(Integer)
101
    time_set = Field(DateTime)
102
    comment = Field(String(100))
746 rajveer 103
    time_unset = Field(DateTime)
104
    using_options(shortnames=True)
105
    using_table_options(mysql_engine="InnoDB")