Nhưng các vấn đề liên quan đến chi trả, cần bàn bạc, traođổi, hợp đồng đều không thể trao đổi qua mạng xã hội mà cần một ứng dụng cóthể quản lí những giao dịch, trao đổi giữa người đi th
Mục tiêu nghiên cứu
Mục tiêu của đồ án là tìm ra giải pháp hiệu quả để giải quyết công cho thuê phòng trọ Các mục tiêu cụ thể của đề tài gồm:
- Tìm ra phương pháp hiệu quả trong việc cho thuê phòng trọ của người cho thuê.
- Tìm ra phương pháp hiệu quả trong việc đi tìm phòng trọ của người đi thuê.
- Tìm ra phương pháp quản lí hiệu quả các hợp đồng cho thuê, hoá đơn chi
- Ứng dụng ngôn ngữ Dart và công nghệ Flutter vào xây dựng ứng dụng di động cho thuê phòng trọ.
- Ứng dụng ngôn ngữ GoLang và công nghệ GraphQL và GRPC vào xây dựng backend cho ứng dụng.
- Ứng dụng công nghệ React JS vào xây dựng website quản lí cho người quản trị.
Phương pháp nghiên cứu
- Phương pháp lý thuyết: Nghiên cứu các tài liệu liên quan đến các nội dung nghiên cứu: Tài liệu về các ngôn ngôn ngữ lập trình, các framework Flutter, GoLang và ReactJS, các nhu cầu của người cho thuê, người đi thuê.
- Phương pháp thực nghiệm: Nghiên cứu, xây dựng các phương pháp đặt cọc,thuê phòng, tìm phòng, trao đổi thông tin qua lại dưới dạng tin nhắn và quản lí hiệu quả cho việc thuê phòng trọ Phát triển ứng dụng thuê phòng trọ và đánh giá kết quả.
Ý nghĩa của đề tài
Đề tài đang hướng vào ứng dụng công nghệ thông tin trong lĩnh vực bất động sản, cụ thể là ứng dụng cho thuê phòng trọ Việc ứng dụng công nghệ thông tin vào lĩnh vực này nhằm đẩy mạnh quá trình áp dụng công nghệ thông tin vào cuộc sống Và đề tài hướng đến người sử dụng là tất cả mọi người, đặc biệt có ích đối với các sinh viên, người lao động sống xa nhà, hay người môi giới,… Đóng góp chính của đề tài là đề xuất phương pháp thích hợp cho người đi thuê và người cho thuê một cách nhanh chóng và rõ ràng, gồm đầy đủ các bản hợp đồng, hoá đơn thanh toán và các cuộc trao đổi qua tin nhắn.
Bố cục của đề tài
Trên cơ sở các nội dung nghiên cứu, để đạt mục tiêu đề ra và đảm bảo tính logic, ngoài phần mở đầu và phần kết luận, đồ án được tổ chức thành các chương như sau:
Chương 1 Cơ sở lý thuyết Chương này trình bày kết quả nghiên cứu về lập trình đa nền tảng; trình bày các cơ sở lí thuyết về ngôn ngữ lập trình: Dart, GoLang, Javascript cùng các framework tương ứng Flutter, GraphQL, GRPC, ReactJS được sử dụng trong việc xây dựng đề tài.
Chương 2: Phân tích và thiết kế hệ thống Chương này giới thiệu bài toán và đưa ra các mô hình hệ thống; đề xuất các ý tưởng, chức năng cho phần mềm; trình bày các mô hình thực thể quan hệ, sơ đồ phân cấp chức năng Phân tích chi tiết các chức năng của người sử dụng và người quản lí; thiết kế giao diện người dùng và thiết dữ liệu, chức năng cho hệ thống.
Chương 3: Cài đặt chương trình và kết quả Trong chương này, nêu kết quả thực hiện được của đề tài và trình bày cách cài đặt chương trình.
Đóng góp của đồ án
Trong đồ án thực tập tốt nghiệp này, chúng em đã vận dụng linh hoạt những kiến thức đã được học trên giảng đường để thực hiện đề tài Bên cạnh đó, chúng em cũng đã cùng nhau trao đổi, bàn bạc, đưa ra ý tưởng và đề xuất hướng các tác vụ của người dùng cùng với đơn vị thực tập, nhằm xây dựng một đồ án thực tập tốt nghiệp hoàn chỉnh cũng như một sản phẩm thân thiện cho người sử dụng Những đóng góp chính của đồ án thực tập tốt nghiệp:
Phân tích rõ ràng vai trò của người sử dụng trong hệ thống
- Đối với người đi thuê trọ/căn hộ, người dùng có thể tìm kiếm các toà nhà/dãy trọ và đặt cọc phòng mà mình muốn thuê Người dùng có thể tiến hành thanh toán các hoá đơn tiền điện, nước, chi phí thuê phòng và quản lí được mọi thuê và cho thuê Hợp đồng thuê phòng cũng được thể hiện một cách cụ thể và đầy đủ các thông tin cần thiết.
- Đối với người cho thuê trọ/căn hộ, họ có thể đăng tải thông tin cần toà nhà/dãy trọ và các phòng trọ/căn hộ gồm các thông tin liên quan, tiện ích và giá đặt cọc, giá thuê Họ cũng là người xác nhận các yêu cầu đặt cọc phòng cho người thuê để tạo hợp đồng cho người thuê Người chủ có thể tạo các hoá đơn điện, nước, chi phí thuê ứng với phòng đó và quản lí việc chi trả hoá đơn trên ứng dụng.
- Đối với người quản lí, họ có thể quản lí toàn bộ các thông tin người dùng, toà nhà, căn hộ, hoá đơn, hợp đồng của hệ thống
Phân tích và thiết kế chức năng thanh toán hoá đơn trực tuyến
Nghiên cứu và triển khai thực nghiệm chức năng thanh toán hoá đơn trực tuyến nhằm đáp ứng được sự nhanh chóng, tiện dụng, tiết kiệm thời gian của người dùng Bên cạnh đó, khi thanh toán trực tuyến, người dùng dễ dàng quản lí, kiểm soát được tài chính, trạng thái hoá đơn của mình Ngoài ra, việc thanh toán trực tuyến làm tăng tính chuyên nghiệp trong kinh doanh cũng như quy trình hoạt động của ứng dụng.
Thiết kế chức năng nhắn tin cá nhân và nhắn tin nhóm cho ứng dụng
Việc liên lạc giữa người cho thuê và người đi thuê là thực sự cần thiết để trao đổi về các vấn đề liên quan đến hợp đồng, hoá đơn, điện nước hay các vấn đề liên quan đến phòng đang thuê Chức năng nhắn tin cá nhân hoặc nhắn tin nhóm nhằm đáp ứng nhu cầu trao đổi một cách thuận tiện cho người dùng mà không cần phải sử dụng thông qua một ứng dụng khác để trao đổi các vấn đề liên quan.
CƠ SỞ LÝ THUYẾT
Tổng quan về ngôn ngữ Dart
Hoàn thành nội dung và viết báo cáo chương 1
Tổng quan về ngôn ngữ Golang
Hệ quản trị cơ sở dữ liệu PostgetQL
Chương 2: Phân tích và thiết kế hệ thống
2.1 Phân tích yêu cầu đề tài
Trịnh Nhật Hạ Vy Nguyễn Đình Toản
Hoàn thành nội dung và viết báo cáo chương 2.
Hoàn thiện mã nguồn cho tất cả chức năng của ứng dụng và trang web (bao gồm Frontend và Backend).
2.4 Biểu đồ ca sử dụng Trịnh Nhật Hạ Vy
2.5 Biểu đồ hoạt động Trịnh Nhật Hạ Vy
2.6 Biểu đồ tuần tự Nguyễn Đình Toản
2.7 Thiết kế cơ sở dữ liệu Nguyễn Đình Toản
Lập trình giao diện cơ bản ứng dụng Trịnh Nhật Hạ Vy
Lập trình giao diện dành cho doanh nghiệp của ứng dụng
Lập trình trang web cho người quản trị
Lập trình giao diện tin nhắn ứng dụng
Lập trình giao diện phương thức thanh toán cho ứng dụng
Lập trình API cơ bản
Lập trình API cho doanh nghiệp
Lập trình API cho người thuê
Lập trình API cho người quản trị
Lập trình API tin nhắn
Lập trình API phương thức thanh toán
Chương 3: Cài đặt chương trình và kết quả
Trịnh Nhật Hạ Vy Nguyễn Đình Toản
04/04/2022 – 08/04/2022 Hoàn thành nội dung và viết báo cáo chương 3.
Chương 4: Kết luận và hướng phát triển
Trịnh Nhật Hạ Vy Nguyễn Đình Toản
11/04/2022 – 15/04/2022Hoàn thành chương 4 Hoàn thiện sản phẩm và báo cáo TTTN4.2 Định hướng phát triển
KẾ HOẠCH THỰC HIỆN ĐỀ TÀI CỦA NHÓM
DANH MỤC BẢNG BIỂU vi
DANH MỤC HÌNH VẼ vii
1 Lí do chọn đề tài 2
3 Đối tượng và phạm vi nghiên cứu 4
6 Bố cục của đề tài 4
7 Đóng góp của đồ án 5
CHƯƠNG I: CƠ SỞ LÝ THUYẾT 7
1.1 Tổng quan về ngôn ngữ Dart 7
1.1.2 Lịch sử hình thành ngôn ngữ Dart 7
1.1.3 Tại sao sử dụng ngôn ngữ Dart 8
1.2 Tổng quan về framework Flutter 10
1.2.5 Ưu và nhược điểm của Flutter 14
1.3 Tổng quan về ngôn ngữ Javascript 15
1.3.5 Sự khác nhau giữa Javascript với các ngôn ngữ lập trình web khác 20
1.4 Tổng quan về framework ReactJS 21
1.4.3 Ưu và nhược điểm của ReactJS 23
1.4.4 Sự phát triển của ReactJS 24
1.5 Tổng quan về ngôn ngữ Golang 25
1.5.2 Lịch sử hình thành ngôn ngữ Golang 25
1.5.4 Ưu và nhược điểm của Golang 27
1.5.5 Các lĩnh vực ứng dụng Golang 28
1.6.3 Ưu và nhược điểm của gRPC 31
1.7.4 Ưu và nhược điểm GraphQL 34
1.8 Hệ quản trị cơ sở dữ liệu PostgetQL 34
1.8.4 So sánh PostgetSQL và MySQL 36
CHƯƠNG II: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 40
2.1 Phân tích yêu cầu đề tài 40
2.4 Biểu đồ ca sử dụng 44
2.4.1 Biểu đồ ca sử dụng của hệ thống 46
2.4.2 Biểu đồ ca sử dụng quản lí (dành cho người quản trị) 46
2.4.3 Biểu đồ ca sử dụng nhắn tin của hệ thống 47
2.5.1 Biểu đồ hoạt động đăng kí 49
2.5.2 Biểu đồ hoạt động đăng nhập 50
2.5.3 Biểu đồ hoạt động khôi phục mật khẩu 50
2.5.4 Biểu đồ hoạt động tạo toà nhà 51
2.5.5 Biểu đồ hoạt động chỉnh sửa toà nhà 51
2.5.6 Biểu đồ hoạt động xoá toà nhà 51
2.5.7 Biểu đồ hoạt động thêm phòng 52
2.5.8 Biểu đồ hoạt động chỉnh sửa phòng 52
2.5.9 Biểu đồ hoạt động xoá phòng 52
2.5.10 Biểu đồ hoạt động tạo hoá đơn 52
2.5.11 Biểu đồ hoạt động chỉnh sửa hoá đơn 53
2.5.12 Biểu đồ hoạt động xoá hoá đơn 53
2.5.13 Biểu đồ hoạt động đặt cọc 53
2.5.14 Biểu đồ hoạt động xác nhận đặt cọc 54
2.5.15 Biểu đồ hoạt động rút lại tiền đặt cọc 54
2.5.16 Biểu đồ hoạt động thanh toán hoá đơn 55
2.5.17 Biểu đồ hoạt động xác nhận trạng thái hoá đơn 55
2.5.18 Biểu đồ hoạt động tạo cuộc trò chuyện 55
2.5.19 Biểu đồ hoạt động tạo nhóm hội thoại 56
2.5.20 Biểu đồ hoạt động cập nhật cuộc hội thoại nhóm 56
2.5.21 Biểu đồ hoạt động xoá cuộc hội thoại 56
2.5.22 Biểu đồ hoạt động nhắn tin 57
2.5.23 Biểu đồ hoạt động gửi hình ảnh 57
2.5.24 Biểu đồ hoạt động xoá tin nhắn 57
2.6.1 Biểu đồ tuần tự đăng kí với email 60
2.6.2 Biểu đồ tuần tự đăng nhập với email 60
2.6.3 Biểu đồ tuần tự tạo toà nhà 61
2.6.5 Biểu đồ tuần tự xoá toà nhà 62
2.6.6 Biểu đồ tuần tự thêm phòng 62
2.6.7 Biểu đồ tuần tự chỉnh sửa phòng 63
2.6.8 Biểu đồ tuần tự xoá phòng 63
2.6.9 Biểu đồ tuần tự đặt phòng 64
2.6.10 Biểu đồ tuần tự tạo hoá đơn 65
2.6.11 Biểu đồ tuần tự chỉnh sửa hoá đơn 66
2.6.12 Biểu đồ tuần tự thanh toán hoá đơn 66
2.7 Thiết kế cơ sở dữ liệu 67
2.7.1 Thiết kế bảng dữ liệu 67
2.7.2 Thiết kế biểu đồ lớp 75
2.7.3 Mô hình cơ sở dữ liệu 76
CHƯƠNG III: CÀI ĐẶT CHƯƠNG TRÌNH VÀ KẾT QUẢ 77
3.1.1 Cài đặt chương trình hệ thống 77
3.1.3 Cài đặt trang web quản lí 77
3.2.2 Giao diện đăng nhập/đăng kí 78
3.2.3 Giao diện tạo tài khoản doanh nghiệp 79
3.2.4 Giao diện tìm kiếm toà nhà 79
3.2.5 Giao diện chi tiết toà nhà 80
3.2.6 Giao diện chi tiết căn hộ 81
3.2.7 Giao diện đặt cọc phòng 81
3.2.8 Giao diện rút lại tiền cọc 82
3.2.9 Giao diện hoá đơn của người dùng 83
3.2.10 Giao diện thanh toán hoá đơn 83
3.2.12 Giao diện quản lí toà nhà 85
3.2.13 Giao diện quản lí căn hộ 85
3.2.14 Giao diện thêm toà nhà 86
3.2.15 Giao diện chỉnh sửa toà nhà 86
3.2.16 Giao diện xoá toà toà nhà 87
3.2.17 Giao diện thêm căn hộ 88
3.2.18 Giao diện chỉnh sửa căn hộ 88
3.2.19 Giao diện xoá căn hộ 89
3.2.21 Giao diện yêu cầu đặt cọc 90
3.2.22 Giao diện danh sách hợp đồng và hoá đơn 91
3.2.23 Giao diện tạo hoá đơn 91
3.2.24 Giao diện chỉnh sửa hoá đơn 92
3.2.25 Giao diện xoá hoá đơn 93
3.2.26 Giao diện xác nhận thanh toán 93
3.2.27 Giao diện danh sách cuộc trò chuyện 94
3.2.28 Giao diện chi tiết cuộc trò chuyện 95
3.2.29 Giao diện thông tin cuộc trò chuyện 95
3.2.30 Giao diện tạo nhóm trò chuyện 96
3.2.31 Giao diện thêm người dùng vào nhóm trò chuyện 96
3.2.32 Giao diện thông báo của ứng dụng 97
3.2.34 Giao diện cập nhật tài khoản 98
3.2.35 Giao diện đăng nhập (website quản lí) 98
3.2.36 Giao diện quản lí người dùng (website quản lí) 99
3.2.37 Giao diện quản lí toà nhà, căn hộ (website quản lí) 101
3.2.38 Giao diện quản lí hợp đồng (website quản lí) 106
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 109
2 Hạn chế của đề tài 110
Bảng 1: So sánh PostgetSQL và MySQL 36
Bảng 2: Đặc tả hệ thống 44
Bảng 9: Thực thể BUILDING_COMMENT 71
Bảng 12: Thực thể CHAT_ROOM 72
Bảng 13: Thực thể CHAT_MESSAGE 73
Bảng 14: Thực thể CHAT_MEMBER 73
Bảng 15: Thực thể USER_MESSAGE 74
Bảng 16: Thực thể USER_CHAT_ROOM 74
Hình 1: Tính năng của ngôn ngữ Dart 8
Hình 2: Kiến trúc của Flutter 11
Hình 3: Cách hoạt động của Javascript 18
Hình 4: Thành phần Vitural DOM 22
Hình 5: Mô hình giao tiếp client/server trong RPC 29
Hình 7: Các kí hiệu của biểu đồ ca sử dụng 46
Hình 8: Biểu đồ ca sử dụng của hệ thống 46
Hình 9: Biểu đồ ca sử dụng quản lí (dành cho người quản trị) 47
Hình 10: Biểu đồ ca sử dụng nhắn tin 47
Hình 11: Kí hiệu các hoạt động trong biểu đồ hoạt động 48
Hình 12: Kí hiệu đồng hoá các hoạt động trong biểu đồ hoạt động 48
Hình 13: Kí hiệu đồng hoá có điều kiện trong biểu đồ hoạt động 49
Hình 14: Kí hiệu quyết định trong biểu đồ hoạt động 49
Hình 15: Kí hiệu quyết định kết hợp trong biểu đồ hoạt động 49
Hình 16: Biểu đồ hoạt động đăng kí 50
Hình 17: Biểu đồ hoạt động đăng nhập 50
Hình 18: Biểu đồ hoạt động khôi phục mật khẩu 51
Hình 19: Biểu đồ hoạt động tạo toà nhà 51
Hình 20: Biểu đồ hoạt động chỉnh sửa toà nhà 51
Hình 21: Biểu đồ hoạt động xoá toà nhà 52
Hình 22: Biểu đồ hoạt động thêm phòng 52
Hình 23: Biểu đồ hoạt động chỉnh sửa phòng 52
Hình 24: Biểu đồ hoạt động xoá phòng 52
Hình 25: Biểu đồ hoạt động tạo hoá đơn 53
Hình 26: Biểu đồ hoạt động chỉnh sửa hoá đơn 53
Hình 27: Biểu đồ hoạt động xoá phòng 53
Hình 28: Biểu đồ hoạt động đặt cọc 54
Hình 29: Biểu đồ hoạt động xác nhận đặt cọc 54
Hình 30: Biểu đồ hoạt động rút lại tiền cọc 55
Hình 31: Biểu đồ hoạt động thanh toán hoá đơn 55
Hình 32: Biểu đồ hoạt động xác nhận trạng thái hoá đơn 55
Hình 33: Biểu đồ hoạt động tạo cuộc trò chuyện 56
Hình 34: Biểu đồ hoạt động tạo nhóm hội thoại 56
Hình 35: Biểu đồ hoạt động cập nhật cuộc hội thoại nhóm 56
Hình 36: Biểu đồ hoạt động xoá cuộc hội thoại 56
Hình 37: Biểu đồ hoạt động nhắn tin 57
Hình 38: Biểu đồ hoạt động gửi hình ảnh 57
Hình 39: Biểu đồ hoạt động xoá tin nhắn 57
Hình 40: Kí hiệu đối tượng trong biểu đồ tuần tự 57
Hình 41: Kí hiệu thời gian hoạt động trong biểu đồ tuần tự 58
Hình 42: Kí hiệu cách gửi thông điệp trong biểu đồ tuần tự 58
Hình 43: Kí hiệu thông điệp trả về trong biểu đồ tuần tự 58
Hình 44: Kí hiệu thông điệp gửi trong biểu đồ tuần tự 59
Hình 45: Kí hiệu tạo/huỷ phương thức trong biểu đồ tuần tự 59
Hình 46: Kí hiệu lặp thông điệp trong biểu đồ tuần tự 59
Hình 47: Kí hiệu lặp thông điệp có điều kiện trong biểu đồ tuần tự 59
Hình 48: Kí hiệu gửi phụ thuộc có điều kiện trong biểu đồ tuần tự 60
Hình 49: Kí hiệu đệ quy trong biểu đồ tuần tự 60
Hình 50: Biểu đồ tuần tự đăng kí với email 60
Hình 51: Biểu đồ tuần tự đăng nhập với email 61
Hình 52: Biểu đồ tuần tự tạo toà nhà 61
Hình 53: Biểu đồ tuần tự chỉnh sửa toà nhà 62
Hình 54: Biểu đồ tuần tự xoá toà nhà 62
Hình 55: Biểu đồ tuần tự thêm phòng 63
Hình 56: Biểu đồ tuần tự chỉnh sửa phòng 63
Hình 57: Biểu đồ tuần tự xoá phòng 64
Hình 58: Biểu đồ tuần tự đặt phòng 65
Hình 59: Biểu đồ tuần tự tạo hoá đơn 66
Hình 60: Biểu đồ tuần tự chỉnh sửa hoá đơn 66
Hình 61: Biểu đồ tuần tự thanh toán hoá đơn 67
Hình 62: Biểu đồ lớp của hệ thống 76
Hình 63: Sơ đồ quan hệ cơ sở dữ liệu 76
Hình 64: Giao diện khởi động 1 78
Hình 65: Giao diện khởi động 2 78
Hình 66: Giao diện khởi động 3 78
Hình 67: Màn hình tạo tài khoản 79
Hình 68: Màn hình đăng kí 79
Hình 69: Màn hình đăng nhập 79
Hình 70: Màn hình tạo tài khoản doanh nghiệp 1 79
Hình 71: Màn hình tạo tài khoản doanh nghiệp 2 79
Hình 72: Màn hình tìm kiếm 80
Hình 73: Màn hình tuỳ chỉnh 80
Hình 74: Màn hình xem bản đồ 80
Hình 75: Màn hình chi tiết 80
Hình 76: Màn hình bình luận toà nhà 80
Hình 77: Màn hình bản đồ vị trí của toà nhà 80
Hình 78: Màn hình chi tiết căn hộ 1 81
Hình 79: Màn hình chi tiết căn hộ 2 81
Hình 80: Màn hình chọn phương pháp 82
Hình 81: Màn hình thông báo 82
Hình 82: Màn hình rút lại tiền cọc 82
Hình 83: Màn hình xác nhận rút lại tiền cọc 82
Hình 84: Giao diện danh sách hoá đơn 83
Hình 85: Màn hình chi tiết hoá đơn 83
Hình 86: Màn hình chọn phương thức thanh toán 84
Hình 87: Màn hình xác nhận thanh toán thành công 84
Hình 88: Màn hình chờ xác nhận đã thanh toán 84
Hình 89: Màn hình danh sách hợp đồng 84
Hình 90: Màn hình chi tiết hoá đơn (của người dùng) 84
Hình 91: Màn hình quản lí toà nhà 85
Hình 92: Màn hình chi tiết toà nhà 85
Hình 93: Màn hình căn hộ 85
Hình 94: Màn hình căn hộ (1) 85
Hình 95: Màn hình căn hộ (2) 85
Hình 96: Màn hình thêm toà nhà (1) 86
Hình 98: Màn hình ghim vị trí toà nhà trên bản đồ 86
Hình 99: Màn hình chọn chỉnh sửa 87
Hình 100: Màn hình chỉnh sửa toà nhà (1) 87
Hình 101: Màn hình chỉnh sửa toà nhà (2) 87
Hình 102: Màn hình xoá toà nhà (1) 87
Hình 103: Màn hình xoá toà nhà (2) 87
Hình 104: Màn hình thêm phòng mới (1) 88
Hình 105: Màn hình thêm phòng mới (2) 88
Hình 106: Màn hình chỉnh sửa phòng (1) 89
Hình 107: Màn hình chính sửa phòng (2) 89
Hình 108: Màn hình chỉnh sửa phòng (3) 89
Hình 109: Màn hình xoá phòng (1) 89
Hình 110: Màn hình xoá phòng (2) 89
Hình 111: Màn hình quản lí tài chính 90
Hình 112: Màn hình danh sách các yêu cầu đặt cọc 90
Hình 113: Màn hình danh sách các hợp đồng 91
Hình 114: Màn hình danh sách các hoá đơn 91
Hình 115: Màn hình tạo hoá đơn mới (1) 92
Hình 116: Màn hình tạo hoá đơn (2) 92
Hình 117: Màn hình chi tiết hoá đơn 92
Hình 118: Màn hình chỉnh sửa hoá đơn (1) 92
Hình 119: Màn hình chỉnh sửa hoá đơn (2) 92
Hình 120: Màn hình xoá hoá đơn 93
Hình 121: Màn hình xác nhận xoá hoá đơn 93
Hình 122: Màn hình xác nhận thanh toán 94
Hình 123: Màn hình thanh toán thành công 94
Hình 124: Màn hình danh sách các cuộc trò chuyện 94
Hình 125: Màn hình cuộc trò chuyện 1-1 95
Hình 126: Màn hình cuộc trò chuyện nhóm 95
Hình 127: Màn hình thông tin người trò chuyện 95
Hình 128: Màn hình thông tin trò chuyện nhóm 95
Hình 129: Màn hình danh bạ người dùng 96
Hình 130: Màn hình tạo nhóm trò chuyện 96
Hình 131: Màn hình chi tiết nhóm 97
Hình 132: Màn hình thêm người dùng 97
Hình 133: Màn hình sau khi thêm thành công 97
Hình 134: Màn hình thông báo (1) 97
Hình 135: Màn hình thông báo (2) 97
Hình 136: Màn hình tài khoản người dùng 98
Hình 137: Màn hình chỉnh sửa tài khoản 98
Hình 138: Màn hình chỉnh sửa mật khẩu 98
Hình 139: Trang web đăng nhập dành cho người quản lí 99
Hình 140: Trang web quản lí người dùng 99
Hình 141: Thông tin chi tiết của tài khoản 100
Hình 142: Form thêm mới tài khoản 100
Hình 143: Form chỉnh sửa tài khoản 101
Hình 145: Trang web quản lí toà nhà 102
Hình 146: Chi tiết toà nhà 102
Hình 147: Form thêm mới toà nhà 103
Hình 148: Form chỉnh sửa toà nhà 103
Hình 150: Chi tiết căn hộ 104
Hình 151: Form thêm mới căn hộ 105
Hình 152: Form chỉnh sửa căn hộ 106
Hình 154: Trang web quản lí hợp đồng 107
Hình 155: Chi tiết hợp đồng 107
Hình 156: Chỉnh sửa hợp đồng 108
Hình 157: Xác nhận kết thúc hợp đồng 108
1 Lí do chọn đề tài
Ngày nay thuê trọ là vấn đề được nhiều người quan tâm, đặc biệt là Sinh viên và Người lao động vì công việc, học hành mà sống xa nhà, mong muốn tìm được một nơi ở thích hợp, an ninh, sạch sẽ; đồng thời phải thuận tiện cho việc đến trường, làm việc là một điều cần thiết Nhà trọ, phòng trọ thường được xây dựng ở những nơi mặt tiền đường Tuy nhiên, với nhu cầu hiện nay thì nhà trọ cũng được xây dựng ở các hẻm, ngõ, ở những vị trí khác nhau thì chi phí thuê cũng khác nhau.
Về vấn đề quản lí người thuê trọ, một dãy nhà trọ có quy mô nhỏ cũng phải có 10 - 20 phòng Còn nhà trọ lớn quy mô đôi khi lên đến cả trăm phòng trọ Mỗi căn phòng trọ lại là một khách hàng, bao nhiêu phòng trọ thì sẽ có bấy nhiêu vấn đề xảy ra Đó là chưa kể đối tượng khách hàng mà loại hình này nhắm tới khá rộng, đủ mọi tầng lớp Từ sinh viên, người mới đi làm, công nhân, hộ gia đình trẻ chưa có nhà ở, người lao động nhập cư Bởi sự đa dạng và mỗi người một kiểu nên việc quản lý người thuê trọ là bài toán khá nan giải với nhiều người kinh doanh Bên cạnh đó, khi quản lý 10 - 20 hay cả trăm phòng trọ thì khối lượng công việc cần phải giải quyết sẽ là rất khủng khiếp Bởi lẽ, cũng là hình thức kinh doanh cho thuê nên để giữ chân được khách trọ, người đầu tư cũng cần phải có biện pháp xử lý các vấn đề, đáp ứng được mong muốn của người thuê Chẳng hạn như sửa chữa các hư hỏng phát sinh trong quá trình thuê Rồi sau một thời một thời gian cũng phải tiến hành tân trang, sửa sang, nâng cấp lại khu nhà trọ Hay chỉ riêng việc quản lý an ninh, đi nhắc nhở các phòng vi phạm quy định Ghi chỉ số đồng hồ điện nước, nhắc khách thuê đóng tiền nhà thôi cũng đã đủ đau đầu, bởi không phải vị khách nào cũng có ý thức, cũng chủ động chấp hành các quy định.
Về vấn đề đi tìm phòng trọ, đối tượng đi tìm trọ có thể là Sinh viên hoặc Người lao động vì học hành mà sống xa nhà nên khi chọn phòng trọ họ luôn cần quan tâm đến nhiều yếu tố Về chất lượng phòng ở, các vấn đề như tường có chắc chắn hay không, chất lượng sơn phủ có ổn không hay đã bong tróc, nếu có vấn đề thì chủ nhà trọ có sửa lại luôn không Các cửa chính, ổ khóa có đảm bảo an toàn phòng chống trộm không Trong phòng trọ cần phải có đủ cửa sổ, cửa thông gió và có mái che để tránh phòng quá bí bức, hay quá ẩm thấp Đường ống nước, vòi nước liệu có đang bị rò rỉ, hỏng hay tắc không… Về vấn đề vị trí và an ninh, đây là vấn đế đáng được quan tâm để có một chỗ ở tốt Người đi thuê nhà cũng cần thận trọng khi đi giao dịch với người chủ/người môi giới. Thường xảy ra các trường hợp bị lừa gạt về tiền của hay bị thiệt về lợi ích vì người chủ/môi giới có thiếu những giấy tờ liên quan như: giấy tờ sở hữu nhà cho thuê cùng các giấy tờ pháp lý khác để chứng minh họ có đủ điều kiện quyết định với nhà Tiếp theo là về giá cả, giá cả cũng là một tiêu chí được quan tâm hàng đầu mỗi khi các bạn sinh viên đi thuê nhà Mỗi quận huyện lại có mức giá thuê khác nhau, và nó cũng tùy vào dạng căn nhà Càng về khu vực trung tâm hay càng ở những khu chung cư chất lượng cao, giá thuê sẽ lại càng cao Ngoài tiền thuê phòng, người thuê cũng cần biết trước những khoản phí khác như tiền điện, tiền nước, tiền wifi, tiền gửi xe,… Hiện nay thay vì đi tìm nhà trọ tận nơi một cách thủ công như trước thì người đi thuê đã có thêm nhiều phương pháp đơn giản hơn như tìm kiếm trên Google, Facebook Trên những trang này giờ đã có các hội nhóm chuyên tìm và cho thuê trọ Tại đây, người đi thuê sẽ được cung cấp rõ thông tin về vị trí nhà, tiện ích, giá thuê cũng như xem được những hình ảnh trực quan về nhà Nhưng các vấn đề liên quan đến chi trả, cần bàn bạc, trao đổi, hợp đồng đều không thể trao đổi qua mạng xã hội mà cần một ứng dụng có thể quản lí những giao dịch, trao đổi giữa người đi thuê và người cho thuê.
Bên cạnh đó, sự hỗ trợ mạnh mẽ của các ngôn ngữ lập trình, cùng với sự ra đời của các framework đã thúc đẩy nhóm em chọn đề tài “Nghiên cứu lập trình di động đa nền tảng và xây dựng ứng dụng cho thuê phòng trọ dựa trên sự kết hợp Flutter, Golang Và GraphQL” để thực hiện thực tập tốt nghiệp nhằm đáp ứng theo chương trình đào tạo đồng thời mong muốn ứng dụng công nghệ đó vào việc tìm hiểu và đưa ra một giải pháp tốt nhằm giải quyết công việc cho thuê phòng trọ online
Mục tiêu của đồ án là tìm ra giải pháp hiệu quả để giải quyết công cho thuê phòng trọ Các mục tiêu cụ thể của đề tài gồm:
- Tìm ra phương pháp hiệu quả trong việc cho thuê phòng trọ của người cho thuê.
- Tìm ra phương pháp hiệu quả trong việc đi tìm phòng trọ của người đi thuê.
- Tìm ra phương pháp quản lí hiệu quả các hợp đồng cho thuê, hoá đơn chi
- Ứng dụng ngôn ngữ Dart và công nghệ Flutter vào xây dựng ứng dụng di động cho thuê phòng trọ.
- Ứng dụng ngôn ngữ GoLang và công nghệ GraphQL và GRPC vào xây dựng backend cho ứng dụng.
- Ứng dụng công nghệ React JS vào xây dựng website quản lí cho người quản trị.
3 Đối tượng và phạm vi nghiên cứu Đối tượng nghiên cứu gồm:
- Các chức năng của người cho thuê, người đi thuê.
- Thông tin các tỉnh/thành, quận/huyện, phường/xã.
- Thông tin liên quan đến hợp đồng cho thuê.
- Thông tin liên quan đến hoá đơn thanh toán.
- Cổng thanh toán ví điện tử.
- Các chức năng nhắn tin riêng và nhắn tin nhóm.
Giới hạn phạm vi nghiên cứu trong đề tài gồm:
- Tập trung xây dựng hệ thống giúp cho thuê và người đi thuê trọ có thể dễ dàng tiếp cận nhau Người cho thuê có thể dễ dàng đăng tải và quản lí thông tin phòng mà mình muốn thuê Người đi thuê có thể dễ dàng tìm kiếm được phòng với giá cả, tiện ích hợp lí Hai bên có thể quản lí hợp đồng thanh toán, cho thuê một cách tiện lợi
- Đề tài được xây dựng bởi các ngôn ngữ lập trình như: Dart, Javascript,
Go, HTML, CSS, với công nghệ Flutter, GoLang, GraphQL, GRPC và ReactJS.
- Phương pháp lý thuyết: Nghiên cứu các tài liệu liên quan đến các nội dung nghiên cứu: Tài liệu về các ngôn ngôn ngữ lập trình, các framework Flutter, GoLang và ReactJS, các nhu cầu của người cho thuê, người đi thuê.
- Phương pháp thực nghiệm: Nghiên cứu, xây dựng các phương pháp đặt cọc, thuê phòng, tìm phòng, trao đổi thông tin qua lại dưới dạng tin nhắn và quản lí hiệu quả cho việc thuê phòng trọ Phát triển ứng dụng thuê phòng trọ và đánh giá kết quả.
5 Ý nghĩa của đề tài Đề tài đang hướng vào ứng dụng công nghệ thông tin trong lĩnh vực bất động sản, cụ thể là ứng dụng cho thuê phòng trọ Việc ứng dụng công nghệ thông tin vào lĩnh vực này nhằm đẩy mạnh quá trình áp dụng công nghệ thông tin vào cuộc sống Và đề tài hướng đến người sử dụng là tất cả mọi người, đặc biệt có ích đối với các sinh viên, người lao động sống xa nhà, hay người môi giới,… Đóng góp chính của đề tài là đề xuất phương pháp thích hợp cho người đi thuê và người cho thuê một cách nhanh chóng và rõ ràng, gồm đầy đủ các bản hợp đồng, hoá đơn thanh toán và các cuộc trao đổi qua tin nhắn.
6 Bố cục của đề tài
Trên cơ sở các nội dung nghiên cứu, để đạt mục tiêu đề ra và đảm bảo tính logic, ngoài phần mở đầu và phần kết luận, đồ án được tổ chức thành các chương như sau:
Chương 1 Cơ sở lý thuyết Chương này trình bày kết quả nghiên cứu về lập trình đa nền tảng; trình bày các cơ sở lí thuyết về ngôn ngữ lập trình: Dart, GoLang, Javascript cùng các framework tương ứng Flutter, GraphQL, GRPC, ReactJS được sử dụng trong việc xây dựng đề tài.
Chương 2: Phân tích và thiết kế hệ thống Chương này giới thiệu bài toán và đưa ra các mô hình hệ thống; đề xuất các ý tưởng, chức năng cho phần mềm; trình bày các mô hình thực thể quan hệ, sơ đồ phân cấp chức năng Phân tích chi tiết các chức năng của người sử dụng và người quản lí; thiết kế giao diện người dùng và thiết dữ liệu, chức năng cho hệ thống.
Chương 3: Cài đặt chương trình và kết quả Trong chương này, nêu kết quả thực hiện được của đề tài và trình bày cách cài đặt chương trình.
7 Đóng góp của đồ án
Trong đồ án thực tập tốt nghiệp này, chúng em đã vận dụng linh hoạt những kiến thức đã được học trên giảng đường để thực hiện đề tài Bên cạnh đó, chúng em cũng đã cùng nhau trao đổi, bàn bạc, đưa ra ý tưởng và đề xuất hướng các tác vụ của người dùng cùng với đơn vị thực tập, nhằm xây dựng một đồ án thực tập tốt nghiệp hoàn chỉnh cũng như một sản phẩm thân thiện cho người sử dụng Những đóng góp chính của đồ án thực tập tốt nghiệp:
Phân tích rõ ràng vai trò của người sử dụng trong hệ thống
- Đối với người đi thuê trọ/căn hộ, người dùng có thể tìm kiếm các toà nhà/dãy trọ và đặt cọc phòng mà mình muốn thuê Người dùng có thể tiến hành thanh toán các hoá đơn tiền điện, nước, chi phí thuê phòng và quản lí được mọi thuê và cho thuê Hợp đồng thuê phòng cũng được thể hiện một cách cụ thể và đầy đủ các thông tin cần thiết.
- Đối với người cho thuê trọ/căn hộ, họ có thể đăng tải thông tin cần toà nhà/dãy trọ và các phòng trọ/căn hộ gồm các thông tin liên quan, tiện ích và giá đặt cọc, giá thuê Họ cũng là người xác nhận các yêu cầu đặt cọc phòng cho người thuê để tạo hợp đồng cho người thuê Người chủ có thể tạo các hoá đơn điện, nước, chi phí thuê ứng với phòng đó và quản lí việc chi trả hoá đơn trên ứng dụng.
- Đối với người quản lí, họ có thể quản lí toàn bộ các thông tin người dùng, toà nhà, căn hộ, hoá đơn, hợp đồng của hệ thống
Phân tích và thiết kế chức năng thanh toán hoá đơn trực tuyến
Nghiên cứu và triển khai thực nghiệm chức năng thanh toán hoá đơn trực tuyến nhằm đáp ứng được sự nhanh chóng, tiện dụng, tiết kiệm thời gian của người dùng Bên cạnh đó, khi thanh toán trực tuyến, người dùng dễ dàng quản lí, kiểm soát được tài chính, trạng thái hoá đơn của mình Ngoài ra, việc thanh toán trực tuyến làm tăng tính chuyên nghiệp trong kinh doanh cũng như quy trình hoạt động của ứng dụng.
Thiết kế chức năng nhắn tin cá nhân và nhắn tin nhóm cho ứng dụng