diff --git a/QcMgr/Tnb.QcMgr/QcCheckTaskService.cs b/QcMgr/Tnb.QcMgr/QcCheckTaskService.cs index a90d7d75..d18ec401 100644 --- a/QcMgr/Tnb.QcMgr/QcCheckTaskService.cs +++ b/QcMgr/Tnb.QcMgr/QcCheckTaskService.cs @@ -12,6 +12,7 @@ using JNPF.DynamicApiController; using JNPF.FriendlyException; using JNPF.JsonSerialization; using JNPF.Systems.Entitys.Permission; +using JNPF.Systems.Entitys.System; using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Mvc; using SqlSugar; @@ -45,32 +46,6 @@ namespace Tnb.QcMgr public async Task GetTaskItems(string id) { var db = _repository.AsSugarClient(); - - string planid = "26813180898837"; - var lists= await db.Queryable().Where(p => p.mainid == id).ToListAsync(); - if (lists.Count == 0) - { - var QcCheckPlanDs = await db.Queryable().Where(p => p.mainid == planid).ToListAsync(); - List NewQcCheckExecDs = new List(); - foreach (var QcCheckPlanD in QcCheckPlanDs) - { - QcCheckExecD QcCheckExecD = new QcCheckExecD(); - QcCheckExecD.mainid = id; - QcCheckExecD.extype = QcCheckPlanD.extype; - QcCheckExecD.excontent = QcCheckPlanD.excontent; - QcCheckExecD.check = QcCheckPlanD.check; - QcCheckExecD.errorcause = QcCheckPlanD.errorcause; - QcCheckExecD.errorlevel = QcCheckPlanD.errorlevel; - QcCheckExecD.remark = QcCheckPlanD.remark; - QcCheckExecD.attachment = QcCheckPlanD.attachment; - QcCheckExecD.isexec = QcCheckPlanD.isexec; - QcCheckExecD.custom = QcCheckPlanD.custom; - QcCheckExecD.typeid = QcCheckPlanD.typeid; - QcCheckExecD.itemid = QcCheckPlanD.itemid; - NewQcCheckExecDs.Add(QcCheckExecD); - } - await db.Insertable(NewQcCheckExecDs).ExecuteCommandAsync(); - } var QcCheckExecH = await db.Queryable().Where(p => p.id == id).FirstAsync(); var QcCheckExecDs = await db.Queryable().Where(p => p.mainid == id).ToListAsync(); var QcCheckItems = await db.Queryable().ToListAsync(); @@ -155,8 +130,10 @@ namespace Tnb.QcMgr try { var QcCheckExecH = await db.Queryable().Where(p => p.id == CheckTaskInput.mainid).FirstAsync(); + var DictionaryType = await db.Queryable().Where(p=>p.FullName== "质检状态").FirstAsync(); + var DictionaryData = await db.Queryable< DictionaryDataEntity >().Where(p => p.DictionaryTypeId==DictionaryType.Id&&p.FullName== "已完成").FirstAsync(); QcCheckExecH.checknum = CheckTaskInput.checknum; - QcCheckExecH.status = "26745885292053"; + QcCheckExecH.status = DictionaryData.Id; QcCheckExecH.result = CheckTaskInput.result; QcCheckExecH.execuser = _userManager.UserId; QcCheckExecH.exectime = DateTime.Now.ToString(); diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWmsSignForDeliveryService.cs b/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWmsSignForDeliveryService.cs index 84fdc879..dd623785 100644 --- a/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWmsSignForDeliveryService.cs +++ b/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWmsSignForDeliveryService.cs @@ -16,6 +16,6 @@ namespace Tnb.WarehouseMgr.Interfaces /// /// /// - public Task MESCarrySign(MESCarrySignInput input); + public Task MESCarrySign(MESCarrySignInput input); } } diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsSignForDeliveryService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsSignForDeliveryService.cs index 61e40c6f..366b22d5 100644 --- a/WarehouseMgr/Tnb.WarehouseMgr/WmsSignForDeliveryService.cs +++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsSignForDeliveryService.cs @@ -94,6 +94,10 @@ namespace Tnb.WarehouseMgr { disTask = await _db.Queryable().FirstAsync(it => it.carry_id == input.carryId && it.is_sign == 0); } + else if (!input.carry_code.IsNullOrEmpty()) + { + disTask = await _db.Queryable().FirstAsync(it => it.carry_code == input.carry_code && it.is_sign == 0); + } if (disTask != null) { if (_dicBizType.ContainsKey(disTask.biz_type)) diff --git a/taskschedule/Tnb.TaskScheduler/Listener/QcTaskTimeWorker.cs b/taskschedule/Tnb.TaskScheduler/Listener/QcTaskTimeWorker.cs new file mode 100644 index 00000000..9227c3e7 --- /dev/null +++ b/taskschedule/Tnb.TaskScheduler/Listener/QcTaskTimeWorker.cs @@ -0,0 +1,64 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using JNPF; +using JNPF.Common.Security; +using JNPF.Systems.Entitys.System; +using JNPF.TaskScheduler; +using JNPF.TaskScheduler.Entitys; +using SqlSugar; +using Tnb.EquipMgr.Entities; +using Tnb.QcMgr.Entities; +using Tnb.QcMgr.Entities.Entity; +using TimeTaskEntity = JNPF.TaskScheduler.Entitys.TimeTaskEntity; + +namespace Tnb.TaskScheduler.Listener +{ + /// + /// 生成质检任务 + /// + public class QcTaskTimeWorker : ISpareTimeWorker + { + private ISqlSugarRepository repository => App.GetService>(); + [SpareTime("0 0 0 * * ?", "生成质检任务", ExecuteType = SpareTimeExecuteTypes.Serial, StartNow = false)] + public async void CreateTask(SpareTimer timer, long count) + { + var timeTaskEntity = await repository.AsSugarClient().Queryable().Where(p => p.Id == timer.WorkerName).FirstAsync(); + if (timeTaskEntity == null) + return; + var PlanH = await repository.AsQueryable().Where(p => p.id == timeTaskEntity.Description).FirstAsync(); + var PlanDs = await repository.AsSugarClient().Queryable().Where(p => p.mainid == timeTaskEntity.Description).ToListAsync(); + if (PlanH == null || PlanDs.Count == 0) + return; + var DictionaryType = await repository.AsSugarClient().Queryable().Where(p => p.FullName == "质检状态").FirstAsync(); + var DictionaryData = await repository.AsSugarClient().Queryable().Where(p => p.DictionaryTypeId == DictionaryType.Id && p.FullName == "待执行").FirstAsync(); + QcCheckExecH qcCheckExecH = new QcCheckExecH(); + qcCheckExecH.id = SnowflakeIdHelper.NextId(); + qcCheckExecH.checktype = PlanH.checktype; + qcCheckExecH.status = DictionaryData.Id; + qcCheckExecH.tasktime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); + var ExecDs = new List(); + foreach (var PlanD in PlanDs) + { + QcCheckExecD QcCheckExecD = new QcCheckExecD(); + QcCheckExecD.mainid = qcCheckExecH.id; + QcCheckExecD.extype = PlanD.extype; + QcCheckExecD.excontent = PlanD.excontent; + QcCheckExecD.check = PlanD.check; + QcCheckExecD.errorcause = PlanD.errorcause; + QcCheckExecD.errorlevel = PlanD.errorlevel; + QcCheckExecD.remark = PlanD.remark; + QcCheckExecD.attachment = PlanD.attachment; + QcCheckExecD.isexec = PlanD.isexec; + QcCheckExecD.custom = PlanD.custom; + QcCheckExecD.typeid = PlanD.typeid; + QcCheckExecD.itemid = PlanD.itemid; + ExecDs.Add(QcCheckExecD); + } + await repository.AsSugarClient().Insertable(qcCheckExecH).ExecuteCommandAsync(); + await repository.AsSugarClient().Insertable(ExecDs).ExecuteCommandAsync(); + } + } +} diff --git a/taskschedule/Tnb.TaskScheduler/Tnb.TaskScheduler.csproj b/taskschedule/Tnb.TaskScheduler/Tnb.TaskScheduler.csproj index 289ac926..9de6d936 100644 --- a/taskschedule/Tnb.TaskScheduler/Tnb.TaskScheduler.csproj +++ b/taskschedule/Tnb.TaskScheduler/Tnb.TaskScheduler.csproj @@ -14,6 +14,7 @@ +