Latest commit

History

339 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

init db

 Scaffold-DbContext "Server=[]; Database=[];Trusted_Connection=SSPI;Encrypt=false;TrustServerCertificate=true"
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context "DbmojoinContext" -Force

-> 'ConnectionStrings' Program.cs

Themer logo

Tổng quan

  • Đồ án Chuyên ngành Công nghệ phần mềm
    • Tên đề tài: Website Hỗ trợ tìm thuê phòng trọ - mojoin

    • Mô tả:

      • Client-side: đăng tin, quản lý thông tin bài đăng và thông tin cá nhân, thanh toán gói tin hiển thị, etc.
      • Server-side: quản lý thông tin toàn hệ thống, xét duyệt bài đăng, etc.
    • Giảng viên hướng dẫn: Nguyễn Trí Định

  • Thành viên:
  • Công nghệ:
    • C#JavaScriptASP .NET Core 6.0 MVCMS SQLSendGridMoMo APIVnPay APIGoogleMap API

Mục lục

1. Cơ sở lý thuyết

1.1 Ngôn ngữ sử dụng

  • ASP.NET Core MVC là một framework “nhẹ”, opensource, giúp tối ưu hóa hiệu năng của ứng dụng với ASP.NET Core .
  • ASP.NET Core MVC cung cấp các tính năng dựa trên mô hình xây dựng website động cho phép phân chia rõ ràng các khối lệnh. Nó cung cấp cho bạn toàn quyền kiểm soát đánh dấu, hỗ trợ phát triển với TDD-friendly và sử dụng các tiêu chuẩn web mới nhất.

1.2 Công cụ sử dụng

  • Microsof Visual Studio 2020
  • SQL Server Management Studio 2019
  • Github

1.3 Hệ quản trị cơ sở dữ liệu

  • SQL Server 2019 là bộ phận quản lý cơ sở dữ liệu, được xây dựng dựa trên khái niệm trí tuệ nhân tạo nhằm tạo điều kiện thuận lợi, cải tiến dịch vụ cơ sở dữ liệu, bảo mật và giảm bớt các khó khăn gặp phải khi phát triển các ứng dụng và lưu trữ dữ liệu.

1.4 Mô hình - kỹ thuật

  • Mô hình MVC (Model – View – Controller)
    • Model: đại diện cho dữ liệu và xử lý logic, thực hiện các tác vụ như lấy và lưu trữ dữ liệu, kiểm tra tính hợp lệ của dữ liệu và thực hiện các tính toán logic.
    • View: đại diện cho người dùng, hiển thị thông tin cho người dùng và tương tác với họ. Nó cập nhật thông tin từ Model và hiển thị nó trên giao diện.
    • Controller: đóng vai trò là trung gian giữa Model và View, điều khiển luồng dữ liệu và xử lý các sự kiện và yêu cầu của người dùng. Nó là nơi xử lý các yêu cầu và cập nhật từ Model sau khi dữ liệu đã được xử lý.

Themer logo

2. Phân tích thiết kế hệ thống

2.1 Phân tích hệ thống

  • Chức năng của hệ thống
    • Hệ thống quản trị:
      • Quản lý tài khoản – nhân viên.
      • Quản lý tài khoản – người dùng.
      • Quản lý thông báo.
      • Quản lý Tin tức – Danh mục tin tức, bài viết.
      • Quản lý danh sách phòng trọ.
      • Quản lý thông tin người dùng - người thuê và cho thuê.
      • Quản lý gói tin – nạp tiền
      • Thống kê – báo cáo.
    • Hệ thống hiển thị phía người dùng:
      • Hiển thị danh mục phòng trọ - theo tùy chọn (giá – quận – loại phòng) .
      • Hiển thị thông tin phòng trọ: thông tin người cho thuê – thông tin loại phòng thuê.
      • Hiển thị bài biết, tin tức.
      • Hiển thị thông tin về công ty: cách thức liên lạc, mạng xã hội, địa chỉ thực, email, …
      • Cho phép người dùng đăng ký, đăng nhập, thay đổi thông tin tài khoản.
      • Cho phép người dùng thuê hoạt cho thuê phòng trọ, thay đổi thông tin bài đăng, cách thức liên lạc,…
      • Cho phép người dùng mua gói khi đăng bài, nạp tiền qua hình thức chuyển khoản qua ví điện tử.
  • Tác nhân của hệ thống
    • Admin - thực hiện chức năng quản trị hệ thống (nhân viên hỗ trợ): tài khoản, người dùng, phân quyền, giao diện, nạp gói – số dư.
    • Nhân viên hỗ trợ: kiểm duyệt bài đăng, tương tác với người dùng, hỗ trợ khi người dùng đặt câu hỏi.
    • Người dùng: đăng ký – đăng nhập tài khoản, tìm kiếm phòng trọ, cho thuê phòng trọ, nap gói – đăng tin,…

2.2 Usecase diagram

Themer logo

## 2.3 Đặc tả Usecase diagram - Use case Truy cập vào website

Themer logo

- Use case Tìm kiếm

Themer logo

- Use case Đăng ký tài khoản

Themer logo

- Use case Đăng nhập

Themer logo

- Use case Đăng bài

Themer logo

- Use case Quản lý nạp tiền

Themer logo

- Use case Quản lý bài đăng – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Admin

Themer logo

- Use case Quản lý bài đăng – Admin

Themer logo

## 2.4 ERD diagram

Themer logoThemer logo

2.5 Activity diagram

  • Activity diagram đăng kí

Themer logo

- Activity diagram đăng nhập

Themer logo

- Activity diagram lưu tin vào danh sách yêu thích

Themer logo

- Activity diagram bỏ lưu tin

Themer logo

- Activity diagram duyệt bài

Themer logo

- Activity diagram đăng tin

Themer logo

- Activity diagram nạp tiền

Themer logo

- Activity diagram mua gói

Themer logo

2.6 Sequence diagram

  • Squence Diagram Đăng kí
  • Themer logo

- Squence Diagram Đăng nhập

Themer logo

- Squence Diagram Đăng bài

Themer logo

- Squence Diagram Duyệt bài đăng

Themer logo

- Squence Diagram Tìm kiếm

Themer logo

- Squence Diagram Yêu thích

Themer logo

2.7 Kiến trúc hệ thống

  • Mô hình vật lý

Themer logo

3. Kết quả thực nghiệm

3.1 Giao diện người dùng

  • Giao diện trang chủ

    Themer logo

- Lọc bài theo yêu cầu

Themer logo

- Xem chi tiết tin

Themer logoThemer logo

- Gửi mail yêu cầu liên lạc người đăng

Themer logo

- Report bài đăng

Themer logo

- Quản lí thông tin cá nhân

Themer logo

- Danh sách bài đăng đã lưu

Themer logo

- Quản lí bài đăng

Themer logo

- Đăng bài

Themer logoThemer logo

- Thanh toán - nạp tiền e-wallet

Themer logoThemer logoThemer logoThemer logo

- Mua gói hiển thị

Themer logo

## 3.2 Giao diện quản trị - Quản lý bài đăng hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

  • Quản lý tài khoản hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

4. Kết luận - kiến nghị

4.1 Kết luận

  • Vận dụng kiến thức đã học về ASP .NET Core MVC để hoàn thành đồ án.
  • Sử dụng mô hình MVC (Model-View-Controller) dễ dàng bảo trì, quản lý khi có thay đổi về mặt chức năng theo yêu cầu.
  • Thành công xây dựng website với những chức năng cơ bản như đăng kí tài khoản, đăng nhập, tìm kiếm phòng trọ, xem chi tiết phòng, đăng bài cho thuê, quản lý thông tin cá nhân và bài đăng cá nhân ở phía clients; chức năng CRUD cho quản lý tài khoản và quản lý bài đăng, duyệt những bài đăng theo trạng thái cho phía admin của website.
  • Giao diện được thiết kế thân thiện, dễ sử dụng với người dùng.
  • Hệ thống cơ sở dữ liệu được thiết kế và triển khai một cách hiệu quả, đảm bảo tính nhất quán và bảo mật người dùng.

4.2 Kiến nghị

  • Tiếp tục nâng cao hiệu suất và tối ưu trang web, trong việc tải trang và xử lý đồng thời.
  • Mở rộng tính năng của trang web để cũng cấ thêm các dịch vụ hữu ích như thanh toán trực tuyến, đánh giá và nhận xét từ người dùng.

About

[Room Rental Finder]

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Latest commit

