using System;
using System.Collections.Generic;
using System.Web.Http;
using System.Web.Http.Description;
using CncModels.Dto;
using CncModels.Dto.CollectLog;
using CncService.Interface;
using CncWebApi.Infrastructure;
using Newtonsoft.Json;
namespace CncWebApi.Controllers
{
///
/// 数据回放控制器
///
[RoutePrefix("api/admin/replay")]
[JwtAuthFilter]
public class ReplayController : ApiController
{
private readonly IReplayService _replayService;
public ReplayController(IReplayService replayService)
{
_replayService = replayService ?? throw new ArgumentNullException(nameof(replayService));
}
/// 预览回放影响范围
[HttpPost]
[Route("preview")]
[ResponseType(typeof(ApiResponse))]
public IHttpActionResult Preview([FromBody] ReplayRequest request)
{
if (request == null) return BadRequest("请求参数错误");
var result = _replayService.PreviewReplay(request.Date);
return Ok(ApiResponse.Success(result));
}
/// 执行回放
[HttpPost]
[Route("execute")]
[ResponseType(typeof(ApiResponse))]
public IHttpActionResult Execute([FromBody] ReplayRequest request)
{
if (request == null) return BadRequest("请求参数错误");
var result = _replayService.ExecuteReplay(request.Date);
return Ok(ApiResponse.Success(result));
}
}
}