Subversion Repositories SmartDukaan

Rev

Rev 18002 | Rev 18414 | 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)
18150 kshitij.so 65
    packQuantity = Field(Integer, default=1, server_default="1")
66
    quantityStep = Field(Integer, default=1, server_default="1")
67
    minimumBuyQuantity = Field(Integer, default=1, server_default="1")
746 rajveer 68
    using_options(shortnames=True)
69
    using_table_options(mysql_engine="InnoDB")
103 ashish 70
 
94 ashish 71
    def __repr__(self):
122 ashish 72
        return "<Item>%d</item>" % (self.id)
1308 chandransh 73
 
7330 amit.gupta 74
class ItemVatMaster(Entity):
75
    itemId = Field(Integer, primary_key=True,  autoincrement=False)
76
    stateId = Field(Integer, primary_key=True,  autoincrement=False)
77
    vatPercentage = Field(Float)
78
    using_options(shortnames=True)
79
    using_table_options(mysql_engine="InnoDB")
80
 
81
 
103 ashish 82
class ItemChangeLog(Entity):
122 ashish 83
    id = Field(Integer, primary_key=True, autoincrement=True)
103 ashish 84
    old_status = Field(Integer)
85
    new_status = Field(Integer)
1308 chandransh 86
    timestamp = Field(DateTime)
103 ashish 87
    item = ManyToOne("Item")
746 rajveer 88
    using_options(shortnames=True)
89
    using_table_options(mysql_engine="InnoDB")
94 ashish 90
 
103 ashish 91
    def __repr__(self):
92
        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 93
 
635 rajveer 94
class Category(Entity):
1970 rajveer 95
    id = Field(Integer, primary_key=True, autoincrement=False)
96
    label = Field(String(50))
97
    description = Field(String(200))
98
    parent_category_id = Field(Integer)
4762 phani.kuma 99
    display_name = Field(String(50))
746 rajveer 100
    using_options(shortnames=True)
101
    using_table_options(mysql_engine="InnoDB")
1970 rajveer 102
 
3008 rajveer 103
class SimilarItems(Entity):
104
    item = ManyToOne('Item', primary_key=True)
105
    catalog_item_id = Field(Integer, primary_key=True, autoincrement=False)
106
    using_options(shortnames=True)
107
    using_table_options(mysql_engine="InnoDB")
108
 
3079 rajveer 109
class ProductNotification(Entity):
110
    item = ManyToOne('Item', primary_key=True)
111
    email = Field(String(100), primary_key=True, autoincrement=False)
112
    addedOn = Field(DateTime, primary_key=True, autoincrement=False) 
113
    using_options(shortnames=True)
114
    using_table_options(mysql_engine="InnoDB")
3557 rajveer 115
 
116
class Source(Entity):
117
    id = Field(Integer, primary_key=True, autoincrement=True)
118
    name = Field(String(50))
119
    identifier = Field(String(100))
120
    using_options(shortnames=True)
121
    using_table_options(mysql_engine="InnoDB")
6511 kshitij.so 122
 
3557 rajveer 123
class SourceItemPricing(Entity):
124
    source = ManyToOne('Source', primary_key=True)
125
    item = ManyToOne('Item', primary_key=True)
126
    mrp = Field(Float)
127
    sellingPrice = Field(Float)
128
    using_options(shortnames=True)
129
    using_table_options(mysql_engine="InnoDB")
746 rajveer 130
 
4649 phani.kuma 131
class AuthorizationLog(Entity):
132
    id = Field(Integer, primary_key=True, autoincrement = True)    
133
    timestamp = Field(DateTime, default=datetime.datetime.now())
134
    item = ManyToOne('Item')
135
    username = Field(String(30))
136
    reason = Field(Text)
137
    using_options(shortnames=True)
138
    using_table_options(mysql_engine="InnoDB")
139
 
5504 phani.kuma 140
class VoucherItemMapping(Entity):
5512 rajveer 141
    voucherType = Field(Integer, primary_key=True)
5504 phani.kuma 142
    item = ManyToOne('Item', primary_key=True)
143
    amount = Field(Integer, default=0, server_default="0")
144
    using_options(shortnames=True)
145
    using_table_options(mysql_engine="InnoDB")
146
 
6039 amit.gupta 147
class CategoryVatMaster(Entity):
7330 amit.gupta 148
    categoryId = Field(Integer, primary_key=True, autoincrement=False)
149
    stateId = Field(Integer, primary_key=True, autoincrement=False)
150
    minVal = Field(Integer, primary_key=True,  autoincrement=False)
151
    maxVal = Field(Integer, primary_key=True,  autoincrement=False)
6039 amit.gupta 152
    vatPercent = Field(Float)
153
    using_options(shortnames=True)
154
    using_table_options(mysql_engine="InnoDB")
155
 
6255 rajveer 156
class OOSTracker(Entity):
157
    itemId = Field(Integer, primary_key=True)
158
    using_options(shortnames=True)
159
    using_table_options(mysql_engine="InnoDB")
6532 amit.gupta 160
 
161
class EntityTag(Entity):
162
    tag = Field(String(100),primary_key=True)
163
    entityId = Field(Integer, primary_key=True, autoincrement=False)
164
    using_options(shortnames=True)
165
    using_table_options(mysql_engine="InnoDB")
6848 kshitij.so 166
 
167
class Banner(Entity):
168
    bannerName = Field(String(100),primary_key=True)
169
    imageName = Field(String(100))
170
    link = Field(String(400))
171
    priority = Field(Integer)
172
    hasMap = Field(Boolean)
9156 amit.gupta 173
    bannerType = Field(Integer,primary_key=True, autoincrement=False)
6848 kshitij.so 174
    using_options(shortnames=True)
175
    using_table_options(mysql_engine="InnoDB")
176
 
177
class BannerMap(Entity):
178
    bannerName = Field(String(100))
179
    mapLink = Field(String(400))
180
    coordinates = Field(String(20))
9155 kshitij.so 181
    bannerType = Field(Integer)
6848 kshitij.so 182
    using_options(shortnames=True)
183
    using_table_options(mysql_engine="InnoDB")
8579 kshitij.so 184
 
185
class BannerUriMapping(Entity):
186
    bannerName = Field(String(100))
187
    uri = Field(String(100))
188
    isActive = Field(Boolean)
9155 kshitij.so 189
    bannerType = Field(Integer)
10097 kshitij.so 190
    target = Field(Boolean)
8579 kshitij.so 191
    using_options(shortnames=True)
192
    using_table_options(mysql_engine="InnoDB")
193
 
194
class Campaign(Entity):
195
    id = Field(Integer,primary_key=True)
196
    campaignName = Field(String(255))
197
    imageName = Field(String(255))
198
    using_options(shortnames=True)
199
    using_table_options(mysql_engine="InnoDB")
6255 rajveer 200
 
6805 anupam.sin 201
class ItemInsurerMapping(Entity):
202
    id = Field(Integer, primary_key=True, autoincrement=True)
203
    itemId = Field(Integer)
204
    insurerId = Field(Integer)
205
    premiumType = Field(Integer)
206
    premiumAmount = Field(Float)
9299 kshitij.so 207
    insurerType = Field(Integer)
6805 anupam.sin 208
    using_options(shortnames=True)
209
    using_table_options(mysql_engine="InnoDB")
210
 
211
class Insurer(Entity):
212
    id = Field(Integer, primary_key=True, autoincrement=True)
213
    name = Field(String(255))
214
    address = Field(String(255))
6903 anupam.sin 215
    declaredAmount = Field(BigInteger)
216
    creditedAmount = Field(BigInteger)
9299 kshitij.so 217
    insurerType = Field(Integer)
6805 anupam.sin 218
    using_options(shortnames=True)
219
    using_table_options(mysql_engine="InnoDB")
7190 amar.kumar 220
 
221
class FreebieItem(Entity):
222
    itemId = Field(Integer, primary_key=True)
223
    freebieItemId = Field(Integer)
224
    using_options(shortnames=True)
225
    using_table_options(mysql_engine="InnoDB")
7256 rajveer 226
 
7272 amit.gupta 227
class BrandInfo(Entity):
228
    name = Field(String(255), primary_key=True)
229
    serviceCenterLocatorUrl = Field(String(255))
230
    using_options(shortnames=True)
231
    using_table_options(mysql_engine="InnoDB")
232
 
7256 rajveer 233
class StorePricing(Entity):
234
    item = ManyToOne('Item', primary_key=True)
235
    recommendedPrice = Field(Float)
236
    minPrice = Field(Float)
237
    maxPrice = Field(Float)
238
    minAdvancePrice = Field(Float)
7308 rajveer 239
    freebieItemId = Field(Integer)
7351 rajveer 240
    absoluteMinPrice = Field(Float)
7308 rajveer 241
    bestDealText = Field(String(100))
7256 rajveer 242
    using_options(shortnames=True)
7291 vikram.rag 243
    using_table_options(mysql_engine="InnoDB")    
244
 
7281 kshitij.so 245
class Amazonlisted(Entity):
7396 kshitij.so 246
    itemId = Field(Integer, primary_key=True, autoincrement=False)
7281 kshitij.so 247
    asin = Field(String(255))
248
    name = Field(String(255))
249
    brand = Field(String(255))
250
    model = Field(String(255))
251
    manufacturer_name = Field(String(255))
252
    part_number = Field(String(255))
253
    ean = Field(String(255))
254
    upc = Field(String(255))
255
    fbaPrice = Field(Float)
10909 vikram.rag 256
    fbbPrice = Field(Float)
12888 kshitij.so 257
    fbgPrice = Field(Float)
15687 kshitij.so 258
    fbdPrice = Field(Float)
7281 kshitij.so 259
    sellingPrice = Field(Float)
260
    isFba = Field(Boolean)
261
    isNonFba = Field(Boolean)
10909 vikram.rag 262
    isFbb = Field(Boolean)
12888 kshitij.so 263
    isFbg = Field(Boolean)
15687 kshitij.so 264
    isFbd = Field(Boolean)
7281 kshitij.so 265
    isInventoryOverride = Field(Boolean)
