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

📄 customer.cls

📁 酒店管理系统 基于VB和SQL的一个很好的程序 可以实现酒店的日常管理工作
💻 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 = "Customer"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
'1 CustId Varchar 40 客户编号(用客户身份证号码表示)
'2 Idtype  Varchar 20 证件类型(包括身份证、军官证、驾驶证、工作证、学生证、回乡证和护照等)
'3 CustName Varchar 50 联系人姓名
'4 OrgName Varchar 100  客户单位
'5 CustType Varchar 50 客户类别(由用户自定义,可以按行业或地域划分)
'6 CustFrom Varchar 50 国籍户籍
'7 Sex Varchar 10 性别
'8 Job Varchar 50 职务
'9 Office  Varchar 30 单位电话
'10  Mobile  Varchar 30 移动电话
'11  Home  Varchar 30 家庭电话
'12  CustLevel  Varchar 10 客户等级(本系统分为普通客户和贵宾客户两种等级,贵宾客户在结帐时有签单的权限。在设计宾馆酒店管理系统时,可以根据需要设置客户等级,并为不同等级的客户制定不同的优惠政策和权限)
'13  Address Varchar 200  家庭住址
'14  Postcode  Varchar 20 邮政编码

Public CustId As String
Public Idtype As String
Public CustName As String
Public OrgName As String
Public CustType As String
Public CustFrom As String
Public Sex As String
Public Job As String
Public Office As String
Public Mobile As String
Public Home As String
Public CustLevel As String
Public Address As String
Public Postcode As String

Public Sub Init()
  CustId = ""
  Idtype = ""
  CustName = ""
  OrgName = ""
  CustType = ""
  CustFrom = ""
  Sex = ""
  Job = ""
  Office = ""
  Mobile = ""
  Home = ""
  CustLevel = ""
  Address = ""
  Postcode = ""
End Sub

'删除
Public Sub Delete(ByVal TmpId As String)
  SqlStmt = "DELETE FROM Customer WHERE CustId='" + Trim(TmpId) + "'"
  SQLExt (SqlStmt)
End Sub

Public Function GetInfo(ByVal TmpId As String) As Boolean
  Dim rs As New ADODB.Recordset
  
  '设置SELECT语句,读取编号为TmpId的记录
  SqlStmt = "SELECT * FROM Customer WHERE CustId='" + Trim(TmpId) + "'"
  '将结果集读取到rs中
  Set rs = QueryExt(SqlStmt)

  If rs.EOF = True Then
    '如果结果集为空,则初始化
    Init
    GetInfo = False
  Else
    '将结果集中的数据赋值到成员变量中
    If IsNull(rs.Fields(0)) Then
      CustId = ""
    Else
      CustId = rs.Fields(0)
    End If
    If IsNull(rs.Fields(1)) Then
      Idtype = ""
    Else
      Idtype = rs.Fields(1)
    End If
    If IsNull(rs.Fields(2)) Then
      CustName = ""
    Else
      CustName = rs.Fields(2)
    End If
    If IsNull(rs.Fields(3)) Then
      OrgName = ""
    Else
      OrgName = rs.Fields(3)
    End If
    If IsNull(rs.Fields(4)) Then
      CustType = ""
    Else
      CustType = rs.Fields(4)
    End If
    If IsNull(rs.Fields(5)) Then
      CustFrom = ""
    Else
      CustFrom = rs.Fields(5)
    End If
    If IsNull(rs.Fields(6)) Then
      Sex = ""
    Else
      Sex = rs.Fields(6)
    End If
    If IsNull(rs.Fields(7)) Then
      Job = ""
    Else
      Job = rs.Fields(7)
    End If
    If IsNull(rs.Fields(8)) Then
      Office = ""
    Else
      Office = rs.Fields(8)
    End If
    If IsNull(rs.Fields(9)) Then
      Mobile = ""
    Else
      Mobile = rs.Fields(9)
    End If
    If IsNull(rs.Fields(10)) Then
      Home = ""
    Else
      Home = rs.Fields(10)
    End If
    If IsNull(rs.Fields(11)) Then
      CustLevel = ""
    Else
      CustLevel = rs.Fields(11)
    End If
    If IsNull(rs.Fields(12)) Then
      Address = ""
    Else
      Address = rs.Fields(12)
    End If
    If IsNull(rs.Fields(13)) Then
      Postcode = ""
    Else
      Postcode = rs.Fields(13)
    End If
    
    GetInfo = True
  End If
End Function

Public Function GetNum() As Long
  Dim rs As New ADODB.Recordset
  
  SqlStmt = "SELECT Count(CustId) FROM Customer"
  Set rs = QueryExt(SqlStmt)
  If rs.EOF = True Then
    GetNum = 0
  Else
    GetNum = rs.Fields(0)
  End If
End Function

Public Function In_DB(ByVal TmpId As String) As Boolean
  Dim rs As New ADODB.Recordset
  
  SqlStmt = "SELECT CustId FROM Customer WHERE CustId='" + Trim(TmpId) + "'"
  Set rs = QueryExt(SqlStmt)
  If rs.EOF = True Then
    In_DB = False
  Else
    In_DB = True
  End If
End Function

Public Sub Insert()
  SqlStmt = "INSERT INTO Customer VALUES('" + Trim(CustId) + "','" + Trim(Idtype) + "','" _
          + Trim(CustName) + "','" + Trim(OrgName) + "','" + Trim(CustType) _
          + "','" + Trim(CustFrom) + "','" + Trim(Sex) + "','" + Trim(Job) _
          + "','" + Trim(Office) + "','" + Trim(Mobile) + "','" + Trim(Home) _
          + "','" + Trim(CustLevel) + "','" + Trim(Address) + "','" + Trim(Postcode) + "')"
  SQLExt (SqlStmt)
End Sub

Public Sub Loadtype()
  Dim i As Integer
  Dim rs As New ADODB.Recordset
  '对数组进行初始化
  Erase Arr_CustType
  ReDim Arr_CustType(0)
  '设置SQL语句,使用DISTINCT关键字避免出现重复的客户类别,结果集按CustType字段排序
  SqlStmt = "SELECT DISTINCT CustType FROM Customer ORDER BY CustType"
  '执行SQL语句,将返回结果集赋值到rs对象中
  Set rs = QueryExt(SqlStmt)
  '依次把读取的数据赋值到数组中
  i = 0
  Do Until rs.EOF = True
    ReDim Preserve Arr_CustType(i + 1)
    Arr_CustType(i) = Trim(rs.Fields(0))
    '将指针移动到下一条记录
    rs.MoveNext
    i = i + 1
  Loop
End Sub

Public Sub Update(ByVal TmpId As String)
  SqlStmt = "UPDATE Customer SET CustId='" + Trim(CustId) + "', Idtype='" + Trim(Idtype) _
          + "', CustName='" + Trim(CustName) + "', OrgName='" + Trim(OrgName) + "', CustType='" _
          + Trim(CustType) + "', CustFrom='" + Trim(CustFrom) + "', Sex='" + Trim(Sex) _
          + "', Job='" + Trim(Job) + "', Office='" + Trim(Office) + "', Mobile='" _
          + Trim(Mobile) + "', Home='" + Trim(Home) + "', CustLevel='" + Trim(CustLevel) _
          + "', Address='" + Trim(Address) + "', Postcode='" + Trim(Postcode) _
          + "' WHERE CustId='" + Trim(TmpId) + "'"
  SQLExt (SqlStmt)
End Sub


⌨️ 快捷键说明

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