Subversion Repositories SmartDukaan

Rev

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