Subversion Repositories SmartDukaan

Rev

Rev 9575 | Rev 9627 | 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, \
8282 kshitij.so 14
    Numeric, BigInteger, LargeBinary,Date
104 ashish 15
 
16
#===============================================================================
17
# Different entities in the model
18
#===============================================================================
19
 
3187 rajveer 20
def initialize(dbname='transaction', db_hostname="localhost", echoOn=True):
746 rajveer 21
    #metadata.bind = "sqlite:///Transactionsnew.sqlite"
1122 chandransh 22
    #metadata.bind = 'mysql://root:shop2020@localhost/transaction'
3187 rajveer 23
    engine = create_engine('mysql://root:shop2020@' + db_hostname + '/' + dbname, pool_recycle=7200)
1122 chandransh 24
    metadata.bind = engine
1911 chandransh 25
    metadata.bind.echo = echoOn
483 rajveer 26
    setup_all(True)
27
 
28
 
29
if __name__=="__main__":
30
    initialize()
2783 chandransh 31
 
32
class InvoiceIDGenerator(Entity):
5527 anupam.sin 33
    id = Field(Integer)
5528 anupam.sin 34
    orderType = Field(Integer, primary_key = True)
2783 chandransh 35
    using_options(shortnames=True)
36
    using_table_options(mysql_engine="InnoDB")   
483 rajveer 37
 
5508 rajveer 38
class RechargeVoucherTracker(Entity):
39
    order = ManyToOne("Order")
40
    voucherType = Field(Integer)
41
    amount = Field(Integer)
42
    voucherIssued = Field(Boolean)
43
    voucherCode = Field(String(30))
44
    issuedOn = Field(DateTime)
45
    using_options(shortnames=True)
46
    using_table_options(mysql_engine="InnoDB")
47
 
483 rajveer 48
class LineItem(Entity):
49
    id = Field(Integer, primary_key=True, autoincrement=True)
699 chandransh 50
    item_id = Field(Integer)
963 chandransh 51
    productGroup = Field(String(100))
52
    brand = Field(String(100))
53
    model_number = Field(String(50))
54
    model_name = Field(String(50))
669 chandransh 55
    color = Field(String(20))
483 rajveer 56
    extra_info = Field(String(100))
57
    quantity = Field(Float)
58
    unit_price = Field(Float)
59
    unit_weight = Field(Float)
60
    total_price = Field(Float)
996 varun.gupt 61
    transfer_price = Field(Float)
6751 amar.kumar 62
    nlc = Field(Float)
483 rajveer 63
    total_weight = Field(Float)
2783 chandransh 64
    item_number = Field(String(50))
7322 vikram.rag 65
    serial_number = Field(String(50)) 
4172 rajveer 66
    dealText = Field(String(100))
4295 varun.gupt 67
    warranty_expiry_timestamp = Field(DateTime)
483 rajveer 68
    order = ManyToOne("Order")
6039 amit.gupta 69
    vatRate = Field(Float)
746 rajveer 70
    using_options(shortnames=True)
71
    using_table_options(mysql_engine="InnoDB")
72
 
1276 chandransh 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
 
483 rajveer 76
class Order(Entity):
77
    id = Field(Integer, primary_key=True, autoincrement=True)
78
    warehouse_id = Field(Integer)
79
    logistics_provider_id = Field(Integer)
80
    airwaybill_no = Field(String(50))
81
    tracking_id = Field(String(50))
82
    expected_delivery_time = Field(DateTime)
3986 chandransh 83
    promised_delivery_time = Field(DateTime)
4004 chandransh 84
    expected_shipping_time = Field(DateTime)
4102 chandransh 85
    promised_shipping_time = Field(DateTime)
6726 rajveer 86
    courier_delivery_time = Field(DateTime)
483 rajveer 87
    customer_id = Field(Integer)
88
    customer_name = Field(String(50))
89
    customer_mobilenumber = Field(String(20))
90
    customer_pincode = Field(String(10))
738 chandransh 91
    customer_address1 = Field(String(100))
92
    customer_address2 = Field(String(100))
669 chandransh 93
    customer_city = Field(String(100))
94
    customer_state = Field(String(100))
483 rajveer 95
    customer_email = Field(String(50))
96
    status = Field(Integer)
