「车位预约系统java」停车场预约系统

博主:adminadmin 2022-11-23 23:51:05 53

今天给各位分享车位预约系统java的知识,其中也会对停车场预约系统进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

用Java编写 停车场管理系统

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.Scanner;

/*********************************

* 停车场管理

* author zhang

*2013-12-13

********************************/

public class CarStopManager {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

System.out.println("请入车牌号:");

String carno = sc.next();

CarStopManager carStopManager = new CarStopManager();

carStopManager.setCarNo(carno);//设置车牌号

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String sdate = format.format(new Date());

System.out.println("当前时间(入场时间)是: "+sdate);

System.out.println("需要开出车场吗?yes/no:");

String yesno = sc.next();

if(yesno.equals("yes")){

String edate = format.format(new Date());

System.out.println("出场时间是: "+edate);

//计算方法

carManager(2, sdate, edate,carStopManager);

}

}

/**

* 计算方法

*/

public static void carManager(int type,String starTime,

String endTime,CarStopManager carStopManager){

if(type==1){//按月收费

System.out.println("如若没有缴纳月费请缴纳800元,如若缴纳将不再提示!");

}else{

/**

* 一般不会有停车几个月的吧?先不考虑停车几年或者几个月的

*/

String sDay = starTime.substring(8,10);//入场日期(天)

String sHour = starTime.substring(11, 13);//入场小时

String sMM = starTime.substring(14,16);//入场分钟

String eDay = starTime.substring(8,10);//出场日期(天)

String eHour = endTime.substring(11, 13);//出厂小时

String eMM = endTime.substring(14,16);//出厂分钟

float money = 0;//需缴纳的费用

int shour = Integer.parseInt(sHour);

int ehour = Integer.parseInt(eHour);

int smm = Integer.parseInt(sMM);

int emm = Integer.parseInt(eMM);

int rehour = 0;//停车几个小时

if(sDay.equals(eDay)){//同一天

//当天6点到20点之间

if((shour=6 shour=20)){

if(ehour - shour=6){//6个小时之内

rehour = (ehour - shour)*60+(emm - smm);//停车多少分钟

//需要缴纳的费用 前15分钟免费 以后每15分钟1.5元

money = (rehour/15-15)*1.5f;

}else{

int hour = ehour - shour -6;//6小时除外剩余小时数

rehour = 6*60+(emm - smm);//停车多少分钟

//前15分钟免费 以后每15分钟1.5元 超过6小时15分钟2元

money = ((rehour/15-15)*1.5f)+(hour*60/2);

}

}

}else{//跨天 20点到 6点之间

//todo

}

System.out.println("您的车牌号是:"+carStopManager.getCarNo()+";\n" +

"您此次停车花费的费用是: "+money+"元");

}

}

/**

* bean属性

*/

private String carNo;//车牌号

private String startTime;//入场时间

private String endTime;//出场时间

/**

* 无参构造

*/

public CarStopManager(){

super();

}

/**

* 有参数构造

* @param carNo

* @param startTime

* @param endTime

*/

public CarStopManager(String carNo, String startTime, String endTime) {

super();

this.carNo = carNo;

this.startTime = startTime;

this.endTime = endTime;

}

/**

* 设置get方法

* @return

*/

public String getCarNo() {

return carNo;

}

/**

* 设置set方法

* @param carNo

*/

public void setCarNo(String carNo) {

this.carNo = carNo;

}

public String getStartTime() {

return startTime;

}

public void setStartTime(String startTime) {

this.startTime = startTime;

}

public String getEndTime() {

return endTime;

}

public void setEndTime(String endTime) {

this.endTime = endTime;

}

}

如何实现停车场车位预约功能和车位的快速缴费?

建议可以投入一些智能化的管理设备,通过这些设备来降低人工成本,减少跑冒滴漏的现象,通过减少跑冒滴漏把平时可能收不到的钱收回来,变相的增加了一定的收入。

目前市面上智能化的设备有很多,各种眼花缭乱,下面来给大家分析下这些设备的情况。

高位视频:

一个高位视频能够管理6-8个车位,厂家会理论上宣称管理8个车位,不过还要根据具体情况来判断。

优点:完全不需要人进行管理,24小时计费,无感计费。缺点:贵!贵在施工很复杂,需要和各种政府单位打交道,建设费用很高,后期维护费用也不低,适合一线城市的使用。其他城市可作小规模的停车示范区域使用。

视频桩:

一个视频桩可以管理1-2个车位,安装在两个车位之间管理两个车位没有问题。

优点:能够24小时无人进行停车管理。缺点:因为也需用通电通网,施工费用也不低。同时因为属于地位视频,容易被人工损坏与遮挡。

地磁:

地磁检测器,主要埋在车位下方,用于检测车辆,同时能够通过车辆进出场,获悉停车时间。

优点:能够精确记录停车时间

缺点:不知道车辆车牌,同时有可能受到外界干扰。

视频巡检车:

视频巡检车主要通过移动抓拍的方式捕获路边停车车牌,通过高精度GPS或者拍摄地面地标来对应车牌与位置的关系。

优点:管理车位数量较多,管理成本较低

缺点:如果没有地磁配合,主要通过轮巡的方式进行车辆停放计时,可能会产生计时误差,少计时。

上述主要为智能化路内停车管理设备的优缺点,路内停车运营商可以根据自身情况来选择使用哪种智能化设备,从而达到节约运营开支的目的。

java 编程,停车收费简易系统

代码如下,仅实现功能,未考虑安全等情况.

//ParkingTest.java

/**

 * 停车程序入口.本示例为考虑数据安全等.仅作为示例,未经调试.

 * @author menglg

 *

 */

public class ParkingTest {

public static void main(String[] args) {

// 程序入口,可以安排停车出车

for (int i = 0; i  100; i++) {

if (ParkingManage.hasPosition()) {

ParkingManage.enterParking(i + "");

continue;

}

break;

}

for (int i = 0; i  100; i++) {

ParkingManage.outParking(i + "");

}

System.out.println(ParkingManage.totalCost());

}

}

//ParkingManage.java

import java.util.ArrayList;

import java.util.Date;

import java.util.List;

public class ParkingManage {

private static ListParking parkings = new ArrayList();

private static final int maxNumber = 100;

private static int currentNumber;

public static void enterParking(String lpn) {

if (lpn == null || lpn.length() == 0) {

return;

}

Parking p = new Parking(lpn);

p.setEnterDate(new Date());

parkings.add(p);

}

public static void outParking(String lpn) {

if (lpn == null || lpn.length() == 0) {

return;

}

for (Parking p : parkings) {

if (!lpn.equals(p.getLpn()))

continue;

Date now = new Date();

p.setOutDate(now);

parkings.remove(p);

currentNumber += p.getCost();

break;

}

}

public static int totalCost() {

return currentNumber;

}

public static boolean hasPosition() {

return parkings.size()  maxNumber;

}

}

//Parking.java

import java.util.Date;

public class Parking {

private String lpn;

private Date enterDate;

private Date outDate;

private int cost;

public Parking(String lpn) {

this.lpn = lpn;

}

public String getLpn() {

return lpn;

}

public Date getEnterDate() {

return enterDate;

}

public Date getOutDate() {

return outDate;

}

public int getCost() {

if(outDate == null || enterDate == null){

return 0;

}

//停车时间,单位毫秒

long time = outDate.getTime() - enterDate.getTime();

long hour = 60*60*1000;

if(time  hour){

cost = 3;

}else if(time%hour == 0){

cost = (int)(time/hour * 2);

}else{

cost = (int)((time/hour+1) * 2);

}

return cost;

}

public void setLpn(String lpn) {

this.lpn = lpn;

}

public void setEnterDate(Date enterDate) {

this.enterDate = enterDate;

}

public void setOutDate(Date outDate) {

this.outDate = outDate;

}

public void setCost(int cost) {

this.cost = cost;

}

}

车位预约系统java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于停车场预约系统、车位预约系统java的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-23,除非注明,否则均为首码项目网原创文章,转载请注明出处。