服务端的TigerApi 框架,基于.NET6 2024 版本
Ben Lin
2024-10-27 eba7b77b712604006b3c14985537ca80b4051521
Tiger.Business.MES/Task/TskJob.cs
@@ -11,6 +11,7 @@
using FluentScheduler;
using Newtonsoft.Json;
using static Tiger.Model.TrigArgs;
using System.Reflection;
namespace Tiger.Business.MES
{
@@ -29,12 +30,13 @@
            var result = new ApiAction();
            try
            {
                var _job = Biz.Db.Queryable<TSK_JOB>().Where(x => x.JobName == input.JobName).First()??new() {
                    JobName = input.JobName,
                var _job = Biz.Db.Queryable<TSK_JOB>().Where(x => x.JobName == input.JobType).First()??new() {
                    JobName = input.JobType,
                    JobType = input.JobType,
                    AssemblyName = input.AssemblyName,
                    Remark = input.Remark,
                };
                _job.Remark = input.Remark;
                //计划任务参数
                var Args = new TrigArgs()
                {
@@ -49,23 +51,29 @@
                    Hours = input.Hours,
                    Days = input.Days,
                };
                TSK_TRIG tskTrig = new TSK_TRIG()
                TSK_TRIG tskTrig = Biz.Db.Queryable<TSK_TRIG>().Where(x => x.JobId == _job.ID).First() ?? new()
                {
                    JobId = _job.ID,
                    Args = JsonConvert.SerializeObject(Args),
                    Status = TSK_TRIG.Statuss.Ready.GetValue(),
                    StartTime = DateTime.Now,
                    NumberOfRuns = 1,
                };
                tskTrig.Args = JsonConvert.SerializeObject(Args);
                var db = Biz.Db;
                var dbTran = db.UseTran(() =>
                {
                    var y = db.Storageable(_job)
                       .WhereColumns(t => new { t.JobName, t.GHOST_ROW })
                       .WhereColumns(t => new { t.JobName,t.GHOST_ROW })
                       .ToStorage();
                    y.AsInsertable.ExecuteCommand();
                    y.AsUpdateable.IgnoreColumns(x => x.ID).ExecuteCommand();
                    var z = db.Storageable(tskTrig)
                       .WhereColumns(t => new { t.JobId, t.GHOST_ROW })
                       .ToStorage();
                    z.AsInsertable.ExecuteCommand();
                    z.AsUpdateable.IgnoreColumns(x => x.ID).ExecuteCommand();
                });
                if (!dbTran.IsSuccess)
                {