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

Đề tài “xây dựng phần mềm quản lý nhà trọ

40 0 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 đề Xây Dựng Phần Mềm Quản Lý Nhà Trọ
Tác giả Phạm Bá Thành, Lê Quang Lâm, Trương Hoàng Quang
Người hướng dẫn TS. Lê Văn Vinh
Trường học Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đồ Án Cuối Kì
Năm xuất bản 2023
Thành phố Thành Phố Hồ Chí Minh
Định dạng
Số trang 40
Dung lượng 5,15 MB

Nội dung

Mô tảKhách hàng tìm kiếm thông tin phòng trọ phù hợp ở khu vực mình ở, chọn loại phòng, các loại dịch vụ phù hợp với nhu cầu và mức giá.Khách hàng phải cung cấp thông tin cho chủ trọ khi

Trang 1

ĐỒ ÁN CUỐI KÌ

MÔN LẬP TRÌNH WINDOWS

MÃ LỚP: WIPR230579_22_2_09NHÓM THỰC HIỆN: NHÓM 06GIÁO VIÊN HƯỚNG DẪN: TS Lê Văn Vinh

Thành phố Hồ Chí Minh, tháng 6 năm 2023

BỘ GIÁO DỤC VÀ ĐÀO TẠOTRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬTTHÀNH PHỐ HỒ CHÍ MINHKHOA: CÔNG NGHỆ THÔNG TIN

ĐỀ TÀI

“XÂY DỰNG PHẦN MỀM QUẢN LÝ NHÀ TRỌ”

Trang 2

DANH SÁCH SINH VIÊN THAM GIA THỰC HỆN

HỌC KÌ 2, NĂM HỌC: 2022 – 2023

Nhóm 06 Tên đề tài: Xây dựng phần mềm quản lí nhà trọ

ST

Mã số sinh viên

Tỉ lệ hoàn thành

Ghi chú:

- Tỉ lệ: 100%

- Trưởng nhóm: Phạm Bá Thành

Nhận xét của giáo viên:

Ngày tháng năm Giáo viên chấm điểm

MỤC LỤ

Trang 3

CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI 1

1 Lí do chọn đề tài 1

2 Mục tiêu phát triển 1

3 Đối tượng 1

4 Mô tả 2

CHƯƠNG 2: CƠ SỞ LÍ THUYẾT 3

1 Mô hình 3 tầng 3

2 Các công nghệ kết nối cơ sở dữ liệu 4

2.1 ADO.NET framework 4

2.2 Ngôn ngữ LINQ 5

2.3 Entity framework 5

3 Các công cụ hỗ trợ 6

CHƯƠNG 3: PHÂN TÍCH CHƯƠNG TRÌNH 7

1 Mô tả yêu cầu 7

2 Phân tích nhu cầu và dữ liệu 7

2.1 Quản lí phòng 7

2.2 Quản lí khu vực 7

2.3 Quản lí loại phòng 8

2.4 Quản lí dịch vụ: 8

2.5 Quản lí khách hàng 8

3 Các chức năng chính 8

3.1 Chức năng lưu trữ 8

3.2 Chức năng nghiệp vụ 8

3.3 Chức năng báo cáo 8

4 Mô hình cơ sở dữ liệu 9

CHƯƠNG 4: THÀNH PHẦN CHƯƠNG TRÌNH 13

1 Danh mục giao diện 13

1.1 Thanh chức năng 15

Trang 4

1.2 Thanh thống kê 20

1.3 Thanh thêm 22

1.4 Thanh quản lí 23

1.5 Thanh tài khoản 24

2 Kiến trúc phần mềm 26

PHẦN KẾT LUẬN 29

PHỤ LỤC BẢNG 30

PHỤ LỤC HÌNH ẢNH 31

PHỤ LỤC – BẢNG PHÂN CÔNG NHIỆM VỤ TRONG NHÓM 33

TÀI LIỆU THAM KHẢO 34

Trang 5

CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI

