void CarServer_OnDataChanged(object sender, DataChangedEventArgs e) { try { if (e.State == null) { return; } PLC plc = new PLC(); string txt = e.ItemName.Split('_')[0]; plc.ID = txt; plc.PicName = "picCar"; if (e.ItemName.IndexOf("TaskNo") >= 0) { plc.Text = Util.ConvertStringChar.BytesToString(e.States); plc.TextName = "txtCarTaskNo"; } else if (e.ItemName.IndexOf("PalletCode") >= 0) { plc.Text = Util.ConvertStringChar.BytesToString(e.States); plc.TextName = "txtPalletCode"; } else if (e.ItemName.IndexOf("HasProduct") >= 0) //图片 { if ((bool)e.State) { plc.ShowPic = "1"; } } else { string strErrorNo = Util.ConvertStringChar.BytesToString(e.States); if (strErrorNo != "0" && strErrorNo != "32" && strErrorNo.Length != 0) { plc.Text = dicCarError[strErrorNo]; plc.TextName = "txtCarErrorDesc"; plc.IsErr = "1"; plc.ErrCode = strErrorNo; plc.ShowPic = "1"; } else { plc.Text = ""; plc.IsErr = "0"; plc.TextName = "txtCarErrorDesc"; } } PLCS.PLCInfo(plc); } catch (Exception ex) { MCP.Logger.Error("监控界面中CarServer_OnDataChanged出现异常" + ex.Message); } }
void CraneServer_OnDataChanged(object sender, DataChangedEventArgs e) { try { if (e.State == null) { return; } PLC plc = new PLC(); string[] txt = e.ItemName.Split('_'); plc.ID = txt[0]; plc.PicName = "picCrane"; plc.ShowPic = "1"; plc.TextName = "txt" + txt[1]; if (e.ItemName.IndexOf("TaskNo") >= 0) { string TaskNo = Util.ConvertStringChar.BytesToString(e.States); plc.Text = TaskNo; plc.TaskType = ""; plc.TextTypeName = "txtTaskType"; if (TaskNo.Length > 0) { DataTable dtTask = bll.FillDataTable("WCS.SelectWCSTask", new DataParameter[] { new DataParameter("{0}", string.Format("TASKID='{0}'", TaskNo)) }); if (dtTask.Rows.Count > 0) { if (dtTask.Rows[0]["TASKTYPE"].ToString() == "IB") { plc.TaskType = "入库"; } else { plc.TaskType = "出库"; } } } } else if (e.ItemName.IndexOf("PalletCode") >= 0) { plc.Text = Util.ConvertStringChar.BytesToString(e.States); } else if (e.ItemName.IndexOf("CraneAction") >= 0) { int Action = int.Parse(ObjectUtil.GetObject(e.States).ToString()); plc.Text = dicCraneAction[Action]; } else if (e.ItemName.IndexOf("Column") >= 0) { string Ocolumn = ObjectUtil.GetObject(e.States).ToString(); plc.Text = Ocolumn; Crane crane = new Crane(); crane.CraneNo = int.Parse(txt[0]); int column = 0; if (Ocolumn != "") { column = int.Parse(Ocolumn); } crane.Column = column; Cranes.CraneInfo(crane); } else if (e.ItemName.IndexOf("Row") >= 0) { int Row = int.Parse(ObjectUtil.GetObject(e.States).ToString()); if (Row >= 2) { Row = Row - 1; } plc.Text = Row.ToString(); } else { string strErrorNo = ObjectUtil.GetObject(e.States).ToString(); if (strErrorNo != "0") { DataRow[] drs = dtCraneError.Select(string.Format("warncode='{0}'", strErrorNo)); if (drs.Length > 0) { plc.Text = drs[0]["WARNDESC"].ToString(); } else { plc.Text = "未知错误!"; } plc.TextName = "txtErrorDesc"; plc.IsErr = "1"; plc.ErrCode = strErrorNo; plc.TextErrName = "txtErrorNo"; } else { plc.Text = ""; plc.TextName = "txtErrorDesc"; plc.IsErr = "0"; plc.ErrCode = strErrorNo; plc.TextErrName = "txtErrorNo"; } } PLCS.PLCInfo(plc); } catch (Exception ex) { MCP.Logger.Error("监控界面CraneServer_OnDataChanged中出现异常" + ex.Message); } }