Class VehiclesController
- Namespace
- KadicErp.WebApi.Controllers.RentACar
- Assembly
- KadicErp.WebApi.dll
[ApiController]
[Route("api/rent-a-car/vehicles")]
[Authorize]
[RequireModule("RENT_A_CAR")]
public class VehiclesController : ControllerBase
- Inheritance
-
object
ControllerBase
VehiclesController
Constructors
public VehiclesController(IMediator mediator, IReportExportService exportService)
Parameters
mediator IMediator
exportService IReportExportService
Methods
Activate(Guid)
[HttpPatch("{id:guid}/activate")]
[Authorize(Policy = "RENTACAR_VEHICLES_ACTIVATE")]
public Task<IActionResult> Activate(Guid id)
Parameters
id Guid
Returns
- Task<IActionResult>
Create(CreateVehicleCommand)
[HttpPost]
[Authorize(Policy = "RENTACAR_VEHICLES_CREATE")]
public Task<IActionResult> Create(CreateVehicleCommand command)
Parameters
command CreateVehicleCommand
Returns
- Task<IActionResult>
Deactivate(Guid)
[HttpPatch("{id:guid}/deactivate")]
[Authorize(Policy = "RENTACAR_VEHICLES_DEACTIVATE")]
public Task<IActionResult> Deactivate(Guid id)
Parameters
id Guid
Returns
- Task<IActionResult>
ExportCardList(ReportExportRequest, CancellationToken)
[HttpPost("card-list/export")]
[Authorize(Policy = "RENTACAR_VEHICLES_EXPORT")]
public Task<IActionResult> ExportCardList(ReportExportRequest request, CancellationToken cancellationToken)
Parameters
request ReportExportRequest
cancellationToken CancellationToken
Returns
- Task<IActionResult>
GetAll(PaginatorRequestDto, Guid?, Guid?, string?, string?, int?, string?, Guid?, Guid?, Guid?, DateOnly?, DateOnly?, Guid?)
[HttpGet("GetAll")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetAll(PaginatorRequestDto request, Guid? branchId = null, Guid? tenantId = null, string? searchName = null, string? plate = null, int? year = null, string? color = null, Guid? statusId = null, Guid? categoryId = null, Guid? modelId = null, DateOnly? dateFrom = null, DateOnly? dateTo = null, Guid? filterStatusId = null)
Parameters
request PaginatorRequestDto
branchId Guid?
tenantId Guid?
searchName string
plate string
year int?
color string
statusId Guid?
categoryId Guid?
modelId Guid?
dateFrom DateOnly?
dateTo DateOnly?
filterStatusId Guid?
Returns
- Task<IActionResult>
GetById(Guid)
[HttpGet("{id:guid}")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetById(Guid id)
Parameters
id Guid
Returns
- Task<IActionResult>
GetCardList(PaginatorRequestDto, Guid?, Guid?, string?, string?, int?, string?, Guid?, Guid?, Guid?, DateOnly?, DateOnly?, Guid?, Guid?, DateOnly?)
[HttpGet("card-list")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetCardList(PaginatorRequestDto request, Guid? branchId = null, Guid? tenantId = null, string? searchName = null, string? plate = null, int? year = null, string? color = null, Guid? statusId = null, Guid? categoryId = null, Guid? modelId = null, DateOnly? dateFrom = null, DateOnly? dateTo = null, Guid? filterStatusId = null, Guid? reservationStatusId = null, DateOnly? asOfDate = null)
Parameters
request PaginatorRequestDto
branchId Guid?
tenantId Guid?
searchName string
plate string
year int?
color string
statusId Guid?
categoryId Guid?
modelId Guid?
dateFrom DateOnly?
dateTo DateOnly?
filterStatusId Guid?
reservationStatusId Guid?
asOfDate DateOnly?
Returns
- Task<IActionResult>
GetDashboard(PaginatorRequestDto, Guid?, Guid?, string?, string?, int?, string?, Guid?, Guid?, Guid?, DateOnly?, DateOnly?, Guid?, Guid?, DateOnly?)
[HttpGet("dashboard")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetDashboard(PaginatorRequestDto request, Guid? branchId = null, Guid? tenantId = null, string? searchName = null, string? plate = null, int? year = null, string? color = null, Guid? statusId = null, Guid? categoryId = null, Guid? modelId = null, DateOnly? dateFrom = null, DateOnly? dateTo = null, Guid? filterStatusId = null, Guid? reservationStatusId = null, DateOnly? localToday = null)
Parameters
request PaginatorRequestDto
branchId Guid?
tenantId Guid?
searchName string
plate string
year int?
color string
statusId Guid?
categoryId Guid?
modelId Guid?
dateFrom DateOnly?
dateTo DateOnly?
filterStatusId Guid?
reservationStatusId Guid?
localToday DateOnly?
Returns
- Task<IActionResult>
GetHistory(Guid, CancellationToken)
[HttpGet("{id:guid}/history")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetHistory(Guid id, CancellationToken cancellationToken = default)
Parameters
id Guid
cancellationToken CancellationToken
Returns
- Task<IActionResult>
GetProfile(Guid)
[HttpGet("{id:guid}/profile")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetProfile(Guid id)
Parameters
id Guid
Returns
- Task<IActionResult>
GetReservationHistory(Guid, CancellationToken)
[HttpGet("{id:guid}/reservation-history")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetReservationHistory(Guid id, CancellationToken cancellationToken)
Parameters
id Guid
cancellationToken CancellationToken
Returns
- Task<IActionResult>
GetStatusCounts(Guid, DateOnly?, DateOnly?, CancellationToken)
[HttpGet("status-counts")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetStatusCounts(Guid branchId, DateOnly? dateFrom = null, DateOnly? dateTo = null, CancellationToken cancellationToken = default)
Parameters
branchId Guid
dateFrom DateOnly?
dateTo DateOnly?
cancellationToken CancellationToken
Returns
- Task<IActionResult>
GetStatusHistory(Guid, CancellationToken)
[HttpGet("{id:guid}/status-history")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetStatusHistory(Guid id, CancellationToken cancellationToken)
Parameters
id Guid
cancellationToken CancellationToken
Returns
- Task<IActionResult>
MarkClean(Guid, MarkVehicleCleanBody?, CancellationToken)
[HttpPatch("{id:guid}/mark-clean")]
[Authorize(Policy = "RENTACAR_VEHICLES_MARK_CLEAN")]
public Task<IActionResult> MarkClean(Guid id, MarkVehicleCleanBody? body, CancellationToken cancellationToken)
Parameters
id Guid
body MarkVehicleCleanBody
cancellationToken CancellationToken
Returns
- Task<IActionResult>
SetAssetItem(Guid, SetVehicleAssetItemBody)
[HttpPatch("{id:guid}/asset-item")]
[Authorize(Policy = "RENTACAR_VEHICLES_UPDATE")]
public Task<IActionResult> SetAssetItem(Guid id, SetVehicleAssetItemBody body)
Parameters
id Guid
body SetVehicleAssetItemBody
Returns
- Task<IActionResult>
Update(Guid, UpdateVehicleCommand)
[HttpPut("{id:guid}")]
[Authorize(Policy = "RENTACAR_VEHICLES_UPDATE")]
public Task<IActionResult> Update(Guid id, UpdateVehicleCommand command)
Parameters
id Guid
command UpdateVehicleCommand
Returns
- Task<IActionResult>
UpdateLocation(Guid, UpdateVehicleLocationBody, CancellationToken)
[HttpPatch("{id:guid}/location")]
[Authorize(Policy = "RENTACAR_VEHICLES_UPDATE")]
public Task<IActionResult> UpdateLocation(Guid id, UpdateVehicleLocationBody body, CancellationToken cancellationToken)
Parameters
id Guid
body UpdateVehicleLocationBody
cancellationToken CancellationToken
Returns
- Task<IActionResult>