コード例 #1
0
        public void HandleEvent(CreateVoteEvent @event)
        {
            var mkey = string.Format(KEY_EVAL_MOTTO_FMT, @event.TheDay, @event.MID);

            if (@event.Vote == 1)
            {
                var entries = _redisHelper.HashGetAll(mkey);
                if (entries != null && entries.Length > 0)
                {
                    var motto = ConvertFromHashEntries(entries);
                    motto.Up   += 1;
                    motto.Score = Utils.Hot(motto.Up, motto.Down, motto.AddTime);

                    _redisHelper.HashSet(mkey, new HashEntry[] { new HashEntry(F_UP, motto.Up), new HashEntry(F_SCORE, motto.Score) });

                    _redisHelper.SortedSetAdd(string.Format(KEY_RANK_MOTTO_FMT, @event.TheDay),
                                              @event.MID.ToString(), motto.Score);
                }
            }
            else if (@event.Vote == -1)
            {
                var entries = _redisHelper.HashGetAll(mkey);
                if (entries != null && entries.Length > 0)
                {
                    var motto = ConvertFromHashEntries(entries);
                    motto.Down += 1;
                    motto.Score = Utils.Hot(motto.Up, motto.Down, motto.AddTime);

                    _redisHelper.HashSet(mkey, new HashEntry[] { new HashEntry(F_DOWN, motto.Down), new HashEntry(F_SCORE, motto.Score) });

                    _redisHelper.SortedSetAdd(string.Format(KEY_RANK_MOTTO_FMT, @event.TheDay),
                                              @event.MID.ToString(), motto.Score);
                }
            }
        }
コード例 #2
0
 public void HandleEvent(LoadUserInfoEvent @event)
 {
     _redisHelper.HashSet(string.Format(KEY_USER_INFO_FMT, @event.UserInfo.Id),
                          ConvertToHashEntries(@event.UserInfo),
                          TimeSpan.FromDays(7));
 }