97
    statusDescription = Field(String(50))
98
    total_amount = Field(Float)
6318 rajveer 99
    gvAmount = Field(Float)
483 rajveer 100
    total_weight = Field(Float)
101
    invoice_number = Field(String(30))
102
    billed_by = Field(String(30))
103
    created_timestamp = Field(DateTime)
104
    accepted_timestamp = Field(DateTime)
105
    billing_timestamp = Field(DateTime)
106
    shipping_timestamp = Field(DateTime)
1113 chandransh 107
    pickup_timestamp = Field(DateTime)
483 rajveer 108
    delivery_timestamp = Field(DateTime)
1208 chandransh 109
    outofstock_timestamp = Field(DateTime)
483 rajveer 110
    lineitems = OneToMany("LineItem")
111
    transaction = ManyToOne("Transaction")
6903 anupam.sin 112
    insuranceDetails = OneToMany("InsuranceDetailForOrder")
9575 kshitij.so 113
    dataInsuranceDetails = OneToMany("DataInsuranceDetailForOrder")
642 chandransh 114
    jacket_number = Field(Integer)
1132 chandransh 115
    receiver = Field(String(50))
1220 chandransh 116
    batchNo = Field(Integer)
117
    serialNo = Field(Integer)
2536 chandransh 118
    doaFlag = Field(Boolean)
119
    pickupRequestNo = Field(String(20))
2764 chandransh 120
    doa_auth_timestamp = Field(DateTime)
121
    doa_pickup_timestamp = Field(DateTime)
122
    received_return_timestamp = Field(DateTime)
123
    reship_timestamp = Field(DateTime)
124
    refund_timestamp = Field(DateTime)
2628 chandransh 125
    new_order_id = Field(Integer)
2819 chandransh 126
    purchase_order_id = Field(Integer)
3064 chandransh 127
    cod = Field(Boolean)
3226 chandransh 128
    refunded_by = Field(String(30))
5141 anupam.sin 129
    refund_reason = Field(String(256))
3064 chandransh 130
    verification_timestamp = Field(DateTime)
3581 chandransh 131
    delay_reason = Field(Enum('INVENTORY_LOW_PHASED_OUT', 'INVENTORY_LOW_COLOR_NOT_AVAILABLE',\
132
                              'INVENTORY_LOW_REVERSAL_NOT_ON_TIME', 'INVENTORY_LOW_PRODUCT_NOT_SEALED',\
133
                              'COURIER_DELAY_NOT_DELIVERED_TO_COURIER_ON_TIME', 'COURIER_DELAY_DID_NOT_CONNECT',\
134
                              'COURIER_DELAY_CUSTOMER_NOT_AVAILABLE', 'COURIER_DELAY_INCORRECT_ADDRESS',\
135
                              'COURIER_DELAY_OCTROI_DELAY', 'COURIER_DELAY_FORCES_OF_NATURE',\
136
                              'COD_VERIFICATION_DELAY', 'PAYMENT_FLAGGED', 'OTHERS'))
3956 chandransh 137
    cod_reconciliation_timestamp = Field(DateTime)
4247 rajveer 138
    previousStatus = Field(Integer)
4269 anupam.sin 139
    vendorId = Field(Integer)
5302 rajveer 140
    delayReasonText= Field(String(250))
4815 phani.kuma 141
    doa_logistics_provider_id = Field(Integer)
4910 phani.kuma 142
    local_connected_timestamp = Field(DateTime)
143
    reached_destination_timestamp = Field(DateTime)
144
    first_dlvyatmp_timestamp = Field(DateTime)
4303 rajveer 145
    orderInventory = OneToMany("OrderInventory")
5386 phani.kuma 146
    vendor_paid = Field(Boolean, default=0, server_default="0")
5062 varun.gupt 147
    originalOrderId = Field(Integer)
5110 mandeep.dh 148
    fulfilmentWarehouseId = Field(Integer)
5527 anupam.sin 149
    orderType = Field(Integer)
5720 rajveer 150
    pickupStoreId = Field(Integer, default=0, server_default="0")
6525 rajveer 151
    otg = Field(Boolean, default=0, server_default="0")
7033 anupam.sin 152
    insurer = Field(Integer, default=0, server_default="0")
