1. Trang chủ
  2. » Luận Văn - Báo Cáo

bài tập lớn kết thúc học phần môn lập trình hướng đối tượng đề tài ứng dụng quản lý đặt phòng khách sạn

21 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Với đề tài này, em mong muốn áp dụng các kiến thức đã được học trong trường cùng với việc tìm hiểu nghiên cứu ngôn ngữ và môi trường lập trình để xây dựng một ứng dụng quản lý đặt phòng

Trang 1

BỘ GIÁO DỤC & ĐÀO TẠO

TRƯỜNG ĐẠI HỌC PHENIKAA

KHOA CÔNG NGHỆ THÔNG TIN

Nội, ngày 23 tháng 02 năm 2024

Trang 2

CHƯƠNG II : CÀI ĐẶT VÀ TRIỂN KHAI 5

1 Cài đặt môi trườngpháttriển 5

2 Triển khai ứng dụng: 5

CHƯƠNG III: MÔ TẢ NGHIỆP VỤ 5

1 Yêucầuchungđối với chương trình 5

1.1 Yêu cầu chức năng: 5

1.2 Yêucầuphichức năng: 6

2 Tổngquanchức năng của chương trình 6

2.1 Sơ đồ chức năng của chương trình 6

2.2 Tác nhân adminvới đối với hệ thống: 8

CHƯƠNG IV: GIAO DIỆN HỆ THỐNG 9

1 Giao diện đăng nhập 9

2 Giao diệntrangchủ: 9

CHƯƠNG V: BIỂU ĐỒ HOẠT ĐỘNG 10

1 Biểu đồ đăng nhập 10

2 Biểu đồ hoạt động “Quản lý khách hàng” 10

CHƯƠNG VI XÂY: DỰNG SƠ DỒ LỚP 14

Trang 3

LỜI MỞ ĐẦU

Ngày nay cùng với sự phát triển của khoa học công nghệ, các ứng dụng tin học đang là một phần không thể thiếu trong cuộc sống con người ,nó góp phần đẩy mạnh công nghiệp hóa hiện đại hóa đất nước Máy tính cùng với những phần mềm là công cụ đắc lực giúp ta quản lý, tổ chức, sắp xếp và xử lý công việc một cách nhanh chóng và chính xác

Ở Việt Nam hiện nay, máy tính điện tử đặc biệt là máy vi tính trong nhiều năm qua đã được sử dụng rộng rãi Sự phát triển của công nghệ phần mềm, phần cứng đã đưa chúng ta từng bước tiếp cận với công nghệ thông tin trong mọi lĩnh vực nhằm đáp ứng những nhu cầu của con người Một trong số đó là việc đưa tin học vào ứng dụng để quản lý rất hữu ích vì chúng ta bỏ ra ít thời gian mà lại thu được hiệu quả cao, chính xác và tiện lợi

Quản lý khách sạn là một trong những công việc tương đối phức tạp, tốn nhiều thời gian và công sức Chính vì vậy, tin học hóa trong lĩnh vực quản lí khách sạn là một yêu cầu tất yếu Muốn quản lý tốt cần có được các phần mềm tốt, phần mềm phải đảm bảo được độ bảo mật cao, dễ sử dụng và nhiều tiện ích Đề tài là một yêu cầu thiết thực trong quản lý của hầu hết các khách sạn đang hoạt độnghiện nay

Từ lâu bài toàn về quản lý đã được ứng dụng rộng rãi trong hầu hết các lịch vực Hiểu được tầm quan trọng của môn học cùng với các kiến thức đã tích lũy được

trong suốt học kỳ em xin lựa chọn đề tài “Ứng dụng quản lý đặt phòng khách sạn”

Trang 4

Với đề tài này, em mong muốn áp dụng các kiến thức đã được học trong trường cùng với việc tìm hiểu nghiên cứu ngôn ngữ và môi trường lập trình để xây dựng một ứng dụng quản lý đặt phòng khách sạn được hiệu quả.

NỘI DUNG CHƯƠNG I : GIỚI THIỆU CƠ SỞ LÝ THUYẾT

1 Mục đích:

- Bài tập lớn “Ứng dụng quản lý đặt phòng khách sạn” được thực hiện với mục

