chore: 初始化北汽福田MES采集程序
This commit is contained in:
@@ -0,0 +1,129 @@
|
||||
using System;
|
||||
using System.CodeDom;
|
||||
using System.Data;
|
||||
using System.Windows.Forms;
|
||||
using System.Xml.Linq;
|
||||
using bizFacade;
|
||||
//using SystemFramework;
|
||||
using MesServerWork;
|
||||
|
||||
namespace MesServerFunctions
|
||||
{
|
||||
partial class FunctionMES
|
||||
{
|
||||
/// <summary>
|
||||
/// PLC传递机型处理
|
||||
/// </summary>
|
||||
/// <param name="OpName"></param>
|
||||
/// <param name="tagValue"></param>
|
||||
private void EngineTypeGetOver_PLC(object e)
|
||||
{
|
||||
|
||||
{
|
||||
try
|
||||
{
|
||||
DoWhatPlc.CustomeEvetnArgs msgEvent = (DoWhatPlc.CustomeEvetnArgs)e;
|
||||
string OpName = Convert.ToString(msgEvent.OpName);
|
||||
int tagValue = Convert.ToInt32(msgEvent.TagValue);
|
||||
|
||||
if (tagValue == 1)
|
||||
{
|
||||
int EngineTypeID;//机型代码
|
||||
int PartPallet_Code;//托盘编号
|
||||
|
||||
string EngineType;//机型
|
||||
string EngineID;//工件编号
|
||||
string OrderForm;
|
||||
|
||||
// 判断是否存在异常导致不允许工作 输出msg到前端
|
||||
DataTable OpNameIsWorkDt = BaseDataSystemMES.OpNameIsAllowWork(OpName);
|
||||
if(OpNameIsWorkDt.Rows.Count > 0)
|
||||
{
|
||||
if (Convert.ToInt32(OpNameIsWorkDt.Rows[0]["提示类型"]) == 3)
|
||||
{
|
||||
SendMessageFun.SendInfomation("ShowTipBox", OpNameIsWorkDt.Rows[0]["提示文本"].ToString(), OpName);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
MIS_BASE.GetEngineTypeFromPLC(OpName, out EngineTypeID, out EngineType, out EngineID, out PartPallet_Code, out OrderForm);
|
||||
|
||||
if (EngineTypeID <= 0 || EngineID.Length == 0 || EngineType.Length == 0 || OrderForm.Length == 0)
|
||||
{
|
||||
SendMessageFun.AsyncSendMessage_Notice(OpName, "PLC传递机型为空");
|
||||
return;
|
||||
}
|
||||
|
||||
BaseDataSystemMES.OpName_MIS_MOBY_Insert(OpName, MobyTagType.EngineTypeID, EngineTypeID.ToString());
|
||||
BaseDataSystemMES.OpName_MIS_MOBY_Insert(OpName, MobyTagType.EngineType, EngineType);
|
||||
BaseDataSystemMES.OpName_MIS_MOBY_Insert(OpName, MobyTagType.EngineID, EngineID);
|
||||
BaseDataSystemMES.OpName_MIS_MOBY_Insert(OpName, MobyTagType.OrderForm, OrderForm);
|
||||
BaseDataSystemMES.OpName_MIS_MOBY_Insert(OpName, MobyTagType.PartPallet_Code, PartPallet_Code.ToString());
|
||||
|
||||
// 判断是否返修件 是否需要继续工作
|
||||
int isBackWork = 0;
|
||||
DataTable backWorkDt = BaseDataSystemMES.Get_IsBackWork(OpName, EngineID);
|
||||
if (backWorkDt.Rows[0]["result"].ToString() == "1")
|
||||
{
|
||||
// 写返修点并且退出方法
|
||||
MIS_BASE.WritePLC(33, OpName, true);
|
||||
string message = "MES|ShowTipBox|" + OpName + "|该工件为返工工件!";
|
||||
SendMessage.AsyncSendMessage(message);
|
||||
if(OpName != "J07ET040")
|
||||
{
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
// 设置一个标识点表示这个是ET040 返修件
|
||||
isBackWork = 1;
|
||||
}
|
||||
}
|
||||
|
||||
if(OpName == "J07ET060")
|
||||
{
|
||||
DataTable ET060BackWorkDt = BaseDataSystemMES.Get_IsET060BackWork(EngineID);
|
||||
if (backWorkDt.Rows[0]["result"].ToString() == "1")
|
||||
{
|
||||
// 写返修点并且退出方法
|
||||
MIS_BASE.WritePLC(33, OpName, true);
|
||||
string message = "MES|ShowTipBox|" + OpName + "|该工件为返工工件!";
|
||||
SendMessage.AsyncSendMessage(message);
|
||||
}
|
||||
}
|
||||
|
||||
//显示当前订单信息
|
||||
//SendMessage.ShowMoby(OpName);
|
||||
// ET030 无屏幕 不判断是否重复工作过
|
||||
|
||||
//判断该订单数据是否已经工作过,有的话则在WEB跳出弹窗选择 并同时禁止工作
|
||||
DataTable dt2 = BaseDataSystemMES.EngineIsTwoWork(OpName, OrderForm, EngineID);
|
||||
if (dt2.Rows[0]["result"].ToString() == "1" && isBackWork == 0) //已完成
|
||||
{
|
||||
//不允许工作
|
||||
MIS_BASE.Write_FixAllow(OpName, false);
|
||||
//通知WEB校验重新工作还是跳过 点重新工作给允许工作,点跳过给工作完成
|
||||
string message = "MES|Engine_Is_TwoWork|" + OpName + "|1";
|
||||
SendMessage.AsyncSendMessage(message);
|
||||
}
|
||||
else
|
||||
{
|
||||
//正常传递机型流程
|
||||
EngineTypeGetOver_PLC_Work(OpName, EngineTypeID, EngineType, EngineID, PartPallet_Code, OrderForm);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
// 保存出错日志 1.申请上线 2.传递机型 3.允许保存 4.扫码
|
||||
MisDataSaveDate.FuntionMesRead.Alarm_SaveFileLog4Error(2, e, "Fun1052", err);
|
||||
////ApplicationLog.WriteLog(err, "Function02:EngineTypeGetOver_PLC");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user