Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
13569 amit.gupta 1
'''
2
Created on Jan 16, 2015
3
 
4
@author: amit
5
'''
14460 amit.gupta 6
from datetime import datetime
13576 amit.gupta 7
from main import Store
14460 amit.gupta 8
import time
13569 amit.gupta 9
class AffiliateInfo():
10
 
11
 
12
    subTagId = None
13
    adId = None
14
    adDate = None
15
    payOut = None
16
    offerName = None
17
    storeId = None
18
    saleAmount = None
19
    saleDate = None
14460 amit.gupta 20
    saleTime = None
14418 amit.gupta 21
    conversionStatus = None
13569 amit.gupta 22
    ip = None
14418 amit.gupta 23
    missingOrder = None
13569 amit.gupta 24
    def __init__(self,subTagId, storeId, conversionStatus, adId, saleDate, payOut, offerName, ip, saleAmount):
25
        self.subTagId = subTagId
26
        self.conversionStatus = conversionStatus
27
        self.adId = adId
28
        self.payOut = payOut
29
        self.offerName = offerName
30
        self.ip = ip
31
        self.saleAmount = saleAmount
32
        self.storeId = storeId
33
        self.saleDate = saleDate
14418 amit.gupta 34
        self.missingOrder = True
13569 amit.gupta 35
 
36
    def __repr__(self):
37
        return None
38
 
14418 amit.gupta 39
class FlipkartAffiliateInfo():
40
 
41
 
42
    subTagId = None
43
    productCode = None
44
    price = None
45
    quantity = None
14460 amit.gupta 46
    category = None
14418 amit.gupta 47
    payOut = None
48
    saleAmount = None
49
    storeId = None
50
    saleDate = None
51
    conversionStatus = None
52
    missingOrder = None
14460 amit.gupta 53
    saleDateInt = None
14418 amit.gupta 54
 
14460 amit.gupta 55
    def __init__(self,subTagId, saleDate, productCode, price, quantity, saleAmount, payOut, conversionStatus, category):
14418 amit.gupta 56
        self.subTagId = subTagId
57
        self.conversionStatus = conversionStatus
58
        self.payOut = payOut
59
        self.saleAmount = saleAmount
14460 amit.gupta 60
        self.productCode = productCode
14418 amit.gupta 61
        self.storeId = 2
62
        self.saleDate = saleDate
63
        self.price = price
64
        self.quantity = quantity
65
        self.missingOrder = True
14460 amit.gupta 66
        self.category = category
67
        self.saleDateInt = int(time.mktime(datetime.strptime(saleDate, "%Y-%m-%d").timetuple()))
14418 amit.gupta 68
 
69
    def __repr__(self):
70
        return None
14650 amit.gupta 71
 
72
class AmazonAffiliateInfo():
73
    productLine = None
74
    dateOrdered = None
75
    time = None
76
    linkType = None
77
    trackingId= None
78
    directConversion = None
79
    directClicks = None
80
    directOrderedQuantity = None
81
    indirectOrderedQuantity = None
82
    totalOrderedQuantity = None
83
    subTagId = None
84
    def __init__(self,productLine, dateOrdered, linkType, trackingId, directConversion, directClicks, directOrderedQuantity, indirectOrderedQuantity, totalOrderedQuantity, subTagId):
85
        self.productLine = productLine
86
        self.dateOrdered = dateOrdered
87
        self.linkType = linkType
88
        self.trackingId = trackingId
89
        self.directConversion = directConversion
90
        self.directClicks = directClicks
91
        self.directOrderedQuantity= directOrderedQuantity
92
        self.indirectOrderedQuantity = indirectOrderedQuantity
93
        self.totalOrderedQuantity = totalOrderedQuantity
94
        self.subTagId = subTagId
95
        self.time = int(time.mktime(datetime.strptime(dateOrdered, "%B %d, %Y").timetuple()))
14418 amit.gupta 96
 
14650 amit.gupta 97
class AmazonAffiliateConversionInfo():
98
    productLine = None
99
    seller = None
100
    trackingId = None
101
    dateShipped = None
102
    price = None
103
    referralFeeRate = None
104
    quantity = None
105
    revenue = None
106
    earnings = None
107
    subTag = None
108
 
109
    subTag = None
110
    def __init__(self,productLine, seller, trackingId, dateShipped, price, referralFeeRate, quantity,revenue, earnings, subTag):
