/// <summary> /// 扣料api /// </summary> /// <param name="_hv"></param> /// <param name="_plcSN">产品sn</param> /// <param name="_equipmentNO">设备id</param> /// <param name="palCode">栈位号</param> /// <param name="buckNO">扣料数量,空表示按系统标量扣</param> private void BuckleMaterialIn(ushort _hv, string _plcSN, string _equipmentNO, string palCode, string buckNO) { try { DM_Bucklematerial BucMat = new DM_Bucklematerial(); string retMsg = BucMat.BuckleMaterialIn(_plcSN, _equipmentNO, palCode, buckNO); log.Info(_hv + "---Buckle material success. success<" + retMsg + "---SN:" + _plcSN + "---EquipmentNO:" + _equipmentNO + "---PalCode:" + palCode + "---BuckNO:" + buckNO + ">"); } catch (Exception e) { log.Info(_hv + "---Buckle material fail. error<" + e.Message + ">"); } }
/// <summary> /// 上瓶机位业务逻辑处理:3-称重校验;4-是否继续上瓶判断 /// </summary> /// <param name="sN"></param> private void SpDeviceProcess(MesSession _session, TransmitData _transData) { //3-称重校验 bool weightIsOK = CheckWeight(_transData.SN, _transData.Items["aWeight"]); if (weightIsOK) { _transData.CheckResult = CheckResult.OK.ToString(); //4-是否继续上瓶判断 bool isContinue = IsContinue(_transData.WO); _transData.Items.Add("continue", isContinue.ToString()); //5-处理完成,过站 DM_SFCInterface DM_SFC = new DM_SFCInterface(); DataTable dt = DM_SFC.SFC_DM_CheckRoute(_transData.SN, _transData.EquipmentID, _transData.WO, "PASS");//FAIL string CheckStatus = dt.Rows[0][0].ToString().ToString(); string ReturnMsg = dt.Rows[0][1].ToString().ToString(); if (CheckStatus == "1") //过站成功,开始扣料 { DM_Bucklematerial bucklematerial = new DM_Bucklematerial(); bucklematerial.BuckleMaterialIn(_transData.SN, "ASM", _transData.EquipmentID + "-01"); } else { _transData.CheckResult = "ERROR"; _transData.Description = ReturnMsg; } } else { _transData.CheckResult = "NG"; _transData.Description = "error---query fail,please check SN."; } string sendTransData = JsonHelper.SerializeObject(_transData); _session.Send(sendTransData); _session.Logger.Info(_transData.CheckResult + "---" + _transData.Description); }