đích xây dựng một ứng dụng quản lý đặt phòng khách sạn hiện đại , hiệu quả, dễ sử dụng, tiết kiệm thời gian cho người dùng Đồng thời, bài tập lớn cũng giúp sinh viên nắm chắc kiến thức về lập trình hướng đối tượng và ngôn ngữ Java

2 Phạm vi:

- Phạm vi của bài tập lớn bao gồm việc xây dựng quản lý đặt phòng khách sạn trên nền tảng ngôn ngữ Java, hỗ trợ quản lý thông tin khách hàng, thông tin phòng Ứng dụng này hướng tới đối tượng người dùng là quản trị viên

3 Đối tư ng sử dụng:ợ

- Đối tượng sử dụng chính của quản lý khách sạn là quản trị viên (admin) Quản trị có quyền truy cập vào toàn bộ hệ thống, quản lý thông tin của khách hàng, của phòng thêm, sửa, xóa, đặt phòng, trả phòng

4 Công ngh s dệ ử ụng:

- Apache NetBeans IDE là một môi trường phát triển tích hợp (IDE) mã nguồn mở mạnh mẽ và đa nền tảng, được phát triển bởi cộng đồng Apache NetBeans cung cấp một loạt các công cụ và tính năng để hỗ trợ quá trình phát triển phần mềm, bao gồm biên tập mã, gỡ lỗi, quản lý dự án, kiểm thử và triển khai

Trang 5

- Với giao diện trực quan và dễ sử dụng, NetBeans là sự lựa chọn phổ biến cho các nhà phát triển ứng dụng Java, C/C++, PHP và nhiều ngôn ngữ lập trình khác Nó cung cấp tích hợp với nền tảng Git và hỗ trợ cho việc phát triển ứng dụng đa nền tảng, cho phép bạn xây dựng ứng dụng chạy trên nhiều hệ điều hành và môi trường khác nhau

- NetBeans IDE là một công cụ linh hoạt và mạnh mẽ cho việc phát triển phần mềm, đồng thời được hỗ trợ và duy trì bởi cộng đồng nguồn mở rộng lớn

CHƯƠNG II : CÀI ĐẶT VÀ TRIỂN KHAI

1 Cài t môi đặtrường phát triển:

- Cài đặt Apache Netbeans IDE 20

2 Tri n khai ểứng d ng:ụ

- Tạo cấu trúc thư mục dự án theo cấu trúc gói (package) và lớp (class) đãthiếtkế

- Tạo các lớp (class) viết mã code cho các chức năng

- Triển khai giao diện người dùng cho các chức năng liên quan nội dung đề tài - Thêm các sự kiện, xử lý sự kiện cho các thành phần giao diện

CHƯƠNG III: MÔ TẢ NGHIỆP VỤ

1 Yêu c u chung i v i ầđố ớ chương trình:

Ứng dụng quản lý đặt phòng khách sạn cần cung cấp một giao diện đơn giản trực quan để quản lý thông tin liên quan đến phòng và khách hàng Hệ thống cho phép quản trị viên (admin) thực hiện các công việc sau

Trang 6

- Đăng nhập vào hệ thống để truy cập các chức năng quản lý - Thêm, sửa, xóa thông tin phòng, khách hàng

- Tìm kiếm thông tin khách hàng - Đặt phòng cho khách hàng - Trả phòng cho khách hàng - Thống kê phòng và doanh thu 1.2 Yêu c u phi ầchứ năng: c

- Giao diện thân thiện: Hệ thống phải có giao diện người dùng thân thiện, dễ sử dụng để người dùng có thể sử dụng một cách thuận tiện và nhanh chóng

- Đáp ứng nhu cầu của người sử dụng: Hệ thống cần đáp ứng nhu cầu của người sử dụng bao gồm các chức năng và tính năng cần thiết để quản lý thông tin phòng và khách hàng

- Bảo mật thông tin: Hệ thống cần đảm bảo tính bảo mật thông tin để bảo vệ thông tin khách hàng và tránh những trường hợp mất mát dữ liệu

- Hiệu suất cao: Hệ thống cần có hiệu suất cao để xử lý nhanh các yêu cầu của người dùng đảm bảo tính ổn định

2 Tổng quan chứ năng ủ chươngc c a trình:

2.1 Sơ đồ chứ năng c a c ủ chương trình: Mô tả sơ đồ chức năng:

Trang 7

- Đăng nhập: Người quản trị đăng nhập vào hệ thống bằng tài khoản đăng nhập

- Quản khách hàng: lý

• Thêm thông tin khách hàng • Cập nhật lại thông tin khách hàng • Lưu thông tin khách hàng • Tìm kiếm thông tin khách hàng

• Xóa thông tin khách hàng khỏi danh sách

Trang 8

2.2 Tác nhân admin v i i v i h ớ đố ớ ệ thống:

Trang 9

CHƯƠNG IV: GIAO DIỆN HỆ THỐNG

1 Giao diệ đăng nhập:n

2 Giao diện trang chủ:

Trang 10

CHƯƠNG V: BIỂU ĐỒ HOẠT ĐỘNG

1 Biểu đồ hoạt động “Đăng nhập”

2. Biểu đồ hoạt động “Quản lý khách hàng”

2.1 Biểu dồ hoạt động “Thêm khách hàng”

Trang 11

2.2 Biểu đồ hoạt động “Sửa khách hàng”

Trang 12

2.3 Biểu đồ hoạt động “Xóa khách hàng”

Trang 13

2.4 Biểu đồ hoạt động “Tìm kiếm khách hàng”

Trang 14

CHƯƠNG VI: XÂY DỰNG SƠ ĐỒ LỚP

1 Lớp “Phong”

Phong - tenPhong: String

Trang 15

• Đây là lớp đại diện cho thông tin về một phòng trong khách sạn • Lớp Phong chứa một đối tượng thuộc lớp ThoiGianThuePhong,

điều này cho phép lưu trữ thông tin về thời gian thuê của phòng • Lớp Phong cũng chứa một đối tượng thuộc lớp Nguoi, có nghĩa là

mỗi đối tượng Phong có một đối tượng Nguoi đi kèm để lưu thông tin về người đang thuê phòng đó

2. Lớp “ThoiGianThuePhong”

• Đây là một lớp đại diện cho thông tin về thời gian thuê phòng • Lớp Phong chứa một đối tượng thuộc lớp ThoiGianThuePhong, có

nghĩa là mỗi đối tượng Phong có một đối tượng

ThoiGianThuePhong đi kèm để lưu thông tin về thời gian thuê

3. Lớp “Nguoi”

ThoiGianThuePhong - thoiGianThue: int

+ thoiGianThuePhong(thoiGianThue: int) + getThoiGianThue(): int

+ setThoiGianThue(thoiGianThue: int): void + toString(): String

Nguoi - Ten: String

- soDienThoai: String - soCCCD: String - diaChi: String

Trang 16

• Đây là lớp cơ sở đại diện cho thông tin về một người

• Lớp Nguoi có mối quan hệ kế thừa với lớp Phong, có nghĩa là lớp Nguoi là một lớp con của lớp Phong Điều này cho phép kế thừa các thuộc tính và phương thức từ lớp Phong

• Lớp Nguoi cũng có mối quan hệ kế thừa với lớp KhachHang, có nghĩa là lớp Nguoi là lớp cha của lớp KhachHang Điều này cho phép lớp KhachHang kế thừa các thuộc tính và phương thức từ lớp Nguoi

• Lớp Nguoi cũng có mối quan hệ kế thừa với lớp NhanVien, có nghĩa là lớp Nguoi là lớp cha của lớp NhanVien Điều này cho phép lớp NhanVien kế thừa các thuộc tính và phương thức từ lớp Nguoi

+ Nguoi(Ten: String, soDienThoai: String, soCCCD: String, diaChi: String, tenPhong: String, giaThue: double, thoiGianThuint)

+ getTen(): String + setTen(Ten: String): void + getSoDienThoai(): String

setSoDienThoai(soDienThoai: String): void + + getSoCCCD(): String

+ setSoCCCD(soCCCD: String): void + getDiaChi(): String

+ setDiaChi(diaChi: String): void + getTenPhong(): String

+ setTenPhong(tenPhong: String): void + getGiaThue(): double

+ setGiaThue(giaThue: double): void + getThoiGianThue(): int

+ setThoiGianThue(thoiGianThue: int): void

Trang 17

4. Lớp “KhachHang

• Đây là lớp đại diện cho thông tin về một khách hàng

• Lớp KhachHang có mối quan hệ kế thừa với lớp Nguoi, điều này cho phép kế thừa các thuộc tính và phương thức từ lớp Nguoi • Lớp KhachHang cũng chứa một đối tượng thuộc lớp Phong, có

