设计一个飞机票管理系统,该系统尽可能模拟实际应用的票务系统,解决实际需求。至少包括如下功能:
(1)航班基本信息管理包括但不限于以下信息的增填、删除、修改、查找:航班号,航空公司名称,航班起飞、降落、经停地点和时间,航班可售票数等;
(2)航班动态管理:发布航班延误、取消等信息;当航班发生延误和取消等变更时,通知已经购买该航班机票的乘客,并推荐与该航班具有相同起飞降落地点且未延误的最近航班。
(3)票务管理:客户发出购票申请,如有余票则可以直接购票,如果该航班已经无票,提供预约抢票功能:一旦该航班发生退票,自动购买,如有多人预约,按照预约时间顺序按照先到先得原则分配;退票:退已购票。
(4)票务查询:查询某个两个城市间航班情况或某指定航班号的航班情况(如输入航班号,查询起、降时间,起飞、抵达城市,航班票价,所属航空公司,是否有余票等);
(5)查询结果排序:票务查询到多个航班信息时,根据用户的选择,分别根据票价、飞行时间、余票数量等信息对相关航班进行排序;
(6)航班推荐:输入两个城市名称,假设两城市间无直飞航班且存在多个转机航程,自行设计算法,推荐综合考虑如下因素的最优购票方案:价格、用时、余票数量。[测试数据]可以参考实际航空公司信息或者自行编制虚拟数据作为测试数据。要求城市数目不小于20,航线数目不小于300。
(7)每个组员选择功能(1)、(2)、(3)中的一个,独立设计完成,不同组员要求选择不同功能;若2人一组,可选其中一个功能合作完成。
(8)小组合作完成功能(4)、(5)、(6)中的至少1项。
1