# insurance-navigation Specification ## Purpose TBD - created by archiving change integrate-insurance-flow. Update Purpose after archive. ## Requirements ### Requirement: Insurance Application List Page The bank side MUST provide a dedicated page to list all insurance applications with search and pagination support. #### Scenario: Display insurance application list **Given** the user navigates to `/pagesBank/insurance/application/list` **When** the page loads **Then** the system SHALL display a list of all insurance applications with: - Application ID - Company name - Product name - Insurance amount - Insurance term - Status (pending/approved/rejected) - Created timestamp - Clickable items that navigate to application detail #### Scenario: Filter insurance applications by status **Given** the user is on the insurance application list page **When** the user selects a status filter (All, Pending, Approved, Rejected) **Then** the system SHALL display only applications matching the selected status #### Scenario: Search insurance applications **Given** the user is on the insurance application list page **When** the user enters a search term in the search box **Then** the system SHALL filter applications by: - Application ID - Company name - Product name - Policy number **And** display only matching applications in real-time #### Scenario: Paginate insurance applications **Given** the user is on the insurance application list page with more than 20 applications **When** the user scrolls to the bottom of the list **Then** the system SHALL load the next page of applications automatically **And** display a loading indicator while fetching ### Requirement: Company and Product Selection Flow The audit detail page MUST support a multi-step navigation flow for selecting insurance company and product with search functionality. #### Scenario: Navigate from audit detail to company selection **Given** a loan application with status `DISBURSED` and no insurance **When** the user clicks "购买保险" button **Then** the system SHALL navigate to `/pagesBank/insurance/company/select` with parameters: - `loanId`: The loan application ID - `loanAmount`: The loan amount in yuan - `loanTerm`: The loan term in months #### Scenario: Search and select insurance company **Given** the user is on the insurance company selection page **When** the user enters a search term in the search box **Then** the system SHALL filter companies by: - Company name - Contact information **And** display only matching companies in real-time #### Scenario: Select insurance company **Given** the user selects a company from the list **When** the selection is confirmed **Then** the system SHALL navigate to `/pagesBank/insurance/product/select` with parameters: - `loanId`: The loan application ID - `companyId`: The selected company ID - `loanAmount`: The loan amount in yuan - `loanTerm`: The loan term in months #### Scenario: Search and select insurance product **Given** the user is on the insurance product selection page **When** the user enters a search term in the search box **Then** the system SHALL filter products by: - Product name - Product description - Product type **And** display only matching products in real-time #### Scenario: Select insurance product **Given** the user selects a product from the list **When** the selection is confirmed **Then** the system SHALL navigate to `/pagesBank/insurance/application/create` with parameters: - `loanId`: The loan application ID - `companyId`: The selected company ID - `productId`: The selected product ID - `loanAmount`: The loan amount in yuan - `loanTerm`: The loan term in months ### Requirement: Dashboard Shortcuts Navigation The dashboard shortcuts MUST navigate to the correct insurance management pages. #### Scenario: Navigate to insurance application list **Given** the user is on the bank dashboard **When** the user clicks the "投保管理" shortcut **Then** the system SHALL navigate to `/pagesBank/insurance/application/list` #### Scenario: Navigate to claim application list **Given** the user is on the bank dashboard **When** the user clicks the "理赔管理" shortcut **Then** the system SHALL navigate to `/pagesBank/insurance/claim/list`