Subversion Repositories SmartDukaan

Rev

Rev 16694 | Rev 16715 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 16694 Rev 16714
Line 14... Line 14...
14
from dtr.utils import FetchLivePrices, DealSheet as X_DealSheet, \
14
from dtr.utils import FetchLivePrices, DealSheet as X_DealSheet, \
15
    UserSpecificDeals
15
    UserSpecificDeals
16
from dtr.utils.utils import getLogger
16
from dtr.utils.utils import getLogger
17
from elixir import *
17
from elixir import *
18
from operator import and_
18
from operator import and_
19
from sqlalchemy.sql.expression import func, func, or_, desc, asc
19
from sqlalchemy.sql.expression import func, func, or_, desc, asc, case
20
from urllib import urlencode
20
from urllib import urlencode
21
import contextlib
21
import contextlib
22
import falcon
22
import falcon
23
import json
23
import json
24
import re
24
import re
Line 1298... Line 1298...
1298
        resp.body = str(result)
1298
        resp.body = str(result)
1299
    
1299
    
1300
class AppOffers():
1300
class AppOffers():
1301
    def on_get(self, req, resp, retailerId):
1301
    def on_get(self, req, resp, retailerId):
1302
        retailerId = int(retailerId)
1302
        retailerId = int(retailerId)
1303
        offers = session.query(app_offers.id,app_offers.appmaster_id, app_offers.app_name, app_offers.affiliate_offer_id, app_offers.image_url, app_offers.downloads, app_offers.link, app_offers.offer_price, app_offers.offerCategory, app_offers.package_name, app_offers.promoImage, app_offers.ratings, app_offers.user_payout, func.IF("appmasters.shortDescription is not null", appmasters.shortDescription, app_offers.shortDescription).label('shortDescription'), func.IF("appmasters.longDescription is not null", appmasters.longDescription, app_offers.longDescription).label('longDescription'), appmasters.customerOneLiner, appmasters.retailerOneLiner,app_offers.priority, app_offers.offerCondition).join((appmasters,appmasters.id==app_offers.appmaster_id)).filter(app_offers.show==True).filter(app_offers.offer_active==True).filter(app_offers.offer_price>0).order_by(asc(app_offers.priority),desc(app_offers.user_payout)).all()
1303
        offers = session.query(app_offers.id,app_offers.appmaster_id, app_offers.app_name, app_offers.affiliate_offer_id, app_offers.image_url, app_offers.downloads, app_offers.link, app_offers.offer_price, app_offers.offerCategory, app_offers.package_name, app_offers.promoImage, app_offers.ratings, app_offers.user_payout, case([(appmasters.shortDescription != None, appmasters.shortDescription)], else_=None).label('shortDescription'), case([(appmasters.longDescription != None, appmasters.longDescription)], else_=None).label('longDescription'), appmasters.customerOneLiner, appmasters.retailerOneLiner,app_offers.priority, app_offers.offerCondition).join((appmasters,appmasters.id==app_offers.appmaster_id)).filter(app_offers.show==True).filter(app_offers.offer_active==True).filter(app_offers.offer_price>0).order_by(asc(app_offers.priority),desc(app_offers.user_payout)).all()
1304
        offersJsonArray = []
1304
        offersJsonArray = []
1305
        if offers is None or len(offers)==0:
1305
        if offers is None or len(offers)==0:
1306
            resp.body = json.dumps("{}")
1306
            resp.body = json.dumps("{}")
1307
        else:
1307
        else:
1308
            for offer in offers:
1308
            for offer in offers: