在机房收费系统中,上下机这边花了不少的时间去做它,主要原因是没有理清思路,一股脑的就做起来了,上机挺好做的,到了下机,做完以后傻眼了,这才发现不对着呢为了避免这种情况,在做上下机的时候首先理清思路,不要着急着写代码,磨刀不误砍柴工,下面说说我对上下机
在机房收费系统中,上下机这边花了不少的时间去做它,主要原因是没有理清思路,一股脑的就做起来了,上机挺好做的,到了下机,做完以后傻眼了,这才发现不对着呢……为了避免这种情况,在做上下机的时候首先理清思路,不要着急着写代码,磨刀不误砍柴工,下面说说我对上下机的认识.
上机
首先是上机的流程图

然后是针对每个流程进行的分析和部分代码。如果对流程分析清楚,代码就好写了。
1、卡号是否为空
2、卡号是否存在(student_Info表)
3、卡号的状态是否为”使用”(student_Info表)
'检查卡号是否能正常使用
txtSQL = "select * from student_Info where cardno='" & Trim(txtcardno.Text) & "'"
Set mrc = executesql(txtSQL, msgText)
If mrc.EOF Then
MsgBox "此卡尚未注册!", vbOKOnly + vbExclamation, "警告"
txtcardno.Text = ""
txtcardno.SetFocus
mrc.Close
Exit Sub
Else
status = Trim(mrc.Fields(10))
If mrc.EOF = False And "未使用" = status Then
MsgBox "该卡没有注册!", vbOKOnly + vbExclamation, "警告!"
txtcardno.Text = ""
txtcardno.SetFocus
mrc.Close
Exit Sub
End If
End If4、检查是否正在上机
txtSQL = "select * from OnLine_Info where cardno='" & Trim(txtcardno.Text) & "'" Set mrcc = executesql(txtSQL, msgText)
'如果卡号能用且没有上机,检查余额
If Not mrc.Fields(7) > frmbasicctsding.txtlimitcash Then '坚持是否余额是否大于最少金额
MsgBox "余额不足,请充值!", vbOKOnly + vbExclamation, "警告"
mrc.Close
Exit Sub
End If'显示登录人数 onflag = onflag + 1 Label19.Caption = onflag '断开数据库连接 mrc.Close
8、将上机记录添加到Line_Info表中
下机
--- 介绍 ---本系统是一套操作简便、功能完善的票务系统,程序的特点如下: 分类设置一:网站版块管理国内城市管理 国内航空公司管理 国际大州管理 国际国家管理 国际城市管理 国际航空公司管理 火车类型管理 二:订房信息管理订房信息管理 三:网站信息管理 机票常识管理 学生特价管理 网站公告管理 最新信息管理 其他信息管理 四:机票管理 国内航班管理 国际航班管理 特价管理 火 车 票管理 五:
0
下机的流程图

1、检查是否正在上机
2、更新Line_Info表中的数据(更新下机日期和下机时间)
'判断卡号是否在上机
txtSQL = "select * from OnLine_Info where cardno='" & Trim(txtcardno.Text) & "'"
Set mrc = executesql(txtSQL, msgText)
If mrc.EOF = True Then
Label14.Caption = "该卡号还没上机!"
mrc.Close
Exit Sub<strong style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </strong>3、删除OnLine_Info表中的数据
4、计算消费的时间
'计算上机消耗的时间
txtoffdate.Text = Format(Date, "yyyy-mm-dd")
txtofftime.Text = Format(Time, "hh:mm")
Usetime = Abs(DateDiff("n", txtofftime, txtontime)) ’每天一结账,结账的时候强制用户下机
txtconsumetime.Text = Usetime5、计算消费的金额
'计算消费的金额
'如果消费的时间小于最少时间,消费金额为1元
If txtconsumetime.Text <= Leasttime Then
txtconsume.Text = 1
'txtcash.Text = mrc.Fields(7) - Trim(txtconsume.Text)
ElseIf Usetime <= pretime Then
'第一种情况消费时间小于准备时间,消费金额为0
Usecash = 0
txtconsume.Text = Usecash
Else
'一个递增时间段消费的金钱,<span style="font-size:18px;"></span><pre name="code" class="vb"><span style="white-space:pre"> </span>’按一个递增时间段(30分钟)计算基础上下机这里主要是逻辑上的思考,把思路理清以后就能做好。在机房收费系统中,不仅仅是上下机,结账,组合查询等等都体现了逻辑的重要性,对要实现的功能有个全局把握,再把它分解,这样一点点的进行,就可以把它做好。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
C++高性能并发应用_C++如何开发性能关键应用
Java AI集成Deep Java Library_Java怎么集成AI模型部署
Golang后端API开发_Golang如何高效开发后端和API
Python异步并发改进_Python异步编程有哪些新改进
C++系统编程内存管理_C++系统编程怎么与Rust竞争内存安全
Java GraalVM原生镜像构建_Java怎么用GraalVM构建高效原生镜像
Python FastAPI异步API开发_Python怎么用FastAPI构建异步API
C++现代C++20/23/26特性_现代C++有哪些新标准特性如modules和coroutines
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号