153
    insuranceAmount = Field(Float, default=0, server_default="0")
7190 amar.kumar 154
    freebieItemId = Field(Integer, default=0, server_default="0")
7564 rajveer 155
    source = Field(Integer, default=1, server_default="1")
7293 anupam.sin 156
    storeId = Field(Integer, default=0, server_default="0")
7549 rajveer 157
    advanceAmount = Field(Float, default=0, server_default="0")
8717 amar.kumar 158
    productCondition = Field(Integer, default=0, server_default="0")
9299 kshitij.so 159
    dataProtectionInsurer = Field(Integer, default=0, server_default="0")
160
    dataProtectionAmount = Field(Float, default=0, server_default="0")
9416 amar.kumar 161
    taxType = Field(Integer, default=0, server_default="0")
2628 chandransh 162
    using_options(shortnames=True)
163
    using_table_options(mysql_engine="InnoDB")
5348 anupam.sin 164
 
165
class CodVerificationAgent(Entity):
166
    orderId = Field(Integer, primary_key=True, autoincrement=True)
167
    verificationAgent = Field(String(200))
168
    using_options(shortnames=True)
169
    using_table_options(mysql_engine="InnoDB")
170
 
104 ashish 171
class Transaction(Entity):
483 rajveer 172
    id = Field(Integer, primary_key=True, autoincrement=True)
173
    createdOn = Field(DateTime)
174
    status = Field(Integer)
175
    status_message = Field(String(100))
176
    customer_id = Field(Integer)
177
    shopping_cart_id = Field(Integer)
2815 vikas 178
    session_source = Field(String(100))
179
    session_start_time = Field(DateTime)
3858 vikas 180
    first_source = Field(String(100))
181
    first_source_start_time = Field(DateTime)
483 rajveer 182
    orders = OneToMany("Order")
2219 varun.gupt 183
    coupon_code = Field(String(20))
746 rajveer 184
    using_options(shortnames=True)
185
    using_table_options(mysql_engine="InnoDB")
132 ashish 186
 
4394 rajveer 187
class Alert(Entity):
132 ashish 188
    id = Field(Integer, primary_key=True, autoincrement=True)
483 rajveer 189
    type = Field(Integer)
4394 rajveer 190
    status = Field(Integer)
191
    timestamp = Field(DateTime)
192
    description = Field(String(100))
4444 rajveer 193
    warehouseId = Field(Integer)
746 rajveer 194
    using_options(shortnames=True)
1225 chandransh 195
    using_table_options(mysql_engine="InnoDB")
196
 
197
class BatchNoGenerator(Entity):
198
    id=Field(Integer, primary_key=True)
199
    using_options(shortnames=True)
200
    using_table_options(mysql_engine="InnoDB")
4008 mandeep.dh 201
 
202
class TransactionRequiringExtraProcessing(Entity):
4015 mandeep.dh 203
    transaction_id = Field(Integer, primary_key=True, autoincrement=False)
6733 anupam.sin 204
    category = Field(Enum('COD_VERIFICATION', 'DELAYED_DELIVERY', 'PAYMENT_FLAGGED', 'RECHARGE_UNKNOWN'), primary_key=True, autoincrement=False)
4008 mandeep.dh 205
    using_options(shortnames=True)
206
    using_table_options(mysql_engine="InnoDB")
4303 rajveer 207
 
208
class OrderInventory(Entity):
209
    order = ManyToOne("Order", primary_key=True)
210
    itemId = Field(Integer)
211
    timestamp = Field(DateTime)
212
    hotspotAction = Field(Integer)
213
    estimate = Field(Integer)
214
    using_options(shortnames=True)
215
    using_table_options(mysql_engine="InnoDB")
4600 varun.gupt 216
 
217
class EBSSettlementSummary(Entity):
218
    settlementId = Field(Integer, primary_key = True)
219
    settlementDate = Field(DateTime)
220
    transactionDateFrom = Field(DateTime)
221
    transactionDateTo = Field(DateTime)
5389 phani.kuma 222
    amount = Field(Numeric(precision=11, scale=3, asdecimal=False))
4600 varun.gupt 223
    detailsUploaded = Field(Boolean)
224
    using_options(shortnames=True)
225
    using_table_options(mysql_engine="InnoDB")
4905 varun.gupt 226
 
