服务端的TigerApi 框架,基于.NET6 2024 版本
YangYuGang
2025-04-07 7f75d4c1a1a3bd348042eb0fec8480f5df9cd1d2
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
59
60
61
62
63
64
65
66
67
68
69
70
using FluentScheduler;
using Rhea.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tiger.IBusiness;
using Tiger.Model;
 
namespace Tiger.Business.WMS
{
    /// <summary>
    /// 从U9获取委外发料单
    /// </summary> 
    public class U9C_WMS_GetScmOut: TigerJobBase, ITJob
    {
        public string Id { get; set; } = Guid.NewGuid().ToString("N");
        public string Tag { get; set; }
        public string Name { get; set; }
        public U9C_WMS_GetScmOut()
        {
            Id = Guid.NewGuid().ToString("N");
            Tag = "U9C_WMS_GetScmOut Interface Job";
            GetJob(typeof(U9C_WMS_GetScmOut).Name);
            Name = Job.JobName;
        }
 
        public void Execute()
        {
            #region 固定写法
            Logger.Scheduler.Info($"/**\r\n *进入计划调度(名称: {Name} )....\r\n */\r\n"); //固定写法
            Schedule = JobManager.GetSchedule(Name); //固定写法
            StartTime = DateTime.Now; //固定写法
            #endregion
            try
            {
                string msg = "";
                string status = "Successed";
                GetJob(typeof(U9C_WMS_GetScmOut).Name);
                TskJobInput tskJobInput = CheckHowToDo();
                if (tskJobInput.result)
                {
                    var result = DI.Resolve<IU9C_WMS>().In_GetScmOut(tskJobInput.input);
                    if (!result.IsSuccessed)
                    {
                        msg = $"获取委外发料单据信息异常:{result.Message}";
                        Logger.Scheduler.Error(msg);
                        status = "Failed";
                    }
                    else
                    {
                        msg = $"从U9C获取委外发料单据信息成功:{result.Message}";
                        //固定写法
                        Trig.LastRunTime = Args.ByInterval == "Y" ? tskJobInput.input.endTime.ToDateTime().AddHours(Args.Interval) : tskJobInput.input.endTime.ToDateTime();
                        Trig.NextRunTime = Schedule.NextRun;
                    }
                }
                SaveFluentSchedulerLog(status, $"{msg}");
                Logger.Scheduler.Info($"计划调度(名称:{Name})完成,返回信息:{msg}\r\n");
            }
            catch (System.Exception ex)
            {
                Logger.Scheduler.Fatal(ex, "获取委外发料单据信息异常");
                SaveFluentSchedulerLog("Failed", ex.Message);
            }
            Logger.Scheduler.Info($"/* 计划调度(名称:{Name})结束 */\r\n"); //固定写法
        }
    }
}