📄 tm07.cls
字号:
Next j
temp = Mid(ptemp, 81, 2)
mvarBuildingList(1) = CLng("&H" + temp)
For j = 0 To 10
For k = 0 To 1
temp = Mid(ptemp, 83 + 4 * j + 2 * k, 2)
mvarRoomList(1, j, k) = CLng("&H" + temp)
Next k
Next j
temp = Mid(ptemp, 127, 2)
mvarRoomList(1, 11, 0) = CLng("&H" + temp)
End If
temp = ""
ptemp = ""
temp = Hex(cardtype)
While Len(temp) < 2
temp = "0" + temp
Wend
ptemp = ptemp + temp
temp = Hex(cardno)
While Len(temp) < 4
temp = "0" + temp
Wend
ptemp = ptemp + temp
temp = Hex(hotelcode)
While Len(temp) < 4
temp = "0" + temp
Wend
ptemp = ptemp + temp
temp = ""
temp = Hex(hotelpwd)
While Len(temp) < 4
temp = "0" + temp
Wend
ptemp = ptemp + temp
temp = ""
temp = ptemp
ptemp = ""
ptemp = tm91.readsub3(temp)
If (ptemp = "") Or (Len(ptemp) <> 128) Then
tread = False
Err.Raise 60012, "regioncard.readsub", GetError(12)
Else
tread = True
temp = Mid(ptemp, 33, 2)
mvarRoomList(1, 11, 1) = CLng("&H" + temp)
For j = 12 To 16
For k = 0 To 1
temp = Mid(ptemp, 35 + 4 * (j - 12) + 2 * k, 2)
mvarRoomList(1, j, k) = CLng("&H" + temp)
Next k
Next j
temp = Mid(ptemp, 57, 2)
mvarBuildingList(2) = CLng("&H" + temp)
For j = 0 To 16
For k = 0 To 1
temp = Mid(ptemp, 59 + 4 * j + 2 * k, 2)
mvarRoomList(2, j, k) = CLng("&H" + temp)
Next k
Next j
End If
End Function
Public Function sSetBuildingList(ByRef BuildingList() As Byte) As Boolean
If LBound(BuildingList(), 1) < 0 Or UBound(BuildingList(), 1) > 2 Then
sSetBuildingList = False
Err.Raise 60011, "RegionCard.SetBuildingList", GetError(11)
Exit Function
End If
Dim i As Integer
For i = 0 To 2
mvarBuildingList(i) = BuildingList(i)
Next
sSetBuildingList = True
End Function
Public Function sGetBuildingList(ByRef BuildingList() As Byte) As Boolean
If LBound(BuildingList(), 1) < 0 Or UBound(BuildingList(), 1) > 2 Then
sGetBuildingList = False
Err.Raise 60011, "RegionCard.GetBuildingList", GetError(11)
Exit Function
End If
Dim i As Integer
For i = 0 To 2
BuildingList(i) = mvarBuildingList(i)
Next
sGetBuildingList = True
End Function
Public Function sSetRoomList(ByRef Roomlist() As Byte) As Boolean
If LBound(Roomlist(), 1) < 0 Or LBound(Roomlist, 2) < 0 And LBound(Roomlist, 3) < 0 _
Or UBound(Roomlist, 1) > 2 Or UBound(Roomlist, 2) > 16 Or UBound(Roomlist, 3) > 1 Then
sSetRoomList = False
Err.Raise 60011, "RegionCard.SetRoomList", GetError(11)
Exit Function
End If
Dim i As Integer
Dim j As Integer
Dim k As Integer
For i = 0 To 2
For j = 0 To 16
For k = 0 To 1
mvarRoomList(i, j, k) = Roomlist(i, j, k)
Next
Next
Next
sSetRoomList = True
End Function
Public Function sGetRoomList(ByRef Roomlist() As Byte) As Boolean
If LBound(Roomlist(), 1) < 0 Or LBound(Roomlist, 2) < 0 And LBound(Roomlist, 3) < 0 _
Or UBound(Roomlist, 1) > 2 Or UBound(Roomlist, 2) > 16 Or UBound(Roomlist, 3) > 1 Then
sGetRoomList = False
Err.Raise 60011, "RegionCard.GetRoomList", GetError(11)
Exit Function
End If
Dim i As Integer
Dim j As Integer
Dim k As Integer
For i = 0 To 2
For j = 0 To 16
For k = 0 To 1
Roomlist(i, j, k) = mvarRoomList(i, j, k)
Next
Next
Next
sGetRoomList = True
End Function
Public Property Let enddatetime(ByVal vData As Date)
mvarenddatetime = vData
End Property
Public Property Get enddatetime() As Date
enddatetime = mvarenddatetime
End Property
Public Property Let begindatetime(ByVal vData As Date)
mvarbegindatetime = vData
End Property
Public Property Get begindatetime() As Date
begindatetime = mvarbegindatetime
End Property
Public Property Let userid(ByVal vData As Long)
If vData > 65535 Or vData < 0 Then
Err.Raise 60012, "regioncard.userid", GetError(12)
Exit Property
End If
mvaruserid = vData
End Property
Public Property Get userid() As Long
userid = mvaruserid
End Property
Public Property Let operatorid(ByVal vData As Long)
If vData > 65535 Or vData < 0 Then
Err.Raise 60012, "regioncard.operatorid", GetError(12)
Exit Property
End If
mvaroperatorid = vData
End Property
Public Property Get operatorid() As Long
operatorid = mvaroperatorid
End Property
Public Property Let hotelpwd(ByVal vData As Long)
If vData > 65535 Or vData < 0 Then
Err.Raise 60012, "regioncard.hotelpwd", GetError(12)
Exit Property
End If
mvarhotelpwd = vData
End Property
Public Property Get hotelpwd() As Long
hotelpwd = mvarhotelpwd
End Property
Public Property Let hotelcode(ByVal vData As Long)
If vData > 65535 Or vData < 0 Then
Err.Raise 60012, "regioncard.hotelcode", GetError(12)
Exit Property
End If
mvarhotelcode = vData
End Property
Public Property Get hotelcode() As Long
hotelcode = mvarhotelcode
End Property
Public Property Let cardtype(ByVal vData As JalTMCardType)
mvarcardtype = vData
End Property
Public Property Get cardtype() As JalTMCardType
cardtype = mvarcardtype
End Property
Public Property Let cardpwd(ByVal vData As Long)
If vData > 65534 Or vData < 1 Then
Err.Raise 60012, "regioncard.cardpwd", GetError(12)
Exit Property
End If
mvarcardpwd = vData
End Property
Public Property Get cardpwd() As Long
cardpwd = mvarcardpwd
End Property
Public Property Let cardno(ByVal vData As Long)
If vData > 65535 Or vData < 0 Then
Err.Raise 60012, "regioncard.cardno", GetError(12)
Exit Property
End If
mvarcardno = vData
End Property
Public Property Get cardno() As Long
cardno = mvarcardno
End Property
Private Sub Class_Initialize()
ReDim mvarRoomList(0 To 2, 0 To 16, 0 To 1)
ReDim mvarBuildingList(0 To 2)
ReDim state_buffer(15360)
End Sub
Public Function CardInfo() As String
Dim Info As String
Dim i As Integer
If normalorhourcard = NormalRegionCard Then
If regionorgroup = trRegionCard Then
Info = Info & "普通区域卡"
Else
Info = Info & "普通组别卡"
End If
Else
If regionorgroup = trRegionCard Then
Info = Info & "钟点区域卡"
Else
Info = Info & "钟点组别卡"
End If
End If
Info = Info & "进入时间=" & begindatetime
Info = Info & ",离开时间=" & enddatetime
Info = Info & vbCrLf
If Not mvarBuildingList(0) = 0 Then
If regionorgroup = TrGroupCard Then
Info = Info & " 1# 幢-层="
Else
Info = Info & " 1# 幢-层-房="
End If
For i = 0 To 16
If regionorgroup = TrGroupCard Then
' If i = 0 Then
'
' If mvarRoomList(0, i, 0) = mvarRoomList(0, i, 1) Then
'
' If Not mvarRoomList(0, i, 0) = 0 Then
'
' Info = Info & "," & mvarBuildingList(0) & "-" & mvarRoomList(0, i, 0)
'
' End If
'
' Exit For
'
' End If
'
' Else
'
' If mvarRoomList(0, i, 0) = mvarRoomList(0, i - 1, 0) Then
'
' Exit For
'
' ElseIf mvarRoomList(0, i, 0) = mvarRoomList(0, i, 1) Then
'
' If Not mvarRoomList(0, i, 0) = 0 Then
'
' Info = Info & "," & mvarBuildingList(0) & "-" & mvarRoomList(0, i, 0)
'
' End If
'
' Exit For
'
' End If
'
' End If
If Not (mvarRoomList(0, i, 0) = 0 Or mvarRoomList(0, i, 0) = 255) Then
Info = Info & "," & mvarBuildingList(0) & "-" & mvarRoomList(0, i, 0)
End If
If Not (mvarRoomList(0, i, 1) = 0 Or mvarRoomList(0, i, 1) = 255) Then
Info = Info & "," & mvarBuildingList(0) & "-" & mvarRoomList(0, i, 1)
End If
Else
' If i = 0 Then
'
' If mvarRoomList(0, i, 0) = mvarRoomList(0, i + 1, 0) And mvarRoomList(0, i, 1) = mvarRoomList(0, i + 1, 1) Then
'
' Info = Info & "," & mvarBuildingList(0) & "-" & mvarRoomList(0, i, 0) & "-" & mvarRoomList(0, i, 1)
' Exit For
'
' End If
'
' Else
'
' If mvarRoomList(0, i, 0) = mvarRoomList(0, i - 1, 0) And mvarRoomList(0, i, 1) = mvarRoomList(0, i - 1, 1) Then
'
' Exit For
'
' End If
'
' End If
If Not (mvarRoomList(0, i, 1) = 0 Or mvarRoomList(0, i, 1) = 255) Then
Info = Info & "," & mvarBuildingList(0) & "-" & mvarRoomList(0, i, 0) & "-" & mvarRoomList(0, i, 1)
End If
End If
Next
End If
Info = Info & vbCrLf
If Not mvarBuildingList(1) = 0 Then
If regionorgroup = TrGroupCard Then
Info = Info & " 2# 幢-层="
Else
Info = Info & " 2# 幢-层-房="
End If
For i = 0 To 16
If regionorgroup = TrGroupCard Then
' If i = 0 Then
'
' If mvarRoomList(1, i, 0) = mvarRoomList(1, i, 1) Then
'
' If Not mvarRoomList(1, i, 0) = 0 Then
'
' Info = Info & "," & mvarBuildingList(0) & "-" & mvarRoomList(1, i, 0)
'
' End If
'
' Exit For
'
' End If
'
' Else
'
' If mvarRoomList(1, i, 0) = mvarRoomList(1, i - 1, 0) Then
'
' Exit For
'
' ElseIf mvarRoomList(1, i, 0) = mvarRoomList(1, i, 1) Then
'
' If Not mvarRoomList(1, i, 0) = 0 Then
'
' Info = Info & "," & mvarBuildingList(1) & "-" & mvarRoomList(1, i, 0)
'
' End If
'
' Exit For
'
' End If
'
' End If
If Not (mvarRoomList(1, i, 0) = 0 Or mvarRoomList(1, i, 0) = 255) Then
Info = Info & "," & mvarBuildingList(1) & "-" & mvarRoomList(1, i, 0)
End If
If Not (mvarRoomList(1, i, 1) = 0 Or mvarRoomList(1, i, 1) = 255) Then
Info = Info & "," & mvarBuildingList(1) & "-" & mvarRoomList(1, i, 1)
End If
Else
' If i = 0 Then
'
' If mvarRoomList(0, i, 0) = mvarRoomList(0, i + 1, 0) And mvarRoomList(0, i, 1) = mvarRoomList(0, i + 1, 1) Then
'
' Info = Info & "," & mvarBuildingList(0) & "-" & mvarRoomList(0, i, 0) & "-" & mvarRoomList(0, i, 1)
' Exit For
'
' End If
'
' Else
'
' If mvarRoomList(0, i, 0) = mvarRoomList(0, i - 1, 0) And mvarRoomList(0, i, 1) = mvarRoomList(0, i - 1, 1) Then
'
' Exit For
'
' End If
'
' End If
If Not (mvarRoomList(1, i, 1) = 0 Or mvarRoomList(1, i, 1) = 255) Then
Info = Info & "," & mvarBuildingList(1) & "-" & mvarRoomList(1, i, 0) & "-" & mvarRoomList(1, i, 1)
End If
End If
Next
End If
Info = Info & vbCrLf
If Not mvarBuildingList(2) = 0 Then
If regionorgroup = TrGroupCard Then
Info = Info & " 3# 幢-层="
Else
Info = Info & " 3# 幢-层-房="
End If
For i = 0 To 16
If regionorgroup = TrGroupCard Then
' If i = 0 Then
'
' If mvarRoomList(2, i, 0) = mvarRoomList(2, i, 1) Then
'
' If Not mvarRoomList(2, i, 0) = 0 Then
'
' Info = Info & "," & mvarBuildingList(2) & "-" & mvarRoomList(2, i, 0)
'
' End If
'
' Exit For
'
' End If
'
' Else
'
' If mvarRoomList(2, i, 0) = mvarRoomList(2, i - 1, 0) Then
'
' Exit For
'
' ElseIf mvarRoomList(2, i, 0) = mvarRoomList(2, i, 1) Then
'
' If Not mvarRoomList(2, i, 0) = 0 Then
'
' Info = Info & "," & mvarBuildingList(2) & "-" & mvarRoomList(2, i, 0)
'
' End If
'
' Exit For
'
' End If
'
' End If
If Not (mvarRoomList(2, i, 0) = 0 Or mvarRoomList(2, i, 0) = 255) Then
Info = Info & "," & mvarBuildingList(2) & "-" & mvarRoomList(2, i, 0)
End If
If Not (mvarRoomList(2, i, 1) = 0 Or mvarRoomList(2, i, 1) = 255) Then
Info = Info & "," & mvarBuildingList(2) & "-" & mvarRoomList(2, i, 1)
End If
Else
' If i = 0 Then
'
' If mvarRoomList(2, i, 0) = mvarRoomList(2, i + 1, 0) And mvarRoomList(2, i, 1) = mvarRoomList(2, i + 1, 1) Then
'
' Info = Info & "," & mvarBuildingList(2) & "-" & mvarRoomList(2, i, 0) & "-" & mvarRoomList(2, i, 1)
' Exit For
'
' End If
'
' Else
'
' If mvarRoomList(2, i, 0) = mvarRoomList(2, i - 1, 0) And mvarRoomList(2, i, 1) = mvarRoomList(2, i - 1, 1) Then
'
' Exit For
'
' End If
'
' End If
If Not (mvarRoomList(2, i, 1) = 0 Or mvarRoomList(2, i, 1) = 255) Then
Info = Info & "," & mvarBuildingList(2) & "-" & mvarRoomList(2, i, 0) & "-" & mvarRoomList(2, i, 1)
End If
End If
Next
End If
CardInfo = Info
End Function
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -