机房收费系统之日期计算及收费管理

来源:互联网 发布:不需要网络的收音机 编辑:程序博客网 时间:2024/06/05 09:42

机房收费系统上机只有一种,就是在主界面上机;但下机方式有两种:其一,是主界面的正常下机;其二,是在菜单“一般用户”—“上机状态查看”—“上机管理”中的下机。如果细分的话,第二种方法还分为“选中学生下机”和“所有学生下机”。

因为主界面是要求显示的消费时间和消费金额的,这个不容易被忽略;往往就会把第二中下机方式忽略掉不计算。但我们从经营的角度去想,就会对自己造成一定的经济损失。下面就介绍怎么来计算日期和计算收费。


计算日期:

vb为我们提供了计算日期的函数DateDiff()

语法格式:DateDiff (interval, Date1 , Date2[,firstweekofyear[,firstweekofyear]])

 返回一个Variant(long) 的值,表示两个指定日期间的时间间隔数目。(通俗地说就是返回一个长整型的数值,数值大小为Date2减去Date1)

常用参数的含义:
interval:设定两个日期之间的期间计算之单位。下面是计算日期单位的符号。
yyyy > Year 年
q Quarter 季
m Month 月
d Day 日
w Weekday 星期
h Hour 时
n Minute 分      
s Second 秒

Date1和Date2:是你要计算的两个日期,注意顺序不要搞混了,是Date2减去Date1的值

举例:返回2017年7月22日18:17:23和2017年7月23日 18:17:23 相隔的分钟。

n=DateDiff("n","2017/7/2218:17:23","2017/7/2318:17:23")    ’n用来接收返回值


计算收费:

(1)需要知道上机日期和上机时间;从online表中获取。

(2)需要知道下机日期和下机时间;当点击下机时获取。

(3)需要知道用户类型,计费标准不同;从student表中获取。

下面是示例代码:



在主界面下机和所有学生下机,注意相应的同步student表中的余额。选中学生下机,除这一点之外,还有一个需要获取从MSFlexGrid控件上获取“选中行”。

这个控件有一个事件可以很容易地帮助我们获取所选中的行。

Private Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
        n = Trim(MSFlexGrid1.Row) 
End Sub

"n"是我们定义用来接收返回值。

得到选中行之后,就可以利用“cardNo”来使对应的学生下线。

SQL语句为:txtsql = "select * from online_info where cardno='" _ &  Trim(MSFlexGrid1.TextMatrix(n, 0)) & "'"

MSFexGrid1.TextMatrix(n,0)代表的含义为:该控件的表的第n行第0列的数据。






原创粉丝点击