Subversion Repositories SmartDukaan

Rev

Rev 420 | Rev 703 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 420 Rev 701
Line 4... Line 4...
4
@author: ashish
4
@author: ashish
5
'''
5
'''
6
from elixir import *
6
from elixir import *
7
 
7
 
8
 
8
 
9
class PGateway(Entity):
9
class PaymentGateway(Entity):
10
    id = Field(Integer, primary_key=True, autoincrement=True)
10
    id = Field(Integer, primary_key=True, autoincrement=True)
11
    name = Field(String(100))
11
    name = Field(String(100))
-
 
12
    aliasName = Field(String(100))
12
    prod_url = Field(String(500))
13
    url = Field(String(500))
13
    staging_url = Field(String(500))
14
    responseUrl = Field(String(500))
-
 
15
    errorUrl = Field(String(500))
-
 
16
    status = Field(Integer)
-
 
17
    addedOn = Field(DateTime)
14
    #pmts = OneToMany("Pmnt")
18
    attributes = OneToMany("GatewayAttribute")
-
 
19
 
-
 
20
class GatewayAttribute(Entity):
-
 
21
    payment_gateway = ManyToOne("PaymentGateway", primary_key=True)
-
 
22
    name = Field(String(50), primary_key=True)
-
 
23
    value = Field(String(100))
-
 
24
 
-
 
25
class PaymentAttribute(Entity):
-
 
26
    payment = ManyToOne("Payment", primary_key=True)
-
 
27
    name = Field(String(50), primary_key=True)
-
 
28
    value = Field(String(100))
15
 
29
 
16
 
-
 
17
class Pmnt(Entity):
30
class Payment(Entity):
18
    id = Field(Integer, primary_key=True, autoincrement=True)
31
    id = Field(Integer, primary_key=True, autoincrement=True)
19
    mid = Field(String(50))
32
    gatewayId = Field(Integer)
20
    bid = Field(String(50))
33
    gatewayPaymentId = Field(String(50))
-
 
34
    merchantTxnId = Field(Integer)
21
    btxid = Field(String(50))
35
    gatewayTxnId = Field(String(50))
22
    amt = Field(Float)
36
    amount = Field(Float)
23
    init_ts = Field(DateTime)
37
    gatewayTxnStatus = Field(String(20)),
24
    ba_ts = Field(DateTime)
38
    status = Field(Integer),
25
    ps = Field(Integer)
39
    userId = Field(Integer),
26
    msg = Field(String(100))
40
    errorCode = Field(String(20)),
27
    user_id = Field(Integer)
41
    description = Field(String(50)),
28
    cart_id = Field(Integer)
42
    authCode = Field(String(20)),
29
    gateway = Field(Integer)
43
    referenceCode = Field(String(20)),
30
    error_code = Field(String(20))
44
    sessionId = Field(String(50)), 
31
    session_id = Field(String(50))
45
    gatewayTxnDate = Field(String(50)),
-
 
46
    attributes = OneToMany("PaymentAttribute"),
32
    post_date = Field(String(20))
47
    initTimestamp = Field(DateTime),
33
    auth_code = Field(String(20))
48
    successTimestamp = Field(DateTime),
34
    ref_code = Field(String(20))
49
    errorTimestamp = Field(DateTime)
35
    
-
 
36
 
-
 
37
 
50
 
38
def initialize():
51
def initialize():
39
    metadata.bind = "sqlite:///payment.sqlite" #need to read it from configserver.
52
    metadata.bind = "sqlite:///payment.sqlite" #need to read it from configserver.
40
    metadata.bind.echo = True
53
    metadata.bind.echo = True
41
    setup_all(True)
54
    setup_all(True)