Table of Contents

Class TreasuryReportsController

Namespace
KadicErp.WebApi.Controllers.AdminReporting.Reports
Assembly
KadicErp.WebApi.dll
[ApiController]
public class TreasuryReportsController : ControllerBase
Inheritance
object
ControllerBase
TreasuryReportsController

Constructors

TreasuryReportsController(IMediator, IReportExportService)

public TreasuryReportsController(IMediator mediator, IReportExportService exportService)

Parameters

mediator IMediator
exportService IReportExportService

Methods

Export(ReportExportRequest)

Exports a treasury report as CSV, Excel, or PDF. Pass report=cash-position|bank-movements|cash-movements|reconciliation-status. AccountId carries bankAccountId; CustomerId carries cashBoxId.

[HttpPost("api/admin-reporting/reports/treasury/export")]
[Authorize(Policy = "ADMIN_REPORTING_REPORTS_EXPORT")]
public Task<IActionResult> Export(ReportExportRequest request)

Parameters

request ReportExportRequest

Returns

Task<IActionResult>

GetBankMovements(Guid?, DateOnly?, DateOnly?, Guid?, int, int)

Returns a paginated listing of bank movements filtered by date range and optionally by a specific bank account. Includes reconciliation status per movement.

[HttpGet("api/admin-reporting/reports/treasury/bank-movements")]
[Authorize(Policy = "ADMIN_REPORTING_REPORTS_TREASURY_VIEW")]
public Task<IActionResult> GetBankMovements(Guid? branchId, DateOnly? dateFrom, DateOnly? dateTo, Guid? bankAccountId, int page = 1, int pageSize = 50)

Parameters

branchId Guid?
dateFrom DateOnly?
dateTo DateOnly?
bankAccountId Guid?
page int
pageSize int

Returns

Task<IActionResult>

GetCashMovements(Guid?, DateOnly?, DateOnly?, Guid?, int, int)

Returns a paginated listing of cash box movements filtered by date range and optionally by a specific cash box.

[HttpGet("api/admin-reporting/reports/treasury/cash-movements")]
[Authorize(Policy = "ADMIN_REPORTING_REPORTS_TREASURY_VIEW")]
public Task<IActionResult> GetCashMovements(Guid? branchId, DateOnly? dateFrom, DateOnly? dateTo, Guid? cashBoxId, int page = 1, int pageSize = 50)

Parameters

branchId Guid?
dateFrom DateOnly?
dateTo DateOnly?
cashBoxId Guid?
page int
pageSize int

Returns

Task<IActionResult>

GetCashPosition(Guid?)

Returns the current cash position for all active bank accounts and cash boxes, showing balance, currency, and the date of the last posted movement.

[HttpGet("api/admin-reporting/reports/treasury/cash-position")]
[Authorize(Policy = "ADMIN_REPORTING_REPORTS_TREASURY_VIEW")]
public Task<IActionResult> GetCashPosition(Guid? branchId)

Parameters

branchId Guid?

Returns

Task<IActionResult>

GetReconciliationStatus(Guid?, DateOnly?, DateOnly?, int, int)

Returns the reconciliation status per bank account and period: statement balance, book balance, difference, status (Open/Closed), and the count of reconciled line items.

[HttpGet("api/admin-reporting/reports/treasury/reconciliation-status")]
[Authorize(Policy = "ADMIN_REPORTING_REPORTS_TREASURY_VIEW")]
public Task<IActionResult> GetReconciliationStatus(Guid? branchId, DateOnly? dateFrom, DateOnly? dateTo, int page = 1, int pageSize = 50)

Parameters

branchId Guid?
dateFrom DateOnly?
dateTo DateOnly?
page int
pageSize int

Returns

Task<IActionResult>