== Use-case 0010 - Browse Properties == '''Initiating actor:''' Client '''Other actors:''' None '''Description: ''' A client browses apartment units by first selecting a building, then viewing its floors, and finally exploring individual units. They can view details, images, and pricing information for each unit. '''Scenario:''' 1. Client accesses the property listing page. 2. System displays all buildings: {{{ SELECT building_id, name, address, description FROM building ORDER BY name; }}} 3. Client sees a list of buildings with their names, addresses, and brief descriptions. 4. Client clicks on "Golden Tower" building. 5. System displays the building details and all its floors: {{{ SELECT b.building_id, b.name AS building_name, b.address, b.description, a. full_name AS architect_name, f.floor_id, f.floor_number, f.layout_image FROM building b LEFT JOIN designs d ON b.building_id = d.building_id LEFT JOIN architect a ON d.architect_id = a.architect_id JOIN floor f ON b.building_id = f.building_id WHERE b.name = 'Golden Tower' ORDER BY f.floor_number; }}} 6. Client sees building information and a list of floors with their images. 7. Client clicks on "Floor 2". 8. All units on Floor 2 are displayed with minimal information: {{{ SELECT u.unit_id, u.unit_number, u.room_number, u.floor_area, u.price, u.status, u.image FROM unit u WHERE u.floor_id = ( SELECT floor_id FROM floor WHERE building_id = (SELECT building_id FROM building WHERE name = 'Golden Tower') AND floor_number = 2 ) ORDER BY u.unit_number; }}} 9. Client sees a list of units showing their respective minimal information: unit number, room count, area, price, status, and thumbnail image. 10. Client clicks on "Unit 201" to view full details. 11. System displays complete unit information: {{{ SELECT u. unit_id, u. unit_number, u. room_number, u. floor_area, u. price, u.status, u.image, u.floorplan, u.vector_image FROM unit u JOIN floor f ON u.floor_id = f. floor_id JOIN building b ON f.building_id = b. building_id WHERE u.unit_number = '201' AND f.floor_number = 2 AND b.name = 'Golden Tower'; }}} 12. Client views all images, floorplan, building description, architect information, and pricing details. 13. Client can navigate back to floor view, building view, or click a button to inquire about the unit that is being displayed.