139 lines
4.7 KiB
C#
139 lines
4.7 KiB
C#
using MesWorkMqtt;
|
|
using MQTTnet.Client.Connecting;
|
|
using MQTTnet.Client.Disconnecting;
|
|
using MQTTnet.Client.Receiving;
|
|
|
|
using bizFacade;
|
|
using MesWorkMqtt;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Configuration;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
using MQTTnet;
|
|
using System.Threading;
|
|
using DoWhatPlc;
|
|
using MesServerWork;
|
|
|
|
namespace SyUpLoad
|
|
{
|
|
public partial class PartLoad
|
|
{
|
|
private void fun_EngineTypeGetOver_PLC3(object e)
|
|
{
|
|
DoWhatPlc.CustomeEvetnArgs msgEvent = (DoWhatPlc.CustomeEvetnArgs)e;
|
|
string OpName = Convert.ToString(msgEvent.OpName);
|
|
int tagValue = Convert.ToInt32(msgEvent.TagValue);
|
|
|
|
SetChekcBox(tagValue, checkBox_PlcEngineTypeGetOver3);
|
|
try
|
|
{
|
|
if (tagValue == 1)
|
|
{
|
|
int EngineTypeID;//机型代码
|
|
int PartPallet_Code;//托盘编号
|
|
string EngineType;//机型
|
|
string EngineID;//工件编号
|
|
//GetUpLoadWarehouseNoOpName02(string opName, string EngineIDType, out DataTable dt)
|
|
|
|
|
|
MIS_BASE.GetEngineTypeFromPLC(OPName02, out EngineTypeID, out EngineType, out EngineID, out PartPallet_Code);
|
|
|
|
|
|
|
|
SetTextBox(EngineType, textBox_PlcType3);
|
|
SetTextBox(EngineID, textBox_PlcEngineID3);
|
|
|
|
DataTable dt;
|
|
BaseDataSystemMES.GetUpLoadWarehouseNoOpName02(OPName02, EngineType, out dt);
|
|
if (dt.Rows.Count < 1)
|
|
{
|
|
|
|
button_ManualPartLoad.Invoke(new Action(() => {
|
|
button_ManualPartLoad.Enabled = true;
|
|
}));
|
|
MessageBox.Show("下线库存无匹配的工件!");
|
|
return;
|
|
}
|
|
int engineTypeID_MES = Convert.ToInt32(dt.Rows[0]["机型代码"]);
|
|
string engineID_MES = dt.Rows[0]["发动机号"].ToString();
|
|
string engineType_MES = dt.Rows[0]["发动机型号"].ToString();
|
|
byte kuweiNum_MES = Convert.ToByte(dt.Rows[0]["库位号"]);
|
|
DtWebApi.ReadWritePLC.WritePLC(warehouseLocation.ToString(), OpName, kuweiNum_MES);
|
|
|
|
|
|
MIS_BASE.Write_FixAllow(OpName, true);
|
|
|
|
// EngineTypeGetOver_PLC_Work(OpName, EngineTypeID, EngineType, EngineID, PartPallet_Code);
|
|
}
|
|
else
|
|
{
|
|
MIS_BASE.Write_FixAllow(OpName, false);
|
|
|
|
}
|
|
|
|
}
|
|
catch (Exception err)
|
|
{
|
|
////ApplicationLog.WriteLog(err, "Function03:EngineTypeGetOver_PLC");
|
|
}
|
|
}
|
|
|
|
private void fun_MesRead3(object e)
|
|
{
|
|
DoWhatPlc.CustomeEvetnArgs msgEvent = (DoWhatPlc.CustomeEvetnArgs)e;
|
|
string OpName = Convert.ToString(msgEvent.OpName);
|
|
int tagValue = Convert.ToInt32(msgEvent.TagValue);
|
|
//var cb = button_ManualPartLoad;
|
|
//cb.Invoke(new Action(() => {
|
|
// if (tagValue == 1)
|
|
// {
|
|
// cb.Enabled = false;
|
|
// }
|
|
// else
|
|
// {
|
|
// cb.Enabled = true;
|
|
// }
|
|
//}));
|
|
SetChekcBox(tagValue, checkBox_MesRead3);
|
|
|
|
if (tagValue == 1)
|
|
{
|
|
|
|
//保存库数据
|
|
int EngineTypeID;//机型代码
|
|
int PartPallet_Code;//托盘编号
|
|
string EngineType;//机型
|
|
string EngineID;//工件编号
|
|
|
|
MIS_BASE.GetEngineTypeFromPLC(OpName, out EngineTypeID, out EngineType, out EngineID, out PartPallet_Code);
|
|
object kuweiNum;
|
|
kuweiNum = DtWebApi.ReadWritePLC.ReadPLC(warehouseLocation.ToString(), OpName);
|
|
|
|
//1转移数据到总线
|
|
|
|
//2转移数据到总线
|
|
BaseDataSystemMES.GetUpLoadBarCode_0utUpdate(OPName02, kuweiNum.ToString());
|
|
BaseDataSystemMES.GetUpLoadBarCode(OPName02, out DataTable dt_OPName02);
|
|
|
|
|
|
dataGridView_OPA1002.Invoke(new Action(() => {
|
|
dataGridView_OPA1002.DataSource = dt_OPName02;
|
|
}));
|
|
|
|
MIS_BASE.Write_MesReadOver(OpName, true);
|
|
}
|
|
else
|
|
{
|
|
MIS_BASE.Write_MesReadOver(OpName, false);
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|