# PrincipalDeductionController

**Kind:** Controller

**Source:** `Pams/API/Pams.API/Controllers/Sales/PrincipalDeductionController.cs` (line 9)

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

## Where it refuses work

- `PrincipalDeductionController` stops the work with an early return when `!logic.IsFound(id)`.
- `PrincipalDeductionController` stops the work with an early return when `!new Pams.Business.Component.NewSales.PrincipalInvoiceAndPaymentLogic().IsFound(invoiceId…`.
- `PrincipalDeductionController` stops the work with an early return when `isSaved != Business.Entity.EnumNewSales.EnumReturnMessage.SavedSuccessfuly`.
- `PrincipalDeductionController` stops the work with an early return when `!logic.IsFound(model.ID)`.
- `PrincipalDeductionController` stops the work with an early return when `isDeleted != Business.Entity.EnumNewSales.EnumReturnMessage.DeletedSuccessfuly`.

## Relationships

- MODULE_DECLARES → `GetById`
- MODULE_DECLARES → `GetAllByPrincipalInvoiceId`
- MODULE_DECLARES → `Save`
- MODULE_DECLARES → `Delete`
- IMPORTS → `BaseController`
- IMPORTS → `GetById`
- IMPORTS → `GetAllByPrincipalInvoiceId`
- IMPORTS → `Save`
- IMPORTS → `Save`
- IMPORTS → `Save`
- IMPORTS → `Save`
- IMPORTS → `Save`
- IMPORTS → `Save`
- IMPORTS → `Save`
- IMPORTS → `Save`
- IMPORTS → `PrincipalDeductionBindingModel`
- IMPORTS → `Delete`
- IMPORTS → `Delete`
- IMPORTS → `Delete`
- IMPORTS → `Delete`
- IMPORTS → `Delete`
- IMPORTS → `Delete`
- IMPORTS → `Delete`
- IMPORTS → `Delete`
- IMPORTS → `Delete`
- IMPORTS → `DeleteDto`

## Used by

2 references from 2 files. Each is a place in this repository where the symbol is actually used — go read one rather than trusting an example.

### calls by (2)

- `AppSettings` — `Frontend/src/app/settings/app/app.settings.ts`:241
- `AppSettings` — `Pams/Web/Pams.Web/Client/app/settings/app/app.settings.ts`:126
