Commit Graph
72 Commits
Author SHA1 Message Date
nessar e02ad54bcb feat: add unit and integration tests for rental management domain
- Introduced RentPaymentCorrectionTest and RentPaymentTest to validate payment and refund logic.
- Added PhoneNumberTest to ensure proper normalization of phone numbers.
- Created TenantTest to verify attachment management and tenant referencing.
- Implemented ReplacementRentalApiJourneyIT for end-to-end testing of rental and payment workflows.
- Documented architectural decisions in ADR-0014, emphasizing strict DDD boundaries and transaction management.
2026-08-17 14:18:15 +02:00
nessar 6ce0719a20 refactor: simplify lease card and rent payments page logic 2026-08-17 14:18:15 +02:00
nessar a039243d03 fix: use rent dues in rent schedule (#28) 2026-08-17 14:18:15 +02:00
nessar c2afe515c0 feat: activate draft leases into rent dues (#28) 2026-08-17 14:18:15 +02:00
nessar 971ffd6feb feat: protect referenced rental resources (#27) 2026-08-17 14:18:15 +02:00
nessar fca199dfdf feat: isolate tenants and attachments by landlord (#26) 2026-08-17 14:18:15 +02:00
nessar f4acbffc9d feat: isolate apartment portfolios by landlord (#25) 2026-08-17 14:18:15 +02:00
nessar e8f98a0b3f Add comprehensive documentation on Domain-Driven Design patterns
- Introduced new references for Repositories and Factories, detailing their roles in separating domain logic from persistence and object creation.
- Added a section on Strategic Design and Distillation, outlining the classification of subdomains and investment strategies.
- Created a guide on Ubiquitous Language, emphasizing the importance of shared vocabulary between developers and domain experts to enhance communication and reduce misunderstandings.
2026-08-17 14:18:15 +02:00
nessar 752733af11 feat: update Playwright config for CI environment and enhance sign-in page styles 2026-08-17 14:18:15 +02:00
nessar 668680e844 feat(#23): use landlord profiles in PDFs 2026-08-17 14:18:15 +02:00
nessar ac5a7942c9 feat: refactor forms to use reactive forms with signals for improved state management 2026-08-17 14:18:15 +02:00
nessar 5d2abf4184 feat: refactor settings page to use reactive forms for landlord profile 2026-08-17 14:18:15 +02:00
nessar b76dd27431 fix: remove obsolete landlord profile indexes migration 2026-08-17 14:18:15 +02:00
nessar ecacab0b9f feat(#22): manage landlord profile from OIDC 2026-08-17 14:18:15 +02:00
nessar f02e8a9ba5 fix: update budget limits for initial and component styles 2026-08-17 14:18:15 +02:00
nessar 990792c8c2 feat(#21): show current rent schedule 2026-08-17 14:18:15 +02:00
nessar 9cfb55d79c feat: enhance lease and rent payment management
- Added methods in LeaseRepository to find leases by apartment ID and exclude a specific lease ID.
- Introduced a method in RentPaymentRepository to delete all payments by lease ID.
- Updated LeaseService to handle overlapping leases and generate rent payments upon lease creation.
- Implemented rent payment deletion in LeaseService when a lease is deleted.
- Enhanced RentPaymentService to generate rent payments with pro-rata calculations for partial months.
- Modified RentPaymentController to accept rent and charges when marking payments as paid.
- Created RentPaymentPaidRequest DTO for validating rent payment requests.
- Added a RentPaymentValidationDialog for confirming payment amounts before processing.
- Updated frontend components to support new rent payment features, including validation and date filtering for leases.
- Adjusted tests to cover new functionalities and ensure proper integration of rent payment management.
2026-08-17 14:18:15 +02:00
nessar 479012d661 fix(#20): use inclusive query for rent payment month range 2026-08-17 14:18:15 +02:00
nessar df17f6e378 style: update workspace navigation grid to six columns 2026-08-17 14:18:15 +02:00
nessar 5db268bec7 fix: enforce unique chronological rent payments 2026-08-17 14:18:15 +02:00
nessar df6904e85d feat: update landlord profile management to link with OIDC subjects 2026-08-17 14:18:15 +02:00
nessar 47cb4bcdaf feat: add rent payment schedules and receipts 2026-08-17 14:18:15 +02:00
nessar f876639c02 feat: add integration tests for ApartmentRepository using Testcontainers with MongoDB 2026-08-17 14:18:15 +02:00
nessar 01fa812089 feat: add frontend end-to-end testing stage in CI pipeline 2026-08-17 14:18:15 +02:00
nessar 3dca10b56f feat: update Dockerfiles to use explicit image paths and enhance localStorage handling in ThemeService 2026-08-17 14:18:15 +02:00
nessar 030d00ef67 test: refactor ThemeService tests to use a mock localStorage implementation 2026-08-17 14:18:15 +02:00
nessar 38414e8656 fix: handle localStorage availability in ThemeService and update tests accordingly 2026-08-17 14:18:15 +02:00
nessar c10a79d5fb feat: inject ThemeService into App component and enhance responsive styles for navigation items 2026-08-17 14:18:15 +02:00
nessar 561c6619a1 Refactor CSS styles across multiple components for improved consistency and maintainability
- Removed redundant styles and consolidated common styles in styles.scss
- Updated layout and spacing variables for better responsiveness
- Simplified component-specific styles in apartment, lease, tenant, and dashboard components
- Enhanced readability and organization of CSS by utilizing CSS layers
- Ensured consistent use of design tokens for colors, spacing, and borders
2026-08-17 14:18:15 +02:00
nessar 713ab3b2d9 feat: integrate FontAwesome icons across various components
- Updated apartment-list component to use FontAwesome icons for better visual representation.
- Refactored brand-mark component to utilize FontAwesome for the brand icon.
- Enhanced dashboard-page with FontAwesome icons for improved navigation.
- Replaced SVG icons with FontAwesome in settings-page for consistency and better performance.
- Updated sign-in-page to use FontAwesome for the sign-in action icon.
- Refactored tenant-card to incorporate FontAwesome icons for attachments.
- Enhanced workspace-navigation with FontAwesome icons for all navigation items.
- Applied consistent styling for fa-icon elements across components.
2026-08-17 14:18:15 +02:00
nessar ba695e2426 feat: enhance attachment actions with Font Awesome icons and improve layout 2026-08-17 14:18:15 +02:00
nessar 5c19f244fc Replace browser confirmations with confirmation dialog 2026-08-17 14:18:15 +02:00
nessar a8a3d7a747 fix: complete loading review coverage (#18) 2026-08-17 14:18:15 +02:00
nessar 0f68a91c5d refactor: address loading review findings (#18) 2026-08-17 14:18:15 +02:00
nessar ec3319494b feat: add comprehensive loading feedback (#18) 2026-08-17 14:18:15 +02:00
nessar 45de0cebcc feat: update theme preference handling in ThemeService and index.html 2026-08-17 14:18:15 +02:00
nessar c8020c489e Refactor backend services and controllers to use DTOs for Tenant, Lease, and Apartment
- Updated TenantController to utilize TenantService and DTOs for tenant operations.
- Refactored UserController to return UserResponse DTO.
- Introduced LeaseService and ApartmentService to handle business logic and data mapping.
- Created DTOs for Apartment, Lease, Tenant, and User to standardize data transfer.
- Implemented mappers for converting between entities and DTOs using MapStruct.
- Removed landlordId from Apartment and Lease entities and adjusted related tests.
- Added validation and normalization logic for tenant and guarantor data.
- Enhanced unit tests to ensure proper mapping and data integrity during updates.
2026-08-17 14:18:15 +02:00
nessar 181410e28f feat: add unit tests for tenant, guarantor, lease card, dashboard, session, theme, and workspace services 2026-08-17 14:18:15 +02:00
nessar 74a77f2d2b feat: add coverage dependencies for Vitest and update js-tokens version 2026-08-17 14:18:15 +02:00
nessar 2b80266f78 fix: format package.json for consistent indentation 2026-08-17 14:18:15 +02:00
nessar 74dad8f079 feat: enhance CI/CD pipeline with publish stage and image handling 2026-08-17 14:18:15 +02:00
nessar cfd7807234 fix front 2026-08-17 14:18:15 +02:00
nessar f9c89759e5 fix: update Maven image to use alpine variant for backend tests 2026-08-17 14:18:15 +02:00
nessar 82f339e209 Refactor application structure to use WorkspaceService for state management
- Removed direct state management from components and centralized it in WorkspaceService.
- Updated ApartmentsPage, TenantsPage, LeasesPage, and DashboardPage to utilize WorkspaceService for data handling.
- Introduced SessionService to manage user session state and authentication.
- Simplified component templates to reflect new service-based architecture.
- Removed unused ConfigService and its tests.
- Added lease.html template for lease document generation.
- Created app.routes.spec.ts for route mapping tests.
2026-08-17 14:18:15 +02:00
nessar be1f680a62 fix: add angularCompilerOptions for strict template checking 2026-08-17 14:18:15 +02:00
nessar b23f081799 fix: update HTTP status codes for attachment size exceptions 2026-08-17 14:18:15 +02:00
nessar 3ca8514231 refactor: split tenant and lease page modules 2026-08-17 14:18:14 +02:00
nessar ebfc62a5e2 fix: update links in AGENTS.md for consistency 2026-08-17 14:18:14 +02:00
nessar bf6d8e6bb6 fix: validate tenant and lease contact details 2026-08-17 14:18:14 +02:00
nessar 8603b98714 feat: manage tenants and leases (#4) 2026-08-17 14:18:14 +02:00