History

339 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

init db

 Scaffold-DbContext "Server=[]; Database=[];Trusted_Connection=SSPI;Encrypt=false;TrustServerCertificate=true"
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context "DbmojoinContext" -Force

-> 'ConnectionStrings' Program.cs

Themer logo

Tổng quan

  • Đồ án Chuyên ngành Công nghệ phần mềm
    • Tên đề tài: Website Hỗ trợ tìm thuê phòng trọ - mojoin

    • Mô tả:

      • Client-side: đăng tin, quản lý thông tin bài đăng và thông tin cá nhân, thanh toán gói tin hiển thị, etc.
      • Server-side: quản lý thông tin toàn hệ thống, xét duyệt bài đăng, etc.
    • Giảng viên hướng dẫn: Nguyễn Trí Định

  • Thành viên:
  • Công nghệ:
    • C#JavaScriptASP .NET Core 6.0 MVCMS SQLSendGridMoMo APIVnPay APIGoogleMap API

Mục lục

1. Cơ sở lý thuyết

1.1 Ngôn ngữ sử dụng

  • ASP.NET Core MVC là một framework “nhẹ”, opensource, giúp tối ưu hóa hiệu năng của ứng dụng với ASP.NET Core .
  • ASP.NET Core MVC cung cấp các tính năng dựa trên mô hình xây dựng website động cho phép phân chia rõ ràng các khối lệnh. Nó cung cấp cho bạn toàn quyền kiểm soát đánh dấu, hỗ trợ phát triển với TDD-friendly và sử dụng các tiêu chuẩn web mới nhất.

1.2 Công cụ sử dụng

  • Microsof Visual Studio 2020
  • SQL Server Management Studio 2019
  • Github

1.3 Hệ quản trị cơ sở dữ liệu

  • SQL Server 2019 là bộ phận quản lý cơ sở dữ liệu, được xây dựng dựa trên khái niệm trí tuệ nhân tạo nhằm tạo điều kiện thuận lợi, cải tiến dịch vụ cơ sở dữ liệu, bảo mật và giảm bớt các khó khăn gặp phải khi phát triển các ứng dụng và lưu trữ dữ liệu.

1.4 Mô hình - kỹ thuật

  • Mô hình MVC (Model – View – Controller)
    • Model: đại diện cho dữ liệu và xử lý logic, thực hiện các tác vụ như lấy và lưu trữ dữ liệu, kiểm tra tính hợp lệ của dữ liệu và thực hiện các tính toán logic.
    • View: đại diện cho người dùng, hiển thị thông tin cho người dùng và tương tác với họ. Nó cập nhật thông tin từ Model và hiển thị nó trên giao diện.
    • Controller: đóng vai trò là trung gian giữa Model và View, điều khiển luồng dữ liệu và xử lý các sự kiện và yêu cầu của người dùng. Nó là nơi xử lý các yêu cầu và cập nhật từ Model sau khi dữ liệu đã được xử lý.

Themer logo

2. Phân tích thiết kế hệ thống

2.1 Phân tích hệ thống

  • Chức năng của hệ thống
    • Hệ thống quản trị:
      • Quản lý tài khoản – nhân viên.
      • Quản lý tài khoản – người dùng.
      • Quản lý thông báo.
      • Quản lý Tin tức – Danh mục tin tức, bài viết.
      • Quản lý danh sách phòng trọ.
      • Quản lý thông tin người dùng - người thuê và cho thuê.
      • Quản lý gói tin – nạp tiền
      • Thống kê – báo cáo.
    • Hệ thống hiển thị phía người dùng:
      • Hiển thị danh mục phòng trọ - theo tùy chọn (giá – quận – loại phòng) .
      • Hiển thị thông tin phòng trọ: thông tin người cho thuê – thông tin loại phòng thuê.
      • Hiển thị bài biết, tin tức.
      • Hiển thị thông tin về công ty: cách thức liên lạc, mạng xã hội, địa chỉ thực, email, …
      • Cho phép người dùng đăng ký, đăng nhập, thay đổi thông tin tài khoản.
      • Cho phép người dùng thuê hoạt cho thuê phòng trọ, thay đổi thông tin bài đăng, cách thức liên lạc,…
      • Cho phép người dùng mua gói khi đăng bài, nạp tiền qua hình thức chuyển khoản qua ví điện tử.
  • Tác nhân của hệ thống
    • Admin - thực hiện chức năng quản trị hệ thống (nhân viên hỗ trợ): tài khoản, người dùng, phân quyền, giao diện, nạp gói – số dư.
    • Nhân viên hỗ trợ: kiểm duyệt bài đăng, tương tác với người dùng, hỗ trợ khi người dùng đặt câu hỏi.
    • Người dùng: đăng ký – đăng nhập tài khoản, tìm kiếm phòng trọ, cho thuê phòng trọ, nap gói – đăng tin,…

2.2 Usecase diagram

Themer logo

## 2.3 Đặc tả Usecase diagram - Use case Truy cập vào website

Themer logo

- Use case Tìm kiếm

Themer logo

- Use case Đăng ký tài khoản

Themer logo

- Use case Đăng nhập

Themer logo

- Use case Đăng bài

Themer logo

- Use case Quản lý nạp tiền

Themer logo

- Use case Quản lý bài đăng – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Admin

Themer logo

- Use case Quản lý bài đăng – Admin

Themer logo

## 2.4 ERD diagram

Themer logoThemer logo

2.5 Activity diagram

  • Activity diagram đăng kí

Themer logo

- Activity diagram đăng nhập

Themer logo

- Activity diagram lưu tin vào danh sách yêu thích

Themer logo

- Activity diagram bỏ lưu tin

Themer logo

- Activity diagram duyệt bài

Themer logo

- Activity diagram đăng tin

Themer logo

- Activity diagram nạp tiền

Themer logo

- Activity diagram mua gói

Themer logo

2.6 Sequence diagram

  • Squence Diagram Đăng kí
  • Themer logo

- Squence Diagram Đăng nhập

Themer logo

- Squence Diagram Đăng bài

Themer logo

- Squence Diagram Duyệt bài đăng

Themer logo

- Squence Diagram Tìm kiếm

Themer logo

- Squence Diagram Yêu thích

Themer logo

2.7 Kiến trúc hệ thống

  • Mô hình vật lý

Themer logo

3. Kết quả thực nghiệm

3.1 Giao diện người dùng

  • Giao diện trang chủ

    Themer logo

- Lọc bài theo yêu cầu

Themer logo

- Xem chi tiết tin

Themer logoThemer logo

- Gửi mail yêu cầu liên lạc người đăng

Themer logo

- Report bài đăng

Themer logo

- Quản lí thông tin cá nhân

Themer logo

- Danh sách bài đăng đã lưu

Themer logo

- Quản lí bài đăng

Themer logo

- Đăng bài

Themer logoThemer logo

- Thanh toán - nạp tiền e-wallet

Themer logoThemer logoThemer logoThemer logo

- Mua gói hiển thị

Themer logo

## 3.2 Giao diện quản trị - Quản lý bài đăng hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

  • Quản lý tài khoản hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

4. Kết luận - kiến nghị

4.1 Kết luận

  • Vận dụng kiến thức đã học về ASP .NET Core MVC để hoàn thành đồ án.
  • Sử dụng mô hình MVC (Model-View-Controller) dễ dàng bảo trì, quản lý khi có thay đổi về mặt chức năng theo yêu cầu.
  • Thành công xây dựng website với những chức năng cơ bản như đăng kí tài khoản, đăng nhập, tìm kiếm phòng trọ, xem chi tiết phòng, đăng bài cho thuê, quản lý thông tin cá nhân và bài đăng cá nhân ở phía clients; chức năng CRUD cho quản lý tài khoản và quản lý bài đăng, duyệt những bài đăng theo trạng thái cho phía admin của website.
  • Giao diện được thiết kế thân thiện, dễ sử dụng với người dùng.
  • Hệ thống cơ sở dữ liệu được thiết kế và triển khai một cách hiệu quả, đảm bảo tính nhất quán và bảo mật người dùng.

4.2 Kiến nghị

  • Tiếp tục nâng cao hiệu suất và tối ưu trang web, trong việc tải trang và xử lý đồng thời.
  • Mở rộng tính năng của trang web để cũng cấ thêm các dịch vụ hữu ích như thanh toán trực tuyến, đánh giá và nhận xét từ người dùng.

About

[Room Rental Finder]

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

339 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

init db

 Scaffold-DbContext "Server=[]; Database=[];Trusted_Connection=SSPI;Encrypt=false;TrustServerCertificate=true"
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context "DbmojoinContext" -Force

-> 'ConnectionStrings' Program.cs

Themer logo

Tổng quan

  • Đồ án Chuyên ngành Công nghệ phần mềm
    • Tên đề tài: Website Hỗ trợ tìm thuê phòng trọ - mojoin

    • Mô tả:

      • Client-side: đăng tin, quản lý thông tin bài đăng và thông tin cá nhân, thanh toán gói tin hiển thị, etc.
      • Server-side: quản lý thông tin toàn hệ thống, xét duyệt bài đăng, etc.
    • Giảng viên hướng dẫn: Nguyễn Trí Định

  • Thành viên:
  • Công nghệ:
    • C#JavaScriptASP .NET Core 6.0 MVCMS SQLSendGridMoMo APIVnPay APIGoogleMap API

Mục lục

1. Cơ sở lý thuyết

1.1 Ngôn ngữ sử dụng

  • ASP.NET Core MVC là một framework “nhẹ”, opensource, giúp tối ưu hóa hiệu năng của ứng dụng với ASP.NET Core .
  • ASP.NET Core MVC cung cấp các tính năng dựa trên mô hình xây dựng website động cho phép phân chia rõ ràng các khối lệnh. Nó cung cấp cho bạn toàn quyền kiểm soát đánh dấu, hỗ trợ phát triển với TDD-friendly và sử dụng các tiêu chuẩn web mới nhất.

1.2 Công cụ sử dụng

  • Microsof Visual Studio 2020
  • SQL Server Management Studio 2019
  • Github

1.3 Hệ quản trị cơ sở dữ liệu

  • SQL Server 2019 là bộ phận quản lý cơ sở dữ liệu, được xây dựng dựa trên khái niệm trí tuệ nhân tạo nhằm tạo điều kiện thuận lợi, cải tiến dịch vụ cơ sở dữ liệu, bảo mật và giảm bớt các khó khăn gặp phải khi phát triển các ứng dụng và lưu trữ dữ liệu.

1.4 Mô hình - kỹ thuật

  • Mô hình MVC (Model – View – Controller)
    • Model: đại diện cho dữ liệu và xử lý logic, thực hiện các tác vụ như lấy và lưu trữ dữ liệu, kiểm tra tính hợp lệ của dữ liệu và thực hiện các tính toán logic.
    • View: đại diện cho người dùng, hiển thị thông tin cho người dùng và tương tác với họ. Nó cập nhật thông tin từ Model và hiển thị nó trên giao diện.
    • Controller: đóng vai trò là trung gian giữa Model và View, điều khiển luồng dữ liệu và xử lý các sự kiện và yêu cầu của người dùng. Nó là nơi xử lý các yêu cầu và cập nhật từ Model sau khi dữ liệu đã được xử lý.

Themer logo

2. Phân tích thiết kế hệ thống

2.1 Phân tích hệ thống

  • Chức năng của hệ thống
    • Hệ thống quản trị:
      • Quản lý tài khoản – nhân viên.
      • Quản lý tài khoản – người dùng.
      • Quản lý thông báo.
      • Quản lý Tin tức – Danh mục tin tức, bài viết.
      • Quản lý danh sách phòng trọ.
      • Quản lý thông tin người dùng - người thuê và cho thuê.
      • Quản lý gói tin – nạp tiền
      • Thống kê – báo cáo.
    • Hệ thống hiển thị phía người dùng:
      • Hiển thị danh mục phòng trọ - theo tùy chọn (giá – quận – loại phòng) .
      • Hiển thị thông tin phòng trọ: thông tin người cho thuê – thông tin loại phòng thuê.
      • Hiển thị bài biết, tin tức.
      • Hiển thị thông tin về công ty: cách thức liên lạc, mạng xã hội, địa chỉ thực, email, …
      • Cho phép người dùng đăng ký, đăng nhập, thay đổi thông tin tài khoản.
      • Cho phép người dùng thuê hoạt cho thuê phòng trọ, thay đổi thông tin bài đăng, cách thức liên lạc,…
      • Cho phép người dùng mua gói khi đăng bài, nạp tiền qua hình thức chuyển khoản qua ví điện tử.
  • Tác nhân của hệ thống
    • Admin - thực hiện chức năng quản trị hệ thống (nhân viên hỗ trợ): tài khoản, người dùng, phân quyền, giao diện, nạp gói – số dư.
    • Nhân viên hỗ trợ: kiểm duyệt bài đăng, tương tác với người dùng, hỗ trợ khi người dùng đặt câu hỏi.
    • Người dùng: đăng ký – đăng nhập tài khoản, tìm kiếm phòng trọ, cho thuê phòng trọ, nap gói – đăng tin,…

2.2 Usecase diagram

Themer logo

## 2.3 Đặc tả Usecase diagram - Use case Truy cập vào website

Themer logo

- Use case Tìm kiếm

Themer logo

- Use case Đăng ký tài khoản

Themer logo

- Use case Đăng nhập

Themer logo

- Use case Đăng bài

Themer logo

- Use case Quản lý nạp tiền

Themer logo

- Use case Quản lý bài đăng – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Admin

Themer logo

- Use case Quản lý bài đăng – Admin

Themer logo

## 2.4 ERD diagram

Themer logoThemer logo

2.5 Activity diagram

  • Activity diagram đăng kí

Themer logo

- Activity diagram đăng nhập

Themer logo

- Activity diagram lưu tin vào danh sách yêu thích

Themer logo

- Activity diagram bỏ lưu tin

Themer logo

- Activity diagram duyệt bài

Themer logo

- Activity diagram đăng tin

Themer logo

- Activity diagram nạp tiền

Themer logo

- Activity diagram mua gói

Themer logo

2.6 Sequence diagram

  • Squence Diagram Đăng kí
  • Themer logo

- Squence Diagram Đăng nhập

Themer logo

- Squence Diagram Đăng bài

Themer logo

- Squence Diagram Duyệt bài đăng

Themer logo

- Squence Diagram Tìm kiếm

Themer logo

- Squence Diagram Yêu thích

Themer logo

2.7 Kiến trúc hệ thống

  • Mô hình vật lý

Themer logo

3. Kết quả thực nghiệm

3.1 Giao diện người dùng

  • Giao diện trang chủ

    Themer logo

- Lọc bài theo yêu cầu

Themer logo

- Xem chi tiết tin

Themer logoThemer logo

- Gửi mail yêu cầu liên lạc người đăng

Themer logo

- Report bài đăng

Themer logo

- Quản lí thông tin cá nhân

Themer logo

- Danh sách bài đăng đã lưu

Themer logo

- Quản lí bài đăng

Themer logo

- Đăng bài

Themer logoThemer logo

- Thanh toán - nạp tiền e-wallet

Themer logoThemer logoThemer logoThemer logo

- Mua gói hiển thị

Themer logo

## 3.2 Giao diện quản trị - Quản lý bài đăng hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

  • Quản lý tài khoản hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

4. Kết luận - kiến nghị

4.1 Kết luận

  • Vận dụng kiến thức đã học về ASP .NET Core MVC để hoàn thành đồ án.
  • Sử dụng mô hình MVC (Model-View-Controller) dễ dàng bảo trì, quản lý khi có thay đổi về mặt chức năng theo yêu cầu.
  • Thành công xây dựng website với những chức năng cơ bản như đăng kí tài khoản, đăng nhập, tìm kiếm phòng trọ, xem chi tiết phòng, đăng bài cho thuê, quản lý thông tin cá nhân và bài đăng cá nhân ở phía clients; chức năng CRUD cho quản lý tài khoản và quản lý bài đăng, duyệt những bài đăng theo trạng thái cho phía admin của website.
  • Giao diện được thiết kế thân thiện, dễ sử dụng với người dùng.
  • Hệ thống cơ sở dữ liệu được thiết kế và triển khai một cách hiệu quả, đảm bảo tính nhất quán và bảo mật người dùng.

4.2 Kiến nghị

  • Tiếp tục nâng cao hiệu suất và tối ưu trang web, trong việc tải trang và xử lý đồng thời.
  • Mở rộng tính năng của trang web để cũng cấ thêm các dịch vụ hữu ích như thanh toán trực tuyến, đánh giá và nhận xét từ người dùng.

About

[Room Rental Finder]

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

339 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

init db

 Scaffold-DbContext "Server=[]; Database=[];Trusted_Connection=SSPI;Encrypt=false;TrustServerCertificate=true"
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context "DbmojoinContext" -Force

-> 'ConnectionStrings' Program.cs

Themer logo

Tổng quan

  • Đồ án Chuyên ngành Công nghệ phần mềm
    • Tên đề tài: Website Hỗ trợ tìm thuê phòng trọ - mojoin

    • Mô tả:

      • Client-side: đăng tin, quản lý thông tin bài đăng và thông tin cá nhân, thanh toán gói tin hiển thị, etc.
      • Server-side: quản lý thông tin toàn hệ thống, xét duyệt bài đăng, etc.
    • Giảng viên hướng dẫn: Nguyễn Trí Định

  • Thành viên:
  • Công nghệ:
    • C#JavaScriptASP .NET Core 6.0 MVCMS SQLSendGridMoMo APIVnPay APIGoogleMap API

Mục lục

1. Cơ sở lý thuyết

1.1 Ngôn ngữ sử dụng

  • ASP.NET Core MVC là một framework “nhẹ”, opensource, giúp tối ưu hóa hiệu năng của ứng dụng với ASP.NET Core .
  • ASP.NET Core MVC cung cấp các tính năng dựa trên mô hình xây dựng website động cho phép phân chia rõ ràng các khối lệnh. Nó cung cấp cho bạn toàn quyền kiểm soát đánh dấu, hỗ trợ phát triển với TDD-friendly và sử dụng các tiêu chuẩn web mới nhất.

1.2 Công cụ sử dụng

  • Microsof Visual Studio 2020
  • SQL Server Management Studio 2019
  • Github

1.3 Hệ quản trị cơ sở dữ liệu

  • SQL Server 2019 là bộ phận quản lý cơ sở dữ liệu, được xây dựng dựa trên khái niệm trí tuệ nhân tạo nhằm tạo điều kiện thuận lợi, cải tiến dịch vụ cơ sở dữ liệu, bảo mật và giảm bớt các khó khăn gặp phải khi phát triển các ứng dụng và lưu trữ dữ liệu.

1.4 Mô hình - kỹ thuật

  • Mô hình MVC (Model – View – Controller)
    • Model: đại diện cho dữ liệu và xử lý logic, thực hiện các tác vụ như lấy và lưu trữ dữ liệu, kiểm tra tính hợp lệ của dữ liệu và thực hiện các tính toán logic.
    • View: đại diện cho người dùng, hiển thị thông tin cho người dùng và tương tác với họ. Nó cập nhật thông tin từ Model và hiển thị nó trên giao diện.
    • Controller: đóng vai trò là trung gian giữa Model và View, điều khiển luồng dữ liệu và xử lý các sự kiện và yêu cầu của người dùng. Nó là nơi xử lý các yêu cầu và cập nhật từ Model sau khi dữ liệu đã được xử lý.

Themer logo

2. Phân tích thiết kế hệ thống

2.1 Phân tích hệ thống

  • Chức năng của hệ thống
    • Hệ thống quản trị:
      • Quản lý tài khoản – nhân viên.
      • Quản lý tài khoản – người dùng.
      • Quản lý thông báo.
      • Quản lý Tin tức – Danh mục tin tức, bài viết.
      • Quản lý danh sách phòng trọ.
      • Quản lý thông tin người dùng - người thuê và cho thuê.
      • Quản lý gói tin – nạp tiền
      • Thống kê – báo cáo.
    • Hệ thống hiển thị phía người dùng:
      • Hiển thị danh mục phòng trọ - theo tùy chọn (giá – quận – loại phòng) .
      • Hiển thị thông tin phòng trọ: thông tin người cho thuê – thông tin loại phòng thuê.
      • Hiển thị bài biết, tin tức.
      • Hiển thị thông tin về công ty: cách thức liên lạc, mạng xã hội, địa chỉ thực, email, …
      • Cho phép người dùng đăng ký, đăng nhập, thay đổi thông tin tài khoản.
      • Cho phép người dùng thuê hoạt cho thuê phòng trọ, thay đổi thông tin bài đăng, cách thức liên lạc,…
      • Cho phép người dùng mua gói khi đăng bài, nạp tiền qua hình thức chuyển khoản qua ví điện tử.
  • Tác nhân của hệ thống
    • Admin - thực hiện chức năng quản trị hệ thống (nhân viên hỗ trợ): tài khoản, người dùng, phân quyền, giao diện, nạp gói – số dư.
    • Nhân viên hỗ trợ: kiểm duyệt bài đăng, tương tác với người dùng, hỗ trợ khi người dùng đặt câu hỏi.
    • Người dùng: đăng ký – đăng nhập tài khoản, tìm kiếm phòng trọ, cho thuê phòng trọ, nap gói – đăng tin,…

2.2 Usecase diagram

Themer logo

## 2.3 Đặc tả Usecase diagram - Use case Truy cập vào website

Themer logo

- Use case Tìm kiếm

Themer logo

- Use case Đăng ký tài khoản

Themer logo

- Use case Đăng nhập

Themer logo

- Use case Đăng bài

Themer logo

- Use case Quản lý nạp tiền

Themer logo

- Use case Quản lý bài đăng – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Admin

Themer logo

- Use case Quản lý bài đăng – Admin

Themer logo

## 2.4 ERD diagram

Themer logoThemer logo

2.5 Activity diagram

  • Activity diagram đăng kí

Themer logo

- Activity diagram đăng nhập

Themer logo

- Activity diagram lưu tin vào danh sách yêu thích

Themer logo

- Activity diagram bỏ lưu tin

Themer logo

- Activity diagram duyệt bài

Themer logo

- Activity diagram đăng tin

Themer logo

- Activity diagram nạp tiền

Themer logo

- Activity diagram mua gói

Themer logo

2.6 Sequence diagram

  • Squence Diagram Đăng kí
  • Themer logo

- Squence Diagram Đăng nhập

Themer logo

- Squence Diagram Đăng bài

Themer logo

- Squence Diagram Duyệt bài đăng

Themer logo

- Squence Diagram Tìm kiếm

Themer logo

- Squence Diagram Yêu thích

Themer logo

2.7 Kiến trúc hệ thống

  • Mô hình vật lý

Themer logo

3. Kết quả thực nghiệm

3.1 Giao diện người dùng

  • Giao diện trang chủ

    Themer logo

- Lọc bài theo yêu cầu

Themer logo

- Xem chi tiết tin

Themer logoThemer logo

- Gửi mail yêu cầu liên lạc người đăng

Themer logo

- Report bài đăng

Themer logo

- Quản lí thông tin cá nhân

Themer logo

- Danh sách bài đăng đã lưu

Themer logo

- Quản lí bài đăng

Themer logo

- Đăng bài

Themer logoThemer logo

- Thanh toán - nạp tiền e-wallet

Themer logoThemer logoThemer logoThemer logo

- Mua gói hiển thị

Themer logo

## 3.2 Giao diện quản trị - Quản lý bài đăng hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

  • Quản lý tài khoản hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

4. Kết luận - kiến nghị

4.1 Kết luận

  • Vận dụng kiến thức đã học về ASP .NET Core MVC để hoàn thành đồ án.
  • Sử dụng mô hình MVC (Model-View-Controller) dễ dàng bảo trì, quản lý khi có thay đổi về mặt chức năng theo yêu cầu.
  • Thành công xây dựng website với những chức năng cơ bản như đăng kí tài khoản, đăng nhập, tìm kiếm phòng trọ, xem chi tiết phòng, đăng bài cho thuê, quản lý thông tin cá nhân và bài đăng cá nhân ở phía clients; chức năng CRUD cho quản lý tài khoản và quản lý bài đăng, duyệt những bài đăng theo trạng thái cho phía admin của website.
  • Giao diện được thiết kế thân thiện, dễ sử dụng với người dùng.
  • Hệ thống cơ sở dữ liệu được thiết kế và triển khai một cách hiệu quả, đảm bảo tính nhất quán và bảo mật người dùng.

4.2 Kiến nghị

  • Tiếp tục nâng cao hiệu suất và tối ưu trang web, trong việc tải trang và xử lý đồng thời.
  • Mở rộng tính năng của trang web để cũng cấ thêm các dịch vụ hữu ích như thanh toán trực tuyến, đánh giá và nhận xét từ người dùng.

About

[Room Rental Finder]

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Latest commit

History

339 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

init db

 Scaffold-DbContext "Server=[]; Database=[];Trusted_Connection=SSPI;Encrypt=false;TrustServerCertificate=true"
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context "DbmojoinContext" -Force

-> 'ConnectionStrings' Program.cs

Themer logo

Tổng quan

  • Đồ án Chuyên ngành Công nghệ phần mềm
    • Tên đề tài: Website Hỗ trợ tìm thuê phòng trọ - mojoin

    • Mô tả:

      • Client-side: đăng tin, quản lý thông tin bài đăng và thông tin cá nhân, thanh toán gói tin hiển thị, etc.
      • Server-side: quản lý thông tin toàn hệ thống, xét duyệt bài đăng, etc.
    • Giảng viên hướng dẫn: Nguyễn Trí Định

  • Thành viên:
  • Công nghệ:
    • C#JavaScriptASP .NET Core 6.0 MVCMS SQLSendGridMoMo APIVnPay APIGoogleMap API

Mục lục

1. Cơ sở lý thuyết

1.1 Ngôn ngữ sử dụng

  • ASP.NET Core MVC là một framework “nhẹ”, opensource, giúp tối ưu hóa hiệu năng của ứng dụng với ASP.NET Core .
  • ASP.NET Core MVC cung cấp các tính năng dựa trên mô hình xây dựng website động cho phép phân chia rõ ràng các khối lệnh. Nó cung cấp cho bạn toàn quyền kiểm soát đánh dấu, hỗ trợ phát triển với TDD-friendly và sử dụng các tiêu chuẩn web mới nhất.

1.2 Công cụ sử dụng

  • Microsof Visual Studio 2020
  • SQL Server Management Studio 2019
  • Github

1.3 Hệ quản trị cơ sở dữ liệu

  • SQL Server 2019 là bộ phận quản lý cơ sở dữ liệu, được xây dựng dựa trên khái niệm trí tuệ nhân tạo nhằm tạo điều kiện thuận lợi, cải tiến dịch vụ cơ sở dữ liệu, bảo mật và giảm bớt các khó khăn gặp phải khi phát triển các ứng dụng và lưu trữ dữ liệu.

1.4 Mô hình - kỹ thuật

  • Mô hình MVC (Model – View – Controller)
    • Model: đại diện cho dữ liệu và xử lý logic, thực hiện các tác vụ như lấy và lưu trữ dữ liệu, kiểm tra tính hợp lệ của dữ liệu và thực hiện các tính toán logic.
    • View: đại diện cho người dùng, hiển thị thông tin cho người dùng và tương tác với họ. Nó cập nhật thông tin từ Model và hiển thị nó trên giao diện.
    • Controller: đóng vai trò là trung gian giữa Model và View, điều khiển luồng dữ liệu và xử lý các sự kiện và yêu cầu của người dùng. Nó là nơi xử lý các yêu cầu và cập nhật từ Model sau khi dữ liệu đã được xử lý.

Themer logo

2. Phân tích thiết kế hệ thống

2.1 Phân tích hệ thống

  • Chức năng của hệ thống
    • Hệ thống quản trị:
      • Quản lý tài khoản – nhân viên.
      • Quản lý tài khoản – người dùng.
      • Quản lý thông báo.
      • Quản lý Tin tức – Danh mục tin tức, bài viết.
      • Quản lý danh sách phòng trọ.
      • Quản lý thông tin người dùng - người thuê và cho thuê.
      • Quản lý gói tin – nạp tiền
      • Thống kê – báo cáo.
    • Hệ thống hiển thị phía người dùng:
      • Hiển thị danh mục phòng trọ - theo tùy chọn (giá – quận – loại phòng) .
      • Hiển thị thông tin phòng trọ: thông tin người cho thuê – thông tin loại phòng thuê.
      • Hiển thị bài biết, tin tức.
      • Hiển thị thông tin về công ty: cách thức liên lạc, mạng xã hội, địa chỉ thực, email, …
      • Cho phép người dùng đăng ký, đăng nhập, thay đổi thông tin tài khoản.
      • Cho phép người dùng thuê hoạt cho thuê phòng trọ, thay đổi thông tin bài đăng, cách thức liên lạc,…
      • Cho phép người dùng mua gói khi đăng bài, nạp tiền qua hình thức chuyển khoản qua ví điện tử.
  • Tác nhân của hệ thống
    • Admin - thực hiện chức năng quản trị hệ thống (nhân viên hỗ trợ): tài khoản, người dùng, phân quyền, giao diện, nạp gói – số dư.
    • Nhân viên hỗ trợ: kiểm duyệt bài đăng, tương tác với người dùng, hỗ trợ khi người dùng đặt câu hỏi.
    • Người dùng: đăng ký – đăng nhập tài khoản, tìm kiếm phòng trọ, cho thuê phòng trọ, nap gói – đăng tin,…

2.2 Usecase diagram

Themer logo

## 2.3 Đặc tả Usecase diagram - Use case Truy cập vào website

Themer logo

- Use case Tìm kiếm

Themer logo

- Use case Đăng ký tài khoản

Themer logo

- Use case Đăng nhập

Themer logo

- Use case Đăng bài

Themer logo

- Use case Quản lý nạp tiền

Themer logo

- Use case Quản lý bài đăng – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Admin

Themer logo

- Use case Quản lý bài đăng – Admin

Themer logo

## 2.4 ERD diagram

Themer logoThemer logo

2.5 Activity diagram

  • Activity diagram đăng kí

Themer logo

- Activity diagram đăng nhập

Themer logo

- Activity diagram lưu tin vào danh sách yêu thích

Themer logo

- Activity diagram bỏ lưu tin

Themer logo

- Activity diagram duyệt bài

Themer logo

- Activity diagram đăng tin

Themer logo

- Activity diagram nạp tiền

Themer logo

- Activity diagram mua gói

Themer logo

2.6 Sequence diagram

  • Squence Diagram Đăng kí
  • Themer logo

- Squence Diagram Đăng nhập

Themer logo

- Squence Diagram Đăng bài

Themer logo

- Squence Diagram Duyệt bài đăng

Themer logo

- Squence Diagram Tìm kiếm

Themer logo

- Squence Diagram Yêu thích

Themer logo

2.7 Kiến trúc hệ thống

  • Mô hình vật lý

Themer logo

3. Kết quả thực nghiệm

3.1 Giao diện người dùng

  • Giao diện trang chủ

    Themer logo

- Lọc bài theo yêu cầu

Themer logo

- Xem chi tiết tin

Themer logoThemer logo

- Gửi mail yêu cầu liên lạc người đăng

Themer logo

- Report bài đăng

Themer logo

- Quản lí thông tin cá nhân

Themer logo

- Danh sách bài đăng đã lưu

Themer logo

- Quản lí bài đăng

Themer logo

- Đăng bài

Themer logoThemer logo

- Thanh toán - nạp tiền e-wallet

Themer logoThemer logoThemer logoThemer logo

- Mua gói hiển thị

Themer logo

## 3.2 Giao diện quản trị - Quản lý bài đăng hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

  • Quản lý tài khoản hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

4. Kết luận - kiến nghị

4.1 Kết luận

  • Vận dụng kiến thức đã học về ASP .NET Core MVC để hoàn thành đồ án.
  • Sử dụng mô hình MVC (Model-View-Controller) dễ dàng bảo trì, quản lý khi có thay đổi về mặt chức năng theo yêu cầu.
  • Thành công xây dựng website với những chức năng cơ bản như đăng kí tài khoản, đăng nhập, tìm kiếm phòng trọ, xem chi tiết phòng, đăng bài cho thuê, quản lý thông tin cá nhân và bài đăng cá nhân ở phía clients; chức năng CRUD cho quản lý tài khoản và quản lý bài đăng, duyệt những bài đăng theo trạng thái cho phía admin của website.
  • Giao diện được thiết kế thân thiện, dễ sử dụng với người dùng.
  • Hệ thống cơ sở dữ liệu được thiết kế và triển khai một cách hiệu quả, đảm bảo tính nhất quán và bảo mật người dùng.

4.2 Kiến nghị

  • Tiếp tục nâng cao hiệu suất và tối ưu trang web, trong việc tải trang và xử lý đồng thời.
  • Mở rộng tính năng của trang web để cũng cấ thêm các dịch vụ hữu ích như thanh toán trực tuyến, đánh giá và nhận xét từ người dùng.

About

[Room Rental Finder]

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

339 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

