Files
gwms/GWMS.UI/Controllers/PlantLogController.cs
T
2021-06-30 09:17:01 +02:00

99 lines
2.7 KiB
C#

using GWMS.Data.DatabaseModels;
using GWMS.UI.Data;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
// For more information on enabling Web API for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
namespace GWMS.UI.Controllers
{
[Route("api/PlantLog")]
[ApiController]
public class PlantLogController : ControllerBase
{
#region Public Constructors
public PlantLogController(GWMSDataService DataService)
{
_DataService = DataService;
}
#endregion Public Constructors
#region Protected Properties
protected GWMSDataService _DataService { get; set; }
#endregion Protected Properties
#region Public Methods
// DELETE api/PlantLog/5
[HttpDelete("{id}")]
public void Delete(int id)
{
}
// GET: api/PlantLog
[HttpGet]
public async Task<List<PlantLogModel>> Get()
{
// arrotondo ai 5 minuti
DateTime adesso = DateTime.Now;
int dayHour = adesso.Hour;
int dayMin = (adesso.Minute / 5) * 5;
DateTime limite = DateTime.Today.AddHours(dayHour).AddMinutes(dayMin);
// serializzo i dati di PlantDTO dell'impianto richiesto
var ListRecords = await _DataService.PlantLogGetFilt(0, limite, 100);
return ListRecords;
}
// GET api/PlantLog/5
[HttpGet("{id}")]
public async Task<List<PlantLogModel>> Get(int id)
{
// arrotondo ai 5 minuti
DateTime adesso = DateTime.Now;
int dayHour = adesso.Hour;
int dayMin = (adesso.Minute / 5) * 5;
DateTime limite = DateTime.Today.AddHours(dayHour).AddMinutes(dayMin);
// serializzo i dati di PlantDTO dell'impianto richiesto
var ListRecords = await _DataService.PlantLogGetFilt(id, limite, 100);
return ListRecords;
}
// POST api/PlantLog
[HttpPost]
public ActionResult Post([FromBody] List<PlantLogModel> newItems)
{
bool fatto = false;
// verifico ci sia valore
if (newItems != null)
{
fatto = _DataService.PlantLogInsert(newItems);
}
if (fatto)
{
return Ok();
}
else
{
return BadRequest();
}
}
// PUT api/PlantLog/5
[HttpPut("{id}")]
public void Put(int id, [FromBody] string value)
{
}
#endregion Public Methods
}
}