Table of Contents

Class VehiclesController

Namespace
KadicErp.WebApi.Controllers.RentACar
Assembly
KadicErp.WebApi.dll
[ApiController]
[Route("api/rent-a-car/vehicles")]
[Authorize]
public class VehiclesController : ControllerBase
Inheritance
object
ControllerBase
VehiclesController

Constructors

VehiclesController(IMediator)

public VehiclesController(IMediator mediator)

Parameters

mediator IMediator

Methods

Activate(Guid)

[HttpPatch("{id}/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}/deactivate")]
[Authorize(Policy = "RENTACAR_VEHICLES_DEACTIVATE")]
public Task<IActionResult> Deactivate(Guid id)

Parameters

id Guid

Returns

Task<IActionResult>

GetAll(PaginatorRequestDto, Guid?, Guid?, string?, string?, int?, string?, Guid?, Guid?, 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)

Parameters

request PaginatorRequestDto
branchId Guid?
tenantId Guid?
searchName string
plate string
year int?
color string
statusId Guid?
categoryId Guid?
modelId Guid?

Returns

Task<IActionResult>

GetById(Guid)

[HttpGet("{id}")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetById(Guid id)

Parameters

id Guid

Returns

Task<IActionResult>

GetHistory(Guid, CancellationToken)

[HttpGet("{id}/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}/profile")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetProfile(Guid id)

Parameters

id Guid

Returns

Task<IActionResult>

GetReservationHistory(Guid, CancellationToken)

[HttpGet("{id}/reservation-history")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
public Task<IActionResult> GetReservationHistory(Guid id, CancellationToken cancellationToken)

Parameters

id Guid
cancellationToken CancellationToken

Returns

Task<IActionResult>

GetStatusHistory(Guid, CancellationToken)

[HttpGet("{id}/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}/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}/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}")]
[Authorize(Policy = "RENTACAR_VEHICLES_UPDATE")]
public Task<IActionResult> Update(Guid id, UpdateVehicleCommand command)

Parameters

id Guid
command UpdateVehicleCommand

Returns

Task<IActionResult>