using System;
using System.Data;
using bizFacade;
using MesServerWork;
//using SystemFramework;
namespace MesServerFunctions
{
partial class FunctionMES
{
object lockBarcodeEngineTypeGetOver = new object();
///
/// PLC传递机型处理
///
///
///
private void EngineTypeGetOver_PLC(object e)
{
lock(lockBarcodeEngineTypeGetOver)
{
try
{
DoWhatPlc.CustomeEvetnArgs msgEvent = (DoWhatPlc.CustomeEvetnArgs)e;
string OpName = Convert.ToString(msgEvent.OpName);
string OpName_mes = OpName+"_mes";
int tagValue = Convert.ToInt32(msgEvent.TagValue);
//判断PLC机型与MES机型是否一致
if (tagValue == 1)
{
bool MesRead = false;
int EngineTypeID;//机型代码
int PartPallet_Code;//托盘编号
string EngineType;//机型
string EngineID;//工件编号
int EngineTypeID_MES;//机型代码
string EngineType_MES;//机型
string EngineID_MES;//工件编号
//上线工位清MES传递机型信号
////MIS_BASE.Write_EngineTypeGetOver_MES(OpName, false);
//MIS_BASE.Read_QualityData_Read_CF(OpName, out MesRead);
//第一步,判断允许保存和保存完成信号是否全部被清空,若未清空,则通知复位MES&PLC
//if (MesRead)
//{
// //未能清空信号,请求复位
// SendMessageFun.SendInfomation("AskReset", "1", OpName);
// return;
//}
string OrderForm;
string OrderForm_MES;
MIS_BASE.GetEngineTypeFromPLC(OpName, out EngineTypeID, out EngineType, out EngineID, out PartPallet_Code, out OrderForm);
//MIS_BASE.GetEngineTypeFromPLC_MES(OpName, out EngineTypeID_MES, out EngineType_MES, out EngineID_MES, out OrderForm_MES);
// 测试的时候用的 plc读取订单号有问题
// OrderForm = BaseDataSystemMES.GetOrderDataBySn(EngineID);
//显示当前订单信息
BaseDataSystemMES.OpName_MIS_MOBY_Insert(OpName, MobyTagType.EngineTypeID, EngineTypeID.ToString());
// 写入工位工作状态 0 无工件(工件到位0) 1 工件到位(工件到位1) 2 工作中(传递机型1) 3 工作完成(允许保存1)
BaseDataSystemMES.OpName_MIS_MOBY_Insert(OpName, MobyTagType.EngineWorkType, "2");
BaseDataSystemMES.OpName_MIS_MOBY_Insert(OpName, MobyTagType.EngineID, EngineID);
EngineTypeGetOver_PLC_Work(OpName, EngineTypeID, EngineType, EngineID, PartPallet_Code, OrderForm);
//SendMessage.ShowMoby(OpName);
}
else
{
MIS_BASE.Write_FixAllow(OpName_mes, false);
}
}
catch (Exception err)
{
////ApplicationLog.WriteLog(err, "Function08:EngineTypeGetOver_PLC");
}
}
}
}
}