Subversion Repositories SmartDukaan

Rev

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