Files
Partsource/PartSource.Api/Controllers/InventoryController.cs

46 lines
1.3 KiB
C#

using Microsoft.AspNetCore.Mvc;
using PartSource.Data.Models;
using PartSource.Services;
using System.Net;
using System.Threading.Tasks;
namespace PartSource.Api.Controllers
{
[Route("[controller]")]
[Route("v1/[controller]")]
[ApiController]
[ApiExplorerSettings(GroupName = "v1")]
public class InventoryController : BaseNexpartController
{
private readonly PartService _inventoryService;
public InventoryController(PartService inventoryService)
{
_inventoryService = inventoryService;
}
[HttpGet]
[Route("sku/{sku}/storeNumber/{storeNumber}")]
public async Task<ActionResult> GetInventory(int sku, int storeNumber)
{
PartAvailability inventory = await _inventoryService.GetInventory(sku, storeNumber);
if (inventory == null)
{
return NotFound($"No part matching SKU {sku} was found.");
}
return Ok(new
{
data = new
{
StoreNumber = inventory.Store,
Sku = sku,
Quantity = inventory.QTY,
Updated = inventory.Updated ?? System.DateTime.MinValue
}
});
}
}
}