using System; using bizFacade; //using SystemFramework; using MesServerWork; namespace MesServerFunctions { partial class Functions_BASE_22 { /// ///1.扫描配送单号,用于接收物料,扫描单号的时候,将接收的物料信息显示在“物料拉动”Tab区域 ///2.扫描料箱标签/看板卡,用于追溯物料批次信息 ///3.扫描零件条码,根据零件图号进行防错 ///第一步,判断条码类型,根据条码类型,执行对应的存储过程 ///第二步,条码类型(将扫描的条码保存到对应的表中) ///第三步,扫描完成之后给出允许工作信号 /// 处理页面扫描条码 /// /// /// public void Barcode(object e) { MIS_BASE.Barcode(e); //try //{ // DoWhatPlc.CustomeEvetnArgs msgEvent = (DoWhatPlc.CustomeEvetnArgs)e; // string OpName = Convert.ToString(msgEvent.OpName); // string barcode = Convert.ToString(msgEvent.TagValue); // string AlarmStr = ""; // int IsAllowWork; // int IsSuccess = 0; // bool EngineGetOver_PLC_NextWorkStep; // //传递机型是否到位 // MIS_BASE.Read_EngineGetOver_PLC(OpName, out EngineGetOver_PLC_NextWorkStep); // BaseDataSystemMES.PartMaterial_DM_Update(OpName, barcode, out IsSuccess); // if (IsSuccess == 0) // { // AsyncSendMessage_Notice(OpName,"条码无效,请确认"); // return; // } // else // { // SendInfomation("MaterialList", "1", OpName);//通知界面更新零件信息 // } // //获取是否允许工作 // BaseDataSystemMES.MesServer_Judge_IsCanWork(OpName, out IsAllowWork); // //此处逻辑有问题 需要考虑到批次扫描 提示PLC未传递机型的情况 // if (EngineGetOver_PLC_NextWorkStep && IsSuccess == 1) // { // if (IsAllowWork == 1) // { // //if (!BaseDataSystemMES.QualityVerifyStatusOutline(OpName, out AlarmStr)) // //{ // // SendInfomation("LineoutAlert", AlarmStr, OpName); // // return; // //} // //通知PLC允许工作,允许工作在保存完成时清空 // MIS_BASE.Write_FixAllow(OpName, true); // } // else // { // AsyncSendMessage_Notice(OpName, "请扫描物料!"); // } // } // else // { // AsyncSendMessage_Notice(OpName, "PLC未传递机型"); // } //} //catch (Exception err) //{ // //ApplicationLog.WriteLog(err, "Function02:Barcode"); //} } } }