Subversion Repositories SmartDukaan

Rev

Rev 23864 | Rev 35608 | 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
'''
6594 anupam.sin 6
from MySQLdb.constants.FLAG import AUTO_INCREMENT
4501 mandeep.dh 7
from elixir import metadata, setup_all
104 ashish 8
from elixir.entity import Entity
9
from elixir.fields import Field
4501 mandeep.dh 10
from elixir.options import using_options, using_table_options
11
from elixir.relationships import ManyToOne, OneToMany
12
from sqlalchemy.engine import create_engine
6594 anupam.sin 13
from sqlalchemy.types import Integer, String, Float, DateTime, Boolean, Enum, \
18585 amit.gupta 14
    Numeric, BigInteger, LargeBinary, Date
15
import datetime
104 ashish 16
 
17
#===============================================================================
18
# Different entities in the model
19
#===============================================================================
20
 
19235 manish.sha 21
def initialize(dbname='transaction', db_hostname="localhost", echoOn=True, setup=True):
746 rajveer 22
    #metadata.bind = "sqlite:///Transactionsnew.sqlite"
1122 chandransh 23
    #metadata.bind = 'mysql://root:shop2020@localhost/transaction'
3187 rajveer 24
    engine = create_engine('mysql://root:shop2020@' + db_hostname + '/' + dbname, pool_recycle=7200)
1122 chandransh 25
    metadata.bind = engine
1911 chandransh 26
    metadata.bind.echo = echoOn
19235 manish.sha 27
    setup_all(setup)
483 rajveer 28
 
29
 
30
if __name__=="__main__":
31
    initialize()
2783 chandransh 32
 
33
class InvoiceIDGenerator(Entity):
5527 anupam.sin 34
    id = Field(Integer)
5528 anupam.sin 35
    orderType = Field(Integer, primary_key = True)
2783 chandransh 36
    using_options(shortnames=True)
37
    using_table_options(mysql_engine="InnoDB")   
483 rajveer 38
 
12772 manish.sha 39
class InvoiceCounterGenerator(Entity):
40
    id = Field(Integer)
19950 amit.gupta 41
    companyId = Field(Integer, primary_key = True)
12772 manish.sha 42
    orderType = Field(Integer, primary_key = True)
43
    stateId = Field(Integer, primary_key = True)
12775 manish.sha 44
    prefix = Field(String(20))
12772 manish.sha 45
    using_options(shortnames=True)
46
    using_table_options(mysql_engine="InnoDB")
47
 
5508 rajveer 48
class RechargeVoucherTracker(Entity):
49
    order = ManyToOne("Order")
50
    voucherType = Field(Integer)
51
    amount = Field(Integer)
52
    voucherIssued = Field(Boolean)
53
    voucherCode = Field(String(30))
54
    issuedOn = Field(DateTime)
55
    using_options(shortnames=True)
56
    using_table_options(mysql_engine="InnoDB")
14134 amit.gupta 57
 
58
class DtrBatchCreditTracker(Entity):
59
    id=Field(Integer, primary_key = True)
60
    amount = Field(Integer)
61
    creditedOn = Field(DateTime)
62
    using_options(shortnames=True)
63
    using_table_options(mysql_engine="InnoDB")
23864 amit.gupta 64
 
23096 amit.gupta 65
class PendingRechargeCommissions(Entity):
66
    user_id=Field(Integer, primary_key=True)
67
    approvedAmountInPaise = Field(Integer)
68
    lastUpdated = Field(DateTime)
69
    using_options(shortnames=True)
70
    using_table_options(mysql_engine="InnoDB")
23864 amit.gupta 71
 
72
    def __repr__(self):
73
        return "{0} {1} {2} {3}".format(self.brand or "", self.model_name or "", self.model_number or "", self.color or "")
74
 
75
class Line_Item_Imei(Entity):
76
    id = Field(Integer, primary_key=True, autoincrement=True)
77
    line_item_id = Field(Integer)
78
    serial_number = Field(String(16))
79
    using_options(shortnames=True)
80
    using_table_options(mysql_engine="InnoDB")
23096 amit.gupta 81
 
483 rajveer 82
class LineItem(Entity):
83
    id = Field(Integer, primary_key=True, autoincrement=True)
699 chandransh 84
    item_id = Field(Integer)
963 chandransh 85
    productGroup = Field(String(100))
86
    brand = Field(String(100))
18707 manish.sha 87
    model_number = Field(String(100))
88
    model_name = Field(String(100))
669 chandransh 89
    color = Field(String(20))
483 rajveer 90
    extra_info = Field(String(100))
91
    quantity = Field(Float)
12280 amit.gupta 92
    mrp = Field(Float)
483 rajveer 93
    unit_price = Field(Float)
94
    unit_weight = Field(Float)
95
    total_price = Field(Float)
996 varun.gupt 96
    transfer_price = Field(Float)
6751 amar.kumar 97
    nlc = Field(Float)
483 rajveer 98
    total_weight = Field(Float)
2783 chandransh 99
    item_number = Field(String(50))
12653 manish.sha 100
    serial_number = Field(String(8192)) 
4172 rajveer 101
    dealText = Field(String(100))
4295 varun.gupt 102
    warranty_expiry_timestamp = Field(DateTime)
483 rajveer 103
    order = ManyToOne("Order")
6039 amit.gupta 104
    vatRate = Field(Float)
21844 amit.gupta 105
    igstRate = Field(Float)
106
    sgstRate = Field(Float)
107
    cgstRate = Field(Float)
108
    hsnCode = Field(String(12))
19421 manish.sha 109
    logisticsCost = Field(Float, default=0, server_default="0")
110
    codCollectionCharges = Field(Float, default=0, server_default="0")
19691 manish.sha 111
    returnQty = Field(Float, default=0, server_default="0")
19714 manish.sha 112
    damaged_expiry_timestamp = Field(DateTime)
746 rajveer 113
    using_options(shortnames=True)
114
    using_table_options(mysql_engine="InnoDB")
115
 
1276 chandransh 116
    def __repr__(self):
117
        return "{0} {1} {2} {3}".format(self.brand or "", self.model_name or "", self.model_number or "", self.color or "")
118
 
483 rajveer 119
class Order(Entity):
120
    id = Field(Integer, primary_key=True, autoincrement=True)
121
    warehouse_id = Field(Integer)
122
    logistics_provider_id = Field(Integer)
123
    airwaybill_no = Field(String(50))
124
    tracking_id = Field(String(50))
125
    expected_delivery_time = Field(DateTime)
3986 chandransh 126
    promised_delivery_time = Field(DateTime)
4004 chandransh 127
    expected_shipping_time = Field(DateTime)
4102 chandransh 128
    promised_shipping_time = Field(DateTime)
6726 rajveer 129
    courier_delivery_time = Field(DateTime)
483 rajveer 130
    customer_id = Field(Integer)
131
    customer_name = Field(String(50))
132
    customer_mobilenumber = Field(String(20))
133
    customer_pincode = Field(String(10))
738 chandransh 134
    customer_address1 = Field(String(100))
135
    customer_address2 = Field(String(100))
669 chandransh 136
    customer_city = Field(String(100))
137
    customer_state = Field(String(100))
483 rajveer 138
    customer_email = Field(String(50))
139
    status = Field(Integer)
140
    statusDescription = Field(String(50))
141
    total_amount = Field(Float)
6318 rajveer 142
    gvAmount = Field(Float)
483 rajveer 143
    total_weight = Field(Float)
144
    invoice_number = Field(String(30))
145
    billed_by = Field(String(30))
146
    created_timestamp = Field(DateTime)
147
    accepted_timestamp = Field(DateTime)
148
    billing_timestamp = Field(DateTime)
149
    shipping_timestamp = Field(DateTime)
1113 chandransh 150
    pickup_timestamp = Field(DateTime)
483 rajveer 151
    delivery_timestamp = Field(DateTime)
1208 chandransh 152
    outofstock_timestamp = Field(DateTime)
483 rajveer 153
    lineitems = OneToMany("LineItem")
154
    transaction = ManyToOne("Transaction")
6903 anupam.sin 155
    insuranceDetails = OneToMany("InsuranceDetailForOrder")
9575 kshitij.so 156
    dataInsuranceDetails = OneToMany("DataInsuranceDetailForOrder")
642 chandransh 157
    jacket_number = Field(Integer)
1132 chandransh 158
    receiver = Field(String(50))
1220 chandransh 159
    batchNo = Field(Integer)
160
    serialNo = Field(Integer)
2536 chandransh 161
    doaFlag = Field(Boolean)
162
    pickupRequestNo = Field(String(20))
2764 chandransh 163
    doa_auth_timestamp = Field(DateTime)
164
    doa_pickup_timestamp = Field(DateTime)
165
    received_return_timestamp = Field(DateTime)
166
    reship_timestamp = Field(DateTime)
167
    refund_timestamp = Field(DateTime)
2628 chandransh 168
    new_order_id = Field(Integer)
2819 chandransh 169
    purchase_order_id = Field(Integer)
3064 chandransh 170
    cod = Field(Boolean)
3226 chandransh 171
    refunded_by = Field(String(30))
5141 anupam.sin 172
    refund_reason = Field(String(256))
3064 chandransh 173
    verification_timestamp = Field(DateTime)
3581 chandransh 174
    delay_reason = Field(Enum('INVENTORY_LOW_PHASED_OUT', 'INVENTORY_LOW_COLOR_NOT_AVAILABLE',\
175
                              'INVENTORY_LOW_REVERSAL_NOT_ON_TIME', 'INVENTORY_LOW_PRODUCT_NOT_SEALED',\
176
                              'COURIER_DELAY_NOT_DELIVERED_TO_COURIER_ON_TIME', 'COURIER_DELAY_DID_NOT_CONNECT',\
177
                              'COURIER_DELAY_CUSTOMER_NOT_AVAILABLE', 'COURIER_DELAY_INCORRECT_ADDRESS',\
178
                              'COURIER_DELAY_OCTROI_DELAY', 'COURIER_DELAY_FORCES_OF_NATURE',\
179
                              'COD_VERIFICATION_DELAY', 'PAYMENT_FLAGGED', 'OTHERS'))
3956 chandransh 180
    cod_reconciliation_timestamp = Field(DateTime)
4247 rajveer 181
    previousStatus = Field(Integer)
4269 anupam.sin 182
    vendorId = Field(Integer)
5302 rajveer 183
    delayReasonText= Field(String(250))
4815 phani.kuma 184
    doa_logistics_provider_id = Field(Integer)
4910 phani.kuma 185
    local_connected_timestamp = Field(DateTime)
186
    reached_destination_timestamp = Field(DateTime)
187
    first_dlvyatmp_timestamp = Field(DateTime)
4303 rajveer 188
    orderInventory = OneToMany("OrderInventory")
5386 phani.kuma 189
    vendor_paid = Field(Boolean, default=0, server_default="0")
5062 varun.gupt 190
    originalOrderId = Field(Integer)
5110 mandeep.dh 191
    fulfilmentWarehouseId = Field(Integer)
5527 anupam.sin 192
    orderType = Field(Integer)
5720 rajveer 193
    pickupStoreId = Field(Integer, default=0, server_default="0")
6525 rajveer 194
    otg = Field(Boolean, default=0, server_default="0")
7033 anupam.sin 195
    insurer = Field(Integer, default=0, server_default="0")
196
    insuranceAmount = Field(Float, default=0, server_default="0")
7190 amar.kumar 197
    freebieItemId = Field(Integer, default=0, server_default="0")
7564 rajveer 198
    source = Field(Integer, default=1, server_default="1")
7293 anupam.sin 199
    storeId = Field(Integer, default=0, server_default="0")
7549 rajveer 200
    advanceAmount = Field(Float, default=0, server_default="0")
8717 amar.kumar 201
    productCondition = Field(Integer, default=0, server_default="0")
9299 kshitij.so 202
    dataProtectionInsurer = Field(Integer, default=0, server_default="0")
203
    dataProtectionAmount = Field(Float, default=0, server_default="0")
9416 amar.kumar 204
    taxType = Field(Integer, default=0, server_default="0")
13146 manish.sha 205
    logisticsTransactionId = Field(String(100))
17488 manish.sha 206
    shippingCost = Field(Float, default=0, server_default="0")
21134 amit.gupta 207
    shippingRefund = Field(Float, default=0, server_default="0")
17488 manish.sha 208
    codCharges = Field(Float, default=0, server_default="0")
19973 amit.gupta 209
    seller_id = Field(Integer)
20873 kshitij.so 210
    warehouse_address_id = Field(Integer)
211
    wallet_amount = Field(Float, default=0, server_default="0")
20942 kshitij.so 212
    net_payable_amount = Field(Float) 
2628 chandransh 213
    using_options(shortnames=True)
214
    using_table_options(mysql_engine="InnoDB")
5348 anupam.sin 215
 
216
class CodVerificationAgent(Entity):
217
    orderId = Field(Integer, primary_key=True, autoincrement=True)
218
    verificationAgent = Field(String(200))
219
    using_options(shortnames=True)
220
    using_table_options(mysql_engine="InnoDB")
221
 
104 ashish 222
class Transaction(Entity):
483 rajveer 223
    id = Field(Integer, primary_key=True, autoincrement=True)
224
    createdOn = Field(DateTime)
225
    status = Field(Integer)
226
    status_message = Field(String(100))
227
    customer_id = Field(Integer)
228
    shopping_cart_id = Field(Integer)
2815 vikas 229
    session_source = Field(String(100))
230
    session_start_time = Field(DateTime)
3858 vikas 231
    first_source = Field(String(100))
232
    first_source_start_time = Field(DateTime)
483 rajveer 233
    orders = OneToMany("Order")
2219 varun.gupt 234
    coupon_code = Field(String(20))
17488 manish.sha 235
    totalShippingCost = Field(Float, default=0, server_default="0")
236
    totalCodCharges = Field(Float, default=0, server_default="0")
18586 manish.sha 237
    payment_option = Field(Integer)
746 rajveer 238
    using_options(shortnames=True)
239
    using_table_options(mysql_engine="InnoDB")
132 ashish 240
 
4394 rajveer 241
class Alert(Entity):
132 ashish 242
    id = Field(Integer, primary_key=True, autoincrement=True)
483 rajveer 243
    type = Field(Integer)
4394 rajveer 244
    status = Field(Integer)
245
    timestamp = Field(DateTime)
246
    description = Field(String(100))
4444 rajveer 247
    warehouseId = Field(Integer)
746 rajveer 248
    using_options(shortnames=True)
1225 chandransh 249
    using_table_options(mysql_engine="InnoDB")
250
 
251
class BatchNoGenerator(Entity):
252
    id=Field(Integer, primary_key=True)
253
    using_options(shortnames=True)
254
    using_table_options(mysql_engine="InnoDB")
4008 mandeep.dh 255
 
256
class TransactionRequiringExtraProcessing(Entity):
4015 mandeep.dh 257
    transaction_id = Field(Integer, primary_key=True, autoincrement=False)
6733 anupam.sin 258
    category = Field(Enum('COD_VERIFICATION', 'DELAYED_DELIVERY', 'PAYMENT_FLAGGED', 'RECHARGE_UNKNOWN'), primary_key=True, autoincrement=False)
4008 mandeep.dh 259
    using_options(shortnames=True)
260
    using_table_options(mysql_engine="InnoDB")
4303 rajveer 261
 
262
class OrderInventory(Entity):
263
    order = ManyToOne("Order", primary_key=True)
264
    itemId = Field(Integer)
265
    timestamp = Field(DateTime)
266
    hotspotAction = Field(Integer)
267
    estimate = Field(Integer)
268
    using_options(shortnames=True)
269
    using_table_options(mysql_engine="InnoDB")
4600 varun.gupt 270
 
271
class EBSSettlementSummary(Entity):
272
    settlementId = Field(Integer, primary_key = True)
273
    settlementDate = Field(DateTime)
274
    transactionDateFrom = Field(DateTime)
275
    transactionDateTo = Field(DateTime)
5389 phani.kuma 276
    amount = Field(Numeric(precision=11, scale=3, asdecimal=False))
4600 varun.gupt 277
    detailsUploaded = Field(Boolean)
278
    using_options(shortnames=True)
279
    using_table_options(mysql_engine="InnoDB")
4905 varun.gupt 280
 
4600 varun.gupt 281
class PaymentSettlement(Entity):
4905 varun.gupt 282
    referenceId = Field(Integer)    #PaymentID in case of prepaid & Order Id in case of COD
5386 phani.kuma 283
    originalOrderId = Field(Integer)    #originalOrderId in case of prepaid is NULL & Order Id of original Order or Order Id in case of COD
4600 varun.gupt 284
    paymentGatewayId = Field(Integer)
285
    settlementDate = Field(DateTime)
5389 phani.kuma 286
    serviceTax = Field(Numeric(precision=11, scale=3, asdecimal=False))
287
    otherCharges = Field(Numeric(precision=11, scale=3, asdecimal=False))
288
    netCollection = Field(Numeric(precision=11, scale=3, asdecimal=False))
4600 varun.gupt 289
    using_options(shortnames=True)
5527 anupam.sin 290
    using_table_options(mysql_engine="InnoDB")
291
 
292
class Attribute(Entity):
293
    orderId = Field(Integer)
294
    name = Field(String(100))
295
    value = Field(String(100))
296
    using_options(shortnames=True)
6389 rajveer 297
    using_table_options(mysql_engine="InnoDB")
298
 
299
 
300
class EmiScheme(Entity):
301
    id  = Field(Integer, primary_key=True)
302
    gatewayId  = Field(Integer)
303
    bankId = Field(Integer)
304
    tenure = Field(Integer)
6396 amit.gupta 305
    bankName = Field(String(256))
306
    tenureDescription = Field(String(256))
6389 rajveer 307
    minAmount = Field(Integer)
308
    chargeType = Field(Integer)
6409 rajveer 309
    chargeValue = Field(Float)
8942 rajveer 310
    interestRate = Field(Float)
6389 rajveer 311
    using_options(shortnames=True)
312
    using_table_options(mysql_engine="InnoDB")
313
 
314
class MiscCharges(Entity):
315
    transaction = ManyToOne("Transaction", primary_key=True)
6396 amit.gupta 316
    chargeType = Field(Integer, primary_key=True, autoincrement=False)
6389 rajveer 317
    chargeAmount = Field(Float)
318
    using_options(shortnames=True)
6580 anupam.sin 319
    using_table_options(mysql_engine="InnoDB")
320
 
6591 anupam.sin 321
class BlockedIpRange(Entity):
6580 anupam.sin 322
    id = Field(Integer, primary_key=True, autoincrement=True)
6594 anupam.sin 323
    start = Field(BigInteger)
324
    end = Field(BigInteger)
6591 anupam.sin 325
    expiredOn = Field(DateTime)
6580 anupam.sin 326
    using_options(shortnames=True)
6591 anupam.sin 327
    using_table_options(mysql_engine="InnoDB")
328
 
329
class DeniedIpAddress(Entity):
330
    id = Field(Integer, primary_key=True, autoincrement=True)
331
    ip = Field(String(256))
332
    deniedOn = Field(DateTime)
333
    rechargeType = Field(Integer)
334
    deviceNumber = Field(String(128))
335
    using_options(shortnames=True)
6903 anupam.sin 336
    using_table_options(mysql_engine="InnoDB")
337
 
338
class InsuranceDetailForOrder(Entity):
339
    id = Field(Integer, primary_key=True, autoincrement=True)
340
    dob = Field(String(64))
341
    guardianName = Field(String(255))
342
    startDate = Field(DateTime)
343
    expiryDate = Field(DateTime)
6915 anupam.sin 344
    isDeclared = Field(Boolean, default=0)
6903 anupam.sin 345
    order = ManyToOne("Order")
346
    using_options(shortnames=True)
6906 rajveer 347
    using_table_options(mysql_engine="InnoDB")
348
 
6915 anupam.sin 349
    def __init__(self):
350
        self.isDeclared = 0
351
 
9575 kshitij.so 352
class DataInsuranceDetailForOrder(Entity):
353
    id = Field(Integer, primary_key=True, autoincrement=True)
354
    startDate = Field(DateTime)
355
    expiryDate = Field(DateTime)
9608 kshitij.so 356
    isDeclared = Field(Boolean, default=0, server_default="0")
9575 kshitij.so 357
    order = ManyToOne("Order")
358
    using_options(shortnames=True)
359
    using_table_options(mysql_engine="InnoDB")
360
 
6906 rajveer 361
class DocumentStore(Entity):
362
    docType = Field(Integer, primary_key=True, autoincrement=False)
363
    docSource = Field(Integer, primary_key=True, autoincrement=False)
364
    document  = Field(LargeBinary)
365
    using_options(shortnames=True)
7073 anupam.sin 366
    using_table_options(mysql_engine="InnoDB")
367
 
368
class Company(Entity):
369
    id = Field(Integer, primary_key=True, autoincrement=True)
370
    name = Field(String(255))
371
    Address = Field(String(255))
372
    using_options(shortnames=True)
373
    using_table_options(mysql_engine="InnoDB")
374
 
19973 amit.gupta 375
 
376
class Organisation(Entity):
377
    id = Field(Integer, primary_key=True, autoincrement=True)
378
    name = Field(String(255))
379
    address = Field(String(255))
380
    type = Field(Enum('company'), default='company')
381
    registered_id = Field(String(127))
382
    using_options(shortnames=True)
383
    using_table_options(mysql_engine="InnoDB")
384
 
385
class Seller(Entity):
386
    id = Field(Integer, primary_key=True, autoincrement=True)
19978 amit.gupta 387
    label=Field(String(31), unique=True)
19973 amit.gupta 388
    organisation_id = Field(Integer)
389
    state_id = Field(Integer)
390
    tin = Field(String(15))
21844 amit.gupta 391
    gstin = Field(String(16))
19975 amit.gupta 392
    address = Field(String(255))
19973 amit.gupta 393
    using_options(shortnames=True)
394
    using_table_options(mysql_engine="InnoDB")
395
 
19980 amit.gupta 396
class WarehouseAddressMapping(Entity):
397
    warehouse_id = Field(Integer)
398
    address_id = Field(Integer)
399
    created = Field(DateTime, default=datetime.datetime.now)
400
    updated = Field(DateTime)
19982 amit.gupta 401
    using_options(shortnames=True)
402
    using_table_options(mysql_engine="InnoDB")
19980 amit.gupta 403
 
404
class WarehouseAddressMaster(Entity):
405
    id = Field(Integer, primary_key=True, autoincrement=True)
406
    address = Field(String(255))
407
    pin = Field(String(6))
408
    state_id = Field(Integer)
409
    created = Field(DateTime, default=datetime.datetime.now)
21844 amit.gupta 410
    contact_person = Field(String(127))
20818 kshitij.so 411
    contact_number = Field(String(10))
19982 amit.gupta 412
    using_options(shortnames=True)
413
    using_table_options(mysql_engine="InnoDB")
19980 amit.gupta 414
 
19973 amit.gupta 415
class SellerWarehouse(Entity):
416
    id = Field(Integer, default=0)
24212 amit.gupta 417
    challan_id = Field(Integer, default=0)
19973 amit.gupta 418
    seller_id = Field(Integer, primary_key=True)
419
    warehouse_id = Field(Integer, primary_key=True)
420
    orderType = Field(Integer, primary_key = True)
19977 amit.gupta 421
    prefix = Field(String(7))
422
    created_on = Field(DateTime)
19973 amit.gupta 423
    is_active = Field(Boolean)
424
    using_options(shortnames=True)
425
    using_table_options(mysql_engine="InnoDB")
426
 
427
 
7073 anupam.sin 428
class WalletForCompany(Entity):
429
    id = Field(Integer, primary_key=True, autoincrement=True)
430
    companyId = Field(Integer)
7102 rajveer 431
    amount = Field(Integer)
7073 anupam.sin 432
    using_options(shortnames=True)
433
    using_table_options(mysql_engine="InnoDB")
434
 
435
class WalletHistoryForCompany(Entity):
436
    id = Field(Integer, primary_key=True, autoincrement=True)
437
    walletId = Field(Integer)
7102 rajveer 438
    amount = Field(Integer)
7073 anupam.sin 439
    transactionTime = Field(DateTime)
7102 rajveer 440
    openingBal = Field(Integer)
441
    closingBal = Field(Integer)
7073 anupam.sin 442
    referenceNumber = Field(Integer)
443
    description = Field(String(255))
444
    using_options(shortnames=True)
445
    using_table_options(mysql_engine="InnoDB")
446
 
447
class RechargeTransaction(Entity):
448
    id = Field(Integer, primary_key=True, autoincrement=True)
449
    storeId = Field(Integer)
7102 rajveer 450
    amount = Field(Integer)
7073 anupam.sin 451
    transactionTime = Field(DateTime)
7075 rajveer 452
    responseTime = Field(DateTime)
453
    description = Field(String(255))
454
    spiceTID = Field(String(255))
7369 rajveer 455
    aggTID = Field(String(255))
456
    providerTID = Field(String(255))
7075 rajveer 457
    plan = Field(String(255))
7073 anupam.sin 458
    deviceNum = Field(String(64))
459
    deviceType = Field(Integer)
460
    isFrc = Field(Boolean)
461
    email = Field(String(255))
7102 rajveer 462
    discount = Field(Integer)
463
    paymentAmount = Field(Integer)
7145 rajveer 464
    payMethod = Field(Integer, default=0, server_default="0")
7073 anupam.sin 465
    status = Field(Integer)
466
    invoiceNumber = Field(Integer)
467
    circleId = Field(Integer)
7075 rajveer 468
    operatorId = Field(Integer)
7073 anupam.sin 469
    name = Field(String(255))
470
    simNum = Field(String(255))
471
    cafNum = Field(String(255))
7080 anupam.sin 472
    ipAddress = Field(String(255))
473
    alternateNumber = Field(String(255))
7073 anupam.sin 474
    using_options(shortnames=True)
7075 rajveer 475
    using_table_options(mysql_engine="InnoDB")
7076 rajveer 476
 
7120 rajveer 477
class OperatorSeries(Entity):
478
    series = Field(Integer, primary_key=True, autoincrement=False)
479
    operatorId = Field(Integer)
480
    circleId = Field(Integer)
481
    using_options(shortnames=True)
482
    using_table_options(mysql_engine="InnoDB")
483
 
7076 rajveer 484
class FRC(Entity):
485
    id = Field(Integer, primary_key=True)
486
    operatorId = Field(Integer)
487
    circleId = Field(Integer)
488
    denomination = Field(Integer)
489
    maxDiscount = Field(Integer)
490
    using_options(shortnames=True)
491
    using_table_options(mysql_engine="InnoDB")
7120 rajveer 492
 
7075 rajveer 493
class HotspotStore(Entity):
494
    id = Field(Integer, primary_key=True)
495
    hotspotId = Field(String(3))
496
    companyId = Field(Integer)
497
    name = Field(String(100))
498
    city = Field(String(100))
7076 rajveer 499
    collectedAmount = Field(Integer)
7075 rajveer 500
    availableLimit = Field(Integer)
501
    creditLimit = Field(Integer)
502
    salt = Field(String(100))
503
    password = Field(String(100))
504
    isActive = Field(Boolean)
7096 anupam.sin 505
    circleId = Field(Integer)
7169 anupam.sin 506
    email = Field(String(100))
7308 rajveer 507
    line1 = Field(String(100))
508
    line2 = Field(String(100))
509
    state = Field(String(100))
510
    pin = Field(String(10))
511
    phone = Field(String(20))
7423 anupam.sin 512
    tin = Field(String(100))
7308 rajveer 513
    approvalEmail = Field(String(255))
7967 anupam.sin 514
    clusterEmail = Field(String(100))
7075 rajveer 515
    using_options(shortnames=True)
7251 rajveer 516
    using_table_options(mysql_engine="InnoDB")
517
 
518
class RechargeCollection(Entity):
519
    hotspotId = Field(String(3), primary_key=True, autoincrement=False)
520
    reconDate = Field(Integer, primary_key=True, autoincrement=False)
521
    cash = Field(Integer)
522
    hdfc = Field(Integer)
523
    grossAmount = Field(Integer)
524
    discount = Field(Integer)
525
    netCollection = Field(Integer)
526
    addedAt = Field(DateTime)
527
    pushedAt = Field(DateTime)
528
    pushedToOcr = Field(Boolean)
529
    using_options(shortnames=True)
530
    using_table_options(mysql_engine="InnoDB")
7406 rajveer 531
 
532
class StoreOrderCollection(Entity):
533
    hotspotId = Field(String(3), primary_key=True, autoincrement=False)
534
    orderId = Field(Integer, primary_key=True, autoincrement=False)
535
    collectionType = Field(String(255), primary_key=True, autoincrement=False)
536
    productName = Field(String(255))
537
    advanceAmount = Field(Integer)
538
    cash = Field(Integer)
539
    card = Field(Integer)
540
    addedAt = Field(DateTime)
541
    pushedAt = Field(DateTime)
542
    pushedToOcr = Field(Boolean)
543
    using_options(shortnames=True)
544
    using_table_options(mysql_engine="InnoDB")
7263 anupam.sin 545
 
546
class SourceDetail(Entity):
547
    id = Field(Integer, primary_key=True, autoincrement=False)
548
    name = Field(String(255))
549
    email = Field(String(255))
7410 amar.kumar 550
    tinNumber = Field(String(255))
7530 kshitij.so 551
    lastUpdatedOn = Field(DateTime)
7263 anupam.sin 552
    using_options(shortnames=True)
7311 kshitij.so 553
    using_table_options(mysql_engine="InnoDB")
554
 
555
class AmazonOrder(Entity):
556
    orderId = Field(Integer, primary_key=True, autoincrement=False)
7322 vikram.rag 557
    amazonOrderCode = Field(String(255))
558
    amazonOrderItemCode = Field(String(255))
7311 kshitij.so 559
    transactionId = Field(Integer)
560
    item_id = Field(Integer)
7322 vikram.rag 561
    status = Field(String(50))
7715 vikram.rag 562
    purchaseDateOnAmazon = Field(DateTime)
7311 kshitij.so 563
    using_options(shortnames=True)
7386 anupam.sin 564
    using_table_options(mysql_engine="InnoDB")
565
 
566
class StoreOrderDetail(Entity):
567
    orderId = Field(Integer, primary_key=True, autoincrement=False)
568
    storeId = Field(Integer, primary_key=True, autoincrement=False)
569
    advanceAmount = Field(Float)
570
    cashAmount = Field(Float)
571
    cardAmount = Field(Float)
572
    payStatus = Field(Integer)
7393 anupam.sin 573
    edcBank = Field(String(100))
574
    cashRefundAmount = Field(Float)
575
    cardRefundAmount = Field(Float)
7423 anupam.sin 576
    approvalCode = Field(String(100))
7611 anupam.sin 577
    cardType = Field(String(100))
7386 anupam.sin 578
    using_options(shortnames=True)
579
    using_table_options(mysql_engine="InnoDB")
580
 
581
class EdcBank(Entity):
582
    id = Field(Integer, primary_key=True, autoincrement=True)
583
    name = Field(String(255))
584
    using_options(shortnames=True)
7967 anupam.sin 585
    using_table_options(mysql_engine="InnoDB")
586
 
587
class HotspotServiceMatrix(Entity): 
588
    storeId = Field(Integer, primary_key=True)
589
    hotspotId = Field(String(3))
590
    rechargeService = Field(Boolean, default=0, server_default="0")
591
    storeWebsiteService = Field(Boolean, default=0, server_default="0")
592
    pickupFromStoreService = Field(Boolean, default=0, server_default="0")
593
    using_options(shortnames=True)
8182 amar.kumar 594
    using_table_options(mysql_engine="InnoDB")
595
 
596
class  EbayOrder(Entity):
597
    orderId = Field(Integer, primary_key=True, autoincrement=False)
598
    salesRecordNumber = Field(Integer)
599
    paisaPayId = Field(String(32))
600
    ebayListingId = Field(String(32))
601
    subsidyAmount = Field(Float)
602
    ebayTxnDate = Field(DateTime)
603
    transactionId = Field(String(16))
604
    listingName = Field(String(128))
605
    listingPrice = Field(Float)
8247 amar.kumar 606
    bluedartPaisaPayRef = Field(String(16))
8182 amar.kumar 607
    using_options(shortnames=True)
608
    using_table_options(mysql_engine="InnoDB")
8488 amar.kumar 609
 
610
class  SnapdealOrder(Entity):
11423 vikram.rag 611
    orderId = Field(Integer)
11422 vikram.rag 612
    subOrderId = Field(String(32), primary_key=True, autoincrement=False)
613
    referenceCode = Field(String(32),primary_key=True, autoincrement=False)
8488 amar.kumar 614
    snapdealTxnDate = Field(DateTime)
615
    productName = Field(String(128))
616
    listingPrice = Field(Float)
9456 vikram.rag 617
    maxNlc = Field(Float)
8488 amar.kumar 618
    using_options(shortnames=True)
619
    using_table_options(mysql_engine="InnoDB")
8282 kshitij.so 620
 
621
class AmazonFbaSalesSnapshot(Entity):
622
    dateOfSale = Field(Date, primary_key=True)
8363 vikram.rag 623
    item_id = Field(Integer, primary_key=True,autoincrement=False)
624
    totalOrderCount = Field(Integer)
8282 kshitij.so 625
    amazonFbaInventory = Field(Integer)
626
    isOutOfStock = Field(Boolean)
627
    salePrice = Field(Float)
8445 vikram.rag 628
    ourPrice = Field(Float)
8282 kshitij.so 629
    minFbaPrice = Field(Float)
8363 vikram.rag 630
    minMfnPrice = Field(Float)
8542 vikram.rag 631
    totalSale = Field(Numeric(precision=11, scale=3, asdecimal=False))
632
    promotionSale =  Field(Numeric(precision=11, scale=3, asdecimal=False))
8363 vikram.rag 633
    promotionOrderCount = Field(Integer)
8532 vikram.rag 634
    ourPriceSnapshotDate  =  Field(DateTime)
635
    salePriceSnapshotDate  = Field(DateTime)
636
    minMfnPriceSnapshotDate = Field(DateTime)
637
    minFbaPriceSnapshotDate = Field(DateTime)
11173 vikram.rag 638
    fcLocation = Field(Integer, primary_key=True,autoincrement=False)
8282 kshitij.so 639
    using_options(shortnames=True)
8921 anupam.sin 640
    using_table_options(mysql_engine="InnoDB")
641
 
642
class SpiceTransactionHistory(Entity):
643
    orderId = Field(Integer, primary_key=True, autoincrement=False)
644
    spiceTID = Field(String(32))
645
    reponseCode = Field(String(32))
646
    rechargeTime = Field(DateTime)
8923 anupam.sin 647
    reconciliationTime = Field(DateTime)
8922 anupam.sin 648
    using_options(shortnames=True)
8961 vikram.rag 649
    using_table_options(mysql_engine="InnoDB")
650
 
651
class FlipkartOrder(Entity):   
11423 vikram.rag 652
    orderId = Field(Integer)
11422 vikram.rag 653
    flipkartSubOrderId = Field(String(30),primary_key=True, autoincrement=False)
654
    flipkartOrderId = Field(String(30),primary_key=True, autoincrement=False)
8961 vikram.rag 655
    flipkartTxnDate = Field(DateTime)
656
    shippingPrice = Field(Float)
657
    octroiFee = Field(Float)
658
    emiFee = Field(Float)
9456 vikram.rag 659
    maxNlc = Field(Float)
8961 vikram.rag 660
    using_options(shortnames=True)
661
    using_table_options(mysql_engine="InnoDB")
12103 manish.sha 662
 
663
class AmazonFbaOrderReturns(Entity):
664
    amazonOrderId = Field(String(30),primary_key=True, autoincrement=False)
665
    insertionTimestamp = Field(DateTime, primary_key=True, autoincrement=False)
666
    sku = Field(Integer, primary_key=True, autoincrement=False)
667
    creationTimestamp = Field(DateTime)    
668
    shippedQuantity = Field(Integer)
669
    sellableReturnQuantity = Field(Integer)
670
    nonSellableReturnQuantity = Field(Integer)
671
    using_options(shortnames=True)
672
    using_table_options(mysql_engine="InnoDB")
12772 manish.sha 673
 
12936 kshitij.so 674
class MobileActivationRecord(Entity):
675
    orderId = Field(Integer)
676
    deviceNumber = Field(String(64))
12940 kshitij.so 677
    serialNumber = Field(String(20))
12936 kshitij.so 678
    circle = Field(String(100))
679
    operator = Field(String(100))
680
    activationTime = Field(DateTime)
681
    using_options(shortnames=True)
682
    using_table_options(mysql_engine="InnoDB")
683
 
12772 manish.sha 684
class FlipkartAdvantageOrder(Entity):
685
    fkOrderId = Field(String(30),primary_key=True, autoincrement=False)
686
    fkOrderItemId = Field(String(30),primary_key=True, autoincrement=False)
687
    sku = Field(Integer)
688
    creationTimestamp = Field(DateTime)
689
    customerName = Field(String(50))
690
    customerAddress = Field(String(500))
691
    pincode = Field(String(10))
692
    customerCity = Field(String(30))
693
    customerState = Field(String(30))
694
    customerPhone = Field(String(30))
695
    status = Field(String(20))
696
    quantity = Field(Integer)
697
    totalPrice = Field(Float)
698
    listPrice = Field(Float)
699
    modifiedDate = Field(DateTime)
700
    listingId = Field(String(50))
701
    cancelReason = Field(String(100))
702
    returnReason = Field(String(100))
12779 manish.sha 703
    freebieItemId = Field(String(20))
12772 manish.sha 704
    productTitle = Field(String(200))
705
    using_options(shortnames=True)
706
    using_table_options(mysql_engine="InnoDB")
13146 manish.sha 707
 
708
class FlipkartFaSalesSnapshot(Entity):
709
    dateOfSale = Field(Date, primary_key=True)
710
    item_id = Field(Integer, primary_key=True,autoincrement=False)
711
    totalOrderCount = Field(Integer)
712
    isOutOfStock = Field(Boolean)
713
    totalSale = Field(Numeric(precision=11, scale=3, asdecimal=False))
714
    ourPrice = Field(Float)
13584 manish.sha 715
    fcLocation = Field(Integer, primary_key=True,autoincrement=False)
13146 manish.sha 716
    using_options(shortnames=True)
717
    using_table_options(mysql_engine="InnoDB")
13152 manish.sha 718
 
719
class TransactionShipmentSequence(Entity):
720
    id = Field(Integer, primary_key=True, autoincrement=True)
721
    transactionId = Field(Integer)
722
    createdTimestamp = Field(DateTime)
723
    sequence = Field(Integer, default=0)
13276 manish.sha 724
    invoiceFormat = Field(Integer, default=1)
13152 manish.sha 725
    using_options(shortnames=True)
13691 manish.sha 726
    using_table_options(mysql_engine="InnoDB")
18585 amit.gupta 727
 
18591 manish.sha 728
class Creditor(Entity):
18585 amit.gupta 729
    id = Field(Integer, primary_key=True, autoincrement=True)
730
    name = Field(String(64))
18674 amit.gupta 731
    ticket_size = Field(Float)
732
    credit_due_days = Field(Integer)
18585 amit.gupta 733
    active = Field(Boolean)
734
    updated = Field(DateTime, onupdate=datetime.datetime.now)
735
    created = Field(DateTime,default = datetime.datetime.now)
736
    using_options(shortnames=True)
737
    using_table_options(mysql_engine="InnoDB")
738
 
18591 manish.sha 739
class UserSanction(Entity):
18585 amit.gupta 740
    id = Field(Integer, primary_key=True, autoincrement=True)
18586 manish.sha 741
    user_id = Field(Integer)
742
    creditor_id = Field(Integer)
18592 amit.gupta 743
    user_ref_id = Field(String(24))
18586 manish.sha 744
    credit_limit = Field(Float)
745
    credit_blocked = Field(Float)
746
    loan = Field(Float)
18585 amit.gupta 747
    active = Field(Boolean)
748
    updated = Field(DateTime, onupdate=datetime.datetime.now)
749
    created = Field(DateTime,default = datetime.datetime.now)
750
    using_options(shortnames=True)
751
    using_table_options(mysql_engine="InnoDB")
13691 manish.sha 752
 
18585 amit.gupta 753
class CreditHistory(Entity):
754
    id = Field(Integer, primary_key=True, autoincrement=True)
18586 manish.sha 755
    user_id = Field(Integer)
756
    creditor_id = Field(Integer)
18634 manish.sha 757
    payment_id = Field(Integer)
18585 amit.gupta 758
    amount = Field(Float)
18634 manish.sha 759
    credit_type = Field(Enum('BLOCKED', 'BLOCKED_REVERSED', 'LOAN',  'LOAN_CANCELLED', 'PAID', 'DEFAULTED'))
760
    shipping_id = Field(String(30))
18585 amit.gupta 761
    created = Field(DateTime,default = datetime.datetime.now)
18586 manish.sha 762
    using_options(shortnames=True)
763
    using_table_options(mysql_engine="InnoDB")
18585 amit.gupta 764
 
18634 manish.sha 765
class LoanHistory(Entity):
766
    id = Field(Integer, primary_key=True, autoincrement=True)
767
    user_id = Field(Integer)
768
    creditor_id = Field(Integer)
769
    payment_id = Field(Integer)
770
    amount = Field(Float)
771
    credit_type = Field(Enum('BLOCKED', 'BLOCKED_REVERSED', 'LOAN',  'LOAN_CANCELLED', 'PAID', 'DEFAULTED', 'CORRECTION'))
772
    loan_id = Field(String(30))
773
    created = Field(DateTime,default = datetime.datetime.now)
774
    updated = Field(DateTime)
775
    due_date = Field(DateTime)
776
    value_date = Field(DateTime)
18769 manish.sha 777
    invoiceNumber = Field(String(30))
18634 manish.sha 778
    using_options(shortnames=True)
779
    using_table_options(mysql_engine="InnoDB")
780
 
13691 manish.sha 781
class HsOrder(Entity):
782
    orderId = Field(Integer, primary_key=True, autoincrement=False)
783
    hsOrderNo = Field(String(32))
784
    hsSubOrderNo = Field(String(32))
785
    catalogueName = Field(String(50))
786
    hsOrderDate = Field(DateTime)
787
    hsProductId = Field(String(32))
788
    hsItemId = Field(String(32))
789
    sellerSku = Field(String(32))
790
    paymentMode = Field(String(50))
791
    courierName = Field(String(50))
792
    slaDays = Field(Integer)
13734 manish.sha 793
    shippingName = Field(String(50))
13691 manish.sha 794
    using_options(shortnames=True)
18578 manish.sha 795
    using_table_options(mysql_engine="InnoDB")
19832 amit.gupta 796
 
797
class PendingStoreOrder(Entity):
798
    orderId = Field(Integer, primary_key=True, autoincrement=False)
799
    hsOrderNo = Field(String(32))
800
    hsSubOrderNo = Field(String(32))
801
    catalogueName = Field(String(50))
802
    hsOrderDate = Field(DateTime)
803
    hsProductId = Field(String(32))
804
    hsItemId = Field(String(32))
805
    sellerSku = Field(String(32))
806
    paymentMode = Field(String(50))
807
    courierName = Field(String(50))
808
    slaDays = Field(Integer)
809
    shippingName = Field(String(50))
810
    using_options(shortnames=True)
811
    using_table_options(mysql_engine="InnoDB")
18578 manish.sha 812
 
813
class ReturnPickupRequest(Entity):
814
    id = Field(Integer, primary_key=True, autoincrement=True)
815
    logisticsProviderId = Field(Integer)
816
    pickupRequestNo = Field(String(50))
817
    confirmedAt = Field(DateTime)
818
    promised_pickup_timestamp = Field(DateTime)
819
    pickedUpAt = Field(DateTime)
820
    pickupStatus = Field(Enum('PENDING','PICKUP_REQUESTED','PICKUP_CONFIRMED','PICKUP_SCHEDULED','PICKUP_IN_TRANSIT','PICKUP_RECEIVED'))
821
    using_options(shortnames=True)
822
    using_table_options(mysql_engine="InnoDB")
823
 
824
class ReturnOrderInfo(Entity):
825
    id = Field(Integer, primary_key=True, autoincrement=True)
826
    returnTransaction = ManyToOne("ReturnTransaction")
827
    masterOrderId = Field(String(100))
828
    orderId = Field(Integer)
829
    lineItemId = Field(Integer)
830
    logisticsRequestId = Field(Integer)
831
    returnQuantity = Field(Integer)
832
    receivedQuantity = Field(Integer)
833
    createdAt = Field(DateTime)
834
    processedAt = Field(DateTime)
835
    returnStatus = Field(String(256))
836
    reshippedAt = Field(DateTime)
837
    receivedAt = Field(DateTime)
838
    refundReason = Field(String(256))
839
    refundedBy = Field(String(256))
840
    refundedAt = Field(DateTime)
841
    warehouse_id = Field(Integer)
842
    refundAmount = Field(Float)
19694 manish.sha 843
    refundType = Field(Integer, default=0, server_default="0")
18578 manish.sha 844
    refundDescription = Field(String(256))
845
    returnPickupType = Field(Integer, default=0, server_default="0")
846
    shippingType = Field(Integer, default=0, server_default="0")
847
    replacementOrderId = Field(Integer)
848
    receivedReturnType = Field(Integer)
849
    freebieItemId = Field(Integer, default=0, server_default="0")
850
    returnAction = Field(Integer)
851
    returnTxnResolutionStatus = Field(Enum('PENDING','AWAITING_PICKUP','QUALITY_CHECK','REPLACEMENT_DONE'\
852
                              'REPLACEMENT_ORDER_CREATED','REFUND_IN_PROCESS','REFUND_DONE','CLOSED'))
853
    lineitem = ManyToOne("LineItem", field=lineItemId)
854
    returnPickUpRequest = ManyToOne("ReturnPickupRequest", field=logisticsRequestId)
855
    using_options(shortnames=True)
856
    using_table_options(mysql_engine="InnoDB")
857
 
858
class ReturnTransaction(Entity):
859
    id = Field(Integer, primary_key=True, autoincrement=True)
860
    status = Field(Enum('INITIATED','AUTHORIZED','INPROCESS','REJECTED','PROCESSED','COMPLETED','CLOSED'))
861
    customer_email = Field(String(50))
862
    customer_name = Field(String(50))
863
    customer_id = Field(Integer)
864
    address_id = Field(Integer)
865
    ticketId = Field(Integer)
866
    createdAt = Field(DateTime)
867
    processedAt = Field(DateTime)
868
    authorizedAt = Field(DateTime)
869
    closedAt = Field(DateTime)
870
    customerAddress = Field(String(512))
871
    pincode = Field(String(10))
872
    customerCity = Field(String(100))
873
    customerState = Field(String(50))
874
    customerPhone = Field(String(50))
875
    returnOrders = OneToMany("ReturnOrderInfo")
876
    using_options(shortnames=True)
877
    using_table_options(mysql_engine="InnoDB")
19474 manish.sha 878
 
879
class ShipmentLogisticsCostDetail(Entity):
880
    logisticsTransactionId = Field(String(100), primary_key=True)
881
    airwayBillNo = Field(String(50), primary_key=True)
882
    shipmentAmount = Field(Float, default=0, server_default="0")
883
    shipmentWeight = Field(Float, default=0, server_default="0")
884
    shipmentLogsiticsCost = Field(Float, default=0, server_default="0")
885
    shipmentCodCollectionCharges = Field(Float, default=0, server_default="0")
886
    createdAt = Field(DateTime,default = datetime.datetime.now)
887
    updatedAt = Field(DateTime)
20737 kshitij.so 888
    packageDimensions = Field(String(20))
19474 manish.sha 889
    using_options(shortnames=True)
20745 kshitij.so 890
    using_table_options(mysql_engine="InnoDB")
891
 
22491 amit.gupta 892
class CodCourierPaymentRemittance(Entity):
893
    id = Field(Integer, primary_key=True, autoincrement=True)
894
    provider_id = Field(Integer)
895
    airwayBillNo = Field(String(50))
896
    collectionReference = Field(String(50))
897
    amount = Field(Float)
898
    settledAt = Field(DateTime)
899
    using_options(shortnames=True)
900
    using_table_options(mysql_engine="InnoDB")
23081 amit.gupta 901
 
902
 
903
class Price_Drop_IMEI(Entity):
904
    id = Field(Integer, primary_key=True, autoincrement=True)
905
    price_drop = ManyToOne("Price_Drop")
906
    imei = Field(String(16))
907
    using_options(shortnames=True)
908
    using_table_options(mysql_engine="InnoDB")
909
 
910
class Price_Drop(Entity):
911
    id = Field(Integer, primary_key=True, autoincrement=True)
912
    item_id = Field(Integer)
913
    amount = Field(Float)
914
    affected_on = Field(Date)
915
    imeis = OneToMany("Price_Drop_IMEI")
916
    created_on = Field(DateTime)
917
    credit_note_number = Field(String(32))
918
    credit_note_date = Field(Date)
919
    using_options(shortnames=True)
920
    using_table_options(mysql_engine="InnoDB")
22491 amit.gupta 921
 
23081 amit.gupta 922
 
21044 kshitij.so 923
class PMSA(Entity):
924
    id = Field(Integer, primary_key=True, autoincrement=True)
925
    name = Field(String(256))
926
    phone = Field(String(10))
927
    emailId = Field(String(50))
928
    address = Field(String(256))
21090 kshitij.so 929
    state = Field(String(256))
930
    level = Field(String(10))
931
    l1_id = Field(Integer)
932
    l2_id = Field(Integer)
933
    activated = Field(Boolean)
21044 kshitij.so 934
    pin = Field(String(6))
935
    code = Field(String(12))
21090 kshitij.so 936
    createdAt = Field(DateTime,default = datetime.datetime.now)
21044 kshitij.so 937
    using_options(shortnames=True)
938
    using_table_options(mysql_engine="InnoDB")
939
 
940
class PMSA_Agents(Entity):
941
    userId = Field(Integer, primary_key=True, autoincrement=False)
942
    pmsa_id = Field(Integer)
21050 kshitij.so 943
    createdAt = Field(DateTime,default = datetime.datetime.now)
21044 kshitij.so 944
    using_options(shortnames=True)
945
    using_table_options(mysql_engine="InnoDB")
21101 kshitij.so 946
 
947
class AdvancePayments(Entity):
948
    id = Field(Integer, primary_key=True, autoincrement=True)
949
    userId = Field(Integer)
950
    amount = Field(Integer)
951
    cash_back = Field(Integer)
952
    cash_back_type = Field(String(20))
953
    cash_back_amount = Field(Integer)
954
    createdAt = Field(DateTime,default = datetime.datetime.now)
955
    using_options(shortnames=True)
956
    using_table_options(mysql_engine="InnoDB")