1 Lí do chọn đề tài

Trước đây, quản lí nhà trọ thường phụ thuộc vào các công cụ và quy trình thủcông như viết tay, sử dụng giấy tờ, sổ sách để ghi nhận thông tin khách hàng, lậpbảng kê thu chi, và quản lí phòng trống Nhưng với sự phát triển của công nghệthông tin hiện nay thì chúng ta cần một giải pháp nhanh chóng, tiết kiệm thờigian và hiệu quả hơn

Xây dựng một phần mềm quản lí nhà trọ là một lựa chọn hợp lý và cần thiết

để đáp ứng nhu cầu ngày càng tăng về nhà trọ trong xã hội hiện đại Phần mềmnày giúp tổ chức và quản lí các thông tin về khách hàng, phòng trống, đặtphòng, thu tiền và quản lí tài chính một cách hiệu quả và tự động hóa Điều nàykhông chỉ giúp tiết kiệm thời gian và công sức cho nhà quản lí, mà còn đảm bảotính chính xác và tin cậy trong các hoạt động kinh doanh Bên cạnh đó, phầnmềm cũng mang lại sự tiện lợi cho khách hàng khi cho phép họ dễ dàng đặtphòng, thanh toán và theo dõi tình hình thuê trọ

Vì thế, sau khi có kiến thức môn lập trình Window, nhóm chúng em quyếtđịnh xây dựng “Phần mềm quản lí nhà trọ”

2 Mục tiêu phát triển

Xây dựng phần mềm cung cấp đầy đủ thông tin người thuê, về loại phòngthuê, khu vực thuê, tình trạng phòng thuê và các dịch vụ đi kèm phòng thuê đó.Quản lí được doanh thu, các hợp đồng cho nhà trọ

Giúp cho việc quản lí nhà trọ trở nên dễ dàng, thuận tiện hơn, giảm thiểu tínhthủ công, chân tay Mang lại hiệu quả cho việc quản lí thu chi mỗi tháng của nhàtrọ Phần mềm xây dựng cần mang tính trực quan, tối ưu và dễ sử dụng

3 Đối tượng

- Người chủ khách trọ

- Khách thuê trọ

1

Trang 6

4 Mô tả

Khách hàng tìm kiếm thông tin phòng trọ phù hợp ở khu vực mình ở, chọnloại phòng, các loại dịch vụ phù hợp với nhu cầu và mức giá

Khách hàng phải cung cấp thông tin cho chủ trọ khi đăng kí thuê phòng như:

họ tên, năm sinh, chứng minh nhân dân, địa chỉ,… và chủ trọ sẽ nhập, lưu trữcác thông tin của khách hàng trên hệ thống

Chủ trọ cung cấp thông tin của phòng trọ và các dịch vụ liên quan, thông báo

về tiền đặt cọc và lập hợp đồng cho thuê

Thêm thông tin người thuê trên hệ thống để quản lí

Tra cứu, thêm, cập nhật thông tin khách hàng, trạng thái phòng Xóa thông tinkhi người thuê rời đi

Chủ trọ xuất hóa đơn tiền phòng, tiền điện, quản lí doanh thu hàng tháng

2

Trang 7

CHƯƠNG 2: CƠ SỞ LÍ THUYẾT

1 Mô hình 3 tầng

Hình 1: Mô hình 3 tầng

Mô hình 3 tầng, trong tiếng Anh được gọi là "Three-Tier Architecture", là một

mô hình phát triển phần mềm phổ biến trong xây dựng ứng dụng Các tầng trong

mô hình 3 tầng bao gồm:

