| | |
| | | var result = new ApiAction(); |
| | | try |
| | | { |
| | | var _job = Biz.Db.Queryable<TSK_JOB>().Where(x => x.JobName == input.JobType).First()??new() { |
| | | JobName = input.JobType, |
| | | if (input.type == EveryType.Milliseconds && input.ToRunEvery<100) |
| | | { |
| | | result.IsSuccessed = false; |
| | | result.LocaleMsg = new($"时间是毫秒时,至少要大于100毫秒"); |
| | | return result; |
| | | } |
| | | if (Biz.Db.Queryable<TSK_JOB>().Any(x => |
| | | (x.JobName != input.JobName && x.JobType == input.JobType) || |
| | | (x.JobName == input.JobName && x.JobType != input.JobType))) |
| | | { |
| | | result.IsSuccessed = false; |
| | | result.LocaleMsg = new($"相同的类名不能有不同的任务名或者相同的任务名不能有不同的类名"); |
| | | return result; |
| | | } |
| | | var _job = Biz.Db.Queryable<TSK_JOB>().Where(x => x.JobName == input.JobName && x.JobType == input.JobType).First() ?? new() |
| | | { |
| | | JobName = input.JobName, |
| | | JobType = input.JobType, |
| | | AssemblyName = input.AssemblyName, |
| | | }; |
| | |
| | | StartTime = DateTime.Now, |
| | | NumberOfRuns = 1, |
| | | }; |
| | | tskTrig.LastRunTime = input.LastRunTime; |
| | | 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.JobType, t.GHOST_ROW }) |
| | | .ToStorage(); |
| | | y.AsInsertable.ExecuteCommand(); |
| | | y.AsUpdateable.IgnoreColumns(x => x.ID).ExecuteCommand(); |