Subversion Repositories SmartDukaan

Rev

Rev 14780 | Rev 14865 | 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)
12888 kshitij.so 254
    fbgPrice = Field(Float)
7281 kshitij.so 255
    sellingPrice = Field(Float)
256
    isFba = Field(Boolean)
257
    isNonFba = Field(Boolean)
10909 vikram.rag 258
    isFbb = Field(Boolean)
12888 kshitij.so 259
    isFbg = Field(Boolean)
7281 kshitij.so 260
    isInventoryOverride = Field(Boolean)
12448 kshitij.so 261
    otherCost = Field(Float, default=0.0, server_default="0.0")
7281 kshitij.so 262
    color = Field(String(255))
263
    category = Field(String(255))
7367 kshitij.so 264
    handlingTime = Field(Integer)
265
    isCustomTime = Field(Boolean)
7516 vikram.rag 266
    category_code = Field(Integer, default=0, server_default="0")
10920 vikram.rag 267
    fbbListedOn = Field(DateTime)
7770 kshitij.so 268
    mfnPriceLastUpdatedOn = Field(DateTime)
269
    fbaPriceLastUpdatedOn = Field(DateTime)
10909 vikram.rag 270
    fbbPriceLastUpdatedOn = Field(DateTime)
12888 kshitij.so 271
    fbgPriceLastUpdatedOn = Field(DateTime)
7770 kshitij.so 272
    mfnPriceLastUpdatedOnSc = Field(DateTime)
273
    fbaPriceLastUpdatedOnSc = Field(DateTime)
10909 vikram.rag 274
    fbbPriceLastUpdatedOnSc = Field(DateTime)
12888 kshitij.so 275
    fbgPriceLastUpdatedOnSc = Field(DateTime)
8139 kshitij.so 276
    suppressMfnPriceUpdate = Field(Boolean)
8140 kshitij.so 277
    suppressFbaPriceUpdate = Field(Boolean)
10909 vikram.rag 278
    suppressFbbPriceUpdate = Field(Boolean)
12888 kshitij.so 279
    suppressFbgPriceUpdate = Field(Boolean)
8619 kshitij.so 280
    taxCode = Field(String(255))
10909 vikram.rag 281
    fbbtaxCode = Field(String(255))
12888 kshitij.so 282
    fbgtaxCode = Field(String(255))
12363 kshitij.so 283
    overrrideWanlc = Field(Boolean)
284
    exceptionalWanlc = Field(Float)
12396 kshitij.so 285
    autoDecrement = Field(Boolean)
286
    autoIncrement = Field(Boolean)
287
    autoFavourite = Field(Boolean)
288
    manualFavourite = Field(Boolean)
12663 kshitij.so 289
    fbaPromoPrice = Field(Float, default=0.0, server_default="0.0")
290
    fbbPromoPrice = Field(Float, default=0.0, server_default="0.0")
12888 kshitij.so 291
    fbgPromoPrice = Field(Float, default=0.0, server_default="0.0")
12719 kshitij.so 292
    fbaPromoStartDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
293
    fbaPromoEndDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
294
    fbbPromoStartDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
295
    fbbPromoEndDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
12888 kshitij.so 296
    fbgPromoStartDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
297
    fbgPromoEndDate = 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 298
    fbaPromotionActive = Field(Boolean)
299
    fbbPromotionActive = Field(Boolean)
12888 kshitij.so 300
    fbgPromotionActive = Field(Boolean)
7281 kshitij.so 301
    using_options(shortnames=True)
302
    using_table_options(mysql_engine="InnoDB")
303
 
7977 kshitij.so 304
class PageViewEvents(Entity):
305
    id = Field(Integer, primary_key=True, autoincrement=True)
8139 kshitij.so 306
    catalogId = Field(Integer,index=True)
307
    url = Field(String(255),index=True)
7977 kshitij.so 308
    sellingPrice = Field(Float)
309
    comingSoon = Field(Boolean)
310
    ip = Field(String(255))
311
    sessionId = Field(String(255))
8139 kshitij.so 312
    eventTimestamp = Field(DateTime,index=True)
7977 kshitij.so 313
    using_options(shortnames=True)
314
    using_table_options(mysql_engine="InnoDB")
315
 