Tầng giao diện người dùng (Presentation Layer): Tầng này chịu trách nhiệmhiển thị thông tin và tương tác với người dùng Nó tương tác trực tiếp với ngườidùng thông qua các giao diện như giao diện đồ họa (GUI) Tầng này chủ yếuchứa các thành phần giao diện người dùng như form, menu, nút bấm,…Tầng Logic (Business Layer): Tầng logic là nơi chứa các luật và quy tắc kinhdoanh của ứng dụng Nó xử lý các yêu cầu từ tầng giao diện người dùng, thựchiện các nghiệp vụ và quyết định logic liên quan đến dữ liệu và quy trình kinhdoanh Tầng này có thể bao gồm các lớp, đối tượng và các phương thức để thựchiện các chức năng nghiệp vụ cụ thể của ứng dụng

Tầng dữ liệu (Data Layer): Tầng dữ liệu là nơi lưu trữ và truy cập dữ liệu củaứng dụng Nó có trách nhiệm đảm bảo tính toàn vẹn và an toàn của dữ liệu

3

Trang 8

Tầng này giao tiếp với các nguồn dữ liệu như cơ sở dữ liệu, tệp tin, dịch vụ web

để thực hiện các thao tác lưu trữ và truy xuất dữ liệu

Mô hình 3 tầng giúp phân chia rõ ràng các trách nhiệm và chức năng của từngtầng, giúp dễ dàng quản lý và bảo trì ứng dụng Nó cũng tạo điều kiện cho việcphát triển đồng thời và độc lập giữa các tầng, cho phép thay đổi hoặc nâng cấpmột tầng mà không ảnh hưởng đến các tầng khác

5 Các công nghệ kết nối cơ sở dữ liệu

5.1 ADO.NET framework

ADO.NET (ActiveX Data Objects NET) là một framework được phát triểnbởi Microsoft cho phép lập trình viên tương tác với cơ sở dữ liệu trong các ứngdụng NET Nó cung cấp các đối tượng và phương thức để thực hiện các hoạtđộng như kết nối đến cơ sở dữ liệu, thực hiện truy vấn, thêm, sửa, xóa dữ liệu và

xử lý dữ liệu trả về từ cơ sở dữ liệu Nó hỗ trợ các nguồn dữ liệu khác nhau nhưMicrosoft SQL Server, Oracle, MySQL,…

Hai phần chính là DataSet và DataProvider Phần DataProvider là các thưviện lớp cung cấp chức năng tạo kết nối đến nguồn dữ liệu, thi hành các lệnhtrên nguồn dữ liệu đó inset, update, delete, read Phần DataSet là các thư việnlớp (độc lập với Data Provider) tạo ra các đối tượng để quản lý dữ liệu khôngphụ thuộc ngồn dữ liệu đến từ đâu

Hình 2: Kiến trúc ADO.NET

4

Trang 9

5.2 Ngôn ngữ LINQ

LINQ (Language Integrated Query) - ngôn ngữ truy vấn tích hợp - nó tích hợp

cú pháp truy vấn (gần giống các câu lệnh SQL) vào bên trong ngôn ngữ lập trìnhC#, cho nó C# khả năng truy cập các nguồn dữ liệu khác nhau (SQL Db, XML,List, ) với cùng cú pháp

Lập trình viên có thể sử dụng các phương thức và toán tử truy vấn tích hợp đểlọc, sắp xếp, nhóm, kết hợp và tính toán dữ liệu từ các nguồn khác nhau LINQ

hỗ trợ các tập hợp dữ liệu như danh sách (List), mảng (Array), tập hợp (Set), cơ

sở dữ liệu (Database) và các nguồn dữ liệu XML,…Với LINQ, việc viết mã truyvấn dễ dàng hơn, dễ hiểu và dễ bảo trì Nó cung cấp một cách tiếp cận khái quát

và thống nhất cho việc truy vấn dữ liệu trong ứng dụng NET, giúp tăng cườngnăng suất và giảm thiểu lỗi

5.3 Entity framework

Entity Framework là một nền tảng được sử dụng để làm việc với databasethông qua cơ chế ánh xạ Object/Relational Mapping (ORM) Nhờ đó, bạn có thểtruy vấn, thao tác với database gián tiếp thông qua các đối tượng lập trình

Hình 3: Kiến trúc Entity frameworkEntity Framework cho phép lập trình viên mô hình hóa cơ sở dữ liệu dướidạng các đối tượng và quan hệ giữa chúng Thay vì viết các truy vấn SQL trực

5

Trang 10

tiếp, lập trình viên có thể làm việc với các đối tượng được định nghĩa trong EF,

và EF sẽ tự động chuyển đổi các hoạt động CRUD (Create, Read, Update,Delete) thành các truy vấn cơ sở dữ liệu tương ứng

Entity Framework hỗ trợ nhiều nguồn cơ sở dữ liệu, bao gồm Microsoft SQLServer, Oracle, MySQL, PostgreSQL và SQLite Nó cung cấp các tính năng nhưlazy loading (tải lười biếng), change tracking (theo dõi thay đổi), caching (bộnhớ đệm), và khả năng tạo ra cơ sở dữ liệu từ các đối tượng được định nghĩa

6 Các công cụ hỗ trợ

- Môi trường lập trình: Microsoft Visual Studio 2022

- Nền tảng: Windows Form App (.NET FRAMEWORK)

- Ngôn ngữ lập trình: C#

- Hệ quản trị cơ sở dữ liệu: SQL Sever 2019

- Thư viện giao diện: DevComponents.DotNetBar2.dll

6

Trang 11

CHƯƠNG 3: PHÂN TÍCH CHƯƠNG TRÌNH

1 Mô tả yêu cầu

Xây dựng phần mềm quản lí nhà trọ phát triển qua 3 phiên bản:

- Phiên bản 1: Sử dụng ADO.NET

- Phiên bản 2: Sử dụng LINQ to SQL

- Phiên bản 3: Sử dụng Entity Framework

Phần mềm xây dựng dựa trên mô hình 3 tầng Các phiên bản đều phải dùngchung một giao diện (forms)

7 Phân tích nhu cầu và dữ liệu

7.1 Quản lí phòng

Quản lí đăng kí thuê phòng: Khi khách đến thuê phòng, chủ trọ phải ghi nhậnlại các thông tin liên quan đến khách trọ để phục vụ quản lí khách trong thờigian họ đăng kí thuê ở Tất cả thông tin đăng ký được nhà trọ quản lí dựa trên

mã khách, họ tên, chứng minh nhân dân, nghề nghiệp, địa chỉ, số điện thoại,ngày đăng kí

Quản lí thông tin nhận phòng: Sau khi thực hiện thủ tục đăng kí thuê phòng,khách thuê sẽ được chủ trọ cấp phòng và chính thức ghi nhận thời gian bắt đầuthuê phòng Chủ phòng sẽ lập hợp đồng, thu tiền đặt cọc và cập nhật trạng tháiphòng trên hệ thống

Quản lí việc trả phòng: Khi khách trọ có nhu cầu rời đi, chủ trọ có nhiệm vụkiểm tra lại thông tin khách, những dịch vụ mà họ đã sử dụng, thời gian thuê.Đồng thời, lập hóa đơn thanh toán cho khách dựa trên thông tin người thuê, sốphòng, dịch vụ sử dụng và thời gian trả phòng Đối với khách ở qua tháng thì lậphóa đơn mỗi tháng

7.2 Quản lí khu vực

Nhà trọ có các khu vực khác nhau, để quản lí thì hệ thống ghi nhận mã khuvực và tên của khu vực đó

7

Trang 12

7.3 Quản lí loại phòng

Chia các loại phòng thành từng loại để đa dạng hóa nhu cầu của từng đốitượng khách cụ thể, mỗi loại phòng có mã loại phòng, diện tích và mức giá khácnhau

7.4 Quản lí dịch vụ:

Bên cạnh việc thuê phòng, khách hàng còn có nhu cầu sử dụng các loại dịch

vụ Để đáp ứng điều đó, nhà trọ cung cấp các loại dịch vụ và quản lí chúngthông qua mã dịch vụ, tên dịch vụ và đơn giá

- Lưu trữ thông tin tài khoản đăng nhập

