You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
272 lines
10 KiB
272 lines
10 KiB
using Database;
|
|
using OnDoc.Klassen;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
using Syncfusion.Windows.Forms;
|
|
using Syncfusion.Windows.Forms.Tools;
|
|
using Syncfusion.WinForms.Controls;
|
|
using OnDoc.Diverses;
|
|
using NLog;
|
|
using Windows.Media.Audio;
|
|
|
|
namespace OnDoc.DocMgmt
|
|
{
|
|
public partial class DokTypFavoritenOrdner : SfForm
|
|
{
|
|
public int mitarbeiternr { get; set; }
|
|
public TreeNodeAdv sourcenoude { get; set; }
|
|
public DokTypFavoritenOrdner(int mitarbeiternr, TreeNodeAdv sourcenode)
|
|
{
|
|
InitializeComponent();
|
|
this.mitarbeiternr = mitarbeiternr;
|
|
this.sourcenoude = sourcenode;
|
|
this.Style.TitleBar.BackColor = Theaming.Titelbar();
|
|
this.Style.TitleBar.ForeColor = Theaming.TitelFontColor();
|
|
this.Style.ShadowOpacity = Theaming.ShadowOpacity;
|
|
this.Style.InactiveShadowOpacity = Theaming.InactivShadowOpacity;
|
|
}
|
|
|
|
private void DokTypFavoritenOrdner_Load(object sender, EventArgs e)
|
|
{
|
|
Load_Favoriten("");
|
|
}
|
|
private void Load_Favoriten(string filter)
|
|
{
|
|
Cursor = Cursors.WaitCursor;
|
|
if (AppParams.connectionstring == "")
|
|
{
|
|
AppParams.init();
|
|
}
|
|
treeViewAdv1.Enabled = false;
|
|
treeViewAdv1.Visible = false;
|
|
treeViewAdv1.BeginEdit();
|
|
treeViewAdv1.Nodes.Clear();
|
|
|
|
DataTable vorlagen = new DataTable();
|
|
DataTable Struktur = new DataTable();
|
|
DataSet ds = new DataSet();
|
|
|
|
string sql = "Select * from view_favoriten_vorlagen where id=0 and aktiv=1 and mitarbeiternr=" + AppParams.CurrentMitarbeiter.ToString();
|
|
DB db = new DB(AppParams.connectionstring);
|
|
db.Get_Tabledata(sql, false, true);
|
|
ds.Tables.Add(db.dsdaten.Tables[0].Copy());
|
|
ds.Relations.Add("TreeParentChild", ds.Tables[0].Columns["pID"], ds.Tables[0].Columns["parentid"], false);
|
|
treeViewAdv1.LeftImageList = imageList1;
|
|
|
|
|
|
foreach (System.Data.DataRow dr in ds.Tables[0].Rows)
|
|
{
|
|
if (dr["Parentid"].ToString() == "0")
|
|
{
|
|
//Creates a TreeNode if the parent equals 0
|
|
TreeNodeAdv root = new TreeNodeAdv(dr["bez"].ToString());
|
|
root.Tag = Convert.ToInt32(dr["id"]) * 1;
|
|
root.TagObject = dr;
|
|
if (dr["id"].ToString() == "0")
|
|
{
|
|
root.LeftImageIndices = new int[] { 0 };
|
|
}
|
|
else
|
|
{
|
|
root.LeftImageIndices = new int[] { 1 };
|
|
}
|
|
;
|
|
treeViewAdv1.Nodes.Add(root);
|
|
//Recursively builds the tree
|
|
PopulateTree_Favoriten(dr, root);
|
|
}
|
|
}
|
|
|
|
treeViewAdv1.ExpandAll();
|
|
try
|
|
{
|
|
treeViewAdv1.SelectedNode = treeViewAdv1.Nodes[0];
|
|
}
|
|
catch { }
|
|
treeViewAdv1.EndEdit();
|
|
treeViewAdv1.Enabled = true;
|
|
treeViewAdv1.Visible = true;
|
|
Cursor = Cursors.Default;
|
|
|
|
}
|
|
public void PopulateTree_Favoriten(System.Data.DataRow dr, TreeNodeAdv pNode)
|
|
{
|
|
//To iterate through all the rows in the DataSet
|
|
foreach (System.Data.DataRow row in dr.GetChildRows("TreeParentChild"))
|
|
{
|
|
//Creating a TreeNode for each row
|
|
TreeNodeAdv cChild = new TreeNodeAdv(row["bez"].ToString());
|
|
//Add cChild node to the pNode
|
|
pNode.Nodes.Add(cChild);
|
|
cChild.Tag = row["ID"].ToString();
|
|
cChild.TagObject = row;
|
|
if (row["ID"].ToString() == "0")
|
|
{
|
|
cChild.LeftImageIndices = new int[] { 0 };
|
|
}
|
|
else
|
|
{
|
|
cChild.LeftImageIndices = new int[] { 1 };
|
|
}
|
|
|
|
//Recursively build the tree
|
|
PopulateTree_Favoriten(row, cChild);
|
|
}
|
|
}
|
|
|
|
private void save_new_entry(TreeNodeAdv node, int parent,int doktypnr=0)
|
|
{
|
|
DB db = new DB(AppParams.connectionstring);
|
|
db.Get_Tabledata("Select top 1 id from Relaunch_Favoriten order by id desc", false, true);
|
|
int newkey = 0;
|
|
try { newkey = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0][0]); } catch { }
|
|
newkey = newkey + 1;
|
|
db.dsdaten.Tables.Clear();
|
|
db.Get_Tabledata_for_Update("Select * from Relaunch_Favoriten where mitarbeiternr=-1", false, true);
|
|
DataRow dr = db.daten.Tables[0].NewRow();
|
|
dr[0] = newkey;
|
|
try
|
|
{
|
|
dr[1] = parent;
|
|
}
|
|
catch { dr[1] = 0; }
|
|
dr[2] = 1;
|
|
dr[3] = node.Text;
|
|
dr[4] = doktypnr;
|
|
dr[5] = AppParams.CurrentMitarbeiter;
|
|
dr[6] = true;
|
|
db.daten.Tables[0].Rows.Add(dr);
|
|
db.Update_Data();
|
|
|
|
Load_Favoriten("");
|
|
|
|
}
|
|
|
|
private void btnNeuerOrdner_Click(object sender, EventArgs e)
|
|
{
|
|
string NodeName = "";
|
|
InputDialog id = new InputDialog("Neuer Ordner", "Name des neuen Ordners", "");
|
|
if (id.ShowDialog() == DialogResult.OK) { NodeName = id.result; } else { return; }
|
|
|
|
TreeNodeAdv newnode = new TreeNodeAdv();
|
|
if (NodeName != "")
|
|
{
|
|
if (treeViewAdv1.Nodes.Count == 0 || treeViewAdv1.SelectedNode == null)
|
|
{
|
|
newnode.Text = NodeName;
|
|
newnode.Tag = "0";
|
|
newnode.LeftImageIndices = new int[] { 0 };
|
|
treeViewAdv1.Nodes.Add(newnode);
|
|
save_new_entry(newnode, 0);
|
|
}
|
|
else
|
|
{
|
|
newnode.Text = NodeName;
|
|
newnode.Tag = "0";
|
|
newnode.LeftImageIndices = new int[] { 0 };
|
|
treeViewAdv1.SelectedNode.Nodes.Add(newnode);
|
|
DataRow dr = treeViewAdv1.SelectedNode.TagObject as DataRow;
|
|
save_new_entry(newnode, Convert.ToInt32(dr["pid"]));
|
|
}
|
|
}
|
|
}
|
|
private static DialogResult ShowInputDialog(ref string input)
|
|
{
|
|
System.Drawing.Size size = new System.Drawing.Size(200, 70);
|
|
Form inputBox = new Form();
|
|
|
|
inputBox.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
|
inputBox.ClientSize = size;
|
|
inputBox.Text = "Name";
|
|
|
|
System.Windows.Forms.TextBox textBox = new TextBox();
|
|
textBox.Size = new System.Drawing.Size(size.Width - 10, 23);
|
|
textBox.Location = new System.Drawing.Point(5, 5);
|
|
textBox.Text = input;
|
|
inputBox.Controls.Add(textBox);
|
|
|
|
Button okButton = new Button();
|
|
okButton.DialogResult = System.Windows.Forms.DialogResult.OK;
|
|
okButton.Name = "okButton";
|
|
okButton.Size = new System.Drawing.Size(75, 23);
|
|
okButton.Text = "&OK";
|
|
okButton.Location = new System.Drawing.Point(size.Width - 80 - 80, 39);
|
|
inputBox.Controls.Add(okButton);
|
|
|
|
Button cancelButton = new Button();
|
|
cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
|
cancelButton.Name = "cancelButton";
|
|
cancelButton.Size = new System.Drawing.Size(75, 23);
|
|
cancelButton.Text = "&Cancel";
|
|
cancelButton.Location = new System.Drawing.Point(size.Width - 80, 39);
|
|
inputBox.Controls.Add(cancelButton);
|
|
|
|
inputBox.AcceptButton = okButton;
|
|
inputBox.CancelButton = cancelButton;
|
|
|
|
DialogResult result = inputBox.ShowDialog();
|
|
input = textBox.Text;
|
|
return result;
|
|
}
|
|
|
|
private void umbenennenToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
string NodeName = "";
|
|
InputDialog id = new InputDialog("Neuer Ordner", "Name des neuen Ordners", treeViewAdv1.SelectedNode.Text);
|
|
if (id.ShowDialog() == DialogResult.OK) { NodeName = id.result; } else { return; }
|
|
|
|
DataRow dr = treeViewAdv1.SelectedNode.TagObject as DataRow;
|
|
DB db = new DB(AppParams.connectionstring);
|
|
db.Exec_SQL("update relaunch_favoriten set bezeichnung='" + NodeName + "' where id=" + dr[0].ToString());
|
|
db = null;
|
|
Load_Favoriten("");
|
|
}
|
|
|
|
private void ordnerLöschenToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
if (MessageBox.Show("Order und aller darunter liegenden Elemente löschen?", "Ordner löschen", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
|
{
|
|
delete_elements(treeViewAdv1.SelectedNode);
|
|
}
|
|
}
|
|
|
|
private void delete_elements(TreeNodeAdv node)
|
|
{
|
|
DB db = new DB(AppParams.connectionstring);
|
|
DataRow dr = node.TagObject as DataRow;
|
|
db.Exec_SQL("update relaunch_favoriten set aktiv=0 where mitarbeiternr=" + AppParams.CurrentMitarbeiter.ToString() + " and id = " + dr[0].ToString());
|
|
for (int i = 0; i < 5; i++)
|
|
{
|
|
db.Exec_SQL("update relaunch_favoriten set aktiv=0 where aktiv=1 and mitarbeiternr=" + AppParams.CurrentMitarbeiter.ToString() + " and parentid<>0 and parentid not in (select id from relaunch_favoriten)");
|
|
}
|
|
db=null;
|
|
Load_Favoriten("");
|
|
|
|
}
|
|
|
|
private void neuerUnterordnerToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
btnNeuerOrdner_Click(sender, e);
|
|
}
|
|
|
|
private void neuerOrdnerAufObesterEbeneToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
treeViewAdv1.SelectedNode = null;
|
|
btnNeuerOrdner_Click(sender, e);
|
|
}
|
|
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
InputDialog dlg = new InputDialog();
|
|
|
|
}
|
|
}
|
|
}
|