316
class CartEvents(Entity):
317
    id = Field(Integer, primary_key=True, autoincrement=True)
8139 kshitij.so 318
    catalogId = Field(Integer,index=True)
319
    itemId = Field(Integer,index=True)
7977 kshitij.so 320
    sellingPrice = Field(Float)
321
    inStock = Field(Boolean)
322
    comingSoon = Field(Boolean)
323
    ip = Field(String(255))
324
    sessionId = Field(String(255))
8139 kshitij.so 325
    eventTimestamp = Field(DateTime,index=True)
7977 kshitij.so 326
    using_options(shortnames=True)
327
    using_table_options(mysql_engine="InnoDB")
328
 
8182 amar.kumar 329
class EbayItem(Entity):
330
    ebayListingId = Field(String(32), primary_key=True)
331
    itemId = Field(Integer, primary_key=True, autoincrement = False)
332
    listingName = Field(String(255))
333
    listingPrice = Field(Float)
334
    listingExpiryDate = Field(DateTime)
335
    subsidy = Field(Float)
336
    defaultWarehouseId = Field(Integer)
337
    using_options(shortnames=True)
338
    using_table_options(mysql_engine="InnoDB")
8739 vikram.rag 339
 
340
class SnapdealItem(Entity):
341
    item_id = Field(Integer, primary_key=True, autoincrement = False)
342
    exceptionPrice = Field(Float)
343
    warehouseId = Field(Integer)
9242 kshitij.so 344
    transferPrice = Field(Float)
345
    sellingPrice = Field(Float)
346
    courierCost =  Field(Float)
11095 kshitij.so 347
    courierCostMarketplace = Field(Float)
9242 kshitij.so 348
    commission  =  Field(Float)
349
    serviceTax  =  Field(Float)
350
    updatedOn = Field(DateTime)
9404 vikram.rag 351
    maxNlc = Field(Float)
9478 kshitij.so 352
    skuAtSnapdeal = Field(String(255))
9242 kshitij.so 353
    isListedOnSnapdeal = Field(Boolean)
354
    suppressPriceFeed = Field(Boolean)
355
    suppressInventoryFeed = Field(Boolean)
9568 kshitij.so 356
    supc = Field(String(255))
9724 kshitij.so 357
    shippingTime = Field(Integer)
9779 kshitij.so 358
    priceUpdatedBy = Field(String(255))
14780 manish.sha 359
    isVoiListed = Field(Boolean)
360
    voiSellingPrice = Field(Float)
361
    suppressVoiPriceFeed = Field(Boolean)
362
    voiPriceLastUpdatedOn = Field(DateTime)
363
    voiSkuAtSnapdeal = Field(String(255))
364
    minimumPossibleSpVoi = Field(Float)
365
    minimumPossibleTpVoi = Field(Float)
366
    courierCostVoi = Field(Float)
367
    serviceTaxVoi = Field(Float)
368
    transferPriceVoi = Field(Float)
369
    commissionVoi = Field(Float)
14862 manish.sha 370
    courierCostMarketplaceVoi = Field(Float)
371
    commissionPercentageVoi = Field(Float)
8739 vikram.rag 372
    using_options(shortnames=True)
373
    using_table_options(mysql_engine="InnoDB")
9242 kshitij.so 374
 
10097 kshitij.so 375
class MarketPlaceUpdateHistory(Entity):
9242 kshitij.so 376
    id  = Field(Integer, primary_key=True, autoincrement = True)
377
    item_id = Field(Integer)
10097 kshitij.so 378
    source = Field(Integer)
379
    isListedOnSource = Field(Boolean)
9242 kshitij.so 380
    exceptionPrice = Field(Float)
381
    warehouseId = Field(Integer)
382
    transferPrice = Field(Float)
383
    sellingPrice = Field(Float)
384
    courierCost =  Field(Float)
11095 kshitij.so 385
    courierCostMarketplace = Field(Float)
9242 kshitij.so 386
    commission  =  Field(Float)
387
    serviceTax  =  Field(Float)
388
    suppressPriceFeed = Field(Boolean)
389
    suppressInventoryFeed = Field(Boolean)
9478 kshitij.so 390
    maxNlc = Field(Float)
10097 kshitij.so 391
    skuAtSource = Field(String(255))
9242 kshitij.so 392
    updatedOn = Field(DateTime)
10097 kshitij.so 393
    marketPlaceSerialNumber = Field(String(255))
9779 kshitij.so 394
    priceUpdatedBy = Field(String(255))
9242 kshitij.so 395
    using_options(shortnames=True)
396
    using_table_options(mysql_engine="InnoDB")
9724 kshitij.so 397
 
398
class MarketplaceItems(Entity):
399
    itemId = Field(Integer,primary_key=True, autoincrement = False)
400
    source = Field(Integer,primary_key=True, autoincrement = False)
401
    emiFee = Field(Float)
402
    courierCost = Field(Float)
11095 kshitij.so 403
    courierCostMarketplace = Field(Float)
9724 kshitij.so 404
    closingFee = Field(Float)
405
    returnProvision = Field(Float)
406
    commission = Field(Float)
10287 kshitij.so 407
    pgFee = Field(Float)
9724 kshitij.so 408
    vat = Field(Float)
409
    packagingCost = Field(Float)
410
    otherCost = Field(Float)
411
    serviceTax = Field(Float)
412
    autoIncrement = Field(Boolean)
413
    autoDecrement = Field(Boolean)
414
    manualFavourite = Field(Boolean)
415
    autoFavourite = Field(Boolean)
416
    currentSp = Field(Float)
417
    currentTp = Field(Float)
418
    minimumPossibleSp = Field(Float)
419
    minimumPossibleTp = Field(Float)
9909 kshitij.so 420
    maximumSellingPrice = Field(Float)
9724 kshitij.so 421
    lastCheckedTimestamp = Field(DateTime)
422
    using_options(shortnames=True)
423
    using_table_options(mysql_engine="InnoDB")
7977 kshitij.so 424
 
9621 manish.sha 425
class ProductFeedSubmit(Entity):
426
    catalogItemId = Field(Integer, primary_key=True)
427
    stockLinkedFeed = Field(Boolean)
428
    using_options(shortnames=True)
429
    using_table_options(mysql_engine="InnoDB")
9776 vikram.rag 430
 
431
class MarketPlaceItemPrice(Entity):    
432
    item_id = Field(Integer, primary_key=True, autoincrement=False)
433
    source = Field(Integer, primary_key=True, autoincrement=False)
434
    sellingPrice = Field(Float)
435
    lastUpdatedOn = Field(DateTime)
436
    lastUpdatedOnMarketplace = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 15:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
437
    suppressPriceFeed = Field(Boolean)
438
    isListedOnSource =  Field(Boolean)
439
    using_options(shortnames=True)
440
    using_table_options(mysql_engine="InnoDB")
9242 kshitij.so 441
 
9779 kshitij.so 442
class SourcePercentageMaster(Entity):
443
    source = Field(Integer, primary_key=True, autoincrement=False)
444
    emiFee = Field(Float)
445
    closingFee = Field(Float)
446
    returnProvision = Field(Float)
447
    commission = Field(Float)
10287 kshitij.so 448
    pgFee = Field(Float)
9884 kshitij.so 449
    competitorCommissionAccessory = Field(Float)
450
    competitorCommissionOther = Field(Float)
9779 kshitij.so 451
    serviceTax = Field(Float)
452
    using_options(shortnames=True)
453
    using_table_options(mysql_engine="InnoDB")
454
 
455
class SourceItemPercentage(Entity):
456
    item_id = Field(Integer, primary_key=True, autoincrement=False)
457
    source = Field(Integer, primary_key=True, autoincrement=False)
458
    emiFee = Field(Float)
459
    closingFee = Field(Float)
460
    returnProvision = Field(Float)
461
    commission = Field(Float)
10287 kshitij.so 462
    pgFee = Field(Float)
9884 kshitij.so 463
    competitorCommissionAccessory = Field(Float)
464
    competitorCommissionOther = Field(Float)
9779 kshitij.so 465
    serviceTax = Field(Float)
10097 kshitij.so 466
    startDate = Field(DateTime, primary_key=True, autoincrement=False)
467
    expiryDate = Field(DateTime)
9779 kshitij.so 468
    using_options(shortnames=True)
469
    using_table_options(mysql_engine="InnoDB")
470
 
10097 kshitij.so 471
class SourceCategoryPercentage(Entity):
472
    category_id = Field(Integer, primary_key=True, autoincrement=False)
473
    source = Field(Integer, primary_key=True, autoincrement=False)
474
    emiFee = Field(Float)
475
    closingFee = Field(Float)
476
    returnProvision = Field(Float)
477
    commission = Field(Float)
10287 kshitij.so 478
    pgFee = Field(Float)
10097 kshitij.so 479
    competitorCommissionAccessory = Field(Float)
480
    competitorCommissionOther = Field(Float)
481
    serviceTax = Field(Float)
482
    startDate = Field(DateTime, primary_key=True, autoincrement=False)
483
    expiryDate = Field(DateTime)
484
    using_options(shortnames=True)
485
    using_table_options(mysql_engine="InnoDB")
486
 
9884 kshitij.so 487
class MarketPlaceHistory(Entity):
488
    item_id = Field(Integer, primary_key=True, autoincrement=False)
489
    source = Field(Integer, primary_key=True, autoincrement=False)
490
    lowestPossibleTp = Field(Float)
491
    lowestPossibleSp = Field(Float)
492
    ourInventory = Field(Integer)
493
    otherInventory = Field(Integer)
494
    secondLowestInventory = Field(Integer)
495
    ourRank = Field(Integer)
11193 kshitij.so 496
    ourOfferPrice = Field(Float)
497
    ourSellingPrice = Field(Float)
498
    ourTp = Field(Float)
499
    ourNlc = Field(Float)
500
    ourRating = Field(Float)
501
    ourShippingTime = Field(String(10))
9884 kshitij.so 502
    competitionBasis = Field(Integer)
503
    competitiveCategory = Field(Integer)
504
    risky = Field(Boolean)
505
    lowestOfferPrice = Field(Float)
506
    lowestSellingPrice = Field(Float)
11193 kshitij.so 507
    lowestTp = Field(Float)
9884 kshitij.so 508
    lowestSellerName = Field(String(255))
509
    lowestSellerCode = Field(String(255))
11193 kshitij.so 510
    lowestSellerRating = Field(Float)
511
    lowestSellerShippingTime = Field(String(10))
9884 kshitij.so 512
    proposedSellingPrice = Field(Float)
513
    proposedTp = Field(Float)
514
    targetNlc = Field(Float)
515
    salesPotential = Field(Integer)
516
    secondLowestSellerName = Field(String(255))
517
    secondLowestSellerCode = Field(String(255))
518
    secondLowestSellingPrice = Field(Float)
519
    secondLowestOfferPrice = Field(Float)
520
    secondLowestTp = Field(Float)
11193 kshitij.so 521
    secondLowestSellerRating = Field(Float)
522
    secondLowestSellerShippingTime = Field(String(10))
523
    prefferedSellerName = Field(String(255))
524
    prefferedSellerCode = Field(String(255))
525
    prefferedSellerSellingPrice = Field(Float)
526
    prefferedSellerOfferPrice = Field(Float)
527
    prefferedSellerTp = Field(Float)
528
    prefferedSellerRating = Field(Float)
529
    prefferedSellerShippingTime = Field(String(10))
9884 kshitij.so 530
    marginIncreasedPotential = Field(Float)
531
    margin = Field(Float)
532
    competitorEnoughStock = Field(Boolean)
533
    ourEnoughStock = Field(Boolean)
534
    totalSeller = Field(Integer)
535
    avgSales = Field(Float)
536
    decision = Field(Integer)
9909 kshitij.so 537
    reason = Field(String(255))
9949 kshitij.so 538
    run = Field(Integer)
11193 kshitij.so 539
    toGroup = Field(Boolean)
9884 kshitij.so 540
    timestamp =Field(DateTime, primary_key=True, autoincrement=False)
541
    using_options(shortnames=True)
542
    using_table_options(mysql_engine="InnoDB")
11193 kshitij.so 543
 
9884 kshitij.so 544
 
9945 vikram.rag 545
class FlipkartItem(Entity):
546
    item_id = Field(Integer, primary_key=True, autoincrement = False)
547
    exceptionPrice = Field(Float)
548
    warehouseId = Field(Integer)
549
    commissionValue  =  Field(Float)