12448 kshitij.so 266
    otherCost = Field(Float, default=0.0, server_default="0.0")
7281 kshitij.so 267
    color = Field(String(255))
268
    category = Field(String(255))
7367 kshitij.so 269
    handlingTime = Field(Integer)
270
    isCustomTime = Field(Boolean)
7516 vikram.rag 271
    category_code = Field(Integer, default=0, server_default="0")
10920 vikram.rag 272
    fbbListedOn = Field(DateTime)
7770 kshitij.so 273
    mfnPriceLastUpdatedOn = Field(DateTime)
274
    fbaPriceLastUpdatedOn = Field(DateTime)
10909 vikram.rag 275
    fbbPriceLastUpdatedOn = Field(DateTime)
12888 kshitij.so 276
    fbgPriceLastUpdatedOn = Field(DateTime)
15687 kshitij.so 277
    fbdPriceLastUpdatedOn = Field(DateTime)
7770 kshitij.so 278
    mfnPriceLastUpdatedOnSc = Field(DateTime)
279
    fbaPriceLastUpdatedOnSc = Field(DateTime)
10909 vikram.rag 280
    fbbPriceLastUpdatedOnSc = Field(DateTime)
12888 kshitij.so 281
    fbgPriceLastUpdatedOnSc = Field(DateTime)
15687 kshitij.so 282
    fbdPriceLastUpdatedOnSc = Field(DateTime)
8139 kshitij.so 283
    suppressMfnPriceUpdate = Field(Boolean)
8140 kshitij.so 284
    suppressFbaPriceUpdate = Field(Boolean)
10909 vikram.rag 285
    suppressFbbPriceUpdate = Field(Boolean)
12888 kshitij.so 286
    suppressFbgPriceUpdate = Field(Boolean)
15687 kshitij.so 287
    suppressFbdPriceUpdate = Field(Boolean)
8619 kshitij.so 288
    taxCode = Field(String(255))
10909 vikram.rag 289
    fbbtaxCode = Field(String(255))
12888 kshitij.so 290
    fbgtaxCode = Field(String(255))
15687 kshitij.so 291
    fbdtaxCode = Field(String(255))
12363 kshitij.so 292
    overrrideWanlc = Field(Boolean)
293
    exceptionalWanlc = Field(Float)
12396 kshitij.so 294
    autoDecrement = Field(Boolean)
295
    autoIncrement = Field(Boolean)
296
    autoFavourite = Field(Boolean)
297
    manualFavourite = Field(Boolean)
12663 kshitij.so 298
    fbaPromoPrice = Field(Float, default=0.0, server_default="0.0")
299
    fbbPromoPrice = Field(Float, default=0.0, server_default="0.0")
12888 kshitij.so 300
    fbgPromoPrice = Field(Float, default=0.0, server_default="0.0")
15687 kshitij.so 301
    fbdPromoPrice = Field(Float, default=0.0, server_default="0.0")
12719 kshitij.so 302
    fbaPromoStartDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
303
    fbaPromoEndDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
304
    fbbPromoStartDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
305
    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 306
    fbgPromoStartDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
307
    fbgPromoEndDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
15687 kshitij.so 308
    fbdPromoStartDate = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
309
    fbdPromoEndDate = 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 310
    fbaPromotionActive = Field(Boolean)
311
    fbbPromotionActive = Field(Boolean)
12888 kshitij.so 312
    fbgPromotionActive = Field(Boolean)
15687 kshitij.so 313
    fbdPromotionActive = Field(Boolean)
314
    packagingHeight = Field(Float)
315
    packagingLength = Field(Float)
316
    packagingWidth = Field(Float)
317
    packagingWeight = Field(Float)
7281 kshitij.so 318
    using_options(shortnames=True)
319
    using_table_options(mysql_engine="InnoDB")
320
 
7977 kshitij.so 321
class PageViewEvents(Entity):
322
    id = Field(Integer, primary_key=True, autoincrement=True)
8139 kshitij.so 323
    catalogId = Field(Integer,index=True)
324
    url = Field(String(255),index=True)
7977 kshitij.so 325
    sellingPrice = Field(Float)
326
    comingSoon = Field(Boolean)
327
    ip = Field(String(255))
328
    sessionId = Field(String(255))
8139 kshitij.so 329
    eventTimestamp = Field(DateTime,index=True)
7977 kshitij.so 330
    using_options(shortnames=True)
331
    using_table_options(mysql_engine="InnoDB")
332
 
333
class CartEvents(Entity):
334
    id = Field(Integer, primary_key=True, autoincrement=True)
8139 kshitij.so 335
    catalogId = Field(Integer,index=True)
336
    itemId = Field(Integer,index=True)
7977 kshitij.so 337
    sellingPrice = Field(Float)
338
    inStock = Field(Boolean)
339
    comingSoon = Field(Boolean)
340
    ip = Field(String(255))
341
    sessionId = Field(String(255))
8139 kshitij.so 342
    eventTimestamp = Field(DateTime,index=True)
7977 kshitij.so 343
    using_options(shortnames=True)
344
    using_table_options(mysql_engine="InnoDB")
345
 
8182 amar.kumar 346
class EbayItem(Entity):
347
    ebayListingId = Field(String(32), primary_key=True)
348
    itemId = Field(Integer, primary_key=True, autoincrement = False)
349
    listingName = Field(String(255))
350
    listingPrice = Field(Float)
351
    listingExpiryDate = Field(DateTime)
352
    subsidy = Field(Float)
353
    defaultWarehouseId = Field(Integer)
354
    using_options(shortnames=True)
355
    using_table_options(mysql_engine="InnoDB")
8739 vikram.rag 356
 
357
class SnapdealItem(Entity):
358
    item_id = Field(Integer, primary_key=True, autoincrement = False)
359
    exceptionPrice = Field(Float)
360
    warehouseId = Field(Integer)
9242 kshitij.so 361
    transferPrice = Field(Float)
362
    sellingPrice = Field(Float)
363
    courierCost =  Field(Float)
11095 kshitij.so 364
    courierCostMarketplace = Field(Float)
9242 kshitij.so 365
    commission  =  Field(Float)
366
    serviceTax  =  Field(Float)
367
    updatedOn = Field(DateTime)
9404 vikram.rag 368
    maxNlc = Field(Float)
9478 kshitij.so 369
    skuAtSnapdeal = Field(String(255))
9242 kshitij.so 370
    isListedOnSnapdeal = Field(Boolean)
371
    suppressPriceFeed = Field(Boolean)
372
    suppressInventoryFeed = Field(Boolean)
9568 kshitij.so 373
    supc = Field(String(255))
9724 kshitij.so 374
    shippingTime = Field(Integer)
9779 kshitij.so 375
    priceUpdatedBy = Field(String(255))
14780 manish.sha 376
    isVoiListed = Field(Boolean)
377
    voiSellingPrice = Field(Float)
378
    suppressVoiPriceFeed = Field(Boolean)
379
    voiPriceLastUpdatedOn = Field(DateTime)
380
    voiSkuAtSnapdeal = Field(String(255))
381
    minimumPossibleSpVoi = Field(Float)
382
    minimumPossibleTpVoi = Field(Float)
383
    courierCostVoi = Field(Float)
384
    serviceTaxVoi = Field(Float)
385
    transferPriceVoi = Field(Float)
386
    commissionVoi = Field(Float)
14862 manish.sha 387
    courierCostMarketplaceVoi = Field(Float)
388
    commissionPercentageVoi = Field(Float)
8739 vikram.rag 389
    using_options(shortnames=True)
390
    using_table_options(mysql_engine="InnoDB")
9242 kshitij.so 391
 
10097 kshitij.so 392
class MarketPlaceUpdateHistory(Entity):
9242 kshitij.so 393
    id  = Field(Integer, primary_key=True, autoincrement = True)
394
    item_id = Field(Integer)
10097 kshitij.so 395
    source = Field(Integer)
396
    isListedOnSource = Field(Boolean)
9242 kshitij.so 397
    exceptionPrice = Field(Float)
398
    warehouseId = Field(Integer)
399
    transferPrice = Field(Float)
400
    sellingPrice = Field(Float)
401
    courierCost =  Field(Float)
11095 kshitij.so 402
    courierCostMarketplace = Field(Float)
9242 kshitij.so 403
    commission  =  Field(Float)
404
    serviceTax  =  Field(Float)
405
    suppressPriceFeed = Field(Boolean)
406
    suppressInventoryFeed = Field(Boolean)
9478 kshitij.so 407
    maxNlc = Field(Float)
10097 kshitij.so 408
    skuAtSource = Field(String(255))
9242 kshitij.so 409
    updatedOn = Field(DateTime)
10097 kshitij.so 410
    marketPlaceSerialNumber = Field(String(255))
9779 kshitij.so 411
    priceUpdatedBy = Field(String(255))
9242 kshitij.so 412
    using_options(shortnames=True)
413
    using_table_options(mysql_engine="InnoDB")
9724 kshitij.so 414
 
415
class MarketplaceItems(Entity):
416
    itemId = Field(Integer,primary_key=True, autoincrement = False)
417
    source = Field(Integer,primary_key=True, autoincrement = False)
418
    emiFee = Field(Float)
419
    courierCost = Field(Float)
11095 kshitij.so 420
    courierCostMarketplace = Field(Float)
9724 kshitij.so 421
    closingFee = Field(Float)
422
    returnProvision = Field(Float)
423
    commission = Field(Float)
10287 kshitij.so 424
    pgFee = Field(Float)
9724 kshitij.so 425
    vat = Field(Float)
426
    packagingCost = Field(Float)
427
    otherCost = Field(Float)
428
    serviceTax = Field(Float)
429
    autoIncrement = Field(Boolean)
430
    autoDecrement = Field(Boolean)
431
    manualFavourite = Field(Boolean)
432
    autoFavourite = Field(Boolean)
433
    currentSp = Field(Float)
434
    currentTp = Field(Float)
435
    minimumPossibleSp = Field(Float)
436
    minimumPossibleTp = Field(Float)
9909 kshitij.so 437
    maximumSellingPrice = Field(Float)
9724 kshitij.so 438
    lastCheckedTimestamp = Field(DateTime)
439
    using_options(shortnames=True)
440
    using_table_options(mysql_engine="InnoDB")
7977 kshitij.so 441
 
9621 manish.sha 442
class ProductFeedSubmit(Entity):
443
    catalogItemId = Field(Integer, primary_key=True)
444
    stockLinkedFeed = Field(Boolean)
445
    using_options(shortnames=True)
446
    using_table_options(mysql_engine="InnoDB")
9776 vikram.rag 447
 
448
class MarketPlaceItemPrice(Entity):    
449
    item_id = Field(Integer, primary_key=True, autoincrement=False)
450
    source = Field(Integer, primary_key=True, autoincrement=False)
451
    sellingPrice = Field(Float)
452
    lastUpdatedOn = Field(DateTime)
453
    lastUpdatedOnMarketplace = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 15:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
454
    suppressPriceFeed = Field(Boolean)
455
    isListedOnSource =  Field(Boolean)
456
    using_options(shortnames=True)
457
    using_table_options(mysql_engine="InnoDB")
9242 kshitij.so 458
 
9779 kshitij.so 459
class SourcePercentageMaster(Entity):
460
    source = Field(Integer, primary_key=True, autoincrement=False)
461
    emiFee = Field(Float)
462
    closingFee = Field(Float)
463
    returnProvision = Field(Float)
464
    commission = Field(Float)
10287 kshitij.so 465
    pgFee = Field(Float)
9884 kshitij.so 466
    competitorCommissionAccessory = Field(Float)
467
    competitorCommissionOther = Field(Float)
9779 kshitij.so 468
    serviceTax = Field(Float)
469
    using_options(shortnames=True)
470
    using_table_options(mysql_engine="InnoDB")
471
 
472
class SourceItemPercentage(Entity):
473
    item_id = Field(Integer, primary_key=True, autoincrement=False)
474
    source = Field(Integer, primary_key=True, autoincrement=False)
475
    emiFee = Field(Float)
476
    closingFee = Field(Float)
477
    returnProvision = Field(Float)
478
    commission = Field(Float)
10287 kshitij.so 479
    pgFee = Field(Float)
9884 kshitij.so 480
    competitorCommissionAccessory = Field(Float)
481
    competitorCommissionOther = Field(Float)
9779 kshitij.so 482
    serviceTax = Field(Float)
10097 kshitij.so 483
    startDate = Field(DateTime, primary_key=True, autoincrement=False)
484
    expiryDate = Field(DateTime)
9779 kshitij.so 485
    using_options(shortnames=True)
486
    using_table_options(mysql_engine="InnoDB")
487
 
10097 kshitij.so 488
class SourceCategoryPercentage(Entity):
489
    category_id = Field(Integer, primary_key=True, autoincrement=False)
490
    source = Field(Integer, primary_key=True, autoincrement=False)
491
    emiFee = Field(Float)
492
    closingFee = Field(Float)
493
    returnProvision = Field(Float)
494
    commission = Field(Float)
10287 kshitij.so 495
    pgFee = Field(Float)
10097 kshitij.so 496
    competitorCommissionAccessory = Field(Float)
497
    competitorCommissionOther = Field(Float)
498
    serviceTax = Field(Float)
499
    startDate = Field(DateTime, primary_key=True, autoincrement=False)
500
    expiryDate = Field(DateTime)
501
    using_options(shortnames=True)
502
    using_table_options(mysql_engine="InnoDB")
503
 
9884 kshitij.so 504
class MarketPlaceHistory(Entity):
505
    item_id = Field(Integer, primary_key=True, autoincrement=False)
506
    source = Field(Integer, primary_key=True, autoincrement=False)
507
    lowestPossibleTp = Field(Float)
508
    lowestPossibleSp = Field(Float)
509
    ourInventory = Field(Integer)
510
    otherInventory = Field(Integer)
511
    secondLowestInventory = Field(Integer)
512
    ourRank = Field(Integer)
11193 kshitij.so 513
    ourOfferPrice = Field(Float)
514
    ourSellingPrice = Field(Float)
515
    ourTp = Field(Float)
516
    ourNlc = Field(Float)
517
    ourRating = Field(Float)
518
    ourShippingTime = Field(String(10))
9884 kshitij.so 519
    competitionBasis = Field(Integer)
520
    competitiveCategory = Field(Integer)
521
    risky = Field(Boolean)
522
    lowestOfferPrice = Field(Float)
523
    lowestSellingPrice = Field(Float)
11193 kshitij.so 524
    lowestTp = Field(Float)
9884 kshitij.so 525
    lowestSellerName = Field(String(255))
526
    lowestSellerCode = Field(String(255))
11193 kshitij.so 527
    lowestSellerRating = Field(Float)
528
    lowestSellerShippingTime = Field(String(10))
9884 kshitij.so 529
    proposedSellingPrice = Field(Float)
530
    proposedTp = Field(Float)
531
    targetNlc = Field(Float)
532
    salesPotential = Field(Integer)
533
    secondLowestSellerName = Field(String(255))
534
    secondLowestSellerCode = Field(String(255))
535
    secondLowestSellingPrice = Field(Float)
536
    secondLowestOfferPrice = Field(Float)
537
    secondLowestTp = Field(Float)
11193 kshitij.so 538
    secondLowestSellerRating = Field(Float)
539
    secondLowestSellerShippingTime = Field(String(10))
540
    prefferedSellerName = Field(String(255))
541
    prefferedSellerCode = Field(String(255))
542
    prefferedSellerSellingPrice = Field(Float)
543
    prefferedSellerOfferPrice = Field(Float)
544
    prefferedSellerTp = Field(Float)
545
    prefferedSellerRating = Field(Float)
546
    prefferedSellerShippingTime = Field(String(10))
9884 kshitij.so 547
    marginIncreasedPotential = Field(Float)
548
    margin = Field(Float)
549
    competitorEnoughStock = Field(Boolean)
550
    ourEnoughStock = Field(Boolean)
551
    totalSeller = Field(Integer)
552
    avgSales = Field(Float)
553
    decision = Field(Integer)
9909 kshitij.so 554
    reason = Field(String(255))
9949 kshitij.so 555
    run = Field(Integer)
11193 kshitij.so 556
    toGroup = Field(Boolean)
9884 kshitij.so 557
    timestamp =Field(DateTime, primary_key=True, autoincrement=False)
558
    using_options(shortnames=True)
559
    using_table_options(mysql_engine="InnoDB")
11193 kshitij.so 560
 
9884 kshitij.so 561
 
9945 vikram.rag 562
class FlipkartItem(Entity):
563
    item_id = Field(Integer, primary_key=True, autoincrement = False)
564
    exceptionPrice = Field(Float)
565
    warehouseId = Field(Integer)
566
    commissionValue  =  Field(Float)
567
    serviceTaxValue  =  Field(Float)
568
    maxNlc = Field(Float)
569
    skuAtFlipkart = Field(String(255))
570
    isListedOnFlipkart = Field(Boolean)
571
    suppressPriceFeed = Field(Boolean)
572
    suppressInventoryFeed = Field(Boolean)
10097 kshitij.so 573
    flipkartSerialNumber = Field(String(255))
9945 vikram.rag 574
    updatedOn = Field(DateTime)
575
    updatedBy = Field(String(255))
14780 manish.sha 576
    isFaListed = Field(Boolean)
9945 vikram.rag 577
    using_options(shortnames=True)
578
    using_table_options(mysql_engine="InnoDB")
13709 manish.sha 579
 
580
'''    
581
class DealTag(Entity):
582
    id = Field(Integer, primary_key=True, autoincrement = True)
583
    name = Field(String(100))
584
    using_options(shortnames=True)
585
    using_table_options(mysql_engine="InnoDB")
586
 
587
class ItemTag(Entity): 
588
    itemId= Field(Integer, primary_key=True)
589
    tagId = Field(Integer, primary_key=True)
590
    startDate = Field(DateTime)
591
    endDate = Field(DateTime)
592
    status = Field(Boolean)
593
    using_options(shortnames=True)
594
    using_table_options(mysql_engine="InnoDB")
595
'''
596
 
11531 vikram.rag 597
class PrivateDeals(Entity):   
598
    item_id = Field(Integer, primary_key=True, autoincrement = False)
599
    dealFreebieItemId =  Field(Integer)
600
    dealPrice = Field(Float)
601
    startDate = Field(DateTime)
602
    endDate = Field(DateTime)
11566 vikram.rag 603
    dealTextOption = Field(Integer)
11531 vikram.rag 604
    dealText = Field(String(500))
605
    isCod =  Field(Boolean)
606
    rank = Field(Integer)
11566 vikram.rag 607
    dealFreebieOption = Field(Integer)
11606 vikram.rag 608
    isActive = Field(Boolean)
13493 amit.gupta 609
    minLot = Field(Integer)
610
    lotDealPrice = Field(Float)
11531 vikram.rag 611
    using_options(shortnames=True)
612
    using_table_options(mysql_engine="InnoDB")
11816 kshitij.so 613
 
614
class AmazonOutOfSync(Entity):
615
    item_id = Field(Integer, primary_key=True, autoincrement = False)
616
    mfn = Field(Boolean)
617
    fba = Field(Boolean)
618
    fbb = Field(Boolean)
619
    using_options(shortnames=True)
620
    using_table_options(mysql_engine="InnoDB")
11531 vikram.rag 621
 
11905 kshitij.so 622
class PrivateDealsPriceComparison(Entity):
623
    item_id= Field(Integer, primary_key=True, autoincrement=False)
12133 kshitij.so 624
    asin = Field(String(20))
625
    fsn = Field(String(20))
626
    supc = Field(String(20))
11905 kshitij.so 627
    sdPrice = Field(Float)
628
    fkPrice  = Field(Float)
629
    amazonPrice = Field(Float)
630
    dealPrice = Field(Float)
631
    saholicPrice = Field(Float)
