第一次机房上机系统——充值

前言:
我也是刚刚进行到充值,一开始以为很简单,但是经过自己仔细的思考,以及不断的升级,发现其中有很多奥秘,希望下面的分享能够对你有所帮助!

流程图

这里写图片描述

代码

1、首先判断是否为空

'判断卡号是否为空
    If Trim(txtCardNo.Text) = "" Then
        MsgBox "请输入卡号!", vbOKOnly + vbExclamation, "警告"
        txtCardNo.SetFocus
        Exit Sub
    End If

    '判断充值金额是否为空
    If Trim(txtRecharge.Text) = "" Then
        MsgBox "请输入充值金额", vbOKOnly + vbExclamation, "警告"
        txtRecharge.SetFocus
        Exit Sub
    End If

2、判断是否是数字

'判断卡号是否为数字
    If Not IsNumeric(txtCardNo.Text) Then
        MsgBox "卡号请输入数字", vbOKOnly + vbExclamation, "警告"
        txtCardNo.Text = ""
        txtCardNo.SetFocus
        Exit Sub
    End If

    '判断充值金额是否为数字
    If Not IsNumeric(txtRecharge.Text) Then
        MsgBox "充值金额都是数字", vbOKOnly + vbExclamation, "警告"
        txtRecharge.Text = ""
        txtRecharge.SetFocus
        Exit Sub
    End If

3、判断基础信息表的数据

    '连接基础信息表
    txtSQL = "select *from basicdata_info"
    Set mrc_BData = ExecuteSQL(txtSQL, msgText)
    '连接用户表
    txtSQL = "select *from user_info where userid='" & UserName & "'"
    Set mrc_User = ExecuteSQL(txtSQL, msgText)

    '判断是否有基础数据
    If mrc_BData.EOF Then‘如果没有基础数据
        Select Case mrc_User.Fields(2)’判断权限
            Case Is = 管理员
                frmBasicDataSet.Show
            Case Is = 操作员
                MsgBox "请联系管理员添加基本数据信息!", vbOKOnly + vbExclamation, "警告"
        End Select
        Exit Sub
    End If

4、判断是否大于最小金额

‘因为前面已经连接过数据库,所以就不写连接数据库的代码了,这里连接的是基本信息表
    '判断是否大于最小金额
    If Val(txtRecharge.Text) < trim(mrc_BData.Fields(5)) Then
    '因为数据库是字符串类型,所以要使用Val()转换函数
            MsgBox "金额不能低于设置的最小金额", vbOKOnly + vbExclamation, "警告"
        txtRecharge.Text = ""
        txtRecharge.SetFocus
        mrc_BData.Close
        Exit Sub
    End If

5、连接学生表,查看卡后是否存在,是否退卡

    '连接学生表
    txtSQL = "select*from student_info where cardno='" & txtCardNo.Text & "'"
    Set mrc_Stu = ExecuteSQL(txtSQL, msgText)
    '判断是否有该卡号
    If mrc_Stu.EOF Then
        MsgBox "此卡号不存在或已经不再使用", vbOKOnly + vbExclamation, "警告"
        mrc_Stu.Close
        txtCardNo.Text = ""
        txtRecharge.Text = ""
        Exit Sub
    End If

    ’判断卡号是否停止使用
    If Trim(mrc_Stu.Fields(10)) = "不使用" Then
        MsgBox "此卡号不存在或已经不再使用", vbOKOnly + vbExclamation, "警告"
        '基础数据窗体显示
        mrc_Stu.Close
        txtCardNo.Text = ""
        txtRecharge.Text = ""
        Exit Sub
    End If

6、从学生表中获得余额和学号

    Dim LastRecharge% '卡内的历史余额
    LastRecharge = Val(mrc_Stu.Fields(7)) '查看卡内的原始余额
    SID = mrc_Stu.Fields(1)  '传出来学号
    mrc_Stu.Close‘关闭数据库

7、从公共变量UserName获得充值教师

    Dim ReTea$ '用来存放充值的老师
    ReTea = Trim(UserName) '充值老师

8、计算金额并且获得其他数据

    Dim NowRecharge% '存放充值后的余额
    NowRecharge = LastRecharge + Val(txtRecharge.Text) '现在的金额
    ReDate = Format(Date, "yy-mm-dd") '充值日期
    ReTime = Format(Now, "hh:mm:ss") '充值时间

9、将数据写到对应的充值表中

 '连接充值表
    txtSQL = "select*from recharge_info"
    Set mrc_Re = ExecuteSQL(txtSQL, msgText)
    mrc_Re.AddNew
    mrc_Re.Fields(1) = Trim(SID) '学号
    mrc_Re.Fields(2) = Trim(txtCardNo.Text) '卡号
    mrc_Re.Fields(3) = CStr(Trim(txtRecharge.Text))   '充值金额
    mrc_Re.Fields(4) = Trim(ReDate) '充值日期
    mrc_Re.Fields(5) = Trim(ReTime) '充值时间
    mrc_Re.Fields(6) = Trim(UserName) '充值老师
    mrc_Re.Fields(7) = "未结账"
    mrc_Re.Update
    mrc_Re.Close

10、将充值后的余额写到学生表中

    '连接到学生表
    txtSQL = "select*from student_info where cardno='" & txtCardNo.Text & "'"
    Set mrc_Stu = ExecuteSQL(txtSQL, msgText)

    mrc_Stu.Fields(7) = CStr(NowRecharge)
    mrc_Stu.Update
    mrc_Stu.Close

结束语:
感谢您的阅读,希望我的分享对你有所帮助!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值