Subversion Repositories SmartDukaan

Rev

Rev 12841 | Rev 12888 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
94 ashish 1
'''
2
Created on 22-Mar-2010
3
 
4
@author: ashish
5
'''
4873 mandeep.dh 6
from elixir import metadata, setup_all
94 ashish 7
from elixir.entity import Entity
8
from elixir.fields import Field
4873 mandeep.dh 9
from elixir.options import using_options, using_table_options
5318 rajveer 10
from elixir.relationships import OneToMany, ManyToOne
4873 mandeep.dh 11
from sqlalchemy import create_engine
12363 kshitij.so 12
from sqlalchemy.types import Integer, String, DateTime, Float, Boolean, Text, Enum, BigInteger, Date
4873 mandeep.dh 13
import datetime
14
import elixir
94 ashish 15
 
626 chandransh 16
class EntityIDGenerator(Entity):
17
    id=Field(Integer, primary_key=True)
18
    using_options(shortnames=True)
746 rajveer 19
    using_table_options(mysql_engine="InnoDB")
122 ashish 20
 
94 ashish 21
class Item(Entity):
122 ashish 22
    id = Field(Integer, primary_key=True, autoincrement=True)
963 chandransh 23
    product_group = Field(String(100))
4917 phani.kuma 24
    brand = Field(String(100), default='', server_default='')
25
    model_number = Field(String(50), default='', server_default='')
26
    model_name = Field(String(100), default='', server_default='')
27
    color = Field(String(20), default='', server_default='')
28
    category = Field(Integer, default=0, server_default="0")
483 rajveer 29
    comments = Field(String(200))
122 ashish 30
    catalog_item_id = Field(Integer)
31
    feature_id = Field(Integer)
32
    feature_description = Field(String(200))
483 rajveer 33
    mrp = Field(Float)
34
    sellingPrice = Field(Float)
35
    weight = Field(Float)
122 ashish 36
    addedOn = Field(DateTime)
609 chandransh 37
    updatedOn = Field(DateTime)
122 ashish 38
    startDate = Field(DateTime)
39
    retireDate = Field(DateTime)
5217 amit.gupta 40
    comingSoonStartDate = Field(DateTime)
41
    expectedArrivalDate = Field(DateTime)
483 rajveer 42
    status = Field(Integer)
2035 rajveer 43
    status_description = Field(String(100))
609 chandransh 44
    bestDealText = Field(String(100))
6777 vikram.rag 45
    bestDealsDetailsText = Field(String(1000))
46
    bestDealsDetailsLink = Field(String(200))
630 chandransh 47
    bestDealValue = Field(Float)
621 chandransh 48
    bestSellingRank = Field(Integer)
103 ashish 49
    statusChangeLog = OneToMany("ItemChangeLog")
1910 varun.gupt 50
    defaultForEntity = Field(Boolean)
2251 ankur.sing 51
    risky = Field(Boolean)
3355 chandransh 52
    expectedDelay = Field(Integer)
4295 varun.gupt 53
    warranty_period = Field(Integer)
4406 anupam.sin 54
    isWarehousePreferenceSticky = Field(Boolean)
4506 phani.kuma 55
    preferredVendor = Field(Integer)
5135 mandeep.dh 56
    type = Field(Enum('SERIALIZED', 'NON_SERIALIZED'), default = 'NON_SERIALIZED', server_default='NON_SERIALIZED')
5385 phani.kuma 57
    hasItemNo = Field(Boolean)
7256 rajveer 58
    activeOnStore = Field(Boolean)
6241 amit.gupta 59
    showSellingPrice = Field(Boolean)
6805 anupam.sin 60
    preferredInsurer = Field(Integer)
7291 vikram.rag 61
    asin = Field(String(20))
62
    holdInventory = Field(Integer, default=0, server_default="0")
63
    defaultInventory = Field(Integer, default=0, server_default="0")
9841 rajveer 64
    holdOverride = Field(Boolean)
746 rajveer 65
    using_options(shortnames=True)
66
    using_table_options(mysql_engine="InnoDB")
103 ashish 67
 
94 ashish 68
    def __repr__(self):
122 ashish 69
        return "<Item>%d</item>" % (self.id)
1308 chandransh 70
 
7330 amit.gupta 71
class ItemVatMaster(Entity):
72
    itemId = Field(Integer, primary_key=True,  autoincrement=False)
73
    stateId = Field(Integer, primary_key=True,  autoincrement=False)
74
    vatPercentage = Field(Float)
75
    using_options(shortnames=True)
76
    using_table_options(mysql_engine="InnoDB")
77
 
78
 
103 ashish 79
class ItemChangeLog(Entity):
122 ashish 80
    id = Field(Integer, primary_key=True, autoincrement=True)
103 ashish 81
    old_status = Field(Integer)
82
    new_status = Field(Integer)
1308 chandransh 83
    timestamp = Field(DateTime)
103 ashish 84
    item = ManyToOne("Item")
746 rajveer 85
    using_options(shortnames=True)
86
    using_table_options(mysql_engine="InnoDB")
94 ashish 87
 
103 ashish 88
    def __repr__(self):
89
        return "<Log><id>%d</id><item>%d</item><old_status>%d</old_status><new_status>%d</new_status></Log>" %(self.id,self.item.id, self.old_status, self.new_status)    
94 ashish 90
 
635 rajveer 91
class Category(Entity):
1970 rajveer 92
    id = Field(Integer, primary_key=True, autoincrement=False)
93
    label = Field(String(50))
94
    description = Field(String(200))
95
    parent_category_id = Field(Integer)
4762 phani.kuma 96
    display_name = Field(String(50))
746 rajveer 97
    using_options(shortnames=True)
98
    using_table_options(mysql_engine="InnoDB")
1970 rajveer 99
 
3008 rajveer 100
class SimilarItems(Entity):
101
    item = ManyToOne('Item', primary_key=True)
102
    catalog_item_id = Field(Integer, primary_key=True, autoincrement=False)
103
    using_options(shortnames=True)
104
    using_table_options(mysql_engine="InnoDB")
105
 
3079 rajveer 106
class ProductNotification(Entity):
107
    item = ManyToOne('Item', primary_key=True)
108
    email = Field(String(100), primary_key=True, autoincrement=False)
109
    addedOn = Field(DateTime, primary_key=True, autoincrement=False) 
110
    using_options(shortnames=True)
111
    using_table_options(mysql_engine="InnoDB")
3557 rajveer 112
 
113
class Source(Entity):
114
    id = Field(Integer, primary_key=True, autoincrement=True)
115
    name = Field(String(50))
116
    identifier = Field(String(100))
117
    using_options(shortnames=True)
118
    using_table_options(mysql_engine="InnoDB")
6511 kshitij.so 119
 
3557 rajveer 120
class SourceItemPricing(Entity):
121
    source = ManyToOne('Source', primary_key=True)
122
    item = ManyToOne('Item', primary_key=True)
123
    mrp = Field(Float)
124
    sellingPrice = Field(Float)
125
    using_options(shortnames=True)
126
    using_table_options(mysql_engine="InnoDB")
746 rajveer 127
 
4649 phani.kuma 128
class AuthorizationLog(Entity):
129
    id = Field(Integer, primary_key=True, autoincrement = True)    
130
    timestamp = Field(DateTime, default=datetime.datetime.now())
131
    item = ManyToOne('Item')
132
    username = Field(String(30))
133
    reason = Field(Text)
134
    using_options(shortnames=True)
135
    using_table_options(mysql_engine="InnoDB")
136
 
5504 phani.kuma 137
class VoucherItemMapping(Entity):
5512 rajveer 138
    voucherType = Field(Integer, primary_key=True)
5504 phani.kuma 139
    item = ManyToOne('Item', primary_key=True)
140
    amount = Field(Integer, default=0, server_default="0")
141
    using_options(shortnames=True)
142
    using_table_options(mysql_engine="InnoDB")
143
 
6039 amit.gupta 144
class CategoryVatMaster(Entity):
7330 amit.gupta 145
    categoryId = Field(Integer, primary_key=True, autoincrement=False)
146
    stateId = Field(Integer, primary_key=True, autoincrement=False)
147
    minVal = Field(Integer, primary_key=True,  autoincrement=False)
148
    maxVal = Field(Integer, primary_key=True,  autoincrement=False)
6039 amit.gupta 149
    vatPercent = Field(Float)
150
    using_options(shortnames=True)
151
    using_table_options(mysql_engine="InnoDB")
152
 
6255 rajveer 153
class OOSTracker(Entity):
154
    itemId = Field(Integer, primary_key=True)
155
    using_options(shortnames=True)
156
    using_table_options(mysql_engine="InnoDB")
6532 amit.gupta 157
 
158
class EntityTag(Entity):
159
    tag = Field(String(100),primary_key=True)
160
    entityId = Field(Integer, primary_key=True, autoincrement=False)
161
    using_options(shortnames=True)
162
    using_table_options(mysql_engine="InnoDB")
6848 kshitij.so 163
 
164
class Banner(Entity):
165
    bannerName = Field(String(100),primary_key=True)
166
    imageName = Field(String(100))
167
    link = Field(String(400))
168
    priority = Field(Integer)
169
    hasMap = Field(Boolean)
9156 amit.gupta 170
    bannerType = Field(Integer,primary_key=True, autoincrement=False)
6848 kshitij.so 171
    using_options(shortnames=True)
172
    using_table_options(mysql_engine="InnoDB")
173
 
174
class BannerMap(Entity):
175
    bannerName = Field(String(100))
176
    mapLink = Field(String(400))
177
    coordinates = Field(String(20))
9155 kshitij.so 178
    bannerType = Field(Integer)
6848 kshitij.so 179
    using_options(shortnames=True)
