Subversion Repositories SmartDukaan

Rev

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