第一次机房收费系统之结账

2024-02-22 20:48

本文主要是介绍第一次机房收费系统之结账,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言:
机房收费系统的结账窗体主要是先想清楚功能的逻辑思路。
1.结账是结谁的帐?
结账是管理员的权限,是管理员给操作员结账,操作员工作期间售卡以及充值的金额还有退卡时应退给学生的金额。所以结账是操作员工作期间机房的收入。
2.怎么结账?
在SSTab控件中有购卡,充值,退卡,临时用户几个选项卡,临时用户和购卡的收费金额已经结算到充值中,所以现在清楚结账就是:应收金额=充值金额-退卡金额
部分代码:
单击选项卡:

Private Sub SSTab_Click(PreviousTab As Integer)Dim Smrc As ADODB.RecordsetDim Rmrc As ADODB.RecordsetDim Cmrc As ADODB.RecordsetDim SLmrc As ADODB.RecordsetDim StxtSQL As StringDim RtxtSQL As StringDim CtxtSQL As StringDim SLtxtSQL As StringDim Smsgtext As StringDim Rmsgtext As StringDim Cmsgtext As StringDim SLmsgtext As StringDim i As IntegerDim ReChargeSum As Single                   '定义充值金额Dim j As IntegerDim BackCardMoneySum As Single              '定义退卡金额'连接student_info表StxtSQL = "select * from student_info where userid ='" & Trim(cboOpUserID.Text) & "' and ischeck='未结账'"Set Smrc = ExecuteSQL(StxtSQL, Smsgtext)'连接recharge_info表RtxtSQL = "select * from recharge_info where userid='" & Trim(cboOpUserID.Text) & "' and status='未结账'"Set Rmrc = ExecuteSQL(RtxtSQL, Rmsgtext)'连接cancelcard_info表CtxtSQL = "select * from cancelcard_info where userid='" & Trim(cboOpUserID.Text) & "' and status='未结账' "Set Cmrc = ExecuteSQL(CtxtSQL, Cmsgtext)'连接student_info表SLtxtSQL = "select * from student_info where userid ='" & Trim(cboOpUserID.Text) & "' and ischeck='未结账' and type='临时用户'"Set SLmrc = ExecuteSQL(SLtxtSQL, SLmsgtext)Select Case SSTab.Tab'选择购卡Case 0'显示数据With MSHFlexGrid1.rows = 1.CellAlignment = 4.ColAlignment = 4.TextMatrix(0, 0) = "学号".TextMatrix(0, 1) = "卡号".TextMatrix(0, 2) = "日期".TextMatrix(0, 3) = "时间"Do While Not Smrc.EOF.rows = .rows + 1.CellAlignment = 4.ColAlignment = 4.TextMatrix(.rows - 1, 0) = Smrc.Fields(1).TextMatrix(.rows - 1, 1) = Smrc.Fields(0).TextMatrix(.rows - 1, 2) = Smrc.Fields(12).TextMatrix(.rows - 1, 3) = Smrc.Fields(13)Smrc.MoveNextLoopAdjustColWidth Me, MSHFlexGrid1End With'选择充值Case 1'显示数据With MSHFlexGrid2.rows = 1.CellAlignment = 4.ColAlignment = 4.TextMatrix(0, 0) = "学号".TextMatrix(0, 1) = "卡号".TextMatrix(0, 2) = "充值金额".TextMatrix(0, 3) = "日期".TextMatrix(0, 4) = "时间"Do While Not Rmrc.EOF.rows = .rows + 1.CellAlignment = 4.ColAlignment = 4.TextMatrix(.rows - 1, 0) = Rmrc.Fields(1).TextMatrix(.rows - 1, 1) = Rmrc.Fields(2).TextMatrix(.rows - 1, 2) = Rmrc.Fields(3).TextMatrix(.rows - 1, 3) = Rmrc.Fields(4).TextMatrix(.rows - 1, 4) = Rmrc.Fields(5)Rmrc.MoveNextLoopAdjustColWidth Me, MSHFlexGrid1End With'选择退卡Case 2'显示数据With MSHFlexGrid3.rows = 1.CellAlignment = 4.ColAlignment = 4.TextMatrix(0, 0) = "学号".TextMatrix(0, 1) = "卡号".TextMatrix(0, 2) = "日期".TextMatrix(0, 3) = "时间".TextMatrix(0, 4) = "退卡金额"Do While Not Cmrc.EOF.rows = .rows + 1.CellAlignment = 4.ColAlignment = 4.TextMatrix(.rows - 1, 0) = Cmrc.Fields(0).TextMatrix(.rows - 1, 1) = Cmrc.Fields(1).TextMatrix(.rows - 1, 2) = Cmrc.Fields(3).TextMatrix(.rows - 1, 3) = Cmrc.Fields(4).TextMatrix(.rows - 1, 4) = Cmrc.Fields(2)Cmrc.MoveNextLoopAdjustColWidth Me, MSHFlexGrid1End With'选择临时用户Case 3'显示数据With MSHFlexGrid4.rows = 1.CellAlignment = 4.ColAlignment = 4.TextMatrix(0, 0) = "学号".TextMatrix(0, 1) = "卡号".TextMatrix(0, 2) = "日期".TextMatrix(0, 3) = "时间"Do While Not SLmrc.EOF.rows = .rows + 1.CellAlignment = 4.ColAlignment = 4.TextMatrix(.rows - 1, 0) = SLmrc.Fields(1).TextMatrix(.rows - 1, 1) = SLmrc.Fields(0).TextMatrix(.rows - 1, 2) = SLmrc.Fields(12).TextMatrix(.rows - 1, 3) = Trim(SLmrc.Fields(13))SLmrc.MoveNextLoopAdjustColWidth Me, MSHFlexGrid1End With'选择汇总Case 4'计算售卡张数txtSellCardSum.Text = Smrc.RecordCount'计算退卡张数txtBackCardSum.Text = Cmrc.RecordCount'计算总售卡张数txtSellCardActual.Text = Smrc.RecordCount - Cmrc.RecordCount'计算充值金额For i = 0 To Rmrc.RecordCount - 1ReChargeSum = ReChargeSum + Val(Rmrc.Fields(3))Rmrc.MoveNextNext itxtRecharge.Text = ReChargeSum'计算退卡金额For j = 0 To Cmrc.RecordCount - 1BackCardMoneySum = BackCardMoneySum + Val(Cmrc.Fields(2))Cmrc.MoveNextNext jtxtBackCardMoney.Text = BackCardMoneySum'计算应收金额txtCollectMoney.Text = txtRecharge.Text - txtBackCardMoney.TextCase 5Unload MeEnd SelectSmrc.CloseRmrc.CloseCmrc.CloseSLmrc.Close
End Sub