init db

 Scaffold-DbContext "Server=[]; Database=[];Trusted_Connection=SSPI;Encrypt=false;TrustServerCertificate=true"
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context "DbmojoinContext" -Force

-> 'ConnectionStrings' Program.cs

Themer logo

Tổng quan

  • Đồ án Chuyên ngành Công nghệ phần mềm
    • Tên đề tài: Website Hỗ trợ tìm thuê phòng trọ - mojoin

    • Mô tả:

      • Client-side: đăng tin, quản lý thông tin bài đăng và thông tin cá nhân, thanh toán gói tin hiển thị, etc.
      • Server-side: quản lý thông tin toàn hệ thống, xét duyệt bài đăng, etc.
    • Giảng viên hướng dẫn: Nguyễn Trí Định

  • Thành viên:
  • Công nghệ:
    • C#JavaScriptASP .NET Core 6.0 MVCMS SQLSendGridMoMo APIVnPay APIGoogleMap API

Mục lục

1. Cơ sở lý thuyết

1.1 Ngôn ngữ sử dụng

  • ASP.NET Core MVC là một framework “nhẹ”, opensource, giúp tối ưu hóa hiệu năng của ứng dụng với ASP.NET Core .
  • ASP.NET Core MVC cung cấp các tính năng dựa trên mô hình xây dựng website động cho phép phân chia rõ ràng các khối lệnh. Nó cung cấp cho bạn toàn quyền kiểm soát đánh dấu, hỗ trợ phát triển với TDD-friendly và sử dụng các tiêu chuẩn web mới nhất.

1.2 Công cụ sử dụng

  • Microsof Visual Studio 2020
  • SQL Server Management Studio 2019
  • Github

1.3 Hệ quản trị cơ sở dữ liệu

  • SQL Server 2019 là bộ phận quản lý cơ sở dữ liệu, được xây dựng dựa trên khái niệm trí tuệ nhân tạo nhằm tạo điều kiện thuận lợi, cải tiến dịch vụ cơ sở dữ liệu, bảo mật và giảm bớt các khó khăn gặp phải khi phát triển các ứng dụng và lưu trữ dữ liệu.

1.4 Mô hình - kỹ thuật

  • Mô hình MVC (Model – View – Controller)
    • Model: đại diện cho dữ liệu và xử lý logic, thực hiện các tác vụ như lấy và lưu trữ dữ liệu, kiểm tra tính hợp lệ của dữ liệu và thực hiện các tính toán logic.
    • View: đại diện cho người dùng, hiển thị thông tin cho người dùng và tương tác với họ. Nó cập nhật thông tin từ Model và hiển thị nó trên giao diện.
    • Controller: đóng vai trò là trung gian giữa Model và View, điều khiển luồng dữ liệu và xử lý các sự kiện và yêu cầu của người dùng. Nó là nơi xử lý các yêu cầu và cập nhật từ Model sau khi dữ liệu đã được xử lý.

Themer logo

2. Phân tích thiết kế hệ thống

2.1 Phân tích hệ thống

  • Chức năng của hệ thống
    • Hệ thống quản trị:
      • Quản lý tài khoản – nhân viên.
      • Quản lý tài khoản – người dùng.
      • Quản lý thông báo.
      • Quản lý Tin tức – Danh mục tin tức, bài viết.
      • Quản lý danh sách phòng trọ.
      • Quản lý thông tin người dùng - người thuê và cho thuê.
      • Quản lý gói tin – nạp tiền
      • Thống kê – báo cáo.
    • Hệ thống hiển thị phía người dùng:
      • Hiển thị danh mục phòng trọ - theo tùy chọn (giá – quận – loại phòng) .
      • Hiển thị thông tin phòng trọ: thông tin người cho thuê – thông tin loại phòng thuê.
      • Hiển thị bài biết, tin tức.
      • Hiển thị thông tin về công ty: cách thức liên lạc, mạng xã hội, địa chỉ thực, email, …
      • Cho phép người dùng đăng ký, đăng nhập, thay đổi thông tin tài khoản.
      • Cho phép người dùng thuê hoạt cho thuê phòng trọ, thay đổi thông tin bài đăng, cách thức liên lạc,…
      • Cho phép người dùng mua gói khi đăng bài, nạp tiền qua hình thức chuyển khoản qua ví điện tử.
  • Tác nhân của hệ thống
    • Admin - thực hiện chức năng quản trị hệ thống (nhân viên hỗ trợ): tài khoản, người dùng, phân quyền, giao diện, nạp gói – số dư.
    • Nhân viên hỗ trợ: kiểm duyệt bài đăng, tương tác với người dùng, hỗ trợ khi người dùng đặt câu hỏi.
    • Người dùng: đăng ký – đăng nhập tài khoản, tìm kiếm phòng trọ, cho thuê phòng trọ, nap gói – đăng tin,…

2.2 Usecase diagram

Themer logo

## 2.3 Đặc tả Usecase diagram - Use case Truy cập vào website

Themer logo

- Use case Tìm kiếm

Themer logo

- Use case Đăng ký tài khoản

Themer logo

- Use case Đăng nhập

Themer logo

- Use case Đăng bài

Themer logo

- Use case Quản lý nạp tiền

Themer logo

- Use case Quản lý bài đăng – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Admin

Themer logo

- Use case Quản lý bài đăng – Admin

Themer logo

## 2.4 ERD diagram

Themer logoThemer logo

2.5 Activity diagram

  • Activity diagram đăng kí

Themer logo

- Activity diagram đăng nhập

Themer logo

- Activity diagram lưu tin vào danh sách yêu thích

Themer logo

- Activity diagram bỏ lưu tin

Themer logo

- Activity diagram duyệt bài

Themer logo

- Activity diagram đăng tin

Themer logo

- Activity diagram nạp tiền

Themer logo

- Activity diagram mua gói

Themer logo

2.6 Sequence diagram

  • Squence Diagram Đăng kí
  • Themer logo

- Squence Diagram Đăng nhập

Themer logo

- Squence Diagram Đăng bài

Themer logo

- Squence Diagram Duyệt bài đăng

Themer logo

- Squence Diagram Tìm kiếm

Themer logo

- Squence Diagram Yêu thích

Themer logo

2.7 Kiến trúc hệ thống

  • Mô hình vật lý

Themer logo

3. Kết quả thực nghiệm

3.1 Giao diện người dùng

  • Giao diện trang chủ

    Themer logo

- Lọc bài theo yêu cầu

Themer logo

- Xem chi tiết tin

Themer logoThemer logo

- Gửi mail yêu cầu liên lạc người đăng

Themer logo

- Report bài đăng

Themer logo

- Quản lí thông tin cá nhân

Themer logo

- Danh sách bài đăng đã lưu

Themer logo

- Quản lí bài đăng

Themer logo

- Đăng bài

Themer logoThemer logo

- Thanh toán - nạp tiền e-wallet

Themer logoThemer logoThemer logoThemer logo

- Mua gói hiển thị

Themer logo

## 3.2 Giao diện quản trị - Quản lý bài đăng hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

  • Quản lý tài khoản hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

4. Kết luận - kiến nghị

4.1 Kết luận

  • Vận dụng kiến thức đã học về ASP .NET Core MVC để hoàn thành đồ án.
  • Sử dụng mô hình MVC (Model-View-Controller) dễ dàng bảo trì, quản lý khi có thay đổi về mặt chức năng theo yêu cầu.
  • Thành công xây dựng website với những chức năng cơ bản như đăng kí tài khoản, đăng nhập, tìm kiếm phòng trọ, xem chi tiết phòng, đăng bài cho thuê, quản lý thông tin cá nhân và bài đăng cá nhân ở phía clients; chức năng CRUD cho quản lý tài khoản và quản lý bài đăng, duyệt những bài đăng theo trạng thái cho phía admin của website.
  • Giao diện được thiết kế thân thiện, dễ sử dụng với người dùng.
  • Hệ thống cơ sở dữ liệu được thiết kế và triển khai một cách hiệu quả, đảm bảo tính nhất quán và bảo mật người dùng.

4.2 Kiến nghị

  • Tiếp tục nâng cao hiệu suất và tối ưu trang web, trong việc tải trang và xử lý đồng thời.
  • Mở rộng tính năng của trang web để cũng cấ thêm các dịch vụ hữu ích như thanh toán trực tuyến, đánh giá và nhận xét từ người dùng.

About

[Room Rental Finder]

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

339 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

init db

 Scaffold-DbContext "Server=[]; Database=[];Trusted_Connection=SSPI;Encrypt=false;TrustServerCertificate=true"
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context "DbmojoinContext" -Force

-> 'ConnectionStrings' Program.cs

Themer logo

Tổng quan

  • Đồ án Chuyên ngành Công nghệ phần mềm
    • Tên đề tài: Website Hỗ trợ tìm thuê phòng trọ - mojoin

    • Mô tả:

      • Client-side: đăng tin, quản lý thông tin bài đăng và thông tin cá nhân, thanh toán gói tin hiển thị, etc.
      • Server-side: quản lý thông tin toàn hệ thống, xét duyệt bài đăng, etc.
    • Giảng viên hướng dẫn: Nguyễn Trí Định

  • Thành viên:
  • Công nghệ:
    • C#JavaScriptASP .NET Core 6.0 MVCMS SQLSendGridMoMo APIVnPay APIGoogleMap API

Mục lục

1. Cơ sở lý thuyết

1.1 Ngôn ngữ sử dụng

  • ASP.NET Core MVC là một framework “nhẹ”, opensource, giúp tối ưu hóa hiệu năng của ứng dụng với ASP.NET Core .
  • ASP.NET Core MVC cung cấp các tính năng dựa trên mô hình xây dựng website động cho phép phân chia rõ ràng các khối lệnh. Nó cung cấp cho bạn toàn quyền kiểm soát đánh dấu, hỗ trợ phát triển với TDD-friendly và sử dụng các tiêu chuẩn web mới nhất.

1.2 Công cụ sử dụng

  • Microsof Visual Studio 2020
  • SQL Server Management Studio 2019
  • Github

1.3 Hệ quản trị cơ sở dữ liệu

  • SQL Server 2019 là bộ phận quản lý cơ sở dữ liệu, được xây dựng dựa trên khái niệm trí tuệ nhân tạo nhằm tạo điều kiện thuận lợi, cải tiến dịch vụ cơ sở dữ liệu, bảo mật và giảm bớt các khó khăn gặp phải khi phát triển các ứng dụng và lưu trữ dữ liệu.

1.4 Mô hình - kỹ thuật

  • Mô hình MVC (Model – View – Controller)
    • Model: đại diện cho dữ liệu và xử lý logic, thực hiện các tác vụ như lấy và lưu trữ dữ liệu, kiểm tra tính hợp lệ của dữ liệu và thực hiện các tính toán logic.
    • View: đại diện cho người dùng, hiển thị thông tin cho người dùng và tương tác với họ. Nó cập nhật thông tin từ Model và hiển thị nó trên giao diện.
    • Controller: đóng vai trò là trung gian giữa Model và View, điều khiển luồng dữ liệu và xử lý các sự kiện và yêu cầu của người dùng. Nó là nơi xử lý các yêu cầu và cập nhật từ Model sau khi dữ liệu đã được xử lý.

Themer logo

2. Phân tích thiết kế hệ thống

2.1 Phân tích hệ thống

  • Chức năng của hệ thống
    • Hệ thống quản trị:
      • Quản lý tài khoản – nhân viên.
      • Quản lý tài khoản – người dùng.
      • Quản lý thông báo.
      • Quản lý Tin tức – Danh mục tin tức, bài viết.
      • Quản lý danh sách phòng trọ.
      • Quản lý thông tin người dùng - người thuê và cho thuê.
      • Quản lý gói tin – nạp tiền
      • Thống kê – báo cáo.
    • Hệ thống hiển thị phía người dùng:
      • Hiển thị danh mục phòng trọ - theo tùy chọn (giá – quận – loại phòng) .
      • Hiển thị thông tin phòng trọ: thông tin người cho thuê – thông tin loại phòng thuê.
      • Hiển thị bài biết, tin tức.
      • Hiển thị thông tin về công ty: cách thức liên lạc, mạng xã hội, địa chỉ thực, email, …
      • Cho phép người dùng đăng ký, đăng nhập, thay đổi thông tin tài khoản.
      • Cho phép người dùng thuê hoạt cho thuê phòng trọ, thay đổi thông tin bài đăng, cách thức liên lạc,…
      • Cho phép người dùng mua gói khi đăng bài, nạp tiền qua hình thức chuyển khoản qua ví điện tử.
  • Tác nhân của hệ thống
    • Admin - thực hiện chức năng quản trị hệ thống (nhân viên hỗ trợ): tài khoản, người dùng, phân quyền, giao diện, nạp gói – số dư.
    • Nhân viên hỗ trợ: kiểm duyệt bài đăng, tương tác với người dùng, hỗ trợ khi người dùng đặt câu hỏi.
    • Người dùng: đăng ký – đăng nhập tài khoản, tìm kiếm phòng trọ, cho thuê phòng trọ, nap gói – đăng tin,…

2.2 Usecase diagram

Themer logo

## 2.3 Đặc tả Usecase diagram - Use case Truy cập vào website

Themer logo

- Use case Tìm kiếm

Themer logo

- Use case Đăng ký tài khoản

Themer logo

- Use case Đăng nhập

Themer logo

- Use case Đăng bài

Themer logo

- Use case Quản lý nạp tiền

Themer logo

- Use case Quản lý bài đăng – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Admin

Themer logo

- Use case Quản lý bài đăng – Admin

Themer logo

## 2.4 ERD diagram

Themer logoThemer logo

2.5 Activity diagram

  • Activity diagram đăng kí

Themer logo

- Activity diagram đăng nhập

Themer logo

- Activity diagram lưu tin vào danh sách yêu thích

Themer logo

- Activity diagram bỏ lưu tin

Themer logo

- Activity diagram duyệt bài

Themer logo

- Activity diagram đăng tin

Themer logo

- Activity diagram nạp tiền

Themer logo

- Activity diagram mua gói

Themer logo

2.6 Sequence diagram

  • Squence Diagram Đăng kí
  • Themer logo

- Squence Diagram Đăng nhập

Themer logo

- Squence Diagram Đăng bài

Themer logo

- Squence Diagram Duyệt bài đăng

Themer logo

- Squence Diagram Tìm kiếm

Themer logo

- Squence Diagram Yêu thích

Themer logo

2.7 Kiến trúc hệ thống

  • Mô hình vật lý

Themer logo

3. Kết quả thực nghiệm

3.1 Giao diện người dùng

  • Giao diện trang chủ

    Themer logo

- Lọc bài theo yêu cầu

Themer logo

- Xem chi tiết tin

Themer logoThemer logo

- Gửi mail yêu cầu liên lạc người đăng

Themer logo

- Report bài đăng

Themer logo

- Quản lí thông tin cá nhân

Themer logo

- Danh sách bài đăng đã lưu

Themer logo

- Quản lí bài đăng

Themer logo

- Đăng bài

Themer logoThemer logo

- Thanh toán - nạp tiền e-wallet

Themer logoThemer logoThemer logoThemer logo

- Mua gói hiển thị

Themer logo

## 3.2 Giao diện quản trị - Quản lý bài đăng hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

  • Quản lý tài khoản hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

4. Kết luận - kiến nghị

4.1 Kết luận

  • Vận dụng kiến thức đã học về ASP .NET Core MVC để hoàn thành đồ án.
  • Sử dụng mô hình MVC (Model-View-Controller) dễ dàng bảo trì, quản lý khi có thay đổi về mặt chức năng theo yêu cầu.
  • Thành công xây dựng website với những chức năng cơ bản như đăng kí tài khoản, đăng nhập, tìm kiếm phòng trọ, xem chi tiết phòng, đăng bài cho thuê, quản lý thông tin cá nhân và bài đăng cá nhân ở phía clients; chức năng CRUD cho quản lý tài khoản và quản lý bài đăng, duyệt những bài đăng theo trạng thái cho phía admin của website.
  • Giao diện được thiết kế thân thiện, dễ sử dụng với người dùng.
  • Hệ thống cơ sở dữ liệu được thiết kế và triển khai một cách hiệu quả, đảm bảo tính nhất quán và bảo mật người dùng.

4.2 Kiến nghị

  • Tiếp tục nâng cao hiệu suất và tối ưu trang web, trong việc tải trang và xử lý đồng thời.
  • Mở rộng tính năng của trang web để cũng cấ thêm các dịch vụ hữu ích như thanh toán trực tuyến, đánh giá và nhận xét từ người dùng.

About

[Room Rental Finder]

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Latest commit

History

339 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

init db

 Scaffold-DbContext "Server=[]; Database=[];Trusted_Connection=SSPI;Encrypt=false;TrustServerCertificate=true"
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context "DbmojoinContext" -Force