- Lưu trữ thông tin khách hàng

- Lưu trữ thông tin thuê, trả phòng

- Lưu trữ thông tin phòng, tình trạng phòng

- Lưu trữ thông tin dịch vụ, các dịch vụ khách sử dụng

- Lưu trữ thông các khu vực cho thuê, các loại phòng

- Quản lí hóa đơn

- Quản lí doanh thu

8.3 Chức năng báo cáo

- Báo cáo danh sách người thuê phòng

- Báo cáo hóa đơn

8

Trang 13

- Báo cáo doanh thu từng tháng

9 Mô hình cơ sở dữ liệu

Hình 4: Sơ đồ cơ sở dữ liệuSau đây là chi tiết từng bảng:

Bảng 3: Bảng dịch vụ

9

Trang 14

Bảng 4: Bảng khu vực

Bảng 5: Bảng loại phòng

Bảng 6: Bảng phòng

Bảng 7: Bảng thông tin đăng kí phòng

10

Trang 15

GioiTinh nvarchar(50), null

Bảng 8: Thông tin khách

MaKhachTro PK, FK, nvarchar(10), not null

Bảng 9: Thông tin thuê phòng

Bảng 10: Bảng trả phòng

Bảng 11: Bảng phiếu thu

11

Trang 16

CHƯƠNG 4: THÀNH PHẦN CHƯƠNG TRÌNH

1 Danh mục giao diện

Khi bắt đầu chạy chương trình, form MyApp sẽ được mở ra Mục đích củaform này là cho người dùng chọn tư cách người đang sử dụng phần mềm – chủtrọ hay là khách thuê

Hình 5: Form MyAppKhi nhấn vào button “Khách thuê”, tức người sử dụng là khách thuê đangmuốn tìm kiếm thông tin phòng và thực hiện điền thông tin cá nhân để gửi đăng

kí nếu thấy được phòng phù hợp, ngược lại có thể bấm hủy trên Form thông tinthuê

12

Trang 17

Hình 6: Form Thông tin thuêCòn khi bấm vào nút “Chủ trọ”, tức người sử dụng là người quản lí nhà trọ,một form Login sẽ hiện ra để thực hiện thao tác đăng nhập, biểu tượng con mắt

để hiển thị/ẩn mật khẩu Chức năng lưu mật khẩu để ghi nhớ cho những lầnđăng nhập sau Sau đó, nút “Login” sẽ kiểm tra thông tin điền có chính xáckhông, nếu sai thì gửi thông báo đã sai tài khoản hoặc mật khẩu

Hình 7: Form LoginNếu đăng nhập thành công, người quản lí sẽ được chuyển đến màn hình quản

lí nhà trọ - form Admin Form này có thể coi là trang chủ chính của phần mềm

để gọi toàn bộ chức năng có trong chương trình Thành phần của nó gồm:

13

Trang 18

- Thanh công cụ gồm có: thanh chức năng, thống kê, thêm, quản lí và tàikhoản - Bên tay trái là thông tin tài khoản, đổi mật khẩu, và đăng xuất Mộtkhung thông tin thống kê chọn khu vực để xem số phòng trống và số phòng đãthuê.

- Chính giữa màn hình chính là khu vực để hiển thị các form chức năng đượcgọi, ta có thể thực hiện gọi nhiều form cùng một lúc và chuyển đổi form, tắtform một cách dễ dàng

9.1 Thanh chức năng

Như đã đề cập, các chức năng chính của phần mềm đều nằm trên thanh công

cụ của form Admin (hình 9) Trước tiên, ta tìm hiểu thanh chức năng, thanh này

có 2 mục đích chính là theo dõi và thực hiện các thao tác

- Theo dõi: trạng thái, danh sách thu tiền

- Thao tác: cho thuê, thêm người, trả phòng, tính tiền phòng

