bank-sampah/Controllers/ReduksiSampah/KompostingController.cs

61 lines
1.8 KiB
C#

using System.Linq;
using Microsoft.AspNetCore.Mvc;
namespace BankSampahApp.Controllers.ReduksiSampah
{
[Route("ReduksiSampah/[controller]/[action]")]
public class KompostingController : Controller
{
private const string Jenis = "Komposting";
public IActionResult Index()
{
return View("~/Views/ReduksiSampah/Komposting/Index.cshtml");
}
[HttpGet]
public IActionResult Table([FromQuery] string? bulan, [FromQuery] string? tahun)
{
var data = ReduksiSampahDataStore
.GetItems(Jenis)
.Where(item => ReduksiSampahDataStore.MatchesPeriode(item, bulan, tahun))
.Select(ReduksiSampahDataStore.ToDetailedResponse);
return Json(new { data });
}
[HttpPost]
public IActionResult Update([FromBody] MaggotController.MaggotUpdateRequest request)
{
if (request == null)
{
return BadRequest(new { message = "Permintaan tidak valid." });
}
var updated = ReduksiSampahDataStore.UpdateReduksiValues(
Jenis,
request.Id,
request.Status,
request.B1,
request.B2,
request.B3,
request.B4,
request.B5,
request.B6,
request.B7,
request.B8,
request.B9,
request.B10,
request.B11,
request.B12);
if (!updated)
{
return NotFound(new { message = "Data komposting tidak ditemukan." });
}
return Ok(new { message = "Data komposting berhasil diperbarui." });
}
}
}