HistoryTaskProcessingController.cs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. using System;
  2. using System.Configuration;
  3. using System.IO;
  4. using System.Web.Http;
  5. using XdCxRhDW.Dto;
  6. using XdCxRhDW.TaskServer.Task;
  7. using XdCxRhDW.WebApi;
  8. namespace XdCxRhDW.TaskServer.Controllers
  9. {
  10. /// <summary>
  11. ///离线任务处理接口
  12. /// </summary>
  13. public class HistoryTaskProcessingController : BaseController
  14. {
  15. /// <summary>
  16. /// 执行离线任务
  17. /// </summary>
  18. /// <param name="dto">离线任务信息</param>
  19. /// <returns></returns>
  20. [HttpPost]
  21. public AjaxResult Run(HistoryTaskProcessingDto dto)
  22. {
  23. try
  24. {
  25. LogHelper.Info($"接收到历史任务:{dto.ID}");
  26. dto.StartTime = new DateTime(2024, 03, 24, 12, 00, 00);
  27. dto.DateDirFormat = "yyyyMMddHH";
  28. dto.CapDir = @"D:\\data";
  29. if (!Directory.Exists(dto.CapDir))
  30. {
  31. LogHelper.Error($"采集路径:{dto.CapDir}不存在");
  32. return Error($"采集路径:{dto.CapDir}不存在");
  33. }
  34. switch (dto.PosType)
  35. {
  36. case EnumPosTypeDto.X1D1CX:
  37. X1D1CXTask x1D1 = new X1D1CXTask();
  38. x1D1.Start(dto, posPlatformAddr);
  39. break;
  40. case EnumPosTypeDto.X2D1:
  41. break;
  42. case EnumPosTypeDto.RH:
  43. break;
  44. case EnumPosTypeDto.X3TwoDto:
  45. break;
  46. case EnumPosTypeDto.X3TwoDfo:
  47. break;
  48. case EnumPosTypeDto.X2Dfo:
  49. break;
  50. default:
  51. break;
  52. }
  53. return Success();
  54. }
  55. catch (Exception ex)
  56. {
  57. Serilog.Log.Error(ex, "离线任务处理出错!");
  58. return Error("离线任务处理出错");
  59. }
  60. }
  61. }
  62. }