/// <summary> /// Добавить новый куст в месторождение /// </summary> /// <param name="project">Втавляемый проект</param> /// <param name="node">Узел в который вставлять</param> protected void InsertNewBushNode(Work work, TreeNode node) { try { TreeNode bushNode = new TreeNode(string.Format("Куст: {0}", work.Bush), 1, 1); TreeNode wellNode = new TreeNode(string.Format("Скважина: {0}", work.Well), 2, 2); TreeNode jobNode = new TreeNode(string.Format("Задание: {0}", work.Description), 3, 3); jobNode.Tag = work; wellNode.Nodes.Add(jobNode); bushNode.Nodes.Add(wellNode); node.Nodes.Add(bushNode); } catch { } }
// ------------------------------------------------------------------------------- /// <summary> /// Начать новую работу /// </summary> /// <param name="work">Работа которую необходимо начать</param> public void StartNewWork(Work work) { try { if (work != null) { StopCurrentWork(); work.IsActived = true; if (work.StartingDepth >= 0) { technology.P0205.Calculate(work.StartingDepth); } } } catch { } }
/// <summary> /// Втавить проект в пустое дерево проектов /// </summary> /// <param name="project">Втавляемый в пустое дерево проектов проект</param> protected void InsertFirstWorkToTree(Work work) { try { TreeNode root = new TreeNode(string.Format("Месторождение: {0}", work.Field), 0, 0); TreeNode bushNode = new TreeNode(string.Format("Куст: {0}", work.Bush), 1, 1); TreeNode wellNode = new TreeNode(string.Format("Скважина: {0}", work.Well), 2, 2); TreeNode jobNode = new TreeNode(string.Format("Задание: {0}", work.Description), 3, 3); jobNode.Tag = work; wellNode.Nodes.Add(jobNode); bushNode.Nodes.Add(wellNode); root.Nodes.Add(bushNode); treeViewWorks.Nodes.Add(root); } catch { } }
/// <summary> /// Загрузить проекты /// </summary> protected void LoadProjects() { XmlDocument document = null; try { string projectFolderPath = string.Format("{0}\\{1}", Environment.CurrentDirectory, "works"); DirectoryInfo info = new DirectoryInfo(projectFolderPath); if (info.Exists) { if (File.Exists(string.Format("{0}\\{1}", info.FullName, "works.xml"))) { document = new XmlDocument(); document.Load(string.Format("{0}\\{1}", info.FullName, "works.xml")); XmlNode root = document.FirstChild; if (root != null && root.Name == "works") { if (root.HasChildNodes) { foreach (XmlNode child in root.ChildNodes) { switch (child.Name) { case Work.WorkNodeName: try { Work work = new Work(); work.Load(child); works.Add(work); } catch { } break; default: break; } } } CheckProjectsFolders(info); } } } else { } } catch { } }
/// <summary> /// выбрать другое задание /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OpenProject_Click(object sender, EventArgs e) { if (treeViewWorks.SelectedNode != null) { Work work = treeViewWorks.SelectedNode.Tag as Work; if (work != null) { selected = work; DialogResult = DialogResult.OK; } else MessageBox.Show(this, "Выберите задание для редактирования.", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information); } else MessageBox.Show(this, "Выберите задание для редактирования.", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information); }
/// <summary> /// добавляем новое задание /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void InsertNewProject_Click(object sender, EventArgs e) { InsertNewWorkForm frm = new InsertNewWorkForm(); if (frm.ShowDialog(this) == DialogResult.OK) { Work work = new Work(); work.Field = frm.SelectedField; work.Bush = frm.SelectedBush; work.Well = frm.SelectedWell; work.Description = frm.SelectedDescription; work.StartingDepth = frm.SelectedDept; _app.Works.Add(work); InsertWorkToTree(work); } }
/// <summary> /// Добавить проект в дерево проектов /// </summary> /// <param name="project"></param> protected void InsertWorkToTree(Work work) { try { if (treeViewWorks.Nodes != null && treeViewWorks.Nodes.Count > 0) { foreach (TreeNode node in treeViewWorks.Nodes) { if (node.Text == string.Format("Месторождение: {0}", work.Field)) { InsertWorkToProjectNode(work, node); return; } } InsertFirstWorkToTree(work); } else { InsertFirstWorkToTree(work); } } catch { } }
/// <summary> /// Вставить проект в существующее месторождение /// </summary> /// <param name="project">Вставляемый проект</param> /// <param name="node">Узел в который вставить проект</param> protected void InsertWorkToProjectNode(Work work, TreeNode node) { if (node != null) { if (node.Nodes != null && node.Nodes.Count > 0) { foreach (TreeNode child in node.Nodes) // просматириваем кусты дерева проектов { if (child != null) { if (child.Text == string.Format("Куст: {0}", work.Bush)) { InsertWorkToBushNode(work, child); return; } } } // ----- вставляем в дерево проектов новый куст ---- InsertNewBushNode(work, node); } else { // ----- нету ни одного куста в проекте ----- } } }
/// <summary> /// Добавить новую работу в скважину /// </summary> /// <param name="project"></param> /// <param name="node"></param> protected void InsertNewJobNode(Work work, TreeNode node) { try { TreeNode jobNode = new TreeNode(string.Format("Задание: {0}", work.Description), 3, 3); jobNode.Tag = work; node.Nodes.Add(jobNode); } catch { } }