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); } }