wangxinhui
2024-11-06 8f392cc88b0768b74efca3b68785cf5aa1c38e70
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
using System;
using WIDESEA_Common.Tools;
using WIDESEA_Core.Utilities;
 
namespace WIDESEA_WCS
{
    /// <summary>
    /// 任务下发基类
    /// </summary>
    public class SchedulerExecuteBase
    {
        /// <summary>
        /// 任务发送
        /// </summary>
        /// <param name="dispatchName">调度名称</param>
        /// <param name="func">发送方法</param>
        /// <returns></returns>
        public static WebResponseContent SendTask(string dispatchName, Func<string> func)
        {
            try
            {
                string str = $"【{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}】【下发任务开始】{Environment.NewLine}";
                str += $"【{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}】【任务信息】:{func()}{Environment.NewLine}";
                str += $"【{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}】【下发任务结束】{Environment.NewLine}";
                WriteLog.GetLog().Write(str, dispatchName);
                return WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                WriteLog.GetLog().Write($"【{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}】 任务下发异常,错误消息:{ex.Message}{Environment.NewLine}", dispatchName);
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
 
        /// <summary>
        /// 任务完成
        /// </summary>
        /// <param name="dispatchName">调度名称</param>
        /// <param name="func">完成调用的方法</param>
        /// <returns></returns>
        public static WebResponseContent TaskCompleted(string dispatchName, Func<string> func)
        {
            try
            {
                string str = $"【{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}】【任务完成开始】{Environment.NewLine}";
                str += $"【{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}】【任务完成信息】:{func()}{Environment.NewLine}";
                str += $"【{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}】【任务完成结束】{Environment.NewLine}";
                WriteLog.GetLog().Write(str, dispatchName);
                return WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                WriteLog.GetLog().Write($"【{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}】 任务下发异常,错误消息:{ex.Message}{Environment.NewLine}", dispatchName);
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
    }
}