550
    serviceTaxValue  =  Field(Float)
551
    maxNlc = Field(Float)
552
    skuAtFlipkart = Field(String(255))
553
    isListedOnFlipkart = Field(Boolean)
554
    suppressPriceFeed = Field(Boolean)
555
    suppressInventoryFeed = Field(Boolean)
10097 kshitij.so 556
    flipkartSerialNumber = Field(String(255))
9945 vikram.rag 557
    updatedOn = Field(DateTime)
558
    updatedBy = Field(String(255))
14780 manish.sha 559
    isFaListed = Field(Boolean)
9945 vikram.rag 560
    using_options(shortnames=True)
561
    using_table_options(mysql_engine="InnoDB")
13709 manish.sha 562
 
563
'''    
564
class DealTag(Entity):
565
    id = Field(Integer, primary_key=True, autoincrement = True)
566
    name = Field(String(100))
567
    using_options(shortnames=True)
568
    using_table_options(mysql_engine="InnoDB")
569
 
570
class ItemTag(Entity): 
571
    itemId= Field(Integer, primary_key=True)
572
    tagId = Field(Integer, primary_key=True)
573
    startDate = Field(DateTime)
574
    endDate = Field(DateTime)
575
    status = Field(Boolean)
576
    using_options(shortnames=True)
577
    using_table_options(mysql_engine="InnoDB")
578
'''
579
 
11531 vikram.rag 580
class PrivateDeals(Entity):   
581
    item_id = Field(Integer, primary_key=True, autoincrement = False)
582
    dealFreebieItemId =  Field(Integer)
583
    dealPrice = Field(Float)
584
    startDate = Field(DateTime)
585
    endDate = Field(DateTime)
11566 vikram.rag 586
    dealTextOption = Field(Integer)
11531 vikram.rag 587
    dealText = Field(String(500))
588
    isCod =  Field(Boolean)
589
    rank = Field(Integer)
11566 vikram.rag 590
    dealFreebieOption = Field(Integer)
11606 vikram.rag 591
    isActive = Field(Boolean)
13493 amit.gupta 592
    minLot = Field(Integer)
593
    lotDealPrice = Field(Float)
11531 vikram.rag 594
    using_options(shortnames=True)
595
    using_table_options(mysql_engine="InnoDB")
11816 kshitij.so 596
 
597
class AmazonOutOfSync(Entity):
598
    item_id = Field(Integer, primary_key=True, autoincrement = False)
599
    mfn = Field(Boolean)
600
    fba = Field(Boolean)
601
    fbb = Field(Boolean)
602
    using_options(shortnames=True)
603
    using_table_options(mysql_engine="InnoDB")
11531 vikram.rag 604
 
11905 kshitij.so 605
class PrivateDealsPriceComparison(Entity):
606
    item_id= Field(Integer, primary_key=True, autoincrement=False)
12133 kshitij.so 607
    asin = Field(String(20))
608
    fsn = Field(String(20))
609
    supc = Field(String(20))
11905 kshitij.so 610
    sdPrice = Field(Float)
611
    fkPrice  = Field(Float)
612
    amazonPrice = Field(Float)
613
    dealPrice = Field(Float)
614
    saholicPrice = Field(Float)
615
    lastProcessedTimestamp = Field(DateTime)
616
    using_options(shortnames=True)
617
    using_table_options(mysql_engine="InnoDB")
11531 vikram.rag 618
 
12133 kshitij.so 619
class SourceReturnPercentage(Entity):
620
    source = Field(Integer)
621
    brand = Field(String(100))
622
    category_id = Field(Integer)
623
    returnProvision = Field(Float)
624
    using_options(shortnames=True)
625
    using_table_options(mysql_engine="InnoDB")
12256 kshitij.so 626
 
627
class CompetitorPricingRequest(Entity):
628
    requestId = Field(BigInteger, primary_key=True,autoincrement=False)
629
    user = Field(String(50))
630
    isProcessed = Field(Boolean)
631
    competitorPricing = OneToMany("CompetitorPricing")
632
    using_options(shortnames=True)
633
    using_table_options(mysql_engine="InnoDB")
12243 kshitij.so 634
 
635
class CompetitorPricing(Entity):
636
    item_id = Field(Integer)
