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

Bài thảo luận học phần lập trình hướng Đối tượng tên Đề tài xây dựng hệ thống quản lý khách sạn

62 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
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

Thông tin cơ bản

Tiêu đề Xây dựng hệ thống quản lý khách sạn
Người hướng dẫn Cô Nguyễn Giáp
Trường học Hà Nội
Chuyên ngành Lập trình hướng đối tượng
Thể loại bài thảo luận
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 62
Dung lượng 16,7 MB

Nội dung

Vì vậy ứng dụng tm học vào công tác quản lý thì các công việc như cập nhật thông tin khách hàng, xem các thông tin về dịch vụ của khách sạn, thông tin về só phòng, và nhân viên, hóa đơn

Trang 1

- "E7 Ổ [s" ""

BÀI THẢO LUẬN HOC PHAN: LAP TRINH HƯỚNG ĐÓI TƯỢNG

Tên đề tài: Xây dựng hệ thông quản lý khách sạn

Giảng viên hướng dẫn: Củ Nguyên Giáp Nhóm thực hiện : Nhóm 2

Trang 2

MỤC LỤC

0900092100115 1

LÍ DO CHON DE TÀI 222222 H0 HH Hưng 2 MỤC ĐÍCH CỦA ĐẼ TÀI 52222c 22222 tt t2 Hung 2 FlO oávy9 ác 3

1 Mục tiêu hệ thống cần đạt đưỢC à c cccnnnnnnn n HH HH HH HH HH HH He te 6

