Subversion Repositories SmartDukaan

Rev

Rev 14041 | Rev 14046 | 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
13895 kshitij.so 6
from dtr.utils import FetchLivePrices, DealSheet as X_DealSheet
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
        try:
19
            result_json = json.loads(req.stream.read(), encoding='utf-8')
20
        except ValueError:
21
            raise falcon.HTTPError(falcon.HTTP_400,
22
                'Malformed JSON',
23
                'Could not decode the request body. The '
24
                'JSON was incorrect.')
25
 
26
        result = Mongo.addCategoryDiscount(result_json)
27
        resp.body = json.dumps(result, encoding='utf-8')
13969 kshitij.so 28
 
29
    def on_put(self, req, resp, _id):
13970 kshitij.so 30
        try:
31
            result_json = json.loads(req.stream.read(), encoding='utf-8')
32
        except ValueError:
33
            raise falcon.HTTPError(falcon.HTTP_400,
34
                'Malformed JSON',
35
                'Could not decode the request body. The '
36
                'JSON was incorrect.')
37
 
38
        result = Mongo.updateCategoryDiscount(result_json, _id)
39
        resp.body = json.dumps(result, encoding='utf-8')
40
 
13966 kshitij.so 41
 
13969 kshitij.so 42
 
13572 kshitij.so 43
class SkuSchemeDetails(object):
44
 
45
    def on_get(self, req, resp):
13629 kshitij.so 46
 
13635 kshitij.so 47
        result = Mongo.getAllSkuWiseSchemeDetails()
13629 kshitij.so 48
        json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
49
        resp.body = json.dumps(json_docs, encoding='utf-8')
13572 kshitij.so 50
 
51
 
52
    def on_post(self, req, resp):
53
 
54
        try:
55
            result_json = json.loads(req.stream.read(), encoding='utf-8')
56
        except ValueError:
57
            raise falcon.HTTPError(falcon.HTTP_400,
58
                'Malformed JSON',
59
                'Could not decode the request body. The '
60
                'JSON was incorrect.')
61
 
62
        result = Mongo.addSchemeDetailsForSku(result_json)
63
        resp.body = json.dumps(result, encoding='utf-8')
64
 
65
class SkuDiscountInfo():
66
 
67
    def on_get(self, req, resp):
13629 kshitij.so 68
 
13970 kshitij.so 69
        offset = req.get_param_as_int("offset")
70
        limit = req.get_param_as_int("limit")
71
        result = Mongo.getallSkuDiscountInfo(offset,limit)
13629 kshitij.so 72
        json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
73
        resp.body = json.dumps(json_docs, encoding='utf-8')
13572 kshitij.so 74
 
75
 
76
    def on_post(self, req, resp):
77
 
78
        try:
79
            result_json = json.loads(req.stream.read(), encoding='utf-8')
80
        except ValueError:
81
            raise falcon.HTTPError(falcon.HTTP_400,
82
                'Malformed JSON',
83
                'Could not decode the request body. The '
84
                'JSON was incorrect.')
85
 
86
        result = Mongo.addSkuDiscountInfo(result_json)
87
        resp.body = json.dumps(result, encoding='utf-8')
13970 kshitij.so 88
 
89
    def on_put(self, req, resp, _id):
90
        try:
91
            result_json = json.loads(req.stream.read(), encoding='utf-8')
92
        except ValueError:
93
            raise falcon.HTTPError(falcon.HTTP_400,
94
                'Malformed JSON',
95
                'Could not decode the request body. The '
96
                'JSON was incorrect.')
97
 
98
        result = Mongo.updateSkuDiscount(result_json, _id)
99
        resp.body = json.dumps(result, encoding='utf-8')
13572 kshitij.so 100
 
101
class ExceptionalNlc():
102
 
103
    def on_get(self, req, resp):
13629 kshitij.so 104
 
13970 kshitij.so 105
        offset = req.get_param_as_int("offset")
106
        limit = req.get_param_as_int("limit")
107
 
108
        result = Mongo.getAllExceptionlNlcItems(offset, limit)
13629 kshitij.so 109
        json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
110
        resp.body = json.dumps(json_docs, encoding='utf-8')
13572 kshitij.so 111
 
112
    def on_post(self, req, resp):
113
 
114
        try:
115
            result_json = json.loads(req.stream.read(), encoding='utf-8')
116
        except ValueError:
117
            raise falcon.HTTPError(falcon.HTTP_400,
118
                'Malformed JSON',
119
                'Could not decode the request body. The '
120
                'JSON was incorrect.')
121
 
122
        result = Mongo.addExceptionalNlc(result_json)
123
        resp.body = json.dumps(result, encoding='utf-8')
13970 kshitij.so 124
 
125
    def on_put(self, req, resp, _id):
126
        try:
127
            result_json = json.loads(req.stream.read(), encoding='utf-8')
128
        except ValueError:
129
            raise falcon.HTTPError(falcon.HTTP_400,
130
                'Malformed JSON',
131
                'Could not decode the request body. The '
132
                'JSON was incorrect.')
133
 
134
        result = Mongo.updateExceptionalNlc(result_json, _id)
135
        resp.body = json.dumps(result, encoding='utf-8')
13572 kshitij.so 136
 
13772 kshitij.so 137
class Deals():
13779 kshitij.so 138
    def on_get(self,req, resp, userId):
