Exemple #1
0
 def get_used_today(cls, aid):
     today = datetime.date.today().strftime('%y%m%d')
     key = cls.USED_TODAY % ({'day': today, 'aid': aid})
     if not Redis.exists(key):
         Redis.set(key, 0)
         Redis.expire(key, 60 * 60 * 24)
     return int(Redis.get(key))
Exemple #2
0
 def get_limit_config(cls, report_type):
     key = cls.REPORT_CONFIG % {'rtype': report_type}
     if not Redis.exists(key):
         cfg = cls.collection.find_one({'report_type': report_type})
         _id = cfg and str(cfg['_id'])
         Redis.set(key, _id, 86400)
     return Redis.get(key)
Exemple #3
0
 def update_counter(cls, countid):
     key = cls.H5KEY.format(countid)
     if not Redis.exists(key):
         num = 1
     else:
         num = int(Redis.get(key)) + 1
         # 限制数字不能超过八位
         if num > 99999999:
             num = 1
     Redis.set(key, num)
     return num
Exemple #4
0
 def check_user_activity(cls, aid, phone, device):
     # 每个手机号码/设备ID在此类活动历史只能参与1次活动,所以将aid强制改为all
     aid = 'all'
     for k, xid in {'phone': phone, 'device': device}.iteritems():
         key = cls.USER_ACTIVITY % ({'aid': aid, 'xid': xid})
         if not Redis.exists(key):
             cnt = cls._get_user_activity(aid, k, xid)
             Redis.set(key, cnt, 60 * 60 * 24)
         cnt = int(Redis.get(key))
         if cnt:
             return True
     return False
Exemple #5
0
    def get_all_value(cls):
        mon = time.strftime('%Y-%m', time.localtime(time.time()))

        key = 'PayForGift:all_exchange_value:{0}'.format(mon)

        value = Redis.get(key)
        if not value:
            value = 0
            pay_for_gift_logs = list(cls.select())
            for log in pay_for_gift_logs:
                value += log.exchange_value

                Redis.set(key, value)

        return value