| | |
| | | { |
| | | //定义全局信息返回变量 |
| | | ToMessage mes = new ToMessage(); |
| | | RedisHelper redis = new RedisHelper(); |
| | | RedisCommon redis = new RedisCommon(); |
| | | //获取企业配置Enterprise |
| | | private static readonly string Enterprise = AppSetting.GetAppSetting("Enterprise"); |
| | | |
| | |
| | | |
| | | User loginUser = JsonConvert.DeserializeObject<User>(JsonConvert.SerializeObject(ms)); |
| | | //如果redis登录用户中不存在当前用户 |
| | | if (redis.Get<User>(ms.rediskey, 0) == null) |
| | | if (redis.GetStringKey<User>(ms.rediskey) == null) |
| | | { |
| | | //写入redis(注意:redis类里面的失效时间必须在key创建完成之后才生效) |
| | | redis.Set<User>(ms.rediskey, ms, redis.secondsTimeOut, 0); |
| | | redis.SetStringKey<User>(ms.rediskey, ms, TimeSpan.FromSeconds(redis.secondsTimeOut)); |
| | | //写入登录操作记录 |
| | | LogHelper.DbOperateLog(ms.usercode, "登录", "登录了系统", ms.usertype); |
| | | mes.code = "200"; |
| | |
| | | else //如果存在 |
| | | { |
| | | //获取redis中当前用户信息 |
| | | User r_loginUser = redis.Get<User>(ms.rediskey, 0); |
| | | User r_loginUser = redis.GetStringKey<User>(ms.rediskey); |
| | | //如果session中的用户usercode和redis中的用户usercode匹配 |
| | | if ((r_loginUser.rediskey).Equals(loginUser.rediskey)) |
| | | { |
| | |
| | | else |
| | | { |
| | | //重置过期时间(注意:redis类里面的失效时间必须在key创建完成之后才生效) |
| | | redis.Set<User>(loginUser.rediskey, loginUser, redis.secondsTimeOut, 0); |
| | | redis.SetStringKey<User>(loginUser.rediskey, loginUser, TimeSpan.FromSeconds(redis.secondsTimeOut)); |
| | | //写入登录操作记录 |
| | | LogHelper.DbOperateLog(ms.usercode, "登录", "登录了系统", ms.usertype); |
| | | mes.data = ms; |
| | |
| | | } |
| | | }); |
| | | bool aa = DapperHelper.DoTransaction(list); |
| | | redis.Remove(us.rediskey, 0);//删除redis |
| | | redis.Set<User>(us.rediskey, us, redis.secondsTimeOut, 0);//写入redis |
| | | redis.KeyDelete(us.rediskey);//删除redis |
| | | redis.SetStringKey<User>(us.rediskey, us, TimeSpan.FromSeconds(redis.secondsTimeOut));//写入redis |
| | | } |
| | | else |
| | | { |
| | | redis.Remove(us.rediskey, 0);//删除redis |
| | | redis.Set<User>(us.rediskey, us, redis.secondsTimeOut, 0);//写入redis |
| | | redis.KeyDelete(us.rediskey);//删除redis |
| | | redis.SetStringKey<User>(us.rediskey, us, TimeSpan.FromSeconds(redis.secondsTimeOut));//写入redis |
| | | } |
| | | //写入日志 |
| | | LogHelper.DbOperateLog(us.usercode, "强制下线", "被强制下线了", us.usertype); |
| | |
| | | |
| | | User loginUser = JsonConvert.DeserializeObject<User>(JsonConvert.SerializeObject(ms)); |
| | | //如果redis登录用户中不存在当前用户 |
| | | if (redis.Get<User>(ms.rediskey, 0) == null) |
| | | if (redis.GetStringKey<User>(ms.rediskey) == null) |
| | | { |
| | | //写入redis(注意:redis类里面的失效时间必须在key创建完成之后才生效) |
| | | redis.Set<User>(ms.rediskey, ms, redis.secondsTimeOut, 0); |
| | | redis.SetStringKey<User>(ms.rediskey, ms, TimeSpan.FromSeconds(redis.secondsTimeOut)); |
| | | //写入登录操作记录 |
| | | LogHelper.DbOperateLog(ms.usercode, "登录", "登录了系统", ms.usertype); |
| | | mes.code = "200"; |
| | |
| | | else //如果存在 |
| | | { |
| | | //获取redis中当前用户信息 |
| | | User r_loginUser = redis.Get<User>(ms.rediskey, 0); |
| | | User r_loginUser = redis.GetStringKey<User>(ms.rediskey); |
| | | //如果session中的用户usercode和redis中的用户usercode匹配 |
| | | if ((r_loginUser.rediskey).Equals(loginUser.rediskey)) |
| | | { |
| | | redis.Remove(loginUser.rediskey, 0);//删除redis |
| | | redis.Set<User>(loginUser.rediskey, ms, redis.secondsTimeOut, 0);//写入redis |
| | | redis.KeyDelete(loginUser.rediskey);//删除redis |
| | | redis.SetStringKey<User>(loginUser.rediskey, ms, TimeSpan.FromSeconds(redis.secondsTimeOut));//写入redis |
| | | } |
| | | else |
| | | { |
| | | //重置过期时间(注意:redis类里面的失效时间必须在key创建完成之后才生效) |
| | | redis.Set<User>(loginUser.rediskey, loginUser, redis.secondsTimeOut, 0); |
| | | redis.SetStringKey<User>(loginUser.rediskey, loginUser, TimeSpan.FromSeconds(redis.secondsTimeOut)); |
| | | //写入登录操作记录 |
| | | LogHelper.DbOperateLog(ms.usercode, "登录", "登录了系统", ms.usertype); |
| | | mes.data = ms; |