/// <summary> /// 新增/删除/修改 sys_Online /// </summary> /// <param name="fam">sys_OnlineTable实体类</param> /// <returns>返回0操正常</returns> public override int sys_OnlineInsertUpdate(sys_OnlineTable fam) { int rInt = 0; using (SqlConnection Conn = GetSqlConnection()) { SqlCommand cmd = new SqlCommand("sys_OnlineInsertUpdateDelete", Conn); cmd.CommandType = CommandType.StoredProcedure; //设置参数 cmd.Parameters.Add("@DB_Option_Action_", SqlDbType.NVarChar).Value = fam.DB_Option_Action_; //操作方法 Insert:增加 Update:修改 Delete:删除 Disp:显示单笔记录 cmd.Parameters.Add("@OnlineID", SqlDbType.Int).Value = fam.OnlineID; //自动ID cmd.Parameters.Add("@O_SessionID", SqlDbType.VarChar).Value = fam.O_SessionID; //用户SessionID cmd.Parameters.Add("@O_UserName", SqlDbType.NVarChar).Value = fam.O_UserName; //用户名 cmd.Parameters.Add("@O_Ip", SqlDbType.VarChar).Value = fam.O_Ip; //用户IP地址 cmd.Parameters.Add("@O_LoginTime", SqlDbType.DateTime).Value = fam.O_LoginTime; //登陆时间 cmd.Parameters.Add("@O_LastTime", SqlDbType.DateTime).Value = fam.O_LastTime; //最后访问时间 cmd.Parameters.Add("@O_LastUrl", SqlDbType.NVarChar).Value = fam.O_LastUrl; //最后请求网站 Conn.Open(); rInt = Convert.ToInt32(cmd.ExecuteScalar()); cmd.Dispose(); Conn.Dispose(); Conn.Close(); } return(rInt); }
/// <summary> /// 将记录集转为sys_OnlineTable实体类 /// </summary> /// <param name="dr">记录集</param> /// <returns>sys_OnlineTable</returns> protected object Populatesys_Online(IDataReader dr) { sys_OnlineTable nc = new sys_OnlineTable(); if (!Convert.IsDBNull(dr["OnlineID"])) { nc.OnlineID = Convert.ToInt32(dr["OnlineID"]); // 自动ID } if (!Convert.IsDBNull(dr["O_SessionID"])) { nc.O_SessionID = Convert.ToString(dr["O_SessionID"]).Trim(); // 用户SessionID } if (!Convert.IsDBNull(dr["O_UserName"])) { nc.O_UserName = Convert.ToString(dr["O_UserName"]).Trim(); // 用户名 } if (!Convert.IsDBNull(dr["O_Ip"])) { nc.O_Ip = Convert.ToString(dr["O_Ip"]).Trim(); // 用户IP地址 } if (!Convert.IsDBNull(dr["O_LoginTime"])) { nc.O_LoginTime = Convert.ToDateTime(dr["O_LoginTime"]); // 登陆时间 } if (!Convert.IsDBNull(dr["O_LastTime"])) { nc.O_LastTime = Convert.ToDateTime(dr["O_LastTime"]); // 最后访问时间 } if (!Convert.IsDBNull(dr["O_LastUrl"])) { nc.O_LastUrl = Convert.ToString(dr["O_LastUrl"]).Trim(); // 最后请求网站 } return(nc); }
/// <summary> /// 删除在线用户 /// </summary> /// <param name="username">用户名</param> /// <param name="sessionid">用户sessionid</param> public void OnlineRemove(string username, string sessionid) { sys_OnlineTable so = BusinessFacade.sys_OnlineDisp(username, sessionid); so.DB_Option_Action_ = "Delete"; BusinessFacade.sys_OnlineInsertUpdate(so); }
/// <summary> /// 移除在线用户 /// </summary> /// <param name="username">用户名</param> public void OnlineRemove(string username) { sys_OnlineTable online = BusinessFacade.sys_OnlineDisp(username); online.DB_Option_Action_ = "Delete"; BusinessFacade.sys_OnlineInsertUpdate(online); }
/// <summary> /// 更新用户最后访问时间 /// </summary> /// <param name="username">用户名</param> public void OnlineAccess(string username) { sys_OnlineTable online = BusinessFacade.sys_OnlineDisp(username); online.O_LastTime = DateTime.Now; online.O_LastUrl = Common.GetScriptUrl; online.DB_Option_Action_ = "Update"; BusinessFacade.sys_OnlineInsertUpdate(online); }
/// <summary> /// 获得在线用户信息 /// </summary> /// <param name="username">用户名</param> /// <returns></returns> public OnlineUser <string> GetOnlineMember(string username) { sys_OnlineTable online = BusinessFacade.sys_OnlineDisp(username); OnlineUser <string> ou = new OnlineUser <string>(); ou.U_Guid = online.O_SessionID; ou.U_LastIP = online.O_Ip; ou.U_LastTime = online.O_LastTime; ou.U_LastUrl = online.O_LastUrl; ou.U_Name = online.O_UserName; ou.U_StartTime = online.O_LoginTime; TimeSpan ts = ou.U_LastTime - ou.U_StartTime; ou.U_OnlineSeconds = ts.TotalSeconds; ou.U_Type = true; return(ou); }
/// <summary> /// 新增/删除/修改 sys_Online /// </summary> /// <param name="fam">sys_OnlineTable实体类</param> /// <returns>返回0操正常</returns> public abstract int sys_OnlineInsertUpdate(sys_OnlineTable fam);