180
    using_table_options(mysql_engine="InnoDB")
8579 kshitij.so 181
 
182
class BannerUriMapping(Entity):
183
    bannerName = Field(String(100))
184
    uri = Field(String(100))
185
    isActive = Field(Boolean)
9155 kshitij.so 186
    bannerType = Field(Integer)
10097 kshitij.so 187
    target = Field(Boolean)
8579 kshitij.so 188
    using_options(shortnames=True)
189
    using_table_options(mysql_engine="InnoDB")
190
 
191
class Campaign(Entity):
192
    id = Field(Integer,primary_key=True)
193
    campaignName = Field(String(255))
194
    imageName = Field(String(255))
195
    using_options(shortnames=True)
196
    using_table_options(mysql_engine="InnoDB")
6255 rajveer 197
 
6805 anupam.sin 198
class ItemInsurerMapping(Entity):
199
    id = Field(Integer, primary_key=True, autoincrement=True)
200
    itemId = Field(Integer)
201
    insurerId = Field(Integer)
202
    premiumType = Field(Integer)
203
    premiumAmount = Field(Float)
9299 kshitij.so 204
    insurerType = Field(Integer)
6805 anupam.sin 205
    using_options(shortnames=True)
206
    using_table_options(mysql_engine="InnoDB")
207
 
208
class Insurer(Entity):
209
    id = Field(Integer, primary_key=True, autoincrement=True)
210
    name = Field(String(255))
211
    address = Field(String(255))
6903 anupam.sin 212
    declaredAmount = Field(BigInteger)
213
    creditedAmount = Field(BigInteger)
9299 kshitij.so 214
    insurerType = Field(Integer)
6805 anupam.sin 215
    using_options(shortnames=True)
216
    using_table_options(mysql_engine="InnoDB")
7190 amar.kumar 217
 
218
class FreebieItem(Entity):
219
    itemId = Field(Integer, primary_key=True)
220
    freebieItemId = Field(Integer)
221
    using_options(shortnames=True)
222
    using_table_options(mysql_engine="InnoDB")
7256 rajveer 223
 
7272 amit.gupta 224
class BrandInfo(Entity):
225
    name = Field(String(255), primary_key=True)
226
    serviceCenterLocatorUrl = Field(String(255))
227
    using_options(shortnames=True)
228
    using_table_options(mysql_engine="InnoDB")
229
 
7256 rajveer 230
class StorePricing(Entity):
231
    item = ManyToOne('Item', primary_key=True)
232
    recommendedPrice = Field(Float)
233
    minPrice = Field(Float)
234
    maxPrice = Field(Float)
235
    minAdvancePrice = Field(Float)
7308 rajveer 236
    freebieItemId = Field(Integer)
7351 rajveer 237
    absoluteMinPrice = Field(Float)
7308 rajveer 238
    bestDealText = Field(String(100))
7256 rajveer 239
    using_options(shortnames=True)
7291 vikram.rag 240
    using_table_options(mysql_engine="InnoDB")    
241
 
7281 kshitij.so 242
class Amazonlisted(Entity):
7396 kshitij.so 243
    itemId = Field(Integer, primary_key=True, autoincrement=False)
7281 kshitij.so 244
    asin = Field(String(255))
245
    name = Field(String(255))
246
    brand = Field(String(255))
247
    model = Field(String(255))
248
    manufacturer_name = Field(String(255))
249
    part_number = Field(String(255))
250
    ean = Field(String(255))
251
    upc = Field(String(255))
252
    fbaPrice = Field(Float)
10909 vikram.rag 253
    fbbPrice = Field(Float)
7281 kshitij.so 254
    sellingPrice = Field(Float)
255
    isFba = Field(Boolean)
256
    isNonFba = Field(Boolean)
10909 vikram.rag 257
    isFbb = Field(Boolean)
7281 kshitij.so 258
    isInventoryOverride = Field(Boolean)
12448 kshitij.so 259
    otherCost = Field(Float, default=0.0, server_default="0.0")
7281 kshitij.so 260
    color = Field(String(255))
261
    category = Field(String(255))
7367 kshitij.so 262
    handlingTime = Field(Integer)
263
    isCustomTime = Field(Boolean)
7516 vikram.rag 264
    category_code = Field(Integer, default=0, server_default="0")
10920 vikram.rag 265
    fbbListedOn = Field(DateTime)
7770 kshitij.so 266
    mfnPriceLastUpdatedOn = Field(DateTime)
267
    fbaPriceLastUpdatedOn = Field(DateTime)
10909 vikram.rag 268
    fbbPriceLastUpdatedOn = Field(DateTime)
7770 kshitij.so 269
    mfnPriceLastUpdatedOnSc = Field(DateTime)
270
    fbaPriceLastUpdatedOnSc = Field(DateTime)
10909 vikram.rag 271
    fbbPriceLastUpdatedOnSc = Field(DateTime)
