Class DriversProfilesController
- Namespace
- KadicErp.WebApi.Controllers.RentACar
- Assembly
- KadicErp.WebApi.dll
[Route("api/rentcar/[controller]")]
[ApiController]
public class DriversProfilesController : ControllerBase
- Inheritance
-
object
ControllerBase
DriversProfilesController
Constructors
public DriversProfilesController(IMediator mediator)
Parameters
mediator IMediator
Methods
Activate(Guid)
[HttpPatch("{id}/activate")]
[Authorize(Policy = "RENTACAR_DRIVERS_PROFILES_ACTIVATE")]
[AllowAnonymous]
[ProducesResponseType(200)]
[ProducesResponseType(400)]
public Task<IActionResult> Activate(Guid id)
Parameters
id Guid
Returns
- Task<IActionResult>
Create(CreateDriversProfileCommand)
[HttpPost]
[Authorize(Policy = "RENTACAR_DRIVERS_PROFILES_CREATE")]
[AllowAnonymous]
[ProducesResponseType(typeof(Guid), 201)]
[ProducesResponseType(400)]
public Task<IActionResult> Create(CreateDriversProfileCommand command)
Parameters
command CreateDriversProfileCommand
Returns
- Task<IActionResult>
Deactivate(Guid)
[HttpPatch("{id}/deactivate")]
[Authorize(Policy = "RENTACAR_DRIVERS_PROFILES_DEACTIVATE")]
[AllowAnonymous]
[ProducesResponseType(200)]
[ProducesResponseType(400)]
public Task<IActionResult> Deactivate(Guid id)
Parameters
id Guid
Returns
- Task<IActionResult>
GetAll(GetAllDriversProfilesQuery)
[HttpGet]
[Authorize(Policy = "RENTACAR_DRIVERS_PROFILES_VIEW")]
[AllowAnonymous]
[ProducesResponseType(typeof(PaginatorResponseDto<RentACarDriverDto>), 200)]
[ProducesResponseType(400)]
public Task<IActionResult> GetAll(GetAllDriversProfilesQuery query)
Parameters
query GetAllDriversProfilesQuery
Returns
- Task<IActionResult>
GetById(Guid)
[HttpGet("{id}")]
[Authorize(Policy = "RENTACAR_DRIVERS_PROFILES_VIEW")]
[AllowAnonymous]
[ProducesResponseType(typeof(RentACarDriverDto), 200)]
[ProducesResponseType(400)]
public Task<IActionResult> GetById(Guid id)
Parameters
id Guid
Returns
- Task<IActionResult>
GetHistory(Guid)
[HttpGet("{id}/history")]
[Authorize(Policy = "RENTACAR_DRIVERS_PROFILES_VIEW_HISTORY")]
[AllowAnonymous]
[ProducesResponseType(typeof(DriverHistoryDto), 200)]
[ProducesResponseType(404)]
[ProducesResponseType(400)]
public Task<IActionResult> GetHistory(Guid id)
Parameters
id Guid
Returns
- Task<IActionResult>
GetLicenseExpiryAlerts(int)
[HttpGet("license-expiry-alerts")]
[Authorize(Policy = "RENTACAR_DRIVERS_PROFILES_VIEW_LICENSE_ALERTS")]
[AllowAnonymous]
[ProducesResponseType(typeof(IReadOnlyList<DriverLicenseAlertDto>), 200)]
[ProducesResponseType(400)]
public Task<IActionResult> GetLicenseExpiryAlerts(int daysAhead = 30)
Parameters
daysAhead int
Returns
- Task<IActionResult>
Update(Guid, UpdateDriversProfileCommand)
[HttpPut("{id}")]
[Authorize(Policy = "RENTACAR_DRIVERS_PROFILES_UPDATE")]
[AllowAnonymous]
[ProducesResponseType(200)]
[ProducesResponseType(400)]
public Task<IActionResult> Update(Guid id, UpdateDriversProfileCommand command)
Parameters
id Guid
command UpdateDriversProfileCommand
Returns
- Task<IActionResult>