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

📄 frmendplay.frm

📁 一个很强悍的网吧计费系统源码,分为客户端和服务端两个部分,采用VB进行编写
💻 FRM
📖 第 1 页 / 共 2 页
字号:
End With
End Sub

Private Sub comYouHui_Change()
comYouHui_Click
End Sub

Private Sub comYouHui_Click()
If Val(comYouHui.Text) > 0 Then
txtShiShou.Text = Round((Val(txtYingShou.Text) * Val(comYouHui.Text) / 100 - Val(txtYiShou.Text)) * 2) / 2
Else
txtShiShou.Text = Round((Val(txtYingShou.Text) - Val(txtYiShou.Text)) * 2) / 2
End If
End Sub

Private Sub comYouHui_KeyPress(KeyAscii As Integer)
If Chr(KeyAscii) Like "[!0-9.]" And (Not KeyAscii = 8) Then KeyAscii = 0

End Sub


Private Sub Check1_Click()
If Check1.Value = 1 Then
Label24.Enabled = True
Label25.Enabled = True
txtKaHaoMa.Enabled = True
txtKaMiMa.Enabled = True
Else
Label24.Enabled = False
Label25.Enabled = False
txtKaHaoMa.Enabled = False
txtKaMiMa.Enabled = False
End If
End Sub

Private Sub Command1_Click()
'结帐
On Error Resume Next
If Check1.Value = 1 Then '如果使用储金卡
 Dim bYanKa As Boolean
 With frmMain.Data6.Recordset
 .MoveFirst
 For i = 1 To .RecordCount
  If .Fields("卡号") = txtKaHaoMa.Text And .Fields("密码") = txtKaMiMa.Text Then
   bYanKa = True
   Exit For
  End If


  .MoveNext
 Next i
 If bYanKa = False Then
  MsgBox "储金卡卡号或密码错误,请确认后再次结帐!", vbCritical, "警告"
  Exit Sub
 End If
 Dim shishou As Double
 shishou = Round(Val(txtShiShou.Text) * .Fields("总金额") * 2 / frmMain.Data1.Recordset.Fields("单位费用") / .Fields("总机时")) / 2
 If .Fields("金额").Value < shishou Then
  MsgBox "储金卡金额不足,请确认后再结帐!" + vbCrLf + "当前卡金额:" & .Fields("金额"), vbExclamation, "警告"
  Exit Sub
 Else
  .Edit
   
   .Fields("金额").Value = .Fields("金额").Value - shishou
   .Fields("已用机时").Value = Round(.Fields("已用机时").Value + shishou * .Fields("总机时") / .Fields("总金额"), 2)
   .Fields("上机次数") = .Fields("上机次数") + 1
  .Update
  frmMain.Data9.Recordset.Edit
  frmMain.Data9.Recordset.MoveFirst
  For i = 1 To frmMain.Data9.Recordset.RecordCount
   If frmMain.Data9.Recordset.Fields("编号") = .Fields("客户编号") Then
    frmMain.Data9.Recordset.Edit
    frmMain.Data9.Recordset.Fields("消费额") = frmMain.Data9.Recordset.Fields("消费额") + shishou
    frmMain.Data9.Recordset.Fields("消费次数") = frmMain.Data9.Recordset.Fields("消费次数") + 1
    frmMain.Data9.Recordset.Fields("最后一次时间") = Now
    frmMain.Data9.Recordset.Update
   End If
   frmMain.Data9.Recordset.MoveNext
  Next i
  txtKaHaoMa = ""
  txtKaMiMa = ""
  Check1.Value = 0
 End If
 End With
End If
frmMain.ClearJF
comYouHui.Text = Round(Val(txtShiShou.Text) / Val(txtYingShou.Text), 4) * 100

For i = 0 To List2.ListCount - 1
 If List2.Selected(i) Then
  frmMain.Data1.Recordset.MoveFirst
  frmMain.Data1.Recordset.Move List2.ItemData(i)
  SelectComputer = frmMain.Data1.Recordset.AbsolutePosition + 1
  frmMain.ClearJF
  
 End If
Next i

  'For i = 0 To frmMain.Winsock1.Count - 1
  'If frmMain.Data1.Recordset.Fields("IP") = frmMain.Winsock1(i).RemoteHostIP Then
  '  frmMain.Winsock1(i).SendData "_comm" + Chr(0) + "stop"
  '  DoEvents
  ' Exit For
  'End If
  'Next i
Unload Me
frmMain.Timer2_Timer

End Sub



Private Sub Command3_Click()
'结帐并关机
On Error Resume Next
Command1_Click
  For i = 0 To Winsock1.Count - 1
  If frmMain.Data1.Recordset.Fields("IP") = frmMain.Winsock1(i).RemoteHostIP Then
    frmMain.Winsock1(i).SendData "_comm" + Chr(0) + "shutdown" + Chr(0) + "OK$"
    DoEvents
   Exit For
  End If
 Next i
 
End Sub

Private Sub Form_Load()
On Error Resume Next
With frmMain.Data1.Recordset  '
txtYingShou.Text = frmMain.CountJF
txtYiShou.Text = .Fields("已收款")
txtShiShou.Text = txtYingShou.Text
       
       .MoveFirst
   For i = 1 To .RecordCount
    If .AbsolutePosition <> SelectComputer - 1 Then
     If .Fields("状态").Value = "Y" Or .Fields("状态").Value = "P" Then
      List2.AddItem .Fields("名称")
      List2.ItemData(List2.NewIndex) = .AbsolutePosition
'     Else
'      List1.AddItem .Fields("名称")
'      List1.ItemData(List1.NewIndex) = .AbsolutePosition
     End If
    End If
     .MoveNext
   Next i
   .MoveFirst
   .Move SelectComputer - 1
End With
Command2_Click
Me.Top = frmMain.Top + 1500
LoadRtBox
End Sub

Private Sub Form_Unload(Cancel As Integer)
selShiShou = 0
End Sub

Private Sub List2_Click()
With frmMain.Data1.Recordset
Dim old As Long, Zjine As Double
Zjine = 0
RTBox.Text = ""
LoadRtBox
    Zjine = Zjine + frmMain.CountJF
For k = 0 To List2.ListCount - 1
If List2.Selected(k) = True Then

old = .AbsolutePosition
.MoveFirst
.Move List2.ItemData(k)
 
  
Zjine = Zjine + frmMain.CountJF
'RTBox.SelStart = selShiShou
RTBox.SelStart = selShiShou
RTBox.SelLength = Len(RTBox.Text) - selShiShou

RTBox.SelText = "━━━━━━━━━━━━━━━━━━━" & vbCrLf
selShiShou = RTBox.SelStart
LoadRtBox
.MoveFirst
.Move old
End If

Next k
Zjine = Round(Zjine * 2) / 2

txtYingShou.Text = Zjine
comYouHui_Click

End With
End Sub


Sub LoadRtBox()
'
On Error Resume Next
With frmMain.Data1.Recordset

RTBox.SelText = .Fields("名称") & "上机详细状况" & vbCrLf
RTBox.SelText = "上机人姓名:" & .Fields("客户姓名") & vbCrLf
RTBox.SelText = "上机人证件(" & .Fields("客户证件") & "):" & .Fields("证件号码") & vbCrLf
RTBox.SelText = "开始时间:" & Format(.Fields("开始时间"), "yyyy年mm月dd日hh:nn") & vbCrLf
RTBox.SelText = "结束时间:" & Format(Now, "yyyy年mm月dd日hh:nn") & vbCrLf
     mm = DateDiff("n", .Fields("开始时间"), Now)
     Zje = .Fields("单位费用").Value * mm / 60
     '金额
    
     If Zje <= frmMain.Data7.Recordset.Fields("最低消费额") Then Zje = frmMain.Data7.Recordset.Fields("最低消费额")
     If frmMain.Data7.Recordset.Fields("取整金额") = 0.5 Then
       Zje = Round(Zje * 2) / 2
       Else
       Zje = Round(Zje)
     End If

RTBox.SelText = "所用时间:" & mm \ 60 & "小时" & mm Mod 60 & "分钟" & vbCrLf '
RTBox.SelText = "上机金额:" & Format(Zje, "¥###0.00元") & vbCrLf
ss = RTBox.SelStart
Shangpin = 0
'其他花费
      frmMain.Data2.Recordset.MoveFirst
    For i = 1 To frmMain.Data2.Recordset.RecordCount
    
     If frmMain.Data2.Recordset.Fields("机号").Value = .Fields("机号").Value Then
       frmMain.Data3.Recordset.MoveFirst
       For j = 1 To frmMain.Data3.Recordset.RecordCount
        If frmMain.Data3.Recordset.Fields("商品编号").Value = frmMain.Data2.Recordset.Fields("商品编号").Value Then Exit For
        
        frmMain.Data3.Recordset.MoveNext
       Next j
       Shangpin = Shangpin + frmMain.Data2.Recordset.Fields("数量").Value * frmMain.Data3.Recordset.Fields("零售价格")
       RTBox.SelText = "    " & frmMain.Data3.Recordset.Fields("商品名称") & ":" & Format(frmMain.Data3.Recordset.Fields("零售价格"), "###0.00元") _
                              & "*" & "" & frmMain.Data2.Recordset.Fields("数量").Value _
                              & "=" & Format(frmMain.Data2.Recordset.Fields("数量").Value * frmMain.Data3.Recordset.Fields("零售价格"), "###0.00元") & vbCrLf
     End If
    frmMain.Data2.Recordset.MoveNext
    Next i
 '   If Shangpin > 0 Then ListView1.ListItems(Index).SubItems(6) = Format(Shangpin, "###,###0.00元")
RTBox.SelStart = ss

RTBox.SelText = "其他花费:" & Format(Shangpin, "¥###0.00元") & vbCrLf
RTBox.SelStart = Len(RTBox.Text)
RTBox.SelText = "───────────────────" & vbCrLf
Zje = Zje + Shangpin
RTBox.SelText = "以上金额合计:" & Format(Zje, "¥###0.00元") & vbCrLf
selShiShou = RTBox.SelStart
RTBox.SelText = "━━━━━━━━━━━━━━━━━━━" & vbCrLf

RTBox.SelText = "实 收 金 额 :" & Format(Val(txtShiShou.Text), "¥###0.00元") & vbCrLf

End With
End Sub

Private Sub txtShiShou_Change()
If selShiShou <> 0 Then
RTBox.SelStart = selShiShou
RTBox.SelLength = Len(RTBox.Text) - selShiShou
RTBox.SelText = "━━━━━━━━━━━━━━━━━━━" & vbCrLf

RTBox.SelText = "实 收 金 额 :" & Format(Val(txtShiShou.Text), "¥###0.00元") & vbCrLf
End If
End Sub

Private Sub txtShiShou_KeyPress(KeyAscii As Integer)
If Chr(KeyAscii) Like "[!0-9.]" And (Not KeyAscii = 8) Then KeyAscii = 0
End Sub


⌨️ 快捷键说明

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