Xây dựng hệ thống quản lí bán vé máy bay
Xây dựng hệ thống quản lí bán vé máy bay BÀI TẬP LỚN MÔN CÔNG NGHỆ PHẦN MỀM Đề tài: Xây dựng hệ thống quản lí bán vé máy bay Lớp CNPM1 Nhóm 18 Page Xây dựng hệ thống quản lí bán vé máy bay Đề : Với modul cá nhân : • • • • • • • Vẽ lại sơ đồ UC chi tiết hệ thống modul Vẽ lại sơ đồ lớp sau pha phân tích Định nghĩa thuộc tính kiểu thuộc tính lớp Dùng kĩ thuật thẻ CRC nguyên lí thiết kế phương thức để gán phương thức cho lớp Định nghĩa khuôn mẫu cho phương thức Điền tất vào sơ đồ lớp để thu sơ đồ lớp chi tiết (theo mô hình MVC dùng thực thể thuần) Vẽ lại sơ đồ sau pha thiết kế Sơ đồ UC chi tiết hệ thống modul nhân viên bán hàng quầy (Dirrect Seller) a Sơ đồ UC chi tiết toàn hệ thống Page Xây dựng hệ thống quản lí bán vé máy bay b Sơ đồ UC modul Page Xây dựng hệ thống quản lí bán vé máy bay Mô tả UC : • • • • • • • • • Login : UC cho phép nhân viên(nói chung) đăng nhập theo tài khoản Direct Seller Login : UC cho phép nhân viên bán hàng quầy đăng nhập theo tài khoản Change password : UC cho phép nhân viên thay đổi mật sau đăng nhập vào hệ thống Logout: UC cho phép nhân viên đăng xuất sau đăng nhập vào hệ thống, hoàn thành công việc hết phiên làm việc Booking at the counter : UC cho phép nhân viên bán hàng quầy đặt vé có yêu cầu từ khách hàng đến đặt vé trực tiếp quầy Cancle at the counter : UC cho phép nhân viên bán hàng quầy hủy đặt vé có yêu cầu từ khách hàng đến hủy đặt vé trực tiếp quầy Change at the counter : UC cho phép nhân viên bán hàng quầy đổi vé có yêu cầu từ khách hàng đến đổi vé trực tiếp quầy Search flight : UC cho phép nhân viên bán hàng quầy tìm kiếm thông tin chuyến bay (giá vé, loại vé, ngày bay, hãng máy bay….) có yêu cầu khách hàng Search by name : UC cho phép nhân viên bán hàng quầy tìm kiếm thông tin chuyến bay mà khách hàng muốn hủy vé đổi vé Page Xây dựng hệ thống quản lí bán vé máy bay Sơ đồ lớp sau pha phân tích • Chức đặt vé chỗ (Booking at the counter) Trong : AddBookingFrm : Form đặt vé SearchFreeTicketFrm : Form tìm kiếm vé trống AddClientFrm : Form thêm thông tin khách hàng (với khách hàng mới) Flight : chuyến bay (chứa thông tin chuyến bay mà khách hàng có nhu cầu đặt) Client : Khách hàng Booking : Thông tin đặt vé (bao gồm thông tin khách hàng CouponBook) DirrectSellerCtr : Lớp điều khiển nhân viên bán hàng quầy • Chức hủy đặt vé chỗ (Cancel at the counter) Page Xây dựng hệ thống quản lí bán vé máy bay • Booking : lưu thông tin đặt vé KH (bao gồm thông tin khách hàng tất vé đặt) Chức đổi vé chỗ (Change at the counter) UpdateTicketFrm : Form update thông tin đặt vé (update lại thông tin đặt vé sau đổi) Sơ đồ lớp sau pha phân tích cho toàn modul: Page Xây dựng hệ thống quản lí bán vé máy bay Định nghĩa thuộc tính kiểu thuộc tính cho lớp a Chức Booking at the counter Page Xây dựng hệ thống quản lí bán vé máy bay Lớp Flight (Model) : • ID : • dateLift : • hourLift : • mediateAirport : • Status: Lớp Client (Model) : • ID : • idCardNumber: • fullName: • birthDay: • address : • phoneNumber : Lớp Booking : • ID : • bookingDate : • flight : • client : • pricePerOneTicket : String date time String String _ Mã chuyến bay _ Ngày cất cánh _Giờ cất cánh _Sân bay trung gian _Trạng thái chuyến bay Integer String String date String Integer _Mã khách hàng _ mã thẻ thành viên KH _Họ tên đầy đủ _Ngày sinh nhật _Địa _Số điện thoại String date Flight Client integer _ Mã phiếu _Ngày đặt Page _ giá tiền vé Xây dựng hệ thống quản lí bán vé máy bay tax : integer totalPrice : integer note : String Lớp BookingDAO (controller) : • dbcon : connection • url : String • userName : String • password : String Lớp DirrectSellerFrm (View) : • dsBooking : button đặt vé máy bay • dsCancel : button hủy đặt vé máy bay • dsChange : button đổi vé máy bay Lớp SearchFreeTicketFrm(View) : • txtAirline : textField • txtTicketType : comboBox chiều) • txtTicketClass: comboBox • txtBeginPlace : comboBox • txtEndPlace : comboBox • txtDayFlight : textField • txtNumberAdult : textField • txtNumberChildrent : textField • btnSearhFlight : button • tblTable table • btnReset : button nhập Lớp AddClientFrm (View): • txtNameSearch : textField kiếm • btnSearch : button • tblResult : table • txtID : textField • txtIdCardNumber : textField khách hàng • txtFullName : textField hàng • • • Page _ tiền thuế _ tổng tiền _ ghi _ kết nối với DB _ đường dẫn tới DB _ tài khoản kết nối với DB _Mật userName _ nút chọn để vào chức _ nút chọn để vào chức _ nút chọn để vào chức _ Chứa tên hãng máy bay _ Chứa loại vé (khứ hồi, _Chứa tên hạng vé _ Chứa điểm khởi hành _ Chứa điểm kết thúc _ Chứa ngày _ Chứa số lượng người lớn _ Chứa số lượng trẻ em _ Nút tìm kiếm chuyến bay _Chứa kết tìm kiếm _ Nút reset lại hết thông tin _ Chứa tên khách hàng cần tìm _ Chứa kết tìm kiếm _ Chứa số thẻ thành viên _ Chứa họ tên đầy đủ khách Xây dựng hệ thống quản lí bán vé máy bay txtBirthday : textField hàng • txtNote : textField • btnSubmit : button khách hàng • btnReset : button nhập Lớp BookingTicketFrm : • txtID : textField • btnSearchFreeTicket : button vé trống(tìm kiếm chuyến bay) • btnSearchClient : button thông tin khách hàng • btnSubmit : button booking • btnCancel : button • btnReset : button • booking : Booking • Sơ đồ lớp thu Page 10 _ Chứa ngày sinh khách _ Chứa ghi thêm _ nút đồng ý thêm thông tin _ nút reset lại toàn thông tin _nút chọn chức tìm kiếm _nút chọn chức tìm kiếm _nút xác nhận đồng ý thêm _nút hủy _nút reset thông tin nhập Xây dựng hệ thống quản lí bán vé máy bay • • • • btnUpdateTicket : thông tin đặt vé btnSubmit : btnCancel : booking : button _nút chọn chức update button button Booking _nút xác nhận đồng ý đổi _nút hủy Lớp SearchChangeTicketFrm : • txtIdClient : textField _ô chứa mã khách hàng • txtNameClient : textField _ô chứa tên khách hàng • btnSearch : button _ nút chọn tìm kiếm • tblResult : table _ bảng chứa kết tìm kiếm • btnChoose : button _ nút chọn vé để đổi • btnCancel : button _ nút hủy • btnReset : button _ nút reset thông tin nhập Lớp UpdateTicketFrm(View) : • txtAirline : textField _ Chứa tên hãng máy bay • txtTicketType : comboBox _ Chứa loại vé (khứ hồi, chiều) • txtTicketClass: comboBox _Chứa tên hạng vé • txtBeginPlace : comboBox _ Chứa điểm khởi hành • txtEndPlace : comboBox _ Chứa điểm kết thúc • txtDayFlight : textField _ Chứa ngày • txtNumberAdult : textField _ Chứa số lượng người lớn • txtNumberChildrent : textField _ Chứa số lượng trẻ em • btnSearhFlight : button _ Nút tìm kiếm chuyến bay • tblTable table _Chứa kết tìm kiếm • btnChoose button _nút chọn • btnReset : button _ Nút reset lại hết thông tin nhập Sơ đồ lớp thu được: Page 13 Xây dựng hệ thống quản lí bán vé máy bay Sơ đồ lớp toàn modul : Page 14 Xây dựng hệ thống quản lí bán vé máy bay Dùng kĩ thuật thẻ CRC nguyên lí thiết kế phương thức để gán phương thức cho lớp Thẻ CRC lớp BookingDAO cho chức đặt vé, hủy vé đổi vé Page 15 Xây dựng hệ thống quản lí bán vé máy bay Thẻ CRC lớp DirrectSellerFrm Thẻ CRC lớp BookingTicketFrm Page 16 Xây dựng hệ thống quản lí bán vé máy bay Thẻ CRC lớp CancelTicketFrm Thẻ CRC lớp ChangeTicketFrm Page 17 Xây dựng hệ thống quản lí bán vé máy bay Thẻ CRC lớp SearchFreeTicketFrm Thẻ CRC lớp AddClientFrm Page 18 Xây dựng hệ thống quản lí bán vé máy bay Thẻ CRC lớp SearchDeleteTicketFrm Thẻ CRC lớp UpdateTicketFrm Page 19 Xây dựng hệ thống quản lí bán vé máy bay Thẻ CRC lớp SearchChangeTicketFrm Theo nguyên lý A : để che giấu thông tin thuộc tính cần để private lớp cần có phương thức get/set tương ứng cho thuộc tính cần Áp dụng nguyên lý B,C : • Lớp BookingTicketFrm : Page 20 Xây dựng hệ thống quản lí bán vé máy bay Phải có phương thức bắt kiện nút : SearchFreeTicket, SearchClient, Cancel, Reset, Submit, thông báo thành công Phải có phương thức hiển thị form (Hàm khởi tạo) • Lớp SearchFreeTicketFrm : Phải có phương thức bắt kiện nút : SearchFlight, Reset Phải có phương thức hiển thị form (Hàm khởi tạo) • Lớp AddClientFrm : Phải có phương thức bắt kiện nút : Search, Submit, Reset Phải có phương thức hiển thị form(Hàm khởi tạo) Lớp CancelTicketFrm : Phải có phương thức bắt kiện nút : SearchDeleteTicket, Submit, Cancel Phải có phương thức hiển thị form(Hàm khởi tạo) • • Lớp SearchDeleteTicketFrm : Phải có phương thức bắt kiện nút : Search, Choose, Reset,Cancel Phải có phương thức hiển thị form(Hàm khởi tạo) • Lớp ChangeTicketFrm : Phải có phương thức bắt kiện nút : SearchChangeTicket, Submit, Cancel,UpdateTicket Phải có phương thức hiển thị form(Hàm khởi tạo) • Lớp SearchChangeTicketFrm : Phải có phương thức bắt kiện nút : Search, Choose, Reset,Cancel Phải có phương thức hiển thị form(Hàm khởi tạo) • Lớp UpdateTicketFrm : Phải có phương thức bắt kiện nút : Search, Choose, SearchFlight Phải có phương thức hiển thị form(Hàm khởi tạo) • Lớp BookingDAO : Page 21 Xây dựng hệ thống quản lí bán vé máy bay Có phương thức tạo kết nối với CSDL, phương thức thêm booking vào CSDL, sửa, xóa, tìm kiếm thông tin booking CSDL Lớp Client ,Flight,Booking: Phải có phương thức đóng gói thông tin đối tượng (sử dụng hàm khởi tạo hàm set) • Định nghĩa khuôn mẫu cho phương thức lớp • • Lớp BookingTicketFrm : -Phương thức bắt kiện cho nút : btnSearchFreeTicket_action(), btnSearchClient_action(),btnSubmit_action(),btnCancel_action(), btnReset_action() -Hàm khởi tạo : BookingTicketFrm() Lớp SearchFreeTicketFrm : -Phương thức bắt kiện cho nút : btnSearchFlight_action(), btnReset_action() -Hàm khởi tạo : SearchFreeTicketFrm() • Lớp AddClientFrm : -Phương thức bắt kiện cho nút : btnSearch_action(), btnReset_action(),btnSubmit_action() -Hàm khởi tạo : SearchFreeTicketFrm() • Lớp CancelTicketFrm : -Phương thức bắt kiện cho nút : btnSearchDeleteTicket_action(),btnCancel_action(),btnSubmit_action () -Hàm khởi tạo : CancelTicketFrm() • Lớp SearchDeleteTicketFrm : -Phương thức bắt kiện cho nút : btnSearch_action(), btnReset_action(),btnChoose_action(),btnCancel_action() -Hàm khởi tạo : SearchDeleteTicketFrm() Lớp ChangeTicketFrm : -Phương thức bắt kiện cho nút : btnSearchChangeTicket_action(), btnUpdateTicket_action(),btnSubmit_action(),btnCancel_action() -Hàm khởi tạo : ChangeTicketFrm() • Page 22 Xây dựng hệ thống quản lí bán vé máy bay • Lớp SearchChangeTicketFrm : -Phương thức bắt kiện cho nút : btnSearch_action(), btnReset_action(),btnChoose_action(),btnCancel_action() -Hàm khởi tạo : SearchChangeTicketFrm() • Lớp UpdateTicketFrm : -Phương thức bắt kiện cho nút : btnSearchFlight_action(), btnReset_action(), btnChoose_action() -Hàm khởi tạo : UpdateTicketFrm() • Lớp DirrectSellerFrm : -Phương thức bắt kiện nút : btnDsBooking_action(),btnDsCancel_action(),btnDsChange_action() -Hàm khởi tạo : DirrectSellerFrm() • Lớp BookingDAO : -Phương thức khởi tạo : BookingDAO() -Phương thức xử lý CSDL : searchClient(name : Client[]), searchFlight(Flight), addBooking(Booking),addClient(Client) Lớp Booking : -Phương thức khởi tạo : Booking() -Các phương thức get/set : getID(), setID() Lớp Client : -Phương thức khởi tạo : Client() -Các phương thức get/set : getID(), setID(), getFullName(), setFullName()…Các thuộc tính lại tương tự • • • Lớp Flight : Phương thức khởi tạo : Flight() -Các phương thức get/set : getID(), setID(), getDateLift(), setDateLift()…Các thuộc tính lại tương tự Sơ đồ lớp chi tiết theo mô hình MVC thực thể Page 23 Xây dựng hệ thống quản lí bán vé máy bay Sơ đồ sau pha thiết kế A, Chức Booking at the Counter Page 24 Xây dựng hệ thống quản lí bán vé máy bay Page 25 Xây dựng hệ thống quản lí bán vé máy bay B, Chức Cancel at the Counter C, Chức Change at the Counter Page 26 Xây dựng hệ thống quản lí bán vé máy bay Page 27 [...]... theo mô hình MVC thực thể thuần Page 23 Xây dựng hệ thống quản lí bán vé máy bay 7 Sơ đồ tuần tự sau pha thiết kế A, Chức năng Booking at the Counter Page 24 Xây dựng hệ thống quản lí bán vé máy bay Page 25 Xây dựng hệ thống quản lí bán vé máy bay B, Chức năng Cancel at the Counter C, Chức năng Change at the Counter Page 26 Xây dựng hệ thống quản lí bán vé máy bay Page 27 ... đặt vé, hủy vé và đổi vé Page 15 Xây dựng hệ thống quản lí bán vé máy bay Thẻ CRC của lớp DirrectSellerFrm Thẻ CRC của lớp BookingTicketFrm Page 16 Xây dựng hệ thống quản lí bán vé máy bay Thẻ CRC của lớp CancelTicketFrm Thẻ CRC của lớp ChangeTicketFrm Page 17 Xây dựng hệ thống quản lí bán vé máy bay Thẻ CRC của lớp SearchFreeTicketFrm Thẻ CRC của lớp AddClientFrm Page 18 Xây dựng hệ thống. .. btnSearhFlight : button _ Nút tìm kiếm chuyến bay • tblTable table _Chứa kết quả tìm kiếm • btnChoose button _nút chọn • btnReset : button _ Nút reset lại hết thông tin đã nhập Sơ đồ lớp thu được: Page 13 Xây dựng hệ thống quản lí bán vé máy bay Sơ đồ lớp toàn modul : Page 14 Xây dựng hệ thống quản lí bán vé máy bay 4 Dùng kĩ thuật thẻ CRC và 3 nguyên lí thiết kế phương thức để gán phương thức cho... 11 Xây dựng hệ thống quản lí bán vé máy bay • • • btnChoose : button _ nút chọn vé để hủy btnCancel : button _ nút hủy btnReset : button _ nút reset các thông tin đã nhập Sơ đồ lớp thu được Chức năng Change at the counter Lớp ChangeTicketFrm : • btnSearchChangeTicket : button _nút chọn chức năng tìm kiếm vé mà khách hàng đã đặt theo tên hoặc id để đổi(tìm kiếm chuyến bay) c Page 12 Xây dựng hệ thống. .. dựng hệ thống quản lí bán vé máy bay Thẻ CRC của lớp SearchFreeTicketFrm Thẻ CRC của lớp AddClientFrm Page 18 Xây dựng hệ thống quản lí bán vé máy bay Thẻ CRC của lớp SearchDeleteTicketFrm Thẻ CRC của lớp UpdateTicketFrm Page 19 Xây dựng hệ thống quản lí bán vé máy bay Thẻ CRC của lớp SearchChangeTicketFrm Theo nguyên lý A : để che giấu thông tin các thuộc tính cần để là private do vậy các.. .Xây dựng hệ thống quản lí bán vé máy bay Chức năng Cancle at the counter Lớp CancelTicketFrm : • btnSearchDeleteTicket : button _nút chọn chức năng tìm kiếm vé để xóa(tìm kiếm chuyến bay) • btnSubmit : button _nút xác nhận đồng ý xóa • btnCancel : button _nút hủy • booking : Booking Lớp SearchDeleteTicketFrm... form(Hàm khởi tạo) • Lớp UpdateTicketFrm : Phải có phương thức bắt sự kiện nút : Search, Choose, SearchFlight Phải có phương thức hiển thị form(Hàm khởi tạo) • Lớp BookingDAO : Page 21 Xây dựng hệ thống quản lí bán vé máy bay Có các phương thức tạo kết nối với CSDL, phương thức thêm một booking vào CSDL, sửa, xóa, tìm kiếm thông tin một booking trong CSDL Lớp Client ,Flight,Booking: Phải có phương thức... ChangeTicketFrm : -Phương thức bắt sự kiện cho các nút : btnSearchChangeTicket_action(), btnUpdateTicket_action(),btnSubmit_action(),btnCancel_action() -Hàm khởi tạo : ChangeTicketFrm() • Page 22 Xây dựng hệ thống quản lí bán vé máy bay • Lớp SearchChangeTicketFrm : -Phương thức bắt sự kiện cho các nút : btnSearch_action(), btnReset_action(),btnChoose_action(),btnCancel_action() -Hàm khởi tạo : SearchChangeTicketFrm()... thông tin các thuộc tính cần để là private do vậy các lớp cần có các phương thức get/set tương ứng cho mỗi thuộc tính nếu cần Áp dụng nguyên lý B,C : • Lớp BookingTicketFrm : Page 20 Xây dựng hệ thống quản lí bán vé máy bay Phải có phương thức bắt sự kiện nút : SearchFreeTicket, SearchClient, Cancel, Reset, Submit, thông báo thành công Phải có phương thức hiển thị form (Hàm khởi tạo) • Lớp SearchFreeTicketFrm... ChangeTicketFrm : • btnSearchChangeTicket : button _nút chọn chức năng tìm kiếm vé mà khách hàng đã đặt theo tên hoặc id để đổi(tìm kiếm chuyến bay) c Page 12 Xây dựng hệ thống quản lí bán vé máy bay • • • • btnUpdateTicket : thông tin đặt vé mới btnSubmit : btnCancel : booking : button _nút chọn chức năng update button button Booking _nút xác nhận đồng ý đổi _nút hủy Lớp SearchChangeTicketFrm : • txtIdClient