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

Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình

133 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

Thông tin cơ bản

Tiêu đề Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Tác giả Phan Quyết Thắng, Nguyễn Hữu Thiết
Người hướng dẫn TS. Nguyễn Phan Thanh
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 Hệ thống nhúng và IoT
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2024
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 133
Dung lượng 9,82 MB

Cấu trúc

  • CHƯƠNG 1 TỔNG QUAN (18)
    • 1.1 Giới thiệu (18)
    • 1.2 Mục tiêu đề tài (19)
    • 1.3 Tình hình nghiên cứu (20)
      • 1.1.1 Sự phát triển của thị trường cho thuê phòng trọ (20)
      • 1.1.2 Sự phát triển của các nền tảng tìm kiếm phòng trọ (21)
    • 1.4 Đối tượng và phạm vi nghiên cứu (22)
    • 1.5 Phương pháp nghiên cứu (22)
    • 1.6 Bố cục bài báo cáo (25)
  • CHƯƠNG 2 CƠ SỞ LÝ THUYẾT (25)
    • 2.1 HTML, CSS và JavaScript (26)
      • 2.1.1 Giới thiệu về HTML (26)
      • 2.1.2 Giới thiệu về CSS và SCSS (28)
      • 2.1.3 Giới thiệu về JavaScript (30)
    • 2.2 React JS (32)
      • 2.2.1 Giới thiệu về React JS (32)
      • 2.2.2 Ưu điểm của React JS (34)
    • 2.3 Express.JS (35)
      • 2.3.1 Giới thiệu về Express.JS (35)
      • 2.3.2 Ưu điểm của Express.JS (35)
    • 2.4 MongoDB (36)
      • 2.4.1 Giới thiệu về MongoDB (36)
      • 2.4.2 Ưu điểm của MongoDB (36)
    • 2.5 Redux Saga (38)
      • 2.5.2 Ưu điểm của Redux Saga (39)
    • 2.6 Nginx (39)
      • 2.6.1 Giới thiệu về Nginx (39)
      • 2.6.2 Ưu điểm của Nginx (40)
  • CHƯƠNG 3 KHẢO SÁT VÀ PHÂN TÍCH YÊU CẦU (25)
    • 3.1 Khảo sát hiện trạng (41)
    • 3.2 Yêu cầu hệ thống (46)
      • 3.2.1 Yêu cầu về chức năng (46)
      • 3.2.2 Yêu cầu về kỹ thuật (48)
    • 3.3 Sơ đồ thiết kế hệ thống (49)
      • 3.3.1 Lược đồ Use Cases (49)
      • 3.3.2 Đặc tả Use Cases (49)
  • CHƯƠNG 4 THIẾT KẾ HỆ THỐNG (25)
    • 4.1 Kiến trúc hệ thống (66)
    • 4.2 Thiết kế cơ sở dữ liệu (68)
    • 4.3 Sequence Diagram (82)
      • 4.3.1 Người dùng đăng nhập hệ thống (82)
      • 4.3.2 Người dùng đăng xuất hệ thống (82)
      • 4.3.3 Người dùng xem thông tin phòng và tiến hành đặt cọc thuê phòng (82)
      • 4.3.4 Người dùng quản lý thông tin tài khoản (83)
      • 4.3.5 Người dùng xem thông tin phòng đã thuê và thanh toán tiền phòng hàng tháng (84)
      • 4.3.6 Người dùng quản lý thông tin điện năng (85)
      • 4.3.7 Người dùng quản lý hoá đơn (86)
      • 4.3.8 Người dùng báo cáo sự cố (86)
      • 4.3.9 Chủ nhà trọ tạo khu nhà trọ mới (87)
      • 4.3.10 Chủ nhà trọ quản lý và chỉnh sửa thông tin khu nhà trọ (87)
      • 4.3.11 Chủ nhà trọ thêm tầng cho khu nhà trọ (88)
      • 4.3.12 Chủ nhà trọ thêm phòng mới cho khu nhà trọ (88)
      • 4.3.14 Chủ nhà trọ quản lý hoá đơn (89)
      • 4.3.15 Chủ nhà trọ quản lý đặt cọc (90)
      • 4.3.16 Chủ nhà trọ quản lý doanh thu (90)
      • 4.3.17 Chủ nhà trọ quản lý sự cố (91)
      • 4.3.18 Quản trị viên quản lý tài khoản người dùng (92)
      • 4.3.19 Quản trị viên quản lý thông tin các chủ nhà trọ (93)
      • 4.3.20 Quản trị viên quản lý thông tin tiền cọc (93)
      • 4.3.21 Quản trị viên quản lý danh sách sự cố (94)
      • 4.3.22 Quản trị viên quản lý thông tin hoá đơn (94)
    • 4.4 Thiết kế giao diện (95)
      • 4.4.1 Thiết kế giao diện màn hình người dùng khách (96)
      • 4.4.2 Thiết kế giao diện màn hình chủ nhà trọ (106)
      • 4.4.3 Thiết kế giao diện màn hình quản trị viên (115)
  • CHƯƠNG 5 CÀI ĐẶT VÀ KIỂM THỬ (25)
    • 5.1 Công cụ (122)
    • 5.2 Công nghệ (122)
    • 5.3 Cài đặt (122)
      • 5.3.1 Yêu cầu môi trường (122)
      • 5.3.2 Thực thi chương trình (123)
      • 5.3.3 Kiểm thử (125)
  • CHƯƠNG 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN (25)
    • 6.1 Kết luận (127)
    • 6.2 So sánh với các nền tảng khác (127)
    • 6.3 Hướng phát triển (129)
    • 6.4 Đường link thực tế của website (130)
  • TÀI LIỆU THAM KHẢO (131)

Nội dung

Đề tài khoá luận này tập trung vào việc phát triển một giải pháp website toàndiện không chỉ giúp người dùng tìm kiếm phòng trọ một cách dễ dàng mà còn tíchhợp hệ thống quản lý điện năng

TỔNG QUAN

Giới thiệu

Nhà trọ là một hình thức chỗ ở tồn tại từ lâu đời, chúng được ra đời nhằm đáp ứng nhu cầu cơ bản về chỗ ở tạm thời cho người có nhu cầu như sinh viên, công nhân và người lao động nhập cư, v.v Trải qua các thời kỳ, từ những phòng trọ đơn giản đến các khu trọ hiện đại với đầy đủ tiện nghi, nhà trọ đã không ngừng phát triển để theo kịp sự phát triển của xã hội.

Sự công nghiệp hoá, đô thị hoá cùng với sự phát triển của nền giáo dục đại học đã thúc đẩy sự đi lên của mô hình nhà trọ Các yếu tố kinh tế - xã hội đã tác động đến việc thiết kế, giá cả và vị trí của nhà trọ, đồng thời tạo ra nhu cầu cho các phương pháp quản lý và vận hành nhà trọ thông minh hơn.

Trong bối cảnh hiện đại, nhà trọ không chỉ là nơi cung cấp chỗ ở mà còn là một phần quan trọng trong đời sống đô thị Các thách thức như cạnh tranh từ các hình thức chỗ ở mới và nhu cầu về một không gian sống chất lượng cao đòi hỏi nhà trọ phải không ngừng cải tiến.

Nhận thấy nhu cầu đó của thị trường và nhằm đưa ra giải pháp hiệu quả, nhóm đã quyết định nghiên cứu và thực hiện đề tài “Xây dựng website tìm kiếm phòng trọ và quản lý điện năng” Hệ thống có thể đáp ứng yêu cầu tạo mới khu trọ dành cho chủ nhà trọ, quản lý thông tin khách thuê phòng, quản lý chi phí thuê của từng phòng Đồng thời đáp ứng nhu cầu tra cứu, tham khảo, thuê phòng và quản lý phòng trọ của người thuê Mục tiêu của báo cáo này là xây dựng một giải pháp hiệu quả và tối ưu dành cho nhu cầu quản lý phòng trọ và cho thuê trọ, thông qua đó gia tăng hiệu suất kinh doanh Trong cuốn báo cáo này, nhóm sẽ trình bày về cấu trúc và nguyên lý vận hành của hệ thống, cũng như phân tích những ưu điểm và nhược điểm của sản phẩm, đồng thời đưa ra phương hướng phát triển trong tương lai Phạm vi của đề tài sẽ đi sâu vào việc phát triển phần mềm có khả năng đáp ứng các yêu cầu liên quan đến việc quản lý và cho thuê phòng trọ. tiện lợi trong việc đăng ký tài khoản người dùng, tạo lập khu trọ mới và quản lý phòng trọ Với việc ứng dụng các thiết bị phần cứng IoT trong việc thu thập dữ liệu về điện, hệ thống có thể loại bỏ sự phiền phức trong việc ghi lại dữ liệu điện tiêu thụ hàng tháng và giảm sai sót trong quá trình quản lý Ngoài ra, hệ thống được kết nối với cơ sở dữ liệu đám mây để lưu trữ và xử lý dữ liệu phòng trọ và người dùng. Bằng cơ sở dữ liệu MongoDB, hệ thống có thể tự động cập nhật và lưu trữ thông tin phòng trọ, tối ưu thời gian và tài nguyên cho việc quản lý dữ liệu.

