manages a airport employees این پروژه با هدف ساخت یک محیط نرم افزاری برای مدیریت اطلاعاتی که در فرودگاه ها رد و بدل می شود است که شامل بخش های مختلف از جمله کارمندان فرودگاه که در آن اطلاعات افرادی که در فرودگاه هستند وجود دارد . بلیط ها که اطلاعات بلیط مسافرین را در خود گنجانده است و دیگر بخش ها که مفصلا در مطالبی که در ادامه آمده است به آنها میپردازیم .
روش کلی ساخت پروژه با شی گرایی پروژه شامل پنج کلاس اصلی به نام های passenger ,manager ,flight , ticket employee است . به طور خلاصه کار کرد هرکلاس به شرح زیر است: • کلاس اصلی ، manager است که توابع در ان قرار دارد و همه از ان ارث می برند. • کلاس passenger ، این کلاس حاوی اطلاعات مسافران است که ادمین میتواند اطلاعات مسافران را ببیند یا مسافری را حذف یا اضافه کند. • کلاس flight ، این کلاس حاوی اطلاعات پرواز است که ادمین میتواند همه اطلاعات روو ببیند یا پروازی اضافه یا پروازی را لغو کند. • کلاس ticket ، این کلاس حاوی اطلاعات بلیط مسافران است که ادمین میتواند این دسته اطلاعات را ببیند یا بلیطی را اضافه و یا لغو کند. • کلاس employee ، این کلاس حاوی اطلاعات کارکنان فرودگاه است که به ادمین اجازه اخراج و استخدام و نمایش همه ی کارمندان را میدهد.
بخش افراد شاغل(Employee) دستورات employee در main :
بخش Employee ، شامل سه دستور : 1.show Employees info 2.Add a new Employee 3.remove an Employee است.
Header
در header این بخش یک تابع سازنده وجود دارد که مقادیری از جنس string که شامل نام و شغل کارمند هست را مقدار دهی میکند.
تابع add_employee که خروجی ان از جنس bool است .
تابع remove_employee ورودی از جنس string و خروجی از جنس bool دارد.
.
بخش مسافران(passenger) دستورات passenger در main :
بخش passenger ، شامل سه دستور : 1.show Passengers info 2.Add a new Passenger 3.remove a Passenger است.
header
در header این بخش یک تابع سازنده وجود دارد که مقادیری از جنس string که شامل نام ، ملیت و جنسیت مسافر هست را مقدار دهی میکند.
تابع add_passenger یک تابع که خروجی bool دارد .
تابع remove_passenger ورودی از جنس string و خروجی از جنس bool دارد.
بخش بلیط دستورات ticket در main :
بخش ticket ، شامل سه دستور : 1.show TICKETS list 2.Add a new TICKET 3.cancel a TICKET است.
Header
تابع get_flight_info شماره پرواز را میگیرد .
تابع get_passenger_info شماره ی مسافر (ID) را میگیرد.
تابع add_ticket با استفاده دو تابع (get_passenger_info و get_flight_info )قبلی بلیط می گیرد.
تابع remove_ticket بلیط رزرو شده را با گرفتن شماره ی مسافر(ID) و شماره پرواز (flight_number)پاک میکند.
تابع available_flights تمام شماره پروازهای موجود را بررسی و به ادمین نشان میدهد.
بخش لیست پرواز(flight) دستورات flight در main :
بخش ticket ، شامل سه دستور : 1.show Flights info 2.Add a new Flight 3.cancel a Flight است.
header
تابع سازنده flight چهار مقدار استرینگ flight_number ,flight_data ,flight_time ,flight_origin , flight_destination را از ورودی میگیرد .
تابع add_flight تابع bool است که پروازی را اضافه میکند.
تابع remove_flight با گرفتن شماره پرواز(flight_number ) پرواز را لغو میکند.
بخش مدیریت(manager) این کلاس اصلی ترین بخش این پروژه است که شامل همه ی توابعی است که بقیه ی کلاس ها از ان ارث می برند . Header
تابع log_in نام ادمبن (string)و رمز عبور ادمین (string) را در main میگیرد و از انجایی که تابع از جنس bool است اگر در دیتابیس وجود داشت مقدارش یک می شود و اجازه ورود به ادمین می دهد.
تابع show_data نام کلاس (tableی که با ان نام ثبت شده) را میگیرد و وبا استفاده از عملگر (sqlite_open) اگر فایلی با ان اسم موجود نباشد یک فایل ایجا میکنددر غیر این صورت ان فایلی را ککه درون دیتابیس برنامه وجود دارد باز میکند وبا استفاده از دستور(sqlite_exec()) اطلاعات را از دیتابیس میگیرد و به cpp میدهد .
تابع is_already نام table و نام ستون را از main میگیرند و با استفاه از دستور (sql_commend) ستون نام table را از باز میکند و با استفاده از دستور (sqlite_exec()) مقادیر درون دیتابیس را در لیست container قرار می دهد و با استفاده از حلقه ی for مقادیر درون لیست که از دیتابیس امده با ورودی چک میکنند اگر برابر باشد مقدار وردی جدید تکراری است که ان را به عنوان مقداری جدید در دیتابیس ثبت نمیکند.
تابع get_id_number نام table و ستون را دریافت می کند و تمام داده ها را در یک لیست قرار می دهد و علاوه بر ان آخرین آیدی را برمیگرداند.