Table of Contents

Class PartnersReportsController

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

Constructors

PartnersReportsController(IMediator, IReportExportService)

public PartnersReportsController(IMediator mediator, IReportExportService exportService)

Parameters

mediator IMediator
exportService IReportExportService

Methods

Export(ReportExportRequest)

Exports a partners report as CSV, Excel, or PDF. Pass report=directory|activity. Search carries isActive filter as "true" or "false" (omit for all partners).

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

Parameters

request ReportExportRequest

Returns

Task<IActionResult>

GetPartnerActivity(int, int)

Returns active partners with their profile types for activity tracking. Financial enrichment (sales, purchases, AR, AP) can be added per partner from domain services.

[HttpGet("api/admin-reporting/reports/partners/activity")]
[Authorize(Policy = "ADMIN_REPORTING_REPORTS_PARTNERS_VIEW")]
public Task<IActionResult> GetPartnerActivity(int page = 1, int pageSize = 50)

Parameters

page int
pageSize int

Returns

Task<IActionResult>

GetPartnerDirectory(string?, bool?, int, int)

Returns a paged partner directory with identifier, contact, profile types, and tags. Supports search by name or identifier number.

[HttpGet("api/admin-reporting/reports/partners/directory")]
[Authorize(Policy = "ADMIN_REPORTING_REPORTS_PARTNERS_VIEW")]
public Task<IActionResult> GetPartnerDirectory(string? search, bool? isActive, int page = 1, int pageSize = 50)

Parameters

search string
isActive bool?
page int
pageSize int

Returns

Task<IActionResult>