The current search controllers for NPD, FE, and PP are overly complex, tightly coupled, and difficult to maintain. They contain significant business logic, inconsistent branching paths, and presentation‑layer concerns that bleed into application logic. This has resulted in controllers that are hard to read, hard to test, and prone to regressions.
We need to rebuild the search controllers from the ground up using a clean, minimal, and consistent architecture. This includes introducing new, simplified view models for the presentation layer, moving all business logic into the application layer or below, and ensuring that each search feature follows a predictable and maintainable pattern.
The current search controllers for NPD, FE, and PP are overly complex, tightly coupled, and difficult to maintain. They contain significant business logic, inconsistent branching paths, and presentation‑layer concerns that bleed into application logic. This has resulted in controllers that are hard to read, hard to test, and prone to regressions.
We need to rebuild the search controllers from the ground up using a clean, minimal, and consistent architecture. This includes introducing new, simplified view models for the presentation layer, moving all business logic into the application layer or below, and ensuring that each search feature follows a predictable and maintainable pattern.