using MesServerWork; using MisDataFunDll; using System; using WebApi; namespace MesServerFunctions { partial class FunctionMES { /// /// 上空托盘操作 /// /// private void LoadEmptyTray(object e) { try { DeviceDriver_BasicData.CustomeEvetnArgs msgEvent = (DeviceDriver_BasicData.CustomeEvetnArgs)e; string OpName = Convert.ToString(msgEvent.OpName); int tagValue = Convert.ToInt32(msgEvent.TagValue); string msg; if (tagValue == 1) { // 记录上空托盘请求状态 MisDataFun.Location_MIS_MOBY_Insert(OpName, "LoadEmptyTray", "1"); MisDataFun.Location_MIS_MOBY_Insert(OpName, "配送类型", "6"); // 调用上空托盘接口 // deliveryType: 1退托盘,2叫料,3送料,4转序,5下空,6上空,7点对点 bool isOk = CALL_Inerface_DataHandle.CALL_Inerface_CallMaterial(OpName, "6"); if (isOk) { msg = $"【{OpName}】上空托盘操作成功"; MIS_BASE.WritePLC(306, OpName, 1); // 任务状态反馈 } else { msg = $"【{OpName}】上空托盘操作失败"; MIS_BASE.WritePLC(306, OpName, 2); // 任务状态反馈 } SendMessage.AsyncSendMessage_Notice(OpName, msg); MyLog4Net.MyLogHelper.Info("LoadEmptyTray", msg); } else { MisDataFun.Location_MIS_MOBY_Insert(OpName, "LoadEmptyTray", "0"); MIS_BASE.WritePLC(301, OpName, false); // 请求进入 MIS_BASE.WritePLC(302, OpName, false); // 托盘到位 MIS_BASE.WritePLC(303, OpName, false); // AGV已离开 MIS_BASE.WritePLC(305, OpName, "0"); // 比对结果 MIS_BASE.WritePLC(304, OpName, false); // 比对完成 MIS_BASE.WritePLC(306, OpName, 0); // 任务状态反馈 } } catch (Exception err) { MisDataSaveDate.FuntionMesRead.Alarm_SaveFileLog4Error(System.Reflection.MethodBase.GetCurrentMethod().Name, e, "Fun1054", err); } } } }