Files
XingCheng3 dff0156cdd MVP!
2026-05-26 09:41:24 +08:00

74 lines
3.0 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using System;
using System.Data;
using MesServerWork;
using MisDataFunDll;
namespace MesServerFunctions
{
partial class FunctionMES
{
/// <summary>
/// PLC传递机型处理
/// </summary>
/// <param name="OpName"></param>
/// <param name="tagValue"></param>
private void EngineTypeGetOver_PLC(object e)
{
try
{
var msgEvent = (DeviceDriver_BasicData.CustomeEvetnArgs)e;
string OpName = Convert.ToString(msgEvent.OpName);
int tagValue = Convert.ToInt32(msgEvent.TagValue);
//判断PLC机型与MES机型是否一致
if (tagValue == 1)
{
MisDataFun.LogRecording_OP(OpName, "INFO", "MIS", "PLC传递机型");
MIS_BASE.Write_TagValueByTagTypeID(34, OpName, false); // 复位报警MES
// 1.读取来件信息,有可能来一个件 有可能同时来两个件,来空托盘不交互
string part1;
string part2;
MIS_BASE.Read_TagValueByTagTypeID(203, OpName, out part1);
MIS_BASE.Read_TagValueByTagTypeID(204, OpName, out part2);
// 2.判断PLC工件是否写入
if ((part2 == "" && part1 == "") || (part2 == null && part1 == null) || (part2.Length < 5 && part1.Length < 5))
{
//不允许工作
MIS_BASE.Write_FixAllow(OpName, false);
// MES报警
MIS_BASE.Write_TagValueByTagTypeID(34, OpName, true);
string msg = "【" + OpName + "】" + "PLC两个产品信息为空part1" + part1 + "part2" + part2;
SendMessage.AsyncSendMessage_Notice(OpName, msg);
MisDataFun.LogRecording_OP(OpName, "ERROR", "EngineTypeGetOver", msg);
return;
}
// 3.记录工件的进站数据
if (part1 != null && part1 != "" && part1.Length > 5)
{
MisDataFun.OpName_MIS_MOBY_Insert_JZ(OpName, part1);
}
if (part2 != null && part2 != "" && part2.Length > 5)
{
MisDataFun.OpName_MIS_MOBY_Insert_JZ(OpName, part2);
}
MIS_BASE.Write_FixAllow(OpName, true); // 允许PLC工作MES
}
else
{
MisDataFun.LogRecording_OP(OpName, "INFO", "MIS", "PLC传递机型取消");
MIS_BASE.Write_FixAllow(OpName, false); // 允许PLC拧紧工作MES
}
}
catch (Exception err)
{
////ApplicationLog.WriteLog(err, "Function08:EngineTypeGetOver_PLC");
}
}
}
}