⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 users.cls

📁 本系统实现了软件项目开发的流程管理和控制
💻 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 = "Users"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
'1 UserName  Char  用户名
'2 UserPwd Char  密码
'3 UserType  Tinyint 用户类型(1 - 系统管理员,2 - 项目主管,3 - 业务主管,4 - 软件开发主管,5 - 开发工程师,6 - 测试工程师,7 - 质量控制工程师)
'4 Ename Varchar 用户姓名

Public UserName As String
Public UserPwd As String
Public UserType As Integer
Public Ename As String

Public Sub Init()
  UserName = ""
  UserPwd = ""
  UserType = 0
  Ename = ""
End Sub

'删除Users数据
Public Sub Delete(ByVal TmpUser As String)
  If TmpUser = "Admin" Then
    Exit Sub
  End If
  
  DB_Connect
  
  SqlStmt = "DELETE FROM Users WHERE UserName='" + Trim(TmpUser) + "'"
  OdbcExt (SqlStmt)
  Rc = SQLFreeStmt(Hstmt, SQL_DROP)
  
  DB_Disconnect
End Sub

Public Sub GetInfo(ByVal TmpUser As String)
  UserName = Format(TmpUser, "<")
  If TmpUser = "" Then
    Init
    Exit Sub
  End If
  DB_Connect
  
  SqlStmt = "SELECT * FROM Users WHERE UserName='" + Trim(TmpUser) + "'"
  OdbcExt (SqlStmt)
  If SQLFetch(Hstmt) <> SQL_NO_DATA_FOUND Then
    ColVal = String(400, 0)
    Rc = SQLGetData(Hstmt, 2, 1, ColVal, Len(ColVal), pcblen)
    UserPwd = TrimStr(ColVal)
    
    ColVal = String(4, 0)
    Rc = SQLGetData(Hstmt, 3, 1, ColVal, Len(ColVal), pcblen)
    UserType = Val(ColVal)
    
    ColVal = String(400, 0)
    Rc = SQLGetData(Hstmt, 4, 1, ColVal, Len(ColVal), pcblen)
    Ename = TrimStr(ColVal)
  Else
    Init
  End If
  Rc = SQLFreeStmt(Hstmt, SQL_DROP)
  
  DB_Disconnect
End Sub

Public Function GetPwd(ByVal TmpUser As String) As String
  UserName = TmpUser
  
  DB_Connect
  
  SqlStmt = "SELECT UserPwd FROM Users WHERE UserName='" _
          + Trim(TmpUser) + "'"
  OdbcExt (SqlStmt)
  If SQLFetch(Hstmt) = SQL_NO_DATA_FOUND Then
    GetPwd = ""
    Exit Function
  Else
    ColVal = String(400, 0)
    Rc = SQLGetData(Hstmt, 1, 1, ColVal, Lench(ColVal), pcblen)
    GetPwd = TrimStr(ColVal)
  End If
    
  Rc = SQLFreeStmt(Hstmt, SQL_DROP)
  DB_Disconnect
End Function

Public Function In_DB(ByVal TmpUser As String) As Boolean
  DB_Connect
  
  SqlStmt = "SELECT * FROM Users WHERE UserName='" + Trim(TmpUser) + "'"
  OdbcExt (SqlStmt)
  If SQLFetch(Hstmt) = SQL_NO_DATA_FOUND Then
    In_DB = False
  Else
    In_DB = True
  End If
  Rc = SQLFreeStmt(Hstmt, SQL_DROP)

  DB_Disconnect
End Function

Public Sub Insert()
  DB_Connect
  
  SqlStmt = "INSERT INTO Users Values('" _
     + Trim(UserName) + "','" + Trim(UserPwd) _
     + "'," + Trim(Str(UserType)) + ",'" + Trim(Ename) + "')"
  OdbcExt (SqlStmt)
  Rc = SQLFreeStmt(Hstmt, SQL_DROP)
  DB_Disconnect
End Sub

'根据用户类型读取员工姓名到Arr_Ename()数组中
Public Function LoadEname(ByVal TmpType As Integer) As String
  Dim i As Integer
  Erase Arr_Ename
  ReDim Arr_Ename(0)
  
  DB_Connect
  
  SqlStmt = "SELECT Ename FROM Users WHERE UserType=" + Trim(Str(TmpType))
  OdbcExt (SqlStmt)
  i = 0
  Do While SQLFetch(Hstmt) <> SQL_NO_DATA_FOUND
    ColVal = String(400, 0)
    Rc = SQLGetData(Hstmt, 1, 1, ColVal, Lench(ColVal), pcblen)
    ReDim Preserve Arr_Ename(i + 1)
    Arr_Ename(i) = TrimStr(ColVal)
    
    i = i + 1
  Loop
    
  Rc = SQLFreeStmt(Hstmt, SQL_DROP)
  DB_Disconnect
End Function

Public Sub Update(ByVal TmpUser As String)
  DB_Connect
  
  SqlStmt = "Update Users Set UserName='" + Trim(UserName) _
          + "',UserPwd='" + Trim(UserPwd) + "',UserType=" _
          + Trim(Str(UserType)) + ",Ename='" + Trim(Ename) _
          + "' WHERE UserName='" + Trim(TmpUser) + "'"
  OdbcExt (SqlStmt)
  Rc = SQLFreeStmt(Hstmt, SQL_DROP)
  DB_Disconnect
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -