# ReportCreatorController

**Kind:** Controller

**Source:** `Pams/API/Pams.API/Controllers/DashBoard/ReportCreatorController.cs` (line 11)

**Part of:** [Pams](subsystem-pams)

## Where it refuses work

- `ReportCreatorController` stops the work with an early return when `isSaved != Business.Entity.EnumNewSales.EnumReturnMessage.SavedSuccessfuly`, in 3 places.
- `ReportCreatorController` stops the work with an early return when `!domain.IsAdminReportFound(CompanyID, id)`.
- `ReportCreatorController` stops the work with an early return when `!domain.IsUserCustomReportFound(CompanyID, userId)`.
- `ReportCreatorController` stops the work with an early return when `userId != PersonUserID`.
- `ReportCreatorController` stops the work with an early return when `!domain.IsUserCustomReportFound(CompanyID, id)`.
- `ReportCreatorController` stops the work with an early return when `!domain.IsAdminReportFound(CompanyID, model.Id)`.

## Relationships

- MODULE_DECLARES → `GetReportPreparedByAdmin`
- MODULE_DECLARES → `GetReportPreparedByAdminById`
- MODULE_DECLARES → `GetReportPreparedByUser`
- MODULE_DECLARES → `GetReportByUser`
- MODULE_DECLARES → `GetReportPreparedByUserById`
- MODULE_DECLARES → `SaveReportPreparedByAdmin`
- MODULE_DECLARES → `SaveDashboardPreparedByUser`
- MODULE_DECLARES → `ChangeActiveReportPreparedByUser`
- MODULE_DECLARES → `ChangeActiveReportPreparedByAdminForUser`
- MODULE_DECLARES → `SaveLatestModifications`
- IMPORTS → `BaseController`
- IMPORTS → `RoleUserDashboardBindingModel`
- IMPORTS → `SaveDashboardPreparedByUser`
- IMPORTS → `SaveLatestModifications`
- IMPORTS → `DashboarModificationsdBindingModel`
