机房收费系统之 退卡流程
来源:互联网 发布:云校大数据技术研究院 编辑:程序博客网 时间:2024/04/30 03:24
退卡代码不难,重点是理清思路。
退卡流程 文字解释:
1,判定输入的是否为空 是否为数字。
用到texttst,isnumber
2,看该卡是否注册 注销
a,用到数据库中,student(即基本信息情况表)。若不在此表中,则未注册。
b,仍用student表。字段中的“status”,用于标记。若为“不使用”,则已经注销。(注:最后退卡成功后,要将此标志位改为“不使用”)
3,是否正在上机
用到数据库中的表online(记录上机)。
4,满足退卡条件,则继续操作。(不分先后)
a,将退卡信息添加到退卡表中
b, 显示退卡信息 ,提示退卡成功
c,修改student中使用和结账状态
d,更改其他表中关于该卡的余额
流程图如下:
实现代码如下:
Private Sub cmdCancelCard_Click() Dim mrc1 As ADODB.Recordset '查student表,用与检验是否存在改用户,状态位用于标记是否注销 Dim mrc2 As ADODB.Recordset '查online 表,用于判断用户是否在上机 Dim mrc3 As ADODB.Recordset '查cancelCard 表,用于退卡账户的操作 更新 Dim msgString As String Dim txtSQL As String Dim Balance As Single Dim number As Integer Dim userId1 As String If Not testtxt(Trim(TxtCancelCardId)) Then MsgBox "请输入卡号!", vbOKOnly + vbExclamation, "提示" Else If Not IsNumeric(TxtCancelCardId) Then MsgBox "卡号请输入数字!", vbOKOnly + vbExclamation, "提示" End If End If '判定此卡是否存在 是否注销 txtSQL = "select * from student where cardNo='" & TxtCancelCardId.Text & "'" Set mrc1 = ExecuteSQL(txtSQL, msgString) If mrc1.EOF = True Then MsgBox "此卡不存在!", vbOKOnly + vbExclamation, "提示" TxtCancelCardId.SetFocus TxtCancelCardId.Text = "" Exit Sub Else If Trim(CStr(mrc1.Fields(10))) = "不使用" Then MsgBox "该卡已注销!", vbExclamation + vbOKOnly, "警告" TxtCancelCardId.SetFocus TxtCancelCardId.Text = "" Exit Sub End If txtCancelCash.Text = Trim(mrc1.Fields(8)) '获取余额 number = Trim(mrc1.Fields(1)) userId1 = Trim(mrc1.Fields(6)) End If '表online 判断该卡是否正在上机 txtSQL = "select * from online where Cardno='" & Trim(TxtCancelCardId.Text) & "'" Set mrc2 = ExecuteSQL(txtSQL, msgString) If mrc2.EOF Then mrc2.Close Else If Trim(mrc2.Fields(10)) = "上机状态" Then MsgBox "该卡正在上机!", vbExclamation + vbOKOnly, "警告" Exit Sub End If mrc2.Close End If '表cancelCard 用于退卡账户的操作 更新 txtSQL = "select * from cancelCard where CardNo='" & Trim(TxtCancelCardId.Text) & "'" Set mrc3 = ExecuteSQL(txtSQL, msgString) mrc3.AddNew mrc3.Fields(0) = Trim(TxtCancelCardId.Text) mrc3.Fields(1) = Trim(mrc1.Fields(0)) mrc3.Fields(2) = Trim(mrc1.Fields(7)) mrc3.Fields(3) = Date mrc3.Fields(4) = Time mrc3.Fields(5) = Trim(userId1) mrc3.Fields(6) = "未结账" mrc3.Update txtShow.Enabled = False '在文本框中显示信息 txtShow.FontSize = 16 txtShow.Text = "退卡卡号:" & Trim(mrc3.Fields(0)) & vbCrLf & vbCrLf & _ "应退款金额:" & Trim(txtCancelCash.Text) & vbCrLf & vbCrLf & _ "退卡日期:" & Date & vbCrLf & vbCrLf & _ "退卡时间:" & mrc3.Fields(4) & vbCrLf & vbCrLf & _ "办理退卡老师:" & mrc3.Fields(5) mrc3.Close MsgBox "退卡成功!", vbExclamation + vbOKOnly, "退卡" txtShow.Text = "" TxtCancelCardId = "" txtCancelCash.Text = "" ' '修改student中余额和状态(状态的作用是标记) mrc1.Fields(7) = 0 mrc1.Fields(10) = "不使用" mrc1.Fields(11) = "未结账" mrc1.Update mrc1.CloseEnd Sub
- 机房收费系统之 退卡流程
- 机房收费系统之退卡窗体
- 机房收费系统之退卡
- 机房收费系统之退卡
- 机房收费系统退卡之触发器
- 退卡--机房收费系统
- 机房收费系统(二)之下机退卡
- 机房收费系统之七(退卡窗体)
- 机房收费系统之退卡窗体--OLE错误
- 机房收费系统——退卡
- 机房收费系统——退卡
- 【第一次机房收费系统】退卡
- 机房收费系统之流程分析
- 机房收费系统的退卡和结账
- 机房收费系统(一)——退卡操作
- 机房收费系统基本流程
- 【机房收费系统】 之 收费模式
- 机房收费系统之临时收费金额
- DMA映射 dma_addr_t
- Linux嵌入式工程师成长经历
- callback函数
- cocos2d-x进度条的实现
- 简单的表单验证--js,jsp,jquery,java,mysql(前台和后台验证)(
- 机房收费系统之 退卡流程
- 常见SQL(生成序列号)
- 无法实现的梦想:孤独之旅计划
- 结构体 net_device常用成员分析
- PHP报错Bus error解决方法
- oracle动态sql
- button.setRolloverIcon的使用
- 编写一个程序,实现顺序环形队列的各种基本运算。
- ARM裸机之系统时钟