Trong quá trình triển khai và kiểm thử hệ thống trong môi trường thực tế, nhóm đã tiến hành các thử nghiệm và kiểm định tính hiệu quả của hệ thống Kết quả chỉ ra hệ thống quản lý và tìm kiếm phòng trọ đạt được hiệu quả đáng kể Hệ thống không chỉ giúp giản lược, tự động hoá quá trình quản lý phòng trọ mà còn giúp tiết kiệm công sức, chi phí cho người chủ khu trọ Và đặc biệt là vấn đề bảo mật, những thông tin lưu trữ trong hệ thống đều là những dữ liệu nhạy cảm, đòi hỏi tính bảo mật cao và cần được quan tâm sâu sắc.

Tựu trung lại, báo cáo này phân tích về một hệ thống quản lý và tìm kiếm phòng trọ, giúp giải quyết nhu cầu về quản lý và hoạt động tìm chỗ ở trong môi trường xã hội Phần sau của báo cáo sẽ đánh giá những tiềm năng phát triển cùng những khó khăn cần khắc phục của hệ thống Mục đích cuối cùng là góp phần vào sự phát triển của lĩnh vực nhà trọ nói riêng và lĩnh vực công nghệ nói chung.

Mục tiêu đề tài

Mục tiêu của đề tài “Xây dựng website tìm kiếm phòng trọ và quản lý điện năng” được xác định như sau:

- Phát triển một nền tảng trực tuyến cho phép người dùng tìm kiếm phòng trọ, xem thông tin phòng và đặt cọc thuê phòng nhanh chóng và thuận tiện.

- Cung cấp các công cụ quản lý phòng trọ và quản lý điện năng dành cho người thuê phòng và người chủ trọ.

- Xây dựng website tích hợp giao diện người dùng dễ tiếp cận, với các chức năng hỗ trợ người dùng quản lý thông tin.

- Phát triển các công cụ giúp tự động hoả việc tính toán hoả đơn tiền phòng , hỗ trợ chủ nhà và người thuê trong việc quản lý tài chính liên quan đến việc thuê và cho thuê phòng trọ.

- Đảm bảo khả năng mở rộng, có thể ứng dụng cho nhiều khu vực và đối tượng người dùng khác nhau, cũng như dễ dàng tích hợp thêm các tính năng mới trong tương lai.

Tình hình nghiên cứu

1.1.1 Sự phát triển của thị trường cho thuê phòng trọ

Trong khoảng thời gian gần đây, thị trường nhà trọ đã chứng kiến sự thay đổi đáng kể, là hệ quả của sự gia tăng nhanh chóng của làn sóng dân nhập cư tại các đô thị lớn Nhu cầu tìm kiếm phòng trọ đang tăng cao, trong đó đối tượng đặc biệt là giới trẻ và người lao động Họ mong muốn tìm cho mình một phòng trọ vừa đáp ứng với điều kiện kinh tế và yêu cầu về vị trí địa lý, vừa tiết kiệm thời gian và công sức. Chính điều đó đã thúc đẩy cho sự ra đời của các nền tảng tìm kiếm phòng trọ cung cấp thông tin đầy đủ và chính xác.

Theo số liệu thống kê từ các chủ trọ ở những khu vực vùng ven TP HCM năm

2022, nhu cầu thuê trọ của công nhân tăng mạnh Trong đó, tỷ lệ lấp đầy lên đến 95

- 100% so với giai đoạn đầu năm chỉ 20 - 30% [1].

Dữ liệu nghiên cứu thị trường vừa công bố mới đây của Batdongsan.com cho thấy, trong tháng 12, nhu cầu cho thuê phòng trọ có nhiều chuyển biến tích cực Cụ thể, trong tháng 12/2023, cả nước ghi nhận lượng tin rao cho thuê phòng trọ chỉ tăng 4% nhưng nhu cầu tìm thuê lại tăng mạnh lên đến 58% TP HCM là thị trường ghi nhận nhu cầu thuê phòng trọ tăng mạnh nhất.Việc nhà nước siết chặt hơn phân khúc nhà trọ đảm bảo phòng cháy chữa cháy khiến nguồn cung nhà trọ đáp ứng tiêu chuẩn cho thuê bị giảm, từ đó tạo đà cho nhu cầu tìm trọ tăng cao [2].

Những tiến bộ của công nghệ và Internet đã mở ra một giai đoạn mới trong việc tìm kiếm và quản lý nhà trọ Sự ra đời của các nền tảng trực tuyến đã thay đổi cách thức kết nối giữa người cho thuê và người thuê trọ, mạng lại sự tiện lợi và hiệu

Với nhu cầu lớn và mang tính thực tiễn như đã đề cập bên trên, các nền tảng tìm kiếm phòng trọ đã được phát triển và ra đời, các ví dụ cụ thể là Phongtro123.com, Chotot.com, Phongtot.vn Họ là các đơn vị cung cấp website tìm kiếm phòng trọ dựa trên các thông tin mà chủ trọ đăng tải, qua đó trở thành cầu nối giữa người có nhu cầu cho thuê phòng và những người có nhu cầu tìm phòng trọ.

Sự phát triển kinh tế - xã hội luôn song hành với lực lượng lao động, chính vì vậy thị trường phòng trọ vẫn còn trong mình dư địa và nội lực để tăng trưởng, là đòn bẩy cho các công cụ phục vụ ra đời và cải tiến, giúp người dùng tìm kiếm và quản lý nơi ở một cách hiệu quả Các công cụ này không chỉ giúp người thuê trọ tiết kiệm thời gian cũng như công sức mà còn hỗ trợ chủ nhà trọ trong việc quản lý tài sản và người thuê của mình một cách thông minh.

1.1.2 Sự phát triển của các nền tảng tìm kiếm phòng trọ

Sự phát triển của các nền tảng tìm kiếm phòng trọ đã đánh dấu bước tiến quan trọng trong việc kết nối người cho thuê trọ và người có nhu cầu tìm trọ Các website và ứng dụng di động là công cụ không thể tốt hơn để thực hiện điều này Tuy nhiên, mặc cho đã có những cải tiến đáng kể, nhưng các công cụ hiện nay vẫn tồn tại những hạn chế nhất định, đặc biệt trong việc quản lý thông tin người thuê phòng và quản lý điện năng.

Các website tìm kiếm phòng trọ hiện nay chủ yếu đánh mạnh vào việc cung cấp thông tin về giá cả, vị trí và tiện ích đi kèm, nhưng lại thiếu vắng các tính năng giúp người dùng theo dõi và quản lý việc tiêu thụ điện năng và các thông tin liên quan đến hoá đơn hàng tháng, thời hạn hợp đồng cho thuê đối với phòng trọ của mình Điều này không chỉ gây khó khăn cho người thuê trong việc theo dõi chi phí hàng tháng mà còn làm tăng thêm gánh nặng quản lý cho chủ nhà trọ, đặc biệt đối với những người sở hữu nhiều khu vực cho thuê.

Nhu cầu về một hệ thống tích hợp quản lý dữ liệu điện năng thông minh ngày càng trở nên cấp thiết, nhằm giúp người thuê và chủ nhà trọ có góc nhìn rõ ràng về mức tiêu thụ điện năng, thông qua đó họ có thể đưa ra các quyết định tiết kiệm chi phí và bảo vệ môi trường.

Sự kết hợp giữa công nghệ thông tin và quản lý điện năng hứa hẹn sẽ mở ra một trang mới cho thị trường nhà trọ, góp phần vào việc kiến tạo một cộng đồng sống xanh và bền vững hơn.

Đối tượng và phạm vi nghiên cứu

Về đối tượng nghiên cứu, nhóm tập trung vào việc phát triển các giải pháp lưu trữ dữ liệu hiệu quả liên quan đến thông tin phòng trọ và quản lý điện năng. Điều này bao gồm việc xây dựng cơ sở dữ liệu để lưu trữ thông tin chi tiết về các phòng trọ, cũng như tích hợp hệ thống quản lý điện năng thông minh Mục tiêu là tạo ra một giao diện người dùng thân thiện, trực quan và dễ tiếp cận, phục vụ mục đích tìm kiếm và quản lý phòng trọ.