139
        categoryId = req.get_param_as_int("categoryId")
140
        offset = req.get_param_as_int("offset")
141
        limit = req.get_param_as_int("limit")
13798 kshitij.so 142
        sort = req.get_param("sort")
13802 kshitij.so 143
        direction = req.get_param_as_int("direction")
14034 kshitij.so 144
        result = Mongo.getNewDeals(userId, categoryId, offset, limit, sort, direction)
13772 kshitij.so 145
        json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
13966 kshitij.so 146
        resp.body = json.dumps(json_docs, encoding='utf-8')
13790 kshitij.so 147
 
148
class MasterData():
149
    def on_get(self,req, resp, skuId):
150
        result = Mongo.getItem(skuId)
13798 kshitij.so 151
        try:
152
            json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
13966 kshitij.so 153
            resp.body = json.dumps(json_docs, encoding='utf-8')
13798 kshitij.so 154
        except:
155
            json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
13966 kshitij.so 156
            resp.body = json.dumps(json_docs, encoding='utf-8')
13790 kshitij.so 157
 
13827 kshitij.so 158
class LiveData():
159
    def on_get(self,req, resp):
13865 kshitij.so 160
        if req.get_param_as_int("id") is not None:
161
            print "****getting only for id"
162
            id = req.get_param_as_int("id")
163
            try:
164
                result = FetchLivePrices.getLatestPriceById(id)
13867 kshitij.so 165
                json_docs = json.dumps(result, default=json_util.default)
13966 kshitij.so 166
                resp.body = json.dumps(json_docs, encoding='utf-8')
13865 kshitij.so 167
            except:
168
                json_docs = json.dumps({}, default=json_util.default)
13966 kshitij.so 169
                resp.body = json.dumps(json_docs, encoding='utf-8')
13834 kshitij.so 170
 
13865 kshitij.so 171
        else:
172
            print "****getting only for skuId"
173
            skuBundleId = req.get_param_as_int("skuBundleId")
174
            source_id = req.get_param_as_int("source_id")
175
            try:
176
                result = FetchLivePrices.getLatestPrice(skuBundleId, source_id)
177
                json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
13966 kshitij.so 178
                resp.body = json.dumps(json_docs, encoding='utf-8')
13865 kshitij.so 179
            except:
180
                json_docs = [json.dumps(doc, default=json_util.default) for doc in [{}]]
13966 kshitij.so 181
                resp.body = json.dumps(json_docs, encoding='utf-8')
13865 kshitij.so 182
 
13834 kshitij.so 183
class CashBack():
184
    def on_get(self,req, resp):
185
        identifier = req.get_param("identifier")
186
        source_id = req.get_param_as_int("source_id")
187
        try:
13838 kshitij.so 188
            result = Mongo.getCashBackDetails(identifier, source_id)
13837 kshitij.so 189
            json_docs = json.dumps(result, default=json_util.default)
13964 kshitij.so 190
            resp.body = json_docs
13834 kshitij.so 191
        except:
13837 kshitij.so 192
            json_docs = json.dumps({}, default=json_util.default)
13963 kshitij.so 193
            resp.body = json_docs
13892 kshitij.so 194
 
195
class DealSheet():
196
    def on_get(self,req, resp):
13895 kshitij.so 197
        X_DealSheet.sendMail()
13897 kshitij.so 198
        json_docs = json.dumps({'True':'Sheet generated, mail sent.'}, default=json_util.default)
13966 kshitij.so 199
        resp.body = json.dumps(json_docs, encoding='utf-8')
13892 kshitij.so 200
 
13970 kshitij.so 201
class DealerPrice():
202
 
203
    def on_get(self, req, resp):
204
 
205
        offset = req.get_param_as_int("offset")
206
        limit = req.get_param_as_int("limit")
207
        result = Mongo.getAllDealerPrices(offset,limit)
208
        json_docs = [json.dumps(doc, default=json_util.default) for doc in result]
209
        resp.body = json.dumps(json_docs, encoding='utf-8')
210
 
211
    def on_post(self, req, resp):
212
 
213
        try:
214
            result_json = json.loads(req.stream.read(), encoding='utf-8')
215
        except ValueError:
216
            raise falcon.HTTPError(falcon.HTTP_400,
217
                'Malformed JSON',
218
                'Could not decode the request body. The '
219
                'JSON was incorrect.')
220
 
221
        result = Mongo.addSkuDealerPrice(result_json)
222
        resp.body = json.dumps(result, encoding='utf-8')
223
 
224
    def on_put(self, req, resp, _id):
225
        try:
226
            result_json = json.loads(req.stream.read(), encoding='utf-8')
227
        except ValueError:
228
            raise falcon.HTTPError(falcon.HTTP_400,
229
                'Malformed JSON',
230
                'Could not decode the request body. The '
231
                'JSON was incorrect.')
232
 
233
        result = Mongo.updateSkuDealerPrice(result_json, _id)
234
        resp.body = json.dumps(result, encoding='utf-8')
235
 
236
 
14041 kshitij.so 237
class ResetCache():
238
 
239
    def on_get(self,req, resp, userId):
14044 kshitij.so 240
        result = Mongo.resetCache(userId)
241
        resp.body = json.dumps(result, encoding='utf-8')