111
        self.productLine = productLine
112
        self.seller = seller
113
        self.trackingId = trackingId
114
        self.dateShipped = dateShipped
115
        self.price = price
116
        self.referralFeeRate = referralFeeRate
117
        self.quantity = quantity
118
        self.revenue= revenue
119
        self.earnings = earnings
120
        self.subTag = subTag
121
 
122
 
13576 amit.gupta 123
class Order():
13577 amit.gupta 124
    orderId = None
13576 amit.gupta 125
    subOrders = None
126
    deliveryCharges = None
127
    userId = None
14023 amit.gupta 128
    merchantOrderId = None
13576 amit.gupta 129
    storeId = None
130
    discountApplied = None
131
    subTagId = None
132
    closed = None
133
    placedOn = None
134
    totalAmount = None
135
    paidAmount = None
136
    orderSuccessUrl = None
14145 amit.gupta 137
    orderTrackingUrl = None
14171 amit.gupta 138
    createdOn = None
14699 amit.gupta 139
    createdInt = None
14291 amit.gupta 140
    requireDetail = None
14699 amit.gupta 141
    def __init__(self, orderId, userId, subTagId, storeId, orderSuccessUrl, new = True):
13577 amit.gupta 142
        self.orderId = orderId
13576 amit.gupta 143
        self.userId = userId
144
        self.subTagId = subTagId
14699 amit.gupta 145
        self.closed = False
13576 amit.gupta 146
        self.storeId = storeId
147
        self.orderSuccessUrl = orderSuccessUrl
14699 amit.gupta 148
        if new:
14725 amit.gupta 149
            self.createdOn = str(datetime.now())
150
            self.createdOnInt = int(time.mktime(self.createdOn.timetuple()))
14699 amit.gupta 151
            self.requireDetail = False
14725 amit.gupta 152
        else:
153
            self.requireDetail = True
13576 amit.gupta 154
 
155
class SubOrder():
156
    status = None
157
    productTitle = None
158
    estimatedDeliveryDate  = None
14356 amit.gupta 159
    estimatedShippingDate  = None
13576 amit.gupta 160
    productCode  = None
13721 amit.gupta 161
    detailedStatus  = None
13576 amit.gupta 162
    merchantSubOrderId  = None
163
    productUrl  = None
164
    courierName  = None
13664 amit.gupta 165
    unitPrice  = None
166
    amountPaid  = None 
13576 amit.gupta 167
    offerDiscount  = None
13664 amit.gupta 168
    deliveryCharges  = None
13576 amit.gupta 169
    tracingkUrl  = None
14246 amit.gupta 170
    orderDetailUrl = None
13576 amit.gupta 171
    placedOn  = None
172
    trackingNumber  = None
173
    quantity  = None
13610 amit.gupta 174
    cashBackStatus = None
175
    cashBackAmount = None
13721 amit.gupta 176
    cashBackPercentage = None
13690 amit.gupta 177
    imgUrl = None
13610 amit.gupta 178
    closed = None
13781 amit.gupta 179
    missingAff = None
13576 amit.gupta 180
 
181
    def __init__(self, productTitle, productUrl, placedOn, amountPaid, status=Store.ORDER_PLACED, quantity = 1):
182
        self.productTitle = productTitle
183
        self.productUrl = productUrl
184
        self.placedOn = placedOn
185
        self.amountPaid = amountPaid
186
        self.status = status
14097 amit.gupta 187
        self.quantity = quantity
13610 amit.gupta 188
        self.closed = False
13781 amit.gupta 189
        self.missingAff = True
14532 kshitij.so 190
 
191
class FeaturedDeals():
13576 amit.gupta 192
 
14532 kshitij.so 193
    def __init__(self, sku, category_id, thresholdPrice, rank):
194
        self.sku = sku
195
        self.category_id = category_id
196
        self.thresholdPrice = thresholdPrice
197
        self.rank = rank 
198
 
13576 amit.gupta 199
 
14725 amit.gupta 200
class obj(object):
201
    def __init__(self, d):
202
        for a, b in d.items():
203
            if isinstance(b, (list, tuple)):
204
                setattr(self, a, [obj(x) if isinstance(x, dict) else x for x in b])
205
            else:
206
                setattr(self, a, obj(b) if isinstance(b, dict) else b)