📄 registration.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 = "Registration"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
'1 RegId number 登记编号,作为表Registration的主键
'2 CltId varchar2 40 客户编号
'3 RoomNo varchar2 10 客房编号
'4 InDate date 入住日期时间
'5 LeaveDate date 退房日期时间
'6 Days number 入住天数
'7 Price number 预定单价
'8 Rate number 预定折扣
'9 OtherFee number 其它收费金额
'10 FirstPay number 押金
'11 Memo varchar2 2000 其它说明
'12 Status number 1 入住登记记录的状态(1 - 入住,2 - 退房,3 - 结款)
'13 UserId number 经办人的用户编号
Public RegId As Integer
Public CltId As String
Public RoomNo As String
Public InDate As String
Public LeaveDate As String
Public Days As Integer
Public Price As Integer
Public Rate As Single
Public OtherFee As Single
Public FirstPay As Integer
Public Memo As String
Public Status As Integer
Public UserId As String
Public Sub Init()
RegId = 0
CltId = ""
RoomNo = ""
InDate = ""
LeaveDate = ""
Days = 0
Price = 0
Rate = 1
OtherFee = 0
FirstPay = 0
Memo = ""
Status = 1
UserId = 0
End Sub
'取消登记
Public Sub Delete(ByVal TmpId As Integer)
'取消登记信息的同时删除其详细登记信息
SqlStmt = "DELETE FROM Registration WHERE RegId=" + Trim(TmpId)
SQLExt (SqlStmt)
End Sub
'取得登记详细信息
Public Function GetInfo(ByVal TmpId As Integer) As Boolean
Dim rs As New ADODB.Recordset
If TmpId <= 0 Then
Init
GetInfo = False
Exit Function
End If
'设置SELECT语句
SqlStmt = "SELECT * FROM Registration WHERE RegId=" + Trim(TmpId)
'将结果集读取到rs中
Set rs = QueryExt(SqlStmt)
If rs.EOF = True Then
'如果结果集为空,则初始化
Init
GetInfo = False
Else
'将结果集中的数据赋值到成员变量中
RegId = rs.Fields(0)
If IsNull(rs.Fields(1)) Then
CltId = ""
Else
CltId = rs.Fields(1)
End If
If IsNull(rs.Fields(2)) Then
RoomNo = ""
Else
RoomNo = rs.Fields(2)
End If
If IsNull(rs.Fields(3)) Then
Days = 0
Else
Days = rs.Fields(3)
End If
If IsNull(rs.Fields(4)) Then
Price = 0
Else
Price = rs.Fields(4)
End If
If IsNull(rs.Fields(5)) Then
FirstPay = 0
Else
FirstPay = rs.Fields(5)
End If
Rate = rs.Fields(6)
If IsNull(rs.Fields(7)) Then
InDate = ""
Else
InDate = rs.Fields(7)
End If
If IsNull(rs.Fields(8)) Then
LeaveDate = ""
Else
LeaveDate = rs.Fields(8)
End If
If IsNull(rs.Fields(9)) Then
OtherFee = 0
Else
OtherFee = rs.Fields(9)
End If
Status = rs.Fields(10)
UserId = rs.Fields(11)
If IsNull(rs.Fields(12)) Then
Memo = ""
Else
Memo = rs.Fields(12)
End If
GetInfo = True
End If
End Function
'插入新的记录编号,其他记录的保存为update,状态值为1(入住)
Public Sub Insert()
SqlStmt = "INSERT INTO Registration VALUES( REGID.NextVal, '" _
+ Trim(CltId) + "','" + Trim(RoomNo) + "','" + Trim(InDate) _
+ "','" + Trim(LeaveDate) + "'," + Trim(Days) + "," + Trim(Price) _
+ "," + Trim(Rate) + "," + Trim(OtherFee) + "," + Trim(FirstPay) + ",'" _
+ Trim(Memo) + "',1," + Trim(UserId) + ")"
SQLExt (SqlStmt)
End Sub
'更新登记信息
Public Sub Update(ByVal TmpId As Integer)
SqlStmt = "UPDATE Registration SET CltId='" + Trim(CltId) + "'," _
+ "RoomNo=" + Trim(RoomNo) + ",Days=" + Trim(Days) _
+ ",Price=" + Trim(Price) + ",Rate=" + Trim(Rate) _
+ ",FirstPay=" + Trim(FirstPay) + ", OtherFee=" + Trim(OtherFee) _
+ ",InDate='" + Trim(InDate) + "', LeaveDate='" + Trim(LeaveDate) _
+ "', Memo='" + Trim(Memo) + "', UserId=" + Trim(UserId) _
+ " WHERE RegId=" + Trim(TmpId)
SQLExt (SqlStmt)
End Sub
'更改状态
Public Sub UpdateStatus(ByVal TmpId As Integer)
SqlStmt = "UPDATE Registration SET Status=" + Trim(Status) _
+ " WHERE RegId=" + Trim(TmpId)
SQLExt (SqlStmt)
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -