【机房】注册

举报
Laura_张 发表于 2022/08/27 00:25:13 2022/08/27
【摘要】 机房收费系统中的操作员可以注册用户。 窗体展示: 查找 点击查找按钮可以调转到查看余额的界面。 可以查看学生的基本信息以及余额。 查询的时候,先判断卡号是否为空,卡号是否存在,如果卡号不存在...

机房收费系统中的操作员可以注册用户。

窗体展示:

在这里插入图片描述

查找

点击查找按钮可以调转到查看余额的界面。
可以查看学生的基本信息以及余额。
在这里插入图片描述
查询的时候,先判断卡号是否为空,卡号是否存在,如果卡号不存在就可以退出返回去注册卡号,如果卡号存在,先判断卡号是否可以使用,然后后把学生表中的数据展示出来。

代码展示:

Private Sub cmdInquiry_Click()
    Dim txtSQL As String
    Dim MsgText As String
    Dim mrc As ADODB.Recordset
    
    '判断卡号是否为空
    If txtCardNo.Text = "" Then
        MsgBox "卡号为空,请先输入", 64, "温馨提示"
        txtCardNo.SetFocus
        Exit Sub
    End If
    
    '连接student表查看卡号是否存在
    txtSQL = "select * from student_Info where cardno='" & Trim(txtCardNo.Text) & "'"
    Set mrc = ExecuteSQL(txtSQL, MsgText)
    
    If mrc.EOF = True Then
        MsgBox "卡号不存在,请重新输入", 64, "温馨提示"
        txtCardNo.Text = ""
        txtCardNo.SetFocus
        Exit Sub
    Else
        '优化要判断学号是否使用
        txtSID.Text = mrc.Fields(1)    '学号
        txtClass.Text = mrc.Fields(6)  '班级
        txtName.Text = mrc.Fields(2)   '姓名
        txtState.Text = mrc.Fields(10) '状态
        txtSex.Text = mrc.Fields(3)    '性别
        txtDept.Text = mrc.Fields(4)   '系别
        txtGrade.Text = mrc.Fields(5)   '年级
        txtExplain.Text = mrc.Fields(9) '备注
        txtBaLance.Text = mrc.Fields(7) '余额
     
    mrc.Close   
    End If  
End Sub
  
 

点击清除按钮,可以清除所有控件中的内容。

'清空控件内容
Private Sub cmdClear_Click()
    Dim ctrl As Control
    
    For Each ctrl In Me.Controls
        If TypeOf ctrl Is TextBox Then '是否为文本框TextBox
        ctrl.Text = ""
        End If
    Next
End Sub

  
 

存盘

查找不到数据的时候,可以输入数据,然后点击存盘,这样就可以注册卡号了。
注册时候需要连接基本数据设定表,user表,recharge表,学生表

 	Dim mrc As ADODB.Recordset '学生表
    Dim mrc1 As ADODB.Recordset '基本数据设定
    Dim mrc2 As ADODB.Recordset 'User表
    Dim mrcRe As ADODB.Recordset 'recharge
    Dim txtSQL As String
    Dim MsgText As String

  
 

首先判断数据是否输入,输入格式是否正确。


    '判断是否输入卡号
    If Not Testtxt(txtCardNo.Text) Then
        MsgBox "请输入卡号!", vbOKOnly + vbExclamation, "警告"
    Else
        If Not Testtxt(txtCardNo.Text) Then
            MsgBox "卡号须为数字", vbOKOnly + vbExclamation, "警告"
            Exit Sub
            txtCardNo.SetFocus
        End If
    End If
            
    '判断是否输入学号
    If Not Testtxt(txtSID.Text) Then
        MsgBox "请输入学号!", vbOKOnly + vbExclamation, "警告"
        txtSID.SetFocus
        Exit Sub
    End If
    
    '判断是否输入姓名
    If Not Testtxt(txtName.Text) Then
        MsgBox "请输入姓名!", vbOKOnly + vbExclamation, "警告"
        txtName.SetFocus
        Exit Sub
    End If
    
    '判断是否输入性别
    If Not Testtxt(comboSex.Text) Then
        MsgBox "请选择性别", vbOKOnly + vbExclamation, "警告"
        comboSex.SetFocus
        Exit Sub
    End If
     
    '判断是否输入系别
    If Not Testtxt(txtDept.Text) Then
        MsgBox "请输入系别", vbOKOnly + vbExclamation, "警告"
        txtDept.SetFocus
        Exit Sub
    End If
    
    '判断是否输入年级
    If Not Testtxt(txtGrade.Text) Then
        MsgBox "请输入年级", vbOKOnly + vbExclamation, "警告"
        txtGrade.SetFocus
        Exit Sub
    End If
    
    '判断是否输入班级
    If Not Testtxt(txtClass.Text) Then
        MsgBox "请输入班级", vbOKOnly + vbExclamation, "警告"
        txtClass.SetFocus
        Exit Sub
    End If
    
    '判断是否输入状态
    If Not Testtxt(comboState.Text) Then
        MsgBox "请选择状态", vbOKOnly + vbExclamation, "警告"
        comboState.SetFocus
        Exit Sub
    End If
    
    '判断是否输入金额
    If Not Testtxt(txtCash.Text) Then
        MsgBox "请输入金额", vbOKOnly + vbExclamation, "警告"
        txtCash.SetFocus
        Exit Sub
    End If
    
    '判断是否输入备注
    If Not Testtxt(txtExplain.Text) Then
        txtExplain.Text = "无"
    End If
    '判断是否输入类型
    If Not Testtxt(comboType.Text) Then
        MsgBox "请选择类型", vbOKOnly + vbExclamation, "警告"
        comboType.SetFocus
        Exit Sub
    End If

  
 

连接学生表判断卡号是否存在,存在就去查询余额,不存在就要输入金额进行注册(输入的金额不能少于最少金额),然后将数据更新到user表、recharge表

代码展示:

'在数据库中查询输入的卡号 若卡号存在
    txtSQL = "select * from student_info where cardno='" & txtCardNo.Text & "'"
    Set mrc = ExecuteSQL(txtSQL, MsgText)
    
    If mrc.EOF = False Then
        MsgBox "卡号已经存在,可以查询余额!", vbOKOnly + vbExclamation, "警告"
        txtCardNo.SetFocus
        txtCardNo.Text = ""
    Else
        '若卡号不存在  判断是否输入金额
        If Not Testtxt(txtCash.Text) Then
            MsgBox "请输入金额", vbOKOnly + vbExclamation, "警告"
            txtCash.SetFocus
        Else
            '设定输入金额不能小于管理员设定的最小值
             txtSQL = "select * from basicdata_info "
             Set mrc1 = ExecuteSQL(txtSQL, MsgText)
             If Val(txtCash.Text) < Trim(mrc1.Fields(5)) Then
                    MsgBox "充值金额小于最低金额", 48, "警告"
                    txtCash.SetFocus
                    Exit Sub
             Else
                    Dim txtSQL2 As String
                    txtSQL2 = "select * from user_info "
                    Set mrc2 = ExecuteSQL(txtSQL, MsgText)
                    mrc.AddNew
                    mrc.Fields(0) = Trim(txtCardNo.Text)
                    mrc.Fields(1) = Trim(txtSID.Text)
                    mrc.Fields(2) = Trim(txtName.Text)
                    mrc.Fields(3) = Trim(comboSex.Text)
                    mrc.Fields(4) = Trim(txtDept.Text)
                    mrc.Fields(5) = Trim(txtGrade.Text)
                    mrc.Fields(6) = Trim(txtClass.Text)
                    mrc.Fields(7) = Trim(txtCash.Text)
                    mrc.Fields(8) = Trim(txtExplain.Text)
'                    mrc.Fields(9) = Username '9 UserId
                    mrc.Fields(9) = mrc2.Fields(0)
                    mrc.Fields(10) = Trim(comboState.Text)
                    mrc.Fields(11) = "未结账"
                    mrc.Fields(12) = Format(Date, "yyyy-mm-dd")
                    mrc.Fields(13) = Time
                    mrc.Fields(14) = Trim(comboType.Text)
                    
                    mrc.Update
                              
        '更新Recharg表
        txtSQL = "select * from ReCharge_Info"
        Set mrcRe = ExecuteSQL(txtSQL, MsgText)
            
            mrcRe.AddNew
            mrcRe.Fields(1) = mrc.Fields(1) '学号
            mrcRe.Fields(2) = mrc.Fields(0) '卡号
            mrcRe.Fields(3) = Trim(txtCash.Text) '注册金额
            mrcRe.Fields(4) = Date '充值日期
            mrcRe.Fields(5) = Time '充值时间
            mrcRe.Fields(6) = mrc2.Fields(0) 'UserID
            mrcRe.Fields(7) = "未结账"  '
            mrcRe.Update
             
                    MsgBox "注册成功!", 64, "温馨提示"
                    
                    Call cmdEmpty_Click
                    
                    End If
            End If
    End If
  
 

上面代码有一个调用,这个就是把所有内容都清空,也就是清空的意思。

  Call cmdEmpty_Click

  
 

感谢阅读~

文章来源: blog.csdn.net,作者:张艳伟_Laura,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/Laura__zhang/article/details/107488718

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。