Files
2026-05-29 13:57:19 +08:00

89 lines
4.1 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 bizFacade;
//using SystemFramework;
using MesServerWork;
namespace MesServerFunctions
{
partial class FunctionMES
{
object lockMesRead = new object ();
/// <summary>
/// 保存完成(针对半自动和手动压装工位)
/// </summary>
/// <param name="OpName"></param>
/// <param name="tagValue"></param>
private void MesRead(object e)
{
lock(lockMesRead)
{
try
{
int EngineTypeID;
string EngineType;
string EngineID;
int PartPallet_Code;
string OrderForm;
{
DoWhatPlc.CustomeEvetnArgs msgEvent = (DoWhatPlc.CustomeEvetnArgs)e;
string OpName = Convert.ToString(msgEvent.OpName);
string OpName_mes = Convert.ToString(msgEvent.OpName) + "_mes";
int tagValue = Convert.ToInt32(msgEvent.TagValue);
if (tagValue == 1)
{
//保存数据到线首表 先保存到 北汽福田变速器序列号总线上线 用于之前判断是否重号
if (Db.UpLoadOpNameInsert(OpName))
{
// 读取配方号
MIS_BASE.Read_EngineTypeID(OpName, out EngineTypeID);
// 保存质量数据
int qualityMask = Funtion.MesRead_538(OpName, tagValue.ToString(), msgEvent.TagID.ToString(), EngineTypeID.ToString());
// 推送质量数据到MES的页面
MIS_BASE.SendInfomation("ShowTimelyQuality", "1&" + qualityMask.ToString(), OpName);
// 测量数据发动机在线状态 保存过站信息
BaseDataSystemMES.WorkStartInsert(OpName, qualityMask);
// 将数据存到上传接口表里 准备被读取上传
//BaseDataSystemMES.MES_SaveQualityData_TO_UpLoadTable(OpName);
// 读取一下是否有允许保存信号,若没有允许保存信号那就不能给保存完成,不然后续流程会乱
MIS_BASE.Read_QualityData_Read_CF(OpName, out bool isRead_CF);
if (isRead_CF)
{
//通知设备MES的质量数据和物料数据保存完成
MIS_BASE.Write_MesReadOver(OpName, true);
}
BaseDataSystemMES.OpName_MIS_MOBY_Insert(OpName, MobyTagType.WorkStartOut, DateTime.Now.ToString());
// 写入工位工作状态 0 无工件(工件到位0) 1 工件到位(工件到位1) 2 工作中(传递机型1) 3 工作完成(允许保存1)
BaseDataSystemMES.OpName_MIS_MOBY_Insert(OpName, MobyTagType.EngineWorkType, "3");
}
else
{
SendMessage.AsyncSendMessage_Notice(OpName, "保存上线数据失败!");
}
}
else
{
MIS_BASE.Write_MesReadOver(OpName, false);
// 写入工位工作状态 0 无工件(工件到位0) 1 工件到位(工件到位1) 2 工作中(传递机型1) 3 工作完成(允许保存1)
BaseDataSystemMES.OpName_MIS_MOBY_Insert(OpName, MobyTagType.EngineWorkType, "0");
}
}
}
catch (Exception err)
{
////ApplicationLog.WriteLog(err, "Function08:MesReadOver");
}
}
}
}
}