| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- using DevExpress.Utils.Extensions;
- using System;
- using System.Collections.Generic;
- using System.Configuration;
- using System.IO;
- using System.Linq;
- using System.Web.Http;
- using XdCxRhDW.Dto;
- using XdCxRhDW.WebApi;
- using XdCxRhDW.X2D1TaskServer.Service;
- namespace XdCxRhDW.X2D1TaskServer.Controllers
- {
- /// <summary>
- ///离线任务处理接口
- /// </summary>
- public class HistoryTaskProcessingController : BaseController
- {
- /*******************
- * !!!不要在Controller中放业务逻辑的全局变量
- * !!!不要在Controller写太复杂的业务逻辑
- * Controller主要就是调用Service层的东西。Service层执行业务逻辑和调用Repository层操作数据库
- * ********************/
- private readonly HistoryTaskService _service;
- public HistoryTaskProcessingController(HistoryTaskService service)
- {
- _service = service;
- }
- /// <summary>
- /// 开始执行两星一地离线任务
- /// </summary>
- /// <param name="dto">离线任务信息</param>
- /// <returns></returns>
- [HttpPost]
- public AjaxResult Run(X2D1HistoryTaskHandleDto dto)
- {
- try
- {
- if (!Directory.Exists(dto.CapDir))
- {
- LogHelper.Error($"文件路径[{dto.CapDir}]不存在");
- return Error($"文件路径[{dto.CapDir}]不存在");
- }
- _service.StartAsync(dto);
- return Success();
- }
- catch (Exception ex)
- {
- Serilog.Log.Error(ex, $"【任务{dto.ID}】开始执行异常!");
- return Error($"【任务{dto.ID}】开始执行异常!");
- }
- }
- /// <summary>
- /// 停止执行两星一地离线任务
- /// </summary>
- /// <param name="dto"></param>
- /// <returns></returns>
- [HttpPost]
- public AjaxResult Stop(TaskStopHandleDto dto)
- {
- try
- {
- LogHelper.Warning($"用户停止了任务,ID={dto.ID}");
- _service.Stop();
- return Success();
- }
- catch (Exception ex)
- {
- Serilog.Log.Error(ex, $"【任务{dto.ID}】停止执行异常!");
- return Error($"【任务{dto.ID}】停止执行异常!");
- }
- }
- }
- }
|