/// <summary> /// 写入日志 /// </summary> /// <param name="action">动作</param> public static void WriteLogActions(string action) { if (IsAdminLogin()) { string adminLogId = SessionHelper.GetSession(sessionAdminLogIDKey).ToString(); //string adminLogId = AuthenticationHelper.GetClaim(sessionAdminLogIDKey); if (string.IsNullOrEmpty(adminLogId)) { adminLogId = CookiesHelper.GetCookie(cookiesAdminLogIDKey);//日志GUID //adminLogId = AuthenticationHelper.GetClaim(cookiesAdminLogIDKey);//日志GUID } if (!string.IsNullOrEmpty(adminLogId)) { AdminLog log = AdminLog.FindByGUID(adminLogId); if (log != null) { if (string.IsNullOrEmpty(log.Actions)) { log.Actions = $"{DateTime.Now:yyyy-MM-dd HH:mm}: {action}"; } else { log.Actions = log.Actions + $"|||{DateTime.Now:yyyy-MM-dd HH:mm}: {action}"; } log.LastUpdateTime = DateTime.Now; log.Update(); } } } }
/// <summary> /// 验证管理员是否登录 /// </summary> /// <returns>是否登录</returns> public static bool IsAdminLogin() { string adminName = SessionHelper.GetSession(sessionAdminNameKey).ToString(); //用户名 string adminID = SessionHelper.GetSession(sessionAdminIDKey).ToString(); //ID //如果Session失效,则用Cookies判断 if (string.IsNullOrEmpty(adminName) || string.IsNullOrEmpty(adminID)) { string cooAdminName = CookiesHelper.GetCookie(cookiesAdminNameKey); //用户名 string cooAdminID = CookiesHelper.GetCookie(cookiesAdminIDKey); //ID string cooLoginInfo = CookiesHelper.GetCookie(cookiesAdminInfoKey); //信息 string cooAdminLogID = CookiesHelper.GetCookie(cookiesAdminLogIDKey); //日志GUID if (string.IsNullOrEmpty(cooAdminID) || string.IsNullOrEmpty(cooAdminName) || string.IsNullOrEmpty(cooLoginInfo) || string.IsNullOrEmpty(cooAdminLogID)) { return(false);//信息不完整 } else { //全不为空则判断信息是否正确 Admin model = Find(Admin._.UserName == Utils.SqlStr(cooAdminName));// FindByName(Utils.SqlStr(cooAdminName)); if (model == null) { return(false);//找不到管理员 } else { if (Utils.MD5(model.UserName + model.PassWord + model.Salt + Utils.GetIP()) == cooLoginInfo) { //信息正确,重建session //获取日志ID if (AdminLog.FindByGUID(cooAdminLogID) == null) { ClearInfo(); //清除信息 return(false); //日志出错 } //重新写入Session 和 Cookies SetAdminInfo(model.UserName, model.PassWord, model.Id, 0, "", cooAdminLogID, model.Salt); return(true); } else { ClearInfo(); //清除信息 return(false); //信息错误 } } } } else { return(true);//Session未失效,正确 } }
/// <summary> /// 写入日志 /// </summary> /// <param name="action">动作</param> public static void WriteLogActions(string action) { if (IsAdminLogin()) { string adminLogId = SessionHelper.GetSession(sessionAdminLogIDKey).ToString(); if (string.IsNullOrEmpty(adminLogId)) { adminLogId = CookiesHelper.GetCookie(cookiesAdminLogIDKey);//日志GUID } if (!string.IsNullOrEmpty(adminLogId)) { AdminLog log = AdminLog.FindByGUID(adminLogId); if (log != null) { log.Actions = log.Actions + action; log.LastUpdateTime = DateTime.Now; log.Update(); } } } }