第一次【机房收费系统】——上机

前言

 最近在做机房收费系统,感触真的特别深,就是那种忽然开窍的感觉,很爽,希望现在的你们也会和我一样,虽然懂得不是很全面,但只要比原来会那么一点点,足矣~偷偷告诉你们哈,做机房一定要画流程图,真的特别管用,下面是我的流程图及代码分享给大家,希望可以给你们带来帮助!
这里写图片描述

代码分享

Private Sub cmdOnline_Click()
    txtSQL = "select * from student_Info where cardno ='" & Trim(txtCardID.Text) & "'"
    Set mrc = ExecuteSQL(txtSQL, MsgText)

    If mrc.EOF = True Then
        MsgBox "该卡号不存在,请先注册!", vbOKOnly + vbExclamation, "警告"
        txtCardID.SetFocus
        txtCardID = ""
    Else

    If Trim(mrc.Fields(10)) = Trim("未使用") Then
        MsgBox "此卡未使用,请先修改信息!", vbOKOnly + vbExclamation, "警告"
        txtCardID.SetFocus
        txtCardID.Text = ""
        txtType.Text = ""
        txtStudentID.Text = ""
        txtName.Text = ""
        txtMajor.Text = ""
        txtSex.Text = ""
        txtOnlineDate.Text = ""
        txtOnlineTime.Text = ""
        txtOfflineDate.Text = ""
        txtOfflineTime.Text = ""
        txtConsumeTime.Text = ""
        txtConsumeMoney.Text = ""
        txtRemainingSum.Text = ""
    Else

    txtSQL = "select * from OnLine_Info where cardno='" & Trim(txtCardID.Text) & "'"
    Set mrc1 = ExecuteSQL(txtSQL, MsgText)

    If mrc1.EOF = False Then
        MsgBox "该卡号正在上机", vbOKOnly + vbExclamation, "警告"

        txtCardID.Text = mrc1.Fields(0)
        txtType.Text = mrc1.Fields(1)
        txtStudentID.Text = mrc1.Fields(2)
        txtName.Text = mrc1.Fields(3)
        txtMajor.Text = mrc1.Fields(4)
        txtSex.Text = mrc1.Fields(5)
        txtOnlineDate.Text = mrc1.Fields(6)
        txtOnlineTime.Text = mrc1.Fields(7)
    Else

    txtSQL = "select * from BasicData_Info"
    Set mrc2 = ExecuteSQL(txtSQL, MsgText)

    If Val(mrc.Fields(7)) < mrc2.Fields(5) Then
        MsgBox "余额不足,请充值!", vbOKOnly + vbExclamation, "警告"
    Else

        txtCardID.Text = mrc.Fields(0)
        txtStudentID.Text = mrc.Fields(1)
        txtName.Text = mrc.Fields(2)
        txtSex.Text = mrc.Fields(3)
        txtMajor.Text = mrc.Fields(4)
        txtType.Text = mrc.Fields(14)
        txtOnlineDate.Text = Date
        txtOnlineTime.Text = Time
        txtOfflineDate.Text = ""
        txtOfflineTime.Text = ""
        txtConsumeTime.Text = ""
        txtConsumeMoney.Text = ""
        txtRemainingSum.Text = mrc.Fields(7)
           MsgBox "上机成功!", vbOKOnly + vbInformation, "提示"

        With mrc1
            .AddNew
            .Fields(0) = Trim(mrc.Fields(0))
            .Fields(1) = mrc.Fields(14)
            .Fields(2) = Trim(mrc.Fields(1))
            .Fields(3) = Trim(mrc.Fields(2))
            .Fields(4) = mrc.Fields(4)
            .Fields(5) = mrc.Fields(3)
            .Fields(6) = Date
            .Fields(7) = Time
            .Fields(8) = VBA.Environ("computername")
            .Fields(9) = Now
            .Update
            .Close
            End With
          End If
        End If
    End If
  End If

    txtSQL = "select * from Line_Info where cardno='" & Trim(txtCardID.Text) & "'"
    Set mrc3 = ExecuteSQL(txtSQL, MsgText)

    mrc3.AddNew
    mrc3.Fields(1) = Trim(txtCardID.Text)
    mrc3.Fields(2) = Trim(txtStudentID.Text)
    mrc3.Fields(3) = Trim(txtName.Text)
    mrc3.Fields(4) = Trim(txtMajor.Text)
    mrc3.Fields(5) = Trim(txtSex.Text)
    mrc3.Fields(6) = Trim(txtOnlineDate.Text)
    mrc3.Fields(7) = Trim(txtOnlineTime.Text)
    mrc3.Fields(13) = "正常上机"
    mrc3.Fields(14) = "JJH"
    mrc3.Update

End Sub

小结

 注释虽然不多,但其实只要把流程图画出来,代码理解的就差不多,而且这对以后找Bug也是很有帮助的,要相信,世界会向那些有目标和远见的人让路。

猜你喜欢

转载自blog.csdn.net/Ellen5203/article/details/82290279