nghĩa là mỗi đối tượng KhachHang có một đối tượng Phong đi kèm để lưu thông tin về phòng mà khách hàng đang thuê

NhanVien

- chucVu: String

+ NhanVien(Ten : String, soDienThoai : String, soCCCD : StridiaChi : String, tenPhong : String, giaThue : double, thoiGianThint, chucVu : String)

+ getChucVu() : String setChucVu(chucVu : String) +

Trang 18

• Đây là lớp đại diện cho thông tin về một nhân viên

• Lớp NhanVien có mối quan hệ kế thừa với lớp Nguoi, điều này cho phép kế thừa các thuộc tính và phương thức từ lớp Nguoi

- tenKhachSan : String - diaChi : String

- khachHang : KhachHang

+ KhachSan(tenKhachSan : String, diaChi : String, khachHanKhachHang)

+ getTenKhachSan() : String

+ setTenKhachSan(tenKhachSan : String) + getDiaChi() : String

+ setDiaChi(diaChi : String) + getKhachHang() : KhachHang

+ setKhachHang(khachHang : KhachHang)

Trang 19

7. Lớp “ThongKe

• Lớp Thongke là một lớp độc lập trong sơ đồ và chứa các phương thức và thuộc tính liên quan đến việc thống kê dữ liệu trong hệ thống

• Lớp ThongKe đại diện cho các chức năng liên quan đến thống kê và hiển thị kết quả thống kê Nó chứa một phương thức initComponents() để khởi tạo giao diện và một phương thức thayFontChuArea() để thay đổi kích thước chữ trong khu vực hiển thị

8. Một số điểm chú ý

• Lớp Phong chứa một đối tượng thuộc lớp ThoiGianThuePhong để lưu trữ thông tin về thời gian thuê phòng và một đối tượng thuộc lớp Nguoi để lưu trữ thông tin về người đang thuê phòng • Lớp Nguoi là lớp cha của lớp KhachHang và lớp NhanVien, cho

phép kế thừa các thuộc tính và phương thức

• Lớp KhachHang chứa một đối tượng thuộc lớp Phong để lưu trữ thông tin về phòng khách hàng đang thuê

• Lớp NhanVien là một lớp con của lớp Nguoi

• Lớp KhachSan chứa một đối tượng thuộc lớp KhachHang để lưu trữ thông tin về khách hàng đang ở trong khách sạn

ThongKe

+ ThongKe(thongKeResult: String)

+ initComponents(thongKeResult: String): void + thayFontChuArea(size: int): void

Trang 20

CHƯƠNG VII: KẾT QUẢ

- Thiết kế giao diện đơn giản, các chức năng thân thiện và dễ dàng sử dụng - Ứng dụng mới chỉ có những chức năng cơ bản cho quản trị viên: chức năng

thêm, sửa, xóa, tìm kiếm, thống kê và lưu thông tin của khách hàng

- Chương trình hoạt động không xảy ra lỗi, đáp ứng tốt các yêu cầu cơ bản

KẾT LUẬN

Do chưa có nhiều kinh nghiệm nên ứng dụng của em còn có nhiều hạn chế và thiếu sót Tuy nhiên, em dự định phát triển nhiều tính năng mới khác trong tương lai như chức năng: Quản lý phòng, Quản lý Nhân viên, Quản lý dịch vụ, Chức năng thanh toán,

Trang 21

TÀI LIỆU THAM KHẢO

1 https://www.youtube.com/watch?v=xfOp0izFnu0&list=PLyxSzL3F748401hW FgJ8gKMnN6MM8QQ7F

2 https://stackoverflow.com/

3 https://giasutinhoc.vn/lap-trinh/lap-trinh-java-co-ban/doc- -ghi-vafile-trong- java-bai-5-2/

4 https://www.academia.edu/32457137/X%C3%A2y_d%E1%BB%B1ng_ph%E

1%BA%A7n_m%E1%BB%81m_Qu%E1%BA%A3n_l%C3%BD_th%C6%B

0_vi%E1%BB%87n_B%C3%A1o_c%C3%A1o_BTL_PTTK_H%E1%BB%8 7_Th%E1%BB%91ng_Th%C3%B4ng_Tin

5 https://viettuts.vn/java/tinh- -thua-trong-javake6 ChatGpt

Ngày đăng: 24/07/2024, 16:17

w