Về phạm vi nghiên cứu, phạm vi nghiên cứu của đề tài được xác định dựa trên nhu cầu thực tế của thị trường nhà trọ và quản lý điện năng Đề tài sẽ sử dụng dữ liệu thông qua API của hệ thống thu thập dữ liệu nhà trọ được phát triển bởi nhóm sinh viên tại công ty TNHH Thương mại và Kỹ thuật Thái Bình Các API này sẽ được ứng dụng để tích hợp dữ liệu về hiệu suất tiêu thụ điện năng của các thiết bị nằm trong hệ thống, giúp người dùng nắm bắt được sự tổng quan và chi tiết trong việc quản lý điện năng trong phòng trọ của họ.

Phương pháp nghiên cứu

Để đạt được mục tiêu của đề tài, nhóm sử dụng các phương pháp quan sát, thực nghiệm và phân tích tổng kết kinh nghiệm.

Phương pháp quan sát: Nhóm thu thập thông tin thông qua sát đối với một số khu nhà trọ trong khu vực để xác định những yêu cầu tối thiểu đối với hệ thống.

Tiến hành thử nghiệm: Nhóm thực hiện các bài thử nghiệm hệ thống để đảm bảo tính chính xác và hiệu quả của quá trình lấy dữ liệu điện năng và quản lý phòng trọ.

Phương pháp phân tích tổng kết kinh nghiệm: Đánh giá hiệu quả: Nhóm tiến hành đánh giá hiệu quả của hệ thống dựa trên

Tổng kết kinh nghiệm: Dựa trên phân tích, nhóm tổng kết kinh nghiệm từ việc triển khai hệ thống website tìm kiếm phòng trọ và quản lý điện năng Sau đó nhận định ưu điểm, hạn chế và những thách thức đã đối mặt trong quá trình triển khai hệ thống Thông qua đó, nhóm xác định phương hướng cải tiến để tối hư hoá tính hiệu quả của hệ thống.

Bố cục bài báo cáo

Bố cục của bài báo cáo được tổ chức như sau:

Trong chương này, nhóm sẽ giới thiệu về đề tài, bao gồm các nội dung như:

Lý do chọn đề tài, mục tiêu và đối tượng nghiên cứu, phạm vi nghiên cứu, phương pháp nghiên cứu, cấu trúc báo cáo.

CƠ SỞ LÝ THUYẾT

HTML, CSS và JavaScript

HTML là một ngôn ngữ đánh dấu được tạo ra để xây dựng các trang web trên World Wide Web Ngoài HTML ra còn có các công nghệ hỗ trợ khác như CSS và các ngôn ngữ lập trình như JavaScript.

Các trình duyệt web sẽ lấy tài nguyên HTML từ một web server hoặc máy chủ cục bộ và giải mã chúng thành các trang web theo những gì người dùng đã xây dựng Một cấu trúc HTML được tạo nên bởi các phần tử HTML (HTML Elements) bọc bởi một cặp dấu ngoặc nhọn (ví dụ

) bao gồm một thẻ mở và một thẻ đóng Theo nguyên tắc, một cấu trúc HTML được bao bọc trong một cặp thẻ

Ngoài ra HTML còn có một số thẻ (tag) phổ biến như sau:

- Thẻ : Thẻ này chứa thông tin về trang web như tiêu đề, các tập tin CSS hoặc JavaScript được liên kết, meta tags và các thông tin khác.

- Thẻ : Được đặt trong thẻ , thẻ này định nghĩa tên của trang web, hiển thị trong thanh tiêu đề của trình duyệt.

- Thẻ : Đây là thẻ mở và đóng chứa nội dung hiển thị trực tiếp trên trang web, bao gồm các đoạn văn bản, hình ảnh, đường liên kết và các phần tử khác.

- Thẻ đến : Các thẻ này được sử dụng để phân cấp nội dung trang web theo cấu trúc với độ ưu tiên khác nhau Thẻ có độ ưu tiên cao nhất, trong khi thẻ có độ ưu tiên thấp nhất.

- Thẻ

: Được sử dụng để tạo ra các đoạn văn bản.

- Thẻ : Được sử dụng để tạo đường liên kết Thuộc tính "href" chứa địa chỉ URL của trang đích.

- Thẻ : Được sử dụng để thêm hình ảnh vào trang web Thuộc tính "src" chứa đường dẫn của hình ảnh, trong khi thuộc tính "alt" cung cấp mô tả hình ảnh trong trường hợp hình ảnh không hiển thị được.

