diff --git a/SlnMesnac.WCS/WCS/BearAgv.cs b/SlnMesnac.WCS/WCS/BearAgv.cs index 6ab6eb7..91db6ec 100644 --- a/SlnMesnac.WCS/WCS/BearAgv.cs +++ b/SlnMesnac.WCS/WCS/BearAgv.cs @@ -224,34 +224,24 @@ namespace SlnMesnac.WCS.WCS _logger.Plc(DateTime.Now + "3#PLC未连接,请检查网络!"); return; } - //从下料点直接取,清空RFID及机台号,条码等信息--ok - workShop3Plc.writeBoolByAddress(StaticData.GetPlcAddress("3#大料箱agv已取走反馈"), true); - //workShop3Plc.writeInt16ByAddress(StaticData.GetPlcAddress("3#四宫格下料点数量"), 0); - //workShop3Plc.writeStringByAddress(StaticData.GetPlcAddress("3#四宫格下料点机台号"), "", 10); - //workShop3Plc.writeStringByAddress(StaticData.GetPlcAddress("3#四宫格下料点RFID号"), "", 20); - //解锁起始库位 - WcsBaseEquip? baseEquip = sqlSugarClient.Queryable().First(t => t.AgvPositionCode == task.EndPointNo); - if (baseEquip != null) + sqlSugarClient.AsTenant().BeginTran(); + try { - sqlSugarClient.AsTenant().BeginTran(); - try + task.TaskStatus = 3; + if (wcsTaskLog != null) { - baseEquip.EquipStatus = 0; - task.TaskStatus = 3; - if (wcsTaskLog != null) - { - wcsTaskLog.TaskStatus = task.TaskStatus; - } - sqlSugarClient.Updateable(baseEquip).ExecuteCommand(); - sqlSugarClient.Updateable(task).ExecuteCommand(); - sqlSugarClient.Updateable(wcsTaskLog).ExecuteCommand(); - sqlSugarClient.AsTenant().CommitTran(); - } - catch (Exception ex) - { - sqlSugarClient.AsTenant().RollbackTran(); - _logger.Error("SupplyEmptyPalletTaskHandlerAsync提交事务异常:" + ex.Message); + wcsTaskLog.TaskStatus = task.TaskStatus; } + sqlSugarClient.Updateable(task).ExecuteCommand(); + sqlSugarClient.Updateable(wcsTaskLog).ExecuteCommand(); + sqlSugarClient.AsTenant().CommitTran(); + //从下料点直接取,清空RFID及机台号,条码等信息--ok + workShop3Plc.writeBoolByAddress(StaticData.GetPlcAddress("3#大料箱agv已取走反馈"), true); + } + catch (Exception ex) + { + sqlSugarClient.AsTenant().RollbackTran(); + _logger.Error("SupplyEmptyPalletTaskHandlerAsync提交事务异常:" + ex.Message); } } else if (task.TaskStatus == 4) diff --git a/SlnMesnac.WCS/WCS/CreateTaskByRecord.cs b/SlnMesnac.WCS/WCS/CreateTaskByRecord.cs index b69ab8c..ec49628 100644 --- a/SlnMesnac.WCS/WCS/CreateTaskByRecord.cs +++ b/SlnMesnac.WCS/WCS/CreateTaskByRecord.cs @@ -70,25 +70,25 @@ namespace SlnMesnac.WCS.WCS #region 3#车间补四宫格空箱流程---监听3#1号光电状态 - //bool signal1 = workShop3Plc.readBoolByAddress(StaticData.GetPlcAddress("3#大料箱进料为空")); - //if (signal1) - //{ - // CreateSupplementBigPalletTask(); - //} + bool signal1 = workShop3Plc.readBoolByAddress(StaticData.GetPlcAddress("3#大料箱进料为空")); + if (signal1) + { + CreateSupplementBigPalletTask(); + } #endregion 3#车间补四宫格空箱流程---监听3#1号光电状态 #region 从下料点到1-16机台送料任务--或者1-12移库任务 --监听3#2号光电状态 - //bool getBigFlag = workShop3Plc.readBoolByAddress(StaticData.GetPlcAddress("3#大料箱agv取料通知")); - //string machineCodeS = workShop3Plc.readInt16ByAddress(StaticData.GetPlcAddress("3#四宫格下料点机台号")).ToString(); - //string rfidS = workShop3Plc.readStringByAddress(StaticData.GetPlcAddress("3#四宫格下料点RFID号"), 12).Replace("\0", ""); - //int amount = workShop3Plc.readInt16ByAddress(StaticData.GetPlcAddress("3#四宫格下料点数量")); + bool getBigFlag = workShop3Plc.readBoolByAddress(StaticData.GetPlcAddress("3#大料箱agv取料通知")); + string machineCodeS = workShop3Plc.readInt16ByAddress(StaticData.GetPlcAddress("3#四宫格下料点机台号")).ToString(); + string rfidS = workShop3Plc.readStringByAddress(StaticData.GetPlcAddress("3#四宫格下料点RFID号"), 12).Replace("\0", ""); + int amount = workShop3Plc.readInt16ByAddress(StaticData.GetPlcAddress("3#四宫格下料点数量")); - //if (getBigFlag && machineCodeS != "0" && rfidS.Contains("SH")) - //{ - // CreatDeliverWorkShop3Task(machineCodeS, rfidS, amount); - //} + if (getBigFlag && machineCodeS != "0" && rfidS.Contains("SH")) + { + CreatDeliverWorkShop3Task(machineCodeS, rfidS, amount); + } #endregion 从下料点到1-16机台送料任务--或者1-12移库任务 --监听3#2号光电状态 @@ -393,7 +393,7 @@ namespace SlnMesnac.WCS.WCS { string sql = "SELECT wbl.* FROM wms_base_location wbl join wms_pallet_info wpi on wbl.container_code = wpi.pallet_info_code where wbl.container_code is not null and wbl.container_code!='' and wbl.location_status=0 and wbl.machineid<=12 and wpi.amount=0"; - List emptyLocations = sqlSugarClient.Ado.SqlQuery(sql).OrderByDescending(x => x.MachineId).ToList(); + List emptyLocations = sqlSugarClient.Ado.SqlQuery(sql).OrderBy(x => x.MachineId).ToList(); if (emptyLocations.Count == 0) { _logger.Info("暂时没有可用空托盘库位"); @@ -902,7 +902,7 @@ namespace SlnMesnac.WCS.WCS bool hasMoveTask = sqlSugarClient.Queryable().Any(it => it.TaskType == StaticTaskType.MoveLocationTask && it.TaskStatus < 3); if (hasMoveTask) { - _logger.Error($"目标库位无空位置,正在执行移库任务,暂时不生成送料任务,请等待...."); + _logger.Info($"目标库位无空位置,正在执行移库任务,暂时不生成送料任务,请等待...."); return null; }