update 20241204

This commit is contained in:
Stefan Hutter
2024-12-04 21:29:04 +01:00
parent 9c0f9cd3b9
commit 9dccb8be8f
34 changed files with 256 additions and 92 deletions

View File

@@ -16,6 +16,9 @@ using System.Windows.Forms.VisualStyles;
using OnDoc.Helper;
using Syncfusion.Windows.Forms.Tools;
using Syncfusion.WinForms.Controls;
using Syncfusion.Windows.Forms;
using System.Security.Cryptography;
using Windows.UI.WebUI;
namespace OnDoc.UIControls.Administrator
{
@@ -42,21 +45,36 @@ namespace OnDoc.UIControls.Administrator
System.Data.DataTable treedata = new System.Data.DataTable();
private void update_tree()
{
int count = txtFilter.Text.Trim().Count(f => f == ' ');
if (count > 0) { treedata.Rows.Clear(); }
TreeDokumenttyp.Nodes.Clear();
db.Get_Tabledata("Select dokumenttypnr as ID, Bezeichnung, Aktiv from dokumenttyp", false, true);
treedata = db.dsdaten.Tables[0].Copy();
string _sqlWhere = " Bezeichnung like '%" + txtFilter.Text + "%'";
string _sqlOrder = "Bezeichnung ";
string sql = "";
sql = "Select dokumenttypnr as ID, Bezeichnung, Aktiv from dokumenttyp";
if (txtFilter.Text.Trim().Length > 0)
{
sql = sql + " where bezeichnung like '%" + txtFilter.Text.Replace(" ", "%") + "%'";
}
else
{
sql = sql + " where dokumenttypnr > 0";
}
if (chkboxaktive.Checked) { sql = sql + " and aktiv=1"; }
if (rbNr.Checked)
{
_sqlOrder = "id ";
sql=sql+" order by id";
}
else _sqlOrder = "Bezeichnung";
else
{
sql = sql + " order by bezeichnung";
}
db.Get_Tabledata(sql, false, true);
treedata = db.dsdaten.Tables[0].Copy();
try
{
System.Data.DataTable _newDataTable = treedata.Select(_sqlWhere, _sqlOrder).CopyToDataTable();
foreach (DataRow r in _newDataTable.Rows)
foreach (DataRow r in treedata.Rows)
{
TreeNodeAdv nodeAdv = new TreeNodeAdv();
nodeAdv.Text = r["id"].ToString() + " " + r["Bezeichnung"].ToString();
@@ -78,8 +96,8 @@ namespace OnDoc.UIControls.Administrator
return;
}
private void Update_Details(int id) {
private void Update_Details(int id) {
db.Get_Tabledata("Select office_vorlagenr, bezeichnung from office_vorlage", false, true);
cbboxofficevorlage.DataSource = db.dsdaten.Tables[0];
cbboxofficevorlage.DisplayMember = "Bezeichnung";
@@ -171,7 +189,7 @@ namespace OnDoc.UIControls.Administrator
Update_Vorlagenfelder();
}
private void Update_Vorlagenfelder() {
private void Update_Vorlagenfelder() {
db.Get_Tabledata("Select * from View_Vorlagenfelder_Relaunch where doktypid=" + dokumenttypnr.ToString(), false, true);
this.sfDataGrid1.DataSource = db.dsdaten.Tables[0];
DataTable dt = db.dsdaten.Tables[0];
@@ -261,7 +279,7 @@ namespace OnDoc.UIControls.Administrator
chkboxInOffice.Checked = true;
}
else
{ chkboxInOffice.Checked= false; }
{ chkboxInOffice.Checked = false; }
}
private void txtfeldname_TextChanged(object sender, EventArgs e)
@@ -307,13 +325,13 @@ namespace OnDoc.UIControls.Administrator
r["Unterschrift_Faksimile"] = this.cbDigitaleUnterschrift.Checked;
r["Unterschrift_ohne"] = this.cbFormularOhneUnterschrift.Checked;
r["Unterschrift_Pruefung"] = this.cbUnterschriftpruefung.Checked;
r["unterschrift_standard"]=this.lbUnterschriftStandard.SelectedIndex;
r["unterschrift_standard"] = this.lbUnterschriftStandard.SelectedIndex;
r["aktiv"] = this.cbaktiv.Checked;
r["mutierer"] = AppParams.CurrentMitarbieter;
r["mutiert_am"]=DateTime.Now;
r["mutiert_am"] = DateTime.Now;
r["versandstrasse_moeglich"] = cbversandstrasse_moeglich.Checked == true;
r["ebanking_moeglich"] = cbebanking_moeglich.Checked == true;
r["BearbeitungDirket"] = chkbearbeitungdirekt.Checked==true;
r["BearbeitungDirket"] = chkbearbeitungdirekt.Checked == true;
r["interop"] = chkinterop.Checked == true;
r["erstellungInOffice"] = chkboxInOffice.Checked == true;
if (cbOfficeDokument.Checked) { r["genresultat_type"] = 1; }
@@ -321,8 +339,8 @@ namespace OnDoc.UIControls.Administrator
if (cbPDFDirekteArchivierung.Checked) { r["genresultat_type"] = 3; }
if (cbbearbeitungzwingend.Checked) { r["genresultat_type"] = 4; }
db.Update_Data();
db.daten.Tables.Clear();
@@ -335,11 +353,12 @@ namespace OnDoc.UIControls.Administrator
{
DataRow dr = db.daten.Tables[0].NewRow();
dr[0] = dokumenttypnr;
if (rbDokumenterstellungBP.Checked) {dr[1] = 1; } else { dr[1] = 2; }
if (rbDokumenterstellungBP.Checked) { dr[1] = 1; } else { dr[1] = 2; }
db.daten.Tables[0].Rows.Add(dr);
}
db.Update_Data();
ToastMessage.ShowToast("Speichern", "Dokumenttyp erfolgreich gespeichert");
update_tree();
}
private void listBox1_MouseDoubleClick(object sender, MouseEventArgs e)
@@ -363,11 +382,11 @@ namespace OnDoc.UIControls.Administrator
var obj = record.Data as DataRowView;
if (obj["id"].ToString() == newkey.ToString())
{ this.sfDataGrid1.SelectedItems.Add(obj);
var dataRow = (obj as DataRowView).Row;
var dataRow = (obj as DataRowView).Row;
Origin = (obj as DataRowView).Row;
Update_Vorlagenfeld(dataRow);}
Update_Vorlagenfeld(dataRow); }
}
}
@@ -378,7 +397,7 @@ namespace OnDoc.UIControls.Administrator
private void chkui_CheckedChanged(object sender, EventArgs e)
{
CheckBox tmpcheckbox = sender as CheckBox;
CheckBox tmpcheckbox = sender as CheckBox;
Origin[tmpcheckbox.Tag.ToString()] = tmpcheckbox.Checked;
var record = sfDataGrid1.View.Records.GetItemAt(sfDataGrid1.SelectedIndex);
@@ -396,8 +415,12 @@ namespace OnDoc.UIControls.Administrator
private void TreeDokumenttyp_AfterSelect(object sender, EventArgs e)
{
this.dokumenttypnr = Convert.ToInt32(TreeDokumenttyp.SelectedNode.Tag.ToString());
Update_Details(dokumenttypnr);
try
{
this.dokumenttypnr = Convert.ToInt32(TreeDokumenttyp.SelectedNode.Tag.ToString());
Update_Details(dokumenttypnr);
}
catch { }
}
private void txtFilter_KeyDown(object sender, KeyEventArgs e)
@@ -412,5 +435,42 @@ namespace OnDoc.UIControls.Administrator
{
update_tree();
}
private void tsbtncopy_Click(object sender, EventArgs e)
{
if (MessageBox.Show("Dokumenttyp kopieren?", "Kopieren", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
db.clear_parameter();
db.add_parameter("@id", dokumenttypnr.ToString());
db.add_parameter("@maid", AppParams.CurrentMitarbieter.ToString());
db.Get_Tabledata("sp_ondoc_copy_doktyp", true, false);
string newkey = db.dsdaten.Tables[0].Rows[0][0].ToString();
treedata.Rows.Clear();
update_tree();
//TreeDokumenttyp.SelectedNode= Search(TreeDokumenttyp.Nodes[0], db.dsdaten.Tables[0].Rows[0][0].ToString() );
List<TreeNodeAdv> nodes;
nodes = TreeDokumenttyp.SearchTree().Where(n => n.Text.Contains(newkey)).ToList();
if (nodes.Count > 0) { TreeDokumenttyp.SelectedNode = nodes[0]; }
}
}
private void chkboxaktive_CheckedChanged(object sender, EventArgs e)
{
update_tree();
}
}
public static class SOExtension
{
public static IEnumerable<TreeNodeAdv> SearchTree(this TreeViewAdv treeView)
{
return SearchTree(treeView.Nodes);
}
public static IEnumerable<TreeNodeAdv> SearchTree(this TreeNodeAdvCollection coll)
{
return coll.Cast<TreeNodeAdv>().Concat(coll.Cast<TreeNodeAdv>().SelectMany(x => SearchTree(x.Nodes)));
}
}
}