应用于停车场的24小时计费算法

这篇具有很好参考价值的文章主要介绍了应用于停车场的24小时计费算法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

停车场管理中,最普遍最简单的计费规则当属24小时计费,也就是在按停车小时数计费. 收费规则设置界面如下
停车场计费规则算法设计,算法,云计算
24小时计费规则并不复杂,方法输入车辆进出时间startTime、endTime

参考代码Java文章来源地址https://www.toymoban.com/news/detail-614830.html

public static BigDecimal chargin(HourChargingRule rule,LocalDateTime inTime,LocalDateTime endTime){
        Duration between = Duration.between(inTime, endTime);
        //相差分钟数
        long minutes = between.toMinutes();
        if(rule.getFreeMin() >= minutes){
            //未到收费时长
            return new BigDecimal(ChargingFinal.ZERO_FREE);
        }
        //停车时长在一天内
        if(minutes <= dayMin){
            //判断多少个小时
            int s = (int)minutes / 60;
            if(minutes % 60 >= rule.getTwoMin()){
                s+=1;
            }
            return rule.getChargingHours().get(s - 1);
        }
        //1.计算满24小时第一天费用
        BigDecimal totalMoney = rule.getChargingHours().get(23);//第一天费用
        //2.计算24小时后费用
        int day = (int) minutes / dayMin;
        if(rule.getExceedMode() == 0 ){ //重复24小时计费
            totalMoney = totalMoney.multiply(new BigDecimal(day - 1));
            //计算最后一个未满24小时车费
            int lastMin = (int) minutes % dayMin;
            if(lastMin > rule.getTwoMin()){
                int hours = lastMin / 60;
                if(lastMin % 60 >= rule.getTwoMin()){
                    hours+=1;
                }
                totalMoney = totalMoney.add(rule.getChargingHours().get(hours - 1));
            }
        }else if(rule.getExceedMode() == 1){//每小时收费
            int lastMin = (int)minutes % dayMin;
            if(lastMin >= rule.getTwoMin()){
                int hours = lastMin / 60;
                if(lastMin % 60 >= rule.getTwoMin()){
                    hours+=1;
                }
                totalMoney = totalMoney.add(BigDecimal.valueOf(hours * rule.getExceedValue()));
            }
        }else if(rule.getExceedValue() == 2){
            totalMoney = totalMoney.multiply(new BigDecimal(day - 1));
            int lastMin = (int)minutes % dayMin;
            if(lastMin >= rule.getTwoMin()){
                totalMoney = totalMoney.add(rule.getChargingHours().get(23));
            }
        }
        return totalMoney;
    }

到了这里,关于应用于停车场的24小时计费算法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 停车场收费系统

        1.1 AppServe集成应用     Mysql:MySQL 是一款安全、跨平台、高效的,并与 PHP、Java 等主流编程语言紧密结合的数据库系统。该数据库系统是由瑞典的 MySQL AB 公司开发、发布并支持,由 MySQL 的初始开发人员 David Axmark 和 Michael Monty Widenius 于 1995 年建立的。     Php:PHP是

    2024年02月03日
    浏览(83)
  • 停车场管理系统

    开发   以下为停车场管理系统的代码:   首先定义Car类,记录车辆信息:   ```java public class Car {     private String plateNumber;  // 车牌号     private long enterTime;  // 进入停车场时间     private long exitTime;  // 离开停车场时间       public Car(String plateNumber, long enterTime) {      

    2024年02月09日
    浏览(40)
  • 停车场管理系统(C++)

    大二写的肯定会有很多很多很多缺点~希望大佬们能指出~给大家提供一个可以改的一个小东西,改成其他的什么什么也是可以的~有bug在评论区里说一下~952行~基本重要的都有注释~ 本“项目”实现了: 1.大中小车型分类 2.进场候车道 3.时间的自动提取 4.车牌的判定 5.查询、进车

    2024年01月16日
    浏览(49)
  • C#停车场管理系统

    现如今随着经济的发展, 私家车越来越多, 系统管理停车场变得尤为重要。所以我写了这个系统用来系统化的管理停车场的车辆的停入、驶出和计费,停车位的使用情况,停车证件的信息管理以及工作员工的信息管理,使得停车场的管理可以变的更加的方便快捷和人性化。

    2024年02月07日
    浏览(45)
  • 停车场管理系统(C语言)

    1、问题描述 设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待

    2024年02月04日
    浏览(39)
  • Python智慧停车场运营分析系统

    该文章所使用的资料可以私聊获取 该项目小白不用担心,因为全部都有注释,不用担心看不懂 (贴心boy) 所有代码为完整的代码,不用担心(放心) 各个按钮实现情况图 没什么说的,愿各位代码无bug。 网络乞丐求打赏!(❀_❀)

    2024年02月04日
    浏览(34)
  • 基于微信小程序的停车场停车小程序(源码+文档+包运行)

    毕设帮助、技术解答、源码交流 联系方式见文末。 随着社会经济的发展,城市居民汽车持有量大幅度增长,停车难问题困扰着众多汽车用户。为了解决这一难题。开发了基于微信小程序的停车场管理系统,可实现停车场信息共享,使用户能准确,实时地掌握目标停车位的使用情

    2024年02月03日
    浏览(52)
  • 数据结构停车场管理系统设计

    数据结构与算法分析课程设计之数据结构停车场管理系统设计。主要应用到数据结构中的栈与队列。运用到的编程语言为C++。 目录 一  设计要求  二 思路分析 三 设计流程 先附上完整代码: 运行结果图: 1.1 问题描述 :设停车场是一个可停放n辆车的狭长通道,且只有一个

    2024年02月04日
    浏览(43)
  • 用JAVA实现停车场管理系统

    该程序使用ArrayList存储停车记录,并通过switch-case语句实现菜单选择功能。主要功能包括: 停车:输入车牌号和进入时间,自动分配停车位编号, 结算:根据停车位编号计算停车费用,计费标准为停车时长(秒)乘以每秒费用0.05元,同时记录车辆离开时间和费用; 查看记录

    2024年02月11日
    浏览(40)
  • 数据结构--栈和队列--停车场问题

    目录 一、问题描述 二、实验目的 三、需求分析 四、方法描述 五、代码实现 六、实验结果测试 设停车场内只有一个可停放 n 辆汽车的狭长通道,且只有一个大门可供汽车进出,汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一

    2024年02月22日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包