1. Trang chủ
  2. » Công Nghệ Thông Tin

Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn

81 8 0

Đ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

Thông tin cơ bản

Tiêu đề Phân Tích Thiết Kế Và Xây Dựng Phần Mềm Quản Lý Thuê Phòng Khách Sạn
Tác giả Vũ Thị Thanh
Trường học Đại Học Công Nghệ Giao Thông Vận Tải
Chuyên ngành Hệ thống thông tin
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 81
Dung lượng 4,43 MB

Cấu trúc

  • 1.1 ĐẶT VẤN ĐỀ (12)
  • 1.2 MỤC TIÊU CỦA ĐỀ TÀI (12)
  • 1.3 GIỚI HẠN PHẠM VI CỦA ĐỀ TÀI (13)
  • 1.4 KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC (13)
  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT VÀ CÔNG CỤ SỬ DỤNG14 (14)
    • 2.1 CƠ SỞ LÝ THUYẾT (14)
      • 2.2.1 Hệ quản trị cơ sở dữ liệu Microsoft SQL Server 202.2.2 Visual Studio (20)
    • 3.1 NÊU BÀI TOÁN VÀ PHẠM VI GIẢI QUYẾT (0)
      • 3.1.1 Bài toán..................................................................253.1.2 Phạm vi giải quyết ...........................................................253.2 GIỚI THIỆU SƠ BỘ VỀ HỆ THỐNG (25)
      • 3.2.1 Khách sạn Ruby.......................263.2.2 Hệ thống quản lý phòng tại khách sạn .................................................283.3 ĐÁNH GIÁ HIỆN TRẠNG VỀ HỆ THỐNG (26)
  • CHƯƠNG 4: PHÂN TÍCH HỆ THỐNG QUẢN LÝ PHÒNG TẠI KHÁCH SẠN 34 (34)
    • 4.1 SƠ ĐỒ PHÂN CẤP CHỨC NĂNG HỆ THỐNG (34)
    • 4.2 BIỂU ĐỒ USE CASE (34)
      • 4.2.1 Các tác nhân và ca sử dụng của hệ thống 344.2.2 Biểu đồ Use Case tổng quát .............................................................................364.2.3 Biểu đồ Use Case chi tiết .....................................................................................364.3 BIỂU ĐỒ TRÌNH TỰ (34)
      • 4.3.1 Biểu đồ trình tự đăng nhập....434.3.2 Biểu đồ trình tự nhập thông tin dịch vụ, vật tư, phòng thuê của khách sạn.......444.3.3 Biểu đồ trình tự xem thông tin khách hàng, nhân viên..................................454.3.4 Biểu đồ trình tự đặt phòng khách sạn ..........................................464.3.5 Biểu đồ trình tự tìm kiếm thông tin khách hàng. ................................................................................474.4 BIỂU ĐỒ HOẠT ĐỘNG ..............................................................................................................................49 4.4.1 Biểu đồ hoạt động đăng nhập. .494.4.2 Biểu đồ hoạt động chỉnh sửa thông tin ..........................................................504.4.3 Biểu đồ hoạt động tìm kiếm thông tin (43)
      • 4.5.1 Biểu đồ trạng thái phòng cho thuê khách sạn 524.5.2 Biểu đồ trạng thái thanh toán.........................................................................................524.6 BIỂU ĐỒ LỚP (52)
    • 4.6 THIẾT KẾ CƠ SỞ DỮ LIỆU (54)
      • 4.6.1 Bảng Login 544.6.2 Bảng vật tư 544.6.3 Bảng dịch vụ 544.6.4 Bảng phòng 544.6.5 Bảng nhân viên 554.6.6 Bảng khách hàng 554.6.7 Bảng phòng thuê 554.6.8 Bảng phiếu dịch vụ564.6.9 Bảng hóa đơn 560 Bảng quản lý hóa đơn 56 CHƯƠNG 5: THIẾT KẾ HỆ THỐNG QUẢN LÝ PHÒNG KHÁCH SẠN 57 (54)
    • 5.1 THIẾT KẾ TỔNG THỂ (56)
    • 5.2 THIẾT KẾ CHI TIẾT (58)
      • 5.2.1 Thiết kế cơ sở dữ liệu vật lý...................................595.2.2 Thiết kế kiểm soát .........................................................................................595.2.3 Thiết kế giao diện ...................................................................................605.2.4 Thiết kế chương trình ..............................................................................665.3 KIỂM THỬ VÀ BẢO TRÌ (59)

Nội dung

Trong thời đại ngày nay, cuộc sống của con người ngày càng được nâng cao và phát triển, kéo theo đó là sự phát triển hệ thống các dịch vụ cho đời sống của con người. Không chỉ nằm ngoài quy luật đó hệ thống dịch vụ khách sạn, nhà nghỉ cũng ngày càng phát triểnTại Việt Nam, Nhà nước đang đi vào phát triển dịch vụ, và đầu tư vào du lịch. Vì thế, ngành kinh doanh khách sạn cũng đang được chú trọng để thu hút khách trong và ngoài nước tới thăm quan..Chính vì vậy mà việc xây dựng một phần mêm quản lý khách sạn, để nâng cao trình độ quản lý hiện tại trong các của hàng, giúp cho việc quản lý trở nên đơn giản và đạt hiệu quả cao nhất và giảm bớt chi phí khi quản lý. Giúp đơn giản hóa và thực hiện quản lý một cách tốt nhất. Vì thế nên em đã quyết định lựa chọn đề tài “Xây dựng hệ thống quản lý phòng khách sạn” để làm đồ án tốt nghiệp.

MỤC TIÊU CỦA ĐỀ TÀI

Xây dựng phần mềm quản lý công việc cho khách sạn giúp người quản lý tối ưu hóa quy trình làm việc và nâng cao hiệu quả quản lý Phần mềm này cung cấp các công cụ hỗ trợ cần thiết, từ việc theo dõi công việc hàng ngày đến quản lý nhân sự, nhằm đảm bảo hoạt động của khách sạn diễn ra suôn sẻ và hiệu quả.

 Quản lý được danh sách các phòng khi khách đã đặt thuận tiện cho việc quản lý.

 Kiểm tra cơ sở vật chất để dễ dàng sửa chữa khi phòng gặp chục trặc.

 Thuận tiện cho việc đặt phòng của khách hàng khi mà khách hàng tới nơi.

Chúng tôi chuyên giải quyết và hỗ trợ các công việc liên quan đến hoạt động hàng ngày của khách hàng, đồng thời tiếp nhận và xử lý mọi yêu cầu đặt phòng từ phía khách hàng một cách nhanh chóng và hiệu quả.

 Ứng dụng Công nghệ Thông tin vào việc giảm thiểu công sức, tiết kiệm thời gian cho các yêu cầu nghiệp vụ tại các khách sạn.

Phần mềm cần phải thực hiện các tác vụ cơ bản một cách hiệu quả, đồng thời đảm bảo hoạt động ổn định và có hiệu suất cao, đặc biệt là khi xử lý lượng dữ liệu lớn.

Phần mềm khách sạn cần được thiết kế phù hợp với nghiệp vụ của nhân viên ở các bộ phận khác nhau, giúp tiết kiệm thời gian và công sức so với việc ghi chép bằng sổ sách truyền thống Ngoài ra, phần mềm cũng phải có khả năng mở rộng và nâng cấp khi cần thiết để đáp ứng nhu cầu phát triển của khách sạn.

GIỚI HẠN PHẠM VI CỦA ĐỀ TÀI

Hệ thống quản lý phòng khách sạn là một giải pháp thiết thực và hiệu quả, giúp các khách sạn xử lý và quản lý thông tin nhân viên, khách hàng và đăng ký thuê phòng một cách dễ dàng và tiết kiệm thời gian, sức lực và chi phí Với tầm quan trọng đó, hệ thống quản lý phòng khách sạn Ruby sẽ là một ví dụ cụ thể để phân tích và thiết kế, nhằm tối ưu hóa quy trình quản lý và mang lại lợi ích cho khách sạn.

KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC

 Xây dựng được chương trình bằng winform trên nền tảng Visual Studio 2019.

 Hiểu rõ được quy trình nghiệp vụ của quá trình quản lý phòng tại khách sạn

 Chương trình đơn giản, thân thiện, dễ sử dụng.

