Div.Änderungen. Commit und Push damit Trennung der Projekte entwickelt werden kann.
This commit is contained in:
parent
95bdecedf5
commit
00ffcbbfc1
@ -25,8 +25,9 @@ namespace Deckungsbeitrag.AA_Forms
|
||||
}
|
||||
public CustomInputBox(string Frage, string Title, string Eingabe, string numeric) : this()
|
||||
{
|
||||
if (numeric == "isNumeric") this.isNumeric = true;
|
||||
if (numeric == "isAlpha") this.isNumeric = false;
|
||||
if (numeric == "isNumeric") { this.textBoxText.AccessibleName = "isNumeric"; this.isNumeric = true; }
|
||||
if (numeric == "isAlpha") { this.textBoxText.AccessibleName = "isAlpha"; this.isNumeric = false; }
|
||||
if (numeric == "isCalc") { this.textBoxText.AccessibleName = "isClac"; this.isNumeric = true; }
|
||||
this.labelFrage.Text = Frage;
|
||||
this.labelEingabe.Text = Eingabe + ":";
|
||||
this.Text = Title;
|
||||
@ -36,26 +37,23 @@ namespace Deckungsbeitrag.AA_Forms
|
||||
|
||||
private void TextBoxText_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.textBoxText.Clear();
|
||||
if (Program.istTouch & Screen.PrimaryScreen.WorkingArea.Width > 0 & Screen.PrimaryScreen.WorkingArea.Width < 2000)
|
||||
{
|
||||
if (keyboard == null || keyboard.IsDisposed)
|
||||
{
|
||||
keyboard = new QwertzKeyboard(textBoxText, "isNumeric");
|
||||
keyboard.Show();
|
||||
}
|
||||
else
|
||||
{
|
||||
keyboard.Close();
|
||||
keyboard = new QwertzKeyboard(textBoxText, "isNumeric");
|
||||
keyboard.Show();
|
||||
}
|
||||
}
|
||||
TextBox tb = (TextBox)sender;
|
||||
tb.Clear();
|
||||
keyboard = Funktionen.OpenVirtualKeyboard(sender);
|
||||
}
|
||||
private void TextBoxText_Enter(object sender, EventArgs e)
|
||||
{
|
||||
this.textBoxText.Clear();
|
||||
this.textBoxText.SelectAll();
|
||||
TextBox tb = (TextBox)sender;
|
||||
keyboard = Funktionen.OpenVirtualKeyboard(sender);
|
||||
|
||||
this.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (!tb.IsDisposed && tb.CanFocus)
|
||||
{
|
||||
tb.Focus();
|
||||
tb.SelectAll();
|
||||
}
|
||||
}));
|
||||
}
|
||||
|
||||
private void ButtonAbbrechen_Click(object sender, EventArgs e)
|
||||
|
||||
2
AA-Forms/FormAufleger.Designer.cs
generated
2
AA-Forms/FormAufleger.Designer.cs
generated
@ -325,6 +325,8 @@
|
||||
this.textBoxScan.Size = new System.Drawing.Size(268, 46);
|
||||
this.textBoxScan.TabIndex = 25;
|
||||
this.textBoxScan.TextChanged += new System.EventHandler(this.TextBoxScan_TextChanged);
|
||||
this.textBoxScan.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TextBoxScan_KeyDown);
|
||||
this.textBoxScan.Leave += new System.EventHandler(this.TextBoxScan_Leave);
|
||||
//
|
||||
// buttonCloseForm
|
||||
//
|
||||
|
||||
@ -16,6 +16,7 @@ using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using static System.Net.Mime.MediaTypeNames;
|
||||
|
||||
namespace Deckungsbeitrag
|
||||
{
|
||||
@ -55,8 +56,6 @@ namespace Deckungsbeitrag
|
||||
{
|
||||
await GetAuftraege();
|
||||
|
||||
|
||||
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
LoadPanel();
|
||||
@ -243,48 +242,10 @@ namespace Deckungsbeitrag
|
||||
{
|
||||
this.Cursor = Cursors.WaitCursor;
|
||||
timer.Stop(); // Timer stoppen
|
||||
Kunde kunde;
|
||||
string zusatz = string.Empty;
|
||||
|
||||
if (string.IsNullOrEmpty(textBoxScan.Text)) { this.Cursor = Cursors.Default; return; }
|
||||
if (int.TryParse(textBoxScan.Text, out _)) kunde = Kunde.GetKunde(textBoxScan.Text, null, null);
|
||||
else
|
||||
{
|
||||
if (textBoxScan.Text.Contains(","))
|
||||
{
|
||||
kunde = Kunde.GetKunde(textBoxScan.Text.Substring(0, textBoxScan.Text.IndexOf(',')), null, null);
|
||||
zusatz = textBoxScan.Text.Substring(textBoxScan.Text.IndexOf(',') + 1);
|
||||
}
|
||||
else kunde = Kunde.GetKunde(null, null, textBoxScan.Text);
|
||||
}
|
||||
|
||||
// Wenn kein Auftrag gefunden muss der Zettel zum Expedit gebracht werden. ÜBERGANGSZEIT FALLS AUFTRAG NICHT VON FAHRER ERFASST.
|
||||
if (kunde == null) { MessageBox.Show("Der Auftrag konnte nicht gefunden werden. Bring die Karte zur Mirka.", "ACHTUNG", MessageBoxButtons.OK, MessageBoxIcon.Error); return; }
|
||||
|
||||
List<Auftrag> auftList = Auftrag.FindeAuftragVonKunde(kunde, zusatz, null, (DateTime?)null);
|
||||
if (auftList.Count == 0) { meldung.GetFehler(this, "Es konnte kein Auftrag zum eingescannten Kunden gefunden werden.\nBitte Informiere deinen Vorgesetzten."); return; }
|
||||
|
||||
// Alten Auftrag Speichern (Status Gewaschen) wenn neuer Auftrag gefunden wurde.
|
||||
if(auftrag != null)
|
||||
{
|
||||
if (AuftragSpeichern() == false) return;
|
||||
iswechsel = true;
|
||||
}
|
||||
if (auftList.Count == 1) auftrag = auftList[0];
|
||||
if (auftList.Count > 1)
|
||||
{
|
||||
if (meldung.GetFrage(this, $"Es konnten mehrere Aufträge für den gescannten Kunden gefunden werden.\nIst auf der Containerkarte Auftrag 2 vermerkt?", false) == DialogResult.Yes)
|
||||
{
|
||||
auftrag = auftList.Find(a => a.ZusatzInfo.Contains("Auftrag 2"));
|
||||
}
|
||||
else
|
||||
{
|
||||
auftrag = auftList.Find(a => !a.ZusatzInfo.Contains("Auftrag 2"));
|
||||
}
|
||||
}
|
||||
|
||||
SucheAuftrag();
|
||||
this.Cursor = Cursors.Default;
|
||||
TextBoxScan_Leave(this.textBoxScan, null);
|
||||
}
|
||||
private void SucheAuftrag()
|
||||
{
|
||||
@ -313,6 +274,7 @@ namespace Deckungsbeitrag
|
||||
private bool AuftragSpeichern()
|
||||
{
|
||||
auftrag.Status = AuftragStatus.Gewaschen;
|
||||
auftrag.MaschineID = null;
|
||||
if (auftrag.Save()[0] == 1) auftrag = null;
|
||||
else { meldung.Speicherfehler(); return false; }
|
||||
|
||||
@ -320,8 +282,13 @@ namespace Deckungsbeitrag
|
||||
}
|
||||
private void FormAufleger_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
//if (auftrag == null) return;
|
||||
//if (AuftragSpeichern() == false) e.Cancel = true;
|
||||
if (this.auftrag != null)
|
||||
{
|
||||
if (this.auftrag.Status == AuftragStatus.Aufgelegt)
|
||||
{
|
||||
AuftragSpeichern();
|
||||
}
|
||||
}
|
||||
}
|
||||
private void ButtonCloseForm_Click(object sender, EventArgs e)
|
||||
{
|
||||
@ -349,5 +316,76 @@ namespace Deckungsbeitrag
|
||||
meldung.GetInfo(this, $"Die Waschzeiten für den gewünschten Tag lauten:\n\n[Eine Waschstraße] => {zeit[0]:F1} Stunden\n[Zwei Waschstraßen] => {zeit[1]:F1} Stunden", false);
|
||||
|
||||
}
|
||||
|
||||
private void TextBoxScan_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
TextBox txtScan = (TextBox)sender;
|
||||
if (e.KeyCode == Keys.Enter)
|
||||
{
|
||||
e.SuppressKeyPress = true;
|
||||
string code = txtScan.Text.Trim();
|
||||
//txtScan.Clear();
|
||||
|
||||
if (!string.IsNullOrEmpty(code))
|
||||
TextBoxScan_Leave(txtScan, null);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void TextBoxScan_Leave(object sender, EventArgs e)
|
||||
{
|
||||
TextBox textBox = (TextBox)sender;
|
||||
Kunde _kunde;
|
||||
string zusatz = string.Empty;
|
||||
string text = string.Empty;
|
||||
if (string.IsNullOrWhiteSpace(textBox.Text)) { this.Cursor = Cursors.Default; return; }
|
||||
|
||||
if (textBox.Text.ToLower().StartsWith("scanhttps"))
|
||||
{
|
||||
int index = 1;
|
||||
index += textBox.Text.IndexOf("=", index);
|
||||
int i = textBox.Text.IndexOf("%", index);
|
||||
text = textBox.Text.Substring(index, i - index);
|
||||
textBox.Text = text;
|
||||
}
|
||||
else text = textBox.Text;
|
||||
|
||||
if (int.TryParse(text, out int j)) _kunde = Kunde.GetKunde(text, null, null);
|
||||
else _kunde = Kunde.GetKunde(null, null, text.ToLower());
|
||||
|
||||
// Wenn kein Auftrag gefunden muss der Zettel zum Expedit gebracht werden. ÜBERGANGSZEIT FALLS AUFTRAG NICHT VON FAHRER ERFASST.
|
||||
if (_kunde == null) { MessageBox.Show("Der Auftrag konnte nicht gefunden werden. Bring die Karte zur Mirka.", "ACHTUNG", MessageBoxButtons.OK, MessageBoxIcon.Error); return; }
|
||||
|
||||
List<Auftrag> auftList = Auftrag.FindeAuftragVonKunde(_kunde, zusatz, null, (DateTime?)null);
|
||||
if (auftList.Count == 0) { meldung.GetFehler(this, "Es konnte kein Auftrag zugewünschten Kunden gefunden werden.\nBitte Informiere deinen Vorgesetzten."); return; }
|
||||
|
||||
// Alten Auftrag Speichern (Status Gewaschen) wenn neuer Auftrag gefunden wurde.
|
||||
if (auftrag != null)
|
||||
{
|
||||
if (!AuftragSpeichern()) return;
|
||||
iswechsel = true;
|
||||
}
|
||||
if (auftList.Count == 1) auftrag = auftList[0];
|
||||
if (auftList.Count > 1)
|
||||
{
|
||||
if (meldung.GetFrage(this, $"Es konnten mehrere Aufträge für den gescannten Kunden gefunden werden.\nIst auf der Containerkarte Auftrag 2 vermerkt?", false) == DialogResult.Yes)
|
||||
{
|
||||
auftrag = auftList.Find(a => a.ZusatzInfo.Contains("Auftrag 2"));
|
||||
}
|
||||
else
|
||||
{
|
||||
auftrag = auftList.Find(a => !a.ZusatzInfo.Contains("Auftrag 2"));
|
||||
}
|
||||
}
|
||||
|
||||
FormMSAuswahl auswahl = new FormMSAuswahl();
|
||||
if (auswahl.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
auftrag.MaschineID = auswahl.id;
|
||||
}
|
||||
|
||||
SucheAuftrag();
|
||||
this.Cursor = Cursors.Default;
|
||||
}
|
||||
}
|
||||
}
|
||||
39
AA-Forms/FormAuftragAuswahl.Designer.cs
generated
39
AA-Forms/FormAuftragAuswahl.Designer.cs
generated
@ -31,6 +31,7 @@
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormAuftragAuswahl));
|
||||
this.panelAuswahl = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.panelSuchen = new System.Windows.Forms.Panel();
|
||||
this.buttonAbbrechen = new System.Windows.Forms.Button();
|
||||
this.textBoxKunde = new System.Windows.Forms.TextBox();
|
||||
this.panelSuchen.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
@ -41,37 +42,56 @@
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.panelAuswahl.AutoScroll = true;
|
||||
this.panelAuswahl.AutoScrollMargin = new System.Drawing.Size(20, 20);
|
||||
this.panelAuswahl.AutoScrollMargin = new System.Drawing.Size(100, 100);
|
||||
this.panelAuswahl.FlowDirection = System.Windows.Forms.FlowDirection.TopDown;
|
||||
this.panelAuswahl.Location = new System.Drawing.Point(0, 70);
|
||||
this.panelAuswahl.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.panelAuswahl.Name = "panelAuswahl";
|
||||
this.panelAuswahl.Padding = new System.Windows.Forms.Padding(20);
|
||||
this.panelAuswahl.Size = new System.Drawing.Size(1674, 928);
|
||||
this.panelAuswahl.Padding = new System.Windows.Forms.Padding(20, 20, 133, 20);
|
||||
this.panelAuswahl.Size = new System.Drawing.Size(1675, 928);
|
||||
this.panelAuswahl.TabIndex = 0;
|
||||
//
|
||||
// panelSuchen
|
||||
//
|
||||
this.panelSuchen.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(53)))), ((int)(((byte)(101)))));
|
||||
this.panelSuchen.Controls.Add(this.buttonAbbrechen);
|
||||
this.panelSuchen.Controls.Add(this.textBoxKunde);
|
||||
this.panelSuchen.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.panelSuchen.Location = new System.Drawing.Point(0, 0);
|
||||
this.panelSuchen.Margin = new System.Windows.Forms.Padding(5);
|
||||
this.panelSuchen.Name = "panelSuchen";
|
||||
this.panelSuchen.Padding = new System.Windows.Forms.Padding(15);
|
||||
this.panelSuchen.Size = new System.Drawing.Size(1674, 65);
|
||||
this.panelSuchen.Size = new System.Drawing.Size(1675, 65);
|
||||
this.panelSuchen.TabIndex = 1;
|
||||
//
|
||||
// buttonAbbrechen
|
||||
//
|
||||
this.buttonAbbrechen.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.buttonAbbrechen.BackColor = System.Drawing.Color.Red;
|
||||
this.buttonAbbrechen.FlatAppearance.BorderSize = 0;
|
||||
this.buttonAbbrechen.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.buttonAbbrechen.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.buttonAbbrechen.ForeColor = System.Drawing.Color.Black;
|
||||
this.buttonAbbrechen.Location = new System.Drawing.Point(1360, 10);
|
||||
this.buttonAbbrechen.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
|
||||
this.buttonAbbrechen.Name = "buttonAbbrechen";
|
||||
this.buttonAbbrechen.Size = new System.Drawing.Size(300, 46);
|
||||
this.buttonAbbrechen.TabIndex = 2;
|
||||
this.buttonAbbrechen.Text = "Eingabe Abbrechen";
|
||||
this.buttonAbbrechen.UseVisualStyleBackColor = false;
|
||||
this.buttonAbbrechen.Click += new System.EventHandler(this.buttonAbbrechen_Click);
|
||||
//
|
||||
// textBoxKunde
|
||||
//
|
||||
this.textBoxKunde.AccessibleName = "isAlpha";
|
||||
this.textBoxKunde.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.textBoxKunde.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxKunde.ForeColor = System.Drawing.Color.Silver;
|
||||
this.textBoxKunde.Location = new System.Drawing.Point(10, 10);
|
||||
this.textBoxKunde.Margin = new System.Windows.Forms.Padding(10);
|
||||
this.textBoxKunde.Location = new System.Drawing.Point(11, 10);
|
||||
this.textBoxKunde.Margin = new System.Windows.Forms.Padding(11, 10, 11, 10);
|
||||
this.textBoxKunde.Name = "textBoxKunde";
|
||||
this.textBoxKunde.Size = new System.Drawing.Size(1654, 45);
|
||||
this.textBoxKunde.Size = new System.Drawing.Size(1333, 45);
|
||||
this.textBoxKunde.TabIndex = 1;
|
||||
this.textBoxKunde.Text = "Kunde suchen";
|
||||
this.textBoxKunde.Click += new System.EventHandler(this.TextBoxKunde_Click);
|
||||
@ -81,13 +101,15 @@
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(1674, 998);
|
||||
this.ClientSize = new System.Drawing.Size(1675, 998);
|
||||
this.Controls.Add(this.panelSuchen);
|
||||
this.Controls.Add(this.panelAuswahl);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
|
||||
this.Name = "FormAuftragAuswahl";
|
||||
this.Text = "Auftrag wählen";
|
||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.FormAuftragAuswahl_FormClosing);
|
||||
this.Load += new System.EventHandler(this.FormAuftragAuswahl_Load);
|
||||
this.Shown += new System.EventHandler(this.FormAuftragAuswahl_Shown);
|
||||
this.panelSuchen.ResumeLayout(false);
|
||||
@ -101,5 +123,6 @@
|
||||
private System.Windows.Forms.FlowLayoutPanel panelAuswahl;
|
||||
private System.Windows.Forms.Panel panelSuchen;
|
||||
private System.Windows.Forms.TextBox textBoxKunde;
|
||||
private System.Windows.Forms.Button buttonAbbrechen;
|
||||
}
|
||||
}
|
||||
@ -25,6 +25,33 @@ namespace Deckungsbeitrag.AA_Forms
|
||||
public Kunde kunde;
|
||||
public Auftrag auftrag;
|
||||
private Screen screen = Screen.PrimaryScreen;
|
||||
private bool _keyboardVisible;
|
||||
public bool KeyBoardVisible
|
||||
{
|
||||
get { return _keyboardVisible; }
|
||||
set
|
||||
{
|
||||
_keyboardVisible = value;
|
||||
if (KeyBoardVisible)
|
||||
{
|
||||
this.Width = screen.WorkingArea.Width;
|
||||
this.Height = (int)(screen.WorkingArea.Height * 0.55);
|
||||
this.Location = new Point(0, 0);
|
||||
|
||||
this.panelAuswahl.Height = this.Bottom - this.panelSuchen.Bottom - 20;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
this.Width = screen.WorkingArea.Width;
|
||||
this.Height = screen.WorkingArea.Height;
|
||||
this.Location = new Point(0, 0);
|
||||
|
||||
this.panelAuswahl.Height = this.Bottom - this.panelSuchen.Bottom - 20;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public FormAuftragAuswahl()
|
||||
{
|
||||
@ -51,7 +78,6 @@ namespace Deckungsbeitrag.AA_Forms
|
||||
{
|
||||
this.Auftragliste = await View_Auftrag_Expedit.GetAuftragExpeditAsync(statusFilter: AuftragStatus.Gewaschen, kategorie: Abteilung);
|
||||
}
|
||||
|
||||
private async void Load_PanelAuswahl(List<View_Auftrag_Expedit> _liste)
|
||||
{
|
||||
this.panelAuswahl.Controls.Clear();
|
||||
@ -110,10 +136,12 @@ namespace Deckungsbeitrag.AA_Forms
|
||||
this.DialogResult = DialogResult.OK;
|
||||
this.Close();
|
||||
}
|
||||
private void TextBoxKunde_TextChanged(object sender, EventArgs e)
|
||||
private async void TextBoxKunde_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
TextBox textbox = sender as TextBox;
|
||||
string text = textbox.Text.Trim().ToLower();
|
||||
this.Auftragliste = await View_Auftrag_Expedit.GetAuftragExpeditAsync(statusFilter: AuftragStatus.Gewaschen, kategorie: Abteilung, undFertig: true);
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(text))
|
||||
{
|
||||
var filtered = string.IsNullOrWhiteSpace(text) ? this.Auftragliste : this.Auftragliste.Where(x => x.KundeName != null && x.KundeName.ToLower().Contains(text)).ToList();
|
||||
@ -125,34 +153,56 @@ namespace Deckungsbeitrag.AA_Forms
|
||||
|
||||
private void TextBoxKunde_Click(object sender, EventArgs e)
|
||||
{
|
||||
TextBox textbox = sender as TextBox;
|
||||
textbox.Clear();
|
||||
textbox.ForeColor = Color.Black;
|
||||
TextBox tb = sender as TextBox;
|
||||
tb.Clear();
|
||||
tb.ForeColor = Color.Black;
|
||||
|
||||
if (Program.istTouch & Screen.PrimaryScreen.WorkingArea.Width > 0 & Screen.PrimaryScreen.WorkingArea.Width < 2000)
|
||||
keyboard = Funktionen.OpenVirtualKeyboard(sender);
|
||||
keyboard.KeyBoardShown += KeyBoardShown;
|
||||
keyboard.KeyBoardClosed += KeyBoardClosed;
|
||||
|
||||
this.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (keyboard == null || keyboard.IsDisposed)
|
||||
if (!tb.IsDisposed && tb.CanFocus)
|
||||
{
|
||||
keyboard = new QwertzKeyboard(textBoxKunde, "isAlpha");
|
||||
keyboard.Show();
|
||||
tb.Focus();
|
||||
tb.SelectAll();
|
||||
}
|
||||
else
|
||||
{
|
||||
keyboard.Close();
|
||||
keyboard = new QwertzKeyboard(textBoxKunde, "isAlpha");
|
||||
if (keyboard.ShowDialog() == DialogResult.OK) this.ActiveControl.Focus();
|
||||
}
|
||||
}
|
||||
}));
|
||||
}
|
||||
|
||||
private void KeyBoardClosed(object sender, EventArgs e)
|
||||
{
|
||||
KeyBoardVisible = false;
|
||||
}
|
||||
|
||||
private void KeyBoardShown(object sender, EventArgs e)
|
||||
{
|
||||
KeyBoardVisible = true;
|
||||
}
|
||||
|
||||
private void FormAuftragAuswahl_Shown(object sender, EventArgs e)
|
||||
{
|
||||
this.Width = screen.WorkingArea.Width;
|
||||
this.Height = (int)(screen.WorkingArea.Height * 0.60);
|
||||
this.Height = screen.WorkingArea.Height;
|
||||
this.Location = new Point(0, 0);
|
||||
|
||||
this.panelAuswahl.Height = this.Bottom - this.panelSuchen.Bottom - 20;
|
||||
}
|
||||
|
||||
private async void buttonAbbrechen_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.textBoxKunde.Clear();
|
||||
this.textBoxKunde.ForeColor = Color.Silver;
|
||||
this.textBoxKunde.Text = "Kunde suchen";
|
||||
|
||||
await GetAuftragliste();
|
||||
Load_PanelAuswahl(this.Auftragliste);
|
||||
}
|
||||
|
||||
private void FormAuftragAuswahl_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
if (this.kunde == null & this.auftrag == null) this.DialogResult = DialogResult.Cancel;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -269,7 +269,19 @@ namespace Deckungsbeitrag
|
||||
}
|
||||
kndart.Save();
|
||||
}
|
||||
goto default;
|
||||
if (auftragDictionary.Count > 0)
|
||||
{
|
||||
foreach (var kvp in auftragDictionary)
|
||||
{
|
||||
AuftragArtikel aufart = AuftragArtikel.GetArtikel(kvp.Key);
|
||||
aufart.Gesamt -= (int)kvp.Value;
|
||||
if (aufart.Gesamt == 0) aufart.Erledigt = true;
|
||||
else { aufart.Erledigt = false; Toclose = false; }
|
||||
aufart.Save();
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
case AuftragTyp.SOLL_Verminderung:
|
||||
{
|
||||
@ -353,7 +365,7 @@ namespace Deckungsbeitrag
|
||||
{
|
||||
if (MessageBox.Show("Möchtest du JETZT Etiketten für die erfolgten Änderung drucken?", "FRAGE", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
{
|
||||
if (Funktionen.SonderEtikett_Drucken(this.auftrag.KundeID, dictionary) == DialogResult.OK)
|
||||
if (Funktionen.SonderEtikett_Drucken(this.auftrag.KundeID, dictionary, this.auftrag) == DialogResult.OK)
|
||||
{
|
||||
etikettgedruckt = true;
|
||||
}
|
||||
@ -566,8 +578,15 @@ namespace Deckungsbeitrag
|
||||
if (item.Checked)
|
||||
{
|
||||
auftragArtikel.Erledigt = true;
|
||||
int oldValue = auftragArtikel.Anzahl;
|
||||
int oldValue = auftragArtikel.Gesamt;
|
||||
int newValue = 0;
|
||||
if (this.auftrag.Typ == AuftragTyp.Inventur)
|
||||
{
|
||||
newValue = auftragArtikel.Gesamt;
|
||||
oldValue = auftragArtikel.Anzahl;
|
||||
}
|
||||
|
||||
|
||||
ChangeAnzahl(newValue, oldValue, auftragArtikel);
|
||||
}
|
||||
else auftragArtikel.Erledigt = false;
|
||||
@ -689,7 +708,8 @@ namespace Deckungsbeitrag
|
||||
{
|
||||
KundeArtikel kndart;
|
||||
if (this.auftrag.Typ == AuftragTyp.SOLL_Verminderung) if (newValue > 0) newValue *= -1;
|
||||
diff = oldvalue - (newValue);
|
||||
if (this.auftrag.Typ != AuftragTyp.Inventur || (this.auftrag.Typ == AuftragTyp.Inventur && newValue == 0)) diff = oldvalue - (newValue);
|
||||
else diff = newValue;
|
||||
if (diff != 0) Tosave = true;
|
||||
|
||||
if (_artikel is AuftragArtikel auftragArtikel)
|
||||
@ -746,34 +766,6 @@ namespace Deckungsbeitrag
|
||||
|
||||
ChangeAnzahl(newValue, oldValue, auftragArtikel);
|
||||
|
||||
//if (this.auftrag.Typ == AuftragTyp.SOLL_Verminderung) if (newValue > 0) newValue = newValue * -1;
|
||||
//if (e.Column.Text == "Anzahl") diff = (int)e.Value - (newValue);
|
||||
//if (diff != 0) Tosave = true;
|
||||
|
||||
//if (auftragDictionary.TryGetValue((int)auftragArtikel.AuftragArtikelID, out int val))
|
||||
//{
|
||||
// val = newValue;
|
||||
// if (newValue == 0) e.ListViewItem.Checked = true;
|
||||
//}
|
||||
//else auftragDictionary.Add((int)auftragArtikel.AuftragArtikelID, newValue);
|
||||
|
||||
//KundeArtikel kndart = KundeArtikel.GetKundeArtikelVonArtikelID(this.kunde.KundeID, auftragArtikel.ArtikelID);
|
||||
|
||||
//int reklamation = kndart.Reklamation;
|
||||
//int fehlmenge = kndart.Fehlmenge;
|
||||
//int stand = kndart.Stand;
|
||||
//int korrektur = kndart.Korrektur;
|
||||
//KorrigiereBestand(diff, ref reklamation, ref fehlmenge, ref stand, ref korrektur);
|
||||
|
||||
//if (dictionary.TryGetValue((int)kndart.KundeArtikelID, out int[] value))
|
||||
//{
|
||||
// for (int i = 0; i < value.Length; i++)
|
||||
// {
|
||||
// value[i] += bestand[i];
|
||||
// }
|
||||
//}
|
||||
//else dictionary.Add((int)kndart.KundeArtikelID, bestand);
|
||||
////WriteToCSV(kndart);
|
||||
this.ResumeLayout();
|
||||
this.Cursor = Cursors.Default;
|
||||
|
||||
|
||||
@ -41,12 +41,38 @@ namespace Deckungsbeitrag
|
||||
if (x.GetType() == typeof(Benutzer))
|
||||
{
|
||||
this.benutzer = (Benutzer)x;
|
||||
if (benutzer.Rolle == BenutzerRolle.Expedit)
|
||||
switch (this.benutzer.Rolle)
|
||||
{
|
||||
foreach (TabPage tP in this.tabControlEinstellung.TabPages)
|
||||
{
|
||||
if (!tP.Name.Contains("Drucker")) this.tabControlEinstellung.Controls.Remove(tP);
|
||||
}
|
||||
case BenutzerRolle.Verwaltung:
|
||||
break;
|
||||
case BenutzerRolle.Fahrer:
|
||||
goto default;
|
||||
case BenutzerRolle.Admin:
|
||||
break;
|
||||
case BenutzerRolle.Waschstrasse:
|
||||
goto default;
|
||||
case BenutzerRolle.Master:
|
||||
break;
|
||||
case BenutzerRolle.Expedit:
|
||||
foreach (TabPage tP in this.tabControlEinstellung.TabPages)
|
||||
{
|
||||
if (!tP.Name.Contains("Drucker") & !tP.Name.Contains("Allgemein")) this.tabControlEinstellung.Controls.Remove(tP);
|
||||
}
|
||||
break;
|
||||
case BenutzerRolle.Frottee:
|
||||
foreach (TabPage tP in this.tabControlEinstellung.TabPages)
|
||||
{
|
||||
if (!tP.Name.Contains("Drucker") & !tP.Name.Contains("Allgemein")) this.tabControlEinstellung.Controls.Remove(tP);
|
||||
}
|
||||
break;
|
||||
case BenutzerRolle.Flach:
|
||||
goto default;
|
||||
default:
|
||||
foreach (TabPage tP in this.tabControlEinstellung.TabPages)
|
||||
{
|
||||
this.tabControlEinstellung.Controls.Remove(tP);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -80,9 +106,9 @@ namespace Deckungsbeitrag
|
||||
this.textBoxRatingbild.Text = ConfigurationManager.AppSettings["BildPfad"];
|
||||
|
||||
// Ab hier wurde bereits auf UserSettingsManager umgebaut.
|
||||
this.comboBoxEtikettDrucker.SelectedText = _settings.DruckerEtikett;
|
||||
this.comboBoxTourenlisteDrucker.SelectedText = _settings.DruckerTourenListe;
|
||||
this.comboBoxSWSDrucker.SelectedText = _settings.DruckerSWS;
|
||||
this.comboBoxEtikettDrucker.Text = _settings.DruckerEtikett;
|
||||
this.comboBoxTourenlisteDrucker.Text = _settings.DruckerTourenListe;
|
||||
this.comboBoxSWSDrucker.Text = _settings.DruckerSWS;
|
||||
this.numericUpDownSWSKopien.Value = _settings.CopiesSWS;
|
||||
|
||||
|
||||
|
||||
88
AA-Forms/FormExpedit.Designer.cs
generated
88
AA-Forms/FormExpedit.Designer.cs
generated
@ -60,6 +60,7 @@
|
||||
this.kleinteileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.frotteeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.großteileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.spannleintuchBeendetToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.auftraginfoAnsehenToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.aufgabeErledigtToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.auftragVerschiebenToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
@ -213,9 +214,9 @@
|
||||
this.flowLayoutPanel1.Controls.Add(this.labelZusatz);
|
||||
this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.flowLayoutPanel1.FlowDirection = System.Windows.Forms.FlowDirection.TopDown;
|
||||
this.flowLayoutPanel1.Location = new System.Drawing.Point(3, 26);
|
||||
this.flowLayoutPanel1.Location = new System.Drawing.Point(3, 22);
|
||||
this.flowLayoutPanel1.Name = "flowLayoutPanel1";
|
||||
this.flowLayoutPanel1.Size = new System.Drawing.Size(287, 154);
|
||||
this.flowLayoutPanel1.Size = new System.Drawing.Size(287, 158);
|
||||
this.flowLayoutPanel1.TabIndex = 0;
|
||||
//
|
||||
// labelAnmerkung
|
||||
@ -225,7 +226,7 @@
|
||||
this.labelAnmerkung.ForeColor = System.Drawing.Color.Red;
|
||||
this.labelAnmerkung.Location = new System.Drawing.Point(3, 0);
|
||||
this.labelAnmerkung.Name = "labelAnmerkung";
|
||||
this.labelAnmerkung.Size = new System.Drawing.Size(70, 25);
|
||||
this.labelAnmerkung.Size = new System.Drawing.Size(57, 20);
|
||||
this.labelAnmerkung.TabIndex = 2;
|
||||
this.labelAnmerkung.Text = "label2";
|
||||
//
|
||||
@ -233,9 +234,9 @@
|
||||
//
|
||||
this.labelAufgabe.AutoSize = true;
|
||||
this.labelAufgabe.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.labelAufgabe.Location = new System.Drawing.Point(3, 25);
|
||||
this.labelAufgabe.Location = new System.Drawing.Point(3, 20);
|
||||
this.labelAufgabe.Name = "labelAufgabe";
|
||||
this.labelAufgabe.Size = new System.Drawing.Size(70, 25);
|
||||
this.labelAufgabe.Size = new System.Drawing.Size(57, 20);
|
||||
this.labelAufgabe.TabIndex = 3;
|
||||
this.labelAufgabe.Text = "label3";
|
||||
//
|
||||
@ -243,9 +244,9 @@
|
||||
//
|
||||
this.labelZusatz.AutoSize = true;
|
||||
this.labelZusatz.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.labelZusatz.Location = new System.Drawing.Point(3, 50);
|
||||
this.labelZusatz.Location = new System.Drawing.Point(3, 40);
|
||||
this.labelZusatz.Name = "labelZusatz";
|
||||
this.labelZusatz.Size = new System.Drawing.Size(70, 25);
|
||||
this.labelZusatz.Size = new System.Drawing.Size(57, 20);
|
||||
this.labelZusatz.TabIndex = 4;
|
||||
this.labelZusatz.Text = "label4";
|
||||
//
|
||||
@ -299,9 +300,9 @@
|
||||
// tabPageRampe
|
||||
//
|
||||
this.tabPageRampe.Controls.Add(this.objectListViewRampe);
|
||||
this.tabPageRampe.Location = new System.Drawing.Point(4, 39);
|
||||
this.tabPageRampe.Location = new System.Drawing.Point(4, 34);
|
||||
this.tabPageRampe.Name = "tabPageRampe";
|
||||
this.tabPageRampe.Size = new System.Drawing.Size(1170, 579);
|
||||
this.tabPageRampe.Size = new System.Drawing.Size(1170, 584);
|
||||
this.tabPageRampe.TabIndex = 3;
|
||||
this.tabPageRampe.Text = "Rampe";
|
||||
this.tabPageRampe.UseVisualStyleBackColor = true;
|
||||
@ -320,7 +321,7 @@
|
||||
this.objectListViewRampe.Location = new System.Drawing.Point(0, 0);
|
||||
this.objectListViewRampe.Name = "objectListViewRampe";
|
||||
this.objectListViewRampe.SelectColumnsOnRightClickBehaviour = BrightIdeasSoftware.ObjectListView.ColumnSelectBehaviour.Submenu;
|
||||
this.objectListViewRampe.Size = new System.Drawing.Size(1170, 579);
|
||||
this.objectListViewRampe.Size = new System.Drawing.Size(1170, 584);
|
||||
this.objectListViewRampe.Sorting = System.Windows.Forms.SortOrder.Ascending;
|
||||
this.objectListViewRampe.TabIndex = 2;
|
||||
this.objectListViewRampe.TintSortColumn = true;
|
||||
@ -346,7 +347,7 @@
|
||||
this.auftragVerschiebenToolStripMenuItem,
|
||||
this.auftragLöschenToolStripMenuItem});
|
||||
this.contextMenuStripExpedit.Name = "contextMenuStripExpedit";
|
||||
this.contextMenuStripExpedit.Size = new System.Drawing.Size(240, 134);
|
||||
this.contextMenuStripExpedit.Size = new System.Drawing.Size(204, 134);
|
||||
this.contextMenuStripExpedit.Opening += new System.ComponentModel.CancelEventHandler(this.ContextMenuStripExpedit_Opening);
|
||||
//
|
||||
// bearbeitenToolStripMenuItem
|
||||
@ -360,7 +361,7 @@
|
||||
this.abteilungStatusToolStripMenuItem});
|
||||
this.bearbeitenToolStripMenuItem.Image = global::Deckungsbeitrag.Properties.Resources.PenOne_16x;
|
||||
this.bearbeitenToolStripMenuItem.Name = "bearbeitenToolStripMenuItem";
|
||||
this.bearbeitenToolStripMenuItem.Size = new System.Drawing.Size(239, 26);
|
||||
this.bearbeitenToolStripMenuItem.Size = new System.Drawing.Size(203, 26);
|
||||
this.bearbeitenToolStripMenuItem.Text = "Bearbeiten";
|
||||
this.bearbeitenToolStripMenuItem.DropDownOpening += new System.EventHandler(this.ContextMenuStrip_DropDownOpening);
|
||||
//
|
||||
@ -368,7 +369,7 @@
|
||||
//
|
||||
this.liefertagToolStripMenuItem.AccessibleName = "Liefertag";
|
||||
this.liefertagToolStripMenuItem.Name = "liefertagToolStripMenuItem";
|
||||
this.liefertagToolStripMenuItem.Size = new System.Drawing.Size(227, 26);
|
||||
this.liefertagToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.liefertagToolStripMenuItem.Text = "Liefertag";
|
||||
this.liefertagToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripBearbeiten_Click);
|
||||
//
|
||||
@ -376,7 +377,7 @@
|
||||
//
|
||||
this.statusToolStripMenuItem.AccessibleName = "Status";
|
||||
this.statusToolStripMenuItem.Name = "statusToolStripMenuItem";
|
||||
this.statusToolStripMenuItem.Size = new System.Drawing.Size(227, 26);
|
||||
this.statusToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.statusToolStripMenuItem.Text = "Status";
|
||||
this.statusToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripBearbeiten_Click);
|
||||
//
|
||||
@ -384,7 +385,7 @@
|
||||
//
|
||||
this.containerSauberToolStripMenuItem.AccessibleName = "ContainerClean";
|
||||
this.containerSauberToolStripMenuItem.Name = "containerSauberToolStripMenuItem";
|
||||
this.containerSauberToolStripMenuItem.Size = new System.Drawing.Size(227, 26);
|
||||
this.containerSauberToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.containerSauberToolStripMenuItem.Text = "Container Sauber";
|
||||
this.containerSauberToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripBearbeiten_Click);
|
||||
//
|
||||
@ -392,7 +393,7 @@
|
||||
//
|
||||
this.containerSchmutzigToolStripMenuItem.AccessibleName = "ContainerDirt";
|
||||
this.containerSchmutzigToolStripMenuItem.Name = "containerSchmutzigToolStripMenuItem";
|
||||
this.containerSchmutzigToolStripMenuItem.Size = new System.Drawing.Size(227, 26);
|
||||
this.containerSchmutzigToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.containerSchmutzigToolStripMenuItem.Text = "Container schmutzig";
|
||||
this.containerSchmutzigToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripBearbeiten_Click);
|
||||
//
|
||||
@ -400,7 +401,7 @@
|
||||
//
|
||||
this.tourToolStripMenuItem.AccessibleName = "Tour";
|
||||
this.tourToolStripMenuItem.Name = "tourToolStripMenuItem";
|
||||
this.tourToolStripMenuItem.Size = new System.Drawing.Size(227, 26);
|
||||
this.tourToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.tourToolStripMenuItem.Text = "Tour";
|
||||
this.tourToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripBearbeiten_Click);
|
||||
//
|
||||
@ -409,16 +410,17 @@
|
||||
this.abteilungStatusToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.kleinteileToolStripMenuItem,
|
||||
this.frotteeToolStripMenuItem,
|
||||
this.großteileToolStripMenuItem});
|
||||
this.großteileToolStripMenuItem,
|
||||
this.spannleintuchBeendetToolStripMenuItem});
|
||||
this.abteilungStatusToolStripMenuItem.Name = "abteilungStatusToolStripMenuItem";
|
||||
this.abteilungStatusToolStripMenuItem.Size = new System.Drawing.Size(227, 26);
|
||||
this.abteilungStatusToolStripMenuItem.Size = new System.Drawing.Size(184, 22);
|
||||
this.abteilungStatusToolStripMenuItem.Text = "Abteilung Status";
|
||||
//
|
||||
// kleinteileToolStripMenuItem
|
||||
//
|
||||
this.kleinteileToolStripMenuItem.AccessibleName = "Kleinteile";
|
||||
this.kleinteileToolStripMenuItem.Name = "kleinteileToolStripMenuItem";
|
||||
this.kleinteileToolStripMenuItem.Size = new System.Drawing.Size(224, 26);
|
||||
this.kleinteileToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
|
||||
this.kleinteileToolStripMenuItem.Text = "Kleinteile beendet";
|
||||
this.kleinteileToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripAbteilungStatus_Click);
|
||||
//
|
||||
@ -426,7 +428,7 @@
|
||||
//
|
||||
this.frotteeToolStripMenuItem.AccessibleName = "Frottee";
|
||||
this.frotteeToolStripMenuItem.Name = "frotteeToolStripMenuItem";
|
||||
this.frotteeToolStripMenuItem.Size = new System.Drawing.Size(224, 26);
|
||||
this.frotteeToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
|
||||
this.frotteeToolStripMenuItem.Text = "Frottee beendet";
|
||||
this.frotteeToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripAbteilungStatus_Click);
|
||||
//
|
||||
@ -434,15 +436,23 @@
|
||||
//
|
||||
this.großteileToolStripMenuItem.AccessibleName = "Grossteile";
|
||||
this.großteileToolStripMenuItem.Name = "großteileToolStripMenuItem";
|
||||
this.großteileToolStripMenuItem.Size = new System.Drawing.Size(224, 26);
|
||||
this.großteileToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
|
||||
this.großteileToolStripMenuItem.Text = "Großteile beendet";
|
||||
this.großteileToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripAbteilungStatus_Click);
|
||||
//
|
||||
// spannleintuchBeendetToolStripMenuItem
|
||||
//
|
||||
this.spannleintuchBeendetToolStripMenuItem.AccessibleName = "Spannleintuch";
|
||||
this.spannleintuchBeendetToolStripMenuItem.Name = "spannleintuchBeendetToolStripMenuItem";
|
||||
this.spannleintuchBeendetToolStripMenuItem.Size = new System.Drawing.Size(196, 22);
|
||||
this.spannleintuchBeendetToolStripMenuItem.Text = "Spannleintuch beendet";
|
||||
this.spannleintuchBeendetToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripAbteilungStatus_Click);
|
||||
//
|
||||
// auftraginfoAnsehenToolStripMenuItem
|
||||
//
|
||||
this.auftraginfoAnsehenToolStripMenuItem.Image = global::Deckungsbeitrag.Properties.Resources.InformationSymbol_16x;
|
||||
this.auftraginfoAnsehenToolStripMenuItem.Name = "auftraginfoAnsehenToolStripMenuItem";
|
||||
this.auftraginfoAnsehenToolStripMenuItem.Size = new System.Drawing.Size(239, 26);
|
||||
this.auftraginfoAnsehenToolStripMenuItem.Size = new System.Drawing.Size(203, 26);
|
||||
this.auftraginfoAnsehenToolStripMenuItem.Text = "Auftraginfo ansehen";
|
||||
this.auftraginfoAnsehenToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripAuftragInfo_Click);
|
||||
//
|
||||
@ -450,7 +460,7 @@
|
||||
//
|
||||
this.aufgabeErledigtToolStripMenuItem.Image = global::Deckungsbeitrag.Properties.Resources.Checkmark_blue_16x;
|
||||
this.aufgabeErledigtToolStripMenuItem.Name = "aufgabeErledigtToolStripMenuItem";
|
||||
this.aufgabeErledigtToolStripMenuItem.Size = new System.Drawing.Size(239, 26);
|
||||
this.aufgabeErledigtToolStripMenuItem.Size = new System.Drawing.Size(203, 26);
|
||||
this.aufgabeErledigtToolStripMenuItem.Text = "Aufgabe erledigt";
|
||||
this.aufgabeErledigtToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripAufgabeErledigt_Click);
|
||||
//
|
||||
@ -458,7 +468,7 @@
|
||||
//
|
||||
this.auftragVerschiebenToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("auftragVerschiebenToolStripMenuItem.Image")));
|
||||
this.auftragVerschiebenToolStripMenuItem.Name = "auftragVerschiebenToolStripMenuItem";
|
||||
this.auftragVerschiebenToolStripMenuItem.Size = new System.Drawing.Size(239, 26);
|
||||
this.auftragVerschiebenToolStripMenuItem.Size = new System.Drawing.Size(203, 26);
|
||||
this.auftragVerschiebenToolStripMenuItem.Text = "In Aufträge Verschieben";
|
||||
this.auftragVerschiebenToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripAuftragVerschieben_Click);
|
||||
//
|
||||
@ -466,17 +476,17 @@
|
||||
//
|
||||
this.auftragLöschenToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("auftragLöschenToolStripMenuItem.Image")));
|
||||
this.auftragLöschenToolStripMenuItem.Name = "auftragLöschenToolStripMenuItem";
|
||||
this.auftragLöschenToolStripMenuItem.Size = new System.Drawing.Size(239, 26);
|
||||
this.auftragLöschenToolStripMenuItem.Size = new System.Drawing.Size(203, 26);
|
||||
this.auftragLöschenToolStripMenuItem.Text = "Auftrag Löschen";
|
||||
this.auftragLöschenToolStripMenuItem.Click += new System.EventHandler(this.ContextMenuStripAuftragDelete_Click);
|
||||
//
|
||||
// tabPageSonder
|
||||
//
|
||||
this.tabPageSonder.Controls.Add(this.objectListViewSonder);
|
||||
this.tabPageSonder.Location = new System.Drawing.Point(4, 39);
|
||||
this.tabPageSonder.Location = new System.Drawing.Point(4, 34);
|
||||
this.tabPageSonder.Name = "tabPageSonder";
|
||||
this.tabPageSonder.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPageSonder.Size = new System.Drawing.Size(1170, 579);
|
||||
this.tabPageSonder.Size = new System.Drawing.Size(1170, 584);
|
||||
this.tabPageSonder.TabIndex = 1;
|
||||
this.tabPageSonder.Text = "Sonderaufträge";
|
||||
this.tabPageSonder.UseVisualStyleBackColor = true;
|
||||
@ -496,7 +506,7 @@
|
||||
this.objectListViewSonder.Location = new System.Drawing.Point(3, 3);
|
||||
this.objectListViewSonder.Name = "objectListViewSonder";
|
||||
this.objectListViewSonder.SelectColumnsOnRightClickBehaviour = BrightIdeasSoftware.ObjectListView.ColumnSelectBehaviour.Submenu;
|
||||
this.objectListViewSonder.Size = new System.Drawing.Size(1164, 573);
|
||||
this.objectListViewSonder.Size = new System.Drawing.Size(1164, 578);
|
||||
this.objectListViewSonder.Sorting = System.Windows.Forms.SortOrder.Ascending;
|
||||
this.objectListViewSonder.TabIndex = 2;
|
||||
this.objectListViewSonder.TintSortColumn = true;
|
||||
@ -515,10 +525,10 @@
|
||||
// tabPageGeschaeft
|
||||
//
|
||||
this.tabPageGeschaeft.Controls.Add(this.objectListViewGeschaeft);
|
||||
this.tabPageGeschaeft.Location = new System.Drawing.Point(4, 39);
|
||||
this.tabPageGeschaeft.Location = new System.Drawing.Point(4, 34);
|
||||
this.tabPageGeschaeft.Name = "tabPageGeschaeft";
|
||||
this.tabPageGeschaeft.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPageGeschaeft.Size = new System.Drawing.Size(1170, 579);
|
||||
this.tabPageGeschaeft.Size = new System.Drawing.Size(1170, 584);
|
||||
this.tabPageGeschaeft.TabIndex = 2;
|
||||
this.tabPageGeschaeft.Text = "Geschäft";
|
||||
this.tabPageGeschaeft.UseVisualStyleBackColor = true;
|
||||
@ -537,7 +547,7 @@
|
||||
this.objectListViewGeschaeft.Location = new System.Drawing.Point(3, 3);
|
||||
this.objectListViewGeschaeft.Name = "objectListViewGeschaeft";
|
||||
this.objectListViewGeschaeft.SelectColumnsOnRightClickBehaviour = BrightIdeasSoftware.ObjectListView.ColumnSelectBehaviour.Submenu;
|
||||
this.objectListViewGeschaeft.Size = new System.Drawing.Size(1164, 573);
|
||||
this.objectListViewGeschaeft.Size = new System.Drawing.Size(1164, 578);
|
||||
this.objectListViewGeschaeft.Sorting = System.Windows.Forms.SortOrder.Ascending;
|
||||
this.objectListViewGeschaeft.TabIndex = 2;
|
||||
this.objectListViewGeschaeft.TintSortColumn = true;
|
||||
@ -560,10 +570,10 @@
|
||||
// tabPageAll
|
||||
//
|
||||
this.tabPageAll.Controls.Add(this.objectListViewAuftrag);
|
||||
this.tabPageAll.Location = new System.Drawing.Point(4, 39);
|
||||
this.tabPageAll.Location = new System.Drawing.Point(4, 34);
|
||||
this.tabPageAll.Name = "tabPageAll";
|
||||
this.tabPageAll.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPageAll.Size = new System.Drawing.Size(1170, 579);
|
||||
this.tabPageAll.Size = new System.Drawing.Size(1170, 584);
|
||||
this.tabPageAll.TabIndex = 0;
|
||||
this.tabPageAll.Text = "Aufträge heute";
|
||||
this.tabPageAll.UseVisualStyleBackColor = true;
|
||||
@ -582,7 +592,8 @@
|
||||
this.objectListViewAuftrag.Location = new System.Drawing.Point(3, 3);
|
||||
this.objectListViewAuftrag.Name = "objectListViewAuftrag";
|
||||
this.objectListViewAuftrag.SelectColumnsOnRightClickBehaviour = BrightIdeasSoftware.ObjectListView.ColumnSelectBehaviour.Submenu;
|
||||
this.objectListViewAuftrag.Size = new System.Drawing.Size(1164, 573);
|
||||
this.objectListViewAuftrag.ShowItemCountOnGroups = true;
|
||||
this.objectListViewAuftrag.Size = new System.Drawing.Size(1164, 578);
|
||||
this.objectListViewAuftrag.Sorting = System.Windows.Forms.SortOrder.Ascending;
|
||||
this.objectListViewAuftrag.TabIndex = 1;
|
||||
this.objectListViewAuftrag.TintSortColumn = true;
|
||||
@ -626,9 +637,9 @@
|
||||
// tabPageVorbereitet
|
||||
//
|
||||
this.tabPageVorbereitet.Controls.Add(this.objectListViewVorbereitet);
|
||||
this.tabPageVorbereitet.Location = new System.Drawing.Point(4, 39);
|
||||
this.tabPageVorbereitet.Location = new System.Drawing.Point(4, 34);
|
||||
this.tabPageVorbereitet.Name = "tabPageVorbereitet";
|
||||
this.tabPageVorbereitet.Size = new System.Drawing.Size(1170, 579);
|
||||
this.tabPageVorbereitet.Size = new System.Drawing.Size(1170, 584);
|
||||
this.tabPageVorbereitet.TabIndex = 4;
|
||||
this.tabPageVorbereitet.Text = "Vorbereitet";
|
||||
this.tabPageVorbereitet.UseVisualStyleBackColor = true;
|
||||
@ -648,7 +659,7 @@
|
||||
this.objectListViewVorbereitet.Location = new System.Drawing.Point(0, 0);
|
||||
this.objectListViewVorbereitet.Name = "objectListViewVorbereitet";
|
||||
this.objectListViewVorbereitet.SelectColumnsOnRightClickBehaviour = BrightIdeasSoftware.ObjectListView.ColumnSelectBehaviour.Submenu;
|
||||
this.objectListViewVorbereitet.Size = new System.Drawing.Size(1170, 579);
|
||||
this.objectListViewVorbereitet.Size = new System.Drawing.Size(1170, 584);
|
||||
this.objectListViewVorbereitet.Sorting = System.Windows.Forms.SortOrder.Ascending;
|
||||
this.objectListViewVorbereitet.TabIndex = 2;
|
||||
this.objectListViewVorbereitet.TintSortColumn = true;
|
||||
@ -792,5 +803,6 @@
|
||||
private System.Windows.Forms.ToolStripMenuItem frotteeToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem kleinteileToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem großteileToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem spannleintuchBeendetToolStripMenuItem;
|
||||
}
|
||||
}
|
||||
@ -181,6 +181,7 @@ namespace Deckungsbeitrag
|
||||
}
|
||||
private void FormExpedit_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
_settings.Load();
|
||||
|
||||
// === SPEICHERN DES OLV-STATUS ===
|
||||
_settings.OLV_State = this.objectListViewAuftrag.SaveState();
|
||||
@ -398,6 +399,7 @@ namespace Deckungsbeitrag
|
||||
if (item.AccessibleName == "Kleinteile") { _auftrag.Abteilungen |= AbteilungsStatus.KleinteileBeendet; _auftrag.Save(); }
|
||||
if (item.AccessibleName == "Grossteile") { _auftrag.Abteilungen |= AbteilungsStatus.GrossteileBeendet; _auftrag.Save(); }
|
||||
if (item.AccessibleName == "Frottee") { _auftrag.Abteilungen |= AbteilungsStatus.FrotteeBeendet; _auftrag.Save(); }
|
||||
if (item.AccessibleName == "Spannleintuch") { _auftrag.Abteilungen |= AbteilungsStatus.SpannleintuchBeendet; _auftrag.Save(); }
|
||||
|
||||
Neuladen_OLV(olv);
|
||||
}
|
||||
@ -489,11 +491,11 @@ namespace Deckungsbeitrag
|
||||
GetUnvisibleColumns(olv);
|
||||
|
||||
// === RESTORE OLV-STATUS ===
|
||||
if (olv.Name.Contains("Auftrag")) this.objectListViewAuftrag.RestoreState(_settings.OLV_State);
|
||||
if (olv.Name.Contains("Rampe")) this.objectListViewRampe.RestoreState(_settings.OLV_Rampe_State);
|
||||
if (olv.Name.Contains("Vorbereitet")) this.objectListViewVorbereitet.RestoreState(_settings.OLV_Vorbereitet_State);
|
||||
if (olv.Name.Contains("Sonder")) this.objectListViewSonder.RestoreState(_settings.OLV_Sonder_State);
|
||||
if (olv.Name.Contains("Geschaeft")) this.objectListViewGeschaeft.RestoreState(_settings.OLV_Geschaeft_State);
|
||||
if (olv.Name.Contains("Auftrag") && _settings.OLV_State != null && _settings.OLV_State.Length > 0) this.objectListViewAuftrag.RestoreState(_settings.OLV_State);
|
||||
if (olv.Name.Contains("Rampe") && _settings.OLV_Rampe_State != null && _settings.OLV_Rampe_State.Length > 0) this.objectListViewRampe.RestoreState(_settings.OLV_Rampe_State);
|
||||
if (olv.Name.Contains("Vorbereitet") && _settings.OLV_Vorbereitet_State != null && _settings.OLV_Vorbereitet_State.Length > 0) this.objectListViewVorbereitet.RestoreState(_settings.OLV_Vorbereitet_State);
|
||||
if (olv.Name.Contains("Sonder") && _settings.OLV_Sonder_State != null && _settings.OLV_Sonder_State.Length > 0) this.objectListViewSonder.RestoreState(_settings.OLV_Sonder_State);
|
||||
if (olv.Name.Contains("Geschaeft") && _settings.OLV_Geschaeft_State != null && _settings.OLV_Geschaeft_State.Length > 0) this.objectListViewGeschaeft.RestoreState(_settings.OLV_Geschaeft_State);
|
||||
|
||||
// === SPALTENBREITE ANPASSEN ===
|
||||
olv = Funktionen.Columns_Resize(null, olv).olv;
|
||||
@ -673,7 +675,7 @@ namespace Deckungsbeitrag
|
||||
}
|
||||
|
||||
// Abteilungstatus wird farblich gekennzeichnet
|
||||
if (e.Column.Text == "FR" || e.Column.Text == "KT" || e.Column.Text == "GT")
|
||||
if (e.Column.Text == "FR" || e.Column.Text == "KT" || e.Column.Text == "GT" || e.Column.Text == "SL")
|
||||
{
|
||||
if (e.CellValue.ToString() == "☑")
|
||||
{
|
||||
@ -706,6 +708,13 @@ namespace Deckungsbeitrag
|
||||
|
||||
}
|
||||
|
||||
if (e.Column.Text == "Liefertag")
|
||||
{
|
||||
if (DateTime.TryParse(e.CellValue.ToString(), out DateTime dt))
|
||||
{
|
||||
if (dt < DateTime.Today) e.SubItem.ForeColor = Color.Red;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
private void ObjectListViewAuftrag_FormatRow(object sender, FormatRowEventArgs e)
|
||||
@ -714,8 +723,8 @@ namespace Deckungsbeitrag
|
||||
ObjectListView olv = sender as ObjectListView;
|
||||
View_Auftrag_Expedit vwAuftrag = e.Model as View_Auftrag_Expedit;
|
||||
|
||||
if (vwAuftrag.FrotteeStatus > 1 & vwAuftrag.KleinteileStatus > 1 & vwAuftrag.GrossteileStatus > 1) isFertig = true;
|
||||
if (vwAuftrag.FrotteeStatus > 2 & vwAuftrag.KleinteileStatus > 2 & vwAuftrag.GrossteileStatus > 2) isFertig = false;
|
||||
if (vwAuftrag.FrotteeStatus > 1 & vwAuftrag.KleinteileStatus > 1 & vwAuftrag.GrossteileStatus > 1 & vwAuftrag.SpannleintuchStatus > 1) isFertig = true;
|
||||
if (vwAuftrag.FrotteeStatus > 2 & vwAuftrag.KleinteileStatus > 2 & vwAuftrag.GrossteileStatus > 2 & vwAuftrag.SpannleintuchStatus > 2) isFertig = false;
|
||||
|
||||
if (this.benutzer.Rolle != BenutzerRolle.Frottee & isFertig)
|
||||
{
|
||||
@ -735,7 +744,7 @@ namespace Deckungsbeitrag
|
||||
else expAuftrag = (View_Auftrag_Expedit)e.Model;
|
||||
Auftrag _auftrag = Auftrag.GetAuftrag(expAuftrag.AuftragID);
|
||||
|
||||
if (expAuftrag.FrotteeStatus == 1 || expAuftrag.KleinteileStatus == 1 || expAuftrag.GrossteileStatus == 1) ToPrint = false;
|
||||
if (expAuftrag.FrotteeStatus == 1 || expAuftrag.KleinteileStatus == 1 || expAuftrag.GrossteileStatus == 1 || expAuftrag.SpannleintuchStatus == 1) ToPrint = false;
|
||||
else ToPrint = true;
|
||||
|
||||
if (_auftrag.Status != AuftragStatus.Fertig)
|
||||
@ -912,16 +921,8 @@ namespace Deckungsbeitrag
|
||||
|
||||
this.auftrag = auftrag;
|
||||
|
||||
if (this.auftrag.ContainerClean == 0 & this.auftrag.Typ < AuftragTyp.Inventur)
|
||||
{
|
||||
if (meldung.NoCleanContainer() == DialogResult.OK)
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!HandleContainerCleanChange())
|
||||
return;
|
||||
}
|
||||
if (!HandleContainerCleanChange())
|
||||
return;
|
||||
|
||||
Auftrag_Fertig();
|
||||
}
|
||||
@ -1347,7 +1348,7 @@ namespace Deckungsbeitrag
|
||||
break;
|
||||
case BenutzerRolle.Frottee:
|
||||
this.buttonEtikettenDrucken.Visible = this.buttonNeuerAuftrag.Visible = this.buttonSWS_Drucken.Visible = false;
|
||||
this.buttonStats.Visible = this.buttonEinstellung.Visible = false; // buttonReklamation einblenden wenn Frottee-Expedit auch Reklamation bearbeitet.
|
||||
this.buttonStats.Visible = false; // buttonReklamation einblenden wenn Frottee-Expedit auch Reklamation bearbeitet.
|
||||
foreach(TabPage tab in this.tabControlAuftragList.TabPages)
|
||||
{
|
||||
if (tab.Text == "Vorbereitet" || tab.Text == "Rampe") tabControlAuftragList.TabPages.Remove(tab);
|
||||
@ -1637,8 +1638,36 @@ namespace Deckungsbeitrag
|
||||
//TODO: Wie soll es weiter gehen?
|
||||
}
|
||||
|
||||
private void FormExpedit_MouseMove(object sender, MouseEventArgs e)
|
||||
private void objectListViewAuftrag_ColumnClick(object sender, ColumnClickEventArgs e)
|
||||
{
|
||||
var olv = (ObjectListView)sender;
|
||||
var olvStatus = olv.AllColumns.Cast<OLVColumn>().FirstOrDefault(c => c.Text == "Status");
|
||||
var olvLiefertag = olv.AllColumns.Cast<OLVColumn>().FirstOrDefault(c => c.Text == "Liefertag");
|
||||
|
||||
// Wenn auf Status geklickt: nach Status gruppieren
|
||||
if (e.Column == olvStatus.Index)
|
||||
{
|
||||
// Gruppierung nach Status ändern
|
||||
olv.AlwaysGroupByColumn = olvStatus; // Fixierung entfernen
|
||||
olv.AlwaysGroupBySortOrder = SortOrder.None; // Nach Status gruppieren
|
||||
|
||||
// Innerhalb der Gruppen nach Liefertag ASC sortieren
|
||||
olv.SecondarySortColumn = olvLiefertag;
|
||||
olv.SecondarySortOrder = SortOrder.Ascending;
|
||||
|
||||
// Sorting erzwingen
|
||||
olv.BeginUpdate();
|
||||
olv.BuildGroups();
|
||||
olv.Sort();
|
||||
olv.EndUpdate();
|
||||
}
|
||||
else
|
||||
{
|
||||
// Für andere Spalten: normale Sortierung, aber Liefertag als Tie-Breaker
|
||||
olv.SecondarySortColumn = olvLiefertag;
|
||||
olv.SecondarySortOrder = SortOrder.Ascending;
|
||||
olv.Sort(e.Column);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -65,7 +65,8 @@ namespace Deckungsbeitrag
|
||||
{
|
||||
if (userid.Contains("kleinteile")) { kategorie = ArtikelKategorie.Kleinteile; }
|
||||
if (userid.Contains("grossteile")) { kategorie = ArtikelKategorie.Grossteile; }
|
||||
if (userid.Contains("frottee") || userid.Contains("spannleintuch")) { kategorie = ArtikelKategorie.Frottee; }
|
||||
if (userid.Contains("frottee")) { kategorie = ArtikelKategorie.Frottee; }
|
||||
if (userid.Contains("spannleintuch")) { kategorie = ArtikelKategorie.Spannleintuch; }
|
||||
}
|
||||
|
||||
//Kunde wird durch Scan oder Handeingabe Ausgewählt.
|
||||
@ -79,7 +80,12 @@ namespace Deckungsbeitrag
|
||||
this.kunde = auswahl.kunde;
|
||||
this.auftrag = auswahl.auftrag;
|
||||
}
|
||||
else this.Close();
|
||||
else
|
||||
{
|
||||
this.kunde = null;
|
||||
this.auftrag = null;
|
||||
this.Close();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -141,9 +147,13 @@ namespace Deckungsbeitrag
|
||||
if (this.benutzer == null | (userid != null && !userid.Contains("reklamation")))
|
||||
{
|
||||
// AbteilungsStatus Begonnen wird hier gesetzt.
|
||||
if (userid.Contains("kleinteile")) { auftrag.Abteilungen |= AbteilungsStatus.KleinteileBegonnen; auftrag.Save(); }
|
||||
if (userid.Contains("grossteile")) { auftrag.Abteilungen |= AbteilungsStatus.GrossteileBegonnen; auftrag.Save(); }
|
||||
if (userid.Contains("frottee") || userid.Contains("spannleintuch")) { auftrag.Abteilungen |= AbteilungsStatus.FrotteeBegonnen; auftrag.Save(); }
|
||||
if (userid.Contains("kleinteile")) { auftrag.Abteilungen |= AbteilungsStatus.KleinteileBegonnen; }
|
||||
if (userid.Contains("grossteile")) { auftrag.Abteilungen |= AbteilungsStatus.GrossteileBegonnen; }
|
||||
if (userid.Contains("frottee")) { auftrag.Abteilungen |= AbteilungsStatus.FrotteeBegonnen; }
|
||||
if (userid.Contains("spannleintuch")) { auftrag.Abteilungen |= AbteilungsStatus.SpannleintuchBegonnen; }
|
||||
|
||||
auftrag.MaschineID = Maschine.GetMaschine(null, userid).MaschineID;
|
||||
auftrag.Save();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -172,7 +182,16 @@ namespace Deckungsbeitrag
|
||||
return;
|
||||
}
|
||||
|
||||
foreach (Button btn in this.tableLayoutPanelArtikel.Controls) btn.Tag = btn.Text = null;
|
||||
for (int j = 0; j < artZahl.Length; j++)
|
||||
{
|
||||
artZahl[j] = 0;
|
||||
}
|
||||
foreach (Button btn in this.tableLayoutPanelArtikel.Controls)
|
||||
{
|
||||
btn.Tag = null;
|
||||
if (int.TryParse(btn.Name.Substring(9, 1), out int x)) artZahl[x - 1]++;
|
||||
btn.Text = AktualisiereButtonText(btn.Text, artZahl[x - 1]);
|
||||
}
|
||||
this.groupBoxArtikel.Visible = true;
|
||||
this.tableLayoutPanelArtikel.Visible = true;
|
||||
// Buttons werden den Artikeln aus der Artikelliste zugewiesen. Unterschied zwischen Frotteewäsche, Spannleintüchern, Großteilen und Kleinteilen
|
||||
@ -418,16 +437,20 @@ namespace Deckungsbeitrag
|
||||
Auftrag _auftrag = Auftrag.GetAuftrag(auftrag.AuftragID);
|
||||
auftrag = _auftrag;
|
||||
|
||||
foreach (Button btn in this.tableLayoutPanelArtikel.Controls.OfType<Button>())
|
||||
if (tableLayoutPanelArtikel.Visible)
|
||||
{
|
||||
KundeArtikel kndart = null;
|
||||
if (btn.Enabled)
|
||||
foreach (Button btn in this.tableLayoutPanelArtikel.Controls.OfType<Button>())
|
||||
{
|
||||
kndart = (KundeArtikel)btn.Tag;
|
||||
kndart.Save();
|
||||
KundeArtikel kndart = null;
|
||||
if (btn.Enabled)
|
||||
{
|
||||
kndart = (KundeArtikel)btn.Tag;
|
||||
kndart.Save();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (auftrag != null)
|
||||
{
|
||||
// Controls werden durchgegangen und ausgeblendet oder der Text entfernt.
|
||||
@ -473,24 +496,43 @@ namespace Deckungsbeitrag
|
||||
else
|
||||
{
|
||||
// AbteilungsStatus für Kleinteile und Großteile wird hier gesetzt.
|
||||
if (!userid.Contains("frottee") & !userid.Contains("spannleintuch"))
|
||||
if (!userid.Contains("frottee"))
|
||||
{
|
||||
if (userid.Contains("kleinteile")) { auftrag.Abteilungen |= AbteilungsStatus.KleinteileBeendet; auftrag.Save(); }
|
||||
if (userid.Contains("grossteile")) { auftrag.Abteilungen |= AbteilungsStatus.GrossteileBeendet; auftrag.Save(); }
|
||||
if (userid.Contains("spannleintuch")) { auftrag.Abteilungen |= AbteilungsStatus.SpannleintuchBeendet; auftrag.Save(); }
|
||||
}
|
||||
else { auftrag.Save(); }
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//Kunde wird durch Scan oder Handeingabe Ausgewählt.
|
||||
await Open_Liste();
|
||||
if ((userid != null && userid.Contains("reklamation")) || (this.benutzer != null && this.benutzer.Rolle == BenutzerRolle.Expedit) || (this.benutzer != null && this.benutzer.Rolle == BenutzerRolle.Frottee)) await Open_Liste();
|
||||
else
|
||||
{
|
||||
FormAuftragAuswahl auswahl = new FormAuftragAuswahl();
|
||||
if (auswahl.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
this.kunde = auswahl.kunde;
|
||||
this.auftrag = auswahl.auftrag;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.kunde = null;
|
||||
this.auftrag = null;
|
||||
this.Close();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ControlLaden();
|
||||
}
|
||||
private void EtikettDrucken()
|
||||
{
|
||||
if (MessageBox.Show("Möchtest du JETZT Etiketten für die erfolgten Änderung drucken?", "FRAGE", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
{
|
||||
if (Funktionen.SonderEtikett_Drucken((int)this.kunde.KundeID, auftragDictionary) == DialogResult.OK)
|
||||
if (Funktionen.SonderEtikett_Drucken((int)this.kunde.KundeID, auftragDictionary, auftrag) == DialogResult.OK)
|
||||
{
|
||||
etikettgedruckt = true;
|
||||
}
|
||||
|
||||
118
AA-Forms/FormGeschaeftKndAuswahl.Designer.cs
generated
Normal file
118
AA-Forms/FormGeschaeftKndAuswahl.Designer.cs
generated
Normal file
@ -0,0 +1,118 @@
|
||||
namespace Deckungsbeitrag.AA_Forms
|
||||
{
|
||||
partial class FormGeschaeftKndAuswahl
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormGeschaeftKndAuswahl));
|
||||
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.rBAltKunde = new System.Windows.Forms.RadioButton();
|
||||
this.rBNeuKunde = new System.Windows.Forms.RadioButton();
|
||||
this.tableLayoutPanel1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// tableLayoutPanel1
|
||||
//
|
||||
this.tableLayoutPanel1.ColumnCount = 2;
|
||||
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tableLayoutPanel1.Controls.Add(this.rBAltKunde, 0, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.rBNeuKunde, 1, 0);
|
||||
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
|
||||
this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(2);
|
||||
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
|
||||
this.tableLayoutPanel1.RowCount = 1;
|
||||
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tableLayoutPanel1.Size = new System.Drawing.Size(800, 450);
|
||||
this.tableLayoutPanel1.TabIndex = 2;
|
||||
//
|
||||
// rBAltKunde
|
||||
//
|
||||
this.rBAltKunde.AccessibleName = "Bestandskunde";
|
||||
this.rBAltKunde.Appearance = System.Windows.Forms.Appearance.Button;
|
||||
this.rBAltKunde.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.rBAltKunde.FlatAppearance.BorderColor = System.Drawing.Color.White;
|
||||
this.rBAltKunde.FlatAppearance.CheckedBackColor = System.Drawing.Color.White;
|
||||
this.rBAltKunde.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.ActiveCaption;
|
||||
this.rBAltKunde.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.rBAltKunde.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.rBAltKunde.ForeColor = System.Drawing.Color.White;
|
||||
this.rBAltKunde.Location = new System.Drawing.Point(8, 8);
|
||||
this.rBAltKunde.Margin = new System.Windows.Forms.Padding(8);
|
||||
this.rBAltKunde.Name = "rBAltKunde";
|
||||
this.rBAltKunde.Size = new System.Drawing.Size(384, 434);
|
||||
this.rBAltKunde.TabIndex = 1;
|
||||
this.rBAltKunde.Text = "Bestandskunde";
|
||||
this.rBAltKunde.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.rBAltKunde.UseVisualStyleBackColor = true;
|
||||
this.rBAltKunde.CheckedChanged += new System.EventHandler(this.RadioButtons_CheckedChanged);
|
||||
//
|
||||
// rBNeuKunde
|
||||
//
|
||||
this.rBNeuKunde.AccessibleName = "Neukunde";
|
||||
this.rBNeuKunde.Appearance = System.Windows.Forms.Appearance.Button;
|
||||
this.rBNeuKunde.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.rBNeuKunde.FlatAppearance.BorderColor = System.Drawing.Color.White;
|
||||
this.rBNeuKunde.FlatAppearance.CheckedBackColor = System.Drawing.Color.White;
|
||||
this.rBNeuKunde.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.ActiveCaption;
|
||||
this.rBNeuKunde.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.rBNeuKunde.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.rBNeuKunde.ForeColor = System.Drawing.Color.White;
|
||||
this.rBNeuKunde.Location = new System.Drawing.Point(408, 8);
|
||||
this.rBNeuKunde.Margin = new System.Windows.Forms.Padding(8);
|
||||
this.rBNeuKunde.Name = "rBNeuKunde";
|
||||
this.rBNeuKunde.Size = new System.Drawing.Size(384, 434);
|
||||
this.rBNeuKunde.TabIndex = 0;
|
||||
this.rBNeuKunde.Text = "Neukunde";
|
||||
this.rBNeuKunde.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.rBNeuKunde.UseVisualStyleBackColor = true;
|
||||
this.rBNeuKunde.CheckedChanged += new System.EventHandler(this.RadioButtons_CheckedChanged);
|
||||
//
|
||||
// FormGeschaeftKndAuswahl
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(53)))), ((int)(((byte)(101)))));
|
||||
this.ClientSize = new System.Drawing.Size(800, 450);
|
||||
this.Controls.Add(this.tableLayoutPanel1);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FormGeschaeftKndAuswahl";
|
||||
this.Text = "Kundenauswahl";
|
||||
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
|
||||
this.tableLayoutPanel1.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
|
||||
private System.Windows.Forms.RadioButton rBAltKunde;
|
||||
private System.Windows.Forms.RadioButton rBNeuKunde;
|
||||
}
|
||||
}
|
||||
36
AA-Forms/FormGeschaeftKndAuswahl.cs
Normal file
36
AA-Forms/FormGeschaeftKndAuswahl.cs
Normal file
@ -0,0 +1,36 @@
|
||||
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;
|
||||
|
||||
namespace Deckungsbeitrag.AA_Forms
|
||||
{
|
||||
public partial class FormGeschaeftKndAuswahl : Form
|
||||
{
|
||||
public string kundetyp = "Bestandskunde";
|
||||
|
||||
public FormGeschaeftKndAuswahl()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void RadioButtons_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
RadioButton rb = (RadioButton)sender;
|
||||
rb.ForeColor = rb.Checked ? Program.Wirlblau : Color.White;
|
||||
|
||||
// RadioButtons für Kundenauswahl.
|
||||
if (rb.AccessibleName.Contains("kunde"))
|
||||
{
|
||||
kundetyp = rb.AccessibleName;
|
||||
this.DialogResult = DialogResult.OK;
|
||||
this.Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
219
AA-Forms/FormGeschaeftKndAuswahl.resx
Normal file
219
AA-Forms/FormGeschaeftKndAuswahl.resx
Normal file
@ -0,0 +1,219 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
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
|
||||
QmCC
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
823
AA-Forms/FormGeschaeftMain.Designer.cs
generated
Normal file
823
AA-Forms/FormGeschaeftMain.Designer.cs
generated
Normal file
@ -0,0 +1,823 @@
|
||||
namespace Deckungsbeitrag
|
||||
{
|
||||
partial class FormGeschaeftMain
|
||||
{
|
||||
/// <summary>
|
||||
/// Erforderliche Designervariable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Verwendete Ressourcen bereinigen.
|
||||
/// </summary>
|
||||
/// <param name="disposing">True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Vom Windows Form-Designer generierter Code
|
||||
|
||||
/// <summary>
|
||||
/// Erforderliche Methode für die Designerunterstützung.
|
||||
/// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormGeschaeftMain));
|
||||
this.tLPGeschaeft = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.tLPKundeAuswahl = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.tLPKundeNr = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.textBoxKundeNr = new System.Windows.Forms.TextBox();
|
||||
this.label14 = new System.Windows.Forms.Label();
|
||||
this.tLPKundeName = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.textBoxKundeName = new System.Windows.Forms.TextBox();
|
||||
this.label13 = new System.Windows.Forms.Label();
|
||||
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.rBAltKunde = new System.Windows.Forms.RadioButton();
|
||||
this.rBNeuKunde = new System.Windows.Forms.RadioButton();
|
||||
this.tLPKundeDetails = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.tLPKontakt = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.textBoxAnderes = new System.Windows.Forms.TextBox();
|
||||
this.textBoxMail = new System.Windows.Forms.TextBox();
|
||||
this.textBoxTel = new System.Windows.Forms.TextBox();
|
||||
this.label5 = new System.Windows.Forms.Label();
|
||||
this.label7 = new System.Windows.Forms.Label();
|
||||
this.label9 = new System.Windows.Forms.Label();
|
||||
this.tLPAdresse = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.textBoxOrt = new System.Windows.Forms.TextBox();
|
||||
this.textBoxPLZ = new System.Windows.Forms.TextBox();
|
||||
this.textBoxStrasse = new System.Windows.Forms.TextBox();
|
||||
this.label8 = new System.Windows.Forms.Label();
|
||||
this.label6 = new System.Windows.Forms.Label();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.buttonEdit = new System.Windows.Forms.Button();
|
||||
this.tLPAuftrag = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.pictureBoxPlus = new System.Windows.Forms.PictureBox();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.tLPAuftragDetails = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.textBoxNetzanzahl = new System.Windows.Forms.TextBox();
|
||||
this.label12 = new System.Windows.Forms.Label();
|
||||
this.label11 = new System.Windows.Forms.Label();
|
||||
this.dTPAbholtag = new System.Windows.Forms.DateTimePicker();
|
||||
this.rBEigenNetze = new System.Windows.Forms.RadioButton();
|
||||
this.rBFremdNetze = new System.Windows.Forms.RadioButton();
|
||||
this.fLPNetzeScan = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.tLPButtons = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.buttonAbbrechen = new System.Windows.Forms.Button();
|
||||
this.buttonSpeichern = new System.Windows.Forms.Button();
|
||||
this.tLPGeschaeft.SuspendLayout();
|
||||
this.tLPKundeAuswahl.SuspendLayout();
|
||||
this.tLPKundeNr.SuspendLayout();
|
||||
this.tLPKundeName.SuspendLayout();
|
||||
this.tableLayoutPanel1.SuspendLayout();
|
||||
this.tLPKundeDetails.SuspendLayout();
|
||||
this.tLPKontakt.SuspendLayout();
|
||||
this.tLPAdresse.SuspendLayout();
|
||||
this.tLPAuftrag.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBoxPlus)).BeginInit();
|
||||
this.tLPAuftragDetails.SuspendLayout();
|
||||
this.tLPButtons.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// tLPGeschaeft
|
||||
//
|
||||
this.tLPGeschaeft.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(53)))), ((int)(((byte)(101)))));
|
||||
this.tLPGeschaeft.ColumnCount = 1;
|
||||
this.tLPGeschaeft.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tLPGeschaeft.Controls.Add(this.tLPKundeAuswahl, 0, 1);
|
||||
this.tLPGeschaeft.Controls.Add(this.tableLayoutPanel1, 0, 0);
|
||||
this.tLPGeschaeft.Controls.Add(this.tLPKundeDetails, 0, 2);
|
||||
this.tLPGeschaeft.Controls.Add(this.tLPAuftrag, 0, 3);
|
||||
this.tLPGeschaeft.Controls.Add(this.tLPButtons, 0, 4);
|
||||
this.tLPGeschaeft.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tLPGeschaeft.Location = new System.Drawing.Point(0, 0);
|
||||
this.tLPGeschaeft.Name = "tLPGeschaeft";
|
||||
this.tLPGeschaeft.RowCount = 5;
|
||||
this.tLPGeschaeft.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 100F));
|
||||
this.tLPGeschaeft.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPGeschaeft.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPGeschaeft.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tLPGeschaeft.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 100F));
|
||||
this.tLPGeschaeft.Size = new System.Drawing.Size(1419, 833);
|
||||
this.tLPGeschaeft.TabIndex = 0;
|
||||
//
|
||||
// tLPKundeAuswahl
|
||||
//
|
||||
this.tLPKundeAuswahl.AutoSize = true;
|
||||
this.tLPKundeAuswahl.ColumnCount = 2;
|
||||
this.tLPKundeAuswahl.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tLPKundeAuswahl.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tLPKundeAuswahl.Controls.Add(this.tLPKundeNr, 1, 0);
|
||||
this.tLPKundeAuswahl.Controls.Add(this.tLPKundeName, 0, 0);
|
||||
this.tLPKundeAuswahl.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tLPKundeAuswahl.Location = new System.Drawing.Point(3, 103);
|
||||
this.tLPKundeAuswahl.Name = "tLPKundeAuswahl";
|
||||
this.tLPKundeAuswahl.RowCount = 1;
|
||||
this.tLPKundeAuswahl.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPKundeAuswahl.Size = new System.Drawing.Size(1413, 57);
|
||||
this.tLPKundeAuswahl.TabIndex = 7;
|
||||
//
|
||||
// tLPKundeNr
|
||||
//
|
||||
this.tLPKundeNr.AutoSize = true;
|
||||
this.tLPKundeNr.ColumnCount = 2;
|
||||
this.tLPKundeNr.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 200F));
|
||||
this.tLPKundeNr.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tLPKundeNr.Controls.Add(this.textBoxKundeNr, 1, 0);
|
||||
this.tLPKundeNr.Controls.Add(this.label14, 0, 0);
|
||||
this.tLPKundeNr.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tLPKundeNr.Location = new System.Drawing.Point(709, 3);
|
||||
this.tLPKundeNr.Name = "tLPKundeNr";
|
||||
this.tLPKundeNr.RowCount = 1;
|
||||
this.tLPKundeNr.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPKundeNr.Size = new System.Drawing.Size(701, 51);
|
||||
this.tLPKundeNr.TabIndex = 1;
|
||||
//
|
||||
// textBoxKundeNr
|
||||
//
|
||||
this.textBoxKundeNr.AccessibleName = "isNumeric";
|
||||
this.textBoxKundeNr.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textBoxKundeNr.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxKundeNr.Location = new System.Drawing.Point(203, 3);
|
||||
this.textBoxKundeNr.Name = "textBoxKundeNr";
|
||||
this.textBoxKundeNr.Size = new System.Drawing.Size(495, 45);
|
||||
this.textBoxKundeNr.TabIndex = 6;
|
||||
this.textBoxKundeNr.Enter += new System.EventHandler(this.TextBox_Enter);
|
||||
//
|
||||
// label14
|
||||
//
|
||||
this.label14.AutoSize = true;
|
||||
this.label14.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label14.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label14.ForeColor = System.Drawing.Color.White;
|
||||
this.label14.Location = new System.Drawing.Point(3, 0);
|
||||
this.label14.Name = "label14";
|
||||
this.label14.Size = new System.Drawing.Size(194, 51);
|
||||
this.label14.TabIndex = 5;
|
||||
this.label14.Text = "KundeNr:";
|
||||
this.label14.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// tLPKundeName
|
||||
//
|
||||
this.tLPKundeName.AutoSize = true;
|
||||
this.tLPKundeName.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(53)))), ((int)(((byte)(101)))));
|
||||
this.tLPKundeName.ColumnCount = 2;
|
||||
this.tLPKundeName.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
|
||||
this.tLPKundeName.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tLPKundeName.Controls.Add(this.textBoxKundeName, 1, 0);
|
||||
this.tLPKundeName.Controls.Add(this.label13, 0, 0);
|
||||
this.tLPKundeName.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tLPKundeName.Location = new System.Drawing.Point(3, 3);
|
||||
this.tLPKundeName.Name = "tLPKundeName";
|
||||
this.tLPKundeName.RowCount = 1;
|
||||
this.tLPKundeName.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPKundeName.Size = new System.Drawing.Size(700, 51);
|
||||
this.tLPKundeName.TabIndex = 0;
|
||||
//
|
||||
// textBoxKundeName
|
||||
//
|
||||
this.textBoxKundeName.AccessibleName = "isAlpha";
|
||||
this.textBoxKundeName.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textBoxKundeName.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxKundeName.Location = new System.Drawing.Point(210, 3);
|
||||
this.textBoxKundeName.Name = "textBoxKundeName";
|
||||
this.textBoxKundeName.Size = new System.Drawing.Size(487, 45);
|
||||
this.textBoxKundeName.TabIndex = 5;
|
||||
this.textBoxKundeName.Enter += new System.EventHandler(this.TextBox_Enter);
|
||||
this.textBoxKundeName.Leave += new System.EventHandler(this.TextBoxKunde_Leave);
|
||||
this.textBoxKundeName.Validating += new System.ComponentModel.CancelEventHandler(this.Pflichtfelder_Validating);
|
||||
//
|
||||
// label13
|
||||
//
|
||||
this.label13.AutoSize = true;
|
||||
this.label13.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(53)))), ((int)(((byte)(101)))));
|
||||
this.label13.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label13.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label13.ForeColor = System.Drawing.Color.White;
|
||||
this.label13.Location = new System.Drawing.Point(3, 0);
|
||||
this.label13.Name = "label13";
|
||||
this.label13.Size = new System.Drawing.Size(201, 51);
|
||||
this.label13.TabIndex = 4;
|
||||
this.label13.Text = "Kundename:";
|
||||
this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// tableLayoutPanel1
|
||||
//
|
||||
this.tableLayoutPanel1.ColumnCount = 2;
|
||||
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tableLayoutPanel1.Controls.Add(this.rBAltKunde, 0, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.rBNeuKunde, 1, 0);
|
||||
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tableLayoutPanel1.Location = new System.Drawing.Point(3, 3);
|
||||
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
|
||||
this.tableLayoutPanel1.RowCount = 1;
|
||||
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tableLayoutPanel1.Size = new System.Drawing.Size(1413, 94);
|
||||
this.tableLayoutPanel1.TabIndex = 1;
|
||||
//
|
||||
// rBAltKunde
|
||||
//
|
||||
this.rBAltKunde.AccessibleName = "Bestandskunde";
|
||||
this.rBAltKunde.Appearance = System.Windows.Forms.Appearance.Button;
|
||||
this.rBAltKunde.Checked = true;
|
||||
this.rBAltKunde.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.rBAltKunde.FlatAppearance.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(53)))), ((int)(((byte)(101)))));
|
||||
this.rBAltKunde.FlatAppearance.CheckedBackColor = System.Drawing.Color.White;
|
||||
this.rBAltKunde.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.ActiveCaption;
|
||||
this.rBAltKunde.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.rBAltKunde.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.rBAltKunde.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(53)))), ((int)(((byte)(101)))));
|
||||
this.rBAltKunde.Location = new System.Drawing.Point(10, 10);
|
||||
this.rBAltKunde.Margin = new System.Windows.Forms.Padding(10);
|
||||
this.rBAltKunde.Name = "rBAltKunde";
|
||||
this.rBAltKunde.Size = new System.Drawing.Size(686, 74);
|
||||
this.rBAltKunde.TabIndex = 1;
|
||||
this.rBAltKunde.TabStop = true;
|
||||
this.rBAltKunde.Text = "Bestandskunde";
|
||||
this.rBAltKunde.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.rBAltKunde.UseVisualStyleBackColor = true;
|
||||
this.rBAltKunde.CheckedChanged += new System.EventHandler(this.RadioButtonsKunde_CheckedChanged);
|
||||
//
|
||||
// rBNeuKunde
|
||||
//
|
||||
this.rBNeuKunde.AccessibleName = "Neukunde";
|
||||
this.rBNeuKunde.Appearance = System.Windows.Forms.Appearance.Button;
|
||||
this.rBNeuKunde.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.rBNeuKunde.FlatAppearance.BorderColor = System.Drawing.Color.White;
|
||||
this.rBNeuKunde.FlatAppearance.CheckedBackColor = System.Drawing.Color.White;
|
||||
this.rBNeuKunde.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.ActiveCaption;
|
||||
this.rBNeuKunde.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.rBNeuKunde.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.rBNeuKunde.ForeColor = System.Drawing.Color.White;
|
||||
this.rBNeuKunde.Location = new System.Drawing.Point(716, 10);
|
||||
this.rBNeuKunde.Margin = new System.Windows.Forms.Padding(10);
|
||||
this.rBNeuKunde.Name = "rBNeuKunde";
|
||||
this.rBNeuKunde.Size = new System.Drawing.Size(687, 74);
|
||||
this.rBNeuKunde.TabIndex = 0;
|
||||
this.rBNeuKunde.Text = "Neukunde";
|
||||
this.rBNeuKunde.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.rBNeuKunde.UseVisualStyleBackColor = true;
|
||||
this.rBNeuKunde.CheckedChanged += new System.EventHandler(this.RadioButtonsKunde_CheckedChanged);
|
||||
//
|
||||
// tLPKundeDetails
|
||||
//
|
||||
this.tLPKundeDetails.AutoSize = true;
|
||||
this.tLPKundeDetails.ColumnCount = 2;
|
||||
this.tLPKundeDetails.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tLPKundeDetails.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tLPKundeDetails.Controls.Add(this.label2, 1, 0);
|
||||
this.tLPKundeDetails.Controls.Add(this.label1, 0, 0);
|
||||
this.tLPKundeDetails.Controls.Add(this.tLPKontakt, 1, 1);
|
||||
this.tLPKundeDetails.Controls.Add(this.tLPAdresse, 0, 1);
|
||||
this.tLPKundeDetails.Controls.Add(this.buttonEdit, 0, 2);
|
||||
this.tLPKundeDetails.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tLPKundeDetails.Location = new System.Drawing.Point(3, 166);
|
||||
this.tLPKundeDetails.Name = "tLPKundeDetails";
|
||||
this.tLPKundeDetails.RowCount = 3;
|
||||
this.tLPKundeDetails.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
|
||||
this.tLPKundeDetails.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPKundeDetails.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
|
||||
this.tLPKundeDetails.Size = new System.Drawing.Size(1413, 259);
|
||||
this.tLPKundeDetails.TabIndex = 4;
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 13.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label2.ForeColor = System.Drawing.Color.White;
|
||||
this.label2.Location = new System.Drawing.Point(709, 0);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(701, 50);
|
||||
this.label2.TabIndex = 4;
|
||||
this.label2.Text = "Details:";
|
||||
this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 13.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label1.ForeColor = System.Drawing.Color.White;
|
||||
this.label1.Location = new System.Drawing.Point(3, 0);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(700, 50);
|
||||
this.label1.TabIndex = 3;
|
||||
this.label1.Text = "Adresse:";
|
||||
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// tLPKontakt
|
||||
//
|
||||
this.tLPKontakt.AutoSize = true;
|
||||
this.tLPKontakt.ColumnCount = 2;
|
||||
this.tLPKontakt.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 200F));
|
||||
this.tLPKontakt.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tLPKontakt.Controls.Add(this.textBoxAnderes, 1, 2);
|
||||
this.tLPKontakt.Controls.Add(this.textBoxMail, 1, 1);
|
||||
this.tLPKontakt.Controls.Add(this.textBoxTel, 1, 0);
|
||||
this.tLPKontakt.Controls.Add(this.label5, 0, 2);
|
||||
this.tLPKontakt.Controls.Add(this.label7, 0, 1);
|
||||
this.tLPKontakt.Controls.Add(this.label9, 0, 0);
|
||||
this.tLPKontakt.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tLPKontakt.Location = new System.Drawing.Point(709, 53);
|
||||
this.tLPKontakt.Name = "tLPKontakt";
|
||||
this.tLPKontakt.RowCount = 3;
|
||||
this.tLPKontakt.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPKontakt.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPKontakt.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPKontakt.Size = new System.Drawing.Size(701, 153);
|
||||
this.tLPKontakt.TabIndex = 2;
|
||||
//
|
||||
// textBoxAnderes
|
||||
//
|
||||
this.textBoxAnderes.AccessibleName = "isAlpha";
|
||||
this.textBoxAnderes.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textBoxAnderes.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxAnderes.Location = new System.Drawing.Point(203, 105);
|
||||
this.textBoxAnderes.Name = "textBoxAnderes";
|
||||
this.textBoxAnderes.Size = new System.Drawing.Size(495, 45);
|
||||
this.textBoxAnderes.TabIndex = 9;
|
||||
this.textBoxAnderes.Enter += new System.EventHandler(this.TextBox_Enter);
|
||||
//
|
||||
// textBoxMail
|
||||
//
|
||||
this.textBoxMail.AccessibleName = "isAlpha";
|
||||
this.textBoxMail.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textBoxMail.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxMail.Location = new System.Drawing.Point(203, 54);
|
||||
this.textBoxMail.Name = "textBoxMail";
|
||||
this.textBoxMail.Size = new System.Drawing.Size(495, 45);
|
||||
this.textBoxMail.TabIndex = 8;
|
||||
this.textBoxMail.Enter += new System.EventHandler(this.TextBox_Enter);
|
||||
//
|
||||
// textBoxTel
|
||||
//
|
||||
this.textBoxTel.AccessibleName = "isCalc";
|
||||
this.textBoxTel.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textBoxTel.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxTel.Location = new System.Drawing.Point(203, 3);
|
||||
this.textBoxTel.Name = "textBoxTel";
|
||||
this.textBoxTel.Size = new System.Drawing.Size(495, 45);
|
||||
this.textBoxTel.TabIndex = 7;
|
||||
this.textBoxTel.Enter += new System.EventHandler(this.TextBox_Enter);
|
||||
this.textBoxTel.Validating += new System.ComponentModel.CancelEventHandler(this.Pflichtfelder_Validating);
|
||||
//
|
||||
// label5
|
||||
//
|
||||
this.label5.AutoSize = true;
|
||||
this.label5.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label5.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label5.ForeColor = System.Drawing.Color.White;
|
||||
this.label5.Location = new System.Drawing.Point(3, 102);
|
||||
this.label5.Name = "label5";
|
||||
this.label5.Size = new System.Drawing.Size(194, 51);
|
||||
this.label5.TabIndex = 6;
|
||||
this.label5.Text = "Anderes:";
|
||||
this.label5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// label7
|
||||
//
|
||||
this.label7.AutoSize = true;
|
||||
this.label7.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label7.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label7.ForeColor = System.Drawing.Color.White;
|
||||
this.label7.Location = new System.Drawing.Point(3, 51);
|
||||
this.label7.Name = "label7";
|
||||
this.label7.Size = new System.Drawing.Size(194, 51);
|
||||
this.label7.TabIndex = 4;
|
||||
this.label7.Text = "E-Mail:";
|
||||
this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// label9
|
||||
//
|
||||
this.label9.AutoSize = true;
|
||||
this.label9.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label9.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label9.ForeColor = System.Drawing.Color.White;
|
||||
this.label9.Location = new System.Drawing.Point(3, 0);
|
||||
this.label9.Name = "label9";
|
||||
this.label9.Size = new System.Drawing.Size(194, 51);
|
||||
this.label9.TabIndex = 2;
|
||||
this.label9.Text = "Telefon:";
|
||||
this.label9.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// tLPAdresse
|
||||
//
|
||||
this.tLPAdresse.AutoSize = true;
|
||||
this.tLPAdresse.ColumnCount = 2;
|
||||
this.tLPAdresse.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 220F));
|
||||
this.tLPAdresse.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tLPAdresse.Controls.Add(this.textBoxOrt, 1, 2);
|
||||
this.tLPAdresse.Controls.Add(this.textBoxPLZ, 1, 1);
|
||||
this.tLPAdresse.Controls.Add(this.textBoxStrasse, 1, 0);
|
||||
this.tLPAdresse.Controls.Add(this.label8, 0, 2);
|
||||
this.tLPAdresse.Controls.Add(this.label6, 0, 1);
|
||||
this.tLPAdresse.Controls.Add(this.label4, 0, 0);
|
||||
this.tLPAdresse.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tLPAdresse.Location = new System.Drawing.Point(3, 53);
|
||||
this.tLPAdresse.Name = "tLPAdresse";
|
||||
this.tLPAdresse.RowCount = 3;
|
||||
this.tLPAdresse.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPAdresse.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPAdresse.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPAdresse.Size = new System.Drawing.Size(700, 153);
|
||||
this.tLPAdresse.TabIndex = 1;
|
||||
//
|
||||
// textBoxOrt
|
||||
//
|
||||
this.textBoxOrt.AccessibleName = "isAlpha";
|
||||
this.textBoxOrt.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textBoxOrt.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxOrt.Location = new System.Drawing.Point(223, 105);
|
||||
this.textBoxOrt.Name = "textBoxOrt";
|
||||
this.textBoxOrt.Size = new System.Drawing.Size(474, 45);
|
||||
this.textBoxOrt.TabIndex = 9;
|
||||
this.textBoxOrt.Enter += new System.EventHandler(this.TextBox_Enter);
|
||||
//
|
||||
// textBoxPLZ
|
||||
//
|
||||
this.textBoxPLZ.AccessibleName = "isNumeric";
|
||||
this.textBoxPLZ.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textBoxPLZ.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxPLZ.Location = new System.Drawing.Point(223, 54);
|
||||
this.textBoxPLZ.Name = "textBoxPLZ";
|
||||
this.textBoxPLZ.Size = new System.Drawing.Size(474, 45);
|
||||
this.textBoxPLZ.TabIndex = 8;
|
||||
this.textBoxPLZ.Enter += new System.EventHandler(this.TextBox_Enter);
|
||||
//
|
||||
// textBoxStrasse
|
||||
//
|
||||
this.textBoxStrasse.AccessibleName = "isAlpha";
|
||||
this.textBoxStrasse.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textBoxStrasse.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxStrasse.Location = new System.Drawing.Point(223, 3);
|
||||
this.textBoxStrasse.Name = "textBoxStrasse";
|
||||
this.textBoxStrasse.Size = new System.Drawing.Size(474, 45);
|
||||
this.textBoxStrasse.TabIndex = 7;
|
||||
this.textBoxStrasse.Enter += new System.EventHandler(this.TextBox_Enter);
|
||||
//
|
||||
// label8
|
||||
//
|
||||
this.label8.AutoSize = true;
|
||||
this.label8.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label8.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label8.ForeColor = System.Drawing.Color.White;
|
||||
this.label8.Location = new System.Drawing.Point(3, 102);
|
||||
this.label8.Name = "label8";
|
||||
this.label8.Size = new System.Drawing.Size(214, 51);
|
||||
this.label8.TabIndex = 6;
|
||||
this.label8.Text = "Ort:";
|
||||
this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// label6
|
||||
//
|
||||
this.label6.AutoSize = true;
|
||||
this.label6.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label6.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label6.ForeColor = System.Drawing.Color.White;
|
||||
this.label6.Location = new System.Drawing.Point(3, 51);
|
||||
this.label6.Name = "label6";
|
||||
this.label6.Size = new System.Drawing.Size(214, 51);
|
||||
this.label6.TabIndex = 4;
|
||||
this.label6.Text = "PLZ:";
|
||||
this.label6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label4.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label4.ForeColor = System.Drawing.Color.White;
|
||||
this.label4.Location = new System.Drawing.Point(3, 0);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(214, 51);
|
||||
this.label4.TabIndex = 2;
|
||||
this.label4.Text = "Strasse/Nr:";
|
||||
this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// buttonEdit
|
||||
//
|
||||
this.buttonEdit.BackColor = System.Drawing.Color.White;
|
||||
this.buttonEdit.FlatAppearance.BorderColor = System.Drawing.Color.White;
|
||||
this.buttonEdit.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.buttonEdit.Image = ((System.Drawing.Image)(resources.GetObject("buttonEdit.Image")));
|
||||
this.buttonEdit.Location = new System.Drawing.Point(3, 212);
|
||||
this.buttonEdit.Name = "buttonEdit";
|
||||
this.buttonEdit.Size = new System.Drawing.Size(44, 44);
|
||||
this.buttonEdit.TabIndex = 0;
|
||||
this.buttonEdit.UseVisualStyleBackColor = false;
|
||||
this.buttonEdit.Click += new System.EventHandler(this.ButtonEdit_Click);
|
||||
//
|
||||
// tLPAuftrag
|
||||
//
|
||||
this.tLPAuftrag.AutoSize = true;
|
||||
this.tLPAuftrag.ColumnCount = 2;
|
||||
this.tLPAuftrag.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
|
||||
this.tLPAuftrag.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tLPAuftrag.Controls.Add(this.pictureBoxPlus, 1, 0);
|
||||
this.tLPAuftrag.Controls.Add(this.label3, 0, 0);
|
||||
this.tLPAuftrag.Controls.Add(this.tLPAuftragDetails, 0, 1);
|
||||
this.tLPAuftrag.Controls.Add(this.fLPNetzeScan, 1, 1);
|
||||
this.tLPAuftrag.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tLPAuftrag.Location = new System.Drawing.Point(3, 431);
|
||||
this.tLPAuftrag.Name = "tLPAuftrag";
|
||||
this.tLPAuftrag.RowCount = 2;
|
||||
this.tLPAuftrag.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 50F));
|
||||
this.tLPAuftrag.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPAuftrag.Size = new System.Drawing.Size(1413, 299);
|
||||
this.tLPAuftrag.TabIndex = 5;
|
||||
//
|
||||
// pictureBoxPlus
|
||||
//
|
||||
this.pictureBoxPlus.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
|
||||
this.pictureBoxPlus.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxPlus.Image")));
|
||||
this.pictureBoxPlus.Location = new System.Drawing.Point(521, 3);
|
||||
this.pictureBoxPlus.Name = "pictureBoxPlus";
|
||||
this.pictureBoxPlus.Size = new System.Drawing.Size(44, 44);
|
||||
this.pictureBoxPlus.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
|
||||
this.pictureBoxPlus.TabIndex = 42;
|
||||
this.pictureBoxPlus.TabStop = false;
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label3.Font = new System.Drawing.Font("Microsoft Sans Serif", 13.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label3.ForeColor = System.Drawing.Color.White;
|
||||
this.label3.Location = new System.Drawing.Point(3, 0);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(512, 50);
|
||||
this.label3.TabIndex = 4;
|
||||
this.label3.Text = "Auftrag:";
|
||||
this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// tLPAuftragDetails
|
||||
//
|
||||
this.tLPAuftragDetails.AutoSize = true;
|
||||
this.tLPAuftragDetails.ColumnCount = 2;
|
||||
this.tLPAuftragDetails.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
|
||||
this.tLPAuftragDetails.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
|
||||
this.tLPAuftragDetails.Controls.Add(this.textBoxNetzanzahl, 1, 1);
|
||||
this.tLPAuftragDetails.Controls.Add(this.label12, 0, 1);
|
||||
this.tLPAuftragDetails.Controls.Add(this.label11, 0, 0);
|
||||
this.tLPAuftragDetails.Controls.Add(this.dTPAbholtag, 1, 0);
|
||||
this.tLPAuftragDetails.Controls.Add(this.rBEigenNetze, 0, 2);
|
||||
this.tLPAuftragDetails.Controls.Add(this.rBFremdNetze, 1, 2);
|
||||
this.tLPAuftragDetails.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tLPAuftragDetails.Location = new System.Drawing.Point(3, 53);
|
||||
this.tLPAuftragDetails.Name = "tLPAuftragDetails";
|
||||
this.tLPAuftragDetails.RowCount = 3;
|
||||
this.tLPAuftragDetails.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPAuftragDetails.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPAuftragDetails.RowStyles.Add(new System.Windows.Forms.RowStyle());
|
||||
this.tLPAuftragDetails.Size = new System.Drawing.Size(512, 243);
|
||||
this.tLPAuftragDetails.TabIndex = 0;
|
||||
//
|
||||
// textBoxNetzanzahl
|
||||
//
|
||||
this.textBoxNetzanzahl.AccessibleName = "isNumeric";
|
||||
this.textBoxNetzanzahl.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textBoxNetzanzahl.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxNetzanzahl.Location = new System.Drawing.Point(259, 54);
|
||||
this.textBoxNetzanzahl.Name = "textBoxNetzanzahl";
|
||||
this.textBoxNetzanzahl.Size = new System.Drawing.Size(250, 45);
|
||||
this.textBoxNetzanzahl.TabIndex = 10;
|
||||
this.textBoxNetzanzahl.Enter += new System.EventHandler(this.TextBox_Enter);
|
||||
this.textBoxNetzanzahl.Validating += new System.ComponentModel.CancelEventHandler(this.Pflichtfelder_Validating);
|
||||
//
|
||||
// label12
|
||||
//
|
||||
this.label12.AutoSize = true;
|
||||
this.label12.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label12.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label12.ForeColor = System.Drawing.Color.White;
|
||||
this.label12.Location = new System.Drawing.Point(3, 51);
|
||||
this.label12.Name = "label12";
|
||||
this.label12.Size = new System.Drawing.Size(250, 51);
|
||||
this.label12.TabIndex = 5;
|
||||
this.label12.Text = "Netzanzahl:";
|
||||
this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// label11
|
||||
//
|
||||
this.label11.AutoSize = true;
|
||||
this.label11.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.label11.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label11.ForeColor = System.Drawing.Color.White;
|
||||
this.label11.Location = new System.Drawing.Point(3, 0);
|
||||
this.label11.Name = "label11";
|
||||
this.label11.Size = new System.Drawing.Size(250, 51);
|
||||
this.label11.TabIndex = 3;
|
||||
this.label11.Text = "Abholtag:";
|
||||
this.label11.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// dTPAbholtag
|
||||
//
|
||||
this.dTPAbholtag.Checked = false;
|
||||
this.dTPAbholtag.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.dTPAbholtag.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.dTPAbholtag.Format = System.Windows.Forms.DateTimePickerFormat.Short;
|
||||
this.dTPAbholtag.Location = new System.Drawing.Point(259, 3);
|
||||
this.dTPAbholtag.Name = "dTPAbholtag";
|
||||
this.dTPAbholtag.ShowCheckBox = true;
|
||||
this.dTPAbholtag.Size = new System.Drawing.Size(250, 45);
|
||||
this.dTPAbholtag.TabIndex = 4;
|
||||
//
|
||||
// rBEigenNetze
|
||||
//
|
||||
this.rBEigenNetze.AccessibleName = "EigeneNetze";
|
||||
this.rBEigenNetze.Appearance = System.Windows.Forms.Appearance.Button;
|
||||
this.rBEigenNetze.Checked = true;
|
||||
this.rBEigenNetze.FlatAppearance.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(53)))), ((int)(((byte)(101)))));
|
||||
this.rBEigenNetze.FlatAppearance.CheckedBackColor = System.Drawing.Color.White;
|
||||
this.rBEigenNetze.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.ActiveCaption;
|
||||
this.rBEigenNetze.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.rBEigenNetze.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.rBEigenNetze.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(53)))), ((int)(((byte)(101)))));
|
||||
this.rBEigenNetze.Location = new System.Drawing.Point(3, 105);
|
||||
this.rBEigenNetze.Name = "rBEigenNetze";
|
||||
this.rBEigenNetze.Size = new System.Drawing.Size(250, 50);
|
||||
this.rBEigenNetze.TabIndex = 11;
|
||||
this.rBEigenNetze.TabStop = true;
|
||||
this.rBEigenNetze.Text = "Eigene Netze";
|
||||
this.rBEigenNetze.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.rBEigenNetze.UseVisualStyleBackColor = true;
|
||||
this.rBEigenNetze.CheckedChanged += new System.EventHandler(this.RadioButtonsKunde_CheckedChanged);
|
||||
//
|
||||
// rBFremdNetze
|
||||
//
|
||||
this.rBFremdNetze.AccessibleName = "WirlNetze";
|
||||
this.rBFremdNetze.Appearance = System.Windows.Forms.Appearance.Button;
|
||||
this.rBFremdNetze.FlatAppearance.BorderColor = System.Drawing.Color.White;
|
||||
this.rBFremdNetze.FlatAppearance.CheckedBackColor = System.Drawing.Color.White;
|
||||
this.rBFremdNetze.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.ActiveCaption;
|
||||
this.rBFremdNetze.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.rBFremdNetze.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.rBFremdNetze.ForeColor = System.Drawing.Color.White;
|
||||
this.rBFremdNetze.Location = new System.Drawing.Point(259, 105);
|
||||
this.rBFremdNetze.Name = "rBFremdNetze";
|
||||
this.rBFremdNetze.Size = new System.Drawing.Size(250, 50);
|
||||
this.rBFremdNetze.TabIndex = 12;
|
||||
this.rBFremdNetze.Text = "Wirl Netze";
|
||||
this.rBFremdNetze.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.rBFremdNetze.UseVisualStyleBackColor = true;
|
||||
this.rBFremdNetze.CheckedChanged += new System.EventHandler(this.RadioButtonsKunde_CheckedChanged);
|
||||
//
|
||||
// fLPNetzeScan
|
||||
//
|
||||
this.fLPNetzeScan.BackColor = System.Drawing.Color.White;
|
||||
this.fLPNetzeScan.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.fLPNetzeScan.Location = new System.Drawing.Point(521, 53);
|
||||
this.fLPNetzeScan.Name = "fLPNetzeScan";
|
||||
this.fLPNetzeScan.Size = new System.Drawing.Size(889, 243);
|
||||
this.fLPNetzeScan.TabIndex = 1;
|
||||
//
|
||||
// tLPButtons
|
||||
//
|
||||
this.tLPButtons.ColumnCount = 2;
|
||||
this.tLPButtons.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tLPButtons.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
this.tLPButtons.Controls.Add(this.buttonAbbrechen, 1, 0);
|
||||
this.tLPButtons.Controls.Add(this.buttonSpeichern, 0, 0);
|
||||
this.tLPButtons.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tLPButtons.Location = new System.Drawing.Point(3, 736);
|
||||
this.tLPButtons.Name = "tLPButtons";
|
||||
this.tLPButtons.RowCount = 1;
|
||||
this.tLPButtons.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
|
||||
this.tLPButtons.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
|
||||
this.tLPButtons.Size = new System.Drawing.Size(1413, 94);
|
||||
this.tLPButtons.TabIndex = 8;
|
||||
//
|
||||
// buttonAbbrechen
|
||||
//
|
||||
this.buttonAbbrechen.BackColor = System.Drawing.Color.Red;
|
||||
this.buttonAbbrechen.CausesValidation = false;
|
||||
this.buttonAbbrechen.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.buttonAbbrechen.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.buttonAbbrechen.FlatAppearance.BorderSize = 0;
|
||||
this.buttonAbbrechen.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.buttonAbbrechen.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.buttonAbbrechen.ForeColor = System.Drawing.Color.Black;
|
||||
this.buttonAbbrechen.Location = new System.Drawing.Point(716, 10);
|
||||
this.buttonAbbrechen.Margin = new System.Windows.Forms.Padding(10);
|
||||
this.buttonAbbrechen.Name = "buttonAbbrechen";
|
||||
this.buttonAbbrechen.Size = new System.Drawing.Size(687, 74);
|
||||
this.buttonAbbrechen.TabIndex = 70;
|
||||
this.buttonAbbrechen.Text = "Abbrechen";
|
||||
this.buttonAbbrechen.UseVisualStyleBackColor = false;
|
||||
this.buttonAbbrechen.Click += new System.EventHandler(this.ButtonAbbrechen_Click);
|
||||
//
|
||||
// buttonSpeichern
|
||||
//
|
||||
this.buttonSpeichern.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
|
||||
this.buttonSpeichern.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0)))));
|
||||
this.buttonSpeichern.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.buttonSpeichern.FlatAppearance.BorderSize = 0;
|
||||
this.buttonSpeichern.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.buttonSpeichern.Font = new System.Drawing.Font("Microsoft Sans Serif", 19.8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.buttonSpeichern.ForeColor = System.Drawing.Color.Black;
|
||||
this.buttonSpeichern.Location = new System.Drawing.Point(10, 10);
|
||||
this.buttonSpeichern.Margin = new System.Windows.Forms.Padding(10);
|
||||
this.buttonSpeichern.Name = "buttonSpeichern";
|
||||
this.buttonSpeichern.Size = new System.Drawing.Size(686, 74);
|
||||
this.buttonSpeichern.TabIndex = 69;
|
||||
this.buttonSpeichern.Text = "Auftrag speichern";
|
||||
this.buttonSpeichern.UseVisualStyleBackColor = false;
|
||||
this.buttonSpeichern.Click += new System.EventHandler(this.ButtonSpeichern_Click);
|
||||
//
|
||||
// FormGeschaeftMain
|
||||
//
|
||||
this.AcceptButton = this.buttonSpeichern;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.AutoScroll = true;
|
||||
this.CancelButton = this.buttonAbbrechen;
|
||||
this.ClientSize = new System.Drawing.Size(1419, 833);
|
||||
this.Controls.Add(this.tLPGeschaeft);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FormGeschaeftMain";
|
||||
this.Text = "Geschäft";
|
||||
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
|
||||
this.Load += new System.EventHandler(this.FormGeschaeftMain_Load);
|
||||
this.tLPGeschaeft.ResumeLayout(false);
|
||||
this.tLPGeschaeft.PerformLayout();
|
||||
this.tLPKundeAuswahl.ResumeLayout(false);
|
||||
this.tLPKundeAuswahl.PerformLayout();
|
||||
this.tLPKundeNr.ResumeLayout(false);
|
||||
this.tLPKundeNr.PerformLayout();
|
||||
this.tLPKundeName.ResumeLayout(false);
|
||||
this.tLPKundeName.PerformLayout();
|
||||
this.tableLayoutPanel1.ResumeLayout(false);
|
||||
this.tLPKundeDetails.ResumeLayout(false);
|
||||
this.tLPKundeDetails.PerformLayout();
|
||||
this.tLPKontakt.ResumeLayout(false);
|
||||
this.tLPKontakt.PerformLayout();
|
||||
this.tLPAdresse.ResumeLayout(false);
|
||||
this.tLPAdresse.PerformLayout();
|
||||
this.tLPAuftrag.ResumeLayout(false);
|
||||
this.tLPAuftrag.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBoxPlus)).EndInit();
|
||||
this.tLPAuftragDetails.ResumeLayout(false);
|
||||
this.tLPAuftragDetails.PerformLayout();
|
||||
this.tLPButtons.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.TableLayoutPanel tLPGeschaeft;
|
||||
private System.Windows.Forms.RadioButton rBAltKunde;
|
||||
private System.Windows.Forms.RadioButton rBNeuKunde;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
|
||||
private System.Windows.Forms.TableLayoutPanel tLPKundeDetails;
|
||||
private System.Windows.Forms.Button buttonEdit;
|
||||
private System.Windows.Forms.TableLayoutPanel tLPAdresse;
|
||||
private System.Windows.Forms.Label label8;
|
||||
private System.Windows.Forms.Label label6;
|
||||
private System.Windows.Forms.Label label4;
|
||||
private System.Windows.Forms.TableLayoutPanel tLPKontakt;
|
||||
private System.Windows.Forms.TextBox textBoxAnderes;
|
||||
private System.Windows.Forms.TextBox textBoxMail;
|
||||
private System.Windows.Forms.TextBox textBoxTel;
|
||||
private System.Windows.Forms.Label label5;
|
||||
private System.Windows.Forms.Label label7;
|
||||
private System.Windows.Forms.Label label9;
|
||||
private System.Windows.Forms.TextBox textBoxOrt;
|
||||
private System.Windows.Forms.TextBox textBoxPLZ;
|
||||
private System.Windows.Forms.TextBox textBoxStrasse;
|
||||
private System.Windows.Forms.TableLayoutPanel tLPAuftrag;
|
||||
private System.Windows.Forms.TableLayoutPanel tLPAuftragDetails;
|
||||
private System.Windows.Forms.Label label12;
|
||||
private System.Windows.Forms.Label label11;
|
||||
private System.Windows.Forms.DateTimePicker dTPAbholtag;
|
||||
private System.Windows.Forms.TextBox textBoxNetzanzahl;
|
||||
private System.Windows.Forms.RadioButton rBEigenNetze;
|
||||
private System.Windows.Forms.RadioButton rBFremdNetze;
|
||||
private System.Windows.Forms.FlowLayoutPanel fLPNetzeScan;
|
||||
private System.Windows.Forms.TableLayoutPanel tLPKundeAuswahl;
|
||||
private System.Windows.Forms.TableLayoutPanel tLPKundeNr;
|
||||
private System.Windows.Forms.TextBox textBoxKundeNr;
|
||||
private System.Windows.Forms.Label label14;
|
||||
private System.Windows.Forms.TableLayoutPanel tLPKundeName;
|
||||
private System.Windows.Forms.TextBox textBoxKundeName;
|
||||
private System.Windows.Forms.Label label13;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private System.Windows.Forms.PictureBox pictureBoxPlus;
|
||||
private System.Windows.Forms.TableLayoutPanel tLPButtons;
|
||||
private System.Windows.Forms.Button buttonSpeichern;
|
||||
private System.Windows.Forms.Button buttonAbbrechen;
|
||||
}
|
||||
}
|
||||
|
||||
273
AA-Forms/FormGeschaeftMain.cs
Normal file
273
AA-Forms/FormGeschaeftMain.cs
Normal file
@ -0,0 +1,273 @@
|
||||
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 VirtualKeyboard;
|
||||
using static System.Net.Mime.MediaTypeNames;
|
||||
using DatenDB;
|
||||
using Deckungsbeitrag.AA_Forms;
|
||||
|
||||
namespace Deckungsbeitrag
|
||||
{
|
||||
public partial class FormGeschaeftMain : Form
|
||||
{
|
||||
private string kundetyp = "Bestandskunde";
|
||||
private QwertzKeyboard keyboard;
|
||||
private Screen screen = Screen.PrimaryScreen;
|
||||
private Kunde kunde;
|
||||
|
||||
private bool _keyboardVisible;
|
||||
public bool KeyBoardVisible
|
||||
{
|
||||
get { return _keyboardVisible; }
|
||||
set
|
||||
{
|
||||
_keyboardVisible = value;
|
||||
if (KeyBoardVisible)
|
||||
{
|
||||
this.Width = screen.WorkingArea.Width;
|
||||
this.Height = (int)(screen.WorkingArea.Height * 0.55);
|
||||
this.Location = new Point(0, 0);
|
||||
this.ScrollControlIntoView(this.ActiveControl);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.Width = screen.WorkingArea.Width;
|
||||
this.Height = screen.WorkingArea.Height;
|
||||
this.Location = new Point(0, 0);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public FormGeschaeftMain()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void FormGeschaeftMain_Load(object sender, EventArgs e)
|
||||
{
|
||||
this.buttonEdit.Visible = false;
|
||||
|
||||
this.dTPAbholtag.Value = DateTime.Today.AddDays(2);
|
||||
this.dTPAbholtag.Checked = false;
|
||||
|
||||
StartKndAuswahl();
|
||||
|
||||
RadioButtonsKunde_CheckedChanged(rBAltKunde, null);
|
||||
RadioButtonsKunde_CheckedChanged(rBEigenNetze, null);
|
||||
}
|
||||
private void StartKndAuswahl()
|
||||
{
|
||||
FormGeschaeftKndAuswahl auswahl = new FormGeschaeftKndAuswahl();
|
||||
if (auswahl.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
this.kundetyp = auswahl.kundetyp;
|
||||
if (this.kundetyp == "Bestandskunde") rBAltKunde.Checked = true;
|
||||
else rBNeuKunde.Checked = true; ;
|
||||
}
|
||||
}
|
||||
private void RadioButtonsKunde_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
RadioButton rb = (RadioButton)sender;
|
||||
rb.ForeColor = rb.Checked ? Program.Wirlblau : Color.White;
|
||||
|
||||
// RadioButtons für Kundenauswahl.
|
||||
if (rb.AccessibleName.Contains("kunde"))
|
||||
{
|
||||
kundetyp = rb.AccessibleName;
|
||||
|
||||
// TextBoxen werden je nach Kundentyp Enabled und BackColor gesetzt.
|
||||
//foreach (TextBox txt in this.tLPKontakt.Controls.OfType<TextBox>()) { txt.Enabled = (rb.Checked & kundetyp == "Neukunde"); txt.BackColor = !txt.Enabled ? Color.Silver : Color.White; }
|
||||
//foreach (TextBox txt in this.tLPAdresse.Controls.OfType<TextBox>()) { txt.Enabled = (rb.Checked & kundetyp == "Neukunde"); txt.BackColor = !txt.Enabled ? Color.Silver : Color.White; }
|
||||
foreach (TextBox txt in this.tLPKundeNr.Controls.OfType<TextBox>()) { txt.Enabled = (rb.Checked & kundetyp == "Bestandskunde"); txt.BackColor = !txt.Enabled ? Color.Silver : Color.White; }
|
||||
|
||||
buttonEdit.Enabled = (rb.Checked & kundetyp == "Bestandskunde");
|
||||
if (buttonEdit.Enabled)
|
||||
{
|
||||
buttonEdit.BackColor = Color.White;
|
||||
}
|
||||
else buttonEdit.BackColor = Color.Gray;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
// Wenn Eigene Netze verwendet werden.
|
||||
if (rb.Checked & rb.AccessibleName == "EigeneNetze")
|
||||
{
|
||||
fLPNetzeScan.Enabled = false;
|
||||
fLPNetzeScan.BackColor = Color.Silver;
|
||||
pictureBoxPlus.Enabled = false;
|
||||
pictureBoxPlus.BackColor = Color.Gray;
|
||||
return;
|
||||
}
|
||||
|
||||
// Wenn Wirl Netze verwendet werden.
|
||||
if (rb.Checked & rb.AccessibleName == "WirlNetze")
|
||||
{
|
||||
fLPNetzeScan.Enabled = true;
|
||||
fLPNetzeScan.BackColor = Color.White;
|
||||
pictureBoxPlus.Enabled = true;
|
||||
pictureBoxPlus.BackColor = Color.FromArgb(0, 192, 0);
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void ButtonEdit_Click(object sender, EventArgs e)
|
||||
{
|
||||
Button btn = (Button)sender;
|
||||
|
||||
foreach (TextBox txt in this.tLPKontakt.Controls.OfType<TextBox>()) { txt.Enabled = true; txt.BackColor = !txt.Enabled ? Color.Silver : Color.White; }
|
||||
foreach (TextBox txt in this.tLPAdresse.Controls.OfType<TextBox>()) { txt.Enabled = true; txt.BackColor = !txt.Enabled ? Color.Silver : Color.White; }
|
||||
|
||||
}
|
||||
|
||||
private void TextBoxKunde_Leave(object sender, EventArgs e)
|
||||
{
|
||||
TextBox txt = (TextBox)sender;
|
||||
|
||||
if (kundetyp == "Neukunde") return;
|
||||
|
||||
//TODO: Kunde suchen und aus DB holen. Eventuell alle möglichen Namen durchsuchen. Eventuell DropDown mit Auswahl?
|
||||
}
|
||||
|
||||
private void TextBox_Enter(object sender, EventArgs e)
|
||||
{
|
||||
TextBox tb = (TextBox)sender;
|
||||
tb.BackColor = Color.White;
|
||||
tb.ForeColor = Color.Black;
|
||||
|
||||
keyboard = Funktionen.OpenVirtualKeyboard(sender);
|
||||
keyboard.KeyBoardShown += KeyBoardShown;
|
||||
keyboard.KeyBoardClosed += KeyBoardClosed;
|
||||
|
||||
this.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (!tb.IsDisposed && tb.CanFocus)
|
||||
{
|
||||
tb.Focus();
|
||||
tb.SelectAll();
|
||||
}
|
||||
}));
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Wenn die virtuelle Tastatur geschlossen wird, wird KeyBoardVisible aktualisiert.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void KeyBoardClosed(object sender, EventArgs e)
|
||||
{
|
||||
KeyBoardVisible = false;
|
||||
}
|
||||
/// <summary>
|
||||
/// Wenn die virtuelle Tastatur geschlossen wird, wird KeyBoardVisible aktualisiert.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void KeyBoardShown(object sender, EventArgs e)
|
||||
{
|
||||
KeyBoardVisible = true;
|
||||
}
|
||||
|
||||
private void ButtonSpeichern_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (GetRedTextBoxes(this).Count > 0) { MessageBox.Show("Alle Pflichtfelder müssen ausgefüllt sein.", "FEHLER"); return; }
|
||||
|
||||
// RadioButtons beide Checked false. Auswahl des Kundentyps geht über die FormGefschaeftKndAuswahl.
|
||||
this.rBNeuKunde.Checked = false;
|
||||
this.rBAltKunde.Checked = false;
|
||||
|
||||
MessageBox.Show("Speichern möglich");
|
||||
|
||||
StartKndAuswahl();
|
||||
}
|
||||
private List<TextBox> GetRedTextBoxes(Control parent)
|
||||
{
|
||||
var result = new List<TextBox>();
|
||||
|
||||
foreach (Control c in parent.Controls)
|
||||
{
|
||||
if (c is TextBox tb && tb.BackColor == Color.Red)
|
||||
result.Add(tb);
|
||||
|
||||
if (c.HasChildren)
|
||||
result.AddRange(GetRedTextBoxes(c));
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
private void Pflichtfelder_Validating(object sender, CancelEventArgs e)
|
||||
{
|
||||
|
||||
if (sender is TextBox txt)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(txt.Text))
|
||||
{
|
||||
txt.BackColor = Color.Red;
|
||||
txt.ForeColor = Color.White;
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (txt.AccessibleName.Contains("Numeric"))
|
||||
{
|
||||
if (!int.TryParse(txt.Text, out _))
|
||||
{
|
||||
txt.BackColor = Color.Red;
|
||||
txt.ForeColor = Color.White;
|
||||
return;
|
||||
}
|
||||
}
|
||||
e.Cancel = false;
|
||||
txt.BackColor = Color.White;
|
||||
txt.ForeColor = Color.Black;
|
||||
}
|
||||
//TODO: Testen wie die Validierung abläuft.
|
||||
}
|
||||
}
|
||||
|
||||
private void ButtonAbbrechen_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (MessageBox.Show("Möchtest du die Eingabe wirklich abbrechen?", "FRAGE", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) return;
|
||||
else
|
||||
{
|
||||
kunde = null;
|
||||
this.dTPAbholtag.Checked = false;
|
||||
|
||||
CheckAllTextBoxes(this);
|
||||
|
||||
// RadioButtons beide Checked false. Auswahl des Kundentyps geht über die FormGefschaeftKndAuswahl.
|
||||
this.rBAltKunde.Checked = false;
|
||||
this.rBNeuKunde.Checked = false;
|
||||
|
||||
StartKndAuswahl();
|
||||
}
|
||||
}
|
||||
private void CheckAllTextBoxes(Control parent)
|
||||
{
|
||||
foreach (Control c in parent.Controls)
|
||||
{
|
||||
if (c is TextBox tb)
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(tb.Text))
|
||||
{
|
||||
tb.Clear();
|
||||
}
|
||||
}
|
||||
|
||||
if (c.HasChildren)
|
||||
{
|
||||
CheckAllTextBoxes(c);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
238
AA-Forms/FormGeschaeftMain.resx
Normal file
238
AA-Forms/FormGeschaeftMain.resx
Normal file
@ -0,0 +1,238 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="buttonEdit.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
vgAADr4B6kKxwAAAAXZJREFUOE+1kj9LwlEUhjXc+rP0IYKCpsJoKaRBGqpBHKygLxA5aQ2C5FBgFLQL
|
||||
SUQQQoZmiAVNUUGYFhURDYqlqf00vG/gcuL8KLGrpQQ94+V93nPgHo2mSQAYAESFAAHIALAD0Mq5ugAY
|
||||
S2SUstEVIp3ZQ12zO3QcT3CRXc7W8CV3z/lo2BGgq4dncmydqSW8iZz/BsvJT5mFzplNOrlOqiUtJg8X
|
||||
kOxUYDmdK5b7bLs06jqgl6xCzu1ztYQ3GV8Kc0Fc9lSqZbM7QtmcQgWlqJbwJkOOAOUKbwDQL7s1cj5f
|
||||
qMi8SZVskN2G8uDC3t9lfk/niu//ImsBZPV2P3VMe+ny/qmeXOYhsqsCoDf2mKH2KS9Nrh2p33Rxl2pO
|
||||
ZgBY14MxMi6G1MmW1UNqm/QSHw8f0a8yA8BvckdIP++nEec+tVo2qMfqIz7fhjIjBF552sRymFb8UTq9
|
||||
TVFJiBIAk5ytixC4EQJFAEEANgADAHRy7ic+ALEuweNxnDexAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="pictureBoxPlus.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
vAAADrwBlbxySQAAAFZJREFUOE+9kEEKACEMxHxb//+eXruwbGEwHhwKK+QSaqSuqloTIFwgXCBcKL6T
|
||||
maW0xzyEBCLixQroqxpo9vljoC/u/BcYrTD+RA0o1wEXCBcIFwiXB07Nzd/k/DvRAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
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
|
||||
QmCC
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
@ -1141,7 +1141,7 @@ namespace Deckungsbeitrag
|
||||
ArtikelID = art.ArtikelID,
|
||||
ArtikelName = art.Bezeichnung,
|
||||
Gesamt = row.Cells[column.Index].Value == null ? 0 : int.Parse(row.Cells[column.Index].Value.ToString()),
|
||||
Anzahl = row.Cells[column.Index].Value == null ? 0 : int.Parse(row.Cells[column.Index].Value.ToString()),
|
||||
Anzahl = 0,
|
||||
Erledigt = false,
|
||||
};
|
||||
saved += aufart.Save();
|
||||
|
||||
38
AA-Forms/FormListe.Designer.cs
generated
38
AA-Forms/FormListe.Designer.cs
generated
@ -59,11 +59,11 @@ namespace Deckungsbeitrag
|
||||
this.listViewKunde.HideSelection = false;
|
||||
this.listViewKunde.HotTracking = true;
|
||||
this.listViewKunde.HoverSelection = true;
|
||||
this.listViewKunde.Location = new System.Drawing.Point(9, 62);
|
||||
this.listViewKunde.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.listViewKunde.Location = new System.Drawing.Point(12, 76);
|
||||
this.listViewKunde.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
|
||||
this.listViewKunde.MultiSelect = false;
|
||||
this.listViewKunde.Name = "listViewKunde";
|
||||
this.listViewKunde.Size = new System.Drawing.Size(638, 448);
|
||||
this.listViewKunde.Size = new System.Drawing.Size(849, 550);
|
||||
this.listViewKunde.TabIndex = 1;
|
||||
this.listViewKunde.UseCompatibleStateImageBehavior = false;
|
||||
this.listViewKunde.View = System.Windows.Forms.View.Details;
|
||||
@ -89,12 +89,13 @@ namespace Deckungsbeitrag
|
||||
//
|
||||
// textBoxKunde
|
||||
//
|
||||
this.textBoxKunde.AccessibleName = "isAlpha";
|
||||
this.textBoxKunde.Font = new System.Drawing.Font("Microsoft Sans Serif", 16.2F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxKunde.ForeColor = System.Drawing.Color.Black;
|
||||
this.textBoxKunde.Location = new System.Drawing.Point(9, 13);
|
||||
this.textBoxKunde.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.textBoxKunde.Location = new System.Drawing.Point(12, 16);
|
||||
this.textBoxKunde.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
|
||||
this.textBoxKunde.Name = "textBoxKunde";
|
||||
this.textBoxKunde.Size = new System.Drawing.Size(296, 32);
|
||||
this.textBoxKunde.Size = new System.Drawing.Size(393, 38);
|
||||
this.textBoxKunde.TabIndex = 0;
|
||||
this.textBoxKunde.Text = "Hier eingeben";
|
||||
this.textBoxKunde.Click += new System.EventHandler(this.TextBoxKunde_Click);
|
||||
@ -106,9 +107,10 @@ namespace Deckungsbeitrag
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.ForeColor = System.Drawing.Color.White;
|
||||
this.label1.Location = new System.Drawing.Point(309, 15);
|
||||
this.label1.Location = new System.Drawing.Point(412, 18);
|
||||
this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(248, 26);
|
||||
this.label1.Size = new System.Drawing.Size(304, 32);
|
||||
this.label1.TabIndex = 2;
|
||||
this.label1.Text = "KundeNr. oder Name eingeben.\r\nKunde nicht vorhanden? Starte die Eingabe mit (?).";
|
||||
//
|
||||
@ -120,10 +122,10 @@ namespace Deckungsbeitrag
|
||||
this.buttonOK.FlatAppearance.BorderSize = 0;
|
||||
this.buttonOK.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.buttonOK.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.buttonOK.Location = new System.Drawing.Point(63, 69);
|
||||
this.buttonOK.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.buttonOK.Location = new System.Drawing.Point(84, 85);
|
||||
this.buttonOK.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
|
||||
this.buttonOK.Name = "buttonOK";
|
||||
this.buttonOK.Size = new System.Drawing.Size(528, 41);
|
||||
this.buttonOK.Size = new System.Drawing.Size(704, 50);
|
||||
this.buttonOK.TabIndex = 15;
|
||||
this.buttonOK.Text = "Kunde übernehmen";
|
||||
this.buttonOK.UseVisualStyleBackColor = false;
|
||||
@ -137,10 +139,10 @@ namespace Deckungsbeitrag
|
||||
this.buttonNeuerAuftrag.FlatAppearance.BorderSize = 0;
|
||||
this.buttonNeuerAuftrag.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.buttonNeuerAuftrag.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.buttonNeuerAuftrag.Location = new System.Drawing.Point(120, 466);
|
||||
this.buttonNeuerAuftrag.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.buttonNeuerAuftrag.Location = new System.Drawing.Point(160, 574);
|
||||
this.buttonNeuerAuftrag.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
|
||||
this.buttonNeuerAuftrag.Name = "buttonNeuerAuftrag";
|
||||
this.buttonNeuerAuftrag.Size = new System.Drawing.Size(409, 34);
|
||||
this.buttonNeuerAuftrag.Size = new System.Drawing.Size(545, 42);
|
||||
this.buttonNeuerAuftrag.TabIndex = 16;
|
||||
this.buttonNeuerAuftrag.Text = "Neuer Auftrag";
|
||||
this.buttonNeuerAuftrag.UseVisualStyleBackColor = false;
|
||||
@ -148,10 +150,10 @@ namespace Deckungsbeitrag
|
||||
//
|
||||
// FormListe
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(53)))), ((int)(((byte)(101)))));
|
||||
this.ClientSize = new System.Drawing.Size(656, 522);
|
||||
this.ClientSize = new System.Drawing.Size(875, 642);
|
||||
this.Controls.Add(this.buttonNeuerAuftrag);
|
||||
this.Controls.Add(this.buttonOK);
|
||||
this.Controls.Add(this.label1);
|
||||
@ -159,10 +161,10 @@ namespace Deckungsbeitrag
|
||||
this.Controls.Add(this.listViewKunde);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.MinimumSize = new System.Drawing.Size(427, 51);
|
||||
this.MinimumSize = new System.Drawing.Size(563, 52);
|
||||
this.Name = "FormListe";
|
||||
this.ShowInTaskbar = false;
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
|
||||
@ -350,22 +350,17 @@ namespace Deckungsbeitrag
|
||||
}
|
||||
private void TextBoxKunde_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.textBoxKunde.Clear();
|
||||
TextBox tb = (TextBox)sender;
|
||||
keyboard = Funktionen.OpenVirtualKeyboard(sender);
|
||||
|
||||
if (Program.istTouch & Screen.PrimaryScreen.WorkingArea.Width > 0 & Screen.PrimaryScreen.WorkingArea.Width < 2000)
|
||||
this.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (keyboard == null || keyboard.IsDisposed)
|
||||
if (!tb.IsDisposed && tb.CanFocus)
|
||||
{
|
||||
keyboard = new QwertzKeyboard(textBoxKunde, "isAlpha");
|
||||
if (keyboard.ShowDialog() == DialogResult.OK) this.ActiveControl.Focus();
|
||||
tb.Focus();
|
||||
tb.SelectAll();
|
||||
}
|
||||
else
|
||||
{
|
||||
keyboard.Close();
|
||||
keyboard = new QwertzKeyboard(textBoxKunde, "isAlpha");
|
||||
if (keyboard.ShowDialog() == DialogResult.OK) this.ActiveControl.Focus();
|
||||
}
|
||||
}
|
||||
}));
|
||||
|
||||
}
|
||||
private void TextBoxKunde_TextChanged(object sender, EventArgs e)
|
||||
|
||||
@ -86,7 +86,6 @@ namespace Deckungsbeitrag
|
||||
}
|
||||
if (keyboard != null) keyboard.Close();
|
||||
}
|
||||
|
||||
private void ButtonAbbrechen_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (keyboard != null) keyboard.Close();
|
||||
@ -94,7 +93,6 @@ namespace Deckungsbeitrag
|
||||
this.DialogResult = DialogResult.Cancel;
|
||||
this.Close();
|
||||
}
|
||||
|
||||
private void ButtonRegistrieren_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (!String.IsNullOrEmpty(this.textBoxBenutzer.Text) && !String.IsNullOrEmpty(this.textBoxPasswort.Text) && this.textBoxPasswort.Text == this.textBoxPwdWh.Text)
|
||||
@ -115,18 +113,11 @@ namespace Deckungsbeitrag
|
||||
this.textBoxPwdWh.Visible = false;
|
||||
this.buttonRegistrieren.Visible = false;
|
||||
this.textBoxPasswort.Text = this.textBoxPwdWh.Text = string.Empty;
|
||||
//if (MessageBox.Show($"Benutzer {this.textBoxBenutzer.Text} wurde erfolgreich angelegt.\n\nMöchtest du einen eigenen Benutzername angeben?\n\n[JA] -> Neuen Benutzername anlegen\n[NEIN] -> Alten Benutzername behalten", "Hinweis", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
|
||||
//{
|
||||
// string eingabe = Interaction.InputBox("Welchen Benutzername möchtest du verwenden?\n\nBenutzername:", "Neuer Benutzername", "");
|
||||
// if (!string.IsNullOrWhiteSpace(eingabe)) person.BenutzerName = eingabe;
|
||||
// if (person.Save() != 1) MessageBox.Show("Benutzername konnte nicht gespeichert werden. Melde dich bei deinem Vorgesetzten.", "SPEICHERFEHLER", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
//}
|
||||
this.textBoxBenutzer.Focus();
|
||||
this.buttonAnmelden.Enabled = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void TextBoxBenutzer_Leave(object sender, EventArgs e)
|
||||
{
|
||||
if (textBoxBenutzer.Text.Contains(";"))
|
||||
@ -145,76 +136,29 @@ namespace Deckungsbeitrag
|
||||
WindowState = FormWindowState.Normal;
|
||||
StartPosition = FormStartPosition.CenterScreen;
|
||||
}
|
||||
|
||||
private void FormLogin_Shown(object sender, EventArgs e)
|
||||
{
|
||||
this.Location = new Point((Screen.PrimaryScreen.WorkingArea.Width - this.Width) / 2, ((Screen.PrimaryScreen.WorkingArea.Height / 2) - this.Height) / 2);
|
||||
}
|
||||
|
||||
private void TextBoxBenutzer_Enter(object sender, EventArgs e)
|
||||
{
|
||||
this.textBoxBenutzer.SelectAll();
|
||||
this.textBoxBenutzer.Focus();
|
||||
|
||||
if (Program.istTouch && Screen.PrimaryScreen.WorkingArea.Width > 0 && Screen.PrimaryScreen.WorkingArea.Width < 2000)
|
||||
{
|
||||
if (keyboard == null || keyboard.IsDisposed)
|
||||
{
|
||||
keyboard = new QwertzKeyboard(textBoxBenutzer, "isAlpha");
|
||||
keyboard.Show();
|
||||
}
|
||||
else
|
||||
{
|
||||
keyboard.Close();
|
||||
keyboard = new QwertzKeyboard(textBoxBenutzer, "isAlpha");
|
||||
keyboard.Show();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void TextBoxPasswort_Enter(object sender, EventArgs e)
|
||||
{
|
||||
this.textBoxPasswort.SelectAll();
|
||||
this.textBoxPasswort.Focus();
|
||||
|
||||
if (Program.istTouch && Screen.PrimaryScreen.WorkingArea.Width > 0 && Screen.PrimaryScreen.WorkingArea.Width < 2000)
|
||||
{
|
||||
if (keyboard == null || keyboard.IsDisposed)
|
||||
{
|
||||
keyboard = new QwertzKeyboard(textBoxPasswort, "isNumeric");
|
||||
keyboard.Show();
|
||||
}
|
||||
else
|
||||
{
|
||||
keyboard.Close();
|
||||
keyboard = new QwertzKeyboard(textBoxPasswort, "isNumeric");
|
||||
keyboard.Show();
|
||||
}
|
||||
}
|
||||
}
|
||||
private void TextBox_Leave(object sender, EventArgs e)
|
||||
{
|
||||
//this.buttonAnmelden.Focus();
|
||||
}
|
||||
|
||||
private void TextBoxPwdWh_Enter(object sender, EventArgs e)
|
||||
private void TextBoxes_Enter(object sender, EventArgs e)
|
||||
{
|
||||
this.textBoxPwdWh.SelectAll();
|
||||
|
||||
if (Program.istTouch && Screen.PrimaryScreen.WorkingArea.Width > 0 && Screen.PrimaryScreen.WorkingArea.Width < 2000)
|
||||
TextBox tb = (TextBox)sender;
|
||||
keyboard = Funktionen.OpenVirtualKeyboard(sender);
|
||||
|
||||
this.BeginInvoke(new Action(() =>
|
||||
{
|
||||
if (keyboard == null || keyboard.IsDisposed)
|
||||
if (!tb.IsDisposed && tb.CanFocus)
|
||||
{
|
||||
keyboard = new QwertzKeyboard(textBoxPwdWh, "isNumeric");
|
||||
keyboard.Show();
|
||||
tb.Focus();
|
||||
tb.SelectAll();
|
||||
}
|
||||
else
|
||||
{
|
||||
keyboard.Close();
|
||||
keyboard = new QwertzKeyboard(textBoxPwdWh, "isNumeric");
|
||||
keyboard.Show();
|
||||
}
|
||||
}
|
||||
}));
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
70
AA-Forms/FormLogin.designer.cs
generated
70
AA-Forms/FormLogin.designer.cs
generated
@ -53,11 +53,11 @@ namespace Deckungsbeitrag
|
||||
this.groupBox1.Controls.Add(this.label1);
|
||||
this.groupBox1.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.groupBox1.ForeColor = System.Drawing.Color.White;
|
||||
this.groupBox1.Location = new System.Drawing.Point(27, 32);
|
||||
this.groupBox1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.groupBox1.Location = new System.Drawing.Point(24, 26);
|
||||
this.groupBox1.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Padding = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.groupBox1.Size = new System.Drawing.Size(694, 158);
|
||||
this.groupBox1.Padding = new System.Windows.Forms.Padding(4);
|
||||
this.groupBox1.Size = new System.Drawing.Size(617, 120);
|
||||
this.groupBox1.TabIndex = 0;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "Login-Daten";
|
||||
@ -65,36 +65,37 @@ namespace Deckungsbeitrag
|
||||
// textBoxPwdWh
|
||||
//
|
||||
this.textBoxPwdWh.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxPwdWh.Location = new System.Drawing.Point(278, 169);
|
||||
this.textBoxPwdWh.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.textBoxPwdWh.Location = new System.Drawing.Point(247, 135);
|
||||
this.textBoxPwdWh.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.textBoxPwdWh.Name = "textBoxPwdWh";
|
||||
this.textBoxPwdWh.Size = new System.Drawing.Size(394, 26);
|
||||
this.textBoxPwdWh.Size = new System.Drawing.Size(351, 30);
|
||||
this.textBoxPwdWh.TabIndex = 5;
|
||||
this.textBoxPwdWh.UseSystemPasswordChar = true;
|
||||
this.textBoxPwdWh.Enter += new System.EventHandler(this.TextBoxPwdWh_Enter);
|
||||
this.textBoxPwdWh.Enter += new System.EventHandler(this.TextBoxes_Enter);
|
||||
//
|
||||
// labelPwdWh
|
||||
//
|
||||
this.labelPwdWh.AutoSize = true;
|
||||
this.labelPwdWh.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.labelPwdWh.ForeColor = System.Drawing.Color.White;
|
||||
this.labelPwdWh.Location = new System.Drawing.Point(39, 174);
|
||||
this.labelPwdWh.Location = new System.Drawing.Point(35, 139);
|
||||
this.labelPwdWh.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.labelPwdWh.Name = "labelPwdWh";
|
||||
this.labelPwdWh.Size = new System.Drawing.Size(153, 20);
|
||||
this.labelPwdWh.Size = new System.Drawing.Size(187, 25);
|
||||
this.labelPwdWh.TabIndex = 4;
|
||||
this.labelPwdWh.Text = "Passwort bestätigen";
|
||||
//
|
||||
// textBoxPasswort
|
||||
//
|
||||
this.textBoxPasswort.AccessibleName = "isNumeric";
|
||||
this.textBoxPasswort.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxPasswort.Location = new System.Drawing.Point(278, 95);
|
||||
this.textBoxPasswort.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.textBoxPasswort.Location = new System.Drawing.Point(247, 76);
|
||||
this.textBoxPasswort.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.textBoxPasswort.Name = "textBoxPasswort";
|
||||
this.textBoxPasswort.Size = new System.Drawing.Size(394, 26);
|
||||
this.textBoxPasswort.Size = new System.Drawing.Size(351, 30);
|
||||
this.textBoxPasswort.TabIndex = 3;
|
||||
this.textBoxPasswort.UseSystemPasswordChar = true;
|
||||
this.textBoxPasswort.Enter += new System.EventHandler(this.TextBoxPasswort_Enter);
|
||||
this.textBoxPasswort.Enter += new System.EventHandler(this.TextBoxes_Enter);
|
||||
this.textBoxPasswort.Leave += new System.EventHandler(this.TextBox_Leave);
|
||||
//
|
||||
// label2
|
||||
@ -102,22 +103,23 @@ namespace Deckungsbeitrag
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label2.ForeColor = System.Drawing.Color.White;
|
||||
this.label2.Location = new System.Drawing.Point(158, 100);
|
||||
this.label2.Location = new System.Drawing.Point(140, 80);
|
||||
this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(74, 20);
|
||||
this.label2.Size = new System.Drawing.Size(92, 25);
|
||||
this.label2.TabIndex = 2;
|
||||
this.label2.Text = "Passwort";
|
||||
//
|
||||
// textBoxBenutzer
|
||||
//
|
||||
this.textBoxBenutzer.AccessibleName = "isAlpha";
|
||||
this.textBoxBenutzer.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.textBoxBenutzer.Location = new System.Drawing.Point(278, 46);
|
||||
this.textBoxBenutzer.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.textBoxBenutzer.Location = new System.Drawing.Point(247, 37);
|
||||
this.textBoxBenutzer.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.textBoxBenutzer.Name = "textBoxBenutzer";
|
||||
this.textBoxBenutzer.Size = new System.Drawing.Size(394, 26);
|
||||
this.textBoxBenutzer.Size = new System.Drawing.Size(351, 30);
|
||||
this.textBoxBenutzer.TabIndex = 1;
|
||||
this.textBoxBenutzer.Enter += new System.EventHandler(this.TextBoxBenutzer_Enter);
|
||||
this.textBoxBenutzer.Enter += new System.EventHandler(this.TextBoxes_Enter);
|
||||
this.textBoxBenutzer.Leave += new System.EventHandler(this.TextBoxBenutzer_Leave);
|
||||
//
|
||||
// label1
|
||||
@ -125,10 +127,10 @@ namespace Deckungsbeitrag
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label1.ForeColor = System.Drawing.Color.White;
|
||||
this.label1.Location = new System.Drawing.Point(158, 51);
|
||||
this.label1.Location = new System.Drawing.Point(140, 41);
|
||||
this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(74, 20);
|
||||
this.label1.Size = new System.Drawing.Size(90, 25);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "Benutzer";
|
||||
//
|
||||
@ -141,11 +143,11 @@ namespace Deckungsbeitrag
|
||||
this.buttonAnmelden.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.buttonAnmelden.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.buttonAnmelden.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonAnmelden.Location = new System.Drawing.Point(495, 216);
|
||||
this.buttonAnmelden.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.buttonAnmelden.Location = new System.Drawing.Point(440, 170);
|
||||
this.buttonAnmelden.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.buttonAnmelden.Name = "buttonAnmelden";
|
||||
this.buttonAnmelden.Padding = new System.Windows.Forms.Padding(3, 2, 3, 2);
|
||||
this.buttonAnmelden.Size = new System.Drawing.Size(225, 62);
|
||||
this.buttonAnmelden.Size = new System.Drawing.Size(200, 50);
|
||||
this.buttonAnmelden.TabIndex = 1;
|
||||
this.buttonAnmelden.Text = "Anmelden";
|
||||
this.buttonAnmelden.UseVisualStyleBackColor = false;
|
||||
@ -161,10 +163,10 @@ namespace Deckungsbeitrag
|
||||
this.buttonAbbrechen.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.buttonAbbrechen.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.buttonAbbrechen.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonAbbrechen.Location = new System.Drawing.Point(261, 216);
|
||||
this.buttonAbbrechen.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.buttonAbbrechen.Location = new System.Drawing.Point(232, 170);
|
||||
this.buttonAbbrechen.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.buttonAbbrechen.Name = "buttonAbbrechen";
|
||||
this.buttonAbbrechen.Size = new System.Drawing.Size(225, 62);
|
||||
this.buttonAbbrechen.Size = new System.Drawing.Size(200, 50);
|
||||
this.buttonAbbrechen.TabIndex = 2;
|
||||
this.buttonAbbrechen.Text = "Abbrechen";
|
||||
this.buttonAbbrechen.UseVisualStyleBackColor = false;
|
||||
@ -178,10 +180,10 @@ namespace Deckungsbeitrag
|
||||
this.buttonRegistrieren.FlatAppearance.BorderSize = 0;
|
||||
this.buttonRegistrieren.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.buttonRegistrieren.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.buttonRegistrieren.Location = new System.Drawing.Point(27, 218);
|
||||
this.buttonRegistrieren.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.buttonRegistrieren.Location = new System.Drawing.Point(24, 171);
|
||||
this.buttonRegistrieren.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.buttonRegistrieren.Name = "buttonRegistrieren";
|
||||
this.buttonRegistrieren.Size = new System.Drawing.Size(225, 62);
|
||||
this.buttonRegistrieren.Size = new System.Drawing.Size(200, 50);
|
||||
this.buttonRegistrieren.TabIndex = 3;
|
||||
this.buttonRegistrieren.Text = "Registrieren";
|
||||
this.buttonRegistrieren.UseVisualStyleBackColor = false;
|
||||
@ -190,11 +192,11 @@ namespace Deckungsbeitrag
|
||||
// FormLogin
|
||||
//
|
||||
this.AcceptButton = this.buttonAnmelden;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(1)))), ((int)(((byte)(53)))), ((int)(((byte)(101)))));
|
||||
this.CancelButton = this.buttonAbbrechen;
|
||||
this.ClientSize = new System.Drawing.Size(738, 298);
|
||||
this.ClientSize = new System.Drawing.Size(656, 235);
|
||||
this.Controls.Add(this.buttonRegistrieren);
|
||||
this.Controls.Add(this.buttonAbbrechen);
|
||||
this.Controls.Add(this.buttonAnmelden);
|
||||
@ -202,7 +204,7 @@ namespace Deckungsbeitrag
|
||||
this.ForeColor = System.Drawing.SystemColors.ControlText;
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.Margin = new System.Windows.Forms.Padding(4);
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "FormLogin";
|
||||
|
||||
16
AA-Forms/FormMSAuswahl.Designer.cs
generated
16
AA-Forms/FormMSAuswahl.Designer.cs
generated
@ -37,14 +37,14 @@
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 28.2F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label1.ForeColor = System.Drawing.Color.White;
|
||||
this.label1.Location = new System.Drawing.Point(53, 26);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(799, 54);
|
||||
this.label1.Size = new System.Drawing.Size(799, 117);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "Welche Waschstrasse bedienst du?";
|
||||
this.label1.Text = "Auf welcher Waschstraße wird der Kunde bearbeitet?";
|
||||
this.label1.TextAlign = System.Drawing.ContentAlignment.TopCenter;
|
||||
//
|
||||
// radioButton1
|
||||
//
|
||||
@ -55,7 +55,7 @@
|
||||
this.radioButton1.FlatAppearance.MouseOverBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
|
||||
this.radioButton1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.radioButton1.Font = new System.Drawing.Font("Microsoft Sans Serif", 48F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.radioButton1.Location = new System.Drawing.Point(185, 146);
|
||||
this.radioButton1.Location = new System.Drawing.Point(185, 171);
|
||||
this.radioButton1.Name = "radioButton1";
|
||||
this.radioButton1.Size = new System.Drawing.Size(200, 200);
|
||||
this.radioButton1.TabIndex = 1;
|
||||
@ -63,7 +63,7 @@
|
||||
this.radioButton1.Text = "1";
|
||||
this.radioButton1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.radioButton1.UseVisualStyleBackColor = false;
|
||||
this.radioButton1.CheckedChanged += new System.EventHandler(this.radioButton2_CheckedChanged);
|
||||
this.radioButton1.CheckedChanged += new System.EventHandler(this.RadioButton2_CheckedChanged);
|
||||
//
|
||||
// radioButton2
|
||||
//
|
||||
@ -74,7 +74,7 @@
|
||||
this.radioButton2.FlatAppearance.MouseOverBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(128)))));
|
||||
this.radioButton2.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.radioButton2.Font = new System.Drawing.Font("Microsoft Sans Serif", 48F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.radioButton2.Location = new System.Drawing.Point(506, 146);
|
||||
this.radioButton2.Location = new System.Drawing.Point(506, 171);
|
||||
this.radioButton2.Name = "radioButton2";
|
||||
this.radioButton2.Size = new System.Drawing.Size(200, 200);
|
||||
this.radioButton2.TabIndex = 2;
|
||||
@ -82,7 +82,7 @@
|
||||
this.radioButton2.Text = "2";
|
||||
this.radioButton2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.radioButton2.UseVisualStyleBackColor = false;
|
||||
this.radioButton2.CheckedChanged += new System.EventHandler(this.radioButton2_CheckedChanged);
|
||||
this.radioButton2.CheckedChanged += new System.EventHandler(this.RadioButton2_CheckedChanged);
|
||||
//
|
||||
// textBox1
|
||||
//
|
||||
@ -91,6 +91,7 @@
|
||||
this.textBox1.Name = "textBox1";
|
||||
this.textBox1.Size = new System.Drawing.Size(154, 34);
|
||||
this.textBox1.TabIndex = 0;
|
||||
this.textBox1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TextBox1_KeyDown);
|
||||
//
|
||||
// label2
|
||||
//
|
||||
@ -118,6 +119,7 @@
|
||||
this.Name = "FormMSAuswahl";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Form1";
|
||||
this.Load += new System.EventHandler(this.FormMSAuswahl_Load);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using DatenDB;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
@ -7,37 +8,56 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using System.Windows.Media.TextFormatting;
|
||||
|
||||
namespace Deckungsbeitrag
|
||||
{
|
||||
public partial class FormMSAuswahl : Form
|
||||
{
|
||||
public int s;
|
||||
public Maschine maschine;
|
||||
public int? id;
|
||||
public FormMSAuswahl()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
}
|
||||
private void FormMSAuswahl_Load(object sender, EventArgs e)
|
||||
{
|
||||
foreach (RadioButton btn in this.Controls.OfType<RadioButton>())
|
||||
{
|
||||
if (btn.Text == "1") btn.Tag = Maschine.GetMaschine(null, "Waschstrasse 1");
|
||||
if (btn.Text == "2") btn.Tag = Maschine.GetMaschine(null, "Waschstrasse 2");
|
||||
}
|
||||
this.textBox1.Location = new Point(this.label2.Right + 10, textBox1.Location.Y);
|
||||
}
|
||||
|
||||
private void radioButton2_CheckedChanged(object sender, EventArgs e)
|
||||
private void RadioButton2_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
RadioButton rb = (RadioButton)sender;
|
||||
|
||||
if (rb.Checked)
|
||||
{
|
||||
rb.BackColor = Color.Green;
|
||||
s = int.Parse(rb.Text);
|
||||
if (MessageBox.Show($"Bist du sicher, dass du Waschstraße {s} bedienst?", "Frage", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
{
|
||||
this.DialogResult = DialogResult.OK;
|
||||
this.Close();
|
||||
}
|
||||
else
|
||||
{
|
||||
rb.BackColor = SystemColors.ButtonFace;
|
||||
rb.Checked = false;
|
||||
}
|
||||
maschine = (Maschine)rb.Tag;
|
||||
id = maschine.MaschineID;
|
||||
this.DialogResult = DialogResult.OK;
|
||||
this.Close();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void TextBox1_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
TextBox txtScan = (TextBox)sender;
|
||||
if (e.KeyCode == Keys.Enter)
|
||||
{
|
||||
e.SuppressKeyPress = true;
|
||||
if (int.TryParse(txtScan.Text.Substring(4).Trim(), out int i)) id = i;
|
||||
this.DialogResult |= DialogResult.OK;
|
||||
this.Close();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -56,6 +56,7 @@ namespace Deckungsbeitrag
|
||||
private readonly Screen screen = Screen.PrimaryScreen;
|
||||
private Kunde kunde;
|
||||
private Tour tour;
|
||||
|
||||
#endregion
|
||||
public FormMain()
|
||||
{
|
||||
@ -114,6 +115,8 @@ namespace Deckungsbeitrag
|
||||
var data = ShowTourenplan();
|
||||
if (data.datum == null) { Application.Exit(); return; }
|
||||
tour = Tour.GetTour(saison.SaisonId, data.tour);
|
||||
tour.BenutzerID = this.benutzer.BenutzerID;
|
||||
tour.Save();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -444,10 +447,12 @@ namespace Deckungsbeitrag
|
||||
FehlmengeChart chart = new FehlmengeChart();
|
||||
chart.Show();
|
||||
}
|
||||
private void ButtonTourenliste_Click(object sender, EventArgs e)
|
||||
private async void ButtonTourenliste_Click(object sender, EventArgs e)
|
||||
{
|
||||
Tour tour = null;
|
||||
Benutzer fahrer = this.benutzer;
|
||||
Benutzer fahrer = null;
|
||||
List<Auftrag> auftragliste = null;
|
||||
DateTime? lieferdatum = null;
|
||||
|
||||
Saison saison = Saison.GetAktivSaison();
|
||||
FormShowUserControl showUserControl = new FormShowUserControl("Tourenplan", this.benutzer);
|
||||
@ -455,11 +460,18 @@ namespace Deckungsbeitrag
|
||||
{
|
||||
var lieferdaten = showUserControl.lieferDaten;
|
||||
tour = Tour.GetTour(saison.SaisonId, lieferdaten.text);
|
||||
lieferdatum = lieferdaten.datum.Date;
|
||||
|
||||
List<Auftrag> auftragliste = Auftrag.GetTourenListe(tour, lieferdaten.datum.Date);
|
||||
if (auftragliste.Count > 0) Funktionen.TourenListe_Drucken(auftragliste, tour, this, this.benutzer, fahrer);
|
||||
auftragliste = Auftrag.GetTourenListe(tour, (DateTime)lieferdatum);
|
||||
}
|
||||
|
||||
if (auftragliste == null || auftragliste.Count == 0) return;
|
||||
if (this.benutzer.Rolle != BenutzerRolle.Fahrer) fahrer = Benutzer.GetBenutzer(null, tour.BenutzerID);
|
||||
|
||||
if (fahrer == null) return;
|
||||
|
||||
List<TrelloCard> cards = await Funktionen.GetCardsFromTrello((DateTime)lieferdatum, fahrer.Tour);
|
||||
Funktionen.TourenListe_Drucken(auftragliste, tour, this, this.benutzer, fahrer, cards);
|
||||
|
||||
|
||||
//Benutzer fahrer = new Benutzer();
|
||||
@ -711,10 +723,32 @@ namespace Deckungsbeitrag
|
||||
return "❌"; // Status 0 ✓
|
||||
}
|
||||
};
|
||||
var colSpannleintuch = new OLVColumn("Spannleintuch", "Spannleintuch")
|
||||
{
|
||||
Text = "SPLT",
|
||||
DisplayIndex = 9,
|
||||
TextAlign = HorizontalAlignment.Center,
|
||||
CheckBoxes = false,
|
||||
TriStateCheckBoxes = false,
|
||||
Width = 50,
|
||||
AspectGetter = row =>
|
||||
{
|
||||
var auftrag = (Auftrag)row;
|
||||
int abteilungen = (int)auftrag.Abteilungen;
|
||||
|
||||
bool begonnen = (abteilungen & (int)AbteilungsStatus.SpannleintuchBegonnen) != 0;
|
||||
bool beendet = (abteilungen & (int)AbteilungsStatus.SpannleintuchBeendet) != 0;
|
||||
|
||||
if (beendet) return "✅"; // Status 1 ✓
|
||||
if (begonnen) return "⭕"; // Status 2 ✓
|
||||
return "❌"; // Status 0 ✓
|
||||
}
|
||||
};
|
||||
|
||||
this.objectListViewAuftrag.AllColumns.Add(colFrottee);
|
||||
this.objectListViewAuftrag.AllColumns.Add(colKleinteile);
|
||||
this.objectListViewAuftrag.AllColumns.Add(colGrosseTeile);
|
||||
this.objectListViewAuftrag.AllColumns.Add(colSpannleintuch);
|
||||
|
||||
foreach (OLVColumn col in this.objectListViewAuftrag.AllColumns)
|
||||
{
|
||||
@ -1394,13 +1428,48 @@ namespace Deckungsbeitrag
|
||||
|
||||
private async void buttonTest_Click(object sender, EventArgs e)
|
||||
{
|
||||
FormAuftragAuswahl auswahl = new FormAuftragAuswahl();
|
||||
if (auswahl.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
Kunde kunde = auswahl.kunde;
|
||||
}
|
||||
|
||||
FormGeschaeftMain geschaeft = new FormGeschaeftMain();
|
||||
geschaeft.Show();
|
||||
//FormAuftragAuswahl auswahl = new FormAuftragAuswahl();
|
||||
//if (auswahl.ShowDialog() == DialogResult.OK)
|
||||
//{
|
||||
// Kunde kunde = auswahl.kunde;
|
||||
//}
|
||||
|
||||
//if (TrelloConfig.HasCredentials())
|
||||
//{
|
||||
// var apiKey = TrelloConfig.GetApiKey();
|
||||
// var token = TrelloConfig.GetToken();
|
||||
// TrelloCardClient _trelloClient = new TrelloCardClient(apiKey, token);
|
||||
// var targetDate = new DateTime(2026, 6, 10);
|
||||
// var listId = "6a1fcdc9a1995f42c537ae10";
|
||||
// try
|
||||
// {
|
||||
// var cards = await _trelloClient.GetCardsByDueDateAsync(listId, targetDate);
|
||||
|
||||
// // In DataGridView eintragen
|
||||
// //dataGridView1.Rows.Clear();
|
||||
// //foreach (var card in cards)
|
||||
// //{
|
||||
// // dataGridView1.Rows.Add(
|
||||
// // card.Name,
|
||||
// // card.Id,
|
||||
// // card.DueDate?.ToString("dd.MM.yyyy") ?? "N/A",
|
||||
// // card.ShortUrl
|
||||
// // );
|
||||
// //}
|
||||
|
||||
// MessageBox.Show($"{cards.Count} Karten gefunden mit Fälligkeitsdatum {targetDate}");
|
||||
// }
|
||||
// catch (Exception ex)
|
||||
// {
|
||||
// MessageBox.Show($"fehler: {ex.Message}", "API-Fehler", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
// }
|
||||
|
||||
// _trelloClient.Dispose();
|
||||
//}
|
||||
|
||||
|
||||
// TRELLO TEST
|
||||
//if (TrelloConfig.HasCredentials())
|
||||
|
||||
@ -40,7 +40,7 @@ namespace DatenDB
|
||||
}
|
||||
}
|
||||
|
||||
internal static int? GetArtikelID(int artNr)
|
||||
public static int? GetArtikelID(int artNr)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
int? result = 0;
|
||||
@ -53,7 +53,7 @@ namespace DatenDB
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result;
|
||||
}
|
||||
internal static string GetShort(int? artikelID, string artname)
|
||||
public static string GetShort(int? artikelID, string artname)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
string result = null;
|
||||
@ -86,7 +86,7 @@ namespace DatenDB
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result;
|
||||
}
|
||||
internal static List<Artikel> GetRegArtikelList()
|
||||
public static List<Artikel> GetRegArtikelList()
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<Artikel> resultList = new List<Artikel>();
|
||||
|
||||
@ -68,6 +68,10 @@ namespace DatenDB
|
||||
// Bit 4-5: Großteile (Status)
|
||||
GrossteileBegonnen = 1 << 4, // 16 = begonnen
|
||||
GrossteileBeendet = 1 << 5, // 32 = beendet
|
||||
|
||||
// Bit 6-7: Spannleintuch (Status)
|
||||
SpannleintuchBegonnen = 1 << 6, // 64 = begonnen
|
||||
SpannleintuchBeendet = 1 << 7 // 128 = beendet
|
||||
}
|
||||
|
||||
|
||||
@ -117,7 +121,7 @@ namespace DatenDB
|
||||
{
|
||||
command.Connection = conn;
|
||||
|
||||
command.CommandText = $"SELECT {ACOLUMNS}, k.name1 as kunde_name, k.suchtext as suchtext, u.benutzer_name as fahrer FROM {TABLE} a left join kundenverwaltung.kunde k on a.kunde_id = k.kunde_id left join kundenverwaltung.benutzer u on a.benutzer_id = u.benutzer_id WHERE a.tour_id = {tourID} and liefertag = CURRENT_DATE and status < {(int)AuftragStatus.Ausgeliefert} ORDER BY status DESC";
|
||||
command.CommandText = $"SELECT {ACOLUMNS}, k.name1 as kunde_name, k.suchtext as suchtext, u.benutzer_name as fahrer FROM {TABLE} a left join kundenverwaltung.kunde k on a.kunde_id = k.kunde_id left join kundenverwaltung.benutzer u on a.benutzer_id = u.benutzer_id WHERE a.tour_id = {tourID} and liefertag = CURRENT_DATE and status = {(int)AuftragStatus.Fertig} ORDER BY status DESC";
|
||||
|
||||
using (var reader = await command.ExecuteReaderAsync())
|
||||
{
|
||||
@ -380,7 +384,7 @@ namespace DatenDB
|
||||
this.ContainerClean = reader.IsDBNull(16) ? 0 : reader.GetInt32(16);
|
||||
this.Typ = reader.IsDBNull(17) ? AuftragTyp.Standart : (AuftragTyp)reader.GetInt32(17);
|
||||
this.AufgabeErledigt = !reader.IsDBNull(18) && reader.GetBoolean(18);
|
||||
this.Abteilungen = reader.IsDBNull(19) ? AbteilungsStatus.Keine : (AbteilungsStatus)reader.GetInt16(19);
|
||||
this.Abteilungen = reader.IsDBNull(19) ? AbteilungsStatus.Keine : (AbteilungsStatus)reader.GetInt32(19);
|
||||
this.Rhythmus = reader.IsDBNull(20) ? RegRhythmen.Unbekannt : (RegRhythmen)reader.GetInt32(20);
|
||||
this.Priority = (Priority)reader.GetInt32(21);
|
||||
|
||||
@ -415,7 +419,7 @@ namespace DatenDB
|
||||
this.ContainerClean = reader.IsDBNull(16) ? 0 : reader.GetInt32(16);
|
||||
this.Typ = reader.IsDBNull(17) ? AuftragTyp.Standart : (AuftragTyp)reader.GetInt32(17);
|
||||
this.AufgabeErledigt = !reader.IsDBNull(18) && reader.GetBoolean(18);
|
||||
this.Abteilungen = reader.IsDBNull(19) ? AbteilungsStatus.Keine : (AbteilungsStatus)reader.GetInt16(19);
|
||||
this.Abteilungen = reader.IsDBNull(19) ? AbteilungsStatus.Keine : (AbteilungsStatus)reader.GetInt32(19);
|
||||
this.Rhythmus = reader.IsDBNull(20) ? RegRhythmen.Unbekannt : (RegRhythmen)reader.GetInt32(20);
|
||||
this.Priority = (Priority)reader.GetInt32(21);
|
||||
|
||||
@ -467,7 +471,7 @@ namespace DatenDB
|
||||
//if (!FindAuftragStatus(this.AuftragID, Status))
|
||||
|
||||
//Jede Statusänderung wird gespeichert. Klarer Verlauf ersichtlich.
|
||||
SpeicherStatus(); // Automatisches Speichern
|
||||
//SpeicherStatus(); // Automatisches Speichern
|
||||
}
|
||||
|
||||
}
|
||||
@ -689,7 +693,7 @@ namespace DatenDB
|
||||
command.Parameters.AddWithValue("p12", (int)this.Status);
|
||||
command.Parameters.AddWithValue("p13", this.TourID ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("p14", this.Container);
|
||||
command.Parameters.AddWithValue("p15", this.MaschineID ?? 0);
|
||||
command.Parameters.AddWithValue("p15", this.MaschineID ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("p16", this.ContainerClean);
|
||||
command.Parameters.AddWithValue("p17", (int)this.Typ);
|
||||
command.Parameters.AddWithValue("p18", this.AufgabeErledigt);
|
||||
|
||||
@ -111,13 +111,13 @@ namespace DatenDB
|
||||
public int? ArtikelID { get; set; }
|
||||
|
||||
|
||||
[OLVColumn(DisplayIndex = 1)]
|
||||
[OLVColumn(DisplayIndex = 1, IsEditable = false)]
|
||||
public string ArtikelName { get; set; }
|
||||
[OLVColumn(DisplayIndex = 2, TextAlign = HorizontalAlignment.Center)]
|
||||
[OLVColumn("Anzahl", DisplayIndex = 3, TextAlign = HorizontalAlignment.Center)]
|
||||
public int Anzahl { get; set; }
|
||||
[OLVColumn("Erledigt", DisplayIndex = 0, CheckBoxes = true)]
|
||||
public bool Erledigt { get; set; }
|
||||
[OLVIgnore]
|
||||
[OLVColumn("Offen", DisplayIndex = 2, TextAlign = HorizontalAlignment.Center, IsEditable = false)]
|
||||
public int Gesamt { get; set; }
|
||||
|
||||
|
||||
|
||||
@ -62,7 +62,7 @@ namespace Deckungsbeitrag.AA_Klassen
|
||||
var result = new List<AuftragInfo>();
|
||||
|
||||
using (var conn = new NpgsqlConnection(_connectionString))
|
||||
using (var cmd = new NpgsqlCommand($"SELECT audit_id, spalten_name, alter_wert, neuer_wert, changed_by, changed_at FROM kundenverwaltung.vw_auftrag_audit WHERE auftrag_id = {auftrag.AuftragID} ORDER BY changed_at DESC", conn))
|
||||
using (var cmd = new NpgsqlCommand($"SELECT audit_id, spalten_name, alter_wert, neuer_wert, changed_by, changed_at FROM kundenverwaltung.vw_auftrag_audit WHERE auftrag_id = {auftrag.AuftragID} ORDER BY changed_at ASC", conn))
|
||||
{
|
||||
conn.Open();
|
||||
using (var reader = cmd.ExecuteReader())
|
||||
@ -73,8 +73,8 @@ namespace Deckungsbeitrag.AA_Klassen
|
||||
{
|
||||
ChangeID = reader.GetInt32(0),
|
||||
Bezeichnung = reader.GetString(1),
|
||||
AlterWert = reader.GetString(2),
|
||||
NeuerWert = reader.GetString(3),
|
||||
AlterWert = reader.IsDBNull(2) ? string.Empty : reader.GetString(2),
|
||||
NeuerWert = reader.IsDBNull(3) ? string.Empty : reader.GetString(3),
|
||||
Client = reader.GetString(4),
|
||||
Datum = reader.GetDateTime(5),
|
||||
});
|
||||
@ -90,6 +90,31 @@ namespace Deckungsbeitrag.AA_Klassen
|
||||
public string AlterWert { get; set; }
|
||||
public string NeuerWert { get; set; }
|
||||
public string Client { get; set; }
|
||||
public AbteilungsStatus AbtStatus
|
||||
{
|
||||
get
|
||||
{
|
||||
// Berechne die Bit-Differenz
|
||||
if (Bezeichnung == "abteilungen_status")
|
||||
{
|
||||
int alt = int.Parse(AlterWert);
|
||||
int neu = int.Parse(NeuerWert);
|
||||
int geänderteStatus = alt ^ neu; // XOR
|
||||
|
||||
foreach (var value in Enum.GetValues(typeof(AbteilungsStatus)))
|
||||
{
|
||||
int bitValue = (int)value;
|
||||
if (bitValue == 0) continue;
|
||||
|
||||
if ((geänderteStatus & bitValue) != 0)
|
||||
{
|
||||
return (AbteilungsStatus)value;
|
||||
}
|
||||
}
|
||||
}
|
||||
return AbteilungsStatus.Keine;
|
||||
}
|
||||
}
|
||||
public AuftragStatus? StatusAlt
|
||||
{
|
||||
get
|
||||
@ -206,6 +231,8 @@ namespace Deckungsbeitrag.AA_Klassen
|
||||
// Frottee-Filter
|
||||
if (kategorie.HasValue)
|
||||
{
|
||||
//TODO: ArtikelKategorie wechseln?
|
||||
//if (kategorie.Value == ArtikelKategorie.Spannleintuch) kategorie = ArtikelKategorie.Frottee;
|
||||
if (undFertig.HasValue && undFertig.Value) conditions.Add($"{kategorie.ToString().ToLower()}_status < 3");
|
||||
else conditions.Add($"{kategorie.ToString().ToLower()}_status < 2");
|
||||
}
|
||||
@ -318,7 +345,8 @@ namespace Deckungsbeitrag.AA_Klassen
|
||||
Tour = SafeString(reader, "tour"),
|
||||
FrotteeStatus = SafeInt(reader, "frottee_status"),
|
||||
KleinteileStatus = SafeInt(reader, "kleinteile_status"),
|
||||
GrossteileStatus = SafeInt(reader, "grossteile_status")
|
||||
GrossteileStatus = SafeInt(reader, "grossteile_status"),
|
||||
SpannleintuchStatus = SafeInt(reader, "spannleintuch_status")
|
||||
});
|
||||
}
|
||||
}
|
||||
@ -368,6 +396,7 @@ namespace Deckungsbeitrag.AA_Klassen
|
||||
[OLVIgnore]public int FrotteeStatus { get; set; }
|
||||
[OLVIgnore]public int KleinteileStatus { get; set; }
|
||||
[OLVIgnore]public int GrossteileStatus { get; set; }
|
||||
[OLVIgnore]public int SpannleintuchStatus { get; set; }
|
||||
|
||||
// **Ein zentrales Dictionary für alle AbteilungStatus-Anzeigen**
|
||||
private static readonly Dictionary<int, string> StatusAnzeigen = new Dictionary<int, string>
|
||||
@ -391,6 +420,11 @@ namespace Deckungsbeitrag.AA_Klassen
|
||||
{
|
||||
get { return StatusAnzeigen.TryGetValue(GrossteileStatus, out string text) ? text : "?"; }
|
||||
}
|
||||
[OLVColumn("SL", DisplayIndex = 63, TextAlign = HorizontalAlignment.Center, IsEditable = false)]public string SpannleintuchAnzeige
|
||||
{
|
||||
get { return StatusAnzeigen.TryGetValue(SpannleintuchStatus, out string text) ? text : "?"; }
|
||||
}
|
||||
|
||||
//[OLVColumn("Etikett", DisplayIndex = 80, TextAlign = HorizontalAlignment.Center)]public string DruckenAnzeige
|
||||
//{
|
||||
// get
|
||||
|
||||
@ -20,6 +20,7 @@ using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using System.Windows.Forms.DataVisualization.Charting;
|
||||
using TrelloIntegration;
|
||||
using VirtualKeyboard;
|
||||
using ZXing;
|
||||
using ZXing.QrCode.Internal;
|
||||
@ -51,13 +52,81 @@ namespace Deckungsbeitrag
|
||||
private static bool printed = false;
|
||||
private static bool inPreview = false;
|
||||
private static int KundeID;
|
||||
private QwertzKeyboard keyboard;
|
||||
private static readonly UserSettingsManager _settings = new UserSettingsManager();
|
||||
private static List<TrelloCard> _cards;
|
||||
private static QwertzKeyboard keyboard;
|
||||
|
||||
|
||||
public Funktionen()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Daten der benötigten Trellokarten werden geholt und in eine Liste eingefügt und retour gegeben.
|
||||
/// </summary>
|
||||
/// <param name="dt">Liefertag</param>
|
||||
/// <param name="lId">Fahrerliste in Trello (Tour in DB)</param>
|
||||
/// <returns>Liste der Daten der entsprechenden Trellokarten.</returns>
|
||||
public async static Task<List<TrelloCard>> GetCardsFromTrello(DateTime dt, string lId)
|
||||
{
|
||||
List<TrelloCard> cards = null;
|
||||
if (TrelloConfig.HasCredentials())
|
||||
{
|
||||
var apiKey = TrelloConfig.GetApiKey();
|
||||
var token = TrelloConfig.GetToken();
|
||||
TrelloCardClient _trelloClient = new TrelloCardClient(apiKey, token);
|
||||
var targetDate = dt;
|
||||
var listId = string.IsNullOrWhiteSpace(lId) ? "6a1fcdc9a1995f42c537ae10" : lId;
|
||||
try
|
||||
{
|
||||
cards = await _trelloClient.GetCardsByDueDateAsync(listId, targetDate);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show($"fehler: {ex.Message}", "API-Fehler", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
}
|
||||
_trelloClient.Dispose();
|
||||
}
|
||||
return cards;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Öffnet die virtuelle Tastatur für die gewünschte TextBox mit AccessibleName.
|
||||
/// </summary>
|
||||
/// <param name="sender">TextBox mit AccessibleName (isAlpha, isNumeric, isClac)</param>
|
||||
/// <returns>Virtuelle Tastatur</returns>
|
||||
public static QwertzKeyboard OpenVirtualKeyboard(object sender)
|
||||
{
|
||||
TextBox tb = sender as TextBox;
|
||||
|
||||
// Kontrolle ob das Gerät Touch hat. Falls analoge Tastatur verwendet wird, wird durch den PrimaryScreen unterschieden.
|
||||
if (Program.istTouch && Screen.PrimaryScreen.WorkingArea.Width > 0 && Screen.PrimaryScreen.WorkingArea.Width < 2000)
|
||||
{
|
||||
if (keyboard == null || keyboard.IsDisposed)
|
||||
{
|
||||
keyboard = new QwertzKeyboard(tb, tb.AccessibleName);
|
||||
keyboard.Show();
|
||||
}
|
||||
else
|
||||
{
|
||||
keyboard.Close();
|
||||
keyboard = new QwertzKeyboard(tb, tb.AccessibleName);
|
||||
keyboard.Show();
|
||||
}
|
||||
}
|
||||
|
||||
return keyboard;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
public static HeaderFormatStyle GetHeader()
|
||||
{
|
||||
HeaderFormatStyle headerFormat = new HeaderFormatStyle();
|
||||
@ -804,13 +873,13 @@ namespace Deckungsbeitrag
|
||||
}
|
||||
public static void SWS_Drucken(Auftrag auftrag, Kunde adresse, object sender)
|
||||
{
|
||||
|
||||
_settings.Load();
|
||||
if (auftrag != null) _auftrag = auftrag;
|
||||
if (adresse != null) _adresse = adresse;
|
||||
|
||||
PrintDialog dialog = new PrintDialog();
|
||||
foreach (string printer in PrinterSettings.InstalledPrinters) if (printer.Contains(Properties.Settings.Default.SWS_Drucker)) dialog.PrinterSettings.PrinterName = printer;
|
||||
dialog.PrinterSettings.Copies = (short)Settings.Default.SWS_Copies;
|
||||
foreach (string printer in PrinterSettings.InstalledPrinters) if (printer.Contains(_settings.DruckerSWS)) dialog.PrinterSettings.PrinterName = printer;
|
||||
dialog.PrinterSettings.Copies = (short)_settings.CopiesSWS;
|
||||
|
||||
if (dialog.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
@ -874,6 +943,7 @@ namespace Deckungsbeitrag
|
||||
}
|
||||
public static DialogResult Etikett_Drucken(Auftrag auftrag, bool nocont)
|
||||
{
|
||||
_settings.Load();
|
||||
_nocont = nocont;
|
||||
_auftrag = auftrag;
|
||||
int x = auftrag.ContainerClean;
|
||||
@ -881,14 +951,17 @@ namespace Deckungsbeitrag
|
||||
//PrintPreviewDialog preview = new PrintPreviewDialog();
|
||||
PrintDocument printDocument = new PrintDocument();
|
||||
|
||||
foreach (string printer in PrinterSettings.InstalledPrinters) if (printer.Contains(Properties.Settings.Default.Etikett_Drucker)) dialog.PrinterSettings.PrinterName = printer;
|
||||
foreach (string printer in PrinterSettings.InstalledPrinters)
|
||||
{
|
||||
if (printer.Contains(_settings.DruckerEtikett)) dialog.PrinterSettings.PrinterName = printer;
|
||||
printDocument.DefaultPageSettings.PaperSize = new PaperSize("Etikett-Custom", 29, 90);
|
||||
}
|
||||
dialog.PrinterSettings.Copies = (short)auftrag.ContainerClean;
|
||||
|
||||
if (dialog.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
printDocument.PrinterSettings = dialog.PrinterSettings;
|
||||
printDocument.PrintPage += new PrintPageEventHandler(PrintDocument_PrintPage);
|
||||
if (!printDocument.PrinterSettings.PrinterName.Contains(Properties.Settings.Default.Etikett_Drucker)) printDocument.DefaultPageSettings.PaperSize = new PaperSize("Etikett-Custom", 29, 90);
|
||||
//preview.StartPosition = FormStartPosition.CenterScreen;
|
||||
//preview.WindowState = FormWindowState.Normal;
|
||||
//preview.Document = printDocument;
|
||||
@ -898,6 +971,9 @@ namespace Deckungsbeitrag
|
||||
dialog.Document.DocumentName = "Etikett";
|
||||
printDocument.Print();
|
||||
|
||||
_settings.DruckerEtikett = dialog.PrinterSettings.PrinterName;
|
||||
_settings.Save();
|
||||
|
||||
return DialogResult.OK;
|
||||
}
|
||||
|
||||
@ -905,20 +981,27 @@ namespace Deckungsbeitrag
|
||||
}
|
||||
public static Image TourenListe_Entwurf(List<Auftrag> auftragliste, Benutzer fahrer, int bottom, Tour tour)
|
||||
{
|
||||
Bitmap bitmap = new Bitmap(1, 1);
|
||||
Graphics g = Graphics.FromImage(bitmap);
|
||||
DateTime liefertag = auftragliste[0].Liefertag;
|
||||
int ezl = 50; int lastline = 0;
|
||||
float fontsize = 15; float fontsize2 = 30; float fontsize3 = 10;
|
||||
|
||||
int bitmapHeight = CalculateBitmapHeight(auftragliste);
|
||||
Bitmap bitmap = new Bitmap(790, bitmapHeight);
|
||||
Graphics g = Graphics.FromImage(bitmap);
|
||||
Point adressblock = new Point(ezl, 50);
|
||||
Point tabelle = new Point(ezl, 330);
|
||||
Point trello = new Point(ezl, 200);
|
||||
SizeF textSize2 = g.MeasureString("Salzburg, am 26.08.1984", new Font("Arial", fontsize, FontStyle.Regular));
|
||||
SizeF textSize3 = g.MeasureString("MO", new Font("Arial", fontsize2, FontStyle.Regular));
|
||||
SizeF textSize4 = g.MeasureString("MO", new Font("Arial", fontsize3, FontStyle.Regular));
|
||||
SizeF textSizePos = g.MeasureString("Container Gesamt: ", new Font("Arial", fontsize, FontStyle.Regular));
|
||||
SizeF textSizePos2 = g.MeasureString("Container: ", new Font("Arial", fontsize, FontStyle.Regular));
|
||||
SizeF datumSize = g.MeasureString("00.00.0000 - 00:00", new Font("Arial", 10, FontStyle.Regular));
|
||||
|
||||
int auftragHeight = 50;
|
||||
int bitmapHeight = adressblock.Y + tabelle.Y + (auftragHeight * auftragliste.Count); //CalculateBitmapHeight(auftragliste);
|
||||
int totalHeight = 1119 * Math.Max(1, (int)Math.Ceiling((double)bitmapHeight / 1119));
|
||||
|
||||
bitmap = new Bitmap(790, totalHeight);
|
||||
g = Graphics.FromImage(bitmap);
|
||||
|
||||
|
||||
g.FillRectangle(Brushes.White, 0, 0, bitmap.Width, bitmap.Height);
|
||||
@ -930,16 +1013,27 @@ namespace Deckungsbeitrag
|
||||
//TOUR START UND ENDE ZEILE 3
|
||||
g.DrawString($"Tour Start um:", new Font("Arial", fontsize, FontStyle.Regular), Brushes.Black, tabelle.X, lastline = lastline + (int)textSize3.Height + 40);
|
||||
g.DrawString($"Tour Ende um:", new Font("Arial", fontsize, FontStyle.Regular), Brushes.Black, (bitmap.Width / 2), lastline);
|
||||
|
||||
|
||||
|
||||
//TOURKOPF ENDLINIE ALLE ÄNDERUNGEN AM TOURKOPF ^^ DARÜBER EINFÜGEN
|
||||
g.DrawLine(new Pen(Brushes.Black), new Point(tabelle.X, tabelle.Y + 20), new Point(bitmap.Width - 50, lastline = tabelle.Y + 20));
|
||||
g.DrawLine(new Pen(Brushes.Black), new Point(trello.X, trello.Y + 20), new Point(bitmap.Width - 50, lastline = trello.Y + 20));
|
||||
|
||||
foreach (TrelloCard card in _cards)
|
||||
{
|
||||
g.DrawString("Zusätzliche Infos:", new Font("Arial", fontsize3, FontStyle.Bold), Brushes.Black, ezl, lastline);
|
||||
lastline = lastline + (int)textSize4.Height;
|
||||
g.DrawString($"{card.DueDate:d} {card.Name}", new Font("Arial", fontsize3, FontStyle.Regular), Brushes.Black, ezl, lastline = lastline + 5);
|
||||
lastline = lastline + (int)textSize4.Height;
|
||||
}
|
||||
|
||||
//AUFTRAG STARTLINIE ALLE ÄNDERUNGEN AN TRELLOKARTEN ^^ DARÜBER EINFÜGEN
|
||||
g.DrawLine(new Pen(Brushes.Black), new Point(tabelle.X, tabelle.Y + 20), new Point(bitmap.Width - 50, lastline = lastline + 20));
|
||||
|
||||
|
||||
int idx1 = 0;
|
||||
int gesCont = 0;
|
||||
int kndanzahl = 0;
|
||||
int kndnichtfertig = 0;
|
||||
bool seitenwechsel = false;
|
||||
foreach (Auftrag auftrag in auftragliste)
|
||||
{
|
||||
Kunde knd = Kunde.GetKunde(string.Empty, auftrag.KundeID, string.Empty);
|
||||
@ -960,16 +1054,16 @@ namespace Deckungsbeitrag
|
||||
else style = FontStyle.Regular;
|
||||
|
||||
++idx1;
|
||||
if (kndanzahl == 15)
|
||||
{
|
||||
if (kndanzahl == 34)
|
||||
{
|
||||
if (kndanzahl == 54) lastline += 140;
|
||||
else lastline += 140;
|
||||
}
|
||||
else lastline += 140;
|
||||
}
|
||||
|
||||
//if (kndanzahl == 15)
|
||||
//{
|
||||
// if (kndanzahl == 34)
|
||||
// {
|
||||
// if (kndanzahl == 54) lastline += 140;
|
||||
// else lastline += 140;
|
||||
// }
|
||||
// else lastline += 140;
|
||||
//}
|
||||
if (lastline > 1000 && !seitenwechsel) { lastline += 140; seitenwechsel = true; }
|
||||
//ZEILE 1
|
||||
g.DrawString($"{auftrag.Status.ToString()}", new Font("Arial", fontsize, style), Brushes.Black, tabelle.X, lastline + 5);
|
||||
g.DrawString($"{knd.KundeNummer} {kndName}", new Font("Arial", fontsize, style), Brushes.Black, tabelle.X + 130, lastline = lastline + 5);
|
||||
@ -1009,13 +1103,14 @@ namespace Deckungsbeitrag
|
||||
//TODO: Reg.Aufträge einbauen. Besonderheit: Die Artikel sollen ebenfalls erscheinen.
|
||||
//TODO: Zuweisung zu Fahrer muss geklärt werden.
|
||||
}
|
||||
public static void TourenListe_Drucken(List<Auftrag> auftragliste, Tour tour, object sender, Benutzer benutzer, Benutzer fahrer)
|
||||
public static void TourenListe_Drucken(List<Auftrag> auftragliste, Tour tour, object sender, Benutzer benutzer, Benutzer fahrer, List<TrelloCard> cards)
|
||||
{
|
||||
|
||||
if (auftragliste != null) _auftragliste = auftragliste;
|
||||
if (fahrer != null) _fahrer = fahrer;
|
||||
if (benutzer != null) _benutzer = benutzer;
|
||||
if (tour != null) _tour = tour;
|
||||
if (cards != null) _cards = cards;
|
||||
|
||||
string dateiName = $"{_auftragliste[0].Liefertag}_{_tour.Bezeichnung}_{_fahrer.BenutzerName}";
|
||||
currentPage = 0; // WICHTIG: reset vor jedem Druck
|
||||
|
||||
@ -1029,7 +1124,7 @@ namespace Deckungsbeitrag
|
||||
|
||||
try
|
||||
{
|
||||
foreach (string printer in PrinterSettings.InstalledPrinters) if (printer.Contains(Properties.Settings.Default.SWS_Drucker)) dialog.PrinterSettings.PrinterName = printer;
|
||||
foreach (string printer in PrinterSettings.InstalledPrinters) if (printer.Contains(_settings.DruckerTourenListe)) dialog.PrinterSettings.PrinterName = printer;
|
||||
dialog.PrinterSettings.Copies = 1;
|
||||
|
||||
if (dialog.ShowDialog() == DialogResult.OK)
|
||||
@ -1086,7 +1181,7 @@ namespace Deckungsbeitrag
|
||||
}
|
||||
}
|
||||
}
|
||||
public static Image SonderEtikett_Entwurf(int KundeID, object dictionary)
|
||||
public static Image SonderEtikett_Entwurf(int KundeID, object dictionary, Auftrag auftrag)
|
||||
{
|
||||
Kunde kunde = Kunde.GetKunde(string.Empty, KundeID, string.Empty);
|
||||
|
||||
@ -1110,7 +1205,9 @@ namespace Deckungsbeitrag
|
||||
|
||||
g.FillRectangle(Brushes.White, 0, 0, bitmap.Width, bitmap.Height);
|
||||
//Etikett-Text
|
||||
g.DrawString($"{kunde.KundeNummer}", font2, Brushes.Black, startpoint);
|
||||
g.DrawString($"{auftrag.Typ.ToString()}", font2, Brushes.Black, startpoint);
|
||||
nextposition += (int)height_font2;
|
||||
g.DrawString($"{kunde.KundeNummer}", font2, Brushes.Black, einzug, nextposition);
|
||||
nextposition += (int)height_font2;
|
||||
int length = kunde.Suchtext.Length < 10 ? kunde.Suchtext.Length : 10;
|
||||
g.DrawString($"{kunde.Suchtext.Substring(0, length)}", font2, Brushes.Black, einzug, nextposition);
|
||||
@ -1172,9 +1269,11 @@ namespace Deckungsbeitrag
|
||||
Image img = bitmap;
|
||||
return img;
|
||||
}
|
||||
public static DialogResult SonderEtikett_Drucken(int kundeID, object dictionary)
|
||||
public static DialogResult SonderEtikett_Drucken(int kundeID, object dictionary, Auftrag auftrag)
|
||||
{
|
||||
_settings.Load();
|
||||
_dictionary = dictionary;
|
||||
_auftrag = auftrag;
|
||||
KundeID = kundeID;
|
||||
//int x = auftrag.ContainerClean;
|
||||
|
||||
@ -1184,9 +1283,10 @@ namespace Deckungsbeitrag
|
||||
|
||||
foreach (string printer in PrinterSettings.InstalledPrinters)
|
||||
{
|
||||
if (printer.Contains(Properties.Settings.Default.Etikett_Drucker))
|
||||
if (printer.Contains(_settings.DruckerEtikett))
|
||||
{
|
||||
dialog.PrinterSettings.PrinterName = printer;
|
||||
printDocument.DefaultPageSettings.PaperSize = new PaperSize("Etikett-Custom", 29, 90);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -1197,9 +1297,6 @@ namespace Deckungsbeitrag
|
||||
printDocument.PrinterSettings = dialog.PrinterSettings;
|
||||
printDocument.PrintPage -= PrintDocument_PrintPage;
|
||||
printDocument.PrintPage += PrintDocument_PrintPage;
|
||||
|
||||
// Wenn Drucker ist NICHT Etikett_Drucker wird Papiergröße Custom gesetzt
|
||||
if (!printDocument.PrinterSettings.PrinterName.Contains(Properties.Settings.Default.Etikett_Drucker)) printDocument.DefaultPageSettings.PaperSize = new PaperSize("Etikett-Custom", 29, 90);
|
||||
|
||||
dialog.Document = printDocument;
|
||||
dialog.Document.DocumentName = "Sonder";
|
||||
@ -1241,7 +1338,7 @@ namespace Deckungsbeitrag
|
||||
if (sender.ToString().Contains("Sonder"))
|
||||
{
|
||||
if (!inPreview) printed = true;
|
||||
e.Graphics.DrawImage(SonderEtikett_Entwurf(KundeID, _dictionary), e.PageBounds);
|
||||
e.Graphics.DrawImage(SonderEtikett_Entwurf(KundeID, _dictionary, _auftrag), e.PageBounds);
|
||||
}
|
||||
if (sender.ToString().Contains("TourenListe"))
|
||||
{
|
||||
@ -1250,7 +1347,8 @@ namespace Deckungsbeitrag
|
||||
Image img = TourenListe_Entwurf(_auftragliste, _fahrer, bottom, _tour);
|
||||
if (img == null) return;
|
||||
|
||||
pagesToPrint = img.Height / 1119;
|
||||
pagesToPrint = Math.Max(1, (int)Math.Ceiling((double)img.Height / 1119));
|
||||
//pagesToPrint = img.Height / 1119;
|
||||
|
||||
Rectangle printArea = e.MarginBounds;
|
||||
|
||||
|
||||
@ -9,7 +9,6 @@ using System.Runtime.CompilerServices;
|
||||
using System.Runtime.Remoting.Metadata.W3cXsd2001;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using static System.Net.Mime.MediaTypeNames;
|
||||
|
||||
namespace DatenDB
|
||||
@ -99,7 +98,7 @@ namespace DatenDB
|
||||
|
||||
return resultList;
|
||||
}
|
||||
internal static List<Kunde> GetReklamationListe(string waescheart)
|
||||
public static List<Kunde> GetReklamationListe(string waescheart)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<Kunde> resultList = new List<Kunde>();
|
||||
@ -115,7 +114,7 @@ namespace DatenDB
|
||||
|
||||
return resultList;
|
||||
}
|
||||
internal static List<Kunde> GetKundenTourenListe(string region)
|
||||
public static List<Kunde> GetKundenTourenListe(string region)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<Kunde> resultList = new List<Kunde>();
|
||||
@ -203,7 +202,7 @@ namespace DatenDB
|
||||
if (id != null) command.CommandText = $"select {COLUMNS} from {TABLE} where kunde_id = {id}";
|
||||
if (!string.IsNullOrEmpty(name))
|
||||
{
|
||||
command.CommandText = $"select {COLUMNS} from {TABLE} where LOWER(name1) = '{name}'";
|
||||
command.CommandText = $"select {COLUMNS} from {TABLE} where LOWER(name1) ~* '{name}' or LOWER(suchtext) ~* '{name}'";
|
||||
}
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) kunde = new Kunde(reader);
|
||||
@ -347,7 +346,7 @@ namespace DatenDB
|
||||
}
|
||||
}
|
||||
|
||||
internal static List<string> GetRegionDistinct()
|
||||
public static List<string> GetRegionDistinct()
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<string> resultList = new List<string>();
|
||||
|
||||
@ -9,6 +9,7 @@ using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
|
||||
namespace DatenDB
|
||||
{
|
||||
public class KundeArtikel
|
||||
@ -270,9 +271,10 @@ namespace DatenDB
|
||||
|
||||
[OLVColumn("ArtNr.", DisplayIndex = 2, TextAlign = HorizontalAlignment.Left)] public int ArtikelNR { get; set; }
|
||||
[OLVColumn("Artikel", DisplayIndex = 3, TextAlign = HorizontalAlignment.Left)] public string ArtikelName { get; set; }
|
||||
[OLVColumn("Nachwäsche", DisplayIndex = 4, TextAlign = HorizontalAlignment.Center)] public int Fehlmenge { get; set; }
|
||||
[OLVColumn("Korrektur", DisplayIndex = 5, TextAlign = HorizontalAlignment.Center)] public int Korrektur { get; set; }
|
||||
[OLVColumn("Reihung", DisplayIndex = 6, IsVisible = false)] public int Reihung { get; set; }
|
||||
[OLVColumn("Nachwäsche", DisplayIndex = 4, TextAlign = HorizontalAlignment.Center, IsEditable = false)] public int Fehlmenge { get; set; }
|
||||
[OLVColumn("Reklamation", DisplayIndex = 5, TextAlign = HorizontalAlignment.Center, IsEditable = false)] public int Reklamation { get; set; }
|
||||
[OLVColumn("Korrektur", DisplayIndex = 6, TextAlign = HorizontalAlignment.Center)] public int Korrektur { get; set; }
|
||||
[OLVColumn("Reihung", DisplayIndex = 7, IsVisible = false)] public int Reihung { get; set; }
|
||||
|
||||
[OLVIgnore] public int? KundeArtikelID { get; set; }
|
||||
[OLVIgnore] public int? KundeID { get; set; }
|
||||
@ -280,7 +282,6 @@ namespace DatenDB
|
||||
[OLVIgnore] public string StandBearbeitet { get; set; }
|
||||
[OLVIgnore] public string FehlmengeBearbeitet { get; set; }
|
||||
[OLVIgnore] public string KorrekturBearbeitet { get; set; }
|
||||
[OLVIgnore] public int Reklamation { get; set; }
|
||||
[OLVIgnore] public int? ArtikelID { get; set; }
|
||||
[OLVIgnore] public string ComboBoxAnzeige => $"{ArtikelNR} {ArtikelName}";
|
||||
[OLVIgnore] public string ReklamationBearbeitet { get; set; }
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<appSettings>
|
||||
<add key="ConnectionString" value="user id=mskleinteile01;password=8cEPQwvWpk;host=10.10.10.1;port=5432;database=Wirl_DB_17012023;Timeout=15" />
|
||||
<add key="ConnectionString" value="user id=postgres;password=Ki985941Wi;host=10.10.10.1;port=5432;database=Test_Wirl;Timeout=15" />
|
||||
<add key="SortimentPfad" value="N:\\TECHNIK\\Software\\Wirl-Verwaltung\\Listen\\Kundensortiment.txt" />
|
||||
<add key="InventurPfad" value="N:\BÜRO\KUNDEN\INVENTUREN\Verwaltung" />
|
||||
<add key="BildPfad" value="C:\\Users\\KilianWirl\\OneDrive - gehgassi GmbH\\Wäscherei Wirl\\Programme\\Deckungsbeitrag\\Deckungsbeitrag\\Star.png" />
|
||||
|
||||
6
Geschaeft/App.config
Normal file
6
Geschaeft/App.config
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
|
||||
</startup>
|
||||
</configuration>
|
||||
89
Geschaeft/Geschaeft.csproj
Normal file
89
Geschaeft/Geschaeft.csproj
Normal file
@ -0,0 +1,89 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{DFA8C4E4-5E87-49F0-9710-89B88066F2F4}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<RootNamespace>Geschaeft</RootNamespace>
|
||||
<AssemblyName>Geschaeft</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<Deterministic>true</Deterministic>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="FormGeschaeftMain.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FormGeschaeftMain.Designer.cs">
|
||||
<DependentUpon>FormGeschaeftMain.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<EmbeddedResource Include="FormGeschaeftMain.resx">
|
||||
<DependentUpon>FormGeschaeftMain.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
<Compile Include="Properties\Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\VirtualKeyboard\VirtualKeyboard.csproj">
|
||||
<Project>{d5d68e54-f738-45e5-82fd-da987f2e0589}</Project>
|
||||
<Name>VirtualKeyboard</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
27
Geschaeft/Program.cs
Normal file
27
Geschaeft/Program.cs
Normal file
@ -0,0 +1,27 @@
|
||||
using Geschaeft.Properties;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace Geschaeft
|
||||
{
|
||||
internal static class Program
|
||||
{
|
||||
public static bool istTouch = true; //TouchHelper.IsTouchDeviceReady();
|
||||
public static Color Wirlblau = Color.FromArgb(1,53,101);
|
||||
|
||||
/// <summary>
|
||||
/// Der Haupteinstiegspunkt für die Anwendung.
|
||||
/// </summary>
|
||||
[STAThread]
|
||||
static void Main()
|
||||
{
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
Application.Run(new FormGeschaeftMain());
|
||||
}
|
||||
}
|
||||
}
|
||||
33
Geschaeft/Properties/AssemblyInfo.cs
Normal file
33
Geschaeft/Properties/AssemblyInfo.cs
Normal file
@ -0,0 +1,33 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// Allgemeine Informationen über eine Assembly werden über die folgenden
|
||||
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
|
||||
// die einer Assembly zugeordnet sind.
|
||||
[assembly: AssemblyTitle("Geschaeft")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("Geschaeft")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2026")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly
|
||||
// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von
|
||||
// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
|
||||
[assembly: Guid("dfa8c4e4-5e87-49f0-9710-89b88066f2f4")]
|
||||
|
||||
// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
|
||||
//
|
||||
// Hauptversion
|
||||
// Nebenversion
|
||||
// Buildnummer
|
||||
// Revision
|
||||
//
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
71
Geschaeft/Properties/Resources.Designer.cs
generated
Normal file
71
Geschaeft/Properties/Resources.Designer.cs
generated
Normal file
@ -0,0 +1,71 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Dieser Code wurde von einem Tool generiert.
|
||||
// Laufzeitversion: 4.0.30319.42000
|
||||
//
|
||||
// Änderungen an dieser Datei können fehlerhaftes Verhalten verursachen und gehen verloren, wenn
|
||||
// der Code neu generiert wird.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace Geschaeft.Properties
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
|
||||
/// </summary>
|
||||
// Diese Klasse wurde von der StronglyTypedResourceBuilder-Klasse
|
||||
// über ein Tool wie ResGen oder Visual Studio automatisch generiert.
|
||||
// Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
|
||||
// mit der Option /str erneut aus, oder erstellen Sie Ihr VS-Projekt neu.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources
|
||||
{
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager
|
||||
{
|
||||
get
|
||||
{
|
||||
if ((resourceMan == null))
|
||||
{
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Geschaeft.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
|
||||
/// Ressourcenlookups, die diese stark typisierte Ressourcenklasse verwenden.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture
|
||||
{
|
||||
get
|
||||
{
|
||||
return resourceCulture;
|
||||
}
|
||||
set
|
||||
{
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
117
Geschaeft/Properties/Resources.resx
Normal file
117
Geschaeft/Properties/Resources.resx
Normal file
@ -0,0 +1,117 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
30
Geschaeft/Properties/Settings.Designer.cs
generated
Normal file
30
Geschaeft/Properties/Settings.Designer.cs
generated
Normal file
@ -0,0 +1,30 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace Geschaeft.Properties
|
||||
{
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
|
||||
{
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default
|
||||
{
|
||||
get
|
||||
{
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
7
Geschaeft/Properties/Settings.settings
Normal file
7
Geschaeft/Properties/Settings.settings
Normal file
@ -0,0 +1,7 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
|
||||
<Profiles>
|
||||
<Profile Name="(Default)" />
|
||||
</Profiles>
|
||||
<Settings />
|
||||
</SettingsFile>
|
||||
36
Program.cs
36
Program.cs
@ -198,11 +198,23 @@ namespace Deckungsbeitrag
|
||||
Application.UseWaitCursor = false;
|
||||
|
||||
if (istest) { Application.Run(new FormAufleger()); return; }
|
||||
|
||||
|
||||
//laden.Close();
|
||||
if (userid.Contains("geschaeft")) Application.Run(new FormGeschaeftMain());
|
||||
|
||||
if (userid.StartsWith("ms") | userid.StartsWith("ps"))
|
||||
{
|
||||
Maschine maschine = Maschine.GetMaschine(null, userid);
|
||||
if (maschine == null)
|
||||
{
|
||||
maschine = new Maschine()
|
||||
{
|
||||
Faecher = 1,
|
||||
Bezeichnung = userid,
|
||||
TrocknerKaputt = false,
|
||||
};
|
||||
maschine.Save();
|
||||
}
|
||||
switch (userid)
|
||||
{
|
||||
case var s when s.Contains("wstrasse"):
|
||||
@ -271,6 +283,7 @@ namespace Deckungsbeitrag
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#region private-Funktionen
|
||||
private static void TouchAppConfig()
|
||||
@ -387,8 +400,11 @@ namespace Deckungsbeitrag
|
||||
art.Kategorie = ArtikelKategorie.Frottee;
|
||||
break;
|
||||
case var nr when nr.ToString()[1] == '1' & nr.ToString()[2] == '1': // 2. und 3. Stelle wird auf 1 überprüft
|
||||
if (nr.ToString()[4] == '5' || nr.ToString()[4] == '6')
|
||||
art.Kategorie = ArtikelKategorie.Spannleintuch;
|
||||
if (nr.ToString()[4] == '5' || nr.ToString()[4] == '6') // 4. Stelle wird auf 5 oder 6 überprüft
|
||||
{
|
||||
if (nr.ToString()[4] == '5') art.Kategorie = ArtikelKategorie.Frottee; // Wenn 4. Stelle 5 dann Single Spannleintuch und ArtikelKategorie Frottee
|
||||
else art.Kategorie = ArtikelKategorie.Spannleintuch;
|
||||
}
|
||||
else art.Kategorie = ArtikelKategorie.Grossteile;
|
||||
break;
|
||||
case var nr when nr.ToString()[1] == '1' & nr.ToString()[2] == '2': // 2. und 3. Stelle wird auf 2 überprüft
|
||||
@ -598,16 +614,16 @@ namespace Deckungsbeitrag
|
||||
// Prüfen ob neue Version ist größer als aktuelle Version.
|
||||
if (new Version(newVersion).CompareTo(new Version(currentVersion)) > 0)
|
||||
{
|
||||
DialogResult result = DialogResult.Yes;
|
||||
//DialogResult result = MessageBox.Show(
|
||||
// $"Update verfügbar: {newVersion}\nInstallieren?",
|
||||
// "UPDATE VERFÜGBAR",
|
||||
// MessageBoxButtons.YesNo,
|
||||
// MessageBoxIcon.Question);
|
||||
//DialogResult result = DialogResult.Yes;
|
||||
DialogResult result = MessageBox.Show(
|
||||
$"Ein Update wird durchgeführt. Schließe es ab um weiter zu kommen.",
|
||||
"ACHTUNG UPDATE",
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Exclamation);
|
||||
|
||||
string msiPath = Path.Combine(updatePath, $"SetupVerwaltung{newVersion}.msi");
|
||||
|
||||
if (result == DialogResult.Yes)
|
||||
if (result == DialogResult.OK)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
||||
@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
|
||||
//
|
||||
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
|
||||
// indem Sie "*" wie unten gezeigt eingeben:
|
||||
[assembly: AssemblyVersion("1.1.5.7")]
|
||||
[assembly: AssemblyFileVersion("1.1.5.7")]
|
||||
[assembly: AssemblyVersion("1.1.7.0")]
|
||||
[assembly: AssemblyFileVersion("1.1.7.0")]
|
||||
|
||||
@ -34,37 +34,7 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_A41FC3BFD0E1CE905FCB1693E99348B8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_C92C21BE3984A4EC1BCD3A988C56652E"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_4E92FDDD15B89BB89053E8A65FA73EAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_EF6D58F917144384701E1DBDFB979BD8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_8E444A9D7B7F9420CF44964B1EAE9AAA"
|
||||
"OwnerKey" = "8:_99A1851DAB14095B2C6FFF6100D312B7"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -76,7 +46,37 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_99A1851DAB14095B2C6FFF6100D312B7"
|
||||
"OwnerKey" = "8:_8E444A9D7B7F9420CF44964B1EAE9AAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_EF6D58F917144384701E1DBDFB979BD8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_4E92FDDD15B89BB89053E8A65FA73EAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_C92C21BE3984A4EC1BCD3A988C56652E"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_A41FC3BFD0E1CE905FCB1693E99348B8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -124,31 +124,7 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"OwnerKey" = "8:_A41FC3BFD0E1CE905FCB1693E99348B8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"OwnerKey" = "8:_C92C21BE3984A4EC1BCD3A988C56652E"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"OwnerKey" = "8:_4E92FDDD15B89BB89053E8A65FA73EAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"OwnerKey" = "8:_EF6D58F917144384701E1DBDFB979BD8"
|
||||
"OwnerKey" = "8:_8A953E0634B8757038749C9F77062056"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -160,7 +136,31 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"OwnerKey" = "8:_8A953E0634B8757038749C9F77062056"
|
||||
"OwnerKey" = "8:_EF6D58F917144384701E1DBDFB979BD8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"OwnerKey" = "8:_4E92FDDD15B89BB89053E8A65FA73EAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"OwnerKey" = "8:_C92C21BE3984A4EC1BCD3A988C56652E"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"OwnerKey" = "8:_A41FC3BFD0E1CE905FCB1693E99348B8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -214,13 +214,13 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_65AC8F9F13B5E0ADCA662A6618010328"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"OwnerKey" = "8:_125834DE4128EDE3F82BFC1A45B2ACD9"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_65AC8F9F13B5E0ADCA662A6618010328"
|
||||
"OwnerKey" = "8:_125834DE4128EDE3F82BFC1A45B2ACD9"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -268,19 +268,7 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_8A953E0634B8757038749C9F77062056"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_8A953E0634B8757038749C9F77062056"
|
||||
"OwnerKey" = "8:_D3E738B1E9D7C3C737CDD91DCC4DC37B"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_8A953E0634B8757038749C9F77062056"
|
||||
"OwnerKey" = "8:_125834DE4128EDE3F82BFC1A45B2ACD9"
|
||||
"OwnerKey" = "8:_8E444A9D7B7F9420CF44964B1EAE9AAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -292,7 +280,19 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_8A953E0634B8757038749C9F77062056"
|
||||
"OwnerKey" = "8:_8E444A9D7B7F9420CF44964B1EAE9AAA"
|
||||
"OwnerKey" = "8:_125834DE4128EDE3F82BFC1A45B2ACD9"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_8A953E0634B8757038749C9F77062056"
|
||||
"OwnerKey" = "8:_D3E738B1E9D7C3C737CDD91DCC4DC37B"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_8A953E0634B8757038749C9F77062056"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -352,37 +352,7 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_A41FC3BFD0E1CE905FCB1693E99348B8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_C92C21BE3984A4EC1BCD3A988C56652E"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_4E92FDDD15B89BB89053E8A65FA73EAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_8E444A9D7B7F9420CF44964B1EAE9AAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_EF6D58F917144384701E1DBDFB979BD8"
|
||||
"OwnerKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -394,7 +364,37 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"OwnerKey" = "8:_EF6D58F917144384701E1DBDFB979BD8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_8E444A9D7B7F9420CF44964B1EAE9AAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_4E92FDDD15B89BB89053E8A65FA73EAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_C92C21BE3984A4EC1BCD3A988C56652E"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"OwnerKey" = "8:_A41FC3BFD0E1CE905FCB1693E99348B8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -406,7 +406,7 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C2D67A4770D262B66069252CF1E903CF"
|
||||
"OwnerKey" = "8:_D3E738B1E9D7C3C737CDD91DCC4DC37B"
|
||||
"OwnerKey" = "8:_125834DE4128EDE3F82BFC1A45B2ACD9"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -418,7 +418,7 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_C2D67A4770D262B66069252CF1E903CF"
|
||||
"OwnerKey" = "8:_125834DE4128EDE3F82BFC1A45B2ACD9"
|
||||
"OwnerKey" = "8:_D3E738B1E9D7C3C737CDD91DCC4DC37B"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -442,13 +442,13 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_E637243CDA02D043DD2BAED063790F80"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"OwnerKey" = "8:_EF6D58F917144384701E1DBDFB979BD8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_E637243CDA02D043DD2BAED063790F80"
|
||||
"OwnerKey" = "8:_EF6D58F917144384701E1DBDFB979BD8"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -472,169 +472,7 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_848FCB2438E4DBC274C4D124CEB9562C"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_EEA0FC277F3C1BC119E28ABD40FA3C76"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_16723AF5DFDEF26FC6A07BEB7D389737"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_65845AF9470C67B4E2216A46EFF4246C"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_D3E738B1E9D7C3C737CDD91DCC4DC37B"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_A41FC3BFD0E1CE905FCB1693E99348B8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_C92C21BE3984A4EC1BCD3A988C56652E"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_2DE2024BE0845063AAE50C820ED805AE"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_BDDC042CD8ACEF57F35D002490214D33"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_125834DE4128EDE3F82BFC1A45B2ACD9"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_EF6D58F917144384701E1DBDFB979BD8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_65AC8F9F13B5E0ADCA662A6618010328"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_4E92FDDD15B89BB89053E8A65FA73EAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_8E444A9D7B7F9420CF44964B1EAE9AAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_99A1851DAB14095B2C6FFF6100D312B7"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_1B916DE951F447CD3C62E7AEBE228A3F"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_C2D67A4770D262B66069252CF1E903CF"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_8A953E0634B8757038749C9F77062056"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_17ABCA3C569C9181F3FE3A46B8638164"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_E637243CDA02D043DD2BAED063790F80"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_70C791195E1E3B637AE8CB0DE5BB4EFB"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_0014568666DC36A67BD4258FEDAE4805"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_8208B2126E1B253A2E427D55D4E5F13A"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_A2FA7AC58F6A16AB132434F8A00EA507"
|
||||
"OwnerKey" = "8:_5CDE0A18B0E8657CBCF9143673DB464A"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
@ -646,7 +484,169 @@
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_5CDE0A18B0E8657CBCF9143673DB464A"
|
||||
"OwnerKey" = "8:_A2FA7AC58F6A16AB132434F8A00EA507"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_8208B2126E1B253A2E427D55D4E5F13A"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_0014568666DC36A67BD4258FEDAE4805"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_70C791195E1E3B637AE8CB0DE5BB4EFB"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_E637243CDA02D043DD2BAED063790F80"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_4C0EEC06451FEA61E39F79681578838C"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_0B016AD02A79C43C243D615B3AD40570"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_17ABCA3C569C9181F3FE3A46B8638164"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_8A953E0634B8757038749C9F77062056"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_C2D67A4770D262B66069252CF1E903CF"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_1B916DE951F447CD3C62E7AEBE228A3F"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_99A1851DAB14095B2C6FFF6100D312B7"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_8E444A9D7B7F9420CF44964B1EAE9AAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_4E92FDDD15B89BB89053E8A65FA73EAA"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_65AC8F9F13B5E0ADCA662A6618010328"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_EF6D58F917144384701E1DBDFB979BD8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_125834DE4128EDE3F82BFC1A45B2ACD9"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_BDDC042CD8ACEF57F35D002490214D33"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_2DE2024BE0845063AAE50C820ED805AE"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_C92C21BE3984A4EC1BCD3A988C56652E"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_A41FC3BFD0E1CE905FCB1693E99348B8"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_D3E738B1E9D7C3C737CDD91DCC4DC37B"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_65845AF9470C67B4E2216A46EFF4246C"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_16723AF5DFDEF26FC6A07BEB7D389737"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_EEA0FC277F3C1BC119E28ABD40FA3C76"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_848FCB2438E4DBC274C4D124CEB9562C"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
"Entry"
|
||||
{
|
||||
"MsmKey" = "8:_UNDEFINED"
|
||||
"OwnerKey" = "8:_AD2C2F4AADC342899908C708EB4F4A72"
|
||||
"MsmSig" = "8:_UNDEFINED"
|
||||
}
|
||||
}
|
||||
@ -751,11 +751,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:AForge.Video, Version=2.2.5.0, Culture=neutral, PublicKeyToken=cbfb6e07d173c401, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_0014568666DC36A67BD4258FEDAE4805"
|
||||
{
|
||||
"Name" = "8:AForge.Video.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:AForge.Video.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -782,11 +777,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Memory, Version=4.0.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_0B016AD02A79C43C243D615B3AD40570"
|
||||
{
|
||||
"Name" = "8:System.Memory.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Memory.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -813,11 +803,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:Npgsql, Version=4.1.14.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_125834DE4128EDE3F82BFC1A45B2ACD9"
|
||||
{
|
||||
"Name" = "8:Npgsql.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:Npgsql.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -844,11 +829,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:zxing.presentation, Version=0.16.11.0, Culture=neutral, PublicKeyToken=4e88037ac681fe60, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_16723AF5DFDEF26FC6A07BEB7D389737"
|
||||
{
|
||||
"Name" = "8:zxing.presentation.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:zxing.presentation.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -875,11 +855,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:HarfBuzzSharp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_17ABCA3C569C9181F3FE3A46B8638164"
|
||||
{
|
||||
"Name" = "8:HarfBuzzSharp.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:HarfBuzzSharp.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -906,11 +881,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:Microsoft.Bcl.HashCode, Version=6.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_1B916DE951F447CD3C62E7AEBE228A3F"
|
||||
{
|
||||
"Name" = "8:Microsoft.Bcl.HashCode.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:Microsoft.Bcl.HashCode.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -937,11 +907,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:Spire.Barcode, Version=7.4.1.0, Culture=neutral, PublicKeyToken=663f351905198cb3, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_2DE2024BE0845063AAE50C820ED805AE"
|
||||
{
|
||||
"Name" = "8:Spire.Barcode.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:Spire.Barcode.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -988,11 +953,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Runtime.CompilerServices.Unsafe, Version=6.0.3.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_4C0EEC06451FEA61E39F79681578838C"
|
||||
{
|
||||
"Name" = "8:System.Runtime.CompilerServices.Unsafe.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Runtime.CompilerServices.Unsafe.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1019,11 +979,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Text.Encodings.Web, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_4E92FDDD15B89BB89053E8A65FA73EAA"
|
||||
{
|
||||
"Name" = "8:System.Text.Encodings.Web.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Text.Encodings.Web.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1070,11 +1025,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Net.Sockets, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_5CDE0A18B0E8657CBCF9143673DB464A"
|
||||
{
|
||||
"Name" = "8:System.Net.Sockets.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Net.Sockets.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1101,11 +1051,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:zxing, Version=0.16.11.0, Culture=neutral, PublicKeyToken=4e88037ac681fe60, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_65845AF9470C67B4E2216A46EFF4246C"
|
||||
{
|
||||
"Name" = "8:zxing.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:zxing.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1132,11 +1077,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_65AC8F9F13B5E0ADCA662A6618010328"
|
||||
{
|
||||
"Name" = "8:System.ValueTuple.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.ValueTuple.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1163,11 +1103,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Runtime.InteropServices.RuntimeInformation, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_6A4E9AB7C92A8099AD635862468BFCBE"
|
||||
{
|
||||
"Name" = "8:System.Runtime.InteropServices.RuntimeInformation.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Runtime.InteropServices.RuntimeInformation.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1194,11 +1129,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:AForge.Video.DirectShow, Version=2.2.5.0, Culture=neutral, PublicKeyToken=61ea4348d43881b7, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_70C791195E1E3B637AE8CB0DE5BB4EFB"
|
||||
{
|
||||
"Name" = "8:AForge.Video.DirectShow.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:AForge.Video.DirectShow.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1225,11 +1155,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:AForge, Version=2.2.5.0, Culture=neutral, PublicKeyToken=c1db6ff4eaa06aeb, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_8208B2126E1B253A2E427D55D4E5F13A"
|
||||
{
|
||||
"Name" = "8:AForge.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:AForge.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1253,14 +1178,9 @@
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:VirtualKeyboard, Version=1.0.2.1, Culture=neutral, processorArchitecture=MSIL"
|
||||
"AssemblyAsmDisplayName" = "8:VirtualKeyboard, Version=1.0.2.3, Culture=neutral, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_848FCB2438E4DBC274C4D124CEB9562C"
|
||||
{
|
||||
"Name" = "8:VirtualKeyboard.exe"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:VirtualKeyboard.exe"
|
||||
"TargetName" = "8:"
|
||||
@ -1287,11 +1207,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Threading.Tasks.Extensions, Version=4.2.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_8A953E0634B8757038749C9F77062056"
|
||||
{
|
||||
"Name" = "8:System.Threading.Tasks.Extensions.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Threading.Tasks.Extensions.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1318,11 +1233,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.IO.Pipelines, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_8E444A9D7B7F9420CF44964B1EAE9AAA"
|
||||
{
|
||||
"Name" = "8:System.IO.Pipelines.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.IO.Pipelines.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1349,11 +1259,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:Microsoft.Extensions.Logging.Abstractions, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_99A1851DAB14095B2C6FFF6100D312B7"
|
||||
{
|
||||
"Name" = "8:Microsoft.Extensions.Logging.Abstractions.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:Microsoft.Extensions.Logging.Abstractions.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1380,11 +1285,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Net.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_A2FA7AC58F6A16AB132434F8A00EA507"
|
||||
{
|
||||
"Name" = "8:System.Net.Http.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Net.Http.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1411,11 +1311,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Diagnostics.DiagnosticSource, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_A41FC3BFD0E1CE905FCB1693E99348B8"
|
||||
{
|
||||
"Name" = "8:System.Diagnostics.DiagnosticSource.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Diagnostics.DiagnosticSource.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1442,11 +1337,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:ObjectListView, Version=2.9.3.0, Culture=neutral, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_BDDC042CD8ACEF57F35D002490214D33"
|
||||
{
|
||||
"Name" = "8:ObjectListView.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:ObjectListView.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1473,11 +1363,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Buffers, Version=4.0.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_C025D526FF076AA8036CB8B1A2BD888E"
|
||||
{
|
||||
"Name" = "8:System.Buffers.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Buffers.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1504,11 +1389,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:Microsoft.Bcl.AsyncInterfaces, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_C2D67A4770D262B66069252CF1E903CF"
|
||||
{
|
||||
"Name" = "8:Microsoft.Bcl.AsyncInterfaces.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:Microsoft.Bcl.AsyncInterfaces.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1535,11 +1415,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Collections.Immutable, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_C92C21BE3984A4EC1BCD3A988C56652E"
|
||||
{
|
||||
"Name" = "8:System.Collections.Immutable.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Collections.Immutable.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1566,11 +1441,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Threading.Channels, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_D3E738B1E9D7C3C737CDD91DCC4DC37B"
|
||||
{
|
||||
"Name" = "8:System.Threading.Channels.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Threading.Channels.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1597,11 +1467,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Numerics.Vectors, Version=4.1.6.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_E637243CDA02D043DD2BAED063790F80"
|
||||
{
|
||||
"Name" = "8:System.Numerics.Vectors.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Numerics.Vectors.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1625,14 +1490,9 @@
|
||||
{
|
||||
"AssemblyRegister" = "3:1"
|
||||
"AssemblyIsInGAC" = "11:FALSE"
|
||||
"AssemblyAsmDisplayName" = "8:TrelloIntegration, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"
|
||||
"AssemblyAsmDisplayName" = "8:TrelloIntegration, Version=1.0.0.1, Culture=neutral, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_EEA0FC277F3C1BC119E28ABD40FA3C76"
|
||||
{
|
||||
"Name" = "8:TrelloIntegration.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:TrelloIntegration.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1659,11 +1519,6 @@
|
||||
"AssemblyAsmDisplayName" = "8:System.Text.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"
|
||||
"ScatterAssemblies"
|
||||
{
|
||||
"_EF6D58F917144384701E1DBDFB979BD8"
|
||||
{
|
||||
"Name" = "8:System.Text.Json.dll"
|
||||
"Attributes" = "3:512"
|
||||
}
|
||||
}
|
||||
"SourcePath" = "8:System.Text.Json.dll"
|
||||
"TargetName" = "8:"
|
||||
@ -1739,15 +1594,15 @@
|
||||
{
|
||||
"Name" = "8:Microsoft Visual Studio"
|
||||
"ProductName" = "8:SetupVerwaltung"
|
||||
"ProductCode" = "8:{9B884941-E5E0-4EA9-AC95-2AEB0FA80FE8}"
|
||||
"PackageCode" = "8:{04A6506F-B180-44A8-AAAC-ECBEB36FCC19}"
|
||||
"ProductCode" = "8:{3ED6B287-1043-4189-AF73-35192034AB95}"
|
||||
"PackageCode" = "8:{76C9A4E3-4912-4F55-96A5-79CD92D6BE3E}"
|
||||
"UpgradeCode" = "8:{2DC7CE56-8D1C-42EB-B326-2E887EBB7F5A}"
|
||||
"AspNetVersion" = "8:"
|
||||
"RestartWWWService" = "11:FALSE"
|
||||
"RemovePreviousVersions" = "11:TRUE"
|
||||
"DetectNewerInstalledVersion" = "11:TRUE"
|
||||
"InstallAllUsers" = "11:FALSE"
|
||||
"ProductVersion" = "8:1.1.57"
|
||||
"ProductVersion" = "8:1.1.70"
|
||||
"Manufacturer" = "8:Kilian Wirl GmbH"
|
||||
"ARPHELPTELEPHONE" = "8:"
|
||||
"ARPHELPLINK" = "8:"
|
||||
|
||||
248
SharedClasses/Artikel.cs
Normal file
248
SharedClasses/Artikel.cs
Normal file
@ -0,0 +1,248 @@
|
||||
using Npgsql;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using BrightIdeasSoftware;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Windows.Forms;
|
||||
using System.Configuration;
|
||||
|
||||
namespace DatenDB
|
||||
{
|
||||
public enum ArtikelKategorie
|
||||
{
|
||||
Unbekannt = 0,
|
||||
Frottee = 1,
|
||||
Grossteile = 2,
|
||||
Kleinteile = 3,
|
||||
Spannleintuch = 4
|
||||
}
|
||||
|
||||
public class Artikel
|
||||
{
|
||||
// 0 1 2 3 4 5 6 7
|
||||
public const string COLUMNS = "artikel_id, nummer, bezeichnung, short, nachwaesche, muellwaesche, last_reset, kategorie"; // aktive hinzufügen
|
||||
private const string TABLE = "kundenverwaltung.artikel";
|
||||
|
||||
public Artikel() { }
|
||||
|
||||
public Artikel(string row, int nr)
|
||||
{
|
||||
//if (nr <= 1) return; //ERSTE ZEILE IGNORIEREN.
|
||||
string[] zeileData = row.Split(';');
|
||||
if (zeileData[0] == "60" || zeileData[0] == "20")
|
||||
{
|
||||
this.Nummer = Convert.ToInt32(zeileData[1]);
|
||||
this.Bezeichnung = zeileData[3];
|
||||
//this.Short = zeileData[4];
|
||||
}
|
||||
}
|
||||
|
||||
public static int? GetArtikelID(int artNr)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
int? result = 0;
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"select artikel_id from {TABLE} where nummer = {artNr}";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) result = reader.GetInt32(0);
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result;
|
||||
}
|
||||
public static string GetShort(int? artikelID, string artname)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
string result = null;
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if (artikelID != null) command.CommandText = $"select short from {TABLE} where artikel_id = {artikelID}";
|
||||
if (!string.IsNullOrWhiteSpace(artname))
|
||||
{
|
||||
artname += "%";
|
||||
command.CommandText = $"select short from {TABLE} where bezeichnung ILIKE '{artname}'";
|
||||
}
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) result = reader.IsDBNull(0) ? string.Empty : reader.GetString(0);
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result;
|
||||
}
|
||||
|
||||
public static Artikel GetArtikel(int? artikelNr, int? artikelID)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
Artikel result = null;
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if (artikelNr != null) command.CommandText = $"select {COLUMNS} from {TABLE} where nummer = {artikelNr}";
|
||||
if (artikelID != null) command.CommandText = $"select {COLUMNS} from {TABLE} where artikel_id = {artikelID}";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) result = new Artikel(reader);
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result;
|
||||
}
|
||||
public static List<Artikel> GetRegArtikelList()
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<Artikel> resultList = new List<Artikel>();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
|
||||
command.CommandText = $"select {COLUMNS} from {TABLE} where SUBSTRING(nummer::text, 2, 1) = '9'";
|
||||
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) resultList.Add(new Artikel(reader));
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return resultList;
|
||||
}
|
||||
|
||||
public static List<Artikel> GetArtikelList(string s)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<Artikel> resultList = new List<Artikel>();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
|
||||
if (s == "Alle") command.CommandText = $"select {COLUMNS} from {TABLE}";
|
||||
if (s == "Nachwaesche") command.CommandText = $"select {COLUMNS} from {TABLE} where kategorie > 0 and SUBSTRING(nummer::text, 1, 1) = '6' order by kategorie ASC, nummer ASC";
|
||||
if (s == "MitNachwaesche") command.CommandText = $"select {COLUMNS} from {TABLE} where nachwaesche > 0";
|
||||
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) resultList.Add(new Artikel(reader));
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return resultList;
|
||||
}
|
||||
|
||||
|
||||
public static int SaveList(List<Artikel> artlist)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
int result = 0;
|
||||
foreach (Artikel art in artlist)
|
||||
{
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if (art.ArtikelID.HasValue & art.ArtikelID != 0)
|
||||
{
|
||||
command.CommandText = $"update {TABLE} set nummer = :p1, bezeichnung = :p2, short = :p3, nachwaesche = :p4, muellwaesche = :p5, last_reset = :p6, kategorie = :p7 where artikel_id = :p0";
|
||||
}
|
||||
else
|
||||
{
|
||||
command.CommandText = "select nextval('kundenverwaltung.artikel_seq')";
|
||||
art.ArtikelID = (int)(long)command.ExecuteScalar();
|
||||
command.CommandText = $"insert into {TABLE} ({COLUMNS}) values (:p0, :p1, :p2, :p3, :p4, :p5, :p6, :p7)";
|
||||
}
|
||||
command.Parameters.AddWithValue("p0", art.ArtikelID);
|
||||
command.Parameters.AddWithValue("p1", art.Nummer);
|
||||
command.Parameters.AddWithValue("p2", string.IsNullOrEmpty(art.Bezeichnung) ? (object)DBNull.Value : art.Bezeichnung);
|
||||
command.Parameters.AddWithValue("p3", string.IsNullOrEmpty(art.Short) ? (object)DBNull.Value : art.Short);
|
||||
command.Parameters.AddWithValue("p4", art.Nachwaesche);
|
||||
command.Parameters.AddWithValue("p5", art.Muellwaesche);
|
||||
command.Parameters.AddWithValue("p6", art.LastReset.HasValue ? art.LastReset.Value : (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("p7", (int)art.Kategorie);
|
||||
command.ExecuteNonQuery();
|
||||
result++;
|
||||
}
|
||||
//result = command.ExecuteNonQuery();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return result;
|
||||
}
|
||||
public int Save()
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
int result = 0;
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
|
||||
if (this.ArtikelID.HasValue & this.ArtikelID != 0)
|
||||
{
|
||||
command.CommandText = $"update {TABLE} set nummer = :p1, bezeichnung = :p2, short = :p3, nachwaesche = :p4, muellwaesche = :p5, last_reset = :p6, kategorie = :p7 where artikel_id = :p0";
|
||||
}
|
||||
else
|
||||
{
|
||||
command.CommandText = "select nextval('kundenverwaltung.artikel_seq')";
|
||||
this.ArtikelID = (int)(long)command.ExecuteScalar();
|
||||
command.CommandText = $"insert into {TABLE} ({COLUMNS}) values (:p0, :p1, :p2, :p3, :p4, :p5, :p6, :p7)";
|
||||
}
|
||||
command.Parameters.AddWithValue("p0", this.ArtikelID);
|
||||
command.Parameters.AddWithValue("p1", this.Nummer);
|
||||
command.Parameters.AddWithValue("p2", string.IsNullOrEmpty(this.Bezeichnung) ? (object)DBNull.Value : this.Bezeichnung);
|
||||
command.Parameters.AddWithValue("p3", string.IsNullOrEmpty(this.Short) ? (object)DBNull.Value : this.Short);
|
||||
command.Parameters.AddWithValue("p4", this.Nachwaesche);
|
||||
command.Parameters.AddWithValue("p5", this.Muellwaesche);
|
||||
command.Parameters.AddWithValue("p6", this.LastReset.HasValue ? this.LastReset.Value : (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("p7", (int)this.Kategorie);
|
||||
|
||||
result = command.ExecuteNonQuery();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
public Artikel(NpgsqlDataReader reader)
|
||||
{
|
||||
this.ArtikelID = reader.GetInt32(0);
|
||||
this.Nummer = reader.GetInt32(1);
|
||||
this.Bezeichnung = reader.IsDBNull(2) ? string.Empty : reader.GetString(2);
|
||||
this.Short = reader.IsDBNull(3) ? string.Empty : reader.GetString(3);
|
||||
this.Nachwaesche = reader.GetInt32(4);
|
||||
this.Muellwaesche = reader.GetInt32(5);
|
||||
this.LastReset = reader.IsDBNull(6) ? null : (DateTime?)reader.GetDateTime(6);
|
||||
this.Kategorie = (ArtikelKategorie)reader.GetInt16(7);
|
||||
}
|
||||
|
||||
#region Properties
|
||||
[OLVIgnore]
|
||||
public int? ArtikelID { get; set; }
|
||||
|
||||
[OLVColumn("ArtNr.", DisplayIndex = 0, TextAlign = HorizontalAlignment.Right, IsEditable = false)]
|
||||
public int Nummer { get; set; }
|
||||
|
||||
[OLVColumn("Bezeichnung", DisplayIndex = 1, IsEditable = false)]
|
||||
public string Bezeichnung { get; set; }
|
||||
|
||||
[OLVColumn("Abkürzung", DisplayIndex = 2)]
|
||||
public string Short { get; set; }
|
||||
|
||||
//[OLVColumn("Nachwäsche", DisplayIndex = 3, TextAlign = System.Windows.Forms.HorizontalAlignment.Center)]
|
||||
[OLVIgnore]
|
||||
public int Nachwaesche { get; set; }
|
||||
|
||||
//[OLVColumn("Müll", DisplayIndex = 4, TextAlign = System.Windows.Forms.HorizontalAlignment.Center)]
|
||||
[OLVIgnore]
|
||||
public int Muellwaesche { get; set; }
|
||||
|
||||
//[OLVColumn("Letzter Reset", DisplayIndex = 5, AspectToStringFormat = "{0:d}", TextAlign = System.Windows.Forms.HorizontalAlignment.Right)]
|
||||
[OLVIgnore]
|
||||
public DateTime? LastReset { get; set; }
|
||||
|
||||
[OLVColumn("Kategorie", DisplayIndex = 6)]
|
||||
public ArtikelKategorie Kategorie { get; set; }
|
||||
|
||||
private string _reset;
|
||||
//[OLVColumn("Reset", DisplayIndex = 7)]
|
||||
[OLVIgnore]
|
||||
public string Reset
|
||||
{
|
||||
get
|
||||
{
|
||||
if (Nachwaesche > 0)
|
||||
return _reset = "Reset";
|
||||
else
|
||||
return _reset = string.Empty; // Alternativwert, wenn Bedingung nicht erfüllt
|
||||
}
|
||||
set { }
|
||||
}
|
||||
[OLVIgnore]
|
||||
public string ComboBoxAnzeige => $"{Nummer} {Bezeichnung}";
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
125
SharedClasses/AuftragArtikel.cs
Normal file
125
SharedClasses/AuftragArtikel.cs
Normal file
@ -0,0 +1,125 @@
|
||||
using BrightIdeasSoftware;
|
||||
using Npgsql;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace DatenDB
|
||||
{
|
||||
public class AuftragArtikel
|
||||
{
|
||||
private static string TABLE = "kundenverwaltung.auftrag_artikel";
|
||||
private static string COLUMNS = "auftrag_artikel_id, auftrag_id, artikel_id, artikel_name, anzahl, erledigt, gesamt";
|
||||
private static string ACOLUMNS = "a.auftrag_artikel_id, a.auftrag_id, a.artikel_id, a.artikel_name, a.anzahl, a.erledigt, a.gesamt";
|
||||
public Kunde kunde;
|
||||
|
||||
public AuftragArtikel()
|
||||
{
|
||||
}
|
||||
|
||||
public static List<AuftragArtikel> GetList(int? auftragID)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<AuftragArtikel> resultList = new List<AuftragArtikel>();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"select {ACOLUMNS} from {TABLE} a where auftrag_id = {auftragID}";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) resultList.Add(new AuftragArtikel(reader, 1));
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return resultList;
|
||||
}
|
||||
|
||||
public static AuftragArtikel GetArtikel(int aufartid)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
AuftragArtikel result = new AuftragArtikel();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"SELECT {COLUMNS} from {TABLE} where auftrag_artikel_id = {aufartid}";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) result = new AuftragArtikel(reader, 1);
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public int Save()
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if(this.AuftragArtikelID.HasValue & this.AuftragArtikelID != 0)
|
||||
{
|
||||
command.CommandText = $"update {TABLE} set auftrag_id = :p1, artikel_id = :p2, artikel_name = :p3, anzahl = :p4, erledigt = :p5, gesamt = :p6 WHERE auftrag_artikel_id = :p0";
|
||||
}
|
||||
else
|
||||
{
|
||||
command.CommandText = "select nextval('kundenverwaltung.auftrag_artikel_seq')";
|
||||
this.AuftragArtikelID = (int)(long)command.ExecuteScalar();
|
||||
command.CommandText = $"insert into {TABLE} ({COLUMNS}) values (:p0, :p1, :p2, :p3, :p4, :p5, :p6)";
|
||||
}
|
||||
|
||||
command.Parameters.AddWithValue("p0", this.AuftragArtikelID.Value);
|
||||
command.Parameters.AddWithValue("p1", this.AuftragID);
|
||||
command.Parameters.AddWithValue("p2", this.ArtikelID.HasValue ? this.ArtikelID.Value : (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("p3", string.IsNullOrWhiteSpace(this.ArtikelName) ? (object)DBNull.Value : this.ArtikelName);
|
||||
command.Parameters.AddWithValue("p4", this.Anzahl);
|
||||
command.Parameters.AddWithValue("p5", this.Erledigt);
|
||||
command.Parameters.AddWithValue("p6", this.Gesamt);
|
||||
|
||||
int result = command.ExecuteNonQuery();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result;
|
||||
|
||||
}
|
||||
|
||||
public AuftragArtikel(NpgsqlDataReader reader, int i)
|
||||
{
|
||||
if (i == 1)
|
||||
{
|
||||
this.AuftragArtikelID = reader.GetInt32(0);
|
||||
this.AuftragID = reader.GetInt32(1);
|
||||
this.ArtikelID = reader.IsDBNull(2) ? (int?)null : reader.GetInt32(2);
|
||||
this.ArtikelName = reader.IsDBNull(3) ? string.Empty : reader.GetString(3);
|
||||
this.Anzahl = reader.GetInt32(4);
|
||||
this.Erledigt = reader.GetBoolean(5);
|
||||
this.Gesamt = reader.IsDBNull(6) ? 0 : reader.GetInt32(6);
|
||||
}
|
||||
if (i == 2)
|
||||
{
|
||||
kunde = new Kunde();
|
||||
|
||||
this.ArtikelName = reader.GetString(0);
|
||||
this.Anzahl = reader.GetInt32(1);
|
||||
this.kunde.Suchtext = reader.GetString(2);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
[OLVIgnore]
|
||||
public int? AuftragArtikelID { get; set; }
|
||||
[OLVIgnore]
|
||||
public int? AuftragID { get; set; }
|
||||
[OLVIgnore]
|
||||
public int? ArtikelID { get; set; }
|
||||
|
||||
|
||||
[OLVColumn(DisplayIndex = 1, IsEditable = false)]
|
||||
public string ArtikelName { get; set; }
|
||||
[OLVColumn("Anzahl", DisplayIndex = 3, TextAlign = HorizontalAlignment.Center)]
|
||||
public int Anzahl { get; set; }
|
||||
[OLVColumn("Erledigt", DisplayIndex = 0, CheckBoxes = true)]
|
||||
public bool Erledigt { get; set; }
|
||||
[OLVColumn("Offen", DisplayIndex = 2, TextAlign = HorizontalAlignment.Center, IsEditable = false)]
|
||||
public int Gesamt { get; set; }
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
55
SharedClasses/DatenbankConnection.cs
Normal file
55
SharedClasses/DatenbankConnection.cs
Normal file
@ -0,0 +1,55 @@
|
||||
using Deckungsbeitrag;
|
||||
using Npgsql;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Configuration;
|
||||
using System.Linq;
|
||||
using System.Management;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace DatenDB
|
||||
{
|
||||
static class DatenbankConnection
|
||||
{
|
||||
private static NpgsqlConnection connection = null;
|
||||
private static readonly int MaxRetries = 3;
|
||||
private static readonly int RetryDelayMs = 1000; // 1 Sekunde
|
||||
|
||||
public static NpgsqlConnection GetConnection()
|
||||
{
|
||||
if (connection?.State == System.Data.ConnectionState.Open) return connection;
|
||||
connection?.Dispose();
|
||||
|
||||
var cs = ConfigurationManager.AppSettings["ConnectionString"];
|
||||
|
||||
int attempt = 0;
|
||||
while (true)
|
||||
{
|
||||
try
|
||||
{
|
||||
connection = new NpgsqlConnection(cs);
|
||||
|
||||
return connection;
|
||||
}
|
||||
catch (NpgsqlException ex)
|
||||
{
|
||||
attempt++;
|
||||
Console.WriteLine($"DB-Connection-Versuch {attempt}");
|
||||
if (attempt >= MaxRetries)
|
||||
{
|
||||
MessageBox.Show(ex.Message + $"\n\nBitte starte das Programm neu.", "FEHLER", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
Program.AddFehler(null, ex.Message, ex.StackTrace, null);
|
||||
throw; // nach X Versuchen aufgeben
|
||||
}
|
||||
|
||||
Thread.Sleep(RetryDelayMs);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
452
SharedClasses/Kunde.cs
Normal file
452
SharedClasses/Kunde.cs
Normal file
@ -0,0 +1,452 @@
|
||||
using Npgsql;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics.Eventing.Reader;
|
||||
using System.Linq;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.Remoting.Metadata.W3cXsd2001;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using static System.Net.Mime.MediaTypeNames;
|
||||
|
||||
namespace DatenDB
|
||||
{
|
||||
|
||||
public class Kunde
|
||||
{
|
||||
// 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
||||
public const string COLUMNS = "kunde_id, tour_id, kunde_nr, name1, name2, straße, plz, bezeichnung, land, aktiv, bettenanzahl, kunde_gruppe, service, region, waescheart, suchtext, aufgabe, anmerkung, aufgabe_count, sommerlieferrhythmus, winterlieferrhythmus, nachwaesche";
|
||||
private const string RED_COLUMNS = "kunde_id, tour_id, kunde_nr, name1, name2, straße, plz, bezeichnung, land, aktiv, bettenanzahl, kunde_gruppe, service, region, waescheart, jahr, umsatz";
|
||||
public const string TABLE = "kundenverwaltung.kunde";
|
||||
public const string VIEW = "kundenverwaltung.jahresumsaetze"; //RICHTIGE VIEW AUSSUCHEN FÜR INAKTIVE MIT LETZTEN UMSATZ...
|
||||
public Umsatz umsatz;
|
||||
public Kunde()
|
||||
{
|
||||
} // LEER
|
||||
public static List<Kunde> GetTmpList(string text, string kndService)
|
||||
{
|
||||
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<Kunde> resultList = new List<Kunde>();
|
||||
using (NpgsqlCommand command = new NpgsqlCommand())
|
||||
{
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if (kndService != null)
|
||||
{
|
||||
if (string.IsNullOrEmpty(text)) command.CommandText = $"select {COLUMNS} from {TABLE} where aktiv = {true} and service <> '{kndService}'";
|
||||
else
|
||||
{
|
||||
string cleanedText = new string(text.Where(c => char.IsLetterOrDigit(c) || c == ' ').ToArray());
|
||||
|
||||
if (int.TryParse(cleanedText, out _)) command.CommandText = $"select {COLUMNS} from {TABLE} where kunde_nr::varchar ~* '{cleanedText}' and service <> '{kndService}'";
|
||||
else command.CommandText = $"select {COLUMNS} from {TABLE} where suchtext ~* '{cleanedText}' or name1 ~* '{cleanedText}' and service <> '{kndService}'";
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
if (string.IsNullOrEmpty(text)) command.CommandText = $"select {COLUMNS} from {TABLE} where aktiv = {true}";
|
||||
else
|
||||
{
|
||||
string cleanedText = new string(text.Where(c => char.IsLetterOrDigit(c) || c == ' ').ToArray());
|
||||
|
||||
if (int.TryParse(cleanedText, out _)) command.CommandText = $"select {COLUMNS} from {TABLE} where kunde_nr::varchar ~* '{cleanedText}'";
|
||||
else command.CommandText = $"select {COLUMNS} from {TABLE} where suchtext ~* '{cleanedText}' or name1 ~* '{cleanedText}'";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) resultList.Add(new Kunde(reader));
|
||||
reader.Close();
|
||||
}
|
||||
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return resultList;
|
||||
|
||||
}
|
||||
public static int GetKundeID(string kndnr, string text)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
int result = 0;
|
||||
using (NpgsqlCommand command = new NpgsqlCommand())
|
||||
{
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if (!string.IsNullOrEmpty(kndnr)) command.CommandText = $"select kunde_id from {TABLE} where kunde_nr = '{kndnr}'";
|
||||
else command.CommandText = $"select kunde_id from {TABLE} where suchtext ~* '{text}' or name1 ~* '{text}'";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) result = reader.GetInt32(0);
|
||||
reader.Close();
|
||||
}
|
||||
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result;
|
||||
}
|
||||
public static List<string> GetServiceDistinct()
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<string> resultList = new List<string>();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"SELECT distinct service FROM {TABLE} where service is not null";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) resultList.Add(reader.GetString(0));
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return resultList;
|
||||
}
|
||||
public static List<Kunde> GetReklamationListe(string waescheart)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<Kunde> resultList = new List<Kunde>();
|
||||
using (NpgsqlCommand command = new NpgsqlCommand())
|
||||
{
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"select {COLUMNS} from {TABLE} where aktiv = true and waescheart = '{waescheart}' order by bettenanzahl desc";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) resultList.Add(new Kunde(reader));
|
||||
reader.Close();
|
||||
}
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return resultList;
|
||||
}
|
||||
public static List<Kunde> GetKundenTourenListe(string region)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<Kunde> resultList = new List<Kunde>();
|
||||
using (NpgsqlCommand command = new NpgsqlCommand())
|
||||
{
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if (region == string.Empty) command.CommandText = $"select {COLUMNS} from {TABLE} where aktiv = true and service = 'Lieferservice' order by region asc";
|
||||
else command.CommandText = $"select {COLUMNS} from {TABLE} where aktiv = true and service = 'Lieferservice' and region = '{region}' order by region asc";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) resultList.Add(new Kunde(reader));
|
||||
reader.Close();
|
||||
}
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return resultList;
|
||||
}
|
||||
public static List<Kunde> GetList(bool? isaktiv, string text)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<Kunde> resultList = new List<Kunde>();
|
||||
using (NpgsqlCommand command = new NpgsqlCommand())
|
||||
{
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if (isaktiv != null) command.CommandText = $"select {COLUMNS} from {TABLE} where aktiv = {isaktiv}";
|
||||
if (!string.IsNullOrWhiteSpace(text))command.CommandText = $"select {COLUMNS} from {TABLE} where suchtext ~* '{text}'";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) resultList.Add(new Kunde(reader, false));
|
||||
reader.Close();
|
||||
}
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
foreach(Kunde kunde in resultList)
|
||||
{
|
||||
List<OLVKundenumsatz> list = new List<OLVKundenumsatz>();
|
||||
list = OLVKundenumsatz.GetJahresumsatz(kunde.KundeID);
|
||||
if(list.Count > 0)
|
||||
{
|
||||
kunde.Zeitraum = double.Parse(OLVKundenumsatz.GetJahresumsatz(kunde.KundeID).Last().Zeitraum);
|
||||
kunde.Umsatz1 = OLVKundenumsatz.GetJahresumsatz(kunde.KundeID).Last().Umsatz;
|
||||
}
|
||||
else
|
||||
{
|
||||
kunde.Zeitraum = 0;
|
||||
kunde.Umsatz1 = 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return resultList;
|
||||
} //INAKTIV KUNDENLISTE LADEN...
|
||||
public static int GetBettenAnzahl(string bett)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
int betten = 0;
|
||||
using (NpgsqlCommand command = new NpgsqlCommand())
|
||||
{
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
|
||||
if (bett == "Miete") command.CommandText = $"select sum(bettenanzahl) from {TABLE} where aktiv = {true} and waescheart = '{bett}'";
|
||||
else command.CommandText = $"select sum(bettenanzahl) from {TABLE} where aktiv = {true}";
|
||||
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) betten = reader.IsDBNull(0) ? 0 : reader.GetInt16(0);
|
||||
reader.Close();
|
||||
}
|
||||
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return betten;
|
||||
}
|
||||
public static Kunde GetKunde(string nr, int? id, string name)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
Kunde kunde = null;
|
||||
using (NpgsqlCommand command = new NpgsqlCommand())
|
||||
{
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if(nr != null)
|
||||
{
|
||||
if (int.TryParse(nr, out int _))
|
||||
{
|
||||
command.CommandText = $"select {COLUMNS} from {TABLE} where kunde_nr = '{nr}'";
|
||||
}
|
||||
else command.CommandText = $"select {COLUMNS} from {TABLE} where suchtext = '{nr}'";
|
||||
}
|
||||
if (id != null) command.CommandText = $"select {COLUMNS} from {TABLE} where kunde_id = {id}";
|
||||
if (!string.IsNullOrEmpty(name))
|
||||
{
|
||||
command.CommandText = $"select {COLUMNS} from {TABLE} where LOWER(name1) ~* '{name}' or LOWER(suchtext) ~* '{name}'";
|
||||
}
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) kunde = new Kunde(reader);
|
||||
reader.Close();
|
||||
}
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return kunde;
|
||||
}
|
||||
|
||||
public Kunde(NpgsqlDataReader reader, bool mitUmsatz)
|
||||
{
|
||||
if (!mitUmsatz)
|
||||
{
|
||||
this.KundeID = reader.GetInt32(0);
|
||||
this.TourID = reader.IsDBNull(1) ? null : (int?)reader.GetInt32(1);
|
||||
this.KundeNummer = reader.GetString(2);
|
||||
this.KundeName = reader.IsDBNull(3) ? string.Empty : reader.GetString(3);
|
||||
this.KundeName2 = reader.IsDBNull(4) ? string.Empty : reader.GetString(4);
|
||||
this.Strasse = reader.IsDBNull(5) ? string.Empty : reader.GetString(5);
|
||||
this.PLZ = reader.IsDBNull(6) ? null : (int?)reader.GetInt32(6);
|
||||
this.Ort = reader.IsDBNull(7) ? string.Empty : reader.GetString(7);
|
||||
this.Land = reader.IsDBNull(8) ? string.Empty : reader.GetString(8);
|
||||
this.Aktiv = reader.GetBoolean(9);
|
||||
this.Bettenanzahl = reader.IsDBNull(10) ? null : (int?)reader.GetInt32(10);
|
||||
this.KundeGruppe = reader.IsDBNull(11) ? string.Empty : reader.GetString(11);
|
||||
this.Service = reader.IsDBNull(12) ? string.Empty : reader.GetString(12);
|
||||
this.Region = reader.IsDBNull(13) ? string.Empty : reader.GetString(13);
|
||||
this.Waescheart = reader.IsDBNull(14) ? string.Empty : reader.GetString(14);
|
||||
this.Suchtext = reader.IsDBNull(15) ? string.Empty : reader.GetString(15);
|
||||
this.Aufgabe = reader.IsDBNull(16) ? null : (int?)reader.GetInt32(16);
|
||||
this.Anmerkung = reader.IsDBNull(17) ? string.Empty : reader.GetString(17);
|
||||
this.AufgabeCount = reader.IsDBNull(18) ? 0 : reader.GetInt32(18);
|
||||
this.SommerLieferRhythmus = reader.IsDBNull(19) ? (int)Lieferrhythmen.Unbekannt : reader.GetInt16(19);
|
||||
this.WinterLieferRhythmus = reader.IsDBNull(20) ? (int)Lieferrhythmen.Unbekannt : reader.GetInt16(20);
|
||||
this.HatNachwaesche = reader.IsDBNull(21) ? (this.Waescheart == "Miete" ? true : false) : reader.GetBoolean(21);
|
||||
}
|
||||
}
|
||||
public Kunde(NpgsqlDataReader reader)
|
||||
{
|
||||
this.KundeID = reader.GetInt32(0);
|
||||
this.TourID = reader.IsDBNull(1) ? null : (int?)reader.GetInt32(1);
|
||||
this.KundeNummer = reader.GetString(2);
|
||||
this.KundeName = reader.IsDBNull(3) ? string.Empty : reader.GetString(3);
|
||||
this.KundeName2 = reader.IsDBNull(4) ? string.Empty : reader.GetString(4);
|
||||
this.Strasse = reader.IsDBNull(5) ? string.Empty : reader.GetString(5);
|
||||
this.PLZ = reader.IsDBNull(6) ? null : (int?)reader.GetInt32(6);
|
||||
this.Ort = reader.IsDBNull(7) ? string.Empty : reader.GetString(7);
|
||||
this.Land = reader.IsDBNull(8) ? string.Empty : reader.GetString(8);
|
||||
this.Aktiv = reader.GetBoolean(9);
|
||||
this.Bettenanzahl = reader.IsDBNull(10) ? null : (int?)reader.GetInt32(10);
|
||||
this.KundeGruppe = reader.IsDBNull(11) ? string.Empty : reader.GetString(11);
|
||||
this.Service = reader.IsDBNull(12) ? string.Empty : reader.GetString(12);
|
||||
this.Region = reader.IsDBNull(13) ? string.Empty : reader.GetString(13);
|
||||
this.Waescheart = reader.IsDBNull(14) ? string.Empty : reader.GetString(14);
|
||||
this.Suchtext = reader.IsDBNull(15) ? string.Empty : reader.GetString(15);
|
||||
this.Aufgabe = reader.IsDBNull(16) ? null : (int?)reader.GetInt32(16);
|
||||
this.Anmerkung = reader.IsDBNull(17) ? string.Empty : reader.GetString(17);
|
||||
this.AufgabeCount = reader.IsDBNull(18) ? 0 : reader.GetInt32(18);
|
||||
this.SommerLieferRhythmus = reader.IsDBNull(19) ? (int)Lieferrhythmen.Unbekannt : reader.GetInt16(19);
|
||||
this.WinterLieferRhythmus = reader.IsDBNull(20) ? (int)Lieferrhythmen.Unbekannt : reader.GetInt16(20);
|
||||
this.HatNachwaesche = reader.IsDBNull(21) ? (this.Waescheart == "Miete" ? true : false) : reader.GetBoolean(21);
|
||||
}
|
||||
public int Save()
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
|
||||
using (NpgsqlCommand command = new NpgsqlCommand())
|
||||
{
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
|
||||
if (this.KundeID.HasValue & this.KundeID != 0)
|
||||
{
|
||||
command.CommandText = $"update {TABLE} set tour_id = :p1, kunde_nr = :p2, name1 = :p3, name2 = :p4, straße = :p5, plz = :p6, bezeichnung = :p7, land = :p8, aktiv = :p9, bettenanzahl = :p10, kunde_gruppe = :p11, service = :p12, region = :p13, waescheart = :p14, suchtext = :p15, aufgabe = :p16, anmerkung = :p17, aufgabe_count = :p18, sommerlieferrhythmus = :p19, winterlieferrhythmus = :p20, nachwaesche = :p21 WHERE kunde_id = :p0";
|
||||
}
|
||||
else
|
||||
{
|
||||
command.CommandText = "select nextval('kundenverwaltung.kunde_seq')";
|
||||
this.KundeID = (int)(long)command.ExecuteScalar();
|
||||
command.CommandText = $"insert into {TABLE} ({COLUMNS}) values (:p0, :p1, :p2, :p3, :p4, :p5, :p6, :p7, :p8, :p9, :p10, :p11, :p12, :p13, :p14, :p15, :p16, :p17, :p18, :p19, :p20, :p21)";
|
||||
}
|
||||
|
||||
command.Parameters.AddWithValue("p0", this.KundeID);
|
||||
command.Parameters.AddWithValue("p1", this.TourID ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("p2", this.KundeNummer);
|
||||
command.Parameters.AddWithValue("p3", string.IsNullOrEmpty(this.KundeName) ? (object)DBNull.Value : this.KundeName);
|
||||
command.Parameters.AddWithValue("p4", string.IsNullOrEmpty(this.KundeName2) ? (object)DBNull.Value : this.KundeName2);
|
||||
command.Parameters.AddWithValue("p5", string.IsNullOrEmpty(this.Strasse) ? (object)DBNull.Value : this.Strasse);
|
||||
command.Parameters.AddWithValue("p6", this.PLZ ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("p7", string.IsNullOrEmpty(this.Ort) ? (object)DBNull.Value : this.Ort);
|
||||
command.Parameters.AddWithValue("p8", string.IsNullOrEmpty(this.Land) ? (object)DBNull.Value : this.Land);
|
||||
command.Parameters.AddWithValue("p9", this.Aktiv);
|
||||
command.Parameters.AddWithValue("p10", this.Bettenanzahl ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("p11", string.IsNullOrEmpty(this.KundeGruppe) ? (object)DBNull.Value : this.KundeGruppe);
|
||||
command.Parameters.AddWithValue("p12", string.IsNullOrEmpty(this.Service) ? (object)DBNull.Value : this.Service);
|
||||
command.Parameters.AddWithValue("p13", string.IsNullOrEmpty(this.Region) ? (object)DBNull.Value : this.Region);
|
||||
command.Parameters.AddWithValue("p14", string.IsNullOrEmpty(this.Waescheart) ? (object)DBNull.Value : this.Waescheart);
|
||||
command.Parameters.AddWithValue("p15", string.IsNullOrEmpty(this.Suchtext) ? (object)DBNull.Value : this.Suchtext);
|
||||
command.Parameters.AddWithValue("p16", this.Aufgabe ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("p17", string.IsNullOrWhiteSpace(this.Anmerkung) ? (object)DBNull.Value : this.Anmerkung);
|
||||
command.Parameters.AddWithValue("p18", this.AufgabeCount ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("p19", this.SommerLieferRhythmus);
|
||||
command.Parameters.AddWithValue("p20", this.WinterLieferRhythmus);
|
||||
command.Parameters.AddWithValue("p21", this.HatNachwaesche);
|
||||
|
||||
int result = command.ExecuteNonQuery();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result;
|
||||
}
|
||||
}
|
||||
public int CheckKndNr(string v)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
using (NpgsqlCommand command = new NpgsqlCommand())
|
||||
{
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"select kunde_id from {TABLE} where kunde_nr = '{v}'";
|
||||
|
||||
int result = 0;
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) result = reader.GetInt16(0);
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
public static int GetAnzahlKnd(bool? aktiv)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
using (NpgsqlCommand command = new NpgsqlCommand())
|
||||
{
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if (aktiv != null) command.CommandText = $"select count (*) from {TABLE} where aktiv = '{aktiv}'";
|
||||
else command.CommandText = $"select count (*) from {TABLE}";
|
||||
|
||||
int result = (int)(long)command.ExecuteScalar();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
public static List<string> GetRegionDistinct()
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<string> resultList = new List<string>();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"SELECT distinct region FROM {TABLE} where region is not null order by region ASC";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) resultList.Add(reader.GetString(0));
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return resultList;
|
||||
}
|
||||
|
||||
|
||||
#region Properties
|
||||
[OLVIgnore]
|
||||
public int? KundeID { get; set; }
|
||||
|
||||
[OLVIgnore]
|
||||
public int? TourID { get; set; }
|
||||
|
||||
[OLVColumn(IsVisible = false)]
|
||||
public string KundeGruppe { get; set; }
|
||||
|
||||
[OLVColumn("KndNr.", DisplayIndex = 0, IsTileViewColumn = true, TextAlign = System.Windows.Forms.HorizontalAlignment.Center)]
|
||||
public string KundeNummer { get; set; }
|
||||
|
||||
[OLVColumn("Name", DisplayIndex = 1)]
|
||||
public string KundeName { get; set; }
|
||||
|
||||
[OLVColumn("Zusatz", DisplayIndex = 2)]
|
||||
public string KundeName2 { get; set; }
|
||||
|
||||
[OLVColumn(DisplayIndex = 3)]
|
||||
public string Strasse { get; set; }
|
||||
|
||||
[OLVColumn(DisplayIndex = 4)]
|
||||
public string HausNr { get; set; }
|
||||
|
||||
[OLVColumn(DisplayIndex = 5, TextAlign = System.Windows.Forms.HorizontalAlignment.Center)]
|
||||
public int? PLZ { get; set; }
|
||||
|
||||
[OLVColumn(DisplayIndex = 6)]
|
||||
public string Ort { get; set; }
|
||||
|
||||
[OLVColumn(DisplayIndex = 7, TextAlign = System.Windows.Forms.HorizontalAlignment.Center)]
|
||||
public string Land { get; set; }
|
||||
|
||||
[OLVColumn("Betten", DisplayIndex = 8, TextAlign = System.Windows.Forms.HorizontalAlignment.Center)]
|
||||
public int? Bettenanzahl { get; set; }
|
||||
|
||||
[OLVColumn(CheckBoxes = true, DisplayIndex = 9)]
|
||||
public bool Aktiv { get; set; } = true;
|
||||
|
||||
[OLVColumn(DisplayIndex = 10)]
|
||||
public string Service { get; set; }
|
||||
|
||||
[OLVColumn(DisplayIndex = 11)]
|
||||
public string Region { get; set; }
|
||||
|
||||
[OLVColumn(DisplayIndex = 12)]
|
||||
public string Waescheart { get; set; }
|
||||
|
||||
[OLVColumn("Umsatz", DisplayIndex = 15, TextAlign = System.Windows.Forms.HorizontalAlignment.Center, AspectToStringFormat ="{0:C}")]
|
||||
public double? Umsatz1 { get; set; }
|
||||
[OLVIgnore]
|
||||
public double? Umsatz2 { get; set; }
|
||||
[OLVIgnore]
|
||||
public double? DifferenzEUR { get; set; }
|
||||
[OLVIgnore]
|
||||
public double? DifferenzP { get; set; }
|
||||
[OLVIgnore]
|
||||
public double? UmsatzAnteil { get; set; }
|
||||
[OLVIgnore]
|
||||
public double? KostenAnteil { get; set; }
|
||||
[OLVIgnore]
|
||||
public double? GastUmsatz { get; set; }
|
||||
[OLVIgnore]
|
||||
public double? BewertungEUR { get; set; }
|
||||
[OLVIgnore]
|
||||
public string Bewertung { get; set; }
|
||||
|
||||
[OLVColumn("Jahr", DisplayIndex = 14, TextAlign = System.Windows.Forms.HorizontalAlignment.Center)]
|
||||
public double Zeitraum { get; set; }
|
||||
|
||||
[OLVColumn(DisplayIndex = 13)]
|
||||
public string Suchtext { get; set; }
|
||||
|
||||
[OLVIgnore]
|
||||
public int? Aufgabe { get; set; }
|
||||
|
||||
[OLVIgnore]
|
||||
public int? AufgabeCount { get; set; }
|
||||
|
||||
[OLVIgnore]
|
||||
public string Anmerkung { get; set; }
|
||||
[OLVIgnore]
|
||||
public int SommerLieferRhythmus { get; set; }
|
||||
public int WinterLieferRhythmus { get; set; }
|
||||
public bool HatNachwaesche { get; set; }
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
287
SharedClasses/KundeArtikel.cs
Normal file
287
SharedClasses/KundeArtikel.cs
Normal file
@ -0,0 +1,287 @@
|
||||
|
||||
using Npgsql;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Configuration;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
|
||||
namespace DatenDB
|
||||
{
|
||||
public class KundeArtikel
|
||||
{
|
||||
// 0 1 2 3 4 5 6 7 8 9 10 11 12 13
|
||||
private static string COLUMNS = "kunde_artikel_id, kunde_id, artikel_nr, artikel_name, stand, fehlmenge, stand_bearbeitet, fehlmenge_bearbeitet, korrektur, korrektur_bearbeitet, reklamation, artikel_id, reihung, reklamation_bearbeitet";
|
||||
|
||||
private static string TABLE = "kundenverwaltung.kunde_artikel";
|
||||
|
||||
public KundeArtikel() { }
|
||||
internal static List<KundeArtikel> GetInventurList(int? kundeid)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<KundeArtikel> resultList = new List<KundeArtikel>();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"select {COLUMNS} from {TABLE} where kunde_id = {kundeid} order by reihung asc";
|
||||
using (var reader = command.ExecuteReader())
|
||||
{
|
||||
while (reader.Read())
|
||||
{
|
||||
resultList.Add(new KundeArtikel(reader));
|
||||
}
|
||||
}
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return resultList;
|
||||
}
|
||||
|
||||
public static List<KundeArtikel> GetList(string kundeid)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<KundeArtikel> resultList = new List<KundeArtikel>();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"select {COLUMNS} from {TABLE} where kunde_id = {kundeid} order by reihung asc";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) resultList.Add(new KundeArtikel(reader));
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return resultList;
|
||||
}
|
||||
public static KundeArtikel GetItem(int kndartID)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
KundeArtikel result = new KundeArtikel();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"SELECT {COLUMNS} from {TABLE} where kunde_artikel_id = {kndartID}";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) result = new KundeArtikel(reader);
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return result;
|
||||
}
|
||||
public static KundeArtikel GetItemIfAvailable(int kndid, int artnr)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
KundeArtikel result = null;
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"SELECT {COLUMNS} from {TABLE} where kunde_id = {kndid} and artikel_nr = {artnr}";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) result = new KundeArtikel(reader);
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return result;
|
||||
}
|
||||
public static KundeArtikel GetKundeArtikelVonArtikelID(int? kndid, int? artikelid)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
KundeArtikel result = null;
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"SELECT {COLUMNS} from {TABLE} where kunde_id = {kndid} and artikel_id = {artikelid}";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) result = new KundeArtikel(reader);
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
|
||||
return result;
|
||||
}
|
||||
public static List<KundeArtikel> GetFehlmengeList(string kundeid, int? artikelID)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
List<KundeArtikel> resultList = new List<KundeArtikel>();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if (!string.IsNullOrWhiteSpace(kundeid)) command.CommandText = $"select {COLUMNS} from {TABLE} where kunde_id = {kundeid} and SUBSTRING(artikel_nr::text, 1, 1) = '6' or kunde_id = {kundeid} and SUBSTRING(artikel_nr::text, 1, 1) = '1' order by reihung asc";
|
||||
else command.CommandText = $"select {COLUMNS} from {TABLE} where artikel_id = {artikelID} order by artikel_nr";
|
||||
NpgsqlDataReader reader = command.ExecuteReader();
|
||||
while (reader.Read()) resultList.Add(new KundeArtikel(reader));
|
||||
reader.Close();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return resultList;
|
||||
}
|
||||
internal static bool HatKategorieArtikel(int kundeid, ArtikelKategorie frottee)
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
command.CommandText = $"SELECT CASE WHEN COUNT(*) > 0 THEN 1 ELSE 0 END FROM {TABLE} a inner join kundenverwaltung.artikel b on a.artikel_id = b.artikel_id WHERE a.kunde_id = {kundeid} and b.kategorie = {(int)frottee}";
|
||||
|
||||
int result = (int)command.ExecuteScalar();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result > 0;
|
||||
}
|
||||
|
||||
|
||||
public static void SaveKundeArtikel_Numbers(KundeArtikel kndart, int? korrektur, int? fehlmenge, int? reklamation, int? stand)
|
||||
{
|
||||
if (korrektur.HasValue)
|
||||
{
|
||||
kndart.Korrektur = korrektur.Value;
|
||||
kndart.KorrekturBearbeitet = Program.benutzer.BenutzerName + " am " + DateTime.Now.ToString();
|
||||
}
|
||||
if (fehlmenge.HasValue)
|
||||
{
|
||||
kndart.Fehlmenge = fehlmenge.Value;
|
||||
kndart.FehlmengeBearbeitet = Program.benutzer.BenutzerName + " am " + DateTime.Now.ToString();
|
||||
}
|
||||
if (reklamation.HasValue)
|
||||
{
|
||||
kndart.Reklamation = reklamation.Value;
|
||||
kndart.ReklamationBearbeitet = Program.benutzer.BenutzerName + " am " + DateTime.Now.ToString();
|
||||
}
|
||||
if (stand.HasValue)
|
||||
{
|
||||
kndart.Stand = stand.Value;
|
||||
kndart.StandBearbeitet = Program.benutzer.BenutzerName + " am " + DateTime.Now.ToString();
|
||||
}
|
||||
|
||||
kndart.Save();
|
||||
|
||||
}
|
||||
|
||||
|
||||
public int Save()
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if (this.KundeArtikelID.HasValue & this.KundeArtikelID != 0)
|
||||
{
|
||||
command.CommandText = $"update {TABLE} set kunde_id = :p1, artikel_nr = :p2, artikel_name = :p3, stand = :p4, fehlmenge = :p5, stand_bearbeitet = :p6, fehlmenge_bearbeitet = :p7, korrektur = :p8, korrektur_bearbeitet = :p9, reklamation = :p10, artikel_id = :p11, reihung = :p12, reklamation_bearbeitet = :p13 WHERE kunde_artikel_id = :p0";
|
||||
}
|
||||
else
|
||||
{
|
||||
command.CommandText = "select nextval('kundenverwaltung.kunde_artikel_seq')";
|
||||
this.KundeArtikelID = (int)(long)command.ExecuteScalar();
|
||||
command.CommandText = $"insert into {TABLE} ({COLUMNS}) values (:p0, :p1, :p2, :p3, :p4, :p5, :p6, :p7, :p8, :p9, :p10, :p11, :p12, :p13)";
|
||||
}
|
||||
|
||||
command.Parameters.AddWithValue("p0", this.KundeArtikelID.Value);
|
||||
command.Parameters.AddWithValue("p1", this.KundeID);
|
||||
command.Parameters.AddWithValue("p2", this.ArtikelNR);
|
||||
command.Parameters.AddWithValue("p3", string.IsNullOrWhiteSpace(this.ArtikelName) ? (object)DBNull.Value : this.ArtikelName);
|
||||
command.Parameters.AddWithValue("p4", this.Stand);
|
||||
command.Parameters.AddWithValue("p5", this.Fehlmenge);
|
||||
command.Parameters.AddWithValue("p6", string.IsNullOrWhiteSpace(this.StandBearbeitet) ? (object)DBNull.Value : this.StandBearbeitet);
|
||||
command.Parameters.AddWithValue("p7", string.IsNullOrWhiteSpace(this.FehlmengeBearbeitet) ? (object)DBNull.Value : this.FehlmengeBearbeitet);
|
||||
command.Parameters.AddWithValue("p8", this.Korrektur);
|
||||
command.Parameters.AddWithValue("p9", string.IsNullOrWhiteSpace(this.KorrekturBearbeitet) ? (object)DBNull.Value : this.KorrekturBearbeitet);
|
||||
command.Parameters.AddWithValue("p10", this.Reklamation);
|
||||
command.Parameters.AddWithValue("p11", this.ArtikelID.HasValue ?this.ArtikelID.Value : (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("p12", this.Reihung);
|
||||
command.Parameters.AddWithValue("p13", string.IsNullOrWhiteSpace(this.ReklamationBearbeitet) ? (object)DBNull.Value : this.ReklamationBearbeitet);
|
||||
|
||||
int result = command.ExecuteNonQuery();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result;
|
||||
|
||||
}
|
||||
public int ZahlenUpdate()
|
||||
{
|
||||
DatenbankConnection.GetConnection().Open();
|
||||
NpgsqlCommand command = new NpgsqlCommand();
|
||||
command.Connection = DatenbankConnection.GetConnection();
|
||||
if (this.KundeArtikelID.HasValue & this.KundeArtikelID != 0)
|
||||
{
|
||||
command.CommandText = $"update {TABLE} set stand = :p1, stand_bearbeitet = :p2 fehlmenge = :p3, fehlmenge_bearbeitet = :p4, korrektur = :p5, korrektur_bearbeitet = :p6 WHERE kunde_artikel_id = :p0";
|
||||
}
|
||||
else
|
||||
{
|
||||
command.CommandText = "select nextval('kundenverwaltung.kunde_artikel_seq')";
|
||||
this.KundeArtikelID = (int)(long)command.ExecuteScalar();
|
||||
command.CommandText = $"insert into {TABLE} ({COLUMNS}) values (:p0, :p1, :p2, :p3, :p4, :p5, :p6)";
|
||||
}
|
||||
|
||||
command.Parameters.AddWithValue("p0", this.KundeArtikelID.Value);
|
||||
command.Parameters.AddWithValue("p1", this.Stand);
|
||||
command.Parameters.AddWithValue("p2", string.IsNullOrWhiteSpace(this.StandBearbeitet) ? (object)DBNull.Value : this.StandBearbeitet);
|
||||
command.Parameters.AddWithValue("p3", this.Fehlmenge);
|
||||
command.Parameters.AddWithValue("p4", string.IsNullOrWhiteSpace(this.FehlmengeBearbeitet) ? (object)DBNull.Value : this.FehlmengeBearbeitet);
|
||||
command.Parameters.AddWithValue("p5", this.Korrektur);
|
||||
command.Parameters.AddWithValue("p6", string.IsNullOrWhiteSpace(this.KorrekturBearbeitet) ? (object)DBNull.Value : this.KorrekturBearbeitet);
|
||||
|
||||
int result = command.ExecuteNonQuery();
|
||||
DatenbankConnection.GetConnection().Close();
|
||||
return result;
|
||||
|
||||
|
||||
}
|
||||
internal static async Task<List<KundeArtikel>> LoadArtikelDatenAsync(Kunde kunde)
|
||||
{
|
||||
var artikelDaten = new List<KundeArtikel>();
|
||||
|
||||
string connectionString = ConfigurationManager.AppSettings["ConnectionString"];
|
||||
|
||||
await Task.Run(() =>
|
||||
{
|
||||
using (var conn = new NpgsqlConnection(connectionString))
|
||||
{
|
||||
conn.Open();
|
||||
using (var cmd = new NpgsqlCommand($"SELECT a.artikel_name, a.stand, a.fehlmenge, a.kunde_id, a.reklamation, a.artikel_id, a.reihung, b.kategorie FROM {TABLE} a inner join kundenverwaltung.artikel b on a.artikel_id = b.artikel_id WHERE a.kunde_id = {kunde.KundeID} and b.kategorie > 0 and (a.fehlmenge + a.reklamation) > 0", conn))
|
||||
{
|
||||
using (var reader = cmd.ExecuteReader())
|
||||
{
|
||||
while (reader.Read())
|
||||
{
|
||||
artikelDaten.Add(new KundeArtikel
|
||||
{
|
||||
ArtikelName = reader.GetString(0),
|
||||
Stand = reader.GetInt32(1),
|
||||
Fehlmenge = reader.GetInt32(2),
|
||||
KundeID = reader.GetInt32(3),
|
||||
Reklamation = reader.IsDBNull(4) ? 0 : reader.GetInt32(4),
|
||||
ArtikelID = reader.IsDBNull(5) ? (int?)null : reader.GetInt32(5),
|
||||
Reihung = reader.IsDBNull(6) ? 0 : reader.GetInt32(6)
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
return artikelDaten;
|
||||
}
|
||||
|
||||
|
||||
public KundeArtikel(NpgsqlDataReader reader)
|
||||
{
|
||||
this.KundeArtikelID = reader.GetInt32(0);
|
||||
this.KundeID = reader.GetInt32(1);
|
||||
this.ArtikelNR = reader.GetInt32(2);
|
||||
this.ArtikelName = reader.IsDBNull(3) ? string.Empty : reader.GetString(3);
|
||||
this.Stand = reader.GetInt32(4);
|
||||
this.Fehlmenge = reader.GetInt32(5);
|
||||
this.StandBearbeitet = reader.IsDBNull(6) ? string.Empty : reader.GetString(6);
|
||||
this.FehlmengeBearbeitet = reader.IsDBNull(7) ? string.Empty : reader.GetString(7);
|
||||
this.Korrektur = reader.IsDBNull(8) ? 0 : reader.GetInt32(8);
|
||||
this.KorrekturBearbeitet = reader.IsDBNull(9) ? string.Empty : reader.GetString(9);
|
||||
this.Reklamation = reader.IsDBNull(10) ? 0 : reader.GetInt32(10);
|
||||
this.ArtikelID = reader.IsDBNull(11) ? (int?)null : reader.GetInt32(11);
|
||||
this.Reihung = reader.IsDBNull(12) ? 0 : reader.GetInt32(12);
|
||||
this.ReklamationBearbeitet = reader.IsDBNull(13) ? string.Empty : reader.GetString(13);
|
||||
}
|
||||
|
||||
[OLVColumn("ArtNr.", DisplayIndex = 2, TextAlign = HorizontalAlignment.Left)] public int ArtikelNR { get; set; }
|
||||
[OLVColumn("Artikel", DisplayIndex = 3, TextAlign = HorizontalAlignment.Left)] public string ArtikelName { get; set; }
|
||||
[OLVColumn("Nachwäsche", DisplayIndex = 4, TextAlign = HorizontalAlignment.Center)] public int Fehlmenge { get; set; }
|
||||
[OLVColumn("Korrektur", DisplayIndex = 5, TextAlign = HorizontalAlignment.Center)] public int Korrektur { get; set; }
|
||||
[OLVColumn("Reihung", DisplayIndex = 6, IsVisible = false)] public int Reihung { get; set; }
|
||||
|
||||
[OLVIgnore] public int? KundeArtikelID { get; set; }
|
||||
[OLVIgnore] public int? KundeID { get; set; }
|
||||
[OLVIgnore] public int Stand { get; set; }
|
||||
[OLVIgnore] public string StandBearbeitet { get; set; }
|
||||
[OLVIgnore] public string FehlmengeBearbeitet { get; set; }
|
||||
[OLVIgnore] public string KorrekturBearbeitet { get; set; }
|
||||
[OLVIgnore] public int Reklamation { get; set; }
|
||||
[OLVIgnore] public int? ArtikelID { get; set; }
|
||||
[OLVIgnore] public string ComboBoxAnzeige => $"{ArtikelNR} {ArtikelName}";
|
||||
[OLVIgnore] public string ReklamationBearbeitet { get; set; }
|
||||
}
|
||||
}
|
||||
33
SharedClasses/Properties/AssemblyInfo.cs
Normal file
33
SharedClasses/Properties/AssemblyInfo.cs
Normal file
@ -0,0 +1,33 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// Allgemeine Informationen über eine Assembly werden über die folgenden
|
||||
// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern,
|
||||
// die einer Assembly zugeordnet sind.
|
||||
[assembly: AssemblyTitle("SharedClasses")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("SharedClasses")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2026")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly
|
||||
// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von
|
||||
// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird
|
||||
[assembly: Guid("ede9193a-b9ae-48b8-88d8-0038f21c47e0")]
|
||||
|
||||
// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten:
|
||||
//
|
||||
// Hauptversion
|
||||
// Nebenversion
|
||||
// Buildnummer
|
||||
// Revision
|
||||
//
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
88
SharedClasses/SharedClasses.csproj
Normal file
88
SharedClasses/SharedClasses.csproj
Normal file
@ -0,0 +1,88 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{EDE9193A-B9AE-48B8-88D8-0038F21C47E0}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>SharedClasses</RootNamespace>
|
||||
<AssemblyName>SharedClasses</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<Deterministic>true</Deterministic>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.1.1.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Npgsql, Version=4.1.14.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Npgsql.4.1.14\lib\net461\Npgsql.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Buffers.4.5.0\lib\netstandard2.0\System.Buffers.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Memory.4.5.3\lib\netstandard2.0\System.Memory.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Numerics" />
|
||||
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.6.0\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Text.Encodings.Web, Version=4.0.4.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Text.Encodings.Web.4.6.0\lib\netstandard2.0\System.Text.Encodings.Web.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Text.Json, Version=4.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Text.Json.4.6.0\lib\net461\System.Text.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.3\lib\netstandard2.0\System.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Artikel.cs" />
|
||||
<Compile Include="AuftragArtikel.cs" />
|
||||
<Compile Include="DatenbankConnection.cs" />
|
||||
<Compile Include="Kunde.cs" />
|
||||
<Compile Include="KundeArtikel.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Umsatz.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
</Project>
|
||||
27
SharedClasses/app.config
Normal file
27
SharedClasses/app.config
Normal file
@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.1.4.0" newVersion="4.1.4.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.5.0" newVersion="4.0.5.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
13
SharedClasses/packages.config
Normal file
13
SharedClasses/packages.config
Normal file
@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Microsoft.Bcl.AsyncInterfaces" version="1.1.0" targetFramework="net48" />
|
||||
<package id="Npgsql" version="4.1.14" targetFramework="net48" />
|
||||
<package id="System.Buffers" version="4.5.0" targetFramework="net48" />
|
||||
<package id="System.Memory" version="4.5.3" targetFramework="net48" />
|
||||
<package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net48" />
|
||||
<package id="System.Runtime.CompilerServices.Unsafe" version="4.6.0" targetFramework="net48" />
|
||||
<package id="System.Text.Encodings.Web" version="4.6.0" targetFramework="net48" />
|
||||
<package id="System.Text.Json" version="4.6.0" targetFramework="net48" />
|
||||
<package id="System.Threading.Tasks.Extensions" version="4.5.3" targetFramework="net48" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net48" />
|
||||
</packages>
|
||||
@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
|
||||
// Buildnummer
|
||||
// Revision
|
||||
//
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
[assembly: AssemblyVersion("1.0.0.2")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.2")]
|
||||
|
||||
@ -18,5 +18,6 @@ namespace TrelloIntegration
|
||||
public string ShortUrl { get; set; }
|
||||
public DateTime? DueDate { get; set; }
|
||||
public DateTime? StartDate { get; set; }
|
||||
public string IdBoard { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
@ -10,7 +10,7 @@ namespace TrelloIntegration
|
||||
{
|
||||
/// <summary>
|
||||
/// Trello-Karten-Client für WinForms-Anwendungen (.NET Framework 4.8, C# 7.3)
|
||||
/// Erstellt Karten via Trello REST API über HttpClient.
|
||||
/// Erstellt und abruft Karten via Trello REST API über HttpClient.
|
||||
/// </summary>
|
||||
public class TrelloCardClient : IDisposable
|
||||
{
|
||||
@ -34,11 +34,13 @@ namespace TrelloIntegration
|
||||
};
|
||||
}
|
||||
|
||||
// ========================================================================
|
||||
// BESTEHENDE METHODE: Karte erstellen
|
||||
// ========================================================================
|
||||
|
||||
/// <summary>
|
||||
/// Erstellt eine neue Trello-Karte asynchron und gibt die Roh-JSON-Antwort zurück.
|
||||
/// </summary>
|
||||
/// <param name="options">Konfiguration der Karte (Name, Liste, Beschreibung, Labels, DueDate, StartDate)</param>
|
||||
/// <returns>Antwort-JSON als String (enthaltend die erstellte Karte)</returns>
|
||||
public async Task<string> CreateCardAsync(CreateCardOptions options)
|
||||
{
|
||||
ValidateOptions(options);
|
||||
@ -89,10 +91,182 @@ namespace TrelloIntegration
|
||||
return ParseTrelloCard(json);
|
||||
}
|
||||
|
||||
// ========================================================================
|
||||
// NEUE METHODE: Karten aus Liste abrufen & nach Fälligkeitsdatum filteren
|
||||
// ========================================================================
|
||||
|
||||
/// <summary>
|
||||
/// Abrufen aller Karten aus einer Liste und Filterung nach Fälligkeitsdatum.
|
||||
/// GET-Anfrage statt Webhook.
|
||||
/// </summary>
|
||||
/// <param name="listId">Die ID der Trello-Liste</param>
|
||||
/// <param name="targetDueDate">Das gesuchte Fälligkeitsdatum (wird genau verglichen)</param>
|
||||
/// <param name="includeClosed">Ob geschlossene Karten eingeschlossen werden (optional, default: false)</param>
|
||||
/// <returns>Liste von TrelloCard-Objekten, die dem Fälligkeitsdatum entsprechen</returns>
|
||||
public async Task<List<TrelloCard>> GetCardsByDueDateAsync(
|
||||
string listId,
|
||||
DateTime targetDueDate,
|
||||
bool includeClosed = false)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(listId))
|
||||
throw new ArgumentNullException(nameof(listId));
|
||||
|
||||
// GET-Request: Alle Karten aus der Liste abrufen
|
||||
var values = new Dictionary<string, string>
|
||||
{
|
||||
["key"] = _apiKey,
|
||||
["token"] = _token
|
||||
};
|
||||
|
||||
// Optional: geschlossene Karten einschließen
|
||||
if (includeClosed)
|
||||
values["closed"] = "true";
|
||||
|
||||
var url = $"lists/{listId}/cards?key={_apiKey}&token={_token}";
|
||||
|
||||
// Ergänzeclosed-Parameter falls benötigt
|
||||
if (includeClosed)
|
||||
url += "&closed=true";
|
||||
|
||||
var response = await _httpClient.GetAsync(url);
|
||||
var jsonResponse = await response.Content.ReadAsStringAsync();
|
||||
|
||||
if (!response.IsSuccessStatusCode)
|
||||
{
|
||||
throw new HttpRequestException(
|
||||
$"Trello API Fehler {response.StatusCode}: {jsonResponse}");
|
||||
}
|
||||
|
||||
// JSON parsen (Array von Karten)
|
||||
var cards = ParseCardsArray(jsonResponse);
|
||||
|
||||
// Nach Fälligkeitsdatum filtern
|
||||
var filteredCards = cards.Where(c =>
|
||||
c.DueDate != null &&
|
||||
c.DueDate.Value.Date == targetDueDate.Date
|
||||
).ToList();
|
||||
|
||||
return filteredCards;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Abrufen aller Karten aus einer Liste (ohne Fälligkeitsdatum-Filter).
|
||||
/// </summary>
|
||||
/// <param name="listId">Die ID der Trello-Liste</param>
|
||||
/// <param name="includeClosed">Ob geschlossene Karten eingeschlossen werden</param>
|
||||
/// <returns>Liste von allen TrelloCard-Objekten in der Liste</returns>
|
||||
public async Task<List<TrelloCard>> GetCardsFromListAsync(
|
||||
string listId,
|
||||
bool includeClosed = false)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(listId))
|
||||
throw new ArgumentNullException(nameof(listId));
|
||||
|
||||
var url = $"lists/{listId}/cards?key={_apiKey}&token={_token}";
|
||||
|
||||
if (includeClosed)
|
||||
url += "&closed=true";
|
||||
|
||||
var response = await _httpClient.GetAsync(url);
|
||||
var jsonResponse = await response.Content.ReadAsStringAsync();
|
||||
|
||||
if (!response.IsSuccessStatusCode)
|
||||
{
|
||||
throw new HttpRequestException(
|
||||
$"Trello API Fehler {response.StatusCode}: {jsonResponse}");
|
||||
}
|
||||
|
||||
return ParseCardsArray(jsonResponse);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// JSON-Array von Karten parsen (mehrere Karten).
|
||||
/// </summary>
|
||||
private List<TrelloCard> ParseCardsArray(string json)
|
||||
{
|
||||
var cards = new List<TrelloCard>();
|
||||
|
||||
// Einfachster Parser für JSON-Array: [{"id":"...", "name":"..."}, {...}]
|
||||
// Entfernung der äußeren [ ]
|
||||
json = json.Trim();
|
||||
if (json.StartsWith("[") && json.EndsWith("]"))
|
||||
json = json.Substring(1, json.Length - 2);
|
||||
|
||||
if (string.IsNullOrWhiteSpace(json))
|
||||
return cards;
|
||||
|
||||
// Jede Karte durch {" "} trennen (einfache Division)
|
||||
var cardStrings = SplitJsonArray(json);
|
||||
|
||||
foreach (var cardJson in cardStrings)
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(cardJson))
|
||||
{
|
||||
cards.Add(ParseTrelloCard(cardJson));
|
||||
}
|
||||
}
|
||||
|
||||
return cards;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// JSON-Array in einzelne Objekte teilen.
|
||||
/// </summary>
|
||||
private List<string> SplitJsonArray(string json)
|
||||
{
|
||||
var result = new List<string>();
|
||||
var current = new StringBuilder();
|
||||
var inString = false;
|
||||
var depth = 0;
|
||||
|
||||
for (int i = 0; i < json.Length; i++)
|
||||
{
|
||||
var ch = json[i];
|
||||
|
||||
if (ch == '"' && (i == 0 || json[i - 1] != '\\'))
|
||||
inString = !inString;
|
||||
|
||||
if (!inString)
|
||||
{
|
||||
if (ch == '{')
|
||||
{
|
||||
depth++;
|
||||
if (depth == 1)
|
||||
current.Clear();
|
||||
}
|
||||
else if (ch == '}')
|
||||
{
|
||||
depth--;
|
||||
if (depth == 0)
|
||||
{
|
||||
current.Append(ch);
|
||||
result.Add(current.ToString());
|
||||
current.Clear();
|
||||
continue;
|
||||
}
|
||||
}
|
||||
else if (ch == ',' && depth == 0)
|
||||
{
|
||||
continue; // Array-Trenner überspringen
|
||||
}
|
||||
}
|
||||
|
||||
if (depth >= 1)
|
||||
current.Append(ch);
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
// ========================================================================
|
||||
// BESTEHENDE HELPER-METHODEN (unverändert)
|
||||
// ========================================================================
|
||||
|
||||
/// <summary>
|
||||
/// Minimaler Parser ohne System.Text.Json (für .NET Framework 4.8)
|
||||
/// </summary>
|
||||
private static TrelloCard ParseTrelloCard(string json)
|
||||
{
|
||||
// Minimaler Parser ohne System.Text.Json (für .NET Framework 4.8)
|
||||
// Extrahiert die wichtigsten Felder aus der JSON-Antwort
|
||||
var card = new TrelloCard();
|
||||
|
||||
card.Id = ExtractJsonValue(json, "id");
|
||||
@ -100,36 +274,154 @@ namespace TrelloIntegration
|
||||
card.Desc = ExtractJsonValue(json, "desc");
|
||||
card.IdList = ExtractJsonValue(json, "idList");
|
||||
card.ShortUrl = ExtractJsonValue(json, "shortUrl");
|
||||
card.IdBoard = ExtractJsonValue(json, "idBoard");
|
||||
|
||||
var due = ExtractJsonValue(json, "due");
|
||||
if (!string.IsNullOrWhiteSpace(due))
|
||||
if (DateTime.TryParse(due, out var dtDue)) card.DueDate = dtDue;
|
||||
else card.DueDate = null;
|
||||
{
|
||||
if (DateTime.TryParse(due, out var dtDue))
|
||||
card.DueDate = dtDue;
|
||||
else
|
||||
card.DueDate = null;
|
||||
}
|
||||
|
||||
var start = ExtractJsonValue(json, "start");
|
||||
if (!string.IsNullOrWhiteSpace(start))
|
||||
if (DateTime.TryParse(start, out var dtStart)) card.StartDate = dtStart;
|
||||
else card.StartDate = null;
|
||||
{
|
||||
if (DateTime.TryParse(start, out var dtStart))
|
||||
card.StartDate = dtStart;
|
||||
else
|
||||
card.StartDate = null;
|
||||
}
|
||||
|
||||
return card;
|
||||
}
|
||||
|
||||
private static string ExtractJsonValue(string json, string key)
|
||||
{
|
||||
// Einfacher JSON-String-Extractor für "key": "value"
|
||||
var pattern = "\"" + key + "\"\\s*:\\s*\"";
|
||||
var startIndex = json.IndexOf(pattern, StringComparison.Ordinal);
|
||||
if (startIndex < 0)
|
||||
return null;
|
||||
// Suche nach "\"key\":" auf oberster Ebene (nicht in nested Objekten)
|
||||
var searchKey = "\"" + key + "\"";
|
||||
var startIndex = 0;
|
||||
|
||||
startIndex += pattern.Length;
|
||||
var endIndex = json.IndexOf("\"", startIndex);
|
||||
if (endIndex < 0)
|
||||
return null;
|
||||
while (startIndex < json.Length)
|
||||
{
|
||||
// Finde nächstes "\"key\""
|
||||
var keyIndex = json.IndexOf(searchKey, startIndex, StringComparison.Ordinal);
|
||||
if (keyIndex < 0)
|
||||
return null;
|
||||
|
||||
return json.Substring(startIndex, endIndex - startIndex);
|
||||
// Prüfen ob direkt danach ":" folgt (evtl. mit Whitespace)
|
||||
var afterKey = keyIndex + searchKey.Length;
|
||||
|
||||
// Muss innerhalb des JSON sein
|
||||
if (afterKey >= json.Length)
|
||||
return null;
|
||||
|
||||
// Whitespace überspringen
|
||||
while (afterKey < json.Length && char.IsWhiteSpace(json[afterKey]))
|
||||
afterKey++;
|
||||
|
||||
if (afterKey >= json.Length)
|
||||
return null;
|
||||
|
||||
// Prüfen ob ":" folgt
|
||||
if (json[afterKey] == ':')
|
||||
{
|
||||
// WICHTIG: Prüfen ob wir in einem nested Objekt sind (labels, badges, etc.)
|
||||
// Wir müssen die Tiefe zählen von Anfang des JSON
|
||||
var depth = CalculateDepth(json, keyIndex);
|
||||
|
||||
// Nur oberste Ebene (depth == 1, weil wir bei "{" beginnen)
|
||||
if (depth == 1)
|
||||
{
|
||||
// Wert extrahieren
|
||||
afterKey++; // Nach ":"
|
||||
|
||||
// Whitespace überspringen
|
||||
while (afterKey < json.Length && char.IsWhiteSpace(json[afterKey]))
|
||||
afterKey++;
|
||||
|
||||
if (afterKey >= json.Length)
|
||||
return null;
|
||||
|
||||
// null prüfen
|
||||
if (json[afterKey] == 'n' && json.Substring(afterKey, 4) == "null")
|
||||
return null;
|
||||
|
||||
// String mit "
|
||||
if (json[afterKey] == '"')
|
||||
{
|
||||
afterKey++; // Erstes " überspringen
|
||||
var endIndex = afterKey;
|
||||
|
||||
while (endIndex < json.Length)
|
||||
{
|
||||
if (json[endIndex] == '"' && (endIndex == 0 || json[endIndex - 1] != '\\'))
|
||||
break;
|
||||
endIndex++;
|
||||
}
|
||||
|
||||
if (endIndex >= json.Length)
|
||||
return null;
|
||||
|
||||
return json.Substring(afterKey, endIndex - afterKey);
|
||||
}
|
||||
|
||||
// Andere Werte
|
||||
var endPos = afterKey;
|
||||
while (endPos < json.Length && !IsDelimiter(json[endPos]))
|
||||
endPos++;
|
||||
|
||||
return json.Substring(afterKey, endPos - afterKey).Trim();
|
||||
}
|
||||
}
|
||||
|
||||
// Weiter suchen (nächstes occurrences)
|
||||
startIndex = keyIndex + 1;
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Berechnet die Tiefe (depth) an einer bestimmten Position im JSON
|
||||
/// depth = Anzahl der offenen "{" vor dieser Position
|
||||
/// </summary>
|
||||
private static int CalculateDepth(string json, int position)
|
||||
{
|
||||
var depth = 0;
|
||||
var inString = false;
|
||||
|
||||
for (int i = 0; i < position && i < json.Length; i++)
|
||||
{
|
||||
var ch = json[i];
|
||||
|
||||
if (ch == '\\' && i + 1 < json.Length)
|
||||
{
|
||||
i++; // Escape char überspringen
|
||||
continue;
|
||||
}
|
||||
|
||||
if (ch == '"')
|
||||
inString = !inString;
|
||||
|
||||
if (!inString)
|
||||
{
|
||||
if (ch == '{')
|
||||
depth++;
|
||||
else if (ch == '}')
|
||||
depth--;
|
||||
}
|
||||
}
|
||||
|
||||
return depth;
|
||||
}
|
||||
|
||||
private static bool IsDelimiter(char ch)
|
||||
{
|
||||
return ch == ',' || ch == '}' || ch == ']' || ch == ' ' ||
|
||||
ch == '\n' || ch == '\r' || ch == '\t';
|
||||
}
|
||||
private void ValidateOptions(CreateCardOptions options)
|
||||
{
|
||||
if (options == null)
|
||||
@ -142,12 +434,9 @@ namespace TrelloIntegration
|
||||
throw new ArgumentException("IdList ist erforderlich.", nameof(options.IdList));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gibt die Ressourcen des Clients frei (empiohlen).
|
||||
/// </summary>
|
||||
public void Dispose()
|
||||
{
|
||||
_httpClient?.Dispose();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -78,6 +78,7 @@ namespace TrelloIntegration
|
||||
var encryptedKey = Encrypt(apiKey);
|
||||
var encryptedToken = Encrypt(token);
|
||||
|
||||
//TODO: Key und Token in der DB speichern. Dazu eine settings-Tabelle erstellen mit ID/Bezeichnung/Wert int/string/string
|
||||
Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
|
||||
config.AppSettings.Settings.Remove("TrelloApiKeyEncrypted");
|
||||
config.AppSettings.Settings.Add("TrelloApiKeyEncrypted", encryptedKey);
|
||||
@ -134,5 +135,6 @@ namespace TrelloIntegration
|
||||
var token = System.Configuration.ConfigurationManager.AppSettings["TrelloTokenEncrypted"];
|
||||
return !string.IsNullOrEmpty(key) && !string.IsNullOrEmpty(token);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -82,7 +82,8 @@ namespace Deckungsbeitrag.UserControls
|
||||
Infos = AuftragInfo.LadeInfos(this.auftrag);
|
||||
foreach (AuftragInfo aufinfo in Infos)
|
||||
{
|
||||
info = $"{aufinfo.Datum} {aufinfo.Bezeichnung.ToUpper()} von {aufinfo.AlterWert} zu {aufinfo.NeuerWert}";
|
||||
if (aufinfo.Bezeichnung == "abteilungen_status") info = $"{aufinfo.Client} hat am {aufinfo.Datum} {aufinfo.AbtStatus}";
|
||||
else info = $"{aufinfo.Client} hat am {aufinfo.Datum} {aufinfo.Bezeichnung.ToUpper()} von {aufinfo.AlterWert} zu {aufinfo.NeuerWert}";
|
||||
|
||||
infoListe.Add(info);
|
||||
i++;
|
||||
|
||||
@ -248,9 +248,32 @@ namespace Deckungsbeitrag.UserControls
|
||||
return "❌"; // Status 0 ✓
|
||||
};
|
||||
|
||||
var colSpannleintuch = new OLVColumn("Spannleintuch", "Spannleintuch")
|
||||
{
|
||||
Text = "SPLT",
|
||||
DisplayIndex = 9,
|
||||
TextAlign = HorizontalAlignment.Center,
|
||||
CheckBoxes = false,
|
||||
TriStateCheckBoxes = false,
|
||||
Width = 50,
|
||||
AspectGetter = row =>
|
||||
{
|
||||
var auftrag = (Auftrag)row;
|
||||
int abteilungen = (int)auftrag.Abteilungen;
|
||||
|
||||
bool begonnen = (abteilungen & (int)AbteilungsStatus.SpannleintuchBegonnen) != 0;
|
||||
bool beendet = (abteilungen & (int)AbteilungsStatus.SpannleintuchBeendet) != 0;
|
||||
|
||||
if (beendet) return "✅"; // Status 1 ✓
|
||||
if (begonnen) return "⭕"; // Status 2 ✓
|
||||
return "❌"; // Status 0 ✓
|
||||
}
|
||||
};
|
||||
|
||||
this.objectListViewAuftrag.AllColumns.Add(colFrottee);
|
||||
this.objectListViewAuftrag.AllColumns.Add(colKleinteile);
|
||||
this.objectListViewAuftrag.AllColumns.Add(colGrosseTeile);
|
||||
this.objectListViewAuftrag.AllColumns.Add(colSpannleintuch);
|
||||
|
||||
foreach (OLVColumn col in this.objectListViewAuftrag.AllColumns)
|
||||
{
|
||||
|
||||
@ -175,6 +175,24 @@
|
||||
<Compile Include="AA-Forms\FormAuftragAuswahl.Designer.cs">
|
||||
<DependentUpon>FormAuftragAuswahl.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="AA-Forms\FormGeschaeftKndAuswahl.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="AA-Forms\FormGeschaeftKndAuswahl.Designer.cs">
|
||||
<DependentUpon>FormGeschaeftKndAuswahl.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="AA-Forms\FormGeschaeftMain.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="AA-Forms\FormGeschaeftMain.Designer.cs">
|
||||
<DependentUpon>FormGeschaeftMain.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="AA-Forms\FormMSAuswahl.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="AA-Forms\FormMSAuswahl.Designer.cs">
|
||||
<DependentUpon>FormMSAuswahl.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="AA-Forms\FormOnBoarding.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
@ -217,6 +235,7 @@
|
||||
<Compile Include="AA-Klassen\DatenbankConnection.cs" />
|
||||
<Compile Include="AA-Klassen\Fach.cs" />
|
||||
<Compile Include="AA-Klassen\FahrerAuftrag.cs" />
|
||||
<Compile Include="AA-Klassen\Kunde.cs" />
|
||||
<Compile Include="AA-Klassen\Lieferrhythmus.cs" />
|
||||
<Compile Include="AA-Klassen\Meldungen.cs" />
|
||||
<Compile Include="AA-Forms\FormArtikelVW.cs">
|
||||
@ -324,7 +343,6 @@
|
||||
<Compile Include="AA-Klassen\Funktionen.cs" />
|
||||
<Compile Include="AA-Klassen\Help.cs" />
|
||||
<Compile Include="AA-Klassen\Kosten.cs" />
|
||||
<Compile Include="AA-Klassen\Kunde.cs" />
|
||||
<Compile Include="AA-Klassen\KundeArtikel.cs" />
|
||||
<Compile Include="AA-Klassen\LoginException.cs" />
|
||||
<Compile Include="AA-Klassen\Maschine.cs" />
|
||||
@ -353,6 +371,7 @@
|
||||
<Compile Include="AA-Klassen\Saison.cs" />
|
||||
<Compile Include="AA-Klassen\TouchScroll.cs" />
|
||||
<Compile Include="AA-Klassen\Tour.cs" />
|
||||
<Compile Include="AA-Klassen\Umsatz.cs" />
|
||||
<Compile Include="AA-Klassen\WSFach.cs" />
|
||||
<Compile Include="Config.cs" />
|
||||
<Compile Include="Program.cs" />
|
||||
@ -413,7 +432,6 @@
|
||||
<Compile Include="UserControls\UCAuftrag.Designer.cs">
|
||||
<DependentUpon>UCAuftrag.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="AA-Klassen\Umsatz.cs" />
|
||||
<Compile Include="AA-Klassen\Views.cs" />
|
||||
<Compile Include="AA-Klassen\WProgramm.cs" />
|
||||
<Compile Include="UserControls\UCFach.cs">
|
||||
@ -450,6 +468,15 @@
|
||||
<EmbeddedResource Include="AA-Forms\FormAuftragAuswahl.resx">
|
||||
<DependentUpon>FormAuftragAuswahl.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="AA-Forms\FormGeschaeftKndAuswahl.resx">
|
||||
<DependentUpon>FormGeschaeftKndAuswahl.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="AA-Forms\FormGeschaeftMain.resx">
|
||||
<DependentUpon>FormGeschaeftMain.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="AA-Forms\FormMSAuswahl.resx">
|
||||
<DependentUpon>FormMSAuswahl.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="AA-Forms\FormOnBoarding.resx">
|
||||
<DependentUpon>FormOnBoarding.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
|
||||
@ -1,15 +1,15 @@
|
||||
=====================================
|
||||
NEUIGKEITEN - Version 1.1.5.7
|
||||
NEUIGKEITEN - Version 1.1.7.0
|
||||
=====================================
|
||||
|
||||
Build-Info:
|
||||
- Build-Typ: Release Build
|
||||
- Erledigte TODOs: 10
|
||||
- Offene TODOs: 22
|
||||
- Offene TODOs: 26
|
||||
- Install-Reminders: 0
|
||||
- Changes: 32
|
||||
- Changes: 33
|
||||
|
||||
=== ✨ CHANGES (32) ===
|
||||
=== ✨ CHANGES (33) ===
|
||||
## ArtikelVW.cs ##
|
||||
|
||||
- ✨ Reklamation als Spalte hinzugefügt und Anzeigen implementiert. Sowohl bei KundeArtikel als auch bei NW_Artikel.
|
||||
@ -48,6 +48,7 @@ Build-Info:
|
||||
|
||||
## Settings.Designer.cs ##
|
||||
|
||||
- ✨ to this file may cause incorrect behavior and will be lost if
|
||||
- ✨ to this file may cause incorrect behavior and will be lost if
|
||||
|
||||
## Tourenplanung.cs ##
|
||||
@ -72,5 +73,5 @@ Build-Info:
|
||||
|
||||
Keine Install-Reminder vorhanden ✅
|
||||
|
||||
Installation: 12.06.2026 14:22
|
||||
Installation: 23.06.2026 11:26
|
||||
=====================================
|
||||
|
||||
@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
|
||||
// Buildnummer
|
||||
// Revision
|
||||
//
|
||||
[assembly: AssemblyVersion("1.0.2.1")]
|
||||
[assembly: AssemblyFileVersion("1.0.2.1")]
|
||||
[assembly: AssemblyVersion("1.0.2.5")]
|
||||
[assembly: AssemblyFileVersion("1.0.2.5")]
|
||||
|
||||
9
VirtualKeyboard/QwertzKeyboard.Designer.cs
generated
9
VirtualKeyboard/QwertzKeyboard.Designer.cs
generated
@ -28,10 +28,17 @@
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// QwertzKeyboard
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(800, 450);
|
||||
this.Name = "QwertzKeyboard";
|
||||
this.Text = "Form1";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
@ -14,6 +14,8 @@ namespace VirtualKeyboard
|
||||
{
|
||||
public partial class QwertzKeyboard : Form
|
||||
{
|
||||
public event EventHandler KeyBoardShown;
|
||||
public event EventHandler KeyBoardClosed;
|
||||
private TextBox targetTextBox;
|
||||
//private Button okBtn;
|
||||
private bool isNumeric = false;
|
||||
@ -48,7 +50,8 @@ namespace VirtualKeyboard
|
||||
if (numeric == "isCalc")
|
||||
{
|
||||
isCalc = true;
|
||||
numpadLayout = new string[] {"⌫/*-","789+","456","123↵","0,"};
|
||||
numpadLayout = new string[] { "⌫/*-", "789+", "456", "123↵", "_0," };
|
||||
numkeys = new Button[5][] { new Button[4], new Button[4], new Button[4], new Button[4], new Button[4] };
|
||||
InitializeNumPad();
|
||||
}
|
||||
if (numeric == "isAlpha")
|
||||
@ -103,12 +106,11 @@ namespace VirtualKeyboard
|
||||
// OK-Button rechts unten (NumPad-Enter-Stil)
|
||||
continue;
|
||||
}
|
||||
if (ch == '+') { btnHeight = btnHeight * 2 + spacing; }
|
||||
Button btn = new Button
|
||||
{
|
||||
Text = ch.ToString(),
|
||||
Tag = ch,
|
||||
Size = new Size(btnWidth, btnHeight),
|
||||
Size = ch == '+' ? new Size(btnWidth, btnHeight * 2 + spacing) : new Size(btnWidth, btnHeight),
|
||||
Location = new Point(xBase, y),
|
||||
Font = new Font("Arial", 18, FontStyle.Bold),
|
||||
BackColor = Color.FromArgb(240, 240, 240),
|
||||
@ -206,6 +208,7 @@ namespace VirtualKeyboard
|
||||
|
||||
private void OK_Click(object sender, EventArgs e)
|
||||
{
|
||||
KeyBoardClosed?.Invoke(this, EventArgs.Empty);
|
||||
this.Close();
|
||||
}
|
||||
private void Tab_Click(object sender, EventArgs e)
|
||||
@ -232,6 +235,9 @@ namespace VirtualKeyboard
|
||||
case var t when t == "Leertaste":
|
||||
targetTextBox.Text += " ";
|
||||
break;
|
||||
case var t when t == "_":
|
||||
targetTextBox.Text += " ";
|
||||
break;
|
||||
default: targetTextBox.Text += btn.Text;
|
||||
break;
|
||||
}
|
||||
@ -271,6 +277,8 @@ namespace VirtualKeyboard
|
||||
{
|
||||
base.OnShown(e);
|
||||
this.Location = new Point((screen.WorkingArea.Width - this.Width) / 2, screen.WorkingArea.Height - this.Height);
|
||||
|
||||
KeyBoardShown?.Invoke(this, EventArgs.Empty);
|
||||
}
|
||||
}
|
||||
}
|
||||
120
VirtualKeyboard/QwertzKeyboard.resx
Normal file
120
VirtualKeyboard/QwertzKeyboard.resx
Normal file
@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
@ -63,6 +63,9 @@
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<EmbeddedResource Include="QwertzKeyboard.resx">
|
||||
<DependentUpon>QwertzKeyboard.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user