机房收费系统——下机

流程图

部分代码

计算消费时间

                '计算上机时间
                intLineTime = (Date - DateValue(onw!ondate)) * 1440 + (Hour(Time) - _
                 Hour(TimeValue(onw!OnTime))) * 60 + (Minute(Time) - _
                 Minute(TimeValue(onw!OnTime))) '计算机上机时间
                
                txtctime.Text = Trim(intLineTime)
                  If intLineTime <= Val(Trim(bas.Fields(4))) Then '判断上机时间是否小于准备时间
                   txtCMoney.Text = 0
                 
                 Else
                       '判断实际时间是否小于最低消费时间
                    If intLineTime <= Val(Trim(bas.Fields(3))) Then '如果小于
                        txtCMoney.Text = 0
                    Else
                          '实际在线时间大于最低消费时间则按单位时间算,分固定和临时两种用户
                        If intLineTime > Val(Trim(bas!leasttime)) And Trim(stu.Fields(14)) = "固定用户" Then
                        '如果在线时间大于准备时间和他是固定用户
                        curConsume = intLineTime / Val(Trim(bas!unittime)) '用上机时长除以递增时间 等于上机小时
                        txtCMoney.Text = Val(curConsume) * Val(fixedunit)  '用上机小时乘固定用户每小时费用等于消费金额
                        Else
                            If intLineTime > Val(Trim(bas!leasttime)) And Trim(stu.Fields(14)) = "临时用户" Then
                            '如果是临时用户
                                curConsume = intLineTime / Val(bas!unittime) '用上机时长除以递增时间
                                txtCMoney.Text = Val(curConsume) * Val(temunit) '用上机小时乘临时用户每小时费用 等于消费金额
                            End If
                        End If
                    End If

计算消费金额和余额

'计算消费金额
curConsume = intLineTime / Val(bas!unittime) '用上机时长除以递增时间
                                txtCMoney.Text = Val(curConsume) * Val(temunit) '用上机小时乘临时用户每小时费用 等于消费金额


'计算余额(账户余额=原账户余额-消费余额)
      txtbalance.Text = stu!cash - Val(txtCMoney.Text) '账户余额

显示上机人数

    '显示上机人数
    Dim onw1 As adodb.Recordset '判断卡号是否正在上机
    txtsql = "select*from OnLine_Info"
    Set onw1 = ExecuteSQL(txtsql, Msgtext)
    lblUser.Caption = onw1.RecordCount
    onw1.Close

更新上机表

'更新上机表
    txtSQL = "select * from Line_Info " '获取上机记录表
    Set LineSQL = ExecuteSQL(txtSQL, MsgText)
     LineSQL.AddNew
       LineSQL.Fields(1) = Trim(txtcardno.Text)
       LineSQL.Fields(2) = Trim(txtsid.Text)
        LineSQL.Fields(3) = Trim(txtname.Text)
        LineSQL.Fields(4) = Trim(txtdept.Text)
        LineSQL.Fields(5) = Trim(txtsex.Text)
        LineSQL.Fields(6) = Trim(txtondate.Text)
        LineSQL.Fields(7) = Trim(txtontime.Text)
        LineSQL.Fields(8) = Trim(txtoffdate.Text)
        LineSQL.Fields(9) = Trim(txtofftime.Text)
        LineSQL.Fields(10) = Trim(txtctime.Text)
        LineSQL.Fields(11) = Trim(txtCMoney.Text)
        LineSQL.Fields(12) = Trim(txtbalance.Text)
        LineSQL.Fields(13) = Trim("正常下机")
        LineSQL.Fields(14) = Trim(ComputerName)
        LineSQL.Update

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值