项目四:飞机票订票管理系统

项目创建了一个飞机订票管理系统,包括用户和管理员两个管理模块。用户可注册、登录、查询航班、订票和找回密码;管理员则能管理飞机、航班和机票信息,支持数据的增删改查。系统使用了多个数据库表来存储个人信息、管理员信息、飞机信息、航班信息和机票信息,并定义了对应的实体类以实现功能操作。
摘要由CSDN通过智能技术生成
  • 项目概述

1.1项目目标和主要内容

进入飞机订票管理系统后,可以选择身份类型,进入相应的用户管理系统,管理员管理系统。用户管理系统可以进行注册,登录,查看航班,订票,找回密码。管理员管理系统可以进行注册,登录,进入三个信息系统,进入飞机信息管理系统,对飞机的信息进行增删改查,航班系统,对航班信息进行增删改查,进入机票系统,对机票系统进行增删改查。

  • 项目设计
  • 创建各数据库类表用来存放个人信息,管理员信息,飞机信息,航班信息和飞机票订票信息
  • CREATE TABLE Users(
    user_id VARCHAR(10) NOT NULL PRIMARY KEY COMMENT '身份证号',
    user_name VARCHAR(10) NOT NULL COMMENT '姓名',
    user_password VARCHAR(10) NOT NULL COMMENT '密码',
    user_sex CHAR(1) NOT NULL COMMENT '性别',
    user_phone VARCHAR(11) COMMENT '电话号码',
    user_health VARCHAR(10) NOT NULL COMMENT '核酸检测'
    )ENGINE = INNODB DEFAULT CHARSET = utf8;
    
    CREATE TABLE Administrator(
    adm_name VARCHAR(10) NOT NULL PRIMARY KEY COMMENT '管理员名',
    adm_password VARCHAR(10) NOT NULL COMMENT '管理员密码'
    )ENGINE = INNODB DEFAULT CHARSET = utf8;
    
    CREATE TABLE Airplane(
    plane_id VARCHAR(10) NOT NULL PRIMARY KEY COMMENT '飞机编号',
    plane_model VARCHAR(10) NOT NULL COMMENT '飞机型号',
    plane_seatNum INT(255) NOT NULL COMMENT '飞机总座位数',
    plane_age INT(100) NOT NULL COMMENT '飞机飞行年份'
    )ENGINE = INNODB DEFAULT CHARSET = utf8;
    
    CREATE TABLE Fight(
    fight_id VARCHAR(10) NOT NULL PRIMARY KEY COMMENT '航班号',
    origin VARCHAR(10) NOT NULL COMMENT '出发地',
    destination VARCHAR(10) NOT NULL COMMENT '目的地',
    go_time VARCHAR(10) NOT NULL COMMENT '出发时间',
    arr_time VARCHAR(10) NOT NULL COMMENT '到达时间',
    fly_time VARCHAR(10) NOT NULL COMMENT '飞行时间',
    planemodel VARCHAR(10) NOT NULL COMMENT '飞机型号'
    )ENGINE = INNODB DEFAULT CHARSET = utf8;
    
    CREATE TABLE Ticket(
    username VARCHAR(10) NOT NULL PRIMARY KEY COMMENT '用户姓名',
    fight_id VARCHAR(10) NOT NULL COMMENT '航班号',
    board_time VARCHAR(10) NOT NULL COMMENT '登机时间',
    board_gate VARCHAR(10) NOT NULL COMMENT '登机口',
    terminal VARCHAR(5) NOT NULL COMMENT '航站楼',
    seat_num INT(255) NOT NULL COMMENT '座位号',
    local_time VARCHAR(10) NOT NULL COMMENT '起飞日期',
    origin VARCHAR(10) NOT NULL COMMENT '出发地',
    ship_gate INT(255) NOT NULL COMMENT '托运口'
    )ENGINE = INNODB DEFAULT CHARSET = utf8;
    
    package bean;
    
    public class Users { //用户实体类
    	private String user_name; //用户名
    	private String user_password; //用户密码
    	private String user_sex;//用户性别
    	private String user_id;//身份证号
    	private String user_phone;//电话号码
    	private String user_health;//核酸检测信息

    创建类用来使得各类人群分别具有查看,修改,更新,订票等功能例如

  • public class Users { //用户实体类
    	private String user_name; //用户名
    	private String user_password; //用户密码
    	private String user_sex;//用户性别
    	private String user_id;//身份证号
    	private String user_phone;//电话号码
    	private String user_health;//核酸检测信息
    	
    	public Users() {
    		// TODO Auto-generated constructor stub
    	}
    	
    	public Users(String name,String password,String sex,String id,String phone,String health) {
    		this.user_name = name;
    		this.user_password = password;
    		this.user_sex = sex;
    		this.user_id = id;
    		this.user_phone = phone;
    		this.user_health = health;
    	}
    
    	public String getUser_name() {
    		return user_name;
    	}
    
    	public void setUser_name(String user_name) {
    		this.user_name = user_name;
    	}
    
    	public String getUser_password() {
    		return user_password;
    	}
    
    	public void setUser_password(String user_password) {
    		this.user_password = user_password;
    	}
    
    	public String getUser_sex() {
    		return user_sex;
    	}
    
    	public void setUser_sex(String user_sex) {
    		this.user_sex = user_sex;
    	}
    
    	public String getUser_id() {
    		return user_id;
    	}
    
    	public void setUser_id(String user_id) {
    		this.user_id = user_id;
    	}
    
    	public String getUser_phone() {
    		return user_phone;
    	}
    
    	public void setUser_phone(String user_phone) {
    		this.user_phone = user_phone;
    	}
    
    	public String getUser_health() {
    		return user_health;
    	}
    
    	public void setUser_health(String user_health) {
    		this.user_health = user_health;
    	}
    
    	@Override
    	public String toString() {
    		return "Users [user_name=" + user_name + ", user_password=" + user_password + ", user_sex=" + user_sex
    				+ ", user_id=" + user_id + ", user_phone=" + user_phone + ", user_health=" + user_health + "]";
    	}
    }

    创建一个类用来实现具体操作客户的订票和查看,管理员增删改查等功能

1、问题描述: 航空客运订票的业务包括查询航班、客票预订和办理退票等。试设计一个航空客运订票系统,已使上述业务可以借助计算机完成。 2、功能要求: (1)每条航线所涉及的信息有终点站名、航班号、飞机号、星期几飞行、飞行周日(星期几)、乘员定额、余票量、已订票的客户名单(包括姓名、订票量、舱位等级),以及等候补替补的客户名单(包括姓名、所需票量)。 (2)作为示意系统:全部数据可以只放在内存中。 (3)系统能实现的操作和功能如下: 录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)。 查询航线:根据旅客提出的终点站名输入下列信息:航班号、飞机号、星期几起飞、最近航班的日期和余票量。 承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号。若已满员或者余票数少于订票额,则需重新寻味客户要求,若需要,可登记排队候补。 承办退票业务:根据客户提供的情况(日期、航班)为客户办理退票手续,然后查询该航班是否有人排队等候补。首先询问排在第一的客户,若所有退票额能满足他的要求,则为他办理订票手续否则依次询问其他排队候补的客户。 修改航班信息:当航班信息改变可以修改航班数据文件。
设计一个飞机票管理系统,该系统尽可能模拟实际应用的票务系统,解决实际需求。至少包括如下功能: (1)航班基本信息管理包括但不限于以下信息的增填、删除、修改、查找:航班号,航空公司名称,航班起飞、降落、经停地点和时间,航班可售票数等; (2)航班动态管理:发布航班延误、取消等信息;当航班发生延误和取消等变更时,通知已经购买该航班机票的乘客,并推荐与该航班具有相同起飞降落地点且未延误的最近航班。 (3)票务管理:客户发出购票申请,如有余票则可以直接购票,如果该航班已经无票,提供预约抢票功能:一旦该航班发生退票,自动购买,如有多人预约,按照预约时间顺序按照先到先得原则分配;退票:退已购票。 (4)票务查询:查询某个两个城市间航班情况或某指定航班号的航班情况(如输入航班号,查询起、降时间,起飞、抵达城市,航班票价,所属航空公司,是否有余票等); (5)查询结果排序:票务查询到多个航班信息时,根据用户的选择,分别根据票价、飞行时间、余票数量等信息对相关航班进行排序; (6)航班推荐:输入两个城市名称,假设两城市间无直飞航班且存在多个转机航程,自行设计算法,推荐综合考虑如下因素的最优购票方案:价格、用时、余票数量。[测试数据]可以参考实际航空公司信息或者自行编制虚拟数据作为测试数据。要求城市数目不小于20,航线数目不小于300。 (7)每个组员选择功能(1)、(2)、(3)中的一个,独立设计完成,不同组员要求选择不同功能;若2人一组,可选其中一个功能合作完成。 (8)小组合作完成功能(4)、(5)、(6)中的至少1项。
航空客运订票的业务包括:查询航班、客票预订和办理退票等。试设计一个航空客运订 票系统,已使上述业务可以借助计算机完成。 2.功能要求: (1)每条航线所涉及的信息有:终点站名、航班号、飞机号、星期几飞行飞行周日(星 期几)、乘员定额、余票量、已订票的客户名单(包括姓名、订票量、舱位等级)以及等候 补替补的客户名单(包括姓名、所需票量); (2)作为示意系统,全部数据可以只放在内存中; (3)系统能实现的操作和功能如下: 录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定); 查询航线:根据旅客提出的终点站名输入下列信息:航班号、飞机号、星期几起飞,最 近航班的日期和余票量。 承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚 有余票,则为客户办理订票手续,输出座位号;若已满员或者余票数少于订票额,则需重新 寻味客户要求,若需要,可登记排队候补; 承办退票业务:根据客户提供的情况(日期、航班),为客户办理退票手续,然后查询 该航班是否有人排队等候补,首先询问排在第一的客户,若所有退票额能满足他的要求,则 为他办理订票手续否则依次询问其他排队候补的客户。 修改航班信息:当航班信息改变可以修改航班数据文件。 (选作)为客户订票要求不能满足时,系统可向客户提供到达同一目的地的其他航线情况。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

落不心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值