5.2.13. Bảng “favourite” – Danh sách bất động sản yêu thích của người dùng dùng
STT Tên thuộc tính Kiểu Ràng Buộc Ý nghĩa, ghi chú
1 apartment_id int Khóa chính, Khóa ngoại
ID định danh của bảng favourite, khóa ngoại trỏ tới bảng apartment
2 user_id int Khóa chính, Khóa ngoại
ID định danh của bảng favourite, khóa ngoại trỏ tới bảng user 3 is_deleted boolean Xác định đối tượng đã
xóa hay chưa
4 created_by int Khóa ngoại Khóa ngoại thể hiện người khởi tạo đối tượng
5 updated_by int Khóa Ngoại Khóa ngoại thể hiện người cập nhật đối tượng
6 created_at date Thời gian khởi tạo đối tượng
7 updated_at date Thời gian cập nhật đối tượng
37
5.2.14. Bảng “tracking_category” – Danh sách thông tin tracking của người dùng đối với thể loại
STT Tên thuộc tính Kiểu Ràng Buộc Ý nghĩa, ghi chú
1 id int Khóa chính ID định danh của bảng
tracking_category 2 ip varchar Bắt buộc nhập Địa chỉ IP của người
dùng
3 rating int Bắt buộc nhập Tổng số điểm của người dùng quan tâm đối với thể loại này 4 user_id int Khóa ngoại Khóa ngoại trỏ đến
bảng user
5 category_id int Khóa ngoại Khóa ngoại trỏ đến bảng category
6 is_deleted boolean Xác định đối tượng đã xóa hay chưa
7 created_by int Khóa ngoại Khóa ngoại thể hiện người khởi tạo đối tượng
8 updated_by int Khóa Ngoại Khóa ngoại thể hiện người cập nhật đối tượng
9 created_at date Thời gian khởi tạo đối tượng
38
10 updated_at date Thời gian cập nhật đối tượng
Bảng 5.14: Mô tả bảng “tracking_category” – Thông tin tracking của người dùng đối với category
5.2.15. Bảng “tracking_district” – Danh sách thông tin tracking của người dùng đối với huyện/xã người dùng đối với huyện/xã
STT Tên thuộc tính Kiểu Ràng Buộc Ý nghĩa, ghi chú
1 id int Khóa chính ID định danh của bảng tracking_ district 2 ip varchar Bắt buộc nhập Địa chỉ IP của người
dùng
3 rating int Bắt buộc nhập Tổng số điểm của người dùng quan tâm đối với huyện,xã này 4 user_id int Khóa ngoại Khóa ngoại trỏ đến
bảng user
5 district_id int Khóa ngoại Khóa ngoại trỏ đến bảng district
6 is_deleted boolean Xác định đối tượng đã xóa hay chưa
7 created_by int Khóa ngoại Khóa ngoại thể hiện người khởi tạo đối tượng
8 updated_by int Khóa Ngoại Khóa ngoại thể hiện người cập nhật đối tượng
39
9 created_at date Thời gian khởi tạo đối tượng
10 updated_at date Thời gian cập nhật đối tượng
Bảng 5.15: Mô tả bảng “tracking_ district” – Thông tin tracking của người dùng đối với xã, huyện
5.2.16. Bảng “tracking_province” – Danh sách thông tin tracking của người dùng đối với quận/thành phố người dùng đối với quận/thành phố
STT Tên thuộc tính Kiểu Ràng Buộc Ý nghĩa, ghi chú
1 id int Khóa chính ID định danh của bảng
tracking_province 2 ip varchar Bắt buộc nhập Địa chỉ IP của người
dùng
3 rating int Bắt buộc nhập Tổng số điểm của người dùng quan tâm đối với quận. thành phố này
4 user_id int Khóa ngoại Khóa ngoại trỏ đến bảng user
5 province_id int Khóa ngoại Khóa ngoại trỏ đến bảng province
6 is_deleted boolean Xác định đối tượng đã xóa hay chưa
40
7 created_by int Khóa ngoại Khóa ngoại thể hiện người khởi tạo đối tượng
8 updated_by int Khóa Ngoại Khóa ngoại thể hiện người cập nhật đối tượng
9 created_at date Thời gian khởi tạo đối tượng
10 updated_at date Thời gian cập nhật đối tượng
Bảng 5.16: Mô tả bảng “tracking_ province” – Thông tin tracking của người dùng đối với tỉnh, thành phố
5.2.17. Bảng “user_target” – Thông tin mục tiêu của người dùng
STT Tên thuộc tính Kiểu Ràng Buộc Ý nghĩa, ghi chú
1 id int Khóa chính ID định danh của bảng user_target 2 area double Mục tiêu về diện tích 3 bathroom_quantity int Mục tiêu về số lượng
phòng vệ sinh
4 bedroom_quantity int Mục tiêu về số lượng phòng ngủ
5 category int Mục tiêu về thể loại 6 district int Mục tiêu về địa điểm
41
7 floor_quantity int Mục tiêu về số lượng tầng
8 price double Mục tiêu về giá 9 province int Mục tiêu về địa điểm
tỉnh, thành phố 10 user_id int Khóa ngoại Khóa ngoại xác định
mục tiêu của người dùng nào
11 is_deleted boolean Xác định đối tượng đã xóa hay chưa 12 created_by int Khóa ngoại Khóa ngoại thể hiện
người khởi tạo đối tượng
13 updated_by int Khóa Ngoại Khóa ngoại thể hiện người cập nhật đối tượng
14 created_at date Thời gian khởi tạo đối tượng
15 updated_at date Thời gian cập nhật đối tượng
42
Chương 6. HIỆN THỰC HỆ THỐNG – SƠ ĐỒ USECASE
6.1. Danh sách actor
Các đối tượng giao tiếp với hệ thống bao gồm:
STT Actor Ý nghĩa
1 Người dùng Là tất cả người dùng có nhu cầu giao dịch tất cả các loại bất động sản và sử dụng tất cả những tính năng của hệ thống như đăng giao dịch bất động sản, tra cứu bất động sản, giao dịch bất động sản, đẩy tin bất động sản...
2 Admin Nắm trọn bộ quyền quản lý hệ thống, quản lý người dùng, quản lý bài đăng, thao tác đóng mở bất động sản,…
Bảng 6.1: Danh sách các actor của hệ thống
6.2. Sơ đồ usecase tổng quát
43
44 STT Usecase Mô tả
1 Đăng ký Người dùng truy cập vào trang web và đăng ký tài khoản khách hàng vào hệ thống
2 Đăng nhập Người dùng truy cập vào trang web và đăng nhập tài khoản vào hệ thống (có thể là admin hoặc khách hàng)
3 Đổi mật khẩu Người dùng truy cập vào trang web và chọn đổi mật khẩu thay vì đăng nhập
4 Đăng xuất Người dùng đã đăng nhập vào hệ thống và đăng xuất thông tin người dùng
5 Lọc/Tìm kiếm bđs Tìm kiếm/lọc bất động sản theo những thơng tin như từ khóa tìm kiếm, tỉnh/thành phố,
quận/huyện, loại bất động sản, khoản giá, khoản diện tích...
6 Trang cá nhân Bao gồm các thông tin và chức năng của quản lý bài viết, chỉnh sửa thơng tin, quản lý u thích bài viết.
7 Quản lý bđs cá nhân Quản lý các bài viết bất động sản người dùng khách hàng đã tạo bao gồm sửa, xóa thơng tin bài đã đăng và đang chờ duyệt
8 Quản lý u thích, lưu lại thơng tin bài viết
Quản lý danh sách u thích, lưu lại thơng tin bài viết của tất cả người dùng khách hàng
9 Chỉnh sửa thông tin Chỉnh sửa thông tin cá nhân của người dùng 10 Tạo bđs Tạo bất động sản sau khi đăng nhập
11 Gợi ý bđs liên quan Hiển thị các bài viết liên quan phù hợp với các hoạt động của người dùng như xem, tìm kiếm, u thích, …
45
Bảng 6.2: Bảng danh sách các usecase của hệ thống
6.3. Đặc tả một số use-case chính
6.3.1. Đặc tả use-case “Đăng Ký"
Tên chức năng Đăng ký.
Tóm tắt Người dùng muốn đăng bất động sản hoặc
lưu bài viết để xem lại cần đăng kí người dùng khách hàng để đăng nhập vào hệ thống.
Actor Người dùng khách hàng
Dịng sự kiện chính Nhập đầy đủ thơng tin.
Dịng sự kiện khác Không thể đăng ký.
Nguyên nhân:
• Trùng tên đăng ký người dùng. 12 Xem thông tin bđs
dưới dạng biểu đồ
Hiển thị thông tin tổng quát số lượng bất động sản dưới dạng biểu đồ đường, cột, radar
13 Quản lý thể loại Quản lý danh sách thể loại như tìm kiếm, thêm mới, sửa, xóa thể loại
14 Quản lý bđs Quản lý danh sách bài viết bđs như tìm kiếm, lọc/xóa lọc trường thơng tin, sắp xếp, xóa, sửa, thêm, duyệt bài viết
15 Làm nổi bật bđs Lựa chọn bài viết để làm bài nổi bật trên trang web
16 Quản lý người dùng khách hàng
Hiển thị danh sách người dùng khách hàng, bao gồm các thông tin, danh sách bài đăng, danh sách yêu thích của từng khách hàng. Ngồi ra cịn có thể lọc danh sách theo từng trường thơng tin
46
• Trùng email đã đăng ký.
Trạng thái hệ thống trước khi thực hiện usecase.
Actor: tất cả actor. Điều kiện: khơng có.
Trạng thái hệ thống sau khi thực hiện use case.
Đăng ký thành công, tự động trở lại trang đăng nhập
Các u câu đặc biệt Khơng có.
Ngoại lệ Khơng có.
Bảng 6.3: Đặc tả usecase “Đăng Ký”
6.3.2. Đặc tả use-case “Đăng Nhập"
Tên chức năng Đăng nhập.
Tóm tắt Đăng nhập vào hệ thống để thực hiện
những tính năng trong hệ thống.
Actor Người dùng.
Dịng sự kiện chính Người dùng truy cập vào hệ thống
Người dùng nhấn đăng nhập để tiến hành đăng nhập vào hệ thống.
Nếu người dùng chưa đăng ký vẫn có thể vào trang web hệ thống để xem như người dùng khách hàng bình thường nhưng khơng sử dụng được các chức năng
Dịng sự kiện khác Khơng thể đăng nhập.
Ngun nhân:
• Khơng thể kết nối đến server.
• Người dùng nhập sai mật khẩu.
47
Trạng thái hệ thống trước khi thực hiện usecase.
Actor: tất cả actor. Điều kiện: khơng có.
Trạng thái hệ thống sau khi thực hiện use case.
Người dùng đăng nhập thành công, truy cập vào trang chủ.
Người dùng đăng nhập thất bại hiển thị thông báo ở trang đăng nhập
Các yêu câu đặc biệt Khơng có.
Ngoại lệ Khơng có.
Bảng 6.4: Đặc tả usecase “Đăng Nhập”
6.3.3. Đặc tả use-case “Đổi mật khẩu "
Tên chức năng Đổi mật khẩu
Tóm tắt Đăng mật khẩu hiện tại của người dùng.
Actor Người dùng.
Dịng sự kiện chính Người dùng truy cập vào hệ thống
Người dùng nhấn đăng nhập để đăng nhập vào hệ thống
Sau khi đăng nhập thành cơng nhấn người dùng chọn Đổi mật khẩu
Dịng sự kiện khác Không thể đổi mật khẩu.
Nguyên nhân:
• Sai mật khẩu hiện tại.
Trạng thái hệ thống trước khi thực hiện usecase.
Actor: tất cả actor. Điều kiện: khơng có.
48
Trạng thái hệ thống sau khi thực hiện use case.
Người dùng đổi mật khẩu thành công xuất hiện thông báo.
Các yêu câu đặc biệt Khơng có.
Ngoại lệ Khơng có.
Bảng 6.5: Đặc tả usecase “Đổi mật khẩu”
6.3.4. Đặc tả use-case “Đăng xuất "
Tên chức năng Đăng xuất
Tóm tắt Đăng xuất người dùng ra khỏi hệ thống
Actor Người dùng.
Dịng sự kiện chính Người dùng truy cập vào hệ thống
Người dùng nhấn đăng xuất để tiến hành đăng xuất khỏi hệ thống
Dịng sự kiện khác Khơng thể đăng xuất.
Nguyên nhân:
• Chưa đăng nhập vào hệ thống
Trạng thái hệ thống trước khi thực hiện usecase.
Actor: tất cả actor. Điều kiện: khơng có.
Trạng thái hệ thống sau khi thực hiện use case.
Người dùng đăng xuất thành công hệ thống tải lại trang đăng nhập
Các yêu câu đặc biệt Khơng có.
Ngoại lệ Khơng có.
Bảng 6.6: Đặc tả usecase “Đăng xuất”
6.3.5. Đặc tả use-case “Lọc/Tìm kiếm bất động sản"
49
Tóm tắt Tìm kiếm/lọc bất động sản theo những
thơng tin như từ khóa tìm kiếm, tỉnh/thành phố, quận/huyện, loại bất động sản, khoản giá, khoản diện tích...
Actor Người dùng.
Dịng sự kiện chính Người dùng truy cập vào hệ thống.
Vào trang chủ chọn thể loại, thành phố, mức giá, quận huyện, diện tích hoặc nhập vào sau đó nhấn tìm kiếm để thực hiện chức năng.
Dịng sự kiện khác Khơng thể tìm kiếm.
Ngun nhân:
• Khơng có bài đăng chứa từ khóa.
Trạng thái hệ thống trước khi thực hiện usecase.
Actor: tất cả actor. Điều kiện: khơng có.
Trạng thái hệ thống sau khi thực hiện use case.
Hiển thị danh sách tìm kiếm/lọc thành cơng cho người dùng
Các yêu câu đặc biệt Khơng có.
Ngoại lệ Khơng có.
Bảng 6.7: Đặc tả usecase “Lọc/Tìm kiếm bất động sản”
6.3.6. Đặc tả use-case “Trang cá nhân"
Tên chức năng Trang cá nhân.
Tóm tắt Bao gồm các thông tin và chức năng của
quản lý bài viết, chỉnh sửa thông tin, quản lý yêu thích bài viết
50
Actor Người dùng.
Dịng sự kiện chính Chọn thơng tin người dùng
Hiển thị thông tin cơ bản của người dùng bao gồm:
• Đã cung cấp cmnd, email … hay chưa.
Hiển thị những bất động sản của người dùng đang đăng giao dịch trên hệ thống. Hiển thị những bất động sản của người dùng đã lưu.
Dịng sự kiện khác Khơng thể truy xuất.
Ngun nhân : không thể kết nối đến server.
Trạng thái hệ thống trước khi thực hiện usecase.
Actor: tất cả actor. Điều kiện: khơng có.
Trạng thái hệ thống sau khi thực hiện use case.
Hiển thị đầy đủ thông tin người dùng, danh sách bài đăng, danh sách yêu thích
Các u câu đặc biệt Khơng có.
Ngoại lệ Khơng có.
Bảng 6.8: Đặc tả usecase “Trang cá nhân”
6.3.7. Đặc tả use-case “Quản lý bất động sản cá nhân"
51
Tóm tắt Quản lý các bài viết bất động sản người
dùng khách hàng đã tạo bao gồm sửa, xóa thơng tin bài đã đăng và đang chờ duyệt
Actor Người dùng.
Dòng sự kiện chính Chọn thơng tin người dùng
Chọn Quản lý bất động sản, nhấn chỉnh sửa vào bài viết đang ở tình trạng PENDING, sau khi chỉnh sửa thơng tin bài viết vẫn sẽ ở tình trạng PENDING chờ người dùng admin duyệt.
Dòng sự kiện khác Khơng thể chỉnh sửa
Ngun nhân:
• Chỉ những bài viết đang tình trạng PENDING mới được sửa.
Trạng thái hệ thống trước khi thực hiện usecase.
Actor: tất cả actor. Điều kiện: khơng có.
Trạng thái hệ thống sau khi thực hiện use case.
Hiển thị danh sách tất cả bài đăng bất động sản của người dùng
Các yêu câu đặc biệt Khơng có.
Ngoại lệ Khơng có.
Bảng 6.9: Đặc tả usecae “Quản lý bất động sản cá nhân”
6.3.8. Đặc tả use-case “Quản lý u thích, lưu lại thơng tin bài viết"
52
Tóm tắt Quản lý danh sách yêu thích, lưu lại thơng
tin bài viết của tất cả người dùng khách hàng
Actor Người dùng.
Dịng sự kiện chính Người dùng đăng nhập.
Người dùng sử dụng bất kỳ chức năng nào xuất hiện bài đăng bất động sản nhấn u thích ở góc bài đăng để lưu bài viết đó vào danh sách u thích cá nhân của người dùng.
Dòng sự kiện khác Khơng thể u thích bài viết.
Ngun nhân:
• Người dùng chưa đăng nhập.
Trạng thái hệ thống trước khi thực hiện usecase.
Actor: tất cả actor. Điều kiện: khơng có.
Trạng thái hệ thống sau khi thực hiện use case.
u thích bài viết thành cơng
Các u câu đặc biệt Khơng có.
Ngoại lệ Khơng có.
Bảng 6.10: Đặc tả usecase “Quản lý u thích, lưu lại thông tin bài viết”
6.3.9. Đặc tả use-case “Chỉnh sửa thông tin"
Tên chức năng Chỉnh sửa thơng tin
Tóm tắt Chỉnh sửa thơng tin cá nhân của người
53
Actor Người dùng.
Dịng sự kiện chính Người dùng đăng nhập.
Chọn người dùng, xuất hiện thông tin người dùng, chỉnh sửa thông tin cần thiết nhấn Lưu chỉnh sửa để cập nhật thơng tin
Dịng sự kiện khác Không thể chỉnh sửa thơng tin.
Ngun nhân:
• Người dùng chỉnh sửa email đã được đăng ký.
Trạng thái hệ thống trước khi thực hiện usecase.
Actor: tất cả actor. Điều kiện: khơng có.
Trạng thái hệ thống sau khi thực hiện use case.
Chỉnh sửa thông tin người dùng thành cơng
Các u câu đặc biệt Khơng có.
Ngoại lệ Khơng có.
Bảng 6.11: Đặc tả usecase “Chỉnh sửa thông tin”
6.3.10. Đặc tả use-case “Tạo bất động sản"
Tên chức năng Tạo bất động sản.
Tóm tắt Tạo bất động với đẩy đủ thông tin cần thiết
để đăng giao dịch bất động sản lên hệ thống.
Sau khi tạo bất động sản thành công cần chờ admin phê duyệt để hiển thị.
54
Dịng sự kiện chính Người dùng đăng nhập.
Tạo bất động sản mới.
Nhập đầy đủ thông tin cần thiết, khi tạo bất động sản trên hệ thống, bài viết sẽ chuyển thành trạng thái chờ duyệt, sau khi được sự phê duyệt thành công sẽ được đăng tin trên trang web. Người lại, nếu admin không phê duyệt bài viết sẽ không được hiển thị trên hệ thống.
Trừ trường hợp nếu người dùng là admin sẽ không cần đợi sự phê duyệt mà tạo bất động sản thành cơng trên hệ thống.
Dịng sự kiện khác Khơng thể tạo bất động sản.
Nguyên nhân:
• Người dùng chưa đăng nhập.