632
    lastProcessedTimestamp = Field(DateTime)
633
    using_options(shortnames=True)
634
    using_table_options(mysql_engine="InnoDB")
11531 vikram.rag 635
 
12133 kshitij.so 636
class SourceReturnPercentage(Entity):
637
    source = Field(Integer)
638
    brand = Field(String(100))
639
    category_id = Field(Integer)
640
    returnProvision = Field(Float)
641
    using_options(shortnames=True)
642
    using_table_options(mysql_engine="InnoDB")
12256 kshitij.so 643
 
644
class CompetitorPricingRequest(Entity):
645
    requestId = Field(BigInteger, primary_key=True,autoincrement=False)
646
    user = Field(String(50))
647
    isProcessed = Field(Boolean)
648
    competitorPricing = OneToMany("CompetitorPricing")
649
    using_options(shortnames=True)
650
    using_table_options(mysql_engine="InnoDB")
12243 kshitij.so 651
 
652
class CompetitorPricing(Entity):
653
    item_id = Field(Integer)
654
    snapdealScraping = Field(Boolean)
655
    flipkartScraping = Field(Boolean)
656
    amazonScraping = Field(Boolean)
12256 kshitij.so 657
    ourSnapdealPrice = Field(Float)
658
    ourSnapdealOfferPrice = Field(Float)
659
    ourSnapdealInventory = Field(Integer)
12243 kshitij.so 660
    lowestSnapdealPrice = Field(Float)
12256 kshitij.so 661
    lowestSnapdealOfferPrice = Field(Float)
662
    lowestSnapdealSeller = Field(String(255))
663
    lowestSnapdealSellerInventory = Field(Integer)
664
    ourFlipkartPrice = Field(Float)
665
    ourFlipkartInventory = Field(Integer)
12243 kshitij.so 666
    lowestFlipkartPrice = Field(Float)
12256 kshitij.so 667
    lowestFlipkartSeller = Field(String(255))
15485 kshitij.so 668
    ourAmazonPrice = Field(Float)
12256 kshitij.so 669
    lowestAmazonPrice = Field(Float)
15485 kshitij.so 670
    lowestAmazonSeller = Field(String(255)) 
12256 kshitij.so 671
    competitorPricing = ManyToOne("CompetitorPricingRequest")
12243 kshitij.so 672
    using_options(shortnames=True)
673
    using_table_options(mysql_engine="InnoDB")
12363 kshitij.so 674
 
675
class AmazonPromotion(Entity):
676
    sku = Field(String(20))
677
    standardPrice = Field(Float)
678
    salePrice = Field(Float)
12431 kshitij.so 679
    subsidy = Field(Float)
12363 kshitij.so 680
    startDate = Field(DateTime)
681
    endDate = Field(DateTime)
682
    addedOn = Field(DateTime)
683
    updatedOnMarketplace = Field(DateTime,default = datetime.datetime.strptime('01-01-1970 00:00:00', '%d-%m-%Y %H:%M:%S'),server_default = '1970-01-01')
684
    promotionActive = Field(Boolean)
685
    stateId = Field(Integer)
686
    promotionType = Field(Integer)
687
    using_options(shortnames=True)
688
    using_table_options(mysql_engine="InnoDB")
12133 kshitij.so 689
 
12363 kshitij.so 690
class AmazonScrapingHistory(Entity):
691
    item_id = Field(Integer, primary_key=True, autoincrement=False)
12472 kshitij.so 692
    asin = Field(String(255))
12363 kshitij.so 693
    warehouseLocation = Field(Integer, primary_key=True, autoincrement=False)
12396 kshitij.so 694
    parentCategoryId = Field(Integer)
12363 kshitij.so 695
    ourSellingPrice = Field(Float)
12474 kshitij.so 696
    promoPrice = Field(Float)
12511 kshitij.so 697
    subsidy = Field(Float)
12363 kshitij.so 698
    lowestPossibleSp = Field(Float)
699
    ourRank = Field(Integer)
700
    ourInventory = Field(Integer)
701
    lowestSellerName = Field(String(255))
702
    lowestSellerSp = Field(Float)
12431 kshitij.so 703
    lowestSellerShippingTime = Field(String(10))
704
    lowestSellerRating = Field(String(10))
705
    lowestSellerType = Field(String(20))
12363 kshitij.so 706
    secondLowestSellerName = Field(String(255))
707
    secondLowestSellerSp = Field(Float)
12431 kshitij.so 708
    secondLowestSellerShippingTime = Field(String(10))
709
    secondLowestSellerRating = Field(String(10))
710
    secondLowestSellerType = Field(String(20))
12363 kshitij.so 711
    thirdLowestSellerName = Field(String(255))
712
    thirdLowestSellerSp = Field(Float)
12431 kshitij.so 713
    thirdLowestSellerShippingTime = Field(String(10))
714
    thirdLowestSellerRating = Field(String(10))
715
    thirdLowestSellerType = Field(String(20))
12363 kshitij.so 716
    competitiveCategory = Field(Integer)
12448 kshitij.so 717
    otherCost = Field(Float)
