/// <summary> /// 手工删除标签号码。 /// </summary> /// <param name="code">标签号码</param> private void DeleteLabelByHand(string code) { // 删除号码。 var lc = LableCode.QueryByLCode(code); if (lc == null) { CommonHelper.Warn("不存在这个号码!"); return; } var area = lc.ParseLocationArea(); var bAndOnBoard = (area == "B" && lc.Status >= (int)LableState.OnPanel); var aCarea = (area == "A" || area == "C"); if (!bAndOnBoard && !aCarea) { CommonHelper.Warn("只能删除B区已上垛的号码, 或者A区、C区的号码!"); return; } if (LableCode.Delete(code) || deleteFromTaskq(FrmMain.taskQ, code)) { notifyOpc(code); lbxLog.Items.Insert(0, $"{lbxLog.Items.Count} {code}已经删除。"); FrmMain.logOpt.Write(string.Format("删除标签{0}成功", code), LogType.NORMAL); } else { FrmMain.logOpt.Write(string.Format("删除标签{0}失败", code), LogType.NORMAL); } }
public void DeleteCodeFromQueAndDb(string code) { lock (TaskQueues.LOCK_LOCHELPER) { deleteFromTaskq(FrmMain.taskQ, code); } log($"号码{code}已从队列中删除"); var label = LableCode.QueryByLCode(code); if (label != null) { label.Remark += ";delete"; // 只有没计算过位置的布卷才可以从数据库中删除。 if (string.IsNullOrEmpty(label.PanelNo) || label.FloorIndex == 0) { LableCode.Delete(label.LCode); LableCode.SaveToHistory(label); log($"号码{label.LCode}已经从数据库中删除"); } else { log($"号码{label.LCode}不能从数据库删除,板号: {label.PanelNo}, 层位置: {label.FloorIndex}"); } // tell plc. notifyOpc(label.LCode); } else { var msg = $"数据库中没有这个号码: {code}"; log(msg); } }