Class CustomerAccountsController
- Namespace
- KadicErp.WebApi.Controllers.Receivables
- Assembly
- KadicErp.WebApi.dll
[Route("api/receivables/accounts")]
[ApiController]
[Authorize]
public class CustomerAccountsController : ControllerBase
- Inheritance
-
objectControllerBaseCustomerAccountsController
Constructors
CustomerAccountsController(IMediator, IStringLocalizer<GeneralMessages>)
public CustomerAccountsController(IMediator mediator, IStringLocalizer<GeneralMessages> localizer)
Parameters
mediatorIMediatorlocalizerIStringLocalizer<GeneralMessages>
Methods
ChangeStatus(Guid, ChangeCustomerAccountStatusCommand, CancellationToken)
[HttpPatch("{id:guid}/status")]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_CHANGE_STATUS")]
public Task<IActionResult> ChangeStatus(Guid id, ChangeCustomerAccountStatusCommand command, CancellationToken cancellationToken)
Parameters
idGuidcommandChangeCustomerAccountStatusCommandcancellationTokenCancellationToken
Returns
- Task<IActionResult>
Create(CreateCustomerAccountCommand, CancellationToken)
[HttpPost]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_CREATE")]
public Task<IActionResult> Create(CreateCustomerAccountCommand command, CancellationToken cancellationToken)
Parameters
commandCreateCustomerAccountCommandcancellationTokenCancellationToken
Returns
- Task<IActionResult>
Get(GetCustomerAccountsQuery, CancellationToken)
[HttpGet]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_VIEW")]
public Task<IActionResult> Get(GetCustomerAccountsQuery query, CancellationToken cancellationToken)
Parameters
queryGetCustomerAccountsQuerycancellationTokenCancellationToken
Returns
- Task<IActionResult>
GetAgingReport(GetAgingReportQuery, CancellationToken)
Reporte de antigüedad de saldos. Devuelve los clientes con documentos abiertos clasificados por rangos de vencimiento. Soporta paginación y filtros.
[HttpGet("aging-report")]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_VIEW")]
public Task<IActionResult> GetAgingReport(GetAgingReportQuery query, CancellationToken cancellationToken)
Parameters
queryGetAgingReportQuerycancellationTokenCancellationToken
Returns
- Task<IActionResult>
GetBalanceDiscrepancy(Guid, CancellationToken)
Verifica si el balance almacenado en la cuenta coincide con la suma de los documentos abiertos. Retorna la discrepancia para diagnóstico contable.
[HttpGet("{id:guid}/balance-discrepancy")]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_VIEW")]
public Task<IActionResult> GetBalanceDiscrepancy(Guid id, CancellationToken cancellationToken)
Parameters
idGuidcancellationTokenCancellationToken
Returns
- Task<IActionResult>
GetById(Guid, CancellationToken)
[HttpGet("{id:guid}")]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_VIEW")]
public Task<IActionResult> GetById(Guid id, CancellationToken cancellationToken)
Parameters
idGuidcancellationTokenCancellationToken
Returns
- Task<IActionResult>
GetDetail(Guid, CancellationToken)
[HttpGet("{id:guid}/detail")]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_VIEW")]
public Task<IActionResult> GetDetail(Guid id, CancellationToken cancellationToken)
Parameters
idGuidcancellationTokenCancellationToken
Returns
- Task<IActionResult>
GetDunningLogs(Guid, int, int, CancellationToken)
Obtiene el historial de escalaciones de cobros de una cuenta
[HttpGet("{customerAccountId:guid}/dunning-logs")]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_VIEW")]
public Task<IActionResult> GetDunningLogs(Guid customerAccountId, int page = 1, int pageSize = 20, CancellationToken cancellationToken = default)
Parameters
customerAccountIdGuidpageintpageSizeintcancellationTokenCancellationToken
Returns
- Task<IActionResult>
SetPolicies(Guid, SetCustomerAccountPoliciesCommand, CancellationToken)
[HttpPut("{id:guid}/policies")]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_SET_POLICIES")]
public Task<IActionResult> SetPolicies(Guid id, SetCustomerAccountPoliciesCommand command, CancellationToken cancellationToken)
Parameters
idGuidcommandSetCustomerAccountPoliciesCommandcancellationTokenCancellationToken
Returns
- Task<IActionResult>
UpdateSettings(Guid, UpdateCustomerAccountSettingsCommand, CancellationToken)
[HttpPut("{id:guid}/settings")]
[Authorize(Policy = "RECEIVABLES_CUSTOMER_ACCOUNTS_UPDATE")]
public Task<IActionResult> UpdateSettings(Guid id, UpdateCustomerAccountSettingsCommand command, CancellationToken cancellationToken)
Parameters
idGuidcommandUpdateCustomerAccountSettingsCommandcancellationTokenCancellationToken
Returns
- Task<IActionResult>