예제 #1
0
        private void InitEquipTree()
        {
            EquipTreeView.Nodes.Clear();
            //  T_PathIdentifyEquip[] rootEquips = Cache.PathIdEquips.Where(it => it.ParentId == -1).ToArray();
            foreach (T_PathIdentifyEquip equip in Cache.PathIdEquips)
            {
                TreeNode CurrentRootNode = new TreeNode(equip.EquipName);
                CurrentRootNode.ImageIndex = 2;
                CurrentRootNode.Tag        = equip;
                if (TreeNodeDict.Keys.Contains(equip.Id))
                {
                    TreeNodeDict[equip.Id] = CurrentRootNode;
                }
                else
                {
                    TreeNodeDict.Add(equip.Id, CurrentRootNode);
                }
                EquipTreeView.Nodes.Add(CurrentRootNode);
                T_PathIdentifyEquip[] childEquips = Cache.PathIdEquips.Where(it => it.ParentId == equip.Id).ToArray();
                foreach (T_PathIdentifyEquip ce in childEquips)
                {
                    TreeNode node = new TreeNode(ce.EquipName);
                    node.ImageIndex = 2;
                    node.Tag        = ce;

                    CurrentRootNode.Nodes.Add(node);
                    if (TreeNodeDict.Keys.Contains(ce.Id))
                    {
                        TreeNodeDict[ce.Id] = node;
                    }
                    else
                    {
                        TreeNodeDict.Add(ce.Id, node);
                    }
                }
            }
            EquipTreeView.ExpandAll();
        }
예제 #2
0
        private void EquipTreeContextMenuStrip_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            switch (e.ClickedItem.Name)
            {
            case "AddEquipToolStripMenuItem":
            {
                AddEquipForm form = new AddEquipForm();
                if (form.ShowDialog() == DialogResult.OK)
                {
                    InitEquipTree();
                }
            } break;

            case "ModifyEquipToolStripMenuItem":
            {
                if (EquipTreeView.SelectedNode != null && EquipTreeView.SelectedNode.Tag != null)
                {
                    T_PathIdentifyEquip equip = (T_PathIdentifyEquip)EquipTreeView.SelectedNode.Tag;
                    AddEquipForm        form  = new AddEquipForm(equip);
                    if (form.ShowDialog() == DialogResult.OK)
                    {
                        InitEquipTree();
                    }
                }
            } break;

            case "DelEquipToolStripMenuItem":
            {
                if (EquipTreeView.SelectedNode != null)
                {
                    if (EquipTreeView.SelectedNode.GetNodeCount(true) > 0)
                    {
                        if (MessageBox.Show("确定删除此节点设备及其下属所有设备?", "删除设备组", MessageBoxButtons.OKCancel
                                            , MessageBoxIcon.Question) == DialogResult.OK)
                        {
                            foreach (TreeNode node in EquipTreeView.SelectedNode.Nodes)
                            {
                                T_PathIdentifyEquip equip = (T_PathIdentifyEquip)node.Tag;
                                Cache.RemoveEquip(equip);
                                node.Remove();
                            }
                            T_PathIdentifyEquip selectedEquip = (T_PathIdentifyEquip)EquipTreeView.SelectedNode.Tag;
                            Cache.RemoveEquip(selectedEquip);
                            EquipTreeView.SelectedNode.Remove();
                        }
                    }
                    else
                    {
                        if (MessageBox.Show("确定删除此节点设备设备?", "删除设备", MessageBoxButtons.OKCancel
                                            , MessageBoxIcon.Question) == DialogResult.OK)
                        {
                            T_PathIdentifyEquip selectedEquip = (T_PathIdentifyEquip)EquipTreeView.SelectedNode.Tag;
                            Cache.RemoveEquip(selectedEquip);
                            EquipTreeView.SelectedNode.Remove();
                        }
                    }
                    InitEquipTree();
                }
            } break;

            case "ProofTimeToolStripMenuItem":
            {
                AppendText("设备校时开始");
                if (EquipTreeView.SelectedNode != null)
                {
                    T_PathIdentifyEquip selectedEquip = (T_PathIdentifyEquip)EquipTreeView.SelectedNode.Tag;
                    bool rel = DriverWrapper.ProofTime(selectedEquip.Id);
                    if (rel)
                    {
                        AppendText(string.Format("设备-{0}校时成功。", selectedEquip.EquipName));
                    }
                    else
                    {
                        AppendText(string.Format("设备-{0}校时失败。", selectedEquip.EquipName));
                    }
                }
                else
                {
                    AppendText("设备树上未选择有效的设备");
                }
                AppendText("设备校时结束");
            } break;

            case "RetransDataToolStripMenuItem":
            {
                AppendText("设置重传...");
                if (EquipTreeView.SelectedNode != null)
                {
                    T_PathIdentifyEquip selectedEquip = (T_PathIdentifyEquip)EquipTreeView.SelectedNode.Tag;
                    RetransDataForm     form          = new RetransDataForm();
                    if (form.ShowDialog() == DialogResult.OK)
                    {
                        bool rel = DriverWrapper.SetRetransData(selectedEquip.Id, form.StartTime, form.EndTime);
                        if (rel)
                        {
                            AppendText(string.Format("设备-{0}设置重传成功。StartTime:{1}-EndTime:{2}"
                                                     , selectedEquip.EquipName, form.StartTime, form.EndTime));
                        }
                        else
                        {
                            AppendText(string.Format("设备-{0}设置重传失败。StartTime:{1}-EndTime:{2}"
                                                     , selectedEquip.EquipName, form.StartTime, form.EndTime));
                        }
                    }
                    else
                    {
                        AppendText("设置重传取消");
                    }
                }
                else
                {
                    AppendText("设备树上未选择有效的设备");
                }
                AppendText("设置重传完成");
            } break;

            case "AllExpendToolStripMenuItem":
            {
                EquipTreeView.ExpandAll();
            } break;

            case "AllCollapseToolStripMenuItem":
            {
                EquipTreeView.CollapseAll();
            } break;
            }
        }