whisper-money/app/Http/Requests/Concerns
Víctor Falcón d27905ec3d
refactor(requests): share account detail validation rules (#481)
## What

Real-estate detail rule block (~10 fields) was duplicated in **4
requests**; loan detail block in **2**. Variants differ only by
`sometimes` on `property_type` and presence of `revaluation_percentage`.

New `ValidatesAccountDetailRules` trait:

- `realEstateDetailRules(propertyTypeSometimes:, withRevaluation:)`
- `loanDetailRules()`

## Stats

- **-115 / +83 lines**; one source of truth for these field rules

## Checks

- `php artisan test --filter="Account|RealEstate|Loan"` — 355 passed
(1744 assertions)
- `vendor/bin/pint --dirty` — pass

Part of duplication-removal series (#475–#480).
2026-06-03 19:01:03 +02:00
..
ResolvesCategoryCashflowDirection.php refactor(requests): share category cashflow direction resolution (#479) 2026-06-03 17:39:40 +02:00
ValidatesAccountDetailRules.php refactor(requests): share account detail validation rules (#481) 2026-06-03 19:01:03 +02:00
ValidatesUserOwnedResources.php refactor(requests): extract user-owned exists rules to trait (#477) 2026-06-03 17:33:54 +02:00