结账:

Private Sub cmdAccount_Click()Dim Smrc, Rmrc, Cmrc As ADODB.RecordsetDim StxtSQL, RtxtSQL, CtxtSQL As StringDim Smsgtext, Cmsgtext, Rmsgtext As StringIf Not Testtxt(cboOpUserID.Text) ThenMsgBox "请先选择操作员后结账!", vbOKOnly + vbExclamation, "提示"Exit SubEnd If'更新student_Info表的更新状态StxtSQL = "update student_Info set Ischeck ='已结账' where userid= '" & cboOpUserID & "'"Call ExecuteSQL(StxtSQL, Smsgtext)'更新recharge_Info表的更新状态RtxtSQL = "update recharge_Info set status ='已结账' where userid= '" & cboOpUserID & "'"Call ExecuteSQL(RtxtSQL, Rmsgtext)'更新cancelcard_Info表的更新状态CtxtSQL = "update cancelcard_Info set status ='已结账' where userid= '" & cboOpUserID & "'"Call ExecuteSQL(CtxtSQL, Cmsgtext)MsgBox "结账成功!", vbOKOnly + vbExclamation, "提示"End Sub

这篇关于第一次机房收费系统之结账的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/736455

相关文章

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

C#实现系统信息监控与获取功能

《C#实现系统信息监控与获取功能》在C#开发的众多应用场景中,获取系统信息以及监控用户操作有着广泛的用途,比如在系统性能优化工具中,需要实时读取CPU、GPU资源信息,本文将详细介绍如何使用C#来实现... 目录前言一、C# 监控键盘1. 原理与实现思路2. 代码实现二、读取 CPU、GPU 资源信息1.

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

Debian如何查看系统版本? 7种轻松查看Debian版本信息的实用方法

《Debian如何查看系统版本?7种轻松查看Debian版本信息的实用方法》Debian是一个广泛使用的Linux发行版,用户有时需要查看其版本信息以进行系统管理、故障排除或兼容性检查,在Debia... 作为最受欢迎的 linux 发行版之一,Debian 的版本信息在日常使用和系统维护中起着至关重要的作