- Thẻ

  • : Thẻ
      tạo một danh sách không có thứ tự, trong khi thẻ

    • định nghĩa mỗi mục trong danh sách.

      - Thẻ , , và : Được sử dụng để tạo bảng Thẻ định nghĩa bảng, thẻ định nghĩa hàng trong bảng, thẻ định nghĩa ô tiêu đề và thẻ định nghĩa ô dữ liệu trong bảng.

      - Thẻ , và : Được sử dụng để tạo biểu mẫu và nhập liệu.

      - Thẻ và : Đây là các thẻ chủ đề dùng để tạo một khung chung cho các phần tử lại nhất định Thẻ thường được sử dụng để gom các phần tử thành các khối lớn, trong khi thẻ thường được sử dụng để nhóm các phần tử nhỏ hơn [3].

      Hình 2.1:Ví dụ về một đoạn mã HTML

      2.1.2 Giới thiệu về CSS và SCSS

      CSS (viết tắt của Cascading Style Sheets), là một ngôn ngữ lập trình được sử dụng để định dạng và tạo phong cách cho các phần tử được tạo ra bởi các ngôn ngữ đánh dấu như HTML CSS đóng vai trò quan trọng trong việc thiết kế và tạo giao diện cho các trang web.

      Nếu như HTML là ngôn ngữ dùng để tạo ra cấu trúc và nội dung của trang web, thì CSS được sử dụng để định dạng và tạo phong cách cho các phần tử HTML.HTML và CSS có mối quan hệ mật thiết, vì CSS không thể tồn tại độc lập mà không được kết hợp với HTML Trước khi sử dụng CSS, nhà phát triển cần phải đính kèm đường dẫn file CSS đó trong mã HTML CSS giúp tách biệt phần định

      Cấu trúc cơ bản của CSS bao gồm 4 thành phần: selector, property, value và declaration.

      Selector xác định phần tử HTML mà CSS sẽ được áp dụng.

      Property là các thuộc tính như màu sắc, kích thước, vị trí, v.v mà CSS sẽ thay đổi.

      Value là giá trị được gán cho các property.

      Declaration là sự kết hợp giữa property và value.

      CSS có 3 loại chính: Inline CSS, Internal CSS và External CSS.

      Inline CSS: CSS được viết trực tiếp trong thuộc tính style của thẻ HTML. Internal CSS: CSS được viết trong thẻ ‘’ trong phần ‘’ của trang HTML.

      External CSS: CSS được viết trong một tệp riêng ‘.css’ và được liên kết với trang HTML bằng thẻ ‘’ [4].

      Hình 2.2:Ví dụ mã CSS SCSS là một ngôn ngữ tiền xử lý cho CSS, cho phép sử dụng biến, quy tắc lồng nhau và nhiều tính năng khác để viết CSS một cách gọn gàng và mang tính tái sử dụng SCSS tương thích hoàn toàn với CSS và giúp mở rộng khả năng của CSS.

      Cú pháp của SCSS tương tự như CSS nhưng với khả năng sử dụng dấu ngoặc nhọn ‘{}’ và dấu chấm phẩy ‘;’ Điều này làm cho SCSS dễ đọc và dễ viết hơn cho những người đã quen với CSS [5].

      Hình 2.3:Ví dụ mã SCSS

      JavaScript là một ngôn ngữ lập trình thông dịch và đa mục đích Ban đầu, nó được phát triển để thêm tính năng tương tác vào các trang web, nhưng ngày nay, nó đã trở thành một trong những ngôn ngữ lập trình phổ biến nhất và được sử dụng trên nhiều nền tảng khác nhau bao gồm web, máy chủ, ứng dụng di động và nhiều hơn nữa JavaScript có khả năng xử lý các tương tác từ người dùng, tương tác với máy chủ và tạo ra các hiệu ứng động.

      JavaScript sử dụng cú pháp tương tự như các ngôn ngữ lập trình khác như C và Java Dưới đây là một số khái niệm cơ bản:

      Biến: Là một định danh được sử dụng để lưu trữ giá trị Biến được khai báo bằng từ khoá var, let, hoặc const.

      Toán tử: Bao gồm các toán tử như +, -, *, /, ++, , &&, ||, và nhiều hơn nữa. JavaScript hỗ trợ các cấu trúc điều khiển thông thường như:

      Câu lệnh điều kiện (if, else if, else): Dùng để thực thi các khối mã dựa trên một điều kiện.

      Vòng lặp (for, while, do while): Dùng để lặp lại một khối mã cho đến khi một điều kiện được thoả mãn.

      JavaScript là một ngôn ngữ dựa trên đối tượng, có nghĩa là mọi thứ trong JavaScript đều là một đối tượng hoặc có thể biến thành một đối tượng Đối tượng trong JavaScript có thể được tạo ra bằng cách sử dụng các cú pháp như đối tượng định danh JSON, hoặc bằng cách sử dụng từ khoá new và hàm tạo.

      JavaScript là một ngôn ngữ bất đồng bộ, có nghĩa là nó có thể thực thi nhiều tác vụ cùng một lúc mà không chờ đợi kết thúc của một tác vụ trước Điều này rất hữu ích cho việc xử lý sự kiện trong các ứng dụng web, nơi mà người dùng có thể tương tác với trang web mà không cần tải lại trang.

      JavaScript cung cấp hỗ trợ cho module, cho phép tách mã của bạn thành các phần nhỏ hơn và tái sử dụng chúng trong các dự án khác nhau.

      Bằng cách sử dụng JavaScript để truy cập và thay đổi DOM, người dùng có thể thêm, xoá và sửa đổi các phần tử HTML, thay đổi thuộc tính CSS và tạo ra hiệu ứng động trên trang web Với khả năng tương tác người dùng, JavaScript cho phép xử lý các hành động như nhấp chuột, di chuyển chuột, gõ phím và tương tác với các phần tử trên trang web, kiểm tra và xác thực dữ liệu đầu vào từ người dùng, thay đổi nội dung của trang web và hiển thị thông báo[6].

      React JS

      2.2.1 Giới thiệu về React JS

      React JS là một thư viện JavaScript mã nguồn mở và miễn phí để xây dựng giao diện người dùng dựa trên các thành phần giao diện người dùng (UI) riêng lẻ.React JS được phát triển và duy trì bởi Meta (trước đây là Facebook) và cộng đồng các nhà phát triển React JS khuyến khích việc tạo ra các thành phần UI có thể tái sử

      JavaScript, giúp người dùng có thể viết mã HTML trực tiếp trong file JavaScript thay vì phải tách riêng như trước đây.

      React JS có cấu trúc gồm các thành phần như sau:

      Virtual DOM: React JS sử dụng Virtual DOM để tối ưu hoá việc render trang web Thay vì cập nhật trực tiếp DOM, React JS tạo ra một bản sao ảo của DOM và chỉ cập nhật những phần thay đổi, giúp cải thiện hiệu suất và tốc độ của ứng dụng.

      Component: Đây là một đơn vị cơ bản để tạo ra giao diện người dùng trong React JS Một component có thể là một hàm hoặc một class, nhận vào các đối số gọi là props và trả về một đối tượng gọi là element, biểu diễn một phần giao diện người dùng.

      JSX: React JS sử dụng JSX, một phần mở rộng của JavaScript, để viết mã HTML trong JavaScript JSX giúp viết mã dễ đọc hơn và tạo ra các component một cách trực quan.

      Element: Đây là một đối tượng đơn giản, mô tả những gì người dùng muốn hiển thị trên giao diện Một element được tạo ra bằng cách sử dụng cú pháp JSX.

      Props: Đây là một đối tượng chứa các tham số truyền vào một component. Props có chức năng truyền dữ liệu từ component cha sang component con và tạo ra các component có tính tái sử dụng cao.

      State: Đây là một đối tượng chứa các dữ liệu có thể thay đổi theo thời gian trong component State giúp người dùng tạo ra các component có tính tương tác cao, đồng thời phản ánh sự thay đổi dữ liệu trên giao diện người dùng Ví dụ khi người dùng nhập thông tin tài khoản, dữ liệu đó sẽ được cập nhật vào state và được dùng để xác thực [7].

      Hình 2.5:Ví dụ về mã React JS

      2.2.2 Ưu điểm của React JS

      React JS cho phép các nhà phát triển tái sử dụng các thành phần UI, giúp giảm thiểu thời gian phát triển và bảo trì Các cấu trúc này có thể được chia sử giữa các ứng dụng khác nhau nhằm tăng hiệu suất.

      React JS sử dụng Virtual DOM để tối ưu hoá việc cập nhật giao diện, giúp ứng dụng chạy nhanh và mượt mà hơn.

      React JS cung cấp cú pháp JSX cho phép nhà phát triển viết mã lồng JavaScript vào cấu trúc HTML, làm cho mã dễ đọc và viết hơn.

      React JS có thể render trên cả phía client (trình duyệt) và phía server, giúp tối ưu hoá SEO và thời gian tải trang.

      React JS có một cộng đồng hỗ trợ rộng lớn, với rất nhiều tài liệu, hướng dẫn và các thư viện hỗ trợ Cộng đồng này giúp các nhà phát triển có thể tìm các giải pháp cho vấn đề họ gặp phải [8].

      Express.JS

      2.3.1 Giới thiệu về Express.JS

      Express.JS là một framework web phía máy chủ (server-side) được viết bằng JavaScript Nó được dùng để xây dựng ứng dụng web và RESTful API Nền tảng này cung cấp cơ chế hoạt động cơ bản để xử lý các yêu cầu HTTP Express.JS giúp quản lý định tuyến, xử lý logic cho từng thành phần của ứng dụng, tạo điều kiện cho việc mở rộng và bảo trì sau này Framework này không chỉ hỗ trợ việc xây dựng các ứng dụng từ đơn giản đến phức tạp mà còn giúp quản lý cấu trúc và dữ liệu của ứng dụng một cách rõ ràng và có tổ chức [9].

      2.3.2 Ưu điểm của Express.JS

      Tối giản và linh hoạt: Express.JS cung cấp bộ công cụ tối giản nhưng đủ mạnh để xây dựng các ứng dụng web và API, cho phép nhà phát triển dễ dàng mở rộng và tuỳ chỉnh theo nhu cầu cụ thể.

      Middleware: Express.JS hỗ trợ mạnh mẽ cho middleware, cho phép nhà phát triển thêm các chức năng xử lý trước và sau khi yêu cầu HTTP được xử lý, như xác thực, ghi log và xử lý lỗi.

      Express.JS cung cấp chức năng Routing, cho phép định nghĩa các tuyến đường (route) với các phương thức HTTP khác nhau Mỗi tuyến đường có thể là một hoặc nhiều hàm xử lý, được thực thi khi có yêu cầu được gọi đến phù hợp.

      Express.JS có khả năng tích hợp với nhiều loại cơ sở dữ liệu khác nhau, từ NoSQL như MongoDB đến SQL như MySQL, giúp nhà phát triển dễ dàng thao tác với dữ liệu.

      Cộng đồng lớn mạnh, với nhiều nhà phát triển và công ty lớn sử dụng cũng như đóng góp Vì vậy tài liệu hướng dẫn, công cụ phục vụ cho các nhà phát triển là rất lớn.

      Có thể tích hợp với nhiều framework khác như React JS, MongoDB,Firebase, v.v để tăng cường tính năng của Web Application [10].

      MongoDB

      MongoDB là một dịch vụ cơ sở dữ liệu hướng tài liệu, thuộc loại cơ sở dữ liệu NoSQL (cơ sở dữ liệu không quan hệ), được phát triển và quản lý bởi MongoDB Inc Ban đầu, MongoDB với tiền thân là một nền tảng tương tự dịch vụ Azure của Microsoft được phát triển bởi công ty 10gen 10gen là một công ty phần mềm có trụ sở tại New York, nay được đổi tên thành MongoDB Inc Việc phát triển ban đầu tập trung xây dựng PaaS (Platform as a Service) Sau đó nó đã được chuyển thành mã nguồn mở từ năm 2009 và được duy trì bởi chính tổ chức này.

      MongoDB không sử dụng các bảng để lưu trữ dữ liệu, mà sử dụng các collection và document Một collection là một tập hợp các document, có thể coi là tương đương với một bảng trong cơ sở dữ liệu quan hệ Một document là một đơn vị dữ liệu độc lập, có thể coi là tương đương với một hàng trong bảng Một document có thể có nhiều trường, mỗi trường có một giá trị Một document có thể có các trường khác nhau với các document khác trong cùng một collection Một document có thể có các trường lồng nhau, tạo thành các cấu trúc dữ liệu phức tạp.

      Cấu trúc của một document trong MongoDB được biểu diễn bằng định dạng BSON, một dạng mở rộng của JSON BSON cho phép lưu trữ các kiểu dữ liệu như số nguyên, số thực, chuỗi, mảng, đối tượng, ngày giờ, nhị phân,… Một document trong MongoDB có thể có kích thước tối đa là 16 MB.

      MongoDB đang nổi lên như một trong những cơ sở dữ liệu NoSQL phổ biến nhất thế giới MongoDB được sử dụng bởi nhiều công ty và tổ chức lớn như Google,Facebook, Adobe, eBay, MTV Networks,… Sở dĩ MongoDB trở nên phổ biến là bởi những ưu điểm sau đây:

       Linh hoạt và dễ sử dụng: MongoDB là cơ sở dữ liệu NoSQL nên nó cho phép người dùng truy vấn dữ liệu mà không cần học và thành thạo SQL Các dữ liệu có thể được truy xuất dưới dạng JSON dễ đọc hiểu Điều này cho phép lưu trữ dữ liệu một cách linh hoạt và phong phú, với khả năng quản lý các cấu trúc dữ liệu phức tạp như mảng và tài liệu lồng nhau.

       Khả năng mở rộng: MongoDB là cơ sở dữ liệu với kiến trúc mở rộng theo chiều ngang, phân tán trên nhiều máy, chính vì vậy người dùng có thể sử dụng và xử lý các luồng dữ liệu theo lưu lượng mong muốn.

       Phù hợp với nhiều nhà phát triển: MongoDB được xây dựng để phù hợp với nhiều ngôn ngữ lập trình khác nhau, bao gồm C, C#, NET, C++, Go, Java, JavaScript, PHP, Python,…

       Cộng đồng hỗ trợ đông đảo: Với việc ngày càng nhiều nhà phát triển sử dụng, số lượng đóng góp vào mã nguồn mở cho MongoDB luôn được cập nhật và cải tiến.

      Tuy nhiên MongoDB có những giới hạn về kích thước bản ghi ở mức 16MB, không có các tính chất ràng buộc, có thể dẫn đến việc làm sai dữ liệu nếu không có cơ chế kiểm soát và xử lý lỗi.

      MongoDB hỗ trợ đồng bộ dữ liệu trực tiếp và thời gian thực giữa các thiết bị và máy chủ Khi dữ liệu trong cơ sở dữ liệu thay đổi, các thiết bị và máy chủ có thể nhận ngay lập tức các cập nhật về dữ liệu mới, đồng bộ hoá để hiển thị dữ liệu mới nhất MongoDB cung cấp các API cho phép người phát triển tương tác trực tiếp với cơ sở dữ liệu Các API này cho phép người dùng đọc, ghi dữ liệu và lắng nghe sự thay đổi của dữ liệu trong cơ sở dữ liệu Người dùng có thể xem API như một công cụ để thêm, sửa đổi và xoá dữ liệu từ cơ sở dữ liệu, đồng thời lắng nghe các sự kiện thay đổi dữ liệu để cập nhật giao diện của ứng dụng web hoặc thực hiện các tác vụ khác.

      Tính bảo mật là một khía cạnh rất quan trọng khi nói về cơ sở dữ liệu.MongoDB được thiết kế để bảo vệ dữ liệu người dùng khỏi rủi ro và truy cập trái phép MongoDB cung cấp trình hỗ trợ xác thực, bảo đảm rằng chỉ những người có quyền truy cập mới được phép thực hiện các thao tác trên cơ sở dữ liệu Ngoài ra, cắp Không những thế, MongoDB hỗ trợ kết nối bảo mật thông qua SSL/TLS để đảm bảo an toàn trong quá trình truyền tải dữ liệu giữa máy khách và máy chủ.

      Tổng kết lại, MongoDB là một cơ sở dữ liệu đáng tin cậy, cơ chế hoạt động linh hoạt, hiệu năng mạnh mẽ nhưng vẫn đảm bảo tính bảo mật cao Đây là những yếu tố để nhóm quyết định sử dụng MongoDB làm cơ sở dữ liệu cho đề tài.

      Redux Saga

      2.5.1 Giới thiệu về Redux Saga

      Redux Saga là một thư viện middleware cho Redux - một thư viện quản lý trạng thái phổ biến trong lĩnh vực phát triển web Redux Saga cho phép nhà phát triển viết các side effect (như gọi API, xử lý bất đồng bộ) một cách đồng bộ và dễ quản lý, làm cho code trở nên gọn gàng và dễ bảo trì hơn.

      Redux Saga sử dụng mô hình Generator của JavaScript để xử lý các side effect Generator là một hàm đặc biệt có khả năng tạm dừng và tiếp tục thực thi, điều này cho phép Redux Saga tạo ra một luồng xử lý đồng bộ cho các side effect, trong khi vẫn giữ cho code dễ đọc và dễ hiểu [11].

      Hình 2.6:Cơ chế hoạt động của Redux Saga

      2.5.2 Ưu điểm của Redux Saga Đồng bộ và dễ quản lý: Redux Saga cho phép nhà phát triển xử lý các side effect một cách đồng bộ trong một luồng riêng biệt, làm cho code dễ đọc và dễ quản lý hơn.

      Kiểm soát luồng xử lý: Redux Saga giúp nhà phát triển kiểm soát hoàn toàn luồng xử lý của các side effect và dễ dàng trong việc xử lý các tình huống phức tạp như gọi nhiều API theo thứ tự hoặc xử lý các lỗi.

      Tích hợp tốt với React JS và Redux: Redux Saga tương thích tốt với React JS và Redux, giúp nhà phát triển kiểm soát trạng thái của ứng dụng một cách hiệu quả mà không tác động đến hiệu suất [11].

      KHẢO SÁT VÀ PHÂN TÍCH YÊU CẦU

      Khảo sát hiện trạng

      Link website:https://phongtro123.com/

      Hình 3.1:Trang chủ Phongtro123.com

      Các chức năng chính cho người thuê phòng

      Người dùng thực hiện việc tìm kiếm thông tin phòng trọ thông qua các bộ lọc.

      Hình 3.2:Thanh bộ lọc của websiteDanh sách các phòng trọ được hiển thị như hình bên dưới.

      Hình 3.3:Giao diện danh sách các phòng trọ Người dùng sau khi đăng nhập có khả năng vào từng phòng để xem thông tin chi tiết.

      Hình 3.4:Giao diện thông tin chi tiết của phòng

      Từ đây người dùng có thể liên hệ với chủ trọ thông qua số điện thoại hoặc Zalo được hiển thị trên giao diện.

      Chức năng dành cho người dùng là chủ nhà trọ

      Người dùng là chủ nhà trọ có thể đăng ký tài khoản với vai trò là chỉnh chủ có thể truy cập vào các chức năng chính như hình bên dưới.

      Hình 3.5:Giao diện quản lý tin đăng của của nhà trọChủ nhà trọ có thể truy cập vào “Đăng tin mới” để thực hiện đăng tin.

      Hình 3.6:Giao diện đăng tin mới cho chủ nhà trọ Chủ nhà trọ cần điền đầy đủ các thông tin liên quan đến phòng cần cho thuê vào các trường như hình bên dưới.

      Hình 3.7:Giao diện đăng tin mới

      Hình 3.8:Giao diện đăng tin mới

      Hình 3.9:Giao diện đăng tin mới Sau khi hoàn thành việc điền thông tin nhà trọ, bài đăng sẽ được hiển thị trên giao diện của website.

      Hình 3.10:Giao diện bài đăng mới trên websiteChủ nhà trọ có thể quản lý thông tin liên quan đến bài đăng và lịch sử thanh toán tin.

      Hình 3.12:Giao diện lịch sử thanh toán tin

      Bảng 3.1: Bảng phân tích ưu điểm và nhược điểm của Phongtro123.com Ưu điểm và nhược điểm của Phongtro123.com Ưu điểm  Nguồn tin đăng phòng trọ đa dạng, bao gồm nhiều khu vực, mức giá, tiện ích khác nhau.

       Giao diện đơn giản, dễ thao tác, có chức năng tìm kiếm và lọc tin đăng theo nhu cầu.

       Các tin đăng đều có hình ảnh thực tế phòng trọ cùng mô tả chi tiết.

       Các bài đăng được cập nhật thường xuyên.

      Nhược điểm  Các bài đăng mang tính lừa đảo vẫn tồn tại, tiềm ẩn nguy cơ cho người dùng.

       Chưa có tính năng giao dịch đặt cọc phòng trực tiếp với chủ nhà trọ.

      Nhìn chung, lĩnh vực website tìm kiếm phòng trọ hiện nay trên thị trường đã và đang cung cấp một loạt các tính năng cơ bản cho người dùng, điển hình là tìm kiếm phòng trọ theo các từ khoá và bộ lọc, những tính năng đã được kiểm chứng là có hiệu quả Tuy vậy, vẫn còn đó là tiềm năng cho sự phát triển trong lĩnh vực này, phòng trọ mà không cần thông qua nền tảng thứ ba, cũng như tích hợp khả năng quản lý điện năng đối với từng phòng.

      Yêu cầu hệ thống

      3.2.1 Yêu cầu về chức năng

      Mô hình Hệ thống website tìm kiếm phòng trọ và quản lý điện năng cần đáp ứng các yêu cầu chức năng sau: Đối tượng người dùng: Khách hàng

      Bảng 3.2:Bảng yêu cầu chức năng cho khách hàng

      STT Hoạt động Mô tả

      1 Đăng ký, đăng nhập Đăng ký tài khoản mới để sử dụng cái tính năng của hệ thống. Đăng nhập để quản lý thông tin cá nhân và sử dụng các tính năng khác.

      2 Tìm kiếm và xem thông tin phòng trọ

      Tìm kiếm phòng trọ dựa trên bản đồ tương tác.

      Xem được thông tin về vị trí, giá cả, mô tả, tình trạng phòng và thông tin liên hệ.

      3 Đặt cọc phòng và thanh toán khi nhận phòng

      Có thể tiến hành đặt cọc phòng và hoàn tất việc thanh toán nhận phòng.

      4 Quản lý thông tin phòng

      Xem được thông tin về phòng đã thuê, bao gồm hoá đơn hiện tại, thời hạn hợp đồng, có thể kết thúc thuê phòng/gia hạn thời gian thuê phòng.

      Xem lịch sử thuê phòng.

      5 Quản lý thông tin điện năng điện của phòng

      Xem được thông tin về mức tiêu thụ điện năng của phòng theo thời gian và có lưu lại lịch sử dữ liệu từng tháng. Đối tượng người dùng: Chủ khu trọ

      Bảng 3.3:Bảng yêu cầu chức năng cho chủ khu trọ

      STT Hoạt động Mô tả

      1 Đăng ký, đăng nhập Đăng ký tài khoản mới để sử dụng cái tính năng của hệ thống. Đăng nhập để quản lý thông tin cá nhân và sử dụng các tính năng khác.

      2 Quản lý khu trọ Thêm mới toà nhà với thông tin chi tiết có thể tuỳ chỉnh.

      Có thể chỉnh sửa thông tin hoặc xoá phòng/toà nhà đã thêm.

      3 Quản lý yêu cầu đặt cọc và thanh toán nhận phòng.

      Quản lý, phê duyệt các hoá đơn đặt cọc từ khách hàng.

      Quản lý, phê duyệt các hoá đơn thanh toán nhận phòng từ khách hàng.

      4 Quản lý doanh thu Xem được thông tin về doanh thu của từng toà theo các tuỳ chọn thời gian.

      5 Quản lý thông tin điện năng của phòng.

      Xem được thông tin về mức tiêu thụ điện năng của phòng theo thời gian và có lưu lại lịch sử dữ liệu từng tháng.

      6 Quản lý hoá đơn Xem được thông tin hoá đơn từng phòng và gửi hoá đơn đến email của Đối tượng người dùng: Quản trị viên

      Bảng 3.4:Bảng yêu cầu chức năng cho quản trị viên

      STT Hoạt động Mô tả

      1 Quản lý thông tin người dùng

      Xem được thông tin người dùng đối với cả người thuê phòng và chủ khu trọ.

      Có thể chỉnh sửa hoặc xoá tài khoản người dùng.

      2 Quản lý chủ trọ Xem được thông tin của chủ khu trọ như họ tên, số điện thoại, số khu trọ hiện có, doanh thu hiện tại, …

      3.2.2 Yêu cầu về kỹ thuật

      Mục tiêu nghiên cứu của hệ thống:

      Hoạt động ổn định: Đảm bảo hệ thống có khả năng hoạt động liên tục và ổn định.

      Lưu trữ nhật ký hoạt động: Hệ thống phải có khả năng lưu trữ dữ liệu và quản lý các hoạt động của người dùng.

      Bảo mật: Hệ thống phải đảm bảo tính bảo mật cao để bảo vệ dữ liệu cá nhân của người dùng và dữ liệu điện năng.

      THIẾT KẾ HỆ THỐNG

      Kiến trúc hệ thống

      Hình 4.1:Lưu đồ kiến trúc hệ thống

      Browser: Đây là nơi người dùng sẽ truy cập website tìm kiếm phòng trọ và quản lý điện năng thông qua các trình duyệt như Microsoft Edge, Google Chrome, Safari, v.v.

      Trình duyệt sẽ gửi yêu cầu (requests) tới web server và nhận phản hồi (responses) để hiển thị nội dung trang web.

      Mạng lưới toàn cầu kết nối các máy tính với nhau, cho phép giao tiếp giữa

      Tiếp nhận các yêu cầu từ trình duyệt.

      Chuyển tiếp các yêu cầu tới ứng dụng web (web application) để xử lý.

      Web application chạy trên web server, gồm hai phần chính: User Interface (UI) và API.

      Cung cấp giao diện người dùng, cho phép người dùng tương tác với hệ thống.

      Nhận yêu cầu từ UI hoặc trực tiếp từ trình duyệt.

      Giao tiếp với cơ sở dữ liệu (MongoDB) để lưu trữ và truy xuất dữ liệu.

      Trả kết quả về cho UI hoặc trực tiếp cho trình duyệt.

      API từ bên thứ ba được tích hợp để cung cấp các dịch vụ và tính năng mở rộng cho hệ thống Trong trường hợp của hệ thống tìm kiếm phòng trọ và quản lý điện năng, API từ bên thứ ba có thể bao gồm:

      API quản lý điện năng: Cung cấp dữ liệu về lượng tiêu thụ điện năng của từng phòng trọ, giúp chủ nhà và người thuê dễ dàng theo dõi và quản lý lượng điện tiêu thụ hàng tháng.

      API bản đồ: Sử dụng dịch vụ bản đồ từ Google Maps để hiển thị vị trí của các khu nhà trọ trên giao diện người dùng.

      Cơ sở dữ liệu NoSQL dùng để lưu trữ các thông tin về người dùng, phòng trọ, thông tin điện năng, và các dữ liệu liên quan.

      Cung cấp dữ liệu cho API khi có yêu cầu truy xuất.

      Ghi nhận các thay đổi từ API khi có yêu cầu cập nhật hoặc xoá dữ liệu.

      Người dùng mở trình duyệt và nhập URL của website tìm kiếm phòng trọ và quản lý điện năng.

      Trình duyệt gửi yêu cầu HTTP/HTTPS qua Internet tới web server.

      Web server nhận yêu cầu và chuyển tiếp tới web application để xử lý.

      UI: Nếu yêu cầu liên quan đến giao diện, UI sẽ chuẩn bị các giao diện là các dòng mã HTML, CSS và JavaScript để gửi về trình duyệt.

      API: Nếu yêu cầu liên quan đến dữ liệu (như tìm kiếm phòng trọ, quản lý tài khoản), API sẽ xử lý logic và có thể truy xuất dữ liệu từ MongoDB.

      API gửi truy vấn tới MongoDB để lấy dữ liệu cần thiết hoặc cập nhật dữ liệu hiện có.

      API: Sau khi xử lý, API gửi kết quả về cho UI hoặc trực tiếp về trình duyệt. UI: Hiển thị nội dung dựa trên dữ liệu nhận được từ API.

      Trình duyệt nhận phản hồi từ web server và hiển thị nội dung trang web cho người dùng.

      Thiết kế cơ sở dữ liệu

      Hệ thống website tìm kiếm phòng trọ và quản lý điện năng yêu cầu người dùng phải có tài khoản để sử dụng, ngoài ra còn lưu trữ và quản lý thông tin liên quan đến phòng trọ và dữ liệu điện năng thu thập được,… thì cơ sở dữ liệu của hệ thống được thiết kế theo sơ đồ như sau:

      Hình 4.2:Sơ đồ cơ sở dữ liệu Trong cơ sở dữ liệu được sử dụng cho đề tài, nhóm đã tiến hành liệt kê các mục cần có, dựa vào đó để phân tích cấu trúc các bảng cho cơ sở dữ liệu, cụ thể như sau:

      Tên trường Kiểu Mô tả PK/FK

      _id objectId Dùng để xác định tài ngoài người PK email string Email của người dùng password string Mật khẩu tài khoản avatar string Ảnh đại diện của người dùng FK firstName string Tên của người dùng lastName string Họ của người dùng dobString string Ngày tháng năm sinh của người dùng nationalId string Số căn cước công dân của người dùng frontId string Ảnh chụp mặt trước CCCD FK backId string Ảnh chụp mặt sau CCCD FK phoneNumberFull string Số điện thoại đầy đủ của người dùng phoneNumber object Đây là object chứa 2 phần tử:

      - countryCode: Mã số điện thoại Việt Nam

      - number: Số điện thoại role array Trường dữ liệu role có 3 giá trị:

      - master: Quản trị viên token string Token xác thực. tokenForgotPasswo rd string Token dùng để khôi phục mật khẩu address string Địa chỉ của người dùn tokenActive string Token dùng để kích hoạt tài khoản isVerified boolean Trạng thái xác thức của người dùng signupCompleted boolean Trạng thái hoàn tất đăng ký của người dùng active boolean Trạng thái hoạt động của tài khoản room string Phòng hiện tại của người dùng (nếu có)

      FK currentContract string Hợp đồng cho thuê phòng hiện tại của người dùng

      FK contract string Danh sách các hợp đồng thuê phòng của người dùng

      FK idDevice number Mã số đồng hồ điện phòng của người dùng (nếu có) isDeleted boolean Trạng thái xác định liệu bản ghi có bị xoá hay không (false là không bị

      Tên trường Kiểu Mô tả PK/FK

      _id objectId Định danh địa chỉ PK isDeleted boolean Trạng thái xác định liệu bản ghi có bị xoá hay không (false là không bị xoá) address string Thông tin địa chỉ components array Chứa các phần tử chi tiết của địa chỉ (Số nhà, tên đường, tên quận/huyện, tên thành phố, v.v.) geometry object Chứa các phần tử là toạ độ của địa chỉ

      Tên trường Kiểu Mô tả PK/FK

      _id objectId PK images array Ảnh ngân hàng FK isDeleted boolean Trạng thái xác định liệu bản ghi có bị xoá hay không (false là không bị xoá) user object Tên của người dùng FK bank string Mã ngân hàng branch string Tên chi nhánh bankAccountUsername string Tên tài khoản ngân hàng bankAccountNumber string Số tài khoản ngân hàng bankName string Tên ngân hàng

      Tên trường Kiểu Mô tả PK/FK

      _id objectId Định danh hợp đồng PK orders array Danh sách các hoá đơn hiện tại

      FK images array Danh sách ảnh minh chứng

      FK isCompleted boolean Trạng thái hoàn thành isActivated boolean Trạng thái kích hoạt của hợp đồng isRoomReturnDateUpdated boolean rentalPeriod number Thời hạn hợp đồng status string Trạng thái của hợp đồng. isDeleted boolean Trạng thái xác định liệu bản ghi có bị xoá hay không (false là không bị xoá) checkInTime date Thời gian xác nhận thuê phòng fullName string Tên đầy đủ của người dùng phoneNumber string Số điện thoại của người dùng bail number Tiền bảo chứng total number Tổng tiền deposit number Tiền đặt cọc phòng postCheckInCost number Tiền cọc phần còn lại thanh toán khi nhận phòng room objectId Mã của phòng được thuê

      FK user objectId Người thuê phòng FK currentOrder objectId Hóa đơn hiện tại FK

      Tên trường Kiểu Mô tả PK/FK id objectId Định danh toà nhà PK isDeleted boolean Trạng thái xác định liệu bản ghi có bị xoá hay không (false là không bị xoá) images array Danh sách ảnh FK roomAcreage number Diện tích phòng totalFloor number Số tầng totalRoom number Số lượng phòng availableRoom number Số phòng còn trống rentedRoom number Số phòng đã thuê price number Giá phòng minPrice number Giá phòng thấp nhất maxPrice number Giá phòng cao nhất electricityPrice number Giá điện waterPrice number Giá nước wifiPrice number Giá wifi garbagePrice number Giá dịch vụ floors array Chứa danh sách id các tầng

      FK name string Tên toà nhà address objectId Địa chỉ của toà nhà FK contactPhone string Số điện thoại của chủ toà nhà owner objectId Chủ toà nhà FK description string Mô tả utilities array Chứa các danh mục cơ sở vật chất của toà nhà

      Tên trường Kiểu Mô tả PK/FK

      _id objectId Định danh tầng PK totalRoom number Số lượng phòng availableRoom number Số phòng trống rentedRoom number Số phòng đã thuê depositedRoom number Số phòng đã đặt cọc rooms array Danh sách id các phòng FK isDeleted boolean Trạng thái xác định liệu bản ghi có bị xoá hay không (false là không bị xoá) name string Tên tầng key string Mã số tầng expiringRoomCount number Số lượng các phòng sắp hết hạn hợp đồng cho thuê

      Tên trường Kiểu Mô tả PK/FK

      _id objectId Định danh phòng PK electricMeterId number Mã đồng hồ điện FK acreage number Diện tích của phòng status string Trạng thái hiện tại của phòng price number Giá phòng depositPrice number Giá đặt cọc phòng electricityPrice number Giá điện waterPrice number Giá nước vehiclePrice number Giá phương tiện images array Danh sách ảnh thực tế của phòng

      FK isCompleted boolean rentedBy objectId Định danh người thuê phòng

      FK previousElectricityNumber number Số điện tiêu thụ của tháng trước currentElectricityNumber number Số điện tiêu thụ của tháng hiện tại isDeleted boolean Trạng thái xác định liệu bản ghi có bị xoá hay không (false là không bị xoá) name string Tên phòng key string Mã phòng utilities array Danh sách cơ sở vật chất của phòng availableDate date Ngày phòng sẽ trống

      Tên trường Kiểu Mô tả PK/FK

      _id objectId Định danh hóa đơn PK isCompleted boolean Trạng thái hoàn thành của hóa đơn amount number Tiền phòng waterCost number Tiền nước wifiCost number Tiền wifi vehicleCost number Tiền phương tiện garbageCost number Tiền dịch vụ paymentMethod string Phương thức thanh toán

      UNC objectId Định danh ảnh ủy nhiệm chi FK isDeleted boolean Trạng thái xác định liệu bản ghi có bị xoá hay không (false là không bị xoá) user objectId Người thuê phòng FK contract objectId Hóa đơn hiện tại FK description string Mô tả thông tin hóa đơn type string Phương thức hóa đơn:

      - deposit: Hóa đơn đặt cọc

      - monthly: Hóa đơn tiền phòng hàng tháng

      - postCheckInCost: Tiền cọc còn lại thanh toán khi nhận phòng

      Tên trường Kiểu Mô tả PK/FK

      Sequence Diagram

      4.3.1 Người dùng đăng nhập hệ thống

      Hình 4.3:Lưu đồ người dùng đăng nhập hệ thống

      4.3.2 Người dùng đăng xuất hệ thống

      Hình 4.4:Lưu đồ người dùng đăng xuất hệ thống

      4.3.3 Người dùng xem thông tin phòng và tiến hành đặt cọc thuê phòng

      Hình 4.5:Lưu đồ người dùng tiến hành đặt cọc thuê phòng

      4.3.4 Người dùng quản lý thông tin tài khoản

      Hình 4.6:Người dùng quản lý thông tin tài khoản

      4.3.5 Người dùng xem thông tin phòng đã thuê và thanh toán tiền phòng hàng tháng

      Hình 4.7:Người dùng xem thông tin phòng và thanh toán tiền phòng

      4.3.6 Người dùng quản lý thông tin điện năng

      Hình 4.8:Lưu đồ người dùng quản lý điện năng

      4.3.7 Người dùng quản lý hoá đơn

      Hình 4.9:Lưu đồ người dùng quản lý hoá đơn

      4.3.8 Người dùng báo cáo sự cố

      Hình 4.10:Lưu đồ người dùng báo cáo sự cố

      4.3.9 Chủ nhà trọ tạo khu nhà trọ mới

      Hình 4.11:Chủ nhà trọ tạo toà nhà mới

      4.3.10 Chủ nhà trọ quản lý và chỉnh sửa thông tin khu nhà trọ

      Hình 4.12:Lưu đồ chủ nhà trọ chỉnh sửa thông tin khu nhà trọ

      4.3.11 Chủ nhà trọ thêm tầng cho khu nhà trọ

      Hình 4.13:Lưu đồ củ nhà trọ thêm tầng cho khu nhà trọ

      4.3.12 Chủ nhà trọ thêm phòng mới cho khu nhà trọ

      Hình 4.14:Lưu đồ chủ nhà trọ thêm phòng mới

      4.3.13 Chủ nhà trọ quản lý lịch sử thuê phòng

      Hình 4.15:Lưu đồ chủ nhà trọ quản lý lịch sử thuê phòng

      4.3.14 Chủ nhà trọ quản lý hoá đơn

      Hình 4.16:Lưu đồ chủ nhà trọ quản lý hoá đơn

      4.3.15 Chủ nhà trọ quản lý đặt cọc

      Hình 4.17:Lưu đồ chủ nhà trọ quản lý đặt cọc

      4.3.16 Chủ nhà trọ quản lý doanh thu

      Hình 4.18:Lưu đồ chủ nhà trọ quản lý doanh thu

      4.3.17 Chủ nhà trọ quản lý sự cố

      Hình 4.19:Lưu đồ chủ nhà trọ quản lý sự cố

      4.3.18 Quản trị viên quản lý tài khoản người dùng

      Hình 4.20:Lưu đồ quản trị viên quản lý tài khoản người dùng

      4.3.19 Quản trị viên quản lý thông tin các chủ nhà trọ

      Hình 4.21:Lưu đồ quản trị viên quản lý thông tin các chủ trọ

      4.3.20 Quản trị viên quản lý thông tin tiền cọc

      Hình 4.22:Lưu đồ quản trị viên quản lý tiền cọc

      4.3.21 Quản trị viên quản lý danh sách sự cố

      Hình 4.23:Lưu đồ quản trị viên quản lý danh sách sự cố

      4.3.22 Quản trị viên quản lý thông tin hoá đơn

      Hình 4.24:Lưu đồ quản trị viên quản lý thông tin hoá đơn

      CÀI ĐẶT VÀ KIỂM THỬ

      Công cụ

      Bảng 5.1:Bảng các công cụ triển trai

      Công nghệ

      Bảng 5.2:Bảng các công nghệ sử dụng

Ngày đăng: 26/09/2024, 14:38

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] “Nhu cầu tăng mạnh - Cho thuê phòng trọ, nhà trọ quay lại thị trường”, 19 02 2024 [Online]. Available: https://baothainguyen.vn/thong-tin-quang-cao/202211/nhu-cau-tang-manh-cho-thue-phong-tro-nha-tro-quay-lai-thi-truong-f8e2882/ Sách, tạp chí
Tiêu đề: Nhu cầu tăng mạnh - Cho thuê phòng trọ, nhà trọ quay lại thị trường
[2] Mễ Mễ, “Nhu cầu tăng, nhiều chủ nhà trọ ở TP. HCM rục rịch tăng giá thuê nhà”, 20 02 2024 [Online]. Available: https://thuonggiaonline.vn/nhu-cau-tang-nhieu-chu-nha-tro-o-tphcm-ruc-rich-tang-gia-thue-nha-post548362.html Sách, tạp chí
Tiêu đề: Nhu cầu tăng, nhiều chủ nhà trọ ở TP. HCM rục rịch tăng giá thuênhà
[3] MDN Contributors, “HTML basics”, 04 03 2024 [Online]. Available:https://developer.mozilla.org/en-US/docs/Learn/Getting_started_with_the_web/HTML_basics Sách, tạp chí
Tiêu đề: HTML basics
[4] MDN Contributors, “What is CSS?”, 04 03 2024 [Online]. Available:https://developer.mozilla.org/en-US/docs/Learn/CSS/First_steps/What_is_CSS[5] kakashi01, “Different Between CSS and SCSS”, 14 03 2024 [Online]. Available:https://www.geeksforgeeks.org/what-is-the-difference-between-css-and-scss/ Sách, tạp chí
Tiêu đề: What is CSS?”, 04 03 2024 [Online]. Available:https://developer.mozilla.org/en-US/docs/Learn/CSS/First_steps/What_is_CSS[5] kakashi01, “Different Between CSS and SCSS
[6] MDN contributors, “What is JavaScript”, 14 03 2024 [Online]. Available:https://developer.mozilla.org/en-US/docs/Learn/JavaScript/First_steps/What_is_JavaScript Sách, tạp chí
Tiêu đề: What is JavaScript
[7] David Herbert, “What is ReactJS? Uses, Examples, & More”, 14 03 2024 [Online]. Available: https://blog.hubspot.com/website/react-js Sách, tạp chí
Tiêu đề: What is ReactJS? Uses, Examples, & More
[8] Starkyy, “What are the advantages of React JS?”, 15 03 2024 [Online].Available: https://www.geeksforgeeks.org/what-are-the-advantages-of-react-js/ Sách, tạp chí
Tiêu đề: What are the advantages of React JS
[9] Kinsta contributors, “What is ExpressJS? Everything you should know”, 16 03 2024 [Online]. Available: https://kinsta.com/knowledgebase/what-is-express-js/ Sách, tạp chí
Tiêu đề: What is ExpressJS? Everything you should know
[10] Binariks Contributors, “Express.JS Mobile App Development: Pros and Cons for Developers”, 17 03 2024 [Online]. Available: https://binariks.com/blog/express-js-mobile-app-development-pros-cons-developers/ Sách, tạp chí
Tiêu đề: Express.JS Mobile App Development: Pros and Consfor Developers

HÌNH ẢNH LIÊN QUAN

Hình 2.1: Ví dụ về một đoạn mã HTML - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 2.1 Ví dụ về một đoạn mã HTML (Trang 28)
Hình 2.3: Ví dụ mã SCSS - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 2.3 Ví dụ mã SCSS (Trang 30)
Hình 2.5: Ví dụ về mã React JS - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 2.5 Ví dụ về mã React JS (Trang 34)
Hình 3.1: Trang chủ Phongtro123.com - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 3.1 Trang chủ Phongtro123.com (Trang 41)
Hình 3.13: Lược đồ Use Cases - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 3.13 Lược đồ Use Cases (Trang 49)
Hình 4.3: Lưu đồ người dùng đăng nhập hệ thống - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.3 Lưu đồ người dùng đăng nhập hệ thống (Trang 82)
Hình 4.5: Lưu đồ người dùng tiến hành đặt cọc thuê phòng - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.5 Lưu đồ người dùng tiến hành đặt cọc thuê phòng (Trang 83)
Hình 4.6: Người dùng quản lý thông tin tài khoản - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.6 Người dùng quản lý thông tin tài khoản (Trang 84)
Hình 4.8: Lưu đồ người dùng quản lý điện năng - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.8 Lưu đồ người dùng quản lý điện năng (Trang 85)
Hình 4.9: Lưu đồ người dùng quản lý hoá đơn - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.9 Lưu đồ người dùng quản lý hoá đơn (Trang 86)
Hình 4.11: Chủ nhà trọ tạo toà nhà mới - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.11 Chủ nhà trọ tạo toà nhà mới (Trang 87)
Hình 4.15: Lưu đồ chủ nhà trọ quản lý lịch sử thuê phòng - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.15 Lưu đồ chủ nhà trọ quản lý lịch sử thuê phòng (Trang 89)
Hình 4.19: Lưu đồ chủ nhà trọ quản lý sự cố - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.19 Lưu đồ chủ nhà trọ quản lý sự cố (Trang 91)
Hình 4.20: Lưu đồ quản trị viên quản lý tài khoản người dùng - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.20 Lưu đồ quản trị viên quản lý tài khoản người dùng (Trang 92)
Hình 4.21: Lưu đồ quản trị viên quản lý thông tin các chủ trọ - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.21 Lưu đồ quản trị viên quản lý thông tin các chủ trọ (Trang 93)
Hình 4.24: Lưu đồ quản trị viên quản lý thông tin hoá đơn - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.24 Lưu đồ quản trị viên quản lý thông tin hoá đơn (Trang 94)
Hình 4.23: Lưu đồ quản trị viên quản lý danh sách sự cố - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.23 Lưu đồ quản trị viên quản lý danh sách sự cố (Trang 94)
Hình 4.25: Giao diện trang đăng nhập - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.25 Giao diện trang đăng nhập (Trang 95)
Hình 4.28: Giao diện trang cập nhật thông tin cá nhân - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.28 Giao diện trang cập nhật thông tin cá nhân (Trang 97)
Hình 4.29: Giao diện trang thông tin thuê phòng - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.29 Giao diện trang thông tin thuê phòng (Trang 98)
Hình 4.32: Giao diện trang quản lý điện năng của phòng - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.32 Giao diện trang quản lý điện năng của phòng (Trang 100)
Hình 4.33: Giao diện Pop-up khu nhà trọ - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.33 Giao diện Pop-up khu nhà trọ (Trang 101)
Hình 4.34: Giao diện trang thông tin sơ lược khu nhà trọ - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.34 Giao diện trang thông tin sơ lược khu nhà trọ (Trang 102)
Hình 4.38: Giao diện Pop-up thông tin thanh toán tiền cọc thuê phòng trọ - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.38 Giao diện Pop-up thông tin thanh toán tiền cọc thuê phòng trọ (Trang 105)
Hình 4.48: Giao diện trang quản lý đặt cọc - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.48 Giao diện trang quản lý đặt cọc (Trang 113)
Hình 4.49: Giao diện trang lịch sử đặt cọc - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.49 Giao diện trang lịch sử đặt cọc (Trang 114)
Hình 4.52: Giao diện trang cập nhật thông tin tài khoản - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.52 Giao diện trang cập nhật thông tin tài khoản (Trang 116)
Hình 4.53: Giao diện trang quản lý các chủ trọ - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.53 Giao diện trang quản lý các chủ trọ (Trang 117)
Hình 4.55: Giao diện trang quản lý doanh thu - Đồ án tốt nghiệp: Xây dựng Website tìm kiếm phòng trọ và quản lý điện năng cho công ty TNHH thương mại và kỹ thuật Thái Bình
Hình 4.55 Giao diện trang quản lý doanh thu (Trang 118)

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

TÀI LIỆU LIÊN QUAN

w