4600 varun.gupt 227
class PaymentSettlement(Entity):
4905 varun.gupt 228
    referenceId = Field(Integer)    #PaymentID in case of prepaid & Order Id in case of COD
5386 phani.kuma 229
    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 230
    paymentGatewayId = Field(Integer)
231
    settlementDate = Field(DateTime)
5389 phani.kuma 232
    serviceTax = Field(Numeric(precision=11, scale=3, asdecimal=False))
233
    otherCharges = Field(Numeric(precision=11, scale=3, asdecimal=False))
234
    netCollection = Field(Numeric(precision=11, scale=3, asdecimal=False))
4600 varun.gupt 235
    using_options(shortnames=True)
5527 anupam.sin 236
    using_table_options(mysql_engine="InnoDB")
237
 
238
class Attribute(Entity):
239
    orderId = Field(Integer)
240
    name = Field(String(100))
241
    value = Field(String(100))
242
    using_options(shortnames=True)
6389 rajveer 243
    using_table_options(mysql_engine="InnoDB")
244
 
245
 
246
class EmiScheme(Entity):
247
    id  = Field(Integer, primary_key=True)
248
    gatewayId  = Field(Integer)
249
    bankId = Field(Integer)
250
    tenure = Field(Integer)
6396 amit.gupta 251
    bankName = Field(String(256))
252
    tenureDescription = Field(String(256))
6389 rajveer 253
    minAmount = Field(Integer)
254
    chargeType = Field(Integer)
6409 rajveer 255
    chargeValue = Field(Float)
8942 rajveer 256
    interestRate = Field(Float)
6389 rajveer 257
    using_options(shortnames=True)
258
    using_table_options(mysql_engine="InnoDB")
259
 
260
class MiscCharges(Entity):
261
    transaction = ManyToOne("Transaction", primary_key=True)
6396 amit.gupta 262
    chargeType = Field(Integer, primary_key=True, autoincrement=False)
6389 rajveer 263
    chargeAmount = Field(Float)
264
    using_options(shortnames=True)
6580 anupam.sin 265
    using_table_options(mysql_engine="InnoDB")
266
 
6591 anupam.sin 267
class BlockedIpRange(Entity):
6580 anupam.sin 268
    id = Field(Integer, primary_key=True, autoincrement=True)
6594 anupam.sin 269
    start = Field(BigInteger)
270
    end = Field(BigInteger)
6591 anupam.sin 271
    expiredOn = Field(DateTime)
6580 anupam.sin 272
    using_options(shortnames=True)
6591 anupam.sin 273
    using_table_options(mysql_engine="InnoDB")
274
 
275
class DeniedIpAddress(Entity):
276
    id = Field(Integer, primary_key=True, autoincrement=True)
277
    ip = Field(String(256))
278
    deniedOn = Field(DateTime)
279
    rechargeType = Field(Integer)
280
    deviceNumber = Field(String(128))
281
    using_options(shortnames=True)
6903 anupam.sin 282
    using_table_options(mysql_engine="InnoDB")
283
 
284
class InsuranceDetailForOrder(Entity):
285
    id = Field(Integer, primary_key=True, autoincrement=True)
286
    dob = Field(String(64))
287
    guardianName = Field(String(255))
288
    startDate = Field(DateTime)
289
    expiryDate = Field(DateTime)
6915 anupam.sin 290
    isDeclared = Field(Boolean, default=0)
6903 anupam.sin 291
    order = ManyToOne("Order")
292
    using_options(shortnames=True)
6906 rajveer 293
    using_table_options(mysql_engine="InnoDB")
294
 
6915 anupam.sin 295
    def __init__(self):
296
        self.isDeclared = 0
297
 
9575 kshitij.so 298
class DataInsuranceDetailForOrder(Entity):
299
    id = Field(Integer, primary_key=True, autoincrement=True)
300
    startDate = Field(DateTime)
301
    expiryDate = Field(DateTime)
9608 kshitij.so 302
    isDeclared = Field(Boolean, default=0, server_default="0")
9575 kshitij.so 303
    order = ManyToOne("Order")
304
    using_options(shortnames=True)
305
    using_table_options(mysql_engine="InnoDB")
306
 