-> 'ConnectionStrings' Program.cs

Themer logo

Tổng quan

  • Đồ án Chuyên ngành Công nghệ phần mềm
    • Tên đề tài: Website Hỗ trợ tìm thuê phòng trọ - mojoin

    • Mô tả:

      • Client-side: đăng tin, quản lý thông tin bài đăng và thông tin cá nhân, thanh toán gói tin hiển thị, etc.
      • Server-side: quản lý thông tin toàn hệ thống, xét duyệt bài đăng, etc.
    • Giảng viên hướng dẫn: Nguyễn Trí Định

  • Thành viên:
  • Công nghệ:
    • C#JavaScriptASP .NET Core 6.0 MVCMS SQLSendGridMoMo APIVnPay APIGoogleMap API

Mục lục

1. Cơ sở lý thuyết

1.1 Ngôn ngữ sử dụng

  • ASP.NET Core MVC là một framework “nhẹ”, opensource, giúp tối ưu hóa hiệu năng của ứng dụng với ASP.NET Core .
  • ASP.NET Core MVC cung cấp các tính năng dựa trên mô hình xây dựng website động cho phép phân chia rõ ràng các khối lệnh. Nó cung cấp cho bạn toàn quyền kiểm soát đánh dấu, hỗ trợ phát triển với TDD-friendly và sử dụng các tiêu chuẩn web mới nhất.

1.2 Công cụ sử dụng

  • Microsof Visual Studio 2020
  • SQL Server Management Studio 2019
  • Github

1.3 Hệ quản trị cơ sở dữ liệu

  • SQL Server 2019 là bộ phận quản lý cơ sở dữ liệu, được xây dựng dựa trên khái niệm trí tuệ nhân tạo nhằm tạo điều kiện thuận lợi, cải tiến dịch vụ cơ sở dữ liệu, bảo mật và giảm bớt các khó khăn gặp phải khi phát triển các ứng dụng và lưu trữ dữ liệu.

1.4 Mô hình - kỹ thuật

  • Mô hình MVC (Model – View – Controller)
    • Model: đại diện cho dữ liệu và xử lý logic, thực hiện các tác vụ như lấy và lưu trữ dữ liệu, kiểm tra tính hợp lệ của dữ liệu và thực hiện các tính toán logic.
    • View: đại diện cho người dùng, hiển thị thông tin cho người dùng và tương tác với họ. Nó cập nhật thông tin từ Model và hiển thị nó trên giao diện.
    • Controller: đóng vai trò là trung gian giữa Model và View, điều khiển luồng dữ liệu và xử lý các sự kiện và yêu cầu của người dùng. Nó là nơi xử lý các yêu cầu và cập nhật từ Model sau khi dữ liệu đã được xử lý.

Themer logo

2. Phân tích thiết kế hệ thống

2.1 Phân tích hệ thống

  • Chức năng của hệ thống
    • Hệ thống quản trị:
      • Quản lý tài khoản – nhân viên.
      • Quản lý tài khoản – người dùng.
      • Quản lý thông báo.
      • Quản lý Tin tức – Danh mục tin tức, bài viết.
      • Quản lý danh sách phòng trọ.
      • Quản lý thông tin người dùng - người thuê và cho thuê.
      • Quản lý gói tin – nạp tiền
      • Thống kê – báo cáo.
    • Hệ thống hiển thị phía người dùng:
      • Hiển thị danh mục phòng trọ - theo tùy chọn (giá – quận – loại phòng) .
      • Hiển thị thông tin phòng trọ: thông tin người cho thuê – thông tin loại phòng thuê.
      • Hiển thị bài biết, tin tức.
      • Hiển thị thông tin về công ty: cách thức liên lạc, mạng xã hội, địa chỉ thực, email, …
      • Cho phép người dùng đăng ký, đăng nhập, thay đổi thông tin tài khoản.
      • Cho phép người dùng thuê hoạt cho thuê phòng trọ, thay đổi thông tin bài đăng, cách thức liên lạc,…
      • Cho phép người dùng mua gói khi đăng bài, nạp tiền qua hình thức chuyển khoản qua ví điện tử.
  • Tác nhân của hệ thống
    • Admin - thực hiện chức năng quản trị hệ thống (nhân viên hỗ trợ): tài khoản, người dùng, phân quyền, giao diện, nạp gói – số dư.
    • Nhân viên hỗ trợ: kiểm duyệt bài đăng, tương tác với người dùng, hỗ trợ khi người dùng đặt câu hỏi.
    • Người dùng: đăng ký – đăng nhập tài khoản, tìm kiếm phòng trọ, cho thuê phòng trọ, nap gói – đăng tin,…

2.2 Usecase diagram

Themer logo

## 2.3 Đặc tả Usecase diagram - Use case Truy cập vào website

Themer logo

- Use case Tìm kiếm

Themer logo

- Use case Đăng ký tài khoản

Themer logo

- Use case Đăng nhập

Themer logo

- Use case Đăng bài

Themer logo

- Use case Quản lý nạp tiền

Themer logo

- Use case Quản lý bài đăng – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Cá nhân

Themer logo

- Use case Quản lý tài khoản – Admin

Themer logo

- Use case Quản lý bài đăng – Admin

Themer logo

## 2.4 ERD diagram

Themer logoThemer logo

2.5 Activity diagram

  • Activity diagram đăng kí

Themer logo

- Activity diagram đăng nhập

Themer logo

- Activity diagram lưu tin vào danh sách yêu thích

Themer logo

- Activity diagram bỏ lưu tin

Themer logo

- Activity diagram duyệt bài

Themer logo

- Activity diagram đăng tin

Themer logo

- Activity diagram nạp tiền

Themer logo

- Activity diagram mua gói

Themer logo

2.6 Sequence diagram

  • Squence Diagram Đăng kí
  • Themer logo

- Squence Diagram Đăng nhập

Themer logo

- Squence Diagram Đăng bài

Themer logo

- Squence Diagram Duyệt bài đăng

Themer logo

- Squence Diagram Tìm kiếm

Themer logo

- Squence Diagram Yêu thích

Themer logo

2.7 Kiến trúc hệ thống

  • Mô hình vật lý

Themer logo

3. Kết quả thực nghiệm

3.1 Giao diện người dùng

  • Giao diện trang chủ

    Themer logo

- Lọc bài theo yêu cầu

Themer logo

- Xem chi tiết tin

Themer logoThemer logo

- Gửi mail yêu cầu liên lạc người đăng

Themer logo

- Report bài đăng

Themer logo

- Quản lí thông tin cá nhân

Themer logo

- Danh sách bài đăng đã lưu

Themer logo

- Quản lí bài đăng

Themer logo

- Đăng bài

Themer logoThemer logo

- Thanh toán - nạp tiền e-wallet

Themer logoThemer logoThemer logoThemer logo

- Mua gói hiển thị

Themer logo

## 3.2 Giao diện quản trị - Quản lý bài đăng hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

  • Quản lý tài khoản hệ thống

Themer logo

Themer logo

Themer logo

Themer logo

4. Kết luận - kiến nghị

4.1 Kết luận

  • Vận dụng kiến thức đã học về ASP .NET Core MVC để hoàn thành đồ án.
  • Sử dụng mô hình MVC (Model-View-Controller) dễ dàng bảo trì, quản lý khi có thay đổi về mặt chức năng theo yêu cầu.
  • Thành công xây dựng website với những chức năng cơ bản như đăng kí tài khoản, đăng nhập, tìm kiếm phòng trọ, xem chi tiết phòng, đăng bài cho thuê, quản lý thông tin cá nhân và bài đăng cá nhân ở phía clients; chức năng CRUD cho quản lý tài khoản và quản lý bài đăng, duyệt những bài đăng theo trạng thái cho phía admin của website.
  • Giao diện được thiết kế thân thiện, dễ sử dụng với người dùng.
  • Hệ thống cơ sở dữ liệu được thiết kế và triển khai một cách hiệu quả, đảm bảo tính nhất quán và bảo mật người dùng.

4.2 Kiến nghị

  • Tiếp tục nâng cao hiệu suất và tối ưu trang web, trong việc tải trang và xử lý đồng thời.
  • Mở rộng tính năng của trang web để cũng cấ thêm các dịch vụ hữu ích như thanh toán trực tuyến, đánh giá và nhận xét từ người dùng.

About

[Room Rental Finder]

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages