CodeLiturgy.Dashboard/BlueWest.Api/Controllers/CurrencyController.cs

59 lines
1.6 KiB
C#
Raw Normal View History

2022-08-13 06:35:36 +03:00
using System.Linq;
using BlueWest.Data;
using BlueWest.WebApi.MySQL;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
namespace BlueWest.WebApi.Controllers;
public class CurrencyController : ControllerBase
{
private readonly CountriesDbContext _dbContext;
public CurrencyController(CountriesDbContext dbContext)
{
_dbContext = dbContext;
}
[ProducesResponseType(StatusCodes.Status201Created)]
[HttpPost]
public ActionResult AddCurrency(Currency currency)
{
_dbContext.Currencies.Add(currency);
_dbContext.SaveChanges();
return CreatedAtRoute(nameof(GetCurrencyById), new {CurrencyId = currency.Code}, currency);
}
[ProducesResponseType(StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status400BadRequest)]
[HttpPut("countries/{Currency.Code}")]
public ActionResult UpdateCurrency(Currency Currency)
{
var array = _dbContext.Currencies.FirstOrDefault(x => x.Code == Currency.Code);
if (array != null)
{
return Ok(array);
}
return new NotFoundResult();
}
[ProducesResponseType(StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status404NotFound)]
[HttpGet("countries/{CurrencyId}", Name = nameof(GetCurrencyById))]
public ActionResult GetCurrencyById(int CurrencyId)
{
var array = _dbContext.Countries.FirstOrDefault(x => x.Code == CurrencyId);
if (array != null)
{
return Ok(array);
}
return new NotFoundResult();
}
}