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

📄 role.vb

📁 <Visual Basic 数据库开发实例精粹(第二版)>一书首先介绍了Visual Basic(简称VB)开发的技巧和重点技术
💻 VB
字号:
'==================================
'
' 用户权限描述,值越小,权限越大
'
'==================================
Public Enum UserPurview As Integer
  Admin = 0
  User = 10
  Unknown = Integer.MaxValue
End Enum


'==================================
'
' 用户角色数据模型描述
'
'==================================
Public Class RoleDataModel
  '类的数据成员变量
  Public m_iRoleId As Integer
  Public m_szRoleName As String
  Public m_iRoleLevel As Int16

  Public ReadOnly Property RoleId() As Integer
    Get
      Return m_iRoleId
    End Get
  End Property
  Public ReadOnly Property RoleName() As String
    Get
      Return m_szRoleName
    End Get
  End Property
End Class

'==================================
'
' 用户角色描述,提供用户角色操作的所有功能
'
'==================================
Public Class Role
  '类内部定义的数据库字段名,只读,字段名与数据库中的值一致
  Protected Const RoleIdField As String = "RoleId"
  Protected Const RoleNameField As String = "RoleName"
  Protected Const RightLevelField As String = "RightLevel"


  '传入时m_iRoleId任意,添加成功后,将取得的m_iRoleId传回
  Public Function Add(ByRef dmRole As RoleDataModel)

  End Function

  Public Function getRoleInfo(ByVal iRoleId As Int16, _
                         ByRef dmRole As RoleDataModel) As String

    Dim dbObj As New DBOpProvider.ConnSqlServer.SQLClass
    Dim ErrMsg As String = ""
    Dim strSQL As String

    Dim dv As New DataView
    strSQL = "EXEC GetRoleInfo " & iRoleId

    ErrMsg = dbObj.GetDataView(strSQL, dv)
    If dv.Count = 0 Then
      Return ErrMsg
    End If

    If dmRole Is Nothing Then
      dmRole = New RoleDataModel
    End If

    '保存数据
    dmRole.m_iRoleId = dv(0)(Me.RoleIdField)
    dmRole.m_szRoleName = dv(0)(Me.RoleNameField)
    dmRole.m_iRoleLevel = dv(0)(Me.RightLevelField)

    Return ErrMsg

  End Function

  Public Function GetAllRoles(ByRef RoleAry As System.Collections.ArrayList) As String
    Dim dbObj As New DBOpProvider.ConnSqlServer.SQLClass
    Dim ErrMsg As String = ""
    Dim strSQL As String
    Dim dv As New DataView

    strSQL = "Exec GetAllRoles"
    ErrMsg = dbObj.GetDataView(strSQL, dv)

    If ErrMsg <> "" Then
      Return ErrMsg
    End If

    If RoleAry Is Nothing Then
      RoleAry = New ArrayList
    End If
    RoleAry.Clear()
    RoleAry.Capacity = dv.Count
    Dim i As Integer
    Dim dmRoleObj As RoleDataModel
    For i = 0 To dv.Count - 1
      dmRoleObj = New RoleDataModel
      dmRoleObj.m_iRoleId = dv(i)(Me.RoleIdField)
      dmRoleObj.m_szRoleName = dv(i)(Me.RoleNameField)
      dmRoleObj.m_iRoleLevel = dv(i)(Me.RightLevelField)
      RoleAry.Add(dmRoleObj)
    Next

  End Function



End Class

⌨️ 快捷键说明

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