2 DAQQQ§€ nh HH HH HH HH HH HH HH HH HH hà 6 3 Các chức năng quản lý (hÔNng [ÍH ào ác nh nh nh Hà nh kg TH Kha thà 6

4 Ngôn ngữ lập trình và còi đẶI TS nh nh HH HH KH ko 8

3 Hệ quản trị CƠ SỞ dữ HIỆM Ăn nh HH HH HH Kho 8

II CÁC SƠ ĐÔ HH HH Hưng 10

TH GIẢI THÍCH HƯỚNG LÀM 2 222 t2 HH 12

v7 nh e ea<a ăốă dd 12

PM vn cố cố ốốốốằốằốằốằốằằốằằẦằeằee ă 13 S9 ốan neeằe <đd 14

Trang 3

8.4 Hiển thị darh Sache c.ceccccccccccscsssscscsveveveesesesesvevesesesesvsvesesesssvavaveresesestevssseseseseves 28

:l 8020900 31 8.7 Các chức năng chính khác - c1 2122111121115 11511158115 1111111121111 2 ke 35 LAN NG: na 6⁄43 39

10 Maim 2H TH HT TH TH HT HH TH HH TH giàu 42

IV KẾTQUẢ à HH re 44

J0 3 ng nh cưa 44 1.1 Quản lý nhân viÊn L2 1 22112111 122111 11111115115 111181 1211151 kg 44 1.2 Quán lý khách hàng 2 2 1 2211211112112 11 1151251111011 5 1kg 46

1.4 Quán lý dịch VỤ 0 220 1221112112 1125115 211152151 11k kg 47

1.5 Quán lý doanh thu C222 1211122112111 1115115111151 15111 11c ky ka 49

2 Chức năng HhÂH VIÊH Q1 KH kg 49

V KẾT LUẬN VA HUONG PHAT TRIEN ecsssssssesssssssensessssnnneeecsssneeeeecsnmseennes 53

1 UU GEM cesses cece cccess cesses nesenesssunessieesiistsnistinnsteuiteisintinetsnesaisetntens 53

2 Nhược điểm nh hư hung 53

3 Hướng phát triển và hoàn thiỆH St nh HH nung 33

Trang 4

LỜI MỞ ĐẦU

Lập trình hướng đối tượng (hay gọi tắt là OOP — Object oriented programing) là kỹ thuật lập trình hỗ trợ công nghệ hướng đối tượng OOP được xem là giúp tăng năng suất, đơn giản hóa độ phức tạp khi bảo trì cũng như mở rộng phần mèn băng cách cho phép lập trình viên tập trung vào các đối tượng phần mềm ở bậc cao hơn Lập trình hướng đối tượng là phương thức tiếp cận bài toán theo hướng xem hệ thống là hoạt động của các đối tượng như trong thực tế, sau đó mô tả chúng và cho chúng tương tác với nhau đề tạo nên

hệ thông Với sự tiếp cận như vậy giúp lập trình hướng đối tượng tư duy gần với thực tế hơn (lập trình có cấu trúc tư duy thiên về toán hơn) và độ phức tạp cũng chia ra cho việc

mô tả các đối tượng và hành vi của nó nên độ phức tạp của bài toán cũng được chia nhỏ

ra

Ngày nay, nhu cầu di lại, công tác đài ngày, nhu cầu du lịch của con người cũng như những nhu cầu về nơi an chỗn ở, nghỉ ngơi thư giãn và yếu cầu về chất lương của các dịch vụ ngày nay càng tăng Bắt kịp những đòi hỏi đó các khách sạn ngày cảng nâng cao chất lượng quản lý và phục vụ đề đạt được mục tiệu kinh doanh cũng như đề có thê tồn tại

ở môi trường kinh doanh Khách sạn đây cạnh tranh Đề giúp cho việc quản lý khách sạn

dễ đàng và tiện lợi hơn, với đề tài: Xây đựng hệ thống quản lý khách sạn, nhóm 2 chúng

em đã sử dụng ngôn ngữ C++ đề tiến hành thiết kế giao diện hệ thống và sử dụng My SQL đề lưu trữ đữ liệu, tạo nên một hệ thông quản lý khách sạn hoàn chỉnh đáp ứng được yêu cầu trong phần mô tả Đề thực hiện và hoàn thành hệ thống này, nhóm chúng em đã nhận được sự giúp đỡ, dạy bảo của thầy Cù Nguyên Giáp — giảng viên khoa Hệ thống

thông tin Kinh tế và Thương mại điện tử trường Đại học Thương Mại

Nhóm 2 chúng em xin chân thành gửi lời cảm ơn đến thầy giáo đã giúp đỡ, chỉ bảo

để nhóm có thể hoàn thiện được bài báo cáo

Trang 5

lượt khách nghỉ, thời lượng nghỉ, gặp vấn đề trong việc quản lý nhân viên

Hiện nay, trên thị tường có rất nhiều phần mềm quản lý khách sạn với rất nhiều tính năng với những mức giá khác nhau Tuy nhiên để lựa chọn được hệ thống quản lý tối ứu

nhất, phù hợp nhất với bài toán quản lý của khách sạn mính lại là điều làm cho nhà quản

Đề tài được nguyên cứu với các mục đích sau:

- - Quản lý khách sạn là một khối nghiệp vụ hết sức phức tạp, đòi hỏi một hệ thong quản lý chặt chẽ, thuận tiện và có hiệu quả cao

- Dé tai vừa có giá trị trong thực tế vừa có giá trị trong việc học tập của những sinh viên như chúng em

- - Sau khi thực hiện đề tài, sinh viên vừa nắm được vững hơn kiến thức môn học vừa

bồi dưỡng cho bản thân thêm kiến thức về nghiệp vụ quản lý trong các doanh nghiệp, công ty góp phần nâng cao trình độ chuyên môn của mỗi cá nhân

Trang 6

I MÔ TẢ HỆ THÓNG

Hiện nay, trong khi đời sống con người nâng cao, nhu cầu du lịch ngày càng phát trién thì nhu cầu tìm những khách sạn có phòng nghỉ chất lượng và địch vụ tốt để nghỉ ngơi thư giãn ngày càng phố biến Bằng cách truy cập vào các website tìm kiếm thông tin phòng tại khách sạn giúp khách hàng tìm được phòng theo ý thích của mình

Hiện nay, trong khách sạn, các cán bộ làm công tác quản lý thông tin của khách sạn phải quán lý một lượng lớn thông tin về cán bộ công nhân viên, tình trạng phòng Vì vậy ứng dụng tm học vào công tác quản lý thì các công việc như cập nhật thông tin khách hàng, xem các thông tin về dịch vụ của khách sạn, thông tin về só phòng, và nhân viên, hóa đơn thanh toán, tất cả đều làm thủ công nên các cán bộ quản lý phải mắt rất nhiều thời gian mới tổng hợp được những thông tin cần thiết

Hệ thống quản quản lý khách sạn là một hệ thống cung cấp cho người sử dụng, nhà quản lý những thông tin chính xác về các phòng tại khách sạn đang có và cách thức đặt phòng qua mạng Các thông tin đều được cập nhật thường xuyên và nhanh chóng, vì vậy rút ngăn được khoảng cách giữa khách hàng và các khách sạn cung cấp dịch vụ, đưa thông tin về các phòng tại các khách sạn một cách nhanh chóng đến tay khách hàng

Hệ thống quản lý khách sạn gồm những hoạt động chính sau: Quản lý nhân viên; quản lý khách hàng: quản lý phòng: quán ly trang thiết bị phòng; quản lý đặt phòng, nhận phòng; quản lý dịch vụ đi kèm; quản lý trả phòng, thanh toán

Đầu tiên, hệ thống tích hợp cả chức năng quản lý nhân viên làm việc trong khách sạn, giúp quản lý thông tin của từng nhân viên trong khách sạn bao gồm: họ tên, số điện thoại, địa chỉ, chức vụ, ngày vào làm, số CMND Mỗi nhân viên sẽ có một mã nhân

viên duy nhất, một người quản lý trực tiếp, thuộc một bộ phận nhất định Cuỗi tháng, mỗi

nhân viên sẽ nhận được mức lương tương ứng với bộ phận, chức vụ, ngày công, của minh

Hệ thống chỉ cho phép người quản lý nhân sự thực hiện những chức năng sau: Cập nhật thông tin của nhân viên khi có thay đôi về họ tên, bộ phận,ngày làm, số CMND Việc cập nhật này được lây thông tin dựa theo thông tin do nhân viên cung cấp Tra cứu thông

Trang 7

tin nhân viên khi cần thiết và hủy bỏ thông tin cá nhân của nhân viên khi nhân viên đó

nghỉ việc, nghỉ hưu

Hệ thống cho phép người chủ của khách sạn thực hiện chức năng sau: Lập danh sách

thông tin cá nhân của tất cả các nhân viên trong khách sạn, danh sách gồm : mã nhân viên,

họ tên, ngày sinh, địa chỉ, giới tính, bộ phận mà nhân viên đó trực thuộc Danh sách này giúp người quản lý dễ dàng hơn trong quản lý, kiểm soát được toàn bộ nhân viên của mình trong quá trình làm việc

Với chức năng quản lý khách hàng, mỗi khi có khách hàng đặt phòng thì bộ phận

lễ tân ghi lại thông tin khách hàng Thông tin bao gồm: Họ tên, giới tính, địa chỉ, điện thoại Fax(nêu có), Email(nếu có), số CMND_ Passport(hoặc các văn bằng khác có hình),

quốc tịch Sau đó dữ liệu về khách hàng được chuyển cho bộ phận quản lí lưu trữ Bộ

phận

quản lí sẽ quán lí thông tin của các khách hàng như họ tên, ngày sinh, địa chỉ

Mục đích: để có thê có những chương trình chăm sóc khách hàng phù hợp và xác định được những khách hàng tiềm năng, ngoài ra với những khách hàng là khách hàng thường xuyên của khách sạn có thể có những chương trình khuyên mãi dành riêng cho các khách hàng này

Chức năng quản lý phòng của hệ thống giúp người nhân viên tiếp tân của khách sạn theo dõi tinh trang của tất cả các phòng nhằm mục đích tông hợp, nhập dữ liệu , lưu trữ và rồi tự động thống kê xem ngày đó khách sạn có bao nhiêu phòng hoạt động, giá của từng loại phòng, loại phòng đó là phòng gì (phòng đơn hay đôi), vị trí sơ đỗ của các

phòng đề từ đó bồ trí cho khách hàng đến đăng kí

Hệ thống cho phép người quản lý thực hiện các chức năng quản lý phòng: tra cứu phòng ( giá phòng, loại phòng, vị trí, hoạt động ); thêm phòng vào hệ thống khi có phòng mới bắt đầu đưa vào sử dụng, cập nhật lại hoạt động hoặc giá của phòng khi có sự thay đối: xóa phòng khi phòng đó không còn được đưa vào hoạt động Nhân viên lễ tân thao tác trên chức năng tra cứu phòng cũng như tình trạng đề đặt phòng cho khách

Hệ thống cũng sẽ có chức năng quản lý trang thiết bị từng phòng để có thẻ dễ dàng kiểm kê tài sản Hàng ngày, bộ phân quán lí sẽ cập nhật thông tin về tình trạng thiết

Trang 8

bị của từng phòng để tránh việc thất thoát hoặc có những biện pháp xử lí như bảo trì, sửa chữa kịp thời Ngoài ra nêu hư hại do khách hàng bộ phận tài chính sẽ ghi nhận đề lập phiều thu vào ngày khách hàng trả phòng

Hệ thống chỉ cho phép người quản lý thực hiện các chức năng của quán lý tiện nghĩ: tra cứu chỉ tiết trang thiết bị từng phòng( số lượng, chất lượng, tình trạng ); thêm số lượng trang thiết bị của từng phòng khi có sự thêm mới từ phía khách sạn; cập nhật khi có sự thay đôi, sửa chữa, ; xóa khi tiện nghĩ bị thay đôi, hư hỏng, mat cap,

Khi khach hang dén thué phòng hoặc gọi điện đặt phòng, nhân viên lễ tân sẽ đề

nghị khách hàng cung cấp thông tin cá nhân và loại phòng mà khách hàng muốn chọn Sau đó gửi yêu cầu của khách hàng đến bộ phận quản lí Đây là hoạt động nằm trong chức nang Quan ly dat phòng, nhận phòng

Bộ phận quản lí phải kiểm tra tình trạng các loại phòng mà khách hàng cần thuê để xem còn bao nhiêu phòng trống, phòng nào đã được đặt trước, phòng nào đang có khách lưu trú hay phòng nào đang được sửa chữa, Sau đó, bộ phận quản lí cung cấp thông tin về loại phòng đó cho nhân viên lễ tân Và cuối cùng, nhân viên lễ tân cung cấp thông tin cho khách hàng và tiễn hành bồ trí phòng theo yêu cầu của khách hàng

Hệ thống còn có chức năng Quản lý dịch vụ đi kèm với việc quản lý các dịch vụ và tiện ích của khách sạn để phục vụ khách hàng Khách thuê phòng thường sử dụng các dịch vụ của khách sạn như: dịch vụ ăn uống, giặt ủi, karaoke, điện thoại, thuê xe Mỗi dịch vụ phát sinh phải được ghi nhận hàng ngày để bộ phận tài chính lập phiêu thu vào ngày khách hàng trả phòng

Hệ thống cho phép người quản lý thực hiện các chức năng quản lý dịch vụ: tra cứu các

dịch vụ sẵn có, thêm khi khách sạn có sự bô sung các dịch vụ mới, cập nhật lại các dịch

vụ nếu có sự thay đổi, xóa dịch vụ khi khách sạn huỷ bỏ dịch vụ đó Nhân viên lễ tân thao

tác trên chức năng tra cứu dịch vụ đề giúp khách hàng biết rõ về các dịch vụ của khách hàng, gợi ý cho khách hàng lựa chọn dịch vụ phù hợp, làm đễ dàng trong việc khách hàng lựa chọn dịch vụ và cuối cùng khi khách hàng chọn được dịch vụ phù hợp nhân viên sẽ thao tác trên chức năng này đề đặt dịch vụ cho khách hàng

Trang 9

Cuối cùng, chức năng quản lý trả phòng, thanh toán cho phép thực hiện việc quản lý trả phòng và thanh toán đối với khách thuê Vào ngày khách hàng trả phòng nhân viên lễ tân sẽ đưa hóa đơn cho bộ phận quán lý đã lập để khách hàng thanh toán (hóa đơn gồm tiền phòng, các dịch vụ phát sinh-nếu có, các chương trình khuyên mãi-nếu có ) Sau đó, bộ phận quản lí số tiền thu để lập báo cáo doanh thu hàng ngày, đồng thời bộ phận quản lí sẽ đưa mã phòng đó (phòng khách hàng vừa trả) vào danh mục phòng trồng

Và tiếp tục, qui trình đặt phòng nhận phòng tiếp tục diễn ra

1 Mục tiêu hệ thông cần đạt được

- _ Cho phép nhân viên quản lý và theo đối chính xác thông tin khách hàng, phòng ốc

1 cách chính xác, tra cứu, thống kê kết quả

- _ Đảm bảo cơ sở đữ liệu bảo mật và có độ tin cậy cao: đữ liệu khách sạn, phòng ốc,

dịch vụ phát sinh đi kèm

- _ Dựa vào kiến thức đã học và thực tế, đề tài quản lý khách sạn:

+ Tin hoc hoa công tác quản lý nhân viên, khách hàng, buông phòng

+ Tin học hóa quy trình đăng kí, đặt phòng, trả phòng, nhận phòng

+ Tin học hóa việc cung cấp dịch vụ cũng như thanh toán cho khách hàng + Tổng hợp, phân tích các báo cáo một cạch tự động cho nhà quản lý khách sạn Như vậy, các nhiệm vụ trong quản lý khách sạn sẽ thuận tiện, dễ đàng hơn, các nhiêm vụ cũng có tính năng riêng biệt, độc lập nhưng vẫn có sự liên kết, thống nhất với nhau

2 Database

- Thong tin, tinh trang hién tai cua khach san

- _ Yêu cầu của khách hàng khi đặt hàng

3 Các chức năng quản ly thong tin

3.1 Quản lý nhân viên

- _ Nhân viên: Họ tên, số điện thoại, địa chỉ, chức vụ, ngày vào làm, số CMND

- Người quản lý nhân sự:

+ Cập nhật

Trang 10

+ Hủy bỏ

- - Người chủ khách san:

+ Lập danh sách thông tin cá nhân của nhân viên: mã nhân viên, ngày sinh, địa

chỉ, sô điện thoại, giới tính, bộ phận làm việc

3.2 Quản lý khách hàng

- Lé tan: ghi lại thông tin khách hàng: họ tên, ngày sinh, số điện thoại, email, CMND,

hộ chiêu, quốc tịch => chuyên cho bộ phận quản lý lưu trữ

Cập nhật hoạt động hoặc gia

Xóa phòng khi k còn hoạt động (khách trả phòng)

3.4 Quản lý trang thiết bị từng phòng

- _ Cập nhật tình trang của trang thiết bị từng phòng

- _ Tra cứu chi tiết tình trạng

- - Thêm mới

- _ Xóa khi thiết bị không còn tôn tại

3.5 Quản lý đặt phòng, nhận phòng

- _ Nhận thông tin từ nhân viên lễ tân về yêu cầu phòng của khách thuê, gửi yêu cầu đến

bộ phận quản lý => kiểm tra tình trạng phòng => bố trí phòng cho khách

3.6 Quản lý dịch vụ đi kèm

Trang 11

dua khach hang

- Nguoi quan ly:

+ Tra cứu dịch vụ

+ Thêm dịch vụ

+ Cập nhật thông tin cia dịch vụ

+ Xóa dịch vụ hiện có

3.7 Quản lý trả phòng, thanh toán

- _ Bộ phận tài chính đưa hóa đơn => lập báo cáo doanh thu

Tiến hành đưa phòng đã trả vào danh mục phòng trồng

4 Ngôn ngữ lập trình va cai dat

- _ Hệ thống sử dụng ngôn ngữ C++ đề tiền hành thiết kế và hoàn thiện

5 Hé quan trị cơ sở dữ liệu

5.1 Giới thiệu về My SỢL

CSDL, là một hệ thống lưu trữ thông tin được sắp xếp rõ ràng, phân lớp ngăn nắp những

thông tin ma minh lưu trữ Vì thé, ban có thé truy cập dữ liệu một cách thuận lợi, nhanh

chóng MySQL hỗ trợ đa số các ngôn như lập trình

- My§QL là hệ quản trị cơ sở dữ liệu tự đo nguồn mở phổ biến nhất thê giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng Vì MySQL là cơ sở

dữ liệu tốc độ cao, ôn định và dễ sử dụng, có tính khả chuyền, hoạt động trên nhiều hệ điều hành cung cấp một hệ thông lớn các hàm tiện ích rất mạnh Với tốc độ và tính bảo

mật cao, MySQL rất thích hợp cho các ứng đụng có truy cập CSDL trén internet MySQL miễn phí hoàn toàn cho nên bạn có thể tải về MySQL từ trang chủ Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS,

5.2 Loiich khi sử dụng

Trang 12

Tốc độ: MySQL rất nhanh Những nhà phát triển cho rằng MySQL là cơ sở dữ liệu

nhanh nhất mà bạn có thẻ có

Dé sir dung: MySQL tuy có tính năng cao nhưng thực sự là một hệ thông cơ sở đữ liệu rất đơn giản và ít phức tạp khi cài đặt và quản trị hơn các hệ thông lớn Giá thành: MySQL là miễn phí cho hầu hết các việc sử dụng trong một tô chức

Hỗ trợ ngôn ngữ truy vấn: MySQL hiểu SQL, là ngôn ngữ của sự chọn lựa cho tất

cả các hệ thống cơ sở đữ liệu hiện đại Bạn cũng có thể truy cập MySQL bằng cách

sử dụng các ứng dyng ma hé tre ODBC (Open Database Connectivity -m6t giao thức giao tiếp cơ sở đữ liệu được phát triển bởi Microsoft)

Năng lực: Nhiều client có thể truy cập đến server trong cùng một thời gian Các client có thể sử đụng nhiều cơ sở dữ liệu một cách đồng thời Bạn có thể truy cập MySQL tương tác với sử dụng một vài giao diện để bạn có thể đưa vào các truy vấn và xem các kết quả: các dòng yêu cầu của khách hàng, các trình duyệt Web

Kết nối và bảo mật: MySQL được nỗi mạng một cách đầy đủ, các cơ sở dữ liệu có

thê được truy cập từ bất kỳ nơi nào trên Internet do đó bạn có thê chia sẽ đữ liệu của bạn với bắt kỳ ai, bất kỳ nơi nào Nhưng MySQL kiểm soát quyền truy cập cho

nên người mà không nên nhìn thay dữ liệu của bạn thì không thể nhìn được

Tính linh động: MySQL chạy trên nhiều hệ thống UNIX cũng như không phải UNIX chang han nhu Windows hay OS/2 MySQL chạy được các với mọi phần cứng từ các máy PC ở nhà cho đến các máy server

Sự phân phối rộng: MySQL rất dễ dàng đạt được, chỉ cần sử dụng trình đuyệt web của bạn Nếu bạn không hiểu làm thế nào mà nó làm việc hay tò mò về thuật toán,

bạn có thê lấy mã nguồn và tìm tòi nó Nếu bạn không thích một vài cái, bạn có thé

thay đôi nó

Sự hỗ trợ: Bạn có thẻ tìm thấy các tài nguyên có sẵn mà MySQL hỗ trợ Cộng

đồng MySQL rất có trách nhiệm Họ trả lời các câu hỏi trên mailing list thường chỉ

trong vài phút Khi lỗi được phát hiện, các nhà phát triển sẽ đưa ra cách khắc phục trong vài ngày, thậm chí có khi trong vài giờ và cách khắc phục đó sẽ ngay lập tức

Trang 13

I CÁC SƠ ĐỎ

mô hình khách san

X

Chủ sở hữu Quản lý Nhân viên

Trang 15

II ` GIẢI THÍCH HƯỚNG LÀM

1 Class person

- Khai bao thu vién va tạo một lớp person voi cac thudc tinh: Hoten la ho tén đối tượng,

gioitinh là giới tính đôi tượng, điachi là địa chỉ của đối tượng và tat ca theo kiểu char cmnd la chimg mình nhân dân, sđ là số điện thoại và theo kiểu int ngaysinh la ngay tháng năm sinhv và là l struct bao gồm ngay, thang, nam theo kiéu int, được viết là

- _ Khai báo hàm khởi tạo có tham số mặc định và hàm hủy

//ham tao vot tham so mạc dinh

person(char *hoten =" ", char *gioitinh =" ", char *diachi =" ",int day = 9, int month = @, int year = @, int cmnd = 9, int sdt z 0)

Trang 16

- Ta có voiđin_person đề nhập các thông tin chung của đối tượng và voiở owf_ person là xuất thông tin, str dung setw() dé can chinh

void in_person()

fflush(stdin);

cout<<"Ho va ten: "; cin.getline(this->hoten, 100);

cout<<"Gioi tinh: "; cin.getline(this->gioitinh, 4);

cout<<"Dia chi: "; cin.getline(this->diachi, 100);

cout<<"Ngay thang nam sinh: “;

2 Class nhanvien

- Class nhanvien dé quan ly các thông tin của nhân viên của khách sạn

- _ Khai báo các thư viện và file “person.cpp”

- _ Class nhanvien được kế thừa công khai class person với những thuộc tính riêng là:

bophan là bộ phận, maNV là mã nhân viên với kiêu char

ngaylam là ngày bắt đầu đi làm của nhân viên và là l struct gồm gay, thang, nam

kiéu int, duoc viet la nl

Trang 17

21 nhanvien(char *hoten =” ", char *gioitinh =” "”", char *diachi =” ", int day = 9, int month = 0,

35 //chong toan tu nhap

36 friend istream & operator>>(istream &is, nhanvien &nv)

37 {

38 is.ignore();

39 cout<<"MaNV: "; is.getline(nv.maNV, 5@);

40 nv.in_person();

41 cout<<"Bo phan: "; is.getline(nv.bophan, 50);

42 cout<<"Ngay vao lam: ";

43 is>>nv.nl.ngay>>nv.nl.thang>>nv.nl.nam;

46 //chong toan tu xuat

47 friend ostream & operator<<(ostream 05, nhanvien &nv)

Class khachhang đề quản lý các thông tin của khách hang của khách sạn

Khai bao cac thu vién va file “person.cpp”

Class khachhang được kê thừa công khai class person với những thuộc tính riêng là: maKH là mã khách hang theo kiều char

Trang 18

//chong toan tu xuat

Trang 19

tên dịch vụ kiêu char, giaDV là giá dich vu kiéu float

+ Vitinh chat đóng gói của LTHDT đề có thể sử dụng được các thuộc tính thì phải có

ham dé cho class được kế thừa class đichvu có thé truy cap duge, float get giaDV()

là trả về giá trị giá tiền của địch vụ, char *get_ maDV() la tra vé gia tri ma dich vụ

236

Trang 20

- Class thietbi đề quản lý các thiết bị của khách sạn

- _ Khai báo các thư viện và các thuộc tính: maTB là mã thiết bị kiểu char, tenTB là

tên thiết bị kiểu char, giaTB là giá thiết bị kiểu float

+ Vitinh chat đóng gói của LTHDT đề có thể sử dụng được các thuộc tính thì phải có

ham để cho class được kế thừa class thietbi có thể truy cập được, char

*get_ maTB() la tra vé gia tri cua ma thiét bi

Trang 21

om

is.ignore();

27 cout<<"Gia thiet bi: "; is>>tb.giaTB;

- Class phong dé quan ly cac phong cua khach san

- Khai bao cac thu vién và các thuộc tính: zzP là mã phòng, /oaiP là loại phòng kiều char, giaP la gia phong thué 1 ngay kiéu float, tinhtrang la tinh trang phong trong hay

có người thué kiéu int va fang là tầng phòng kiểu int

Trang 22

ham để cho class được kế thừa class phong co thé truy cap duge, char *get_maP()

la tra vé gia tri cua ma phong, float get _giaP() là trả về giá trị của giá tiền thuê phong, int get_tinhtrang/() là trả về giá trị của tình trang phong, void

set_tinhtrang(int a) la gan tinh trang cụa phòng giá trị là a

friend istream & operator>>(istream Sis, phong 8p)

{

is.ignore();

cout<<"Ma phong: "; is.getline(p.maP, 50);

cout<<"Loai phong: is.getline(p.loaiP, 5@);

cout<<"Gia phong: "; is>>p.giaP;

chong toan tu xuc

friend ostream & operator<<(ostream Bos, phong &p)

os<<setw(20)<<left<<p.maP<<setw(20)<<p loaiP<<setw(20)<<setprecision(3@)<<p.giaP<<setw(15)<<p tang<<setw(2@)<<p tinhtrang<<end]; }

Khai báo các thư viện và các thuộc tính:

+ ngaydangki la ngay bat đất thuê phòng và ngayketfhue là ngày hết hạn thuê và cả

2 đều là struct bao gồm lần lượt 1a ngaydk, thangdk, namdk, ngaykt, thangkt, namkt kiéu int

+ phantiendu la phan tién nhô lên hoặc hụt di sau khi khách hàng thanh toán hóa đơn, bao gồm tiền phòng và địch vụ (nếu có)

+ /hanhưoan là số tiền khách hàng tra kiéu float

+ /ongfien hoadon là tông sô tiền bao gồm tiền phòng thuê trong bao nhiêu ngày và

sử dụng dịch vụ (nêu có) kiêu float

Trang 23

+

ma NƯDP là mã nhân viên sử dụng chức năng kiểu char

ma KHDP là mã khách hàng đặt phòng kiểu char

ma_HD là mã hóa đơn sau khi phòng được đặt kiéu char

gia PDP la gia phong duoc dat kiéu char

Tạo hàm khởi tạo với tham số mặc định và hàm hủy

Aanshong im == ~ ®; it thangdk = 9, int namdk = ©, int ngaykt = @, int thangkt = @, int namkt ~ 9, float thanhtoan ~ @, float antes -

cer “to = * “ float giaDVDOV = 6, flost tongtien_hoaden = @)

:phong(maP, loaiP, giaP, tang, tinhtrang)

Trang 24

+ Sử dụng toán tử nhập xuât operator >> va << đề nhập xuât các thông t của

class dafphong gôm mã hóa đơn, ngày bat dau và kết thúc thuê phòng Trước hàm tongtien ta dùng sefprecision() đề chỉnh định chữ sô xuât hiện

friend istream & operator>>(istream &is, datphong &dp)

cout<<"Ma hoa don: "; is.getline(dp.maHD, 58);

veid hienthi_HOADON(int i)

{

cout<<setw(25)<<left<<this->maHD<< setw(25)<<this- >maKHDP<<setw(25)<<this- >maNVDP<<setprecision(30)<<this->tongtien(i)<<end];

+ Ta có hàm float tongtien(int i) dé tinh tổng tiền trong hóa đơn của khách hàng bao gồm thuê phòng trong số ngày và địch vụ (nếu có)

+ Tacé ham void ThanhToan(int i) đề tính ra hiệu số tiền của khách hàng với hóa đơn, nêu khách hàng đưa nhiều tiền thi in ra Thoi /a¡: sô tiền đư, nêu khách đưa đủ thi in ra Tra du, con khéng thi in ra Khách no: số tiền khách thiểu

79

82 int SoNgay = (this->NKT.ngaykt - this->NDK.ngaydk) + 30*(this->NKT.thangkt - this->NDK.thangdk);

83 this->tongtien_hoadon = this->giaPDP*SoNgay + this->giaDVDDV;

89 cout<<"So tien: "; cin>>this->thanhtoan;

90 int SoNgay = (this->NKT.ngaykt - this->NDK.ngaydk) + (this->NKT.thangkt - this->NDK.thangdk) ;

91 this->phantiendu = this->thanhtoan - this->giaPDP*SoNgay - this->get_giaDVDDV();

+ Vitinh chat đóng gói của LTHDT để có thể sử dụng được các thuộc tính thì phải có

ham dé cho class được kế thừa class dafphong có thể truy cập được, các hàm đó bao gom: char *get maKHDP(), char *get_maNVDP(), char *get_maPDP(), char

*get maHD(), float get giaPDP(), float get giaDVDDV))

Trang 25

+ Tat ca nhimg ham void set là gan giá trị của thuộc tinh trong class muc dich dé

lưu giá trị của thuộc tính để tạo hóa đơn, các hàm đó gồm: void

*set_ maPDP(char

*ma), void *set maNVDP(char *ma), void *set_ maKHDP(char *ma),

void set_giaPDP (float gia), void set_giaDVDDV (float gia)

void set_giaDVDDV(float gia)

Class chuc nang la tat cả các chức năng của các lớp trên và thêm các chức năng như

them, xóa, hiển thị các chức năng đó

Khai báo thư viện và các thuộc tính là các vector của các class kế thừa

Sử dụng vector cho việc nhập hay xóa thông tin của I đối tượng nào đó đễ dàng hơn

Trang 27

8.1 Chức năng nhập thông tin

Tại chức năng nhập, ta sử dụng toán tử nhập đề nhập thông tin và hàm vector push backQ)

đê chèn phân tử cuôi cùng của vector

Trang 28

8.2 Chức năng xóa một thông tin bat ki

Tại chức năng này, ta nhập mã của đối tượng mình muốn xóa, nêu mã đó trùng với mã có sẵn trong danh sách, ta dùng hàm erase() của vector để xóa đi phần tử đó

78 for(int i = @; i < ds_khachhang.size(); i++)

Trang 29

cout<<" <= | NHAP THONG TIN NHAN VIEN MUON XOA |=

cout<<"Nhap ma Nhan vien: "; cin.getline(ma, 50);

cout<<"Nhap ma Dich vu: ";

Trang 30

652 cout<<"\n <=: | NHAP THONG TIN THIET BI MUON XOA [= >"<<endl;

8.3 Xóa toàn bộ danh sách

Tại chức năng này, ta sử dụng hàm c/ear() dé xóa toàn bộ danh sách đã nhập

Trang 31

else cout<<"DANH SACH KHACH HANG TRONG! "<<end]l;

Xóa toàn bộ danh sách khách hàng

void delete all NV()

else cout<<"DANH SACH DICH VU TRONG!"<<endl;

Xóa toàn bộ danh sách dịch vu

else cout<<"DANH SACH PHONG TRONG!"<<end1l;

Xóa toàn bộ danh sách phòng

Ngày đăng: 03/02/2025, 16:34