update 20251113
This commit is contained in:
492
Client - Kopie/UIControls/Partnersuche.cs
Normal file
492
Client - Kopie/UIControls/Partnersuche.cs
Normal file
@@ -0,0 +1,492 @@
|
||||
using OnDoc.Klassen;
|
||||
using Syncfusion.WinForms.Controls;
|
||||
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 Helper;
|
||||
using OnDoc.Helper;
|
||||
using Syncfusion.WinForms.DataGrid;
|
||||
using System.Web.UI.WebControls;
|
||||
using Syncfusion.Data;
|
||||
using Syncfusion.WinForms.DataGrid.Interactivity;
|
||||
using System.IO;
|
||||
using Database;
|
||||
using System.Linq.Expressions;
|
||||
using OnDoc.Diverses;
|
||||
using Windows.AI.MachineLearning.Preview;
|
||||
using BroadcastListener.Classes;
|
||||
using BroadcastListener.Interfaces;
|
||||
using static BroadcastListener.Classes.Factory;
|
||||
using Windows.Phone.Notification.Management;
|
||||
|
||||
namespace OnDoc.UIControls
|
||||
{
|
||||
|
||||
public partial class Partnersuche : SfForm
|
||||
{
|
||||
|
||||
public int partnernr = 0;
|
||||
public string partnerkurzname = "";
|
||||
|
||||
public int personnr = 0;
|
||||
public string personkurzname = "";
|
||||
public bool bpperson_changed { get; set; } = false;
|
||||
public bool partnersaldiert = false;
|
||||
public bool person = false;
|
||||
public bool personendokument { get; set; } = false;
|
||||
public bool bpdokument { get; set; } = false;
|
||||
public bool check_bp_person { get; set; } = false;
|
||||
|
||||
public int dokumenttypnr { get; set; } = 0;
|
||||
|
||||
public bool keepalive { get; set; } = false;
|
||||
|
||||
public bool keepopen { get; set; } = false;
|
||||
|
||||
|
||||
public Partnersuche(bool keepalive = false)
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
clsPartner.set_connectionstring(AppParams.connectionstring);
|
||||
this.trefferlistedata.TableControl.DoubleClick += TableControl_DoubleClick;
|
||||
this.keepalive = keepalive;
|
||||
}
|
||||
|
||||
public Partnersuche(bool personendokument, bool check_bp_person,bool bpdokument)
|
||||
{
|
||||
InitializeComponent();
|
||||
this.personendokument = personendokument;
|
||||
this.check_bp_person = check_bp_person;
|
||||
this.bpdokument = bpdokument;
|
||||
clsPartner.set_connectionstring(AppParams.connectionstring);
|
||||
this.trefferlistedata.TableControl.DoubleClick += TableControl_DoubleClick;
|
||||
}
|
||||
|
||||
public Partnersuche(bool personendokument, bool check_bp_person, bool bpdokument,int dokumenttypnr=0)
|
||||
{
|
||||
InitializeComponent();
|
||||
this.personendokument = personendokument;
|
||||
this.bpdokument= bpdokument;
|
||||
this.check_bp_person = check_bp_person;
|
||||
clsPartner.set_connectionstring(AppParams.connectionstring);
|
||||
this.trefferlistedata.TableControl.DoubleClick += TableControl_DoubleClick;
|
||||
this.dokumenttypnr = dokumenttypnr;
|
||||
}
|
||||
|
||||
|
||||
private void Form1_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (Cursor.Position.Y < Screen.PrimaryScreen.Bounds.Height - this.Height)
|
||||
{
|
||||
this.SetDesktopLocation(Cursor.Position.X, Cursor.Position.Y);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.SetDesktopLocation(Cursor.Position.X, Cursor.Position.Y-(this.Height+50));
|
||||
}
|
||||
this.toolTip1.SetToolTip(this.btnbpperson, "Partner (BP's) von der Person / Person vom Partner (BP)");
|
||||
trefferlistedata.DataSource = clsPartner.get_partnerliste();
|
||||
try
|
||||
{
|
||||
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata, true);
|
||||
trefferlistedata.Columns[0].HeaderText = "Kunden-Nr.";
|
||||
try
|
||||
{
|
||||
trefferlistedata.Columns[0].Width = trefferlistedata.Columns[0].Width + 20;
|
||||
}
|
||||
catch { }
|
||||
if (trefferlistedata.RowCount > 0) { sfButton1.Enabled = true; }
|
||||
trefferlistedata.SelectedIndex = 0;
|
||||
}
|
||||
catch { }
|
||||
this.Text = "Kunde suchen";
|
||||
this.lblPartnerNr.Text = "Kunde-Nr";
|
||||
//if (personendokument) {
|
||||
// this.Text = "Person suchen";
|
||||
// this.lblPartnerNr.Text = "Person-Nr.";
|
||||
//}
|
||||
//if (bpdokument) {
|
||||
// this.Text = "Partner suchen";
|
||||
// this.lblPartnerNr.Text = "Partner-Nr.";
|
||||
//}
|
||||
}
|
||||
|
||||
private void btnsuche_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
if (chkkeepalive.Checked) { keepopen = true; }
|
||||
if (txtPartnerNr.Text.Trim() != "")
|
||||
{
|
||||
string s = txtPartnerNr.Text.Replace(".", "").Trim();
|
||||
if (DivFnkt.IsNumeric(s))
|
||||
{
|
||||
trefferlistedata.DataSource = clsPartner.search_partner(s, 50, 0,personendokument,bpdokument, chksaldiert.Checked);
|
||||
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata, true);
|
||||
trefferlistedata.Columns[0].HeaderText = "Kunden-Nr.";
|
||||
try
|
||||
{
|
||||
trefferlistedata.Columns[0].Width = trefferlistedata.Columns[0].Width + 20;
|
||||
}
|
||||
catch { }
|
||||
if (clsPartner.partnerliste.Rows.Count == 1)
|
||||
{
|
||||
trefferlistedata.SelectedIndex = 0;
|
||||
get_details();
|
||||
if (keepopen) { keepopen = false; return; }
|
||||
trefferlistedata_DoubleClick(sender, e);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (txtKurzname.Text.Trim() != "")
|
||||
{
|
||||
string s = txtKurzname.Text.Trim();
|
||||
trefferlistedata.DataSource = clsPartner.search_partner(s, 50, 1, personendokument, bpdokument, chksaldiert.Checked);
|
||||
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata, true);
|
||||
trefferlistedata.Columns[0].HeaderText = "Kunden-Nr.";
|
||||
|
||||
try
|
||||
{
|
||||
trefferlistedata.Columns[0].Width = trefferlistedata.Columns[0].Width + 20;
|
||||
}
|
||||
catch { }
|
||||
if (clsPartner.partnerliste.Rows.Count == 1)
|
||||
{
|
||||
trefferlistedata.SelectedIndex = 0;
|
||||
trefferlistedata_DoubleClick(sender, e);
|
||||
}
|
||||
}
|
||||
try
|
||||
{
|
||||
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata, true);
|
||||
try
|
||||
{
|
||||
trefferlistedata.Columns[0].Width = trefferlistedata.Columns[0].Width + 20;
|
||||
}
|
||||
catch { }
|
||||
trefferlistedata.SelectedIndex = 0;
|
||||
try
|
||||
{
|
||||
if (!bpperson_changed)
|
||||
{
|
||||
get_details();
|
||||
|
||||
//partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref trefferlistedata, "nrpar00"));
|
||||
//partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
catch { }
|
||||
try
|
||||
{
|
||||
if (trefferlistedata.View.Records.Count > 0) sfButton1.Enabled = true; else sfButton1.Enabled = false;
|
||||
|
||||
}
|
||||
catch { sfButton1.Enabled = false; }
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void txtPartnerNr_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (e.KeyCode == Keys.Enter) { btnsuche_Click(sender, e); }
|
||||
}
|
||||
|
||||
private void trefferlistedata_SelectionChanged(object sender, Syncfusion.WinForms.DataGrid.Events.SelectionChangedEventArgs e)
|
||||
{
|
||||
|
||||
try
|
||||
{
|
||||
get_details();
|
||||
//partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref trefferlistedata, "nrpar00"));
|
||||
//partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
|
||||
//partnersaldiert = Convert.ToBoolean(TableHelper.GetCellCValue(ref this.trefferlistedata, "saldiert"));
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
private void trefferlistedata_DoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
||||
if (get_details())
|
||||
{
|
||||
if (!keepalive)
|
||||
{
|
||||
this.DialogResult = DialogResult.OK;
|
||||
this.Close();
|
||||
}
|
||||
}
|
||||
} catch { }
|
||||
}
|
||||
|
||||
public bool get_details()
|
||||
{
|
||||
try {
|
||||
|
||||
partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref this.trefferlistedata, "nrpar00"));
|
||||
partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
|
||||
|
||||
personpartner_function(partnernr.ToString());
|
||||
|
||||
if (personendokument && partnernr < 100000000) return false;
|
||||
if (bpdokument && partnernr > 100000000) return false;
|
||||
partnersaldiert = Convert.ToBoolean(TableHelper.GetCellCValue(ref this.trefferlistedata, "saldiert"));
|
||||
if (!check_bp_person) return true;
|
||||
|
||||
|
||||
if (check_bp_person && personendokument && partnernr < 99999999) { return false; }
|
||||
|
||||
|
||||
|
||||
if (partnersaldiert)
|
||||
{
|
||||
DB db = new DB(AppParams.connectionstring);
|
||||
try
|
||||
{
|
||||
db.Get_Tabledata("Select * from dokumenttyp where dokumenttypnr=" + dokumenttypnr.ToString(),false,true);
|
||||
if (Convert.ToBoolean(db.dsdaten.Tables[0].Rows[0]["vertrag"]) == true)
|
||||
{
|
||||
MessageBox.Show("Das Dokument " + db.dsdaten.Tables[0].Rows[0]["Bezeichnung"].ToString() + " kann nicht für einen saldierten Partner erstellt werden.","Dokument erstellen", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
catch { return false; }
|
||||
finally { db = null; }
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
return true;
|
||||
|
||||
}
|
||||
catch { return false; }
|
||||
|
||||
|
||||
}
|
||||
|
||||
private void sfButton1_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (get_details())
|
||||
{
|
||||
this.DialogResult = DialogResult.OK;
|
||||
this.Close();
|
||||
|
||||
}
|
||||
//partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref this.trefferlistedata, "nrpar00"));
|
||||
//partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
|
||||
//partnersaldiert = Convert.ToBoolean(TableHelper.GetCellCValue(ref this.trefferlistedata, "saldiert"));
|
||||
}
|
||||
|
||||
private void sfButton2_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.DialogResult = DialogResult.Abort;
|
||||
this.Close();
|
||||
}
|
||||
|
||||
|
||||
void TableControl_DoubleClick(object sender, System.EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (!get_details()) { return; };
|
||||
//partnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref this.trefferlistedata, "nrpar00"));
|
||||
//partnerkurzname = TableHelper.GetCellCValue(ref this.trefferlistedata, "bkpar00");
|
||||
//partnersaldiert = Convert.ToBoolean(TableHelper.GetCellCValue(ref this.trefferlistedata, "saldiert"));
|
||||
if (!keepalive) {
|
||||
this.DialogResult = DialogResult.OK;
|
||||
this.Close();
|
||||
}
|
||||
else
|
||||
{
|
||||
//Broadcaster().Broadcast("AdminDokErstellung", new SenderInfo("AdminDokErstellung", "", this.dokumenttypnr.ToString()));
|
||||
Broadcaster().Broadcast("SBPartnersuche", new SenderInfo("Partnersuche","SelectedPartner",this.partnernr.ToString()));
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
|
||||
}
|
||||
|
||||
private void trefferlistedata_DrawCell(object sender, Syncfusion.WinForms.DataGrid.Events.DrawCellEventArgs e)
|
||||
{
|
||||
if (e.Column.MappingName == "Typ")
|
||||
{
|
||||
var selectedItem = e.DataRow;
|
||||
var dataRow = (e.DataRow.RowData as DataRowView).Row;
|
||||
if (Convert.ToInt32(dataRow["Typ"]) == 1)
|
||||
{
|
||||
e.Graphics.DrawImage(OnDoc.Properties.Resources.BP_gray_16x16_32, e.Bounds.X + 5, e.Bounds.Y + 3);
|
||||
}
|
||||
else
|
||||
{
|
||||
e.Graphics.DrawImage(OnDoc.Properties.Resources.Person_gray_16x16_32, e.Bounds.X + 5, e.Bounds.Y + 3);
|
||||
}
|
||||
Pen borderPen = new Pen(Color.LightGray);
|
||||
e.Graphics.DrawLine(borderPen, e.Bounds.Right, e.Bounds.Top, e.Bounds.Right, e.Bounds.Bottom);
|
||||
e.Graphics.DrawLine(borderPen, e.Bounds.Left, e.Bounds.Bottom, e.Bounds.Right, e.Bounds.Bottom);
|
||||
e.Handled = true;
|
||||
return;
|
||||
}
|
||||
e.Handled = false;
|
||||
}
|
||||
|
||||
private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
|
||||
{
|
||||
var records = trefferlistedata.View.GetSelectedRecords();
|
||||
if (records.Count < 1) {
|
||||
|
||||
this.partnerDetailsToolStripMenuItem.Enabled = false;
|
||||
this.personDesKundenToolStripMenuItem.Enabled = false;
|
||||
this.kundenDerPersonToolStripMenuItem.Enabled = false;
|
||||
return;
|
||||
}
|
||||
this.partnerDetailsToolStripMenuItem.Enabled = true;
|
||||
|
||||
int ipartnernr = Convert.ToInt32(TableHelper.GetCellCValue(ref this.trefferlistedata, "nrpar00"));
|
||||
if (ipartnernr < 99999999)
|
||||
{
|
||||
personDesKundenToolStripMenuItem.Enabled = true;
|
||||
kundenDerPersonToolStripMenuItem.Enabled = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
personDesKundenToolStripMenuItem.Enabled = false;
|
||||
kundenDerPersonToolStripMenuItem.Enabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
private void partnerDetailsToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
var records = trefferlistedata.View.GetSelectedRecords();
|
||||
var datarow = records[0] as DataRowView;
|
||||
PartnerDetails pd = new PartnerDetails(Convert.ToInt32(datarow[0]));
|
||||
pd.ShowDialog();
|
||||
}
|
||||
|
||||
private void chksaldiert_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
btnsuche_Click(sender, e);
|
||||
}
|
||||
|
||||
private void personDesKundenToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
int nr = 0;
|
||||
var records = trefferlistedata.View.GetSelectedRecords();
|
||||
var datarow = records[0] as DataRowView;
|
||||
nr = Convert.ToInt32(datarow[0]);
|
||||
clsPartner.partnerderperson(nr, 8);
|
||||
if (clsPartner.partnerliste.Rows.Count > 0)
|
||||
{
|
||||
trefferlistedata.DataSource = clsPartner.partnerliste;
|
||||
this.txtPartnerNr.Text = clsPartner.partnerliste.Rows[0][0].ToString();
|
||||
this.txtKurzname.Text = "";
|
||||
keepopen = true;
|
||||
btnsuche_Click(sender, e);
|
||||
|
||||
}
|
||||
|
||||
//string pers = clsPartner.partnerderperson(nr, 8);
|
||||
//if (pers != "")
|
||||
//{
|
||||
// this.txtPartnerNr.Text = pers;
|
||||
// keepopen = true;
|
||||
// btnsuche_Click(sender, e);
|
||||
//}
|
||||
}
|
||||
|
||||
private void kundenDerPersonToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
int nr = 0;
|
||||
var records = trefferlistedata.View.GetSelectedRecords();
|
||||
var datarow = records[0] as DataRowView;
|
||||
nr = Convert.ToInt32(datarow[0]);
|
||||
clsPartner.partnerderperson(nr, 9);
|
||||
if (clsPartner.partnerliste.Rows.Count > 0)
|
||||
{
|
||||
trefferlistedata.DataSource = clsPartner.partnerliste;
|
||||
TableHelper.FormatTable(ref clsPartner.partnerliste, "Partner", ref trefferlistedata, true);
|
||||
trefferlistedata.SelectedIndex = 0;
|
||||
get_details();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void checkBox1_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void personDesKundenToolStripMenuItem_EnabledChanged(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void btnbpperson_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
if (kundenDerPersonToolStripMenuItem.Enabled)
|
||||
{
|
||||
kundenDerPersonToolStripMenuItem_Click(sender, e);
|
||||
keepopen = true;
|
||||
return;
|
||||
}
|
||||
if (personDesKundenToolStripMenuItem.Enabled)
|
||||
{
|
||||
personDesKundenToolStripMenuItem_Click(sender, e);
|
||||
keepopen = true;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
private void trefferlistedata_CellClick(object sender, Syncfusion.WinForms.DataGrid.Events.CellClickEventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
var rowIndex = e.DataRow.RowIndex;
|
||||
//Get the column index value
|
||||
var columnIndex = e.DataColumn.ColumnIndex;
|
||||
var selectedItem = e.DataRow;
|
||||
var dataRow = (e.DataRow.RowData as DataRowView).Row;
|
||||
string pnr = dataRow[0].ToString();
|
||||
|
||||
personpartner_function(pnr);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
private void personpartner_function(string pnr)
|
||||
{
|
||||
int ipartnernr = Convert.ToInt32(pnr);
|
||||
if (ipartnernr < 99999999)
|
||||
{
|
||||
personDesKundenToolStripMenuItem.Enabled = true;
|
||||
kundenDerPersonToolStripMenuItem.Enabled = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
personDesKundenToolStripMenuItem.Enabled = false;
|
||||
kundenDerPersonToolStripMenuItem.Enabled = true;
|
||||
}
|
||||
|
||||
var records = trefferlistedata.View.GetSelectedRecords();
|
||||
if (records.Count < 1)
|
||||
{
|
||||
btnbpperson.Enabled = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
btnbpperson.Enabled = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user