Hình 8: Form Admin+ Chức năng theo dõi trạng thái do form Trạng thái phòng đảm nhiệm Mụcđích của form này là hiển thị danh sách các phòng đã được thuê, các phòng còntrống bằng các treeview

14

Trang 19

Đối với các phòng đã được thuê, khi nhấn vào một phòng bất kì, danh sáchkhách thuê của phòng đó sẽ được hiện ngay listview bên dưới.

Hình 9: Form Trạng thái (hiển thị chọn danh sách phòng đã được thuê)Khi nhấn vào một thông tin của một khách thuê bất kì, form Thông tin kháchhàng sẽ hiện ra, mục đích form này là hiển thị hình ảnh và thông tin liên quancủa khách đang thuê Form này còn có chức năng cập nhật thông tin và thay đổihình ảnh của khách

Hình 10: Form Thông tin khách hàng

15

Trang 20

Đối với danh sách phòng chưa được thuê, khi nhấn vào một phòng bất kì,thông tin của phòng trống đó bao gồm mã phòng, loại phòng, diện tích và giáthuê sẽ được hiển thị trong khung “Thông tin phòng trống” ở bên tay phải.

Hình 11: Form Trạng thái (hiển thị chọn danh sách phòng trống)+ Chức năng theo dõi thứ hai là xem danh sách thu tiền trong form Danh sáchthu tiền Form này giúp người quản lí có thể chọn khu vực, sau đó cho chọn hợpđồng với mã phòng tương ứng trong listview để thực hiện xem chi tiết hóa đơn.Thông tin hóa đơn sẽ xuất hiện và người quản lí nhấn nút “Xác nhận” đã đóngtiền Hệ thống sẽ xóa thông tin vừa mới chọn khỏi danh sách

Hình 12: Form Danh sách thu tiền+ Với thao tác cho thuê, form Cho thuê được xây dựng với 2 mục đích làchứa danh sách các khách đã gửi thông đăng ký ở form MyApp (hình 5) với tư

16

Trang 21

cách là khách thuê Từ đó chủ trọ sẽ xem xét thông tin có hợp lệ hay không đểquyết định cho thuê phòng, nhấn xác nhận lưu và ngày cho thuê.

Hình 13: Form Cho thuê (hiển thị danh sách đăng kí phòng)Mục đích thứ 2 là thực hiện tự nhập thông tin đăng kí cho khách và quyếtđịnh cho thuê bằng cách nhấn lưu và xác nhận ngày cho thuê Khi ở chế độ tựnhập, các thông tin ở mục đích 1 bị khóa không thể nhấn

Hình 14: Form Cho thuê (hiển thị nơi nhập thông tin đăng ký)+ Với thao tác thêm người, form Thêm người thực hiện chức năng thêm ngườivào các phòng được đăng kí cho thuê từ trước đó Người quản lí sẽ chọn khuvực, chọn loại phòng và tìm kiếm tên phòng Khi chọn một phòng, thông tin cáckhách đăng kí của phòng đó sẽ xuất hiện ở listview phía dưới Còn khung thông

17

Trang 22

tin khách đăng kí để thực hiện điền thông tin khách vào Sau khi nhấn lưu, quátrình thêm người vào phòng hoàn tất, thông tin phòng sẽ được cập nhật ngườimới được thêm và lưu ý chỉ có thể thêm 4 người trong 1 phòng.

Hình 15: Form Thêm người+ Với thao tác trả phòng, form Trả phòng thực hiện trả phòng khi kháchphòng đó có nhu cầu rời đi Người quản lí tìm kiếm khu vực, danh sách cácphòng được hiện ra listview bên dưới Khi nhấn vào phòng cần trả, danh sáchkhách ở trong phòng đó được hiện ra listview dưới cùng Khi nhấn xác nhận,căn phòng được trả và hệ thống sẽ cập nhật lại danh sách phòng trống và xóathông tin của khách đã rời đi

Hình 16: Form Trả phòng

18

Ngày đăng: 14/04/2024, 21:26

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

TÀI LIỆU LIÊN QUAN

w