6906 rajveer 307
class DocumentStore(Entity):
308
    docType = Field(Integer, primary_key=True, autoincrement=False)
309
    docSource = Field(Integer, primary_key=True, autoincrement=False)
310
    document  = Field(LargeBinary)
311
    using_options(shortnames=True)
7073 anupam.sin 312
    using_table_options(mysql_engine="InnoDB")
313
 
314
class Company(Entity):
315
    id = Field(Integer, primary_key=True, autoincrement=True)
316
    name = Field(String(255))
317
    Address = Field(String(255))
318
    using_options(shortnames=True)
319
    using_table_options(mysql_engine="InnoDB")
320
 
321
class WalletForCompany(Entity):
322
    id = Field(Integer, primary_key=True, autoincrement=True)
323
    companyId = Field(Integer)
7102 rajveer 324
    amount = Field(Integer)
7073 anupam.sin 325
    using_options(shortnames=True)
326
    using_table_options(mysql_engine="InnoDB")
327
 
328
class WalletHistoryForCompany(Entity):
329
    id = Field(Integer, primary_key=True, autoincrement=True)
330
    walletId = Field(Integer)
7102 rajveer 331
    amount = Field(Integer)
7073 anupam.sin 332
    transactionTime = Field(DateTime)
7102 rajveer 333
    openingBal = Field(Integer)
334
    closingBal = Field(Integer)
7073 anupam.sin 335
    referenceNumber = Field(Integer)
336
    description = Field(String(255))
337
    using_options(shortnames=True)
338
    using_table_options(mysql_engine="InnoDB")
339
 
340
class RechargeTransaction(Entity):
341
    id = Field(Integer, primary_key=True, autoincrement=True)
342
    storeId = Field(Integer)
7102 rajveer 343
    amount = Field(Integer)
7073 anupam.sin 344
    transactionTime = Field(DateTime)
7075 rajveer 345
    responseTime = Field(DateTime)
346
    description = Field(String(255))
347
    spiceTID = Field(String(255))
7369 rajveer 348
    aggTID = Field(String(255))
349
    providerTID = Field(String(255))
7075 rajveer 350
    plan = Field(String(255))
7073 anupam.sin 351
    deviceNum = Field(String(64))
352
    deviceType = Field(Integer)
353
    isFrc = Field(Boolean)
354
    email = Field(String(255))
7102 rajveer 355
    discount = Field(Integer)
356
    paymentAmount = Field(Integer)
7145 rajveer 357
    payMethod = Field(Integer, default=0, server_default="0")
7073 anupam.sin 358
    status = Field(Integer)
359
    invoiceNumber = Field(Integer)
360
    circleId = Field(Integer)
7075 rajveer 361
    operatorId = Field(Integer)
7073 anupam.sin 362
    name = Field(String(255))
363
    simNum = Field(String(255))
364
    cafNum = Field(String(255))
7080 anupam.sin 365
    ipAddress = Field(String(255))
366
    alternateNumber = Field(String(255))
7073 anupam.sin 367
    using_options(shortnames=True)
7075 rajveer 368
    using_table_options(mysql_engine="InnoDB")
7076 rajveer 369
 
7120 rajveer 370
class OperatorSeries(Entity):
371
    series = Field(Integer, primary_key=True, autoincrement=False)
372
    operatorId = Field(Integer)
373
    circleId = Field(Integer)
374
    using_options(shortnames=True)
375
    using_table_options(mysql_engine="InnoDB")
376
 
7076 rajveer 377
class FRC(Entity):
378
    id = Field(Integer, primary_key=True)
379
    operatorId = Field(Integer)
380
    circleId = Field(Integer)
381
    denomination = Field(Integer)
382
    maxDiscount = Field(Integer)
383
    using_options(shortnames=True)
384
    using_table_options(mysql_engine="InnoDB")
7120 rajveer 385
 
7075 rajveer 386
class HotspotStore(Entity):
387
    id = Field(Integer, primary_key=True)
388
    hotspotId = Field(String(3))
389
    companyId = Field(Integer)
390
    name = Field(String(100))
391
    city = Field(String(100))
7076 rajveer 392
    collectedAmount = Field(Integer)
7075 rajveer 393
    availableLimit = Field(Integer)
394
    creditLimit = Field(Integer)
395
    salt = Field(String(100))
396
    password = Field(String(100))
397
    isActive = Field(Boolean)
7096 anupam.sin 398
    circleId = Field(Integer)
7169 anupam.sin 399
    email = Field(String(100))
7308 rajveer 400
    line1 = Field(String(100))
401
    line2 = Field(String(100))
402
    state = Field(String(100))
403
    pin = Field(String(10))
404
    phone = Field(String(20))
7423 anupam.sin 405
    tin = Field(String(100))
7308 rajveer 406
    approvalEmail = Field(String(255))
7967 anupam.sin 407
    clusterEmail = Field(String(100))
7075 rajveer 408
    using_options(shortnames=True)
7251 rajveer 409
    using_table_options(mysql_engine="InnoDB")
410
 
411
class RechargeCollection(Entity):
412
    hotspotId = Field(String(3), primary_key=True, autoincrement=False)
413
    reconDate = Field(Integer, primary_key=True, autoincrement=False)
414
    cash = Field(Integer)
415
    hdfc = Field(Integer)
416
    grossAmount = Field(Integer)
417
    discount = Field(Integer)
418
    netCollection = Field(Integer)
419
    addedAt = Field(DateTime)
420
    pushedAt = Field(DateTime)
421
    pushedToOcr = Field(Boolean)
422
    using_options(shortnames=True)
423
    using_table_options(mysql_engine="InnoDB")
7406 rajveer 424
 
425
class StoreOrderCollection(Entity):
426
    hotspotId = Field(String(3), primary_key=True, autoincrement=False)
427
    orderId = Field(Integer, primary_key=True, autoincrement=False)
428
    collectionType = Field(String(255), primary_key=True, autoincrement=False)
429
    productName = Field(String(255))
430
    advanceAmount = Field(Integer)
431
    cash = Field(Integer)
432
    card = Field(Integer)
433
    addedAt = Field(DateTime)
434
    pushedAt = Field(DateTime)
435
    pushedToOcr = Field(Boolean)
436
    using_options(shortnames=True)
437
    using_table_options(mysql_engine="InnoDB")
7263 anupam.sin 438
 
439
class SourceDetail(Entity):
440
    id = Field(Integer, primary_key=True, autoincrement=False)
441
    name = Field(String(255))
442
    email = Field(String(255))
7410 amar.kumar 443
    tinNumber = Field(String(255))
7530 kshitij.so 444
    lastUpdatedOn = Field(DateTime)
7263 anupam.sin 445
    using_options(shortnames=True)
7311 kshitij.so 446
    using_table_options(mysql_engine="InnoDB")
447
 
448
class AmazonOrder(Entity):
449
    orderId = Field(Integer, primary_key=True, autoincrement=False)
7322 vikram.rag 450
    amazonOrderCode = Field(String(255))
451
    amazonOrderItemCode = Field(String(255))
7311 kshitij.so 452
    transactionId = Field(Integer)
453
    item_id = Field(Integer)
7322 vikram.rag 454
    status = Field(String(50))
7715 vikram.rag 455
    purchaseDateOnAmazon = Field(DateTime)
7311 kshitij.so 456
    using_options(shortnames=True)
7386 anupam.sin 457
    using_table_options(mysql_engine="InnoDB")
458
 
459
class StoreOrderDetail(Entity):
460
    orderId = Field(Integer, primary_key=True, autoincrement=False)
461
    storeId = Field(Integer, primary_key=True, autoincrement=False)
462
    advanceAmount = Field(Float)
463
    cashAmount = Field(Float)
464
    cardAmount = Field(Float)
465
    payStatus = Field(Integer)
7393 anupam.sin 466
    edcBank = Field(String(100))
467
    cashRefundAmount = Field(Float)
468
    cardRefundAmount = Field(Float)
7423 anupam.sin 469
    approvalCode = Field(String(100))
7611 anupam.sin 470
    cardType = Field(String(100))
7386 anupam.sin 471
    using_options(shortnames=True)
472
    using_table_options(mysql_engine="InnoDB")
473
 
474
class EdcBank(Entity):
475
    id = Field(Integer, primary_key=True, autoincrement=True)
476
    name = Field(String(255))
477
    using_options(shortnames=True)
7967 anupam.sin 478
    using_table_options(mysql_engine="InnoDB")
479
 
480
class HotspotServiceMatrix(Entity): 
481
    storeId = Field(Integer, primary_key=True)
482
    hotspotId = Field(String(3))
483
    rechargeService = Field(Boolean, default=0, server_default="0")
484
    storeWebsiteService = Field(Boolean, default=0, server_default="0")
485
    pickupFromStoreService = Field(Boolean, default=0, server_default="0")
486
    using_options(shortnames=True)
8182 amar.kumar 487
    using_table_options(mysql_engine="InnoDB")
488
 
489
class  EbayOrder(Entity):
490
    orderId = Field(Integer, primary_key=True, autoincrement=False)
491
    salesRecordNumber = Field(Integer)
492
    paisaPayId = Field(String(32))
493
    ebayListingId = Field(String(32))
494
    subsidyAmount = Field(Float)
495
    ebayTxnDate = Field(DateTime)
496
    transactionId = Field(String(16))
497
    listingName = Field(String(128))
498
    listingPrice = Field(Float)
8247 amar.kumar 499
    bluedartPaisaPayRef = Field(String(16))
8182 amar.kumar 500
    using_options(shortnames=True)
501
    using_table_options(mysql_engine="InnoDB")
8488 amar.kumar 502
 
503
class  SnapdealOrder(Entity):
504
    orderId = Field(Integer, primary_key=True, autoincrement=False)
505
    subOrderId = Field(Integer)
506
    referenceCode = Field(String(32))
507
    snapdealTxnDate = Field(DateTime)
508
    productName = Field(String(128))
509
    listingPrice = Field(Float)
9456 vikram.rag 510
    maxNlc = Field(Float)
8488 amar.kumar 511
    using_options(shortnames=True)
512
    using_table_options(mysql_engine="InnoDB")
8282 kshitij.so 513
 
514
class AmazonFbaSalesSnapshot(Entity):
515
    dateOfSale = Field(Date, primary_key=True)
8363 vikram.rag 516
    item_id = Field(Integer, primary_key=True,autoincrement=False)
517
    totalOrderCount = Field(Integer)
8282 kshitij.so 518
    amazonFbaInventory = Field(Integer)
519
    isOutOfStock = Field(Boolean)
520
    salePrice = Field(Float)
8445 vikram.rag 521
    ourPrice = Field(Float)
8282 kshitij.so 522
    minFbaPrice = Field(Float)
8363 vikram.rag 523
    minMfnPrice = Field(Float)
8542 vikram.rag 524
    totalSale = Field(Numeric(precision=11, scale=3, asdecimal=False))
525
    promotionSale =  Field(Numeric(precision=11, scale=3, asdecimal=False))
8363 vikram.rag 526
    promotionOrderCount = Field(Integer)
8532 vikram.rag 527
    ourPriceSnapshotDate  =  Field(DateTime)
528
    salePriceSnapshotDate  = Field(DateTime)
529
    minMfnPriceSnapshotDate = Field(DateTime)
530
    minFbaPriceSnapshotDate = Field(DateTime)
8282 kshitij.so 531
    using_options(shortnames=True)
8921 anupam.sin 532
    using_table_options(mysql_engine="InnoDB")
533
 
534
class SpiceTransactionHistory(Entity):
535
    orderId = Field(Integer, primary_key=True, autoincrement=False)
536
    spiceTID = Field(String(32))
537
    reponseCode = Field(String(32))
538
    rechargeTime = Field(DateTime)
8923 anupam.sin 539
    reconciliationTime = Field(DateTime)
8922 anupam.sin 540
    using_options(shortnames=True)
8961 vikram.rag 541
    using_table_options(mysql_engine="InnoDB")
542
 
543
class FlipkartOrder(Entity):   
544
    orderId = Field(Integer, primary_key=True, autoincrement=False)
545
    flipkartSubOrderId = Field(String(30))
546
    flipkartOrderId = Field(String(30))
547
    flipkartTxnDate = Field(DateTime)
548
    shippingPrice = Field(Float)
549
    octroiFee = Field(Float)
550
    emiFee = Field(Float)
9456 vikram.rag 551
    maxNlc = Field(Float)
8961 vikram.rag 552
    using_options(shortnames=True)
553
    using_table_options(mysql_engine="InnoDB")