【机房收费系统 2】:上机时间和消费金额

我想把机房收费系统中,关于上机时间和消费金额的东西写下来。当时,这两部分可真是难为我了。

上机时间

我其实刚开始都算不出来上机时间,师姐还笑话我笨。后来,几经周折,也试了一些函数(别人都是一下子就找到那个函数了,我是试了一些,才弄出一个我使着顺手的),最后还是用了 DateDiff 函数。有关于这个函数的使用,我不多说,因为度娘会比我更清楚。

刚开始,师姐说只需要一行代码就算出来了。其实,师姐也没有说错。用这个函数,确实只需要一行代码。可是,前提条件是:用户当天上机,当天下机。也就是说:上机日期和下机日期必须是同一天。不然,用这个函数,一行代码,是绝对算不出的(有算出的,请发慈悲告诉我,我好好学习)。

 

我也和一些人交流过,也查了博客。大都说因为是学校机房用,所以,是不可能出现上机日期超过一天的(也就是说,不可能有上通宵的)。也因此,真的只需要那么一行代码CostTime = DateDiff("n", StartTime, EndTime),就可以搞定。

可是,就像师姐说的那样:你太较真了!我真的不明白,为什么要先用学校机房用,所以上机日期不可能超过一天去限制我们对于时间的算法。我认为,他能不能上通宵,是他的事儿,时间该怎么算就还得怎么算。所以,对于时间的算法,我计算了三种(粗略写一下)。

一、CostTime = DateDiff("n", StartTime, EndTime)      ’ 当天上机,当天下机

二、CostTime =TimeValue(24 * 60 - StartTime + EndTime)    '上机间隔一天,比如说今天20:00上机,明天02:00下机。

三、CostTime =TimeValue(24 * 60 - StartTime + EndTime) + (CostDate - 1) * 24 * 60   ' 上机日期超过一天

 

因为,有一些格式转换的问题,所以看起来可能不搭。但我就是说这么个意思。不是还有个强制下机嘛,所以,个人觉得时间就是得算齐全了。万一,哪天系统不在学校用了呢,或者对外开放可以上通宵呢。(其实,后来想想也真是不大可能。但再给我一次机会,我会说说五个字:我要这样算!)全当我给鸡窝多加了几根草吧!

消费金额

消费金额这一块儿也是把我给卡住了,我最初做出来的系统,是不管你什么用户,不管你上机多久,我都按每分钟给你算,根本没有考虑到准备时间、至少上机时间、递增单位时间这些东西。后来,也给想明白了(至少,现在的我,还没有想出更对的算法了)。

一、上机时间在准备时间内,所有类型用户均不收费,也就是消费金额为零。

二、超过了准备时间,但在至少上机时间内。那么上机时间就按至少上机时间给不同类型的用户计算消费金额。

消费金额=至少上机时间 * 单位时间消费

三、超过了至少上机时间。

X=(消费时间-最少上机时间)/ 递增单位时间       ' X保留一位小数

IF  int( x ) <> x then int(x)=int(x+1) , else x=x  (不要求格式滴哈,就简单说明一下)

消费金额=(至少上机时间+递增单位时间 * X )* 单位时间消费(分用户类型)

 

脑袋瓜儿也不好使,都想了好久,才想到现在这个程度。要是发现有什么错的,真诚的希望大家能帮我指出来。

 

 

 

 

 

请大家多多指教,谢谢!

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 28
    评论
Java机房上机管理系统是一种用于管理机房上机的软件系统。它可以帮助机房管理员更好地管理机房资源,包括电脑的使用情况、电脑的维修情况等。下面是一个简单的Java机房上机管理系统的设计思路: 1. 系统功能设计 - 上机申请:学生可以通过系统提交上机申请,包括上机时间、使用电脑编号等信息。 - 电脑维修申报:学生可以通过系统提交电脑维修申报,包括电脑编号、故障描述等信息。 - 机房电脑管理:管理员可以通过系统管理机房电脑,包括电脑的添加、删除、修改等操作。 - 上机记录查询:学生和管理员可以通过系统查询上机记录,包括上机时间、使用电脑编号等信息。 - 维修记录查询:学生和管理员可以通过系统查询维修记录,包括电脑编号、故障描述等信息。 2. 系统架构设计 - MVC设计模式:将系统分为模型、视图和控制器三个部分,分别负责数据处理、用户界面和业务逻辑。 - 数据库设计:使用关系型数据库存储系统数据,包括学生信息、电脑信息、上机记录、维修记录等。 - 用户界面设计:使用Java Swing框架实现用户界面,包括登录界面、主界面、上机申请界面、电脑维修申报界面、机房电脑管理界面、上机记录查询界面、维修记录查询界面等。 3. 代码实现要求 - 标识符命名要符合规范,使用驼峰命名法。 - 代码要有注释,注释要清晰明了。 - 代码要有异常处理,避免程序崩溃。 - 代码要有单元测试,保证代码质量。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值