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)); } } }