From 35afcfe07fef52f74a2079fdb5977a87f88ddbb6 Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期二, 17 十二月 2024 20:40:47 +0800 Subject: [PATCH] 提交前检查是否岗位、工单和不良代码 --- Tiger.Business.MES/Task/TskJob.cs | 24 +++++++++++++++++++++--- 1 files changed, 21 insertions(+), 3 deletions(-) diff --git a/Tiger.Business.MES/Task/TskJob.cs b/Tiger.Business.MES/Task/TskJob.cs index 6c5d1f9..204477a 100644 --- a/Tiger.Business.MES/Task/TskJob.cs +++ b/Tiger.Business.MES/Task/TskJob.cs @@ -30,8 +30,23 @@ 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, }; @@ -50,6 +65,8 @@ Minutes = input.Minutes, Hours = input.Hours, Days = input.Days, + Interval = input.Interval, + ByInterval = input.ByInterval, }; TSK_TRIG tskTrig = Biz.Db.Queryable<TSK_TRIG>().Where(x => x.JobId == _job.ID).First() ?? new() { @@ -58,13 +75,14 @@ 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(); -- Gitblit v1.9.3