Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
13572 kshitij.so 1
import json
13582 amit.gupta 2
from dtr import main
13629 kshitij.so 3
from dtr.storage import Mongo
4
from bson import json_util
13827 kshitij.so 5
import falcon
6
from dtr.utils import FetchLivePrices
13572 kshitij.so 7
 
8
 
9
class CategoryDiscountInfo(object):
10
 
11
    def on_get(self, req, resp):
12
 
13629 kshitij.so 13
        result = Mongo.getAllCategoryDiscount()
14
        json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
15
        resp.body = json.dumps(json_docs, encoding='utf-8')
13572 kshitij.so 16
 
17
    def on_post(self, req, resp):
18
 
19
        try:
20
            result_json = json.loads(req.stream.read(), encoding='utf-8')
21
        except ValueError:
22
            raise falcon.HTTPError(falcon.HTTP_400,
23
                'Malformed JSON',
24
                'Could not decode the request body. The '
25
                'JSON was incorrect.')
26
 
27
        result = Mongo.addCategoryDiscount(result_json)
28
        resp.body = json.dumps(result, encoding='utf-8')
29
 
30
class SkuSchemeDetails(object):
31
 
32
    def on_get(self, req, resp):
13629 kshitij.so 33
 
13635 kshitij.so 34
        result = Mongo.getAllSkuWiseSchemeDetails()
13629 kshitij.so 35
        json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
36
        resp.body = json.dumps(json_docs, encoding='utf-8')
13572 kshitij.so 37
 
38
 
39
    def on_post(self, req, resp):
40
 
41
        try:
42
            result_json = json.loads(req.stream.read(), encoding='utf-8')
43
        except ValueError:
44
            raise falcon.HTTPError(falcon.HTTP_400,
45
                'Malformed JSON',
46
                'Could not decode the request body. The '
47
                'JSON was incorrect.')
48
 
49
        result = Mongo.addSchemeDetailsForSku(result_json)
50
        resp.body = json.dumps(result, encoding='utf-8')
51
 
52
class SkuDiscountInfo():
53
 
54
    def on_get(self, req, resp):
13629 kshitij.so 55
 
56
        result = Mongo.getallSkuDiscountInfo()
57
        json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
58
        resp.body = json.dumps(json_docs, encoding='utf-8')
13572 kshitij.so 59
 
60
 
61
    def on_post(self, req, resp):
62
 
63
        try:
64
            result_json = json.loads(req.stream.read(), encoding='utf-8')
65
        except ValueError:
66
            raise falcon.HTTPError(falcon.HTTP_400,
67
                'Malformed JSON',
68
                'Could not decode the request body. The '
69
                'JSON was incorrect.')
70
 
71
        result = Mongo.addSkuDiscountInfo(result_json)
72
        resp.body = json.dumps(result, encoding='utf-8')
73
 
74
class ExceptionalNlc():
75
 
76
    def on_get(self, req, resp):
13629 kshitij.so 77
 
78
        result = Mongo.getAllExceptionlNlcItems()
79
        json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
80
        resp.body = json.dumps(json_docs, encoding='utf-8')
13572 kshitij.so 81
 
82
    def on_post(self, req, resp):
83
 
84
        try:
85
            result_json = json.loads(req.stream.read(), encoding='utf-8')
86
        except ValueError:
87
            raise falcon.HTTPError(falcon.HTTP_400,
88
                'Malformed JSON',
89
                'Could not decode the request body. The '
90
                'JSON was incorrect.')
91
 
92
        result = Mongo.addExceptionalNlc(result_json)
93
        resp.body = json.dumps(result, encoding='utf-8')
94
 
13772 kshitij.so 95
class Deals():
13779 kshitij.so 96
    def on_get(self,req, resp, userId):
97
        categoryId = req.get_param_as_int("categoryId")
98
        offset = req.get_param_as_int("offset")
99
        limit = req.get_param_as_int("limit")
13798 kshitij.so 100
        sort = req.get_param("sort")
13802 kshitij.so 101
        direction = req.get_param_as_int("direction")
13798 kshitij.so 102
        result = Mongo.getDeals(categoryId, offset, limit, sort, direction)
13772 kshitij.so 103
        json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
104
        resp.body = json.dumps(json_docs, encoding='utf-8')
13790 kshitij.so 105
 
106
class MasterData():
107
    def on_get(self,req, resp, skuId):
108
        result = Mongo.getItem(skuId)
13798 kshitij.so 109
        try:
110
            json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
111
            resp.body = json.dumps(json_docs, encoding='utf-8')
112
        except:
113
            json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
114
            resp.body = json.dumps(json_docs, encoding='utf-8')
13790 kshitij.so 115
 
13827 kshitij.so 116
class LiveData():
117
    def on_get(self,req, resp):
118
        skuBundleId = req.get_param_as_int("skuBundleId")
119
        source_id = req.get_param_as_int("source_id")
120
        result = FetchLivePrices.getLatestPrice(skuBundleId, source_id)
121
        try:
122
            json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
123
            resp.body = json.dumps(json_docs, encoding='utf-8')
124
        except:
13837 kshitij.so 125
            json_docs = [json.dumps(doc, default=json_util.default) for doc in []]
13827 kshitij.so 126
            resp.body = json.dumps(json_docs, encoding='utf-8')
13834 kshitij.so 127
 
128
class CashBack():
129
    def on_get(self,req, resp):
130
        identifier = req.get_param("identifier")
131
        source_id = req.get_param_as_int("source_id")
132
        result = Mongo.getCashBackDetails(identifier, source_id)
133
        try:
13837 kshitij.so 134
            json_docs = json.dumps(result, default=json_util.default)
13834 kshitij.so 135
            resp.body = json.dumps(json_docs, encoding='utf-8')
136
        except:
13837 kshitij.so 137
            json_docs = json.dumps({}, default=json_util.default)
13834 kshitij.so 138
            resp.body = json.dumps(json_docs, encoding='utf-8')
13582 amit.gupta 139