📄 clsuser.cls
字号:
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "clsUser"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Attribute VB_Ext_KEY = "SavedWithClassBuilder6" ,"Yes"
Attribute VB_Ext_KEY = "Top_Level" ,"Yes"
Option Explicit
'保持属性值的局部变量
Private mvarID As Long '用户编号
Private mvarUserName As String '用户名
Private mvarPassword As String '密码
Private mvarTrueName As String '真实姓名
Private mvarLastLoginTime As Date '上次登录时间
Private mvarUserType As Integer '用户类型
Public Property Let LastLoginTime(ByVal vData As Date)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.LastLoginTime = 5
mvarLastLoginTime = vData
End Property
Public Property Get LastLoginTime() As Date
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.LastLoginTime
LastLoginTime = mvarLastLoginTime
End Property
Public Property Let UserType(ByVal vData As Integer)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.UserType = 5
mvarUserType = vData
End Property
Public Property Get UserType() As Integer
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.UserType
UserType = mvarUserType
End Property
Public Property Let TrueName(ByVal vData As String)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.TrueName = 5
mvarTrueName = vData
End Property
Public Property Get TrueName() As String
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.TrueName
TrueName = mvarTrueName
End Property
Public Property Let Password(ByVal vData As String)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.Password = 5
mvarPassword = vData
End Property
Public Property Get Password() As String
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.Password
Password = mvarPassword
End Property
Public Property Let UserName(ByVal vData As String)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.UserName = 5
mvarUserName = vData
End Property
Public Property Get UserName() As String
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.UserName
UserName = mvarUserName
End Property
Public Property Let ID(ByVal vData As Long)
'向属性指派值时使用,位于赋值语句的左边。
'Syntax: X.ID = 5
mvarID = vData
End Property
Public Property Get ID() As Long
'检索属性值时使用,位于赋值语句的右边。
'Syntax: Debug.Print X.ID
ID = mvarID
End Property
'添加用户信息
Public Function AddNew() As gxcAddNew
On Error Resume Next
'使用ADO的内置Command类来调用存储过程
Dim cmd As New ADODB.Command
'指定命令对象当前的活动连接
cmd.ActiveConnection = g_Conn
'指定命令类型为调用存储过程
cmd.CommandType = adCmdStoredProc
'指定命令文本,即要调用的存储过程名
cmd.CommandText = "UserAddNew"
'指定命令对象的参数
cmd.Parameters("@UserName") = RealString(Me.UserName)
cmd.Parameters("@Password") = RealString(Me.Password)
cmd.Parameters("@TrueName") = RealString(Me.TrueName)
cmd.Parameters("@LastLoginTime") = Null
cmd.Parameters("@UserType") = Me.UserType
cmd.Parameters("@ID") = Null
cmd.Parameters("@ReturnValue") = Null
'执行命令
cmd.Execute
'由存储过程输出参数决定函数返回值 (自定义枚举)
AddNew = cmd.Parameters("@ReturnValue").Value
'获取添加成功后用户信息的ID值
If AddNew = AddNewOK Then Me.ID = cmd.Parameters("@ID").Value
'释放命令对象
Set cmd = Nothing
End Function
'更新用户信息
Public Function Update() As gxcUpdate
On Error Resume Next
'使用ADO的内置Command类来调用存储过程
Dim cmd As New ADODB.Command
'为创建Command的参数而使用
Dim param As ADODB.Parameter
'指定命令对象当前的活动连接
cmd.ActiveConnection = g_Conn
'指定命令类型为调用存储过程
cmd.CommandType = adCmdStoredProc
'指定命令文本,即要调用的存储过程名
cmd.CommandText = "UserUpdate"
'创建参数并设置各参数的属性
'以下是输入型参数
Set param = cmd.CreateParameter("UserID", adInteger, adParamInput, 4, Me.ID)
cmd.Parameters.Append param
Set param = cmd.CreateParameter("UserName", adVarChar, adParamInput, 100, Me.UserName)
cmd.Parameters.Append param
Set param = cmd.CreateParameter("Password", adVarChar, adParamInput, 100, Me.Password)
cmd.Parameters.Append param
Set param = cmd.CreateParameter("TrueName", adVarChar, adParamInput, 10, Me.TrueName)
cmd.Parameters.Append param
Set param = cmd.CreateParameter("LastLoginTime", adDate, adParamInput, 8, Me.LastLoginTime)
cmd.Parameters.Append param
Set param = cmd.CreateParameter("UserType", adBoolean, adParamInput, 4, Me.UserType)
cmd.Parameters.Append param
'以下是输出型参数
Set param = cmd.CreateParameter("ReturnValue", adInteger, adParamOutput)
cmd.Parameters.Append param
'执行命令
cmd.Execute
'由存储过程输出参数决定函数返回值(自定义枚举)
Update = cmd.Parameters("ReturnValue").Value
'释放命令对象
Set cmd = Nothing
End Function
'删除用户信息
Public Function Delete(lngID As Long) As gxcDelete
On Error Resume Next
'使用ADO的内置Command类来调用存储过程
Dim cmd As New ADODB.Command
'为创建Command的参数而使用
Dim param As ADODB.Parameter
'指定命令对象当前的活动连接
cmd.ActiveConnection = g_Conn
'指定命令类型为调用存储过程
cmd.CommandType = adCmdStoredProc
'指定命令文本,即要调用的存储过程名
cmd.CommandText = "UserDelete"
'创建参数并设置各参数的属性
'以下是输入型参数
Set param = cmd.CreateParameter("UserID", adInteger, adParamInput, 4, lngID)
cmd.Parameters.Append param
'以下是输出型参数
Set param = cmd.CreateParameter("ReturnValue", adInteger, adParamOutput)
cmd.Parameters.Append param
'执行命令
cmd.Execute
'由存储过程输出参数决定函数返回值(自定义枚举)
Delete = cmd.Parameters("ReturnValue").Value
'释放命令对象
Set cmd = Nothing
End Function
'验证用户名和密码并获取合法用户信息
Public Function IsValidUser(strUserName As String, strPassword As String, lngUserID As Long, strTrueName As String, lngUserType As Long) As gxcLoginResult
On Error Resume Next
'使用ADO的内置Command类来调用存储过程
Dim cmd As New ADODB.Command
'为创建Command的参数而使用
Dim param As ADODB.Parameter
'指定命令对象当前的活动连接
cmd.ActiveConnection = g_Conn
'指定命令类型为调用存储过程
cmd.CommandType = adCmdStoredProc
'指定命令文本,即要调用的存储过程名
cmd.CommandText = "IsValidUser"
'创建参数并设置各参数的属性
'以下是输入型参数
Set param = cmd.CreateParameter("UserName", adVarChar, adParamInput, 100, strUserName)
cmd.Parameters.Append param
Set param = cmd.CreateParameter("Password", adVarChar, adParamInput, 100, strPassword)
cmd.Parameters.Append param
'以下是输出型参数
Set param = cmd.CreateParameter("UserID", adInteger, adParamOutput)
cmd.Parameters.Append param
Set param = cmd.CreateParameter("TrueName", adVarChar, adParamOutput, 10)
cmd.Parameters.Append param
Set param = cmd.CreateParameter("UserType", adBoolean, adParamOutput)
cmd.Parameters.Append param
Set param = cmd.CreateParameter("ReturnValue", adInteger, adParamOutput)
cmd.Parameters.Append param
'执行命令
cmd.Execute
'由存储过程输出参数决定函数返回值(自定义枚举)
IsValidUser = cmd.Parameters("ReturnValue").Value
'合法登录后记录下用户ID、真实姓名和用户类型
If IsValidUser = ValidUser Then
lngUserID = cmd.Parameters("UserID").Value
strTrueName = cmd.Parameters("TrueName").Value
lngUserType = cmd.Parameters("UserType").Value
End If
'释放命令对象
Set cmd = Nothing
End Function
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -