Class PromotionsController
- Namespace
- KadicErp.WebApi.Controllers.RentACar
- Assembly
- KadicErp.WebApi.dll
[ApiController]
[Route("api/rent-a-car/promotions")]
[Authorize]
public class PromotionsController : ControllerBase
- Inheritance
-
object
ControllerBase
PromotionsController
Constructors
public PromotionsController(IMediator mediator)
Parameters
mediator IMediator
Methods
[HttpPost]
[Authorize(Policy = "RENTACAR_VEHICLES_CREATE")]
[ProducesResponseType(201)]
[ProducesResponseType(400)]
public Task<IActionResult> Create(CreatePromotionCommand command, CancellationToken cancellationToken = default)
Parameters
command CreatePromotionCommand
cancellationToken CancellationToken
Returns
- Task<IActionResult>
[HttpPatch("{id:guid}/deactivate")]
[Authorize(Policy = "RENTACAR_VEHICLES_UPDATE")]
[ProducesResponseType(200)]
[ProducesResponseType(400)]
public Task<IActionResult> Deactivate(Guid id, CancellationToken cancellationToken = default)
Parameters
id Guid
cancellationToken CancellationToken
Returns
- Task<IActionResult>
[HttpGet]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
[ProducesResponseType(typeof(PaginatorResponseDto<PromotionDto>), 200)]
public Task<IActionResult> GetAll(PaginatorRequestDto paginator, Guid? branchId = null, bool? isActive = null, CancellationToken cancellationToken = default)
Parameters
paginator PaginatorRequestDto
branchId Guid?
isActive bool?
cancellationToken CancellationToken
Returns
- Task<IActionResult>
[HttpGet("{id:guid}")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
[ProducesResponseType(typeof(PromotionDto), 200)]
[ProducesResponseType(404)]
public Task<IActionResult> GetById(Guid id, CancellationToken cancellationToken = default)
Parameters
id Guid
cancellationToken CancellationToken
Returns
- Task<IActionResult>
[HttpPut("{id:guid}")]
[Authorize(Policy = "RENTACAR_VEHICLES_UPDATE")]
[ProducesResponseType(200)]
[ProducesResponseType(400)]
public Task<IActionResult> Update(Guid id, UpdatePromotionCommand command, CancellationToken cancellationToken = default)
Parameters
id Guid
command UpdatePromotionCommand
cancellationToken CancellationToken
Returns
- Task<IActionResult>
[HttpGet("validate")]
[Authorize(Policy = "RENTACAR_VEHICLES_VIEW")]
[ProducesResponseType(typeof(PromotionDto), 200)]
[ProducesResponseType(404)]
public Task<IActionResult> ValidatePromoCode(string promoCode, Guid branchId, int rentalDays, Guid? vehicleCategoryId = null, Guid? rentalTypeId = null, CancellationToken cancellationToken = default)
Parameters
promoCode string
branchId Guid
rentalDays int
vehicleCategoryId Guid?
rentalTypeId Guid?
cancellationToken CancellationToken
Returns
- Task<IActionResult>