12597 kshitij.so 718
    isLowestMfnIgnored = Field(Boolean)
719
    lowestMfnIgnoredOffer = Field(Float)
720
    isLowestMfn = Field(Boolean)
721
    lowestMfnOffer = Field(Float)
722
    isLowestFba = Field(Boolean)
723
    lowestFbaOffer = Field(Float)
724
    competitivePrice = Field(Float)
725
    cheapestMfnCount = Field(Boolean)
12363 kshitij.so 726
    wanlc = Field(Float)
727
    commission = Field(Float)
728
    competitorCommission = Field(Float)
729
    returnProvision = Field(Float)
12511 kshitij.so 730
    vatRate = Field(Float)
12363 kshitij.so 731
    courierCost = Field(Float)
732
    risky = Field(Boolean)
733
    runType = Field(Integer)
734
    totalSeller = Field(Integer)
735
    ourEnoughStock = Field(Boolean)
736
    marginIncreasedPotential = Field(Float)
737
    avgSale = Field(Float)
738
    multipleListings = Field(Boolean)
12431 kshitij.so 739
    isPromotion = Field(Boolean)
12363 kshitij.so 740
    proposedSp = Field(Float)
741
    proposedTp = Field(Float)
742
    targetNlc = Field(Float)
743
    decision = Field(Integer)
744
    reason = Field(String(255))
12841 kshitij.so 745
    exceptionType = Field(Integer)
12843 kshitij.so 746
    isNlcOverridden = Field(Boolean)
15694 kshitij.so 747
    packagingHeight = Field(Float)
748
    packagingLength = Field(Float)
749
    packagingWidth = Field(Float)
750
    packagingWeight = Field(Float)
751
    isOversized = Field(Boolean)
12363 kshitij.so 752
    timestamp =Field(DateTime, primary_key=True, autoincrement=False)
753
    using_options(shortnames=True)
754
    using_table_options(mysql_engine="InnoDB")
755
 
756
 
12620 amit.gupta 757
class ExclusiveAffiliateItemInfo(Entity):
758
    itemId = Field(Integer, primary_key=True, autoincrement=False)
759
    affiliateId = Field(Integer)
760
    offerText = Field(String(1023))
761
    offerUrl = Field(String(255))
762
    mOfferText = Field(String(1023))
763
    mOfferUrl = Field(String(255))
764
    affiliateSku = Field(String(255))
765
    affiliateUrl = Field(String(255))
766
    addedOn = Field(DateTime)
767
    updatedOn = Field(DateTime)
768
    isActive = Field(Boolean)
769
    using_options(shortnames=True)
770
    using_table_options(mysql_engine="InnoDB")
771
 
772
class OutboundAffiliateMaster(Entity):
773
    id = Field(Integer, primary_key=True, autoincrement=True)
774
    name = Field(String(100))
775
    using_options(shortnames=True)
776
    using_table_options(mysql_engine="InnoDB")
13709 manish.sha 777
 
778
class HsItem(Entity):
779
    hsItemId = Field(String(32), primary_key=True)
780
    itemId = Field(Integer, primary_key=True, autoincrement = False)
781
    hsProductId = Field(String(32))
782
    listingPrice = Field(Float)
783
    defaultWarehouseId = Field(Integer)
784
    addedTimestamp = Field(DateTime)
785
    addedBy = Field(String(100))
786
    using_options(shortnames=True)
787
    using_table_options(mysql_engine="InnoDB")
12620 amit.gupta 788
 
14862 manish.sha 789
class VoiSnapdealItemInfo(Entity):
790
    item_id = Field(Integer, primary_key=True, autoincrement = False)
791
    voiSkuAtSnapdeal = Field(String(255))
792
    sellingPriceSnapdeal = Field(Float)
793
    transferPriceSnapdeal = Field(Float)
794
    fixedMargin = Field(Float)
795
    fixedMarginPercentage = Field(Float)
796
    logisticCostSnapdeal = Field(Float)
797
    woodenPackagingCost = Field(Float)
798
    weightSnapdeal = Field(Float)
799
 
18150 kshitij.so 800
class BulkItemPricing(Entity):
801
    id = Field(Integer, primary_key=True, autoincrement = True)
802
    item_id = Field(Integer, index=True)
803
    quantity = Field(Integer)
804
    price = Field(Float)
805
    using_options(shortnames=True)
806
    using_table_options(mysql_engine="InnoDB")
807
 
17770 kshitij.so 808
def initialize(dbname='catalog', db_hostname="localhost", setup=True):
746 rajveer 809
    #metadata.bind = "sqlite:///inventory-new.sqlite" #need to read it from configserver.
1122 chandransh 810
    #metadata.bind = 'mysql://root:shop2020@localhost/catalog'
6532 amit.gupta 811
    cengine = create_engine('mysql://root:shop2020@' + db_hostname + '/' + dbname, pool_recycle=7200)
812
    metadata.bind = cengine
14865 manish.sha 813
    metadata.bind.echo = False
17770 kshitij.so 814
    setup_all(setup)
115 ashish 815
 
816
if __name__=="__main__":
9242 kshitij.so 817
    initialize()