Rev 16547 | Rev 16698 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
'''Created on Jan 16, 2015@author: amit'''from datetime import datetimefrom dtr.utils.utils import ORDER_PLACEDimport timeclass AffiliateInfo():subTagId = NoneadId = NoneadDate = NonepayOut = NoneofferName = NonestoreId = NonesaleAmount = NonesaleDate = NonesaleTime = NoneconversionStatus = Noneip = NonemissingOrder = Nonedef __init__(self,subTagId, storeId, conversionStatus, adId, saleDate, payOut, offerName, ip, saleAmount):self.subTagId = subTagIdself.conversionStatus = conversionStatusself.adId = adIdself.payOut = payOutself.offerName = offerNameself.ip = ipself.saleAmount = saleAmountself.storeId = storeIdself.saleDate = saleDateself.missingOrder = Truedef __repr__(self):return Noneclass FlipkartAffiliateInfo():subTagId = NoneproductCode = Noneprice = Nonequantity = Nonecategory = NonepayOut = NonesaleAmount = NonestoreId = NonesaleDate = NoneconversionStatus = NonemissingOrder = NonesaleDateInt = Nonedef __init__(self,subTagId, saleDate, productCode, price, quantity, saleAmount, payOut, conversionStatus, category):self.subTagId = subTagIdself.conversionStatus = conversionStatusself.payOut = payOutself.saleAmount = saleAmountself.productCode = productCodeself.storeId = 2self.saleDate = saleDateself.price = priceself.quantity = quantityself.missingOrder = Trueself.category = categoryself.saleDateInt = int(time.mktime(datetime.strptime(saleDate, "%Y-%m-%d").timetuple()))def __repr__(self):return Noneclass AmazonAffiliateInfo():productLine = NonedateOrdered = Nonetime = NonelinkType = NonetrackingId= NonedirectConversion = NonedirectClicks = NonedirectOrderedQuantity = NoneindirectOrderedQuantity = NonetotalOrderedQuantity = NonesubTagId = Nonedef __init__(self,productLine, dateOrdered, linkType, trackingId, directConversion, directClicks, directOrderedQuantity, indirectOrderedQuantity, totalOrderedQuantity, subTagId):self.productLine = productLineself.dateOrdered = dateOrderedself.linkType = linkTypeself.trackingId = trackingIdself.directConversion = directConversionself.directClicks = directClicksself.directOrderedQuantity= directOrderedQuantityself.indirectOrderedQuantity = indirectOrderedQuantityself.totalOrderedQuantity = totalOrderedQuantityself.subTagId = subTagIdself.time = int(time.mktime(datetime.strptime(dateOrdered, "%B %d, %Y").timetuple()))class AmazonAffiliateConversionInfo():productLine = Noneseller = NonetrackingId = NonedateShipped = Noneprice = NonereferralFeeRate = Nonequantity = Nonerevenue = Noneearnings = NonesubTag = NonesubTag = Nonedef __init__(self,productLine, seller, trackingId, dateShipped, price, referralFeeRate, quantity,revenue, earnings, subTag):self.productLine = productLineself.seller = sellerself.trackingId = trackingIdself.dateShipped = dateShippedself.price = priceself.referralFeeRate = referralFeeRateself.quantity = quantityself.revenue= revenueself.earnings = earningsself.subTag = subTagclass ShopCluesAffiliateInfo():subTagId = NonetransactionTime = NonetransactionId = NoneorderRef = NonemerchantOrderId = NonemerchantName= NoneproductCode = NoneproductName = NonepayOut = NonetransactionValue = NoneuniqueKey = NoneclickTime = Nonestatus = Nonedef __init__(self,subTagId, transactionTime, transactionId, orderRef, merchantOrderId, merchantName, productCode, productName,payOut, transactionValue, uniqueKey, clickTime, status):self.subTagId = subTagIdself.transactionTime = int(time.mktime(datetime.strptime(transactionTime,"%Y-%m-%dT%H:%M:%S").timetuple()))self.transactionId = transactionIdself.orderRef = orderRefself.merchantOrderId = merchantOrderIdself.merchantName= merchantNameself.productCode = productCodeself.productName = productNameself.payOut = payOutself.transactionValue = transactionValueself.uniqueKey = uniqueKeyself.clickTime = int(time.mktime(datetime.strptime(clickTime,"%Y-%m-%dT%H:%M:%S").timetuple()))self.status = statusclass Order():orderId = NonesubOrders = NonedeliveryCharges = NoneuserId = NonemerchantOrderId = NonestoreId = NonediscountApplied = NonesubTagId = Noneclosed = NoneplacedOn = NonetotalAmount = NonepaidAmount = NoneorderSuccessUrl = NoneorderTrackingUrl = NonecreatedOn = NonecreatedInt = NonerequireDetail = Nonedef __init__(self, orderId, userId, subTagId, storeId, orderSuccessUrl, new = True):self.orderId = orderIdself.userId = userIdself.subTagId = subTagIdself.closed = Falseself.storeId = storeIdself.orderSuccessUrl = orderSuccessUrlself.requireDetail = Falseif new:created = datetime.now()self.createdOn = str(created)self.createdOnInt = int(time.mktime(created.timetuple()))class SubOrder():status = NoneproductTitle = NoneestimatedDeliveryDate = NoneestimatedShippingDate = NoneproductCode = NonedetailedStatus = NonemerchantSubOrderId = NoneproductUrl = NonecourierName = NoneunitPrice = NoneamountPaid = NoneofferDiscount = NonedeliveryCharges = NonetracingkUrl = NoneorderDetailUrl = NoneplacedOn = NonetrackingNumber = Nonequantity = NonecashBackStatus = NonecashBackAmount = NonecashBackPercentage = NoneimgUrl = Noneclosed = NonemissingAff = Nonedef __init__(self, productTitle, productUrl, placedOn, amountPaid, status=ORDER_PLACED, quantity = 1):self.productTitle = productTitleself.productUrl = productUrlself.placedOn = placedOnself.amountPaid = amountPaidself.status = statusself.quantity = quantityself.closed = Falseself.missingAff = Trueclass FeaturedDeals():def __init__(self, sku, category_id, thresholdPrice, rank):self.sku = skuself.category_id = category_idself.thresholdPrice = thresholdPriceself.rank = rankclass obj(object):def __init__(self, d):for a, b in d.items():if isinstance(b, (list, tuple)):setattr(self, a, [obj(x) if isinstance(x, dict) else x for x in b])else:setattr(self, a, obj(b) if isinstance(b, dict) else b)class AppTransactions():def __init__(self, app_id, retailer_id, transaction_time, redirect_url, payout_status, payout_description, cashback_status, cash_back_description, payout_amount, payout_time, offer_price, overridenCashBack ,isCashBackOverriden, user_payout):self.app_id = app_idself.retailer_id = retailer_idself.transaction_time = transaction_timeself.redirect_url = redirect_urlself.payout_status = payout_statusself.payout_description = payout_descriptionself.cashback_status = cashback_statusself.cash_back_description = cash_back_descriptionself.payout_amount = payout_amountself.payout_time = payout_timeself.offer_price = offer_priceself.overridenCashBack = overridenCashBackself.isCashBackOverriden = isCashBackOverridenself.user_payout = user_payout