Rev 14070 | Rev 14398 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
import jsonfrom dtr import mainfrom dtr.storage import Mongofrom bson import json_utilimport falconfrom dtr.utils import FetchLivePrices, DealSheet as X_DealSheet, \UserSpecificDealsclass CategoryDiscountInfo(object):def on_get(self, req, resp):result = Mongo.getAllCategoryDiscount()json_docs = [json.dumps(doc, default=json_util.default) for doc in result]resp.body = json.dumps(json_docs, encoding='utf-8')def on_post(self, req, resp):try:result_json = json.loads(req.stream.read(), encoding='utf-8')except ValueError:raise falcon.HTTPError(falcon.HTTP_400,'Malformed JSON','Could not decode the request body. The ''JSON was incorrect.')result = Mongo.addCategoryDiscount(result_json)resp.body = json.dumps(result, encoding='utf-8')def on_put(self, req, resp, _id):try:result_json = json.loads(req.stream.read(), encoding='utf-8')except ValueError:raise falcon.HTTPError(falcon.HTTP_400,'Malformed JSON','Could not decode the request body. The ''JSON was incorrect.')result = Mongo.updateCategoryDiscount(result_json, _id)resp.body = json.dumps(result, encoding='utf-8')class SkuSchemeDetails(object):def on_get(self, req, resp):offset = req.get_param_as_int("offset")limit = req.get_param_as_int("limit")result = Mongo.getAllSkuWiseSchemeDetails(offset, limit)json_docs = [json.dumps(doc, default=json_util.default) for doc in result]resp.body = json.dumps(json_docs, encoding='utf-8')def on_post(self, req, resp):try:result_json = json.loads(req.stream.read(), encoding='utf-8')except ValueError:raise falcon.HTTPError(falcon.HTTP_400,'Malformed JSON','Could not decode the request body. The ''JSON was incorrect.')result = Mongo.addSchemeDetailsForSku(result_json)resp.body = json.dumps(result, encoding='utf-8')class SkuDiscountInfo():def on_get(self, req, resp):offset = req.get_param_as_int("offset")limit = req.get_param_as_int("limit")result = Mongo.getallSkuDiscountInfo(offset,limit)json_docs = [json.dumps(doc, default=json_util.default) for doc in result]resp.body = json.dumps(json_docs, encoding='utf-8')def on_post(self, req, resp):try:result_json = json.loads(req.stream.read(), encoding='utf-8')except ValueError:raise falcon.HTTPError(falcon.HTTP_400,'Malformed JSON','Could not decode the request body. The ''JSON was incorrect.')result = Mongo.addSkuDiscountInfo(result_json)resp.body = json.dumps(result, encoding='utf-8')def on_put(self, req, resp, _id):try:result_json = json.loads(req.stream.read(), encoding='utf-8')except ValueError:raise falcon.HTTPError(falcon.HTTP_400,'Malformed JSON','Could not decode the request body. The ''JSON was incorrect.')result = Mongo.updateSkuDiscount(result_json, _id)resp.body = json.dumps(result, encoding='utf-8')class ExceptionalNlc():def on_get(self, req, resp):offset = req.get_param_as_int("offset")limit = req.get_param_as_int("limit")result = Mongo.getAllExceptionlNlcItems(offset, limit)json_docs = [json.dumps(doc, default=json_util.default) for doc in result]resp.body = json.dumps(json_docs, encoding='utf-8')def on_post(self, req, resp):try:result_json = json.loads(req.stream.read(), encoding='utf-8')except ValueError:raise falcon.HTTPError(falcon.HTTP_400,'Malformed JSON','Could not decode the request body. The ''JSON was incorrect.')result = Mongo.addExceptionalNlc(result_json)resp.body = json.dumps(result, encoding='utf-8')def on_put(self, req, resp, _id):try:result_json = json.loads(req.stream.read(), encoding='utf-8')except ValueError:raise falcon.HTTPError(falcon.HTTP_400,'Malformed JSON','Could not decode the request body. The ''JSON was incorrect.')result = Mongo.updateExceptionalNlc(result_json, _id)resp.body = json.dumps(result, encoding='utf-8')class Deals():def on_get(self,req, resp, userId):categoryId = req.get_param_as_int("categoryId")offset = req.get_param_as_int("offset")limit = req.get_param_as_int("limit")sort = req.get_param("sort")direction = req.get_param_as_int("direction")result = Mongo.getNewDeals(userId, categoryId, offset, limit, sort, direction)json_docs = [json.dumps(doc, default=json_util.default) for doc in result]resp.body = json.dumps(json_docs, encoding='utf-8')class MasterData():def on_get(self,req, resp, skuId):result = Mongo.getItem(skuId)try:json_docs = [json.dumps(doc, default=json_util.default) for doc in result]resp.body = json.dumps(json_docs, encoding='utf-8')except:json_docs = [json.dumps(doc, default=json_util.default) for doc in result]resp.body = json.dumps(json_docs, encoding='utf-8')class LiveData():def on_get(self,req, resp):if req.get_param_as_int("id") is not None:print "****getting only for id"id = req.get_param_as_int("id")try:result = FetchLivePrices.getLatestPriceById(id)json_docs = json.dumps(result, default=json_util.default)resp.body = json.dumps(json_docs, encoding='utf-8')except:json_docs = json.dumps({}, default=json_util.default)resp.body = json.dumps(json_docs, encoding='utf-8')else:print "****getting only for skuId"skuBundleId = req.get_param_as_int("skuBundleId")source_id = req.get_param_as_int("source_id")try:result = FetchLivePrices.getLatestPrice(skuBundleId, source_id)json_docs = [json.dumps(doc, default=json_util.default) for doc in result]resp.body = json.dumps(json_docs, encoding='utf-8')except:json_docs = [json.dumps(doc, default=json_util.default) for doc in [{}]]resp.body = json.dumps(json_docs, encoding='utf-8')class CashBack():def on_get(self,req, resp):identifier = req.get_param("identifier")source_id = req.get_param_as_int("source_id")try:result = Mongo.getCashBackDetails(identifier, source_id)json_docs = json.dumps(result, default=json_util.default)resp.body = json_docsexcept:json_docs = json.dumps({}, default=json_util.default)resp.body = json_docsclass DealSheet():def on_get(self,req, resp):X_DealSheet.sendMail()json_docs = json.dumps({'True':'Sheet generated, mail sent.'}, default=json_util.default)resp.body = json.dumps(json_docs, encoding='utf-8')class DealerPrice():def on_get(self, req, resp):offset = req.get_param_as_int("offset")limit = req.get_param_as_int("limit")result = Mongo.getAllDealerPrices(offset,limit)json_docs = [json.dumps(doc, default=json_util.default) for doc in result]resp.body = json.dumps(json_docs, encoding='utf-8')def on_post(self, req, resp):try:result_json = json.loads(req.stream.read(), encoding='utf-8')except ValueError:raise falcon.HTTPError(falcon.HTTP_400,'Malformed JSON','Could not decode the request body. The ''JSON was incorrect.')result = Mongo.addSkuDealerPrice(result_json)resp.body = json.dumps(result, encoding='utf-8')def on_put(self, req, resp, _id):try:result_json = json.loads(req.stream.read(), encoding='utf-8')except ValueError:raise falcon.HTTPError(falcon.HTTP_400,'Malformed JSON','Could not decode the request body. The ''JSON was incorrect.')result = Mongo.updateSkuDealerPrice(result_json, _id)resp.body = json.dumps(result, encoding='utf-8')class ResetCache():def on_get(self,req, resp, userId):result = Mongo.resetCache(userId)resp.body = json.dumps(result, encoding='utf-8')class UserDeals():def on_get(self,req,resp,userId):UserSpecificDeals.generateSheet(userId)json_docs = json.dumps({'True':'Sheet generated, mail sent.'}, default=json_util.default)resp.body = json.dumps(json_docs, encoding='utf-8')class CommonUpdate():def on_post(self,req,resp):try:result_json = json.loads(req.stream.read(), encoding='utf-8')except ValueError:raise falcon.HTTPError(falcon.HTTP_400,'Malformed JSON','Could not decode the request body. The ''JSON was incorrect.')result = Mongo.updateCollection(result_json)resp.body = json.dumps(result, encoding='utf-8')