999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于PyQt5+MySQL航班座位自動分配系統設計與實現

2021-10-29 06:26:32劉秋蘭
中文信息 2021年9期
關鍵詞:分配用戶信息

張 靜 劉秋蘭

(山東電子職業技術學院計算機與軟件工程系,山東 濟南 250200)

目前民航旅客在預定航班后,一般都可以提前自助選擇座位。如果不提前選擇座位,旅客到達機場后,在柜臺值機或自助設備上值機時,可以選擇一個座位,或者由后臺系統隨機分配一個座位。如何正確選座,哪個區域最好,相信這是很多想乘坐飛機的人,都曾苦惱過的問題。因為飛機座位沒選好,可能整個出行的計劃就被打亂。然而,乘坐飛機出行前選好座位很多問題就可以避免。

因此,本系統利用Python3.6+Pycharm 2017.3+PyQt5+MySQL5.0平臺,基于大數據平臺,進行個人喜好數據分析,采用自搜索算法、動態求解算法、隨機分配算法,實現了航班自動分配座位的功能。系統實現的主要目標如下所示。

第一,采用自搜索算法及隨機分配算法,實現了對單一座位的自動分配。第二,采用動態求解算法、自搜索算法、隨機分配算法,實現了以“組”為單位的座位以及整機座位自動分配。第三,實現查看座位分配時間與實際分配情況、分配座位的布局、導出分配結果。

一、系統整體概述

1.系統總體設計

結合實際生活場景應用,本系統實現的主要功能可劃分為:選擇航班信息、加載數據文件、開始自動分配座位、查看分配結果、導出報表、查看座位布局。兩種角色:普通用戶、管理員。兩者的不同在于管理員的權限可以對用戶進行有效管理,如添加用戶、刪除用戶、修改用戶等功能。

2.系統代碼架構

系統代碼架構主要分為三層:用戶層、中間層、數據層。用戶層主要提供數據展示和用戶操作界面;中間層用于銜接用戶層與數據層之間的數據傳輸;數據層用于存儲數據,將數據存于數據庫中、Json格式的文件中,具體流程如圖1所示。

圖1 系統代碼架構圖

3.系統性能需求

該系統主要從效率性、安全性、穩定性、兼容性等方面考慮了性能需求[1],具體包括:效率性:單一座位分配的處理時間不超過1秒,整機旅客重新分配座位的處理時間不超過10秒。安全性:該系統有較強的安全性,能對數據和顧客相關信息進行數據加密處理,能對數據進行有效防護,有較強的安全性。

二、系統詳細設計

本系統主要包括系統登錄模塊、座位自動分配模塊、用戶管理模塊。

1.系統登錄模塊

本模塊屬于系統的入口界面,通過輸入用戶名和密碼進入座位自動分配系統。在登錄界面中,可以以普通用戶或管理員用戶兩種方式進行登錄界面。

2.座位自動分配模塊

該模塊主要實現的功能包括:切換航班號功能,查看航班相關信息功能;航班座位自動分配功能;查看分配結果功能;導出報表功能;查看座位布局功能。模塊界面設計如圖2所示。在該界面中,查看座位布局界面設計,如圖3所示。單擊“查看座位布局”按鈕,將會顯示出該航班座位的具體分配情況,藍色表示未分配的座位,帶小鎖的表示已分配的座位,橙色的表示未滿足旅客需求的座位。同時,將鼠標移到某個座位上,將會顯示出該座位的所有屬性。最后,還可以把這個分配結果以Json格式的文件導出,單擊“導出報表”按鈕,選擇文件存儲位置,輸入文件名,單擊保存即可完成。

圖2 座位自動分配界面

圖3 查看座位布局界面

3.用戶管理模塊

對于普通用戶,僅允許該用戶修改自己的密碼;對于管理員用戶,可以實現修改所有用戶的密碼和權限、增加用戶、刪除用戶、清空普通用戶等操作。

三、座位自動分配算法

座位自動分配流程如下:

第一,選擇需要分配的Json格式報表文件,該文件存儲的是旅客歷史購票信息。第二,對報表文件進行預處理,具體方法如下:①將旅客信息按照旅客數量進行分類,將旅客數量大于1的旅客放到一個旅客信息表1中;將其他旅客信息放到另外一個旅客信息表2中;②將旅客信息表1里的旅客信息按照旅客數量從大到小的順序排序;③將旅客信息表2里的旅客信息按照座位屬性值的個數從大到小排序。第三,采用動態優化算法,按照旅客信息表1里提供的座位屬性實現自動分配,同時,將已分配到的座位從座位信息列表里刪除。此時,將旅客相關信息存入旅客座位列表中。對于未滿足需求的旅客信息放到變量旅客信息表2里。第四,采用自搜索算法,根據旅客信息表2里的旅客座位屬性實現自動分配,同時,將已分配到的座位從座位信息列表里刪除。此時,將旅客相關信息存入旅客座位列表中。將未滿足需求的旅客信息放入臨時變量tmp_passenger_info_dict內。第五,采用隨機分配算法分配剩余旅客座位,同時,將已分配到的座位從座位信息列表里刪除。此時,將旅客相關信息存入旅客座位列表。將該變量的信息寫入旅客信息列表,同時更新座位屬性表里的座位預定狀態。第六,給出提示信息,座位自動分配完成。采用兩組數據進行測試,第一組測試數據是單一座位的數據,其中80個靠窗的、80個靠過道的、20個無屬性的、2個VIP的。第二組測試數據是支持以組為單位的座位數據,其中包含40組,30個單一靠窗、30個單一靠過道、10個單一無任何屬性的。

一是單一座位的自動分配:首先單擊“加載數據報表”按鈕,選擇第1組測試數據(這里僅支持加載Json格式的數據文件);然后,單擊“開始分配座位”按鈕,就實現自動分配座位的功能,同時可以查看分配座位所用的時間。單擊“查看分配結果”按鈕,查看本次座位分配的情況,在分配結果表格中,第一列表示用戶ID(此處用的是按照順序排列的),第二列是座位號,第三列是旅客所需座位數(如果座位數等于1,表示單個分配;如果座位數大于1,表示以組的形式進行分配的),最后一列表示是否滿足旅客需求。二是以組為單位的自動分配:首先清空數據庫中的數據,執行database.py。然后單擊“加載數據報表”按鈕,選擇第2組測試數據;再單擊“開始分配座位”按鈕,就實現自動分配座位的功能,同時,可以查看分配座位所用的時間。

結語

本系統體現的創新特色之處,包括:動態處理座位屬性表,提高程序效率;座位屬性值采用一個整型值來存儲,目的是為了減少內存存儲和比較次數;支持加載Json格式的模擬數據報表文件;該系統不僅適用于航班座位自動分配,而且還適用于其他類型的座位自動分配,如火車、電影院等。

猜你喜歡
分配用戶信息
應答器THR和TFFR分配及SIL等級探討
遺產的分配
一種分配十分不均的財富
績效考核分配的實踐與思考
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
主站蜘蛛池模板: 啪啪永久免费av| 日本人真淫视频一区二区三区| 男人天堂亚洲天堂| 久久激情影院| 国产三级国产精品国产普男人| 午夜激情福利视频| 97视频在线观看免费视频| 91精品国产一区| 久久毛片网| 久久视精品| 亚洲精品人成网线在线 | 91精品专区| 日本免费高清一区| 亚洲精品视频免费| 99久久99视频| 亚洲欧美另类久久久精品播放的| 极品私人尤物在线精品首页| 色哟哟国产精品一区二区| 国产男人天堂| 精品一区二区三区波多野结衣 | 国产成人综合亚洲欧美在| 毛片免费观看视频| 久久精品人人做人人爽97| 色偷偷综合网| 精品无码专区亚洲| 一级爱做片免费观看久久| 91精品啪在线观看国产91九色| 久久精品国产精品青草app| 91网在线| 乱系列中文字幕在线视频| 婷婷六月激情综合一区| 波多野结衣中文字幕一区| av无码一区二区三区在线| www.狠狠| 国产中文在线亚洲精品官网| 99久久无色码中文字幕| 亚洲日本中文字幕天堂网| 久久五月视频| 亚洲日韩第九十九页| 亚洲色图狠狠干| 日韩精品亚洲精品第一页| 99热这里只有精品在线观看| 国产香蕉一区二区在线网站| 四虎影视永久在线精品| 秋霞国产在线| 91在线精品免费免费播放| 国内丰满少妇猛烈精品播 | 久久成人免费| 无码AV高清毛片中国一级毛片| 婷五月综合| 国产毛片一区| 国产精鲁鲁网在线视频| 国产在线一区视频| 欧美区一区| 综合网天天| 中国国语毛片免费观看视频| 国产一级毛片yw| 欧美第一页在线| 久久久久久久久亚洲精品| 亚洲首页国产精品丝袜| 69国产精品视频免费| 国产精品白浆无码流出在线看| 亚洲中文字幕久久精品无码一区| 亚洲网综合| 欧美国产精品不卡在线观看 | 自偷自拍三级全三级视频| 97视频在线精品国自产拍| 亚洲黄色激情网站| 婷婷激情亚洲| 毛片基地视频| 亚洲成人一区二区| 激情视频综合网| 亚洲男人的天堂久久香蕉网| 亚洲第一色网站| 欧美特级AAAAAA视频免费观看| 国产精品蜜臀| 国产一在线| 国产亚洲精品91| 丁香综合在线| 2020国产精品视频| 99在线视频免费| 露脸国产精品自产在线播|