8139 kshitij.so 272
    suppressMfnPriceUpdate = Field(Boolean)
8140 kshitij.so 273
    suppressFbaPriceUpdate = Field(Boolean)
10909 vikram.rag 274
    suppressFbbPriceUpdate = Field(Boolean)
8619 kshitij.so 275
    taxCode = Field(String(255))
10909 vikram.rag 276
    fbbtaxCode = Field(String(255))
12363 kshitij.so 277
    overrrideWanlc = Field(Boolean)
278
    exceptionalWanlc = Field(Float)
12396 kshitij.so 279
    autoDecrement = Field(Boolean)
280
    autoIncrement = Field(Boolean)
281
    autoFavourite = Field(Boolean)
282
    manualFavourite = Field(Boolean)
12663 kshitij.so 283
    fbaPromoPrice = Field(Float, default=0.0, server_default="0.0")
284
    fbbPromoPrice = Field(Float, default=0.0, server_default="0.0")
12719 kshitij.so 285
    fbaPromoStartDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
286
    fbaPromoEndDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
287
    fbbPromoStartDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
288
    fbbPromoEndDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
12663 kshitij.so 289
    fbaPromotionActive = Field(Boolean)
290
    fbbPromotionActive = Field(Boolean)
7281 kshitij.so 291
    using_options(shortnames=True)
292
    using_table_options(mysql_engine="InnoDB")
293
 
7977 kshitij.so 294
class PageViewEvents(Entity):
295
    id = Field(Integer, primary_key=True, autoincrement=True)
8139 kshitij.so 296
    catalogId = Field(Integer,index=True)
297
    url = Field(String(255),index=True)
7977 kshitij.so 298
    sellingPrice = Field(Float)
299
    comingSoon = Field(Boolean)
300
    ip = Field(String(255))
301
    sessionId = Field(String(255))
8139 kshitij.so 302
    eventTimestamp = Field(DateTime,index=True)
7977 kshitij.so 303
    using_options(shortnames=True)
304
    using_table_options(mysql_engine="InnoDB")
305
 
306
class CartEvents(Entity):
307
    id = Field(Integer, primary_key=True, autoincrement=True)
8139 kshitij.so 308
    catalogId = Field(Integer,index=True)
309
    itemId = Field(Integer,index=True)
7977 kshitij.so 310
    sellingPrice = Field(Float)
311
    inStock = Field(Boolean)
312
    comingSoon = Field(Boolean)
313
    ip = Field(String(255))
314
    sessionId = Field(String(255))
8139 kshitij.so 315
    eventTimestamp = Field(DateTime,index=True)
7977 kshitij.so 316
    using_options(shortnames=True)
317
    using_table_options(mysql_engine="InnoDB")
318
 
8182 amar.kumar 319
class EbayItem(Entity):
320
    ebayListingId = Field(String(32), primary_key=True)
321
    itemId = Field(Integer, primary_key=True, autoincrement = False)
322
    listingName = Field(String(255))
323
    listingPrice = Field(Float)
324
    listingExpiryDate = Field(DateTime)
325
    subsidy = Field(Float)
326
    defaultWarehouseId = Field(Integer)
327
    using_options(shortnames=True)
328
    using_table_options(mysql_engine="InnoDB")
8739 vikram.rag 329
 
330
class SnapdealItem(Entity):
331
    item_id = Field(Integer, primary_key=True, autoincrement = False)
332
    exceptionPrice = Field(Float)
333
    warehouseId = Field(Integer)
9242 kshitij.so 334
    transferPrice = Field(Float)
335
    sellingPrice = Field(Float)
336
    courierCost =  Field(Float)
11095 kshitij.so 337
    courierCostMarketplace = Field(Float)
9242 kshitij.so 338
    commission  =  Field(Float)
339
    serviceTax  =  Field(Float)
340
    updatedOn = Field(DateTime)
9404 vikram.rag 341
    maxNlc = Field(Float)
9478 kshitij.so 342
    skuAtSnapdeal = Field(String(255))
9242 kshitij.so 343
    isListedOnSnapdeal = Field(Boolean)
344
    suppressPriceFeed = Field(Boolean)
345
    suppressInventoryFeed = Field(Boolean)
9568 kshitij.so 346
    supc = Field(String(255))
9724 kshitij.so 347
    shippingTime = Field(Integer)
9779 kshitij.so 348
    priceUpdatedBy = Field(String(255))
8739 vikram.rag 349
    using_options(shortnames=True)
350
    using_table_options(mysql_engine="InnoDB")
9242 kshitij.so 351
 
10097 kshitij.so 352
class MarketPlaceUpdateHistory(Entity):
9242 kshitij.so 353
    id  = Field(Integer, primary_key=True, autoincrement = True)
354
    item_id = Field(Integer)
10097 kshitij.so 355
    source = Field(Integer)
356
    isListedOnSource = Field(Boolean)
9242 kshitij.so 357
    exceptionPrice = Field(Float)
