using System;
using System.Configuration;
using System.IO;
using System.Web.Http;
using XdCxRhDW.Dto;
using XdCxRhDW.TaskServer.Task;
using XdCxRhDW.WebApi;
namespace XdCxRhDW.TaskServer.Controllers
{
///
///离线任务处理接口
///
public class HistoryTaskProcessingController : BaseController
{
///
/// 执行离线任务
///
/// 离线任务信息
///
[HttpPost]
public AjaxResult Run(HistoryTaskProcessingDto dto)
{
try
{
LogHelper.Info($"接收到历史任务:{dto.ID}");
dto.StartTime = new DateTime(2024, 03, 24, 12, 00, 00);
dto.DateDirFormat = "yyyyMMddHH";
dto.CapDir = @"D:\\data";
if (!Directory.Exists(dto.CapDir))
{
LogHelper.Error($"采集路径:{dto.CapDir}不存在");
return Error($"采集路径:{dto.CapDir}不存在");
}
switch (dto.PosType)
{
case EnumPosTypeDto.X1D1CX:
X1D1CXTask x1D1 = new X1D1CXTask();
x1D1.Start(dto, posPlatformAddr);
break;
case EnumPosTypeDto.X2D1:
break;
case EnumPosTypeDto.RH:
break;
case EnumPosTypeDto.X3TwoDto:
break;
case EnumPosTypeDto.X3TwoDfo:
break;
case EnumPosTypeDto.X2Dfo:
break;
default:
break;
}
return Success();
}
catch (Exception ex)
{
Serilog.Log.Error(ex, "离线任务处理出错!");
return Error("离线任务处理出错");
}
}
}
}