Table of Contents

Class OrderController

Namespace
GastroSky.Controllers.V1
Assembly
GastroSky.dll
[ApiController]
[Authorize]
[Route("api/v1/orders")]
[Produces("application/json", new string[] { })]
public class OrderController : GastroSkyControllerBase
Inheritance
OrderController
Inherited Members

Constructors

OrderController(GastroSkyDatabaseContext, ISlugGenerator, IConfiguration, IOrderPaymentService, IOrderFulfillmentService, IMapper, ILogger<OrderController>)

public OrderController(GastroSkyDatabaseContext db, ISlugGenerator slugGenerator, IConfiguration configuration, IOrderPaymentService orderPaymentService, IOrderFulfillmentService orderFulfillmentService, IMapper mapper, ILogger<OrderController> logger)

Parameters

db GastroSkyDatabaseContext
slugGenerator ISlugGenerator
configuration IConfiguration
orderPaymentService IOrderPaymentService
orderFulfillmentService IOrderFulfillmentService
mapper IMapper
logger ILogger<OrderController>

Methods

CheckIfOrderIsPaid(string)

[HttpGet]
[Route("payment/check/{orderSlugOrGuid}")]
[ProducesResponseType(400)]
[ProducesResponseType(403)]
[ProducesResponseType(404)]
[ProducesResponseType<ResponseBodyDto<OrderPaymentCheckResponseDto>>(200)]
public Task<IActionResult> CheckIfOrderIsPaid(string orderSlugOrGuid)

Parameters

orderSlugOrGuid string

Returns

Task<IActionResult>

CreateOrder(OrderCreationRequestDto)

[HttpPost]
[Route("")]
[ProducesResponseType(400)]
[ProducesResponseType(403)]
[ProducesResponseType(404)]
[ProducesResponseType(500)]
[ProducesResponseType<ResponseBodyDto<OrderCreationResponseDto>>(200)]
public Task<IActionResult> CreateOrder(OrderCreationRequestDto dto)

Parameters

dto OrderCreationRequestDto

Returns

Task<IActionResult>

FulfillOrder(string)

[HttpGet]
[Route("{orderSlug}/fulfill")]
[ProducesResponseType(400)]
[ProducesResponseType(403)]
[ProducesResponseType(404)]
[ProducesResponseType<ResponseBodyDto<OrderPaymentCheckResponseDto>>(200)]
public Task<IActionResult> FulfillOrder(string orderSlug)

Parameters

orderSlug string

Returns

Task<IActionResult>

GetOrder(string)

[HttpGet]
[Route("{orderSlugOrGuid}")]
[ProducesResponseType(400)]
[ProducesResponseType(403)]
[ProducesResponseType(404)]
[ProducesResponseType<ResponseBodyDto<OrderResponseDto>>(200)]
public Task<IActionResult> GetOrder(string orderSlugOrGuid)

Parameters

orderSlugOrGuid string

Returns

Task<IActionResult>

GetOrders()

[HttpGet]
[Authorize]
[Route("")]
public Task<IActionResult> GetOrders()

Returns

Task<IActionResult>

PaymentWebhook()

[HttpPost]
[AllowAnonymous]
[Route("payment/webhook")]
public Task<IActionResult> PaymentWebhook()

Returns

Task<IActionResult>