Exemplo n.º 1
0
    def post(self):
        UPDATE_RQST = 1
        RETRIEVE_FROM_DATE = 2
        RETRIEVE_FROM_DATES = 3
        draw_types_lotto = {'55':0, '49':0, '45':0, '42':0}
        draw_types_digits = {'6d':0, '4d':0}
        draw_types_daily_3d = {'11am':0, '4pm':0, '9pm':0}
        draw_types_daily_2d = {'11am':0, '4pm':0, '9pm':0}
        date=CurrentDate()
        inp = self.request.body
        try:
            d=json.loads(inp)
            logging.debug(d)
            if not d: return
        except ValueError:
            self.response.headers['Content-Type'] = 'text/plain'
            self.response.set_status( 500,"Internal server error")
            self.response.write(' Invalid JSON object in request: '+inp)
            logging.error( 'Invalid JSON object: '+inp)
            return
        responseList=[]
        self.request_id = d['rid']
        self.request_data = d['rdata']
        self.request_extra = d['extra']
        #self.month = e['v1']
        #self.year = e['v3']
        res = {}
        if self.request_id == UPDATE_RQST:
            for draw in draw_types_lotto:
                found = memcache.get(draw)
                if found:
                    logging.debug(found)
                    res[draw] = found

            for draw in draw_types_digits:
                found = memcache.get(draw)
                if found:
                    res[draw] = found

            for time in draw_types_daily_2d:
                found = memcache.get('2d_'+time)
                if found:
                    res['2d_'+time] = found

            for time in draw_types_daily_3d:
                found = memcache.get('3d_'+time)
                if found:
                    res['3d_'+time] = found
            logging.debug(res)
        elif self.request_id == RETRIEVE_FROM_DATE:
            draw_date = DrawDate.get_by_key_name(self.request_data)
            if draw_date is None:
                cronJob().get()
                draw_date = DrawDate.get_by_key_name(self.request_data)
        self.response.set_status(200,"OK")
        resultElement={'id':1, 'rid':self.request_id, 'result':res}
        logging.debug(resultElement)
        responseList.append(resultElement)
        self.response.out.write(json.dumps(responseList))