358
    warehouseId = Field(Integer)
359
    transferPrice = Field(Float)
360
    sellingPrice = Field(Float)
361
    courierCost =  Field(Float)
11095 kshitij.so 362
    courierCostMarketplace = Field(Float)
9242 kshitij.so 363
    commission  =  Field(Float)
364
    serviceTax  =  Field(Float)
365
    suppressPriceFeed = Field(Boolean)
366
    suppressInventoryFeed = Field(Boolean)
9478 kshitij.so 367
    maxNlc = Field(Float)
10097 kshitij.so 368
    skuAtSource = Field(String(255))
9242 kshitij.so 369
    updatedOn = Field(DateTime)
10097 kshitij.so 370
    marketPlaceSerialNumber = Field(String(255))
9779 kshitij.so 371
    priceUpdatedBy = Field(String(255))
9242 kshitij.so 372
    using_options(shortnames=True)
373
    using_table_options(mysql_engine="InnoDB")
9724 kshitij.so 374
 
375
class MarketplaceItems(Entity):
376
    itemId = Field(Integer,primary_key=True, autoincrement = False)
377
    source = Field(Integer,primary_key=True, autoincrement = False)
378
    emiFee = Field(Float)
379
    courierCost = Field(Float)
11095 kshitij.so 380
    courierCostMarketplace = Field(Float)
9724 kshitij.so 381
    closingFee = Field(Float)
382
    returnProvision = Field(Float)
383
    commission = Field(Float)
10287 kshitij.so 384
    pgFee = Field(Float)
9724 kshitij.so 385
    vat = Field(Float)
386
    packagingCost = Field(Float)
387
    otherCost = Field(Float)
388
    serviceTax = Field(Float)
389
    autoIncrement = Field(Boolean)
390
    autoDecrement = Field(Boolean)
391
    manualFavourite = Field(Boolean)
392
    autoFavourite = Field(Boolean)
393
    currentSp = Field(Float)
394
    currentTp = Field(Float)
395
    minimumPossibleSp = Field(Float)
396
    minimumPossibleTp = Field(Float)
9909 kshitij.so 397
    maximumSellingPrice = Field(Float)
9724 kshitij.so 398
    lastCheckedTimestamp = Field(DateTime)
399
    using_options(shortnames=True)
400
    using_table_options(mysql_engine="InnoDB")
7977 kshitij.so 401
 
9621 manish.sha 402
class ProductFeedSubmit(Entity):
403
    catalogItemId = Field(Integer, primary_key=True)
404
    stockLinkedFeed = Field(Boolean)
405
    using_options(shortnames=True)
406
    using_table_options(mysql_engine="InnoDB")
9776 vikram.rag 407
 
408
class MarketPlaceItemPrice(Entity):    
409
    item_id = Field(Integer, primary_key=True, autoincrement=False)
410
    source = Field(Integer, primary_key=True, autoincrement=False)
411
    sellingPrice = Field(Float)
412
    lastUpdatedOn = Field(DateTime)
413
    lastUpdatedOnMarketplace = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 15:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
414
    suppressPriceFeed = Field(Boolean)
415
    isListedOnSource =  Field(Boolean)
416
    using_options(shortnames=True)
417
    using_table_options(mysql_engine="InnoDB")
9242 kshitij.so 418
 
9779 kshitij.so 419
class SourcePercentageMaster(Entity):
420
    source = Field(Integer, primary_key=True, autoincrement=False)
421
    emiFee = Field(Float)
422
    closingFee = Field(Float)
423
    returnProvision = Field(Float)
424
    commission = Field(Float)
10287 kshitij.so 425
    pgFee = Field(Float)
9884 kshitij.so 426
    competitorCommissionAccessory = Field(Float)
427
    competitorCommissionOther = Field(Float)
9779 kshitij.so 428
    serviceTax = Field(Float)
429
    using_options(shortnames=True)
430
    using_table_options(mysql_engine="InnoDB")
431
 
432
class SourceItemPercentage(Entity):
433
    item_id = Field(Integer, primary_key=True, autoincrement=False)
434
    source = Field(Integer, primary_key=True, autoincrement=False)
435
    emiFee = Field(Float)
436
    closingFee = Field(Float)
437
    returnProvision = Field(Float)
438
    commission = Field(Float)
10287 kshitij.so 439
    pgFee = Field(Float)
9884 kshitij.so 440
    competitorCommissionAccessory = Field(Float)
441
    competitorCommissionOther = Field(Float)
9779 kshitij.so 442
    serviceTax = Field(Float)
10097 kshitij.so 443
    startDate = Field(DateTime, primary_key=True, autoincrement=False)
444
    expiryDate = Field(DateTime)
9779 kshitij.so 445
    using_options(shortnames=True)
446
    using_table_options(mysql_engine="InnoDB")
447
 
10097 kshitij.so 448
class SourceCategoryPercentage(Entity):
449
    category_id = Field(Integer, primary_key=True, autoincrement=False)
450
    source = Field(Integer, primary_key=True, autoincrement=False)
451
    emiFee = Field(Float)
452
    closingFee = Field(Float)
453
    returnProvision = Field(Float)
454
    commission = Field(Float)
10287 kshitij.so 455
    pgFee = Field(Float)
10097 kshitij.so 456
    competitorCommissionAccessory = Field(Float)
457
    competitorCommissionOther = Field(Float)
458
    serviceTax = Field(Float)
459
    startDate = Field(DateTime, primary_key=True, autoincrement=False)
460
    expiryDate = Field(DateTime)
461
    using_options(shortnames=True)
462
    using_table_options(mysql_engine="InnoDB")
463
 
9884 kshitij.so 464
class MarketPlaceHistory(Entity):
465
    item_id = Field(Integer, primary_key=True, autoincrement=False)
466
    source = Field(Integer, primary_key=True, autoincrement=False)
467
    lowestPossibleTp = Field(Float)
468
    lowestPossibleSp = Field(Float)
469
    ourInventory = Field(Integer)
470
    otherInventory = Field(Integer)
471
    secondLowestInventory = Field(Integer)
472
    ourRank = Field(Integer)
11193 kshitij.so 473
    ourOfferPrice = Field(Float)
474
    ourSellingPrice = Field(Float)
475
    ourTp = Field(Float)
476
    ourNlc = Field(Float)
477
    ourRating = Field(Float)
478
    ourShippingTime = Field(String(10))
9884 kshitij.so 479
    competitionBasis = Field(Integer)
480
    competitiveCategory = Field(Integer)
481
    risky = Field(Boolean)
482
    lowestOfferPrice = Field(Float)
483
    lowestSellingPrice = Field(Float)
11193 kshitij.so 484
    lowestTp = Field(Float)
9884 kshitij.so 485
    lowestSellerName = Field(String(255))
486
    lowestSellerCode = Field(String(255))
11193 kshitij.so 487
    lowestSellerRating = Field(Float)
488
    lowestSellerShippingTime = Field(String(10))
9884 kshitij.so 489
    proposedSellingPrice = Field(Float)
490
    proposedTp = Field(Float)
491
    targetNlc = Field(Float)
492
    salesPotential = Field(Integer)
493
    secondLowestSellerName = Field(String(255))
494
    secondLowestSellerCode = Field(String(255))
495
    secondLowestSellingPrice = Field(Float)
496
    secondLowestOfferPrice = Field(Float)
497
    secondLowestTp = Field(Float)
11193 kshitij.so 498
    secondLowestSellerRating = Field(Float)
499
    secondLowestSellerShippingTime = Field(String(10))
500
    prefferedSellerName = Field(String(255))
501
    prefferedSellerCode = Field(String(255))
502
    prefferedSellerSellingPrice = Field(Float)
503
    prefferedSellerOfferPrice = Field(Float)
504
    prefferedSellerTp = Field(Float)
505
    prefferedSellerRating = Field(Float)
506
    prefferedSellerShippingTime = Field(String(10))
9884 kshitij.so 507
    marginIncreasedPotential = Field(Float)
508
    margin = Field(Float)
509
    competitorEnoughStock = Field(Boolean)
510
    ourEnoughStock = Field(Boolean)
511
    totalSeller = Field(Integer)
512
    avgSales = Field(Float)
513
    decision = Field(Integer)
9909 kshitij.so 514
    reason = Field(String(255))
9949 kshitij.so 515
    run = Field(Integer)
11193 kshitij.so 516
    toGroup = Field(Boolean)
9884 kshitij.so 517
    timestamp =Field(DateTime, primary_key=True, autoincrement=False)
518
    using_options(shortnames=True)
519
    using_table_options(mysql_engine="InnoDB")
11193 kshitij.so 520
 
9884 kshitij.so 521
 
9945 vikram.rag 522
class FlipkartItem(Entity):
523
    item_id = Field(Integer, primary_key=True, autoincrement = False)
524
    exceptionPrice = Field(Float)
525
    warehouseId = Field(Integer)
526
    commissionValue  =  Field(Float)
527
    serviceTaxValue  =  Field(Float)
528
    maxNlc = Field(Float)
529
    skuAtFlipkart = Field(String(255))
530
    isListedOnFlipkart = Field(Boolean)
531
    suppressPriceFeed = Field(Boolean)
532
    suppressInventoryFeed = Field(Boolean)
10097 kshitij.so 533
    flipkartSerialNumber = Field(String(255))
9945 vikram.rag 534
    updatedOn = Field(DateTime)
535
    updatedBy = Field(String(255))
536
    using_options(shortnames=True)
537
    using_table_options(mysql_engine="InnoDB")
538
 
11531 vikram.rag 539
class PrivateDeals(Entity):   
540
    item_id = Field(Integer, primary_key=True, autoincrement = False)
541
    dealFreebieItemId =  Field(Integer)
542
    dealPrice = Field(Float)
543
    startDate = Field(DateTime)
544
    endDate = Field(DateTime)
11566 vikram.rag 545
    dealTextOption = Field(Integer)
11531 vikram.rag 546
    dealText = Field(String(500))
547
    isCod =  Field(Boolean)
548
    rank = Field(Integer)
11566 vikram.rag 549
    dealFreebieOption = Field(Integer)
11606 vikram.rag 550
    isActive = Field(Boolean)
11531 vikram.rag 551
    using_options(shortnames=True)
552
    using_table_options(mysql_engine="InnoDB")
11816 kshitij.so 553
 
554
class AmazonOutOfSync(Entity):
555
    item_id = Field(Integer, primary_key=True, autoincrement = False)
556
    mfn = Field(Boolean)
557
    fba = Field(Boolean)
558
    fbb = Field(Boolean)
559
    using_options(shortnames=True)
560
    using_table_options(mysql_engine="InnoDB")
11531 vikram.rag 561
 
11905 kshitij.so 562
class PrivateDealsPriceComparison(Entity):
563
    item_id= Field(Integer, primary_key=True, autoincrement=False)
12133 kshitij.so 564
    asin = Field(String(20))
565
    fsn = Field(String(20))
566
    supc = Field(String(20))
11905 kshitij.so 567
    sdPrice = Field(Float)
568
    fkPrice  = Field(Float)
569
    amazonPrice = Field(Float)
570
    dealPrice = Field(Float)
571
    saholicPrice = Field(Float)
572
    lastProcessedTimestamp = Field(DateTime)
573
    using_options(shortnames=True)
574
    using_table_options(mysql_engine="InnoDB")
11531 vikram.rag 575
 
12133 kshitij.so 576
class SourceReturnPercentage(Entity):
577
    source = Field(Integer)
578
    brand = Field(String(100))
579
    category_id = Field(Integer)
580
    returnProvision = Field(Float)
581
    using_options(shortnames=True)
582
    using_table_options(mysql_engine="InnoDB")
12256 kshitij.so 583
 
584
class CompetitorPricingRequest(Entity):
585
    requestId = Field(BigInteger, primary_key=True,autoincrement=False)
586
    user = Field(String(50))
587
    isProcessed = Field(Boolean)
588
    competitorPricing = OneToMany("CompetitorPricing")
589
    using_options(shortnames=True)
590
    using_table_options(mysql_engine="InnoDB")
12243 kshitij.so 591
 
592
class CompetitorPricing(Entity):
593
    item_id = Field(Integer)
594
    snapdealScraping = Field(Boolean)
595
    flipkartScraping = Field(Boolean)
596
    amazonScraping = Field(Boolean)
12256 kshitij.so 597
    ourSnapdealPrice = Field(Float)
598
    ourSnapdealOfferPrice = Field(Float)
599
    ourSnapdealInventory = Field(Integer)
12243 kshitij.so 600
    lowestSnapdealPrice = Field(Float)
12256 kshitij.so 601
    lowestSnapdealOfferPrice = Field(Float)
602
    lowestSnapdealSeller = Field(String(255))
603
    lowestSnapdealSellerInventory = Field(Integer)
604
    ourFlipkartPrice = Field(Float)
605
    ourFlipkartInventory = Field(Integer)
12243 kshitij.so 606
    lowestFlipkartPrice = Field(Float)
12256 kshitij.so 607
    lowestFlipkartSeller = Field(String(255))
608
    ourMfnPrice = Field(Float)
609
    ourFbaPrice = Field(Float)
610
    ourMfnInventory = Field(Integer)
611
    ourFbaInventory = Field(Integer)
612
    lowestAmazonPrice = Field(Float)
613
    lowestAmazonSeller = Field(String(255))
614
    competitorPricing = ManyToOne("CompetitorPricingRequest")
12243 kshitij.so 615
    using_options(shortnames=True)
616
    using_table_options(mysql_engine="InnoDB")
12363 kshitij.so 617
 
618
class AmazonPromotion(Entity):
619
    sku = Field(String(20))
620
    standardPrice = Field(Float)
621
    salePrice = Field(Float)
12431 kshitij.so 622
    subsidy = Field(Float)
12363 kshitij.so 623
    startDate = Field(DateTime)
624
    endDate = Field(DateTime)
625
    addedOn = Field(DateTime)
626
    updatedOnMarketplace = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
627
    promotionActive = Field(Boolean)
628
    stateId = Field(Integer)
629
    promotionType = Field(Integer)
630
    using_options(shortnames=True)
631
    using_table_options(mysql_engine="InnoDB")
12133 kshitij.so 632
 
12363 kshitij.so 633
class AmazonScrapingHistory(Entity):
634
    item_id = Field(Integer, primary_key=True, autoincrement=False)
12472 kshitij.so 635
    asin = Field(String(255))
12363 kshitij.so 636
    warehouseLocation = Field(Integer, primary_key=True, autoincrement=False)
12396 kshitij.so 637
    parentCategoryId = Field(Integer)
12363 kshitij.so 638
    ourSellingPrice = Field(Float)
12474 kshitij.so 639
    promoPrice = Field(Float)
12511 kshitij.so 640
    subsidy = Field(Float)
12363 kshitij.so 641
    lowestPossibleSp = Field(Float)
642
    ourRank = Field(Integer)
643
    ourInventory = Field(Integer)
644
    lowestSellerName = Field(String(255))
645
    lowestSellerSp = Field(Float)
12431 kshitij.so 646
    lowestSellerShippingTime = Field(String(10))
647
    lowestSellerRating = Field(String(10))
648
    lowestSellerType = Field(String(20))
12363 kshitij.so 649
    secondLowestSellerName = Field(String(255))
650
    secondLowestSellerSp = Field(Float)
12431 kshitij.so 651
    secondLowestSellerShippingTime = Field(String(10))
652
    secondLowestSellerRating = Field(String(10))
653
    secondLowestSellerType = Field(String(20))
12363 kshitij.so 654
    thirdLowestSellerName = Field(String(255))
655
    thirdLowestSellerSp = Field(Float)
12431 kshitij.so 656
    thirdLowestSellerShippingTime = Field(String(10))
657
    thirdLowestSellerRating = Field(String(10))
658
    thirdLowestSellerType = Field(String(20))
12363 kshitij.so 659
    competitiveCategory = Field(Integer)
12448 kshitij.so 660
    otherCost = Field(Float)
12597 kshitij.so 661
    isLowestMfnIgnored = Field(Boolean)
662
    lowestMfnIgnoredOffer = Field(Float)
663
    isLowestMfn = Field(Boolean)
664
    lowestMfnOffer = Field(Float)
665
    isLowestFba = Field(Boolean)
666
    lowestFbaOffer = Field(Float)
667
    competitivePrice = Field(Float)
668
    cheapestMfnCount = Field(Boolean)
12363 kshitij.so 669
    wanlc = Field(Float)
670
    commission = Field(Float)
671
    competitorCommission = Field(Float)
672
    returnProvision = Field(Float)
12511 kshitij.so 673
    vatRate = Field(Float)
12363 kshitij.so 674
    courierCost = Field(Float)
675
    risky = Field(Boolean)
676
    runType = Field(Integer)
677
    totalSeller = Field(Integer)
678
    ourEnoughStock = Field(Boolean)
679
    marginIncreasedPotential = Field(Float)
680
    avgSale = Field(Float)
681
    multipleListings = Field(Boolean)
12431 kshitij.so 682
    isPromotion = Field(Boolean)
12363 kshitij.so 683
    proposedSp = Field(Float)
684
    proposedTp = Field(Float)
685
    targetNlc = Field(Float)
686
    decision = Field(Integer)
687
    reason = Field(String(255))
12841 kshitij.so 688
    exceptionType = Field(Integer)
12843 kshitij.so 689
    isNlcOverridden = Field(Boolean)
12363 kshitij.so 690
    timestamp =Field(DateTime, primary_key=True, autoincrement=False)
691
    using_options(shortnames=True)
692
    using_table_options(mysql_engine="InnoDB")
693
 
694
 
12620 amit.gupta 695
class ExclusiveAffiliateItemInfo(Entity):
696
    itemId = Field(Integer, primary_key=True, autoincrement=False)
697
    affiliateId = Field(Integer)
698
    offerText = Field(String(1023))
699
    offerUrl = Field(String(255))
700
    mOfferText = Field(String(1023))
701
    mOfferUrl = Field(String(255))
702
    affiliateSku = Field(String(255))
703
    affiliateUrl = Field(String(255))
704
    addedOn = Field(DateTime)
705
    updatedOn = Field(DateTime)
706
    isActive = Field(Boolean)
707
    using_options(shortnames=True)
708
    using_table_options(mysql_engine="InnoDB")
709
 
710
class OutboundAffiliateMaster(Entity):
711
    id = Field(Integer, primary_key=True, autoincrement=True)
712
    name = Field(String(100))
713
    using_options(shortnames=True)
714
    using_table_options(mysql_engine="InnoDB")
715
 
3187 rajveer 716
def initialize(dbname='catalog', db_hostname="localhost"):
746 rajveer 717
    #metadata.bind = "sqlite:///inventory-new.sqlite" #need to read it from configserver.
1122 chandransh 718
    #metadata.bind = 'mysql://root:shop2020@localhost/catalog'
6532 amit.gupta 719
    cengine = create_engine('mysql://root:shop2020@' + db_hostname + '/' + dbname, pool_recycle=7200)
720
    metadata.bind = cengine
12731 amit.gupta 721
    metadata.bind.echo = False
94 ashish 722
    setup_all(True)
115 ashish 723
 
724
if __name__=="__main__":
9242 kshitij.so 725
    initialize()