45 lines
1.5 KiB
C#
45 lines
1.5 KiB
C#
using langguanApi.Model;
|
|
using langguanApi.Service;
|
|
using Microsoft.AspNetCore.Http;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
namespace langguanApi.Controllers
|
|
{
|
|
[Route("api/[controller]")]
|
|
[ApiController]
|
|
public class AlertController : ControllerBase
|
|
{
|
|
private readonly AlertService _alertService;
|
|
public AlertController(AlertService alertService)
|
|
{
|
|
_alertService = alertService;
|
|
}
|
|
/// <summary>
|
|
/// export data 默认最近7天数据
|
|
/// </summary>
|
|
/// <param name="start"></param>
|
|
/// <param name="end"></param>
|
|
/// <returns></returns>
|
|
[HttpGet("export")]
|
|
public async Task<IActionResult> export(DateTime? start, DateTime? end)
|
|
{
|
|
start = start.HasValue ? start.Value.Date : DateTime.Now.AddDays(-7);
|
|
end = end.HasValue ? end.Value.Date.AddDays(1) : DateTime.Now.Date.AddDays(1);
|
|
var alerts = await _alertService.ExportData(start, end);
|
|
return File(alerts, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
|
|
$"{start.Value.ToString("yyyy-MM-dd")}-{end.Value.ToString("yyyy-MM-dd")}_设备报警.xlsx");
|
|
}
|
|
/// <summary>
|
|
/// add alert
|
|
/// </summary>
|
|
/// <param name="input"></param>
|
|
/// <returns></returns>
|
|
[HttpPost("TestAdd")]
|
|
public async Task<IActionResult> TestAdd(AddAlertDto input)
|
|
{
|
|
var result = await _alertService.Add(input);
|
|
return Ok(result);
|
|
}
|
|
}
|
|
}
|