637
    snapdealScraping = Field(Boolean)
638
    flipkartScraping = Field(Boolean)
639
    amazonScraping = Field(Boolean)
12256 kshitij.so 640
    ourSnapdealPrice = Field(Float)
641
    ourSnapdealOfferPrice = Field(Float)
642
    ourSnapdealInventory = Field(Integer)
12243 kshitij.so 643
    lowestSnapdealPrice = Field(Float)
12256 kshitij.so 644
    lowestSnapdealOfferPrice = Field(Float)
645
    lowestSnapdealSeller = Field(String(255))
646
    lowestSnapdealSellerInventory = Field(Integer)
647
    ourFlipkartPrice = Field(Float)
648
    ourFlipkartInventory = Field(Integer)
12243 kshitij.so 649
    lowestFlipkartPrice = Field(Float)
12256 kshitij.so 650
    lowestFlipkartSeller = Field(String(255))
651
    ourMfnPrice = Field(Float)
652
    ourFbaPrice = Field(Float)
653
    ourMfnInventory = Field(Integer)
654
    ourFbaInventory = Field(Integer)
655
    lowestAmazonPrice = Field(Float)
656
    lowestAmazonSeller = Field(String(255))
657
    competitorPricing = ManyToOne("CompetitorPricingRequest")
12243 kshitij.so 658
    using_options(shortnames=True)
659
    using_table_options(mysql_engine="InnoDB")
12363 kshitij.so 660
 
661
class AmazonPromotion(Entity):
662
    sku = Field(String(20))
663
    standardPrice = Field(Float)
664
    salePrice = Field(Float)
12431 kshitij.so 665
    subsidy = Field(Float)
12363 kshitij.so 666
    startDate = Field(DateTime)
667
    endDate = Field(DateTime)
668
    addedOn = Field(DateTime)
669
    updatedOnMarketplace = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
670
    promotionActive = Field(Boolean)
671
    stateId = Field(Integer)
672
    promotionType = Field(Integer)
673
    using_options(shortnames=True)
674
    using_table_options(mysql_engine="InnoDB")
12133 kshitij.so 675
 
12363 kshitij.so 676
class AmazonScrapingHistory(Entity):
677
    item_id = Field(Integer, primary_key=True, autoincrement=False)
12472 kshitij.so 678
    asin = Field(String(255))
12363 kshitij.so 679
    warehouseLocation = Field(Integer, primary_key=True, autoincrement=False)
12396 kshitij.so 680
    parentCategoryId = Field(Integer)
12363 kshitij.so 681
    ourSellingPrice = Field(Float)
12474 kshitij.so 682
    promoPrice = Field(Float)
12511 kshitij.so 683
    subsidy = Field(Float)
12363 kshitij.so 684
    lowestPossibleSp = Field(Float)
685
    ourRank = Field(Integer)
686
    ourInventory = Field(Integer)
687
    lowestSellerName = Field(String(255))
688
    lowestSellerSp = Field(Float)
12431 kshitij.so 689
    lowestSellerShippingTime = Field(String(10))
690
    lowestSellerRating = Field(String(10))
691
    lowestSellerType = Field(String(20))
12363 kshitij.so 692
    secondLowestSellerName = Field(String(255))
693
    secondLowestSellerSp = Field(Float)
12431 kshitij.so 694
    secondLowestSellerShippingTime = Field(String(10))
695
    secondLowestSellerRating = Field(String(10))
696
    secondLowestSellerType = Field(String(20))
12363 kshitij.so 697
    thirdLowestSellerName = Field(String(255))
698
    thirdLowestSellerSp = Field(Float)
12431 kshitij.so 699
    thirdLowestSellerShippingTime = Field(String(10))
700
    thirdLowestSellerRating = Field(String(10))
701
    thirdLowestSellerType = Field(String(20))
12363 kshitij.so 702
    competitiveCategory = Field(Integer)
12448 kshitij.so 703
    otherCost = Field(Float)
12597 kshitij.so 704
    isLowestMfnIgnored = Field(Boolean)
705
    lowestMfnIgnoredOffer = Field(Float)
706
    isLowestMfn = Field(Boolean)
707
    lowestMfnOffer = Field(Float)
708
    isLowestFba = Field(Boolean)
709
    lowestFbaOffer = Field(Float)
710
    competitivePrice = Field(Float)
711
    cheapestMfnCount = Field(Boolean)
12363 kshitij.so 712
    wanlc = Field(Float)
713
    commission = Field(Float)
714
    competitorCommission = Field(Float)
715
    returnProvision = Field(Float)
12511 kshitij.so 716
    vatRate = Field(Float)
12363 kshitij.so 717
    courierCost = Field(Float)
718
    risky = Field(Boolean)
719
    runType = Field(Integer)
720
    totalSeller = Field(Integer)
721
    ourEnoughStock = Field(Boolean)
722
    marginIncreasedPotential = Field(Float)
723
    avgSale = Field(Float)
724
    multipleListings = Field(Boolean)
12431 kshitij.so 725
    isPromotion = Field(Boolean)
12363 kshitij.so 726
    proposedSp = Field(Float)
727
    proposedTp = Field(Float)
728
    targetNlc = Field(Float)
729
    decision = Field(Integer)
730
    reason = Field(String(255))
12841 kshitij.so 731
    exceptionType = Field(Integer)
12843 kshitij.so 732
    isNlcOverridden = Field(Boolean)
12363 kshitij.so 733
    timestamp =Field(DateTime, primary_key=True, autoincrement=False)
734
    using_options(shortnames=True)
735
    using_table_options(mysql_engine="InnoDB")
736
 
737
 
12620 amit.gupta 738
class ExclusiveAffiliateItemInfo(Entity):
739
    itemId = Field(Integer, primary_key=True, autoincrement=False)
740
    affiliateId = Field(Integer)
741
    offerText = Field(String(1023))
742
    offerUrl = Field(String(255))
743
    mOfferText = Field(String(1023))
744
    mOfferUrl = Field(String(255))
745
    affiliateSku = Field(String(255))
746
    affiliateUrl = Field(String(255))
747
    addedOn = Field(DateTime)
748
    updatedOn = Field(DateTime)
749
    isActive = Field(Boolean)
750
    using_options(shortnames=True)
751
    using_table_options(mysql_engine="InnoDB")
752
 
753
class OutboundAffiliateMaster(Entity):
754
    id = Field(Integer, primary_key=True, autoincrement=True)
755
    name = Field(String(100))
756
    using_options(shortnames=True)
757
    using_table_options(mysql_engine="InnoDB")
13709 manish.sha 758
 
759
class HsItem(Entity):
760
    hsItemId = Field(String(32), primary_key=True)
761
    itemId = Field(Integer, primary_key=True, autoincrement = False)
762
    hsProductId = Field(String(32))
763
    listingPrice = Field(Float)
764
    defaultWarehouseId = Field(Integer)
765
    addedTimestamp = Field(DateTime)
766
    addedBy = Field(String(100))
767
    using_options(shortnames=True)
768
    using_table_options(mysql_engine="InnoDB")
12620 amit.gupta 769
 
14862 manish.sha 770
class VoiSnapdealItemInfo(Entity):
771
    item_id = Field(Integer, primary_key=True, autoincrement = False)
772
    voiSkuAtSnapdeal = Field(String(255))
773
    sellingPriceSnapdeal = Field(Float)
774
    transferPriceSnapdeal = Field(Float)
775
    fixedMargin = Field(Float)
776
    fixedMarginPercentage = Field(Float)
777
    logisticCostSnapdeal = Field(Float)
778
    woodenPackagingCost = Field(Float)
779
    weightSnapdeal = Field(Float)
780
 
3187 rajveer 781
def initialize(dbname='catalog', db_hostname="localhost"):
746 rajveer 782
    #metadata.bind = "sqlite:///inventory-new.sqlite" #need to read it from configserver.
1122 chandransh 783
    #metadata.bind = 'mysql://root:shop2020@localhost/catalog'
6532 amit.gupta 784
    cengine = create_engine('mysql://root:shop2020@' + db_hostname + '/' + dbname, pool_recycle=7200)
785
    metadata.bind = cengine
14862 manish.sha 786
    metadata.bind.echo = True
94 ashish 787
    setup_all(True)
115 ashish 788
 
789
if __name__=="__main__":
9242 kshitij.so 790
    initialize()