CƠ SỞ LÝ THUYẾT VÀ CÔNG CỤ SỬ DỤNG14

CƠ SỞ LÝ THUYẾT

2.1.1 Tổng quan về phân tích thiết kế hệ thống thông tin a, Quy trình phát triển hệ thống thông tin

Vòng đời hệ thống là chu trình bao gồm các giai đoạn từ khởi đầu, xây dựng, khai thác, bảo trì cho đến khi hệ thống không còn hoạt động nữa.

The Software Development/Engineering Process (SEP) is a crucial methodology for creating software that ensures high-quality products are developed efficiently and cost-effectively.

Các mô hình phổ biến hiện nay: Mô hình thác nước, mô hình chữ V, mô hình Agile – scrum

Hình 2 1 Chu trình thác nước

Phân tích hệ thống là quá trình thu thập và phân tích các yêu cầu, bao gồm yêu cầu nghiệp vụ (chức năng) và yêu cầu phi chức năng như bảo mật, ổn định và hiệu năng Kết quả cuối cùng của quá trình này là bản đặc tả yêu cầu hệ thống.

Thiết kế hệ thống là quá trình quan trọng nhằm xây dựng và triển khai các hệ thống thông qua lập trình và cài đặt Kết quả cuối cùng của hoạt động này là một bản thiết kế chi tiết, đảm bảo hệ thống hoạt động hiệu quả và đáp ứng nhu cầu sử dụng.

 Lập trình (Mã hóa): Là hoạt động lập trình, cài đặt hệ thống

 Kiểm thử: Là hoạt động kiểm tra, chỉnh sửa lỗi

 Triển khai: Đưa hệ thống vào hoạt động

 Khai thác và bảo trì hệ thống b, Cách tiếp cận phân tích và thiết kế hệ thống

Phân tích thiết kế hướng cấu trúc là phương pháp chia nhỏ chương trình (phần mềm) thành các chương trình con, mỗi chương trình con đảm nhiệm một nhiệm vụ cụ thể Phương pháp này giúp tăng cường khả năng quản lý và bảo trì phần mềm, đồng thời nâng cao tính hiệu quả trong quá trình phát triển.

Với phương pháp hướng cấu trúc, phần mềm được thiết kế thiết dựa trên một trong 2 hướng:

 Tiếp cận hướng chức năng tập trung phân tích các chức năng của phần mềm

Tiếp cận hướng dữ liệu trong xây dựng phần mềm tập trung vào việc phân rã phần mềm theo các chức năng cần thiết và dữ liệu tương ứng cho từng chức năng.

Cách thực hiện hướng cấu trúc là phân tích từ trên xuống (top-down), tức là phân rã bài toán thành các vấn đề nhỏ hơn cho đến khi đạt được bài toán đơn giản nhất Phương pháp này giúp dễ dàng quản lý và giải quyết các vấn đề phức tạp.

 Tư duy phân tích rõ ràng

 Bản phân tích sáng sủa, dễ hiêu

 Không hỗ trợ sử dụng lại

 Chỉ quan tâm đến việc quản lý dữ liệu mà hệ thống cần lưu trữ

 Gặp khó khăn khi hệ thống thường xuyên thay đổi về nghiệp vụ

 Phân tích thiết kế hướng đối tượng:

Hệ thống tập trung vào hai khía cạnh quan trọng: dữ liệu và hành động Tư duy được chia thành các đối tượng nhỏ, mỗi đối tượng chứa đầy đủ dữ liệu và hành động liên quan Phần mềm được phát triển bằng cách kết hợp các đối tượng thông qua mối quan hệ và tương tác giữa chúng, mang lại nhiều ưu điểm cho quá trình phát triển.

 Hỗ trợ sử dụng lại mã nguồn trong các hệ thống tương tự

 Phù hợp với hệ thống lớn khi các đối tượng chỉ hoạt động độc lập và chỉ thực hiện hành động khi có yêu cầu từ đối tượng khác

 Giảm lỗi, tăng tốc độ thiết kế và phát triển phần mềm

2.1.2 Giới thiệu về ngôn ngữ mô hình hóa UML a, Khái niệm

UML (Ngôn ngữ Mô hình Hợp nhất) là ngôn ngữ chuẩn dùng để lập kế hoạch chi tiết cho phần mềm, với các ký hiệu đồ họa hỗ trợ thiết kế hệ thống thông tin theo phương pháp hướng đối tượng UML đóng vai trò là công cụ giao tiếp hiệu quả giữa người dùng, nhà phân tích, nhà thiết kế và lập trình viên, giúp biểu diễn, hiển thị và tài liệu hóa các mô hình một cách nhanh chóng và rõ ràng.

UML kết hợp các điểm mạnh của các mô hình:

 Mô hình dữ liệu (ERD)

 Mô hình dòng dữ liệu (DFD)

 Mô hình đối tượng & Mô hình thành phần b, Các loại biểu đồ UML trong các giai đoạn phát triển hệ thống

 Xây dựng biểu đồ UseCase

 Xác định các tác nhân, use case và các quan hệ giữa các use case để mô tả lại các chức năng của hệ thống

 Xây dựng các kịch bản mô tả hoạt động của hệ thống trong mỗi use case cụ thể

 Xây dựng biểu đồ lớp: xác định tên các lớp, các thuộc tính của lớp, một số phương thức và mối quan hệ cơ bản trong sơ đồ lớp

 Xây dựng biểu đô trạng thái: Mô tả các trạng thái và chuyển tiếp trạng thái trong hoạt động của một đối tượng thuộc một lớp nào đó

Xây dựng biểu đồ tương tác, bao gồm biểu đồ cộng tác và biểu đồ tuần tự, là bước quan trọng trong việc mô tả chi tiết hoạt động của các use case Các biểu đồ này dựa trên những kịch bản đã được xác định trong giai đoạn phân tích, giúp làm rõ các lớp và tương tác giữa các thành phần trong hệ thống.

Để xây dựng một biểu đồ lớp chi tiết, cần hoàn thiện biểu đồ lớp bằng cách bổ sung các lớp còn thiếu Việc này dựa trên biểu đồ trạng thái để thêm các thuộc tính cần thiết, đồng thời sử dụng biểu đồ tương tác để xác định các phương thức và mối quan hệ giữa các lớp.

 Xây dựng biểu đồ hoạt động

 Mô tả hoạt động của các phương thức phức tạp trong mỗi lớp hoặc các hoạt động hệ thống có sự liên quan của nhiều lớp

 Biểu đồ hoạt động là cơ sở để cài đặt các phương thức trong các lớp

Giai đoạn lập trình chuyển đổi các lớp thiết kế thành mã code cụ thể trong ngôn ngữ lập trình hướng đối tượng.

Một hệ thống phần mềm thường được thử nghiệm qua nhiều giai đoạn và với nhiều nhóm thử nghiệm khác nhau

Nhiều loại biểu đồ UML được sử dụng để làm công việc thử nghiệm:

 Thử nghiệm đơn vị sử dụng biểu đồ lớp

 Thử nghiệm tích hợp sử dụng biểu đồ thành phần (component diagram) và biểu đồ cộng tác (collaboration diagram)

 Thử nghiệm hệ thống sử dụng biểu đồ use case (use case diagram).

2.1.3 Cơ sở lý thuyết về cơ sở dữ liệu

Cơ sở dữ liệu (Database) là một tập hợp có cấu trúc các dữ liệu liên quan, chẳng hạn như danh sách khách hàng và danh sách sản phẩm.

Cơ sở dữ liệu được thiết kế, xây dựng, và lưu trữ với một mục đích xác định, phục vụ cho một số ứng dụng và người dùng

Tập ngẫu nhiên của các dữ liệu không thể xem là một cơ sở dữ liệu

Hệ quản trị cơ sở dữ liệu (DBMS) là một tập hợp các chương trình được thiết kế để tạo ra và duy trì cơ sở dữ liệu Phần mềm này cho phép người dùng định nghĩa, xây dựng và xử lý dữ liệu một cách hiệu quả.

 Định nghĩa – khai báo bộ khung dữ liệu cùng với các mô tả chi tiết về dữ liệu - Xây dựng – lưu trữ dữ liệu lên bộ nhớ phụ

 Xử lý – truy vấn, cập nhật và phát sinh báo cáo

Một số hệ quản trị cơ sở dữ liệu phổ biến: MySQL, Oracle, SQL Server, …

 Người sử dụng cơ sở dữ liệu:

 Quản trị viên (Database Administrator - DBA): Có trách nhiệm quản lý hệ cơ sở dữ liệu

 Cấp quyền truy cập cơ sở dữ liệu

 Điều phối và giám sát việc sử dụng cơ sở dữ liệu

 Thiết kế viên (Database Designer): là những người chịu trách nhiệm về

 Lựa chọn cấu trúc phù hợp để lưu trữ dữ liệu

 Quyết định những dữ liệu nào cần được lưu trữ

Liên hệ với người dùng để hiểu rõ yêu cầu và thiết kế một cơ sở dữ liệu phù hợp Sau khi hoàn tất thiết kế, một nhóm các DBA sẽ quản lý và duy trì các cơ sở dữ liệu này.

 Người dùng cuối (End User):

 Ít khi truy cập cơ sở dữ liệu, nhưng cần những thông tin khác nhau trong mỗi lần truy cập và dùng những câu truy vấn phức tạp

 Người sử dụng thường xuyên:

 Thường xuyên truy vấn và cập nhật cơ sở dữ liệu nhờ vào một số các chức năng đã được xây dựng sẳn

 Người sử dụng đặc biệt:

 Thông thạo về hệ quản trị cơ sở dữ liệu, tự xây dựng những truy vấn phức tạp cho công việc

 Kỹ sư, nhà khoa học, người phân tích,…

 Các tính năng của hệ quản trị cơ sở dữ liệu

Cho phép hạn chế sự trùng lắp dữ liệu: Tích hợp các nhu cầu dữ liệu của người dùng để xây dựng một cơ sở dữ liệu thống nhất

Chia sẻ dữ liệu: Trong môi trường nhiều người dùng, các hệ quản trị phải cho phép truy xuất dữ liệu đồng thời

Hạn chế những truy cập không được phép: Từng người dùng và nhóm người dùng có một tài khoản và mật mã để truy xuất dữ liệu

Cung cấp nhiều giao diện: hệ quản trị cung cấp ngôn ngữ giữa cơ sở dữ liệu và người dùng Đảm bảo các ràng buộc toàn vẹn:

 RBTV (Integrity Constraints) là những qui định cần được thỏa mãn để đảm bảo dữ liệu luôn phản ánh đúng ngữ nghĩa của thế giới thực

NÊU BÀI TOÁN VÀ PHẠM VI GIẢI QUYẾT

Ngành dịch vụ, đặc biệt là kinh doanh khách sạn và nhà hàng, đang phát triển mạnh mẽ và mang lại lợi nhuận cao tại các nước phát triển nhờ vào sự hỗ trợ của công nghệ thông tin Trong những năm gần đây, ngành du lịch ở Việt Nam đã có sự phát triển đáng kể về quy mô và ảnh hưởng đến các lĩnh vực kinh tế - xã hội Tuy nhiên, việc áp dụng công nghệ thông tin trong ngành du lịch vẫn còn hạn chế Do đó, việc tích cực sử dụng công nghệ trong ngành du lịch và dịch vụ là rất cần thiết để nâng cao hiệu quả và chất lượng trong hoạt động kinh doanh cũng như quản lý.

Quản lý trong ngành khách sạn là một thách thức phức tạp, đòi hỏi xử lý nhiều yếu tố như thông tin khách hàng, tình trạng phòng và dữ liệu nhân viên Để đảm bảo hoạt động quản lý diễn ra hiệu quả, cần có một hệ thống chuyên nghiệp giúp xử lý thông tin và đưa ra quyết định kịp thời Hệ thống quản lý thủ công không thể đáp ứng được tất cả yêu cầu, vì vậy việc áp dụng công nghệ thông tin và máy tính trong quản lý cho thuê phòng khách sạn là cần thiết để nâng cao hiệu quả và sự thuận tiện cho người quản lý.

Hệ thống quản lý phòng khách sạn là một giải pháp thiết thực và hiệu quả, giúp công việc quản lý thông tin nhân viên, khách hàng và đăng ký thuê phòng trở nên dễ dàng và tiết kiệm thời gian, sức lực, tiền bạc Với mục tiêu nâng cao hiệu quả quản lý, hệ thống này sẽ được thiết kế và áp dụng cho khách sạn Ruby, mang lại lợi ích thực tế cho quá trình vận hành khách sạn.

3.2 GIỚI THIỆU SƠ BỘ VỀ HỆ THỐNG

Ruby Hotel là một khách sạn 3 sao đẹp tọa lạc tại 150 Lam Sơn, Tích Sơn, Vĩnh Yên, Vĩnh Phúc, Việt Nam Với vị trí thuận lợi, khách sạn dễ dàng tìm thấy và di chuyển đến.

Ruby Hotel tự hào có đội ngũ nhân viên chuyên nghiệp, tận tâm phục vụ mọi nhu cầu của khách hàng, đảm bảo sự hài lòng từ lúc đến cho đến khi rời khỏi Các phòng nghỉ tại Ruby Hotel được thiết kế sạch sẽ, tiện nghi đầy đủ với hệ thống nước nóng lạnh và internet miễn phí.

Ruby Hotel là khách sạn 3 sao không khói thuốc, cung cấp quầy bar/khu lounge và quầy tiếp tân phục vụ 24 giờ Khách sạn nổi bật với các tiện nghi như dịch vụ giặt khô, trang thiết bị giặt ủi và Wifi miễn phí tại khu vực chung Ngoài ra, khách có thể sử dụng bãi đậu xe tự phục vụ miễn phí và tận hưởng không gian xanh với vườn trong khuôn viên Tất cả 13 phòng nghỉ đều được cách âm, trang bị Wifi miễn phí, minibar và TV màn hình phẳng với các kênh truyền hình cáp, cùng nhiều dịch vụ tiện ích như dịch vụ phòng và ấm điện.

Hình 3.2: Quầy lễ tân của khách sạn

Ruby Hotel có 4 loại phòng:

 Phòng đôi tiêu chuẩn Double:

 Dành cho 2 người lớn (gồm tối đa 1 trẻ em)

 Phòng đơn tiêu chuẩn Twin:

 Dành cho 4 người lớn (gồm tối đa 3 trẻ em)

 Dành cho 6 người lớn (gồm tối đa 5 trẻ em)

 Phòng dành cho gia đình:

3.2.2 Hệ thống quản lý phòng tại khách sạn

 Kế hoạch thực hiện phỏng vấn:

 Địa điểm: Quầy lễ tân của khách sạn

 Người phòng vấn: Vũ Thị Thanh – Nhân viên công ty A

 Người được phỏng vấn: Nguyễn Thu Quỳnh – Quản lý khách sạn

STT CÂU HỎI TRẢ LỜI

Chị có thể cho biết khách sạn bên mình có những loại phòng nào và giá thuê những loại phòng đó là bao nhiêu?

Khách sạn bên mình gồm có 4 loại phòng:

Phòng Double (Phòng 1 giường đôi): Phòng có diện tích 32 - 33m2, được bố trí

01 giường đôi 1,6m x 2m Phòng dành cho 02 khách, có thể kê thêm tối đa 01 giường phụ (có tính phí) Giá phòng: 476.000 VNĐ/đêm

Phòng Twin (Phòng 2 giường đơn): Phòng có diện tích 32 - 33m2, được bố trí

02 giường đơn 1,6m x 2m Phòng dành cho 04 khách, có thể kê thêm tối đa 01 giường phụ (có tính phí) Giá phòng: 562.000 VNĐ/đêm

Phòng Premier: Phòng có diện tích 35m2, được bố trí 03 giường đơn 1,2m x 2m.

Phòng dành cho 06 khách, không thể kê thêm giường phụ Giá phòng: 650.000

Phòng gia đình rộng 75m2, bao gồm phòng khách và phòng ngủ với giường đôi lớn kích thước 2m1 x 1m8, có sức chứa tối đa 8 khách Khách có thể yêu cầu thêm giường phụ (có tính phí) Giá thuê phòng là 692.000 VNĐ mỗi đêm.

Ngoài cho thuê phòng, khách sạn còn cung cấp thêm dịch vụ gì nữa không?

Khách sạn cung cấp dịch vụ ăn uống đa dạng cho khách hàng, bao gồm đồ ăn, cà phê và nước lọc Các dịch vụ này không bao gồm trong chi phí thuê phòng; thay vào đó, hệ thống sẽ ghi nhận số lượng sử dụng và cộng vào hóa đơn để thanh toán khi khách hàng trả phòng.

3 Để quản lý tốt, khách sạn của bên mình đã phân loại phòng như thế nào?

Chúng tôi sẽ phân loại phòng theo các loại giường:

+ Double room: phòng có một giường đôi cho 2 người ở

+ Twin room: phòng có 2 giường đôi cho bốn người ở

+ Premier room: phòng có 3 giường đôi cho sáu người ở thường dành cho vợ chồng + Phòng gia đình: phòng cho 8 người ở hoặc có 4 giường đôi.

Để thuê phòng, khách hàng trong nước cần cung cấp chứng minh thư nhân dân, căn cước công dân hoặc giấy tờ tùy thân khác Đối với khách nước ngoài, yêu cầu là hộ chiếu.

Khi khách hàng có yêu cầu thuê phòng, nhân viên lễ tân sẽ cung cấp những thông tin gì để tư vấn cho khách hàng?

Nhân viên lễ tân sẽ cung cấp thông tin chi tiết về các loại phòng của khách sạn, bao gồm giá cả và các dịch vụ đi kèm cùng mức phí tương ứng.

Khi khách hàng có yêu cầu trả phòng thì nhân viên khách sạn sẽ xử lý thế nào?

Khi khách hàng yêu cầu trả phòng, khách sạn sẽ cử nhân viên kiểm tra cơ sở vật chất trong phòng Nếu phát hiện hỏng hóc, khách sạn sẽ xác định mức phí bồi thường dựa trên mức độ hư hỏng và yêu cầu khách thanh toán cùng với phí thuê phòng và dịch vụ đã sử dụng Sau khi thanh toán, bộ phận lễ tân sẽ xuất hóa đơn và trả lại Căn cước công dân hoặc giấy tờ tùy thân cho khách hàng.

Tiêu chí về chất lượng các thiết bị, cơ sở vật chất mà khách sạn đặt ra khi sử dụng là như thế nào?

Khách sạn cam kết sử dụng cơ sở vật chất và thiết bị chất lượng cao, đảm bảo an toàn nhằm mang đến dịch vụ tốt nhất và sự hài lòng tối đa cho khách hàng.

Hiện tại, khách sạn bên mình đang sử dụng hệ thống nào để quản lý thông tin của khách hàng cũng như thông tin các phòng của khách sạn?

Hiện nay, khách sạn vẫn đang áp dụng phương pháp quản lý thông tin bằng giấy bút và file Excel, dẫn đến nhiều bất cập trong quy trình thuê và trả phòng Phương pháp này không chỉ thiếu linh hoạt mà còn dễ xảy ra sai sót, ảnh hưởng tiêu cực đến chất lượng phục vụ của khách sạn.

Chị mong muốn hệ thống quản lý mới của khách sạn sẽ như thế nào?

Mong muốn xây dựng một hệ thống quản lý chuyên nghiệp, đáp ứng đầy đủ các yêu cầu trong công tác quản lý, đặc biệt là trong việc quản lý phòng tại khách sạn Hệ thống này cần có tính tự động hóa cao, giảm thiểu lỗi khi xử lý thông tin của nhân viên và khách hàng, đồng thời tiết kiệm thời gian và công sức, dễ sử dụng và thân thiện với người dùng.

 Kế hoạch phát phiếu điều tra cho nhân viên lễ tân của khách sạn vào lúc 10h00 ngày 01/10/2021.

3.3 ĐÁNH GIÁ HIỆN TRẠNG VỀ HỆ THỐNG

3.3.1 Các phân hệ và chức năng của hệ thống

Hệ thống quản lý phòng tại khách sạn có 1 phân hệ chính:

Bộ phận lễ tân có nhiệm vụ tiếp nhận thông tin khách hàng như họ tên, ngày sinh, quê quán, và số chứng minh thư/căn cước công dân Tất cả thông tin này sẽ được lưu trữ trong file excel để quản lý hiệu quả Khi khách hàng có nhu cầu sử dụng thêm dịch vụ, bộ phận lễ tân sẽ ghi chú lại và khi khách hàng trả phòng, các dịch vụ sẽ được thanh toán cùng với hóa đơn tiền phòng và gửi lại cho khách hàng.

3.3.2 Quy trình nghiệp vụ của hệ thống

PHÂN TÍCH HỆ THỐNG QUẢN LÝ PHÒNG TẠI KHÁCH SẠN 34

SƠ ĐỒ PHÂN CẤP CHỨC NĂNG HỆ THỐNG

Hình 4.1: Sơ đồ phân cấp chức năng của hệ thống

BIỂU ĐỒ USE CASE

4.2.1 Các tác nhân và ca sử dụng của hệ thống

 Hệ thống quản lý phòng khách sạn sẽ có tác nhân sau:

 Tác nhân “Bộ phận lễ tân” có chức năng:

 Thu thập thông tin khách hàng, dịch vụ, vật tư, phòng thuê,…

Hệ thống quản lý phòng khách sạn

1.2 Xem thông tin khách hàng

Bạn có thể thêm, sửa hoặc xóa thông tin cá nhân của từng khách hàng, bao gồm họ tên, ngày sinh, giới tính, quê quán, số căn cước công dân hoặc chứng minh nhân dân, cùng với số điện thoại liên hệ.

 Thêm, sửa, xóa thông tin về dịch vụ, vật tư, phòng thuê

 Xem thông tin khách hàng.

 Tác nhân “Quản lý” có chức năng:

Bạn có thể thêm, sửa hoặc xóa thông tin cá nhân của từng nhân viên, bao gồm mã nhân viên, họ tên, ngày sinh, giới tính, quê quán, số căn cước công dân hoặc chứng minh nhân dân, và số điện thoại liên hệ.

 Xóa thông tin các hóa đơn

 Thống kê doanh thu của khách sạn

Dựa trên mô tả bài toán và phân tích các tác nhân, chúng tôi đã xác định được các ca sử dụng của hệ thống.

 Quản lý thông tin khách hàng

 Quản lý thông tin nhân viên

Tác nhân Ca sử dụng

Bộ phận lễ tân - Đăng nhập hệ thống

- Quản lý thông tin khách hàng

Quản lý - Đăng nhập hệ thống

- Quản lý thông tin nhân viên

- Quản lý thông tin khách hàng

Bảng 4.1: Bảng tác nhân và ca sử dụng

4.2.2 Biểu đồ Use Case tổng quát

Hình 4.2:Biểu đồ Use Case tổng quát

4.2.3 Biểu đồ Use Case chi tiết

 Biểu đồ Use Case Quản lý phòng:

Hình 4.3: Biểu đồ Use Case quản lý phòng

UC1 QUẢN LÝ PHÒNG Độ phức tạp: Trung bình

Mô tả - Quản lý sẽ thêm, sửa, xóa thông tin của phòng

- Tìm kiếm được thông tin của phòng theo yêu cầu Tác nhân Chính - Bộ phận lễ tân/ Quản lý

Phụ Tiền điều kiện - Đăng nhập hệ thống thành công

Thành công - Thông tin phòng, dịch vụ, vật tư được lưu vào hệ thống

Tìm kiếm thông tin phòng, dịch vụ và vật tư theo yêu cầu là một chức năng quan trọng Tuy nhiên, người dùng gặp lỗi khi không thể thêm, sửa, xóa hoặc tìm kiếm thông tin liên quan đến phòng, dịch vụ và vật tư Điều này cần được khắc phục để đảm bảo hiệu quả trong việc quản lý và truy cập thông tin.

1 Thêm/sửa/xóa thông tin vật tư

2 Thêm/sửa/xóa thông tin dịch vụ

3 Thêm/sửa/xóa thông tin phòng cho thuê

4 Tìm kiếm thông tin phòng, dịch vụ, vật tư

Sau khi đăng nhập vào hệ thống, bộ phận lễ tân tiến hành thu thập thông tin về vật tư và dịch vụ của khách sạn Khi đã có đủ dữ liệu, lễ tân sẽ nhập các thông tin quan trọng như mã dịch vụ, tên dịch vụ, đơn giá, tên vật tư, số lượng vật tư, mã phòng, tên phòng và tình trạng phòng vào hệ thống, sau đó lưu trữ chúng trong cơ sở dữ liệu của khách sạn.

Hình 4.4: Biểu đồ Use Case quản lý thông tin khách hàng

UC2 QUẢN LÝ KHÁCH HÀNG Độ phức tạp: Trung bình

Mô tả - Bộ phận lễ tân/ Quản lý sẽ xem được thông tin của khách hàng

- Tìm kiếm được thông tin của khách hàng theo yêu cầu Tác nhân Chính - Bộ phận lễ tân/ Quản lý

Phụ Tiền điều kiện - Đăng nhập hệ thống thành công

Thành công - Tìm kiếm được thông tin khách hàng theo yêu cầu Lỗi - Không xem được thông tin khách hàng

- Không tìm kiếm được thông tin khách hàng theo yêu cầu ĐẶC TẢ CHỨC NĂNG

1 Tìm kiếm thông tin khách hàng

2 Xem thông tin khách hàng

Khi tìm kiếm thông tin khách hàng, nhân viên khách sạn chỉ cần nhập tên khách, và hệ thống sẽ hiển thị danh sách khách hàng có tên tương tự Ngoài ra, hệ thống còn cho phép lọc danh sách khách hàng theo thời gian thuê phòng Bộ phận quản lý có thể theo dõi và kiểm tra tất cả các chức năng trong use case này.

 Biểu đồ Use Case đặt phòng:

Hình 4.5: Biểu đồ Use Case đặt phòng

UC3 ĐẶT PHÒNG Độ phức tạp: Cao

Mô tả - Bộ phận lễ tân/ Quản lý sẽ thêm mới được thông tin của khách hàng

- Bộ phận lễ tân/ Quản lý sẽ đăng ký thuê phòng theo yêu cầu của khách hàng

- Thanh toán tiền phòng và dịch vụ cho khách hàng khi có yêu cầu Tác nhân Chính - Bộ phận lễ tân/ Quản lý

Phụ Tiền điều kiện - Đăng nhập hệ thống thành công

- Còn phòng trống Hậu điều kiện

Thành công - Đăng ký được phòng dựa vào thông tin khách hàng cung cấp.

- Thanh toán được khi khách hàng trả phòng

- Xem và xóa được các hóa đơn (Bộ phận quản lý) Lỗi - Không đăng ký được phòng cho khách hàng

- Không thanh toán được khi khách hàng trả phòng

- Không xem và xóa được các hóa đơn (Bộ phận ĐẶC TẢ CHỨC NĂNG

1 Đăng ký thông tin thuê phòng của khách hàng

Luồng sự kiện phát sinh:

1 Các phòng khách sạn đã được thuê hết

2 Những phòng không được thuê của khách sạn đang trong giai đoạn sửa chữa

Khi khách hàng yêu cầu thuê phòng, lễ tân sẽ ghi nhận thông tin và lưu vào cơ sở dữ liệu khách sạn Hóa đơn sẽ được lập ngay từ lúc đăng ký, và mọi dịch vụ bổ sung sau đó sẽ được thêm vào hóa đơn Khi khách trả phòng, toàn bộ phí sẽ được thanh toán Bộ phận quản lý có trách nhiệm kiểm tra quy trình này và quản lý hóa đơn thanh toán của khách sạn.

 Biểu đồ Use Case Quản lý nhân viên:

UC4 QUẢN LÝ NHÂN VIÊN Độ phức tạp: Trung bình

Mô tả - Quản lý sẽ thêm, sửa, xóa thông tin của thủ thư

- Tìm kiếm được thông tin của thủ thư theo yêu cầu

Tác nhân Chính - Quản lý

Phụ - Bộ phận lễ tân

Tiền điều kiện - Đăng nhập hệ thống thành công

Thành công - Danh sách nhân viên được cập nhật thành công

- Tìm kiếm được thông tin nhân viên theo yêu cầu Lỗi - Không thêm/ sửa/ xóa/ tìm kiếm được thông tin nhân viên ĐẶC TẢ CHỨC NĂNG

5 Thêm/ sửa/ xóa thông tin nhân viên

6 Tìm kiếm thông tin nhân viên

7 Xem thông tin nhân viên

Khi nhân viên khách sạn cần tìm thông tin về khách hàng, họ chỉ cần nhập tên khách hàng vào hệ thống, và ngay lập tức, danh sách khách hàng có tên tương tự sẽ hiển thị Hệ thống cũng cho phép lọc danh sách khách hàng theo thời gian thuê phòng Đối với bộ phận quản lý, họ có khả năng theo dõi và kiểm tra tất cả các chức năng trong use case này một cách hiệu quả.

 Biểu đồ Use Case thống kê:

UC5 THỐNG KÊ DOANH THU Độ phức tạp: Cao

Mô tả - Quản lý sẽ xem được chi tiết doanh thu của khách sạn

- Quản lý sẽ xem được tổng doanh thu của khách sạn

Tác nhân Chính - Quản lý

Phụ Tiền điều kiện - Đăng nhập hệ thống thành công

- Khách sạn có khách thuê phòng và đã thanh toán Hậu điều kiện

Thành công - Doanh thu chi tiết được cập nhật thành công

- Tổng doanh thu được tính chính xác Lỗi - Doanh thu chi tiết không được cập nhật thành công

- Tổng doanh thu không được tính chính xác hoặc không tính được ĐẶC TẢ CHỨC NĂNG

1 Xem doanh thu chi tiết

Bộ phận quản lý có thể theo dõi doanh thu khách sạn một cách hiệu quả nhờ vào việc hiển thị tự động doanh thu chi tiết từ từng hóa đơn Qua đó, họ cũng dễ dàng nắm bắt tổng doanh thu của khách sạn tính đến thời điểm hiện tại.

4.3.1 Biểu đồ trình tự đăng nhập

Hiình 4.8: Biểu đồ trình tự đăng nhập

4.3.2 Biểu đồ trình tự nhập thông tin dịch vụ, vật tư, phòng thuê của khách sạn.

Hình 4.9: Biểu đồ trình tự nhập thông tin dịch vụ, vật tư, phòng thuê của khách sạn.

4.3.3 Biểu đồ trình tự xem thông tin khách hàng, nhân viên.

Hình 4.10: Biểu đồ trình tự xem thông tin khách hàng, nhân viên

4.3.4 Biểu đồ trình tự đặt phòng khách sạn

Hình 4.11: Biểu đồ trình tự đặt phòng khách sạn

4.3.5 Biểu đồ trình tự tìm kiếm thông tin khách hàng.

Hình 4.12: Biểu đồ trình tự tìm kiếm thông tin khách hàng

4.3.6 Biểu đồ trình tự thanh toán

Hình 4.13: Biểu đồ trình tự thanh toán

4.4.1 Biểu đồ hoạt động đăng nhập

Hình 4.14: Biểu đồ hoạt động đăng nhập

4.4.2 Biểu đồ hoạt động chỉnh sửa thông tin

Hình 4.15: Biểu đồ hoạt động chỉnh sửa thông tin

4.4.3 Biểu đồ hoạt động tìm kiếm thông tin

4.4.4 Biểu đồ hoạt động thanh toán

Hình 4.17: Biểu đồ hoạt động thanh toán

4.5.1 Biểu đồ trạng thái phòng cho thuê khách sạn

Hình 4.18: Biểu đồ trạng thái phòng cho thuê khách sạn

4.5.2 Biểu đồ trạng thái thanh toán

Hình 4.19: Biểu đồ trạng thái thanh toán

THIẾT KẾ CƠ SỞ DỮ LIỆU

Tên trường Kiểu dữ liệu Độ dài Mô tả username nvarchar 100 Tên đăng nhập password nvarchar 8 Mật khẩu đăng nhập quyen nvarchar 10 Quyền người dùng

Tên trường Kiểu dữ liệu Độ dài Mô tả

Mavattu (Khóa chính) nvarchar 50 Mã vật tư tenvattu nvarchar 100 Tên vật tư soluong int Số lượng tinhtrang nvarchar 50 Tình trạng vật tư

Tên trường Kiểu dữ liệu Độ dài Mô tả

Madv (Khóa chính) nvarchar 50 Mã dịch vụ tendv nvarchar 100 Tên dịch vụ dvtinh nvarchar 50 Đơn vị tính dongia int Đơn giá

Tên trường Kiểu dữ liệu Độ dài Mô tả

Maphong (Khóa chính) nvarchar 50 Mã phòng tenphong nvarchar 100 Tên phòng loaiphong nvarchar 50 Loại phòng mota nvarchar max Mô tả

Tinhtrang nvarchar 50 Tình trạng giaphong int Giá phòng

Bài viết mô tả cấu trúc dữ liệu của một bảng thông tin nhân viên với các trường như sau: "manv" (Khóa chính) có kiểu dữ liệu nvarchar với độ dài 50, đại diện cho mã nhân viên; "tennv" có kiểu nvarchar max, chứa tên nhân viên; "ngaysinh" có kiểu date, ghi lại ngày sinh của nhân viên; "gioitinh" có kiểu nvarchar 10, thể hiện giới tính; "diachi" có kiểu nvarchar 100, lưu trữ địa chỉ; "sdt" có kiểu int, là số điện thoại; "chucvu" và "bophan" đều có kiểu nvarchar 100, lần lượt chỉ chức vụ và bộ phận của nhân viên.

Tên trường Kiểu dữ liệu Độ dài Mô tả

Mã khách hàng (Makh) là trường dữ liệu kiểu nvarchar 50, trong khi tên khách hàng (tenkh) được lưu trữ dưới dạng nvarchar max Ngày sinh khách hàng (ngaysinh) có định dạng date, cùng với giới tính (gioitinh) được ghi nhận là nvarchar 10 Địa chỉ khách hàng (diachi) cũng sử dụng định dạng date, và số chứng minh thư hoặc căn cước công dân (cccd) là trường dữ liệu nvarchar 20 Cuối cùng, ngày cấp căn cước/chứng minh thư (ngaycap) được lưu trữ dưới dạng date.

Tên trường Kiểu dữ liệu Độ dài Mô tả

Loaiphong nvarchar 50 Loại phòng tenphong nvarchar 100 Tên phòng giaphong int Giá phòng ngayden date Ngày đến ngaydi date Ngày đi

Tên trường Kiểu dữ liệu Độ dài Mô tả

Maphieudv (Khóa chính) nvarchar 50 Mã phiếu dịch vụ tendv nvarchar 100 Tên dịch vụ soluong int Số lượng thanhtien int Thành tiền

Bảng 4.8: Bảng phiếu dịch vụ

Tên trường Kiểu dữ liệu Độ dài Mô tả

Mahoadon (Khóa chính) nvarchar 50 Mã hóa đơn makh (Khóa phụ) nvarchar 50 Mã khách hàng tenphong nvarchar 100 Tên phòng thuê ngaylap date Ngày lập hóa đơn

4.6.10 Bảng quản lý hóa đơn

Trong bảng dữ liệu, trường "mahd" là khóa chính với kiểu dữ liệu nvarchar và độ dài 50, dùng để lưu trữ mã hóa đơn Trường "makh" là khóa phụ, cũng có kiểu dữ liệu nvarchar và độ dài 50, dùng để lưu mã khách hàng Tương tự, trường "manv" là khóa phụ với kiểu dữ liệu nvarchar và độ dài 50, dùng để lưu mã nhân viên.

Maphieudv (Khóa phụ) nvarchar 50 Mã phiếu dịch vụ ngaylap date Ngày lập hóa đơn tongtien int Tổng tiền

Bảng 4.9: Bảng quản lý hóa đơn

CHƯƠNG 5: THIẾT KẾ HỆ THỐNG QUẢN LÝ PHÒNG

THIẾT KẾ TỔNG THỂ

Hình 5.1: Biểu đồ thành phần

 Trang chủ của hệ thống:

 Giao diện quản lý khách hàng: Dành cho bên bộ phận lễ tân, bộ phận quản lý cập nhật và quản lý thông tin người hiến máu.

 Giao diện quản lý nhân viên: Dành cho bộ phận quản lý cập nhật và quản lý thông tin các nhân viên.

Giao diện quản lý phòng được thiết kế dành riêng cho bộ phận quản lý và lễ tân, giúp họ dễ dàng cập nhật và quản lý thông tin về các dịch vụ, vật tư cũng như phòng thuê của khách sạn.

Giao diện đặt phòng phục vụ cho bộ phận lễ tân trong việc đăng ký thuê phòng và thực hiện thanh toán cho khách hàng Đồng thời, nó cũng giúp bộ phận quản lý cập nhật và quản lý các hóa đơn một cách hiệu quả.

 Giao diện thống kê: Dành cho bộ phận quản lý để thống kê doanh thu của khách sạn.

Hình 5.2: Biểu đồ triển khai

THIẾT KẾ CHI TIẾT

5.2.1 Thiết kế cơ sở dữ liệu vật lý

 Quan hệ giữa các bảng:

Hình 4.8: Mô hình thực thể liên kết giữa các bảng

Giao diện người dùng cần phải thân thiện và dễ sử dụng, giúp người dùng nhanh chóng truy xuất dữ liệu Điều này không chỉ rút ngắn thời gian làm việc mà còn giảm thiểu tối đa các yêu cầu công việc thủ công, mang lại trải nghiệm tốt hơn cho người sử dụng.

Cơ sở dữ liệu nhập vào cần tuân thủ các ràng buộc đã được thiết lập, nếu không đúng, hệ thống sẽ thông báo lỗi và yêu cầu người dùng nhập lại dữ liệu Một số ràng buộc quan trọng bao gồm số CMTND/CCCD phải có 9 hoặc 12 ký tự và mã nhân viên không được trùng lặp.

Khi người dùng đăng nhập với tài khoản hoặc mật khẩu không chính xác, hệ thống sẽ tự động phát hiện lỗi và không cho phép tiếp tục Đồng thời, một thông báo sẽ xuất hiện trên màn hình yêu cầu người dùng nhập lại thông tin hoặc thoát khỏi chương trình.

Để đảm bảo an toàn cho hệ thống, máy tính của bộ phận quản lý và lễ tân cần được bảo mật ở mức vật lý Điều này bao gồm việc bảo quản nghiêm ngặt thiết bị để ngăn chặn xâm nhập từ bên ngoài Sau mỗi ca làm việc, nhân viên phải tắt máy tính và khóa phòng cẩn thận để bảo vệ thông tin quan trọng.

Để đảm bảo bảo mật mức logic, máy tính của bộ phận quản lý và lễ tân cần được bảo vệ bằng mật khẩu, và mật khẩu này phải được giữ kín Ngoài ra, trước khi đóng gói, chương trình sẽ được sao chép thành nhiều bản và được bảo mật một cách nghiêm ngặt.

 Quyền riêng tư: Hệ thống sẽ gồm 2 nhóm quyền sau:

Bộ phận quản lý có quyền quản trị hệ thống với quyền admin, cho phép họ cập nhật và chỉnh sửa tất cả thông tin trong hệ thống, bao gồm thông tin nhân viên, khách hàng và hóa đơn Ngoài ra, họ còn có khả năng thực hiện thống kê về doanh thu của khách sạn.

Bộ phận lễ tân có khả năng tìm kiếm, xem và chỉnh sửa thông tin quan trọng như thông tin khách hàng và dịch vụ trong phiếu dịch vụ Ngoài ra, bộ phận này còn tính toán số tiền mà khách hàng cần thanh toán cho khách sạn sau khi trả phòng.

 Giao diện đăng nhập hệ thống:

Hình 5.12: Giao diện đăng nhập hệ thống

 Giao diện trang chủ của hệ thống:

Hình 5.13: Giao diện trang chủ của hệ thống

 Giao diện đăng ký đặt phòng:

Hình 5.14: Giao diện đăng ký đặt phòng

Hình 5.15: Giao diện thanh toán

 Giao diện quản lý hóa đơn:

Hình 5.16: Giao diện quản lý hóa đơn

 Giao diện quản lý vật tư:

Hình 5.17: Giao diện quản lý vật tư

 Giao diện quản lý dịch vụ:

Hình 5.18: Giao diện quản lý dịch vụ

 Giao diện quản lý phòng:

Hình 5.19: Giao diện quản lý phòng

 Giao diện quản lý khách hàng:

Hình 5.20: Giao diện quản lý khách hàng

- Giao diện quản lý nhân viên:

Hình 5.21: Giao diện quản lý nhân viên

- Giao diện thống kê doanh thu:

Hình 5.22: Giao diện thống kê doanh thu

Hệ thống hoàn chỉnh bao gồm nhiều modul chương trình khác nhau, mỗi modul thực hiện một chức năng cụ thể dựa trên yêu cầu của hệ thống Đối với Hệ thống Quản lý phòng khách sạn, các modul chính bao gồm: Đăng nhập hệ thống, quản lý thông tin, đặt phòng và thống kê.

Để đảm bảo yêu cầu bảo mật, hệ thống phân chia người dùng thành hai phân hệ: quản trị và người dùng, mỗi phân hệ sẽ có tên đăng nhập và mật khẩu riêng biệt Khi người dùng nhập Username và Password, hệ thống sẽ kiểm tra thông tin trong cơ sở dữ liệu Nếu thông tin đúng, người dùng sẽ nhận thông báo đăng nhập thành công và được chuyển đến giao diện chính; ngược lại, hệ thống sẽ thông báo lỗi và yêu cầu nhập lại.

Hình 5.22: Lưu đồ thuật toán đăng nhập

Code chức năng đăng nhập: private void bt_login_Click(object sender, EventArgs e)

{ string role = cmb_role.SelectedItem.ToString();

SqlConnection con = new SqlConnection(connect); con.Open();

SqlCommand cmd = new SqlCommand("select * from login where username=N'" + txt_user.Text + "' and " +

"password=N'" + txt_pass.Text + "'and quyen=N'" + role + "'", con); cmd.ExecuteNonQuery();

SqlDataAdapter da = new SqlDataAdapter(cmd);

DataTable tb = new DataTable(); da.Fill(tb);

SqlDataReader rd = cmd.ExecuteReader(); if (rd.Read() == true)

MessageBox.Show("Đăng nhập vào hệ thống thành công!", "Chúc mừng", MessageBoxButtons.OK, MessageBoxIcon.Information); this.Hide();

Form f = new Home(tb.Rows[0][0].ToString(), tb.Rows[0][1].ToString(), tb.Rows[0][2].ToString()); f.ShowDialog();

MessageBox.Show("Tên đăng nhập hoặc mật khẩu sai!", "Xin lỗi",

MessageBoxButtons.OK, MessageBoxIcon.Error); txt_user.Text = " "; txt_pass.Text = " ";

Bộ phận quản trị có trách nhiệm quản lý thông tin hệ thống, bao gồm việc nhập dữ liệu nhân viên và quản lý hóa đơn Hệ thống cũng cho phép bộ phận lễ tân thực hiện các thao tác như thêm, sửa, xóa và tìm kiếm thông tin về khách hàng, dịch vụ và vật tư Tất cả thông tin nhập vào phải đáp ứng các tiêu chí nhất định, chẳng hạn như mã khách hàng phải là kiểu nvarchar, có độ dài từ 0 đến 50 và không được trùng lặp.

Hình 5.23: Lưu đồ thuật toán quản lý thông tin nhân viên

Code modul quản lý thông tin nhân viên: private void btn_add_Click(object sender, EventArgs e)

{ string p_nvid = txt_nvid.Text; string p_namenv = txt_namenv.Text;

To gather user information, we extract the date of birth from the variable `dt_birth`, the gender from the selected item in `cmb_gt`, the address from `txt_address`, the phone number from `txt_phonenumber`, the position from `cmb_position`, and the department from `cmb_department` Additionally, we check if the variable `p_nvid` is not empty before proceeding with further actions.

SqlConnection con = new SqlConnection(connect); con.Open(); string sql = "insert into nhanvien values(N'"+p_nvid+"',N'"+p_namenv+"',N'"+p_birth+"',N'"+p_gt+"'," +

SqlCommand cmd = new SqlCommand(sql, con); cmd.ExecuteNonQuery(); load_nhanvien();

MessageBox.Show("Thêm mới nhân viên thành công!");

MessageBox.Show("Mã nhân viên đã tồn tại!");

MessageBox.Show("Bạn chưa điền mã nhân viên!");

} private void btn_updatenv_Click(object sender, EventArgs e)

{ string p_nvid = txt_nvid.Text; string p_namenv = txt_namenv.Text;

To capture essential information, we gather the following data: the birth date is stored as `p_birth`, the gender is selected from `cmb_gt` as `p_gt`, the address is retrieved from `txt_address` as `p_address`, the phone number is obtained from `txt_phonenumber` as `p_phonenumber`, the position is chosen from `cmb_position` as `p_position`, and the department is selected from `cmb_department` as `p_department`.

SqlConnection con = new SqlConnection(connect); con.Open(); string sql = "update nhanvien set tennv = N'"+p_namenv+"', ngaysinh N'"+p_birth+"'," +

"gioitinh = N'"+p_gt+"', diachi = N'"+p_address+"',sdt N'"+p_phonenumber+"'," +

"chucvu = N'"+p_position+"', bophan = N'"+p_department+"' where manv N'"+p_nvid+"'";

SqlCommand cmd = new SqlCommand(sql, con); cmd.ExecuteNonQuery(); load_nhanvien();

MessageBox.Show("Sửa nhân viên thành công!");

} private void btn_deletenv_Click(object sender, EventArgs e)

{ string p_nvid = txt_nvid.Text;

SqlConnection con = new SqlConnection(connect); con.Open(); string sql = "delete nhanvien where manv = N'" + p_nvid + "'";

SqlCommand cmd = new SqlCommand(sql, con); cmd.ExecuteNonQuery(); load_nhanvien();

MessageBox.Show("Xóa nhân viên thành công!");

Hình 5.24: Lưu đồ thuật toán tìm kiếm

Code modul tìm kiếm: private void btn_searchnv_Click(object sender, EventArgs e)

{ string p_searchnameNV = txt_SearchNV.Text;

SqlConnection con = new SqlConnection(connect); con.Open(); string sql = "select row_number() over (order by manv) as STT, nhanvien.* from nhanvien where tennv like N'%" + p_searchnameNV+"%'";

SqlCommand cmd = new SqlCommand(sql, con); cmd.ExecuteNonQuery();

DataTable tb = new DataTable(); da.Fill(tb); cmd.Dispose(); con.Close(); dgvNhanVien.DataSource = tb; dgvNhanVien.Refresh();

 Module thống kê: private void btn_searchvt_Click(object sender, EventArgs e)

{ string p_monthTK = txt_monthTK.Text; string p_yearTK = txt_yearTK.Text; if(p_monthTK != "" || p_yearTK != "")

SqlConnection con = new SqlConnection(connect); con.Open();

SqlCommand cmd = new SqlCommand(" select row_number() over (order by mahoadon) as STT, qlhoadon.* from qlhoadon " +

"where ngaylap like N'"+p_yearTK+"-"+p_monthTK+"%'", con); cmd.ExecuteNonQuery();

SqlDataAdapter da = new SqlDataAdapter(cmd);

System.Data.DataTable tb = new System.Data.DataTable(); da.Fill(tb); cmd.Dispose(); con.Close(); dgv_qlhd.DataSource = tb; dgv_qlhd.Refresh(); con.Open();

SqlCommand cmd1 = new SqlCommand("select sum(tongtien) as totaldt from qlhoadon " +

"where ngaylap like N'" + p_yearTK + "-" + p_monthTK + "%'", con);

SqlDataReader dr = cmd1.ExecuteReader(); while (dr.Read())

{ txt_totaldt.Text = dr["totaldt"].ToString();

MessageBox.Show("Vui lòng nhập thời gian");

 Module đăng ký thuê phòng: private void btn_add_dki_Click_1(object sender, EventArgs e)

{ string p_khid = txt_khid.Text; string p_namekh = txt_namekh.Text;

//DateTime p_birth = dt_birthkh.Value;

DateTime p_birth = DateTime.Parse(dt_birthkh.Value.ToString("yyyy-MM- dd")); string p_gt = cmb_gt.SelectedItem.ToString(); string p_address = txt_address.Text; string p_cccd = txt_cccd.Text;

//DateTime p_ngaycap = dt_ngaycap.Value;

DateTime p_ngaycap = DateTime.Parse(dt_ngaycap.Value.ToString("yyyy- MM-dd")); string p_typephong = cmb_typephong.SelectedItem.ToString();

//string p_namephong = txt_namephong.Text; string p_namephong = cmb_tenphongtrong.SelectedValue.ToString(); int p_pricephong Convert.ToInt32(cmb_pricephong.SelectedItem.ToString());

//DateTime p_checkin = dt_checkin.Value;

DateTime p_checkin = DateTime.Parse(dt_checkin.Value.ToString("yyyy- MM-dd"));

//DateTime p_checkoutdk = dt_checkoutdk.Value;

DateTime p_checkoutdk DateTime.Parse(dt_checkoutdk.Value.ToString("yyyy-MM-dd")); string p_hoadonid = txt_hoadonid.Text; string p_khid2 = txt_khid2.Text; string p_namephong2 = txt_namephong2.Text;

//DateTime p_ngaylap = dt_ngaylap.Value;

DateTime p_ngaylap = DateTime.Parse(dt_ngaylap.Value.ToString("yyyy- MM-dd")); try

{ if (p_khid != "" || p_namekh != "" || p_hoadonid != "" || /*p_gt!=""||*/ p_address != "" || p_cccd != ""/*|| p_typephong!=""*/|| p_namephong != "" || p_hoadonid != "" || p_khid2 != "" || p_namephong2 != ""/*|| p_pricephong!=""*/)

{ if (p_khid == p_khid2 && p_namephong == p_namephong2)

SqlConnection con = new SqlConnection(connect); con.Open(); string sql = ""; if (isCheckUser == 0) // bằng 0 khách hành chưa có trong DB => thêm mới

{ sql = "insert into khachhang values(N'" + p_khid + "',N'" + p_namekh + "',N'" + p_birth + "',N'" + p_gt + "',N'" + p_address + "',N'" + p_cccd +

" insert into phongthue values(N'" + p_typephong + "',N'" + p_namephong + "',N'" + p_pricephong + "',N'" + p_checkin + "',N'" + p_checkoutdk +

" insert into hoadon values(N'" + p_hoadonid + "',N'" + p_khid2 +

" update phong set tinhtrangp=N'Phòng ở' where tenphong=N'" + p_namephong + "'";

// khác 0 không thêm mới khách hành chỉ thêm phòng thuê sql = " insert into phongthue values(N'" + p_typephong + "',N'" + p_namephong + "',N'" + p_pricephong + "',N'" + p_checkin + "',N'" + p_checkoutdk +

" insert into hoadon values(N'" + p_hoadonid + "',N'" + p_khid2 +

" update phong set tinhtrangp=N'Phòng ở' where tenphong=N'" + p_namephong + "'";

SqlCommand cmd = new SqlCommand(sql, con); cmd.ExecuteNonQuery();

/*load_tenphong();*/ load_all(); load_lichsuKH();

MessageBox.Show("Đăng ký thuê phòng thành công!");

MessageBox.Show("Thông tin nhập vào không hợp lệ!");

MessageBox.Show("Bạn chưa điền đầy đủ thông tin!");

 Module thanh toán: private void btn_confirm_Click(object sender, EventArgs e)

{ string p_namephong = txt_namephongtt.Text; string p_mahoadon = txt_hoadonidtt.Text; string p_khid = txt_khidtt.Text; string p_nvid = cmb_manhanvien.SelectedValue.ToString(); string p_maphieudv = txt_phieudvid.Text;

DateTime p_ngaylap = dt_ngayLap.Value; int p_total = Convert.ToInt32(txt_totalmoney.Text); if (p_nvid == null || p_nvid =="")

MessageBox.Show("Vui lòng chọn nhân viên!");

SqlConnection con = new SqlConnection(connect); con.Open(); string sql = " insert into qlhoadon values(N'" + p_mahoadon + "',N'" + p_khid + "',N'" + p_nvid + "',N'" + p_maphieudv + "',N'" + p_ngaylap + "',N'" + p_total + "')" +

" update phong set tinhtrangp=N'Phòng dọn dẹp' where tenphong=N'" + p_namephong + "'" +

" delete phongthue where tenphong=N'" + p_namephong + "'" +

" delete hoadon where mahoadon=N'" + p_mahoadon + "'";

SqlCommand cmd = new SqlCommand(sql, con); cmd.ExecuteNonQuery(); load_maNV(); load_phongThue();

The payment has been successfully processed, as indicated by a message box notification All relevant fields, including invoice ID, customer ID, customer name, address, identification number, room name, and various dates, have been cleared for a fresh entry Additionally, the service fee, room rate, and total amount have been reset, ensuring a clean slate for the next transaction The dropdown menu for room selection is also reset, and the service invoice ID field is enabled for input Finally, the system reloads the room names and all services available to ensure accurate and up-to-date information for future transactions.

5.3 KIỂM THỬ VÀ BẢO TRÌ

Sau khi đã có chương trình thì ta bắt đầu tiến hành kiểm thử:

Khi bạn nhấn vào nút đăng nhập, màn hình sẽ yêu cầu bạn nhập tên tài khoản (Username) và mật khẩu (Password) Nếu thông tin này khớp với dữ liệu trong cơ sở dữ liệu, hệ thống sẽ thông báo đăng nhập thành công và chuyển bạn đến trang chủ Ngược lại, nếu tên tài khoản hoặc mật khẩu không chính xác, màn hình sẽ hiển thị thông báo “Tên đăng nhập hoặc mật khẩu không đúng!”

Khi quản lý khách hàng hoặc phòng, người dùng cần nhập thông tin và thực hiện các thao tác thêm mới, sửa đổi hoặc xóa bản ghi Nếu sau khi thực hiện, hệ thống hiển thị thông báo “Thêm mới/Sửa/Xóa thành công”, điều này cho thấy chức năng đã hoạt động hiệu quả.

Ngày đăng: 26/06/2022, 20:23

HÌNH ẢNH LIÊN QUAN

Hình 2. 1 Chu trình thác nước - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 2. 1 Chu trình thác nước (Trang 14)
Hình 2.2: Các thành phần chính của SQL Server - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 2.2 Các thành phần chính của SQL Server (Trang 21)
Hình 3.1: Khách sạn Ruby - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 3.1 Khách sạn Ruby (Trang 26)
Hình 3.2: Quầy lễ tân của khách sạn - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 3.2 Quầy lễ tân của khách sạn (Trang 27)
Hình 4.2:Biểu đồ Use Case tổng quát - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 4.2 Biểu đồ Use Case tổng quát (Trang 36)
Hình 4.5: Biểu đồ Use Case đặt phòng - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 4.5 Biểu đồ Use Case đặt phòng (Trang 39)
Hình 4.9: Biểu đồ trình tự nhập thông tin dịch vụ, vật tư, phòng thuê của khách sạn. - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 4.9 Biểu đồ trình tự nhập thông tin dịch vụ, vật tư, phòng thuê của khách sạn (Trang 44)
Hình 4.10: Biểu đồ trình tự xem thông tin khách hàng, nhân viên - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 4.10 Biểu đồ trình tự xem thông tin khách hàng, nhân viên (Trang 45)
Hình 4.11: Biểu đồ trình tự đặt phòng khách sạn - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 4.11 Biểu đồ trình tự đặt phòng khách sạn (Trang 46)
Hình 4.12: Biểu đồ trình tự tìm kiếm thông tin khách hàng - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 4.12 Biểu đồ trình tự tìm kiếm thông tin khách hàng (Trang 47)
Hình 4.13: Biểu đồ trình tự thanh toán - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 4.13 Biểu đồ trình tự thanh toán (Trang 48)
Hình 4.14: Biểu đồ hoạt động đăng nhập - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 4.14 Biểu đồ hoạt động đăng nhập (Trang 49)
Hình 4.15: Biểu đồ hoạt động chỉnh sửa thông tin - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 4.15 Biểu đồ hoạt động chỉnh sửa thông tin (Trang 50)
Hình 4.17: Biểu đồ hoạt động thanh toán - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 4.17 Biểu đồ hoạt động thanh toán (Trang 51)
Hình 4.18: Biểu đồ trạng thái phòng cho thuê khách sạn - Phân tích thiết kế và xây dựng phần mềm quản lý thuê phòng khách sạn
Hình 4.18 Biểu đồ trạng thái phòng cho thuê khách sạn (Trang 52)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w