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.

858 lines
36 KiB

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.WinForms.Controls.Styles;
using Syncfusion.Windows.Forms.Tools;
using Syncfusion.WinForms.Controls;
using Syncfusion.WinForms.DataGrid;
using Syncfusion.WinForms.DataGrid.Interactivity;
using OnDoc.Klassen;
using System.Data.SqlClient;
using Database;
using System.Threading;
using static System.Net.Mime.MediaTypeNames;
using System.IO;
using System.Net;
using Windows.System.Update;
using Syncfusion.Windows.Forms;
using OnDoc.Helper;
using Windows.Phone.ApplicationModel;
using System.Net.Http;
using Syncfusion.Office;
using Newtonsoft.Json;
using Windows.UI;
using System.Security.Cryptography;
using Windows.UI.Core.Preview;
namespace OnDoc.Diverses
{
public partial class MitarbeiterProfil : SfForm
{
private int mitarbeiternr = 0;
private bool onLoad = true;
private string tgnummer = "";
private string temppassword = "";
public MitarbeiterProfil()
{
InitializeComponent();
}
public MitarbeiterProfil(int Mitarbeiternr)
{
InitializeComponent();
mitarbeiternr = Mitarbeiternr;
}
public void hide_versandstrasse()
{
this.ribbonTab3.Visible = false;
}
private void MitarbeiterProfil_Load(object sender, EventArgs e)
{
refresh_profile();
ribbonTab1_ActiveChanged(sender, e);
refresh_unterschriften_team();
onLoad = false;
lbprofile.SelectedIndex = 0;
lbprofile_SelectedValueChanged(sender, e);
sign1.PenWidth = Convert.ToInt32(AppParams.SignatureWidth);
var arrColorFragments = AppParams.SignatureColor.Split(',').Select(sFragment => { int.TryParse(sFragment, out int fragment); return fragment; }).ToArray();
sign1.PenColor = System.Drawing.Color.FromArgb(arrColorFragments[0], arrColorFragments[1], arrColorFragments[2]);
btnSaveForUser.Visible = false;
if (AppParams.SignaturePassword.ToString().Trim() != "")
{
btnSaveForUser.Visible = true;
}
load_adressen();
}
private void refresh_profile()
{
DB db = new DB(AppParams.connectionstring);
db.Get_Tabledata("Select * from profil where aktiv=1 and mitarbeiternr=" + mitarbeiternr.ToString(), false, true);
lbprofile.DataSource = db.dsdaten.Tables[0];
lbprofile.DisplayMember = "Bezeichnung";
lbprofile.ValueMember = "profilnr";
db = null;
}
private void refresh_unterschriften_team()
{
DB db = new DB(AppParams.connectionstring);
db.clear_parameter();
db.Get_Tabledata("SP_Dokumentbearbeitung_Mitarbeiter", true, false);
cbboxUnterschriftLinks.DataSource = db.dsdaten.Tables[0];
cbboxUnterschriftLinks.DisplayMember = "name";
cbboxUnterschriftLinks.ValueMember = "mitarbeiternr";
cbboxUnterschriftRechts.DataSource = db.dsdaten.Tables[0];
cbboxUnterschriftRechts.DisplayMember = "name";
cbboxUnterschriftRechts.ValueMember = "mitarbeiternr";
db.clear_parameter();
db.add_parameter("@profilnr", 0.ToString());
db.add_parameter("@mitarbeiternr", mitarbeiternr.ToString());
db.Get_Tabledata("sp_dokumentbearbeitung_team", true, false);
cbboxTeam.DataSource = null;
cbboxTeam.DataSource = db.dsdaten.Tables[0];
cbboxTeam.ValueMember = "teamnr";
cbboxTeam.DisplayMember = "bezeichnung";
db = null;
}
private void RibbonButtonExit_Click(object sender, EventArgs e)
{
this.Close();
}
private void lbprofile_SelectedValueChanged(object sender, EventArgs e)
{
if (onLoad) { return; }
try
{
DB db = new DB(AppParams.connectionstring);
db.Get_Tabledata("Select * from profil where profilnr=" + lbprofile.SelectedValue, false, true);
cbboxUnterschriftLinks.SelectedValue = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["Unterschriftlinks"].ToString());
cbboxUnterschriftRechts.SelectedValue = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["Unterschriftrechts"].ToString());
cbboxTeam.SelectedValue = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["team"].ToString());
cbStandard.Checked = db.dsdaten.Tables[0].Rows[0]["standard"].ToString() == "True";
txtbezeichnung.Text = db.dsdaten.Tables[0].Rows[0]["bezeichnung"].ToString();
db = null;
}
catch { }
}
private void btnSave_Click(object sender, EventArgs e)
{
DB db = new DB(AppParams.connectionstring);
if (cbStandard.Checked)
{
db.Exec_SQL("Update profil set standard=0 where mitarbeiternr=" + mitarbeiternr.ToString());
db.Exec_SQL("Update profil set bezeichnung='" + txtbezeichnung.Text + "', unterschriftlinks=" + cbboxUnterschriftLinks.SelectedValue.ToString() + ", unterschriftrechts=" + cbboxUnterschriftRechts.SelectedValue.ToString() + ", team=" + cbboxTeam.SelectedValue.ToString() + " ,standard=1 where profilnr=" + lbprofile.SelectedValue.ToString());
}
db.Exec_SQL("Update profil set bezeichnung='" + txtbezeichnung.Text + "',unterschriftlinks=" + cbboxUnterschriftLinks.SelectedValue.ToString() + ", unterschriftrechts=" + cbboxUnterschriftRechts.SelectedValue.ToString() + ", team=" + cbboxTeam.SelectedValue.ToString() + " where profilnr=" + lbprofile.SelectedValue.ToString());
db = null;
}
private void ribbonButtonSave_Click(object sender, EventArgs e)
{
int saveselected = Convert.ToInt32(lbprofile.SelectedValue);
DB db = new DB(AppParams.connectionstring);
if (cbStandard.Checked)
{
db.Exec_SQL("Update profil set standard=0 where mitarbeiternr=" + mitarbeiternr.ToString());
db.Exec_SQL("Update profil set bezeichnung='" + txtbezeichnung.Text + "', unterschriftlinks=" + cbboxUnterschriftLinks.SelectedValue.ToString() + ", unterschriftrechts=" + cbboxUnterschriftRechts.SelectedValue.ToString() + ", team=" + cbboxTeam.SelectedValue.ToString() + " ,standard=1 where profilnr=" + lbprofile.SelectedValue.ToString());
}
db.Exec_SQL("Update profil set bezeichnung='" + txtbezeichnung.Text + "',unterschriftlinks=" + cbboxUnterschriftLinks.SelectedValue.ToString() + ", unterschriftrechts=" + cbboxUnterschriftRechts.SelectedValue.ToString() + ", team=" + cbboxTeam.SelectedValue.ToString() + " where profilnr=" + lbprofile.SelectedValue.ToString());
//db.Exec_SQL("Update mitarbeiter set name='" + txtName.Text + "', vorname='" + txtVorname.Text + "', email='" + txtmail.Text + "', telefon='" + txttelefon.Text + "' where mitarbeiternr=" + AppParams.CurrentMitarbeiter.ToString());
//db.Exec_SQL("Update mitarbeiter set fax='" + txtfax.Text + "', unterschrift_text='" + txtunterschrift.Text + "', funktion='" + txtfunktion.Text + "', mutiert_am=getdate(), mutierer=" + AppParams.CurrentMitarbeiter.ToString() + " where mitarbeiternr = " + AppParams.CurrentMitarbeiter.ToString());
db = null;
refresh_profile();
lbprofile.SelectedValue = saveselected;
}
private void ribbonButtonDelete_Click(object sender, EventArgs e)
{
DB db = new DB(AppParams.connectionstring);
if (cbStandard.Checked)
{
MessageBox.Show("Das Standardprofil kann nicht gelöscht werden.", "Profil löschen", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
db.Exec_SQL("Update profil set aktiv=0 where profilnr=" + lbprofile.SelectedValue.ToString());
}
db = null;
refresh_profile();
lbprofile.SelectedIndex = 0;
}
private void ribbonButtonNew_Click(object sender, EventArgs e)
{
DB db = new DB(AppParams.connectionstring);
db.Get_Tabledata("Select * from profil where profilnr=0", false, true);
int newkey = Convert.ToInt32(db.get_dbkey("Profil").ToString());
db.dsdaten.Tables[0].Rows[0]["PROFILnr"] = newkey;
db.dsdaten.Tables[0].Rows[0]["Mitarbeiternr"] = AppParams.CurrentMitarbeiter;
db.dsdaten.Tables[0].TableName = "Profil";
var res = db.InsertDataRow(db.dsdaten.Tables[0].Rows[0], AppParams.connectionstring);
//SqlCommand sqlq = db.CreateInsertCommand(db.dsdaten.Tables[0].Rows[0]);
//db.InsertDataRow(sqlq);
//string sql1 = db.BuildAllFieldsSQL(db.dsdaten.Tables[0]);
//MessageBox.Show(sql1);
//string sql = db.BuildInsertSQL(db.dsdaten.Tables[0]);
//MessageBox.Show(sql);
//db.Exec_SQL(sql);
db = null; ;
refresh_profile();
lbprofile.SelectedValue = newkey;
}
private void ribbonButtonNew_DoubleClick(object sender, EventArgs e)
{
}
private void MitarbeiterProfil_Activated(object sender, EventArgs e)
{
}
private void ribbonTab1_ActiveChanged(object sender, EventArgs e)
{
GrpBoxProfile.Dock = DockStyle.Left;
GrpBoxProfile.Visible = true;
GrpBoxDetails.Dock = DockStyle.Fill;
GrpBoxDetails.Visible = true;
GrpBoxMitarbeiter.Visible = false;
GrpGAS.Visible = false;
}
private void ribbonTab2_ActiveChanged(object sender, EventArgs e)
{
GrpBoxProfile.Visible = false;
GrpBoxDetails.Visible = false;
GrpGAS.Visible = false;
GrpBoxMitarbeiter.Visible = true;
GrpBoxMitarbeiter.Dock = DockStyle.Fill;
DB db = new DB(AppParams.connectionstring);
db.Get_Tabledata("select * from mitarbeiter where mitarbeiternr=" + AppParams.CurrentMitarbeiter.ToString(), false, true);
if (db.dsdaten.Tables[0].Rows.Count > 0)
{
try
{
tgnummer = db.dsdaten.Tables[0].Rows[0]["tgnummer"].ToString();
string unterschrift = get_unterschrift(db.dsdaten.Tables[0].Rows[0]["tgnummer"].ToString());
string ss = Newtonsoft.Json.JsonConvert.DeserializeObject<string>(unterschrift);
MemoryStream mssign = new MemoryStream(Convert.FromBase64String(ss));
System.Drawing.Image img = System.Drawing.Image.FromStream(mssign);
pictureBox1.Image = img;
mssign.Close();
mssign.Dispose();
}
catch { }
txtName.Text = db.dsdaten.Tables[0].Rows[0]["name"].ToString();
txtVorname.Text = db.dsdaten.Tables[0].Rows[0]["vorname"].ToString();
txtmail.Text = db.dsdaten.Tables[0].Rows[0]["email"].ToString();
txttelefon.Text = db.dsdaten.Tables[0].Rows[0]["telefon"].ToString();
txtfax.Text = db.dsdaten.Tables[0].Rows[0]["fax"].ToString();
txtunterschrift.Text = db.dsdaten.Tables[0].Rows[0]["unterschrift_text"].ToString();
txtfunktion.Text = db.dsdaten.Tables[0].Rows[0]["funktion"].ToString();
chkOndocMails.Checked = Convert.ToBoolean(db.dsdaten.Tables[0].Rows[0]["mailempfang"]) == true;
db = null;
// System.Drawing.Image image = System.Drawing.Image.FromFile(@"E:\Software-Projekte\OnDoc\Images\download.png");
//this.pictureBox1.Image = image;
}
}
private string get_unterschrift(string MaNr)
{
string URL = AppParams.RESTURI + "API/GetUnterschriftAsBase64ByMitarbeiternr?MaNr=" + AppParams.CurrentMitarbeiter.ToString() + "&ImageWith=-1";
HttpWebRequest webRequest = HttpWebRequest.Create(URL) as HttpWebRequest;
webRequest.Method = WebRequestMethods.Http.Get;
webRequest.Headers["Authorization"] = "Bearer " + AppParams.apikey;
try
{
using (HttpWebResponse response = webRequest.GetResponse() as HttpWebResponse)
{
if (response.StatusCode == HttpStatusCode.OK)
{
StreamReader reader = new StreamReader(response.GetResponseStream());
string responseContent = reader.ReadToEnd();
return responseContent;
}
else
{
Logging.Logging.Error(URL + ": " + response.StatusCode.ToString() + " / " + response.StatusDescription, "Clinet - DokList GetDocument", "");
return "";
}
}
}
catch (Exception ex)
{
return "";
}
}
protected bool validData;
string path;
protected System.Drawing.Image image;
protected Thread getImageThread;
private void pictureBox1_DragEnter(object sender, DragEventArgs e)
{
string filename;
validData = GetFilename(out filename, e);
if (validData)
{
path = filename;
getImageThread = new Thread(new ThreadStart(LoadImage));
getImageThread.Start();
e.Effect = DragDropEffects.Copy;
}
else
e.Effect = DragDropEffects.None;
}
private bool GetFilename(out string filename, DragEventArgs e)
{
bool ret = false;
filename = String.Empty;
if ((e.AllowedEffect & DragDropEffects.Copy) == DragDropEffects.Copy)
{
Array data = ((IDataObject)e.Data).GetData("FileDrop") as Array;
if (data != null)
{
if ((data.Length == 1) && (data.GetValue(0) is String))
{
filename = ((string[])data)[0];
string ext = System.IO.Path.GetExtension(filename).ToLower();
if ((ext == ".jpg") || (ext == ".png") || (ext == ".bmp"))
{
ret = true;
}
}
}
}
return ret;
}
protected void LoadImage()
{
image = new Bitmap(path);
}
private void pictureBox1_DragDrop(object sender, DragEventArgs e)
{
{
if (validData)
{
while (getImageThread.IsAlive)
{
System.Windows.Forms.Application.DoEvents();
Thread.Sleep(0);
}
pictureBox1.Image = image;
}
}
}
private void RibbonMitarbeiterButtonSave_Click(object sender, EventArgs e)
{
DB db = new DB(AppParams.connectionstring);
db.Exec_SQL("Update mitarbeiter set name='" + txtName.Text + "', vorname='" + txtVorname.Text + "', email='" + txtmail.Text + "', telefon='" + txttelefon.Text + "' where mitarbeiternr=" + AppParams.CurrentMitarbeiter.ToString());
db.Exec_SQL("Update mitarbeiter set fax='" + txtfax.Text + "', unterschrift_text='" + txtunterschrift.Text + "', funktion='" + txtfunktion.Text + "', mutiert_am=getdate(), mutierer=" + AppParams.CurrentMitarbeiter.ToString() + " where mitarbeiternr = " + AppParams.CurrentMitarbeiter.ToString());
int mailempfang = 0;
if (chkOndocMails.Checked) { mailempfang = 1; }
db.Exec_SQL("Update mitarbeiter set mailempfang=" + mailempfang.ToString() + " where mitarbeiternr = " + AppParams.CurrentMitarbeiter.ToString());
db = null;
}
private void btnDeleteImage_Click(object sender, EventArgs e)
{
sign1.ClearSignature();
}
private void btnSaveSignature_Click(object sender, EventArgs e)
{
if (sign1.IsValid)
{
string filename = AppParams.tempdir + AppParams.currenttgnummer + ".jpg";
if (System.IO.File.Exists(filename))
{
System.IO.File.Delete(filename);
}
if (MessageBox.Show("Unterschrif-Bild speichern ('" + AppParams.currenttgnummer + ".jpg') ?", "Unterschrift speichern", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
sign1.SignatureBitmap.Save(filename, System.Drawing.Imaging.ImageFormat.Jpeg);
//FileStream fs = new FileStream(filename, FileMode.Open);
// upload_img(fs, filename, AppParams.currenttgnummer);
FileHelper fh = new FileHelper();
string userimage = fh.Base64FromFile(filename);
upload_image(userimage, AppParams.currenttgnummer);
sign1.ClearSignature();
GrpGetSignature.Visible = false;
string unterschrift = get_unterschrift(this.tgnummer);
string ss = Newtonsoft.Json.JsonConvert.DeserializeObject<string>(unterschrift);
MemoryStream mssign = new MemoryStream(Convert.FromBase64String(ss));
System.Drawing.Image img = System.Drawing.Image.FromStream(mssign);
pictureBox1.Image = img;
mssign.Close();
mssign.Dispose();
}
}
}
public class imageclass
{
public string tgnummer { get; set; }
public string b64 { get; set; }
}
private void upload_image(string unterschrift, string tgnummer)
{
Logging.Logging.Debug("Start Save Image", "OnDoc", "");
string URL = AppParams.RESTURI + "API/SaveSignature";
string response;
imageclass ic = new imageclass();
ic.tgnummer = tgnummer;
ic.b64 = unterschrift;
string jsonstring = JsonConvert.SerializeObject(ic);
WebRequest request;
var data = Encoding.UTF8.GetBytes(jsonstring);
request = WebRequest.Create(URL);
request.ContentLength = data.Length;
request.ContentType = "application/json";
request.Method = "POST";
request.Headers["Authorization"] = "Bearer " + AppParams.apikey;
try
{
Logging.Logging.Debug("Upload Signature " + tgnummer, "OnDoc", "");
using (Stream requestStream = request.GetRequestStream())
{
requestStream.Write(data, 0, data.Length);
requestStream.Close();
using (Stream responseStream = request.GetResponse().GetResponseStream())
{
using (var reader = new StreamReader(responseStream))
{
response = reader.ReadToEnd();
}
}
}
return;
}
catch (Exception ex)
{
Logging.Logging.Debug("Upload Signature failed:" + ex.Message, "OnDoc", "");
return;
}
}
private void button3_Click(object sender, EventArgs e)
{
GrpGetSignature.Visible = false;
}
private void button2_Click(object sender, EventArgs e)
{
GrpGetSignature.Visible = true;
}
private void label15_Click(object sender, EventArgs e)
{
GrpGetSignature.Visible = false;
}
private void btnSaveForUser_Click(object sender, EventArgs e)
{
if (temppassword == "")
{
InputDialog id = new InputDialog("Passwort", "Passwort eingeben", "", false);
id.ShowDialog();
if (id.DialogResult == DialogResult.OK)
{
{
if (id.result == AppParams.SignaturePassword)
{
temppassword = id.result;
}
else
{
MessageBox.Show("Paasswort ist ungültig.", "Passwortabfrage", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
}
}
else
{
return;
}
id.Dispose();
}
string tgnummer = "";
InputDialog inputtg = new InputDialog("Unterschrift Speichern: Bitte TG-Nummer eingeben", "TGNummer", "", false);
inputtg.ShowDialog();
if (inputtg.DialogResult == DialogResult.OK)
{
tgnummer = inputtg.result;
DB db = new DB(AppParams.connectionstring);
db.Get_Tabledata("Select * from mitarbeiter where tgnummer='" + inputtg.result + "'", false, true);
if (db.dsdaten.Tables[0].Rows.Count == 0)
{
MessageBox.Show("Benutzer mit TG-Nummer '" + tgnummer + "' ist nicht vorhanden", "Falsche TG-Nummer", MessageBoxButtons.OK, MessageBoxIcon.Error);
db = null;
return;
}
string s = db.dsdaten.Tables[0].Rows[0]["TGNummer"].ToString()+" - ";
s = s+ db.dsdaten.Tables[0].Rows[0]["Name"].ToString()+" ";
s = s + db.dsdaten.Tables[0].Rows[0]["Vorname"].ToString();
if (MessageBox.Show("Unterschriften-Bild für " + s + " speichern?", "Unterschrift speichern", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
{
db = null;
return;
}
db = null;
tgnummer = inputtg.result;
}
if (sign1.IsValid)
{
string filename = AppParams.tempdir + tgnummer + ".jpg";
if (System.IO.File.Exists(filename))
{
System.IO.File.Delete(filename);
}
sign1.SignatureBitmap.Save(filename, System.Drawing.Imaging.ImageFormat.Jpeg);
FileHelper fh = new FileHelper();
string userimage = fh.Base64FromFile(filename);
upload_image(userimage, tgnummer);
sign1.ClearSignature();
MessageBox.Show("Unterschrift erfolgreich gespeichert", "Unterschrift speichern", MessageBoxButtons.OK, MessageBoxIcon.Information);
Logging.Logging.Info("Unterschrift von "+AppParams.currenttgnummer+" für " + tgnummer+" hochgeladen","OnDoc","");
System.IO.File.Delete(filename);
}
}
private void load_adressen()
{
DB db = new DB(AppParams.connectionstring);
db.Get_Tabledata("Select * from Antwortadresse order by bezeichnung", false, true);
foreach (System.Data.DataRow dr in db.dsdaten.Tables[0].Rows)
{
TreeNodeAdv node = new TreeNodeAdv();
node.Text = dr["bezeichnung"].ToString();
node.TagObject = dr;
treeViewAdvAdresse.Nodes.Add(node);
}
treeViewAdvAdresse.SelectedNode = treeViewAdvAdresse.Nodes[0];
db.Get_Tabledata("Select * from Antwortadresse_Mitarbeiter where mitarbeiternr=" + AppParams.CurrentMitarbeiter.ToString() + " order by reihenfolge",false,true);
foreach(System.Data.DataRow dr in db.dsdaten.Tables[0].Rows)
{
TreeNodeAdv node = new TreeNodeAdv();
node.Text = dr["bezeichnung"].ToString();
node.TagObject = dr;
TreeViewADVPersadresse.Nodes.Add(node);
}
db = null;
}
private void treeViewAdvAdresse_DoubleClick(object sender, EventArgs e)
{
TreeNodeAdv tn = treeViewAdvAdresse.SelectedNode;
tn.Tag = "Standard";
TreeViewADVPersadresse.Nodes.Add(tn);
}
private void btnSavePersAdressen_Click(object sender, EventArgs e)
{
DB db = new DB(AppParams.connectionstring);
DB db1 = new DB(AppParams.connectionstring);
db.Exec_SQL("Delete from antwortadresse_mitarbeiter where mitarbeiternr=" + AppParams.CurrentMitarbeiter.ToString());
int sort = 0;
db.Get_Tabledata_for_Update("Select * from antwortadresse_mitarbeiter where mitarbeiternr=" + AppParams.CurrentMitarbeiter.ToString(), false, true);
foreach (TreeNodeAdv tn in TreeViewADVPersadresse.Nodes)
{
System.Data.DataRow dr = db.daten.Tables[0].NewRow();
dr["tgnummer"] = AppParams.currenttgnummer;
dr["mitarbeiternr"] = AppParams.CurrentMitarbeiter;
dr["erstellt_am"] = DateTime.Now;
dr["mutiert_am"] = DateTime.Now;
dr["reihenfolge"] = sort;
dr["mutierer"] = AppParams.CurrentMitarbeiter;
dr["aktiv"] = true;
sort = sort + 1;
if (tn.Tag == "Standard")
{
System.Data.DataRow adr = tn.TagObject as System.Data.DataRow;
db1.Get_Tabledata("Select * from antwortadresse where id=" + adr["id"].ToString(), false, true);
dr["bezeichnung"] = tn.Text;
dr["Zeile1"] = db1.dsdaten.Tables[0].Rows[0]["Zeile1"].ToString();
dr["Zeile2"] = db1.dsdaten.Tables[0].Rows[0]["Zeile2"].ToString();
dr["Zeile3"] = db1.dsdaten.Tables[0].Rows[0]["Zeile3"].ToString();
dr["Zeile4"] = db1.dsdaten.Tables[0].Rows[0]["Zeile4"].ToString();
dr["Zeile5"] = db1.dsdaten.Tables[0].Rows[0]["Zeile5"].ToString();
dr["Zeile6"] = db1.dsdaten.Tables[0].Rows[0]["Zeile6"].ToString();
dr["Zeile7"] = "";
dr["standardadresse"] = adr["id"];
}
else
{
dr["standardadresse"] = 0;
System.Data.DataRow adr = tn.TagObject as System.Data.DataRow;
dr["bezeichnung"] = tn.Text;
dr["Zeile1"] = adr["Zeile1"].ToString();
dr["Zeile2"] = adr["Zeile2"].ToString();
dr["Zeile3"] = adr["Zeile3"].ToString();
dr["Zeile4"] = adr["Zeile4"].ToString();
dr["Zeile5"] = adr["Zeile5"].ToString();
dr["Zeile6"] = adr["Zeile6"].ToString();
dr["Zeile7"] = adr["Zeile7"].ToString();
}
db.daten.Tables[0].Rows.Add(dr);
}
db.Update_Data();
db = null;
db1 = null;
}
private void btnNewPersAddr_Click(object sender, EventArgs e)
{
panelpersadresse.Visible = true;
textBox8.Focus();
}
private void btnCancelPersAddr_Click(object sender, EventArgs e)
{
panelpersadresse.Visible = false;
}
private void btnSavePersAddr_Click(object sender, EventArgs e)
{
if (editadress)
{
System.Data.DataRow dr1 = TreeViewADVPersadresse.SelectedNode.TagObject as System.Data.DataRow;
dr1["bezeichnung"] = textBox8.Text;
dr1["zeile1"] = textBox1.Text;
dr1["zeile2"] = textBox2.Text;
dr1["zeile3"] = textBox3.Text;
dr1["zeile4"] = textBox4.Text;
dr1["zeile5"] = textBox5.Text;
dr1["zeile6"] = textBox6.Text;
dr1["zeile7"] = textBox7.Text;
TreeViewADVPersadresse.SelectedNode.Text=textBox8.Text;
TreeViewADVPersadresse.SelectedNode.TagObject = dr1;
panelpersadresse.Visible = false;
TreeViewADVPersadresse_AfterSelect(sender, e);
editadress = false;
return;
}
DB db = new DB(AppParams.connectionstring);
db.Get_Tabledata("Select top 1 * from antwortadresse_mitarbeiter where id=-1", false, true);
System.Data.DataRow dr = db.dsdaten.Tables[0].NewRow();
dr["tgnummer"] = AppParams.currenttgnummer;
dr["mitarbeiternr"] = AppParams.CurrentMitarbeiter;
dr["standardadresse"] = 0;
dr["reihenfolge"] = 0;
dr["bezeichnung"] = textBox8.Text;
dr["zeile1"] = textBox1.Text;
dr["zeile2"] = textBox2.Text;
dr["zeile3"] = textBox3.Text;
dr["zeile4"] = textBox4.Text;
dr["zeile5"] = textBox5.Text;
dr["zeile6"] = textBox6.Text;
dr["zeile7"] = textBox7.Text;
TreeNodeAdv tnnew = new TreeNodeAdv();
tnnew.Text = dr["bezeichnung"].ToString();
tnnew.TagObject = dr;
TreeViewADVPersadresse.Nodes.Add(tnnew);
db = null;
panelpersadresse.Visible = false;
}
private void adresseLöschenToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
TreeViewADVPersadresse.SelectedNode.Remove();
}
catch { }
}
private void treeViewAdvAdresse_Click(object sender, EventArgs e)
{
}
private void TreeViewADVPersadresse_Click(object sender, EventArgs e)
{
}
private void TreeViewADVPersadresse_AfterSelect(object sender, EventArgs e)
{
try
{
System.Data.DataRow dr = TreeViewADVPersadresse.SelectedNode.TagObject as System.Data.DataRow;
txtadresse.Text = "";
txtadresse.Text = dr["zeile1"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile2"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile3"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile4"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile5"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile6"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile7"].ToString() + Environment.NewLine;
}
catch { }
}
private void treeViewAdvAdresse_AfterSelect(object sender, EventArgs e)
{
try
{
System.Data.DataRow dr = treeViewAdvAdresse.SelectedNode.TagObject as System.Data.DataRow;
txtadresse.Text = "";
txtadresse.Text = dr["zeile1"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile2"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile3"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile4"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile5"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile6"].ToString() + Environment.NewLine;
txtadresse.Text = txtadresse.Text + dr["zeile7"].ToString() + Environment.NewLine;
}
catch { }
}
private void persönlicheAdresseErstellenToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
System.Data.DataRow dr = treeViewAdvAdresse.SelectedNode.TagObject as System.Data.DataRow;
textBox8.Text = "*** neue Adresse ***";
textBox1.Text = dr["zeile1"].ToString();
textBox2.Text = dr["zeile2"].ToString();
textBox3.Text = dr["zeile3"].ToString();
textBox4.Text = dr["zeile4"].ToString();
textBox5.Text = dr["zeile5"].ToString();
textBox6.Text = dr["zeile6"].ToString();
textBox7.Text = "";
panelpersadresse.Visible = true;
}
catch { }
}
private void MoveNode(bool moveUp)
{
TreeNodeAdv selectedNode = TreeViewADVPersadresse.SelectedNode;
if (selectedNode == null || selectedNode.Parent == null) return;
TreeNodeAdvCollection parentNodes = selectedNode.Parent.Nodes;
int index = parentNodes.IndexOf(selectedNode);
if (moveUp && index > 0)
{
// Verschiebe nach oben
parentNodes.RemoveAt(index);
parentNodes.Insert(index - 1, selectedNode);
TreeViewADVPersadresse.SelectedNode = selectedNode;
}
else if (!moveUp && index < parentNodes.Count - 1)
{
// Verschiebe nach unten
parentNodes.RemoveAt(index);
parentNodes.Insert(index + 1, selectedNode);
TreeViewADVPersadresse.SelectedNode = selectedNode;
}
}
private void TreeViewADVPersadresse_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Down:
if (e.Control)
{
MoveNode(false);
// MoveNodeDown(treeViewAdv2.SelectedNode);
}
break;
case Keys.Up:
if (e.Control)
{
MoveNode(true);
// MoveNodeUp(treeViewAdv2.SelectedNode);
}
break;
}
}
private bool editadress = false;
private void adresseBearbeitenToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
editadress = true;
System.Data.DataRow dr = TreeViewADVPersadresse.SelectedNode.TagObject as System.Data.DataRow;
textBox8.Text = TreeViewADVPersadresse.SelectedNode.Text;
textBox1.Text = dr["zeile1"].ToString();
textBox2.Text = dr["zeile2"].ToString();
textBox3.Text = dr["zeile3"].ToString();
textBox4.Text = dr["zeile4"].ToString();
textBox5.Text = dr["zeile5"].ToString();
textBox6.Text = dr["zeile6"].ToString();
textBox7.Text = "";
panelpersadresse.Visible = true;
}catch
{
}
}
private void ribbonTab3_ActiveChanged(object sender, EventArgs e)
{
GrpBoxProfile.Visible = false;
GrpBoxDetails.Visible = false;
GrpBoxMitarbeiter.Visible = false;
GrpGAS.Visible = true;
}
}
}