update 20241201

This commit is contained in:
Stefan Hutter
2024-12-01 18:34:28 +01:00
parent 470d2e1bb5
commit fcc74b25cb
5244 changed files with 3378608 additions and 267 deletions

View File

@@ -41,6 +41,9 @@ using OnDoc.Versandstrasse;
using Windows.UI.Input.Preview.Injection;
using Windows.UI.WebUI;
using Windows.ApplicationModel.VoiceCommands;
using System.Runtime.InteropServices.ComTypes;
using Windows.Storage.Streams;
using Windows.UI.Xaml.Media;
@@ -66,6 +69,7 @@ namespace OnDoc.UICintrols
public bool runmacros { get; set; } = false;
public string Search_Docid { get; set; } = "";
private System.Data.DataTable Ansichten { get; set; }
public DokList()
{
@@ -116,6 +120,36 @@ namespace OnDoc.UICintrols
RibbonCBProfil.SelectedItem = rl;
}
}
db = null;
refresh_ansichten();
}
private void refresh_ansichten(string Bezeichnung="") {
ribbonCBAnsicht.DropDownItems.Clear();
DB db = new DB(AppParams.connectionstring);
db.clear_parameter();
db.add_parameter("@maid", AppParams.CurrentMitarbieter.ToString());
db.Get_Tabledata("sp_ondoc_get_magridveiw", true, false);
Ansichten = db.dsdaten.Tables[0].Copy();
string standardview = "";
foreach (System.Data.DataRow dr in Ansichten.Rows)
{
RibbonLabel rl = new RibbonLabel();
rl.Text = dr["bezeichnung"].ToString();
rl.Tag = Convert.ToInt32(dr["id"]);
ribbonCBAnsicht.DropDownItems.Add(rl);
if (Convert.ToBoolean(dr["standard"])==true && Bezeichnung=="")
{
ribbonCBAnsicht.SelectedItem = rl;
standardview = dr["gridsettings"].ToString();
}
if (rl.Text == Bezeichnung)
{
ribbonCBAnsicht.SelectedItem = rl;
standardview = dr["gridsettings"].ToString();
}
}
db = null;
if (standardview != "") { refresh_view(standardview); }
}
@@ -201,7 +235,7 @@ namespace OnDoc.UICintrols
selected_dokumentid = documentid;
selected_partnernr = dataRow["Partner-Nr"].ToString();
selected_cellvalue = dataRow[e.DataColumn.ColumnIndex].ToString();
if (dataRow["Bearbeitung_Zwingend"].ToString() == "1")
{
@@ -210,7 +244,7 @@ namespace OnDoc.UICintrols
}
else
{
if (dataRow["toapprove"].ToString() == "True" && dataRow["approved"].ToString() =="False")
if (dataRow["toapprove"].ToString() == "True" && dataRow["approved"].ToString() == "False")
{
RibbonButtonArchivToOnBase.Enabled = false;
archivierenToolStripMenuItem.Enabled = false;
@@ -559,7 +593,7 @@ namespace OnDoc.UICintrols
break;
case 4:
archivedoc(frmnewdok.dokumentid);
break;
case 5:
break;
@@ -672,7 +706,20 @@ namespace OnDoc.UICintrols
private void sfDataGrid1_DrawCell(object sender, DrawCellEventArgs e)
{
if (e.Column.MappingName == "zu_retournieren")
{
e.Column.CellStyle.HorizontalAlignment = HorizontalAlignment.Center;
e.Handled = true;
var selectedItem = e.DataRow;
var dataRow = (e.DataRow.RowData as DataRowView).Row;
if (Convert.ToBoolean(dataRow["zu_retournieren"]) == true)
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.Barcode_24x24_32, e.Bounds.X + 20, 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);
}
}
if (e.Column.MappingName == "fileext")
{
try
@@ -681,6 +728,9 @@ namespace OnDoc.UICintrols
e.Handled = true;
var selectedItem = e.DataRow;
var dataRow = (e.DataRow.RowData as DataRowView).Row;
if (dataRow[0].ToString().Substring(0, 1).ToUpper() == "D")
{
//word
@@ -828,7 +878,7 @@ namespace OnDoc.UICintrols
nv.Show();
}
private void archivedoc (string documentid)
private void archivedoc(string documentid)
{
string URL = AppParams.RESTURI + "api/ArchiveDocFromDatabase?dokumentid=" + documentid;
@@ -902,7 +952,7 @@ namespace OnDoc.UICintrols
//}
//refresh_dokumente();
}
private void ribbonButtonVersandstrasse_Click(object sender, EventArgs e)
{
@@ -1135,6 +1185,163 @@ namespace OnDoc.UICintrols
set_functions();
}
}
private void refresh_view(string base64string)
{
byte[] bytes = Convert.FromBase64String(base64string);
string plaintext = Strings.Base64Decode(base64string);
string tagesdatum = DateTime.Now.ToString("yyyy-MM-ddT00:00:00");
//tagesdatum = "2024-11-29T00:00:00";
plaintext = plaintext.Replace("@today@", tagesdatum);
plaintext = Strings.Base64Encode(plaintext);
bytes=Convert.FromBase64String(plaintext);
using (MemoryStream ms = new MemoryStream(bytes))
{
this.sfDataGrid1.Deserialize(ms);
}
}
public static string Decode(string text)
{
text = text.Replace('_', '/').Replace('-', '+');
switch (text.Length % 4)
{
case 2:
text += "==";
break;
case 3:
text += "=";
break;
}
return Encoding.UTF8.GetString(Convert.FromBase64String(text));
}
private void ribbonButton4_Click(object sender, EventArgs e)
{
if (System.IO.File.Exists(@"x:\gridsettings.xml"))
{
using (var file = File.Open(@"x:\gridsettings.xml", FileMode.Open))
{
this.sfDataGrid1.Deserialize(file);
}
}
}
private void ribbonCBAnsicht_DropDownItemClicked(object sender, System.Windows.Forms.RibbonItemEventArgs e)
{
try
{
int selecteditem = Convert.ToInt32(e.Item.Tag);
if (selecteditem == -999)
{
RibbonButtonViewStandard_Click(sender, e);
return;
}
foreach (System.Data.DataRow dr in Ansichten.Rows)
{
if (Convert.ToInt32(dr["id"]) == selecteditem)
{
sfDataGrid1.ClearFilters();
sfDataGrid1.ClearGrouping();
sfDataGrid1.ClearSelection();
sfDataGrid1.ClearSorting();
refresh_view(dr["gridsettings"].ToString());
}
}
}
catch { }
}
private void RibbonButtonViewStandard_Click(object sender, EventArgs e)
{
sfDataGrid1.ClearFilters();
sfDataGrid1.ClearGrouping();
sfDataGrid1.ClearSelection();
sfDataGrid1.ClearSorting();
ribbonCBAnsicht.SelectedIndex = 0;
}
private void RibbonButtonViewSave_Click(object sender, EventArgs e)
{
SaveAnsicht sa = new SaveAnsicht();
sa.ShowDialog();
if (sa.DialogResult == DialogResult.OK)
{
MemoryStream ms = new MemoryStream();
this.sfDataGrid1.Serialize(ms);
string inputAsString = Convert.ToBase64String(ms.ToArray());
DB db = new DB(AppParams.connectionstring);
if (sa.alsStandard == 1)
{
db.Exec_SQL("Update mitarbeiter_gridsettings set standard=0 where mitarbeiterid=" + AppParams.CurrentMitarbieter.ToString());
}
string sql = "insert Mitarbeiter_GridSettings (mitarbeiterid, erstellt_am, aktiv, bezeichnung, gridsettings,standard) values(";
sql = sql + AppParams.CurrentMitarbieter.ToString() + ",getdate(),1,'" + sa.selectedtext + "','" + inputAsString + "',"+sa.alsStandard.ToString()+")";
db.Exec_SQL(sql);
db = null;
if (sa.alsStandard != 1) { refresh_ansichten(sa.selectedtext); } else { refresh_ansichten(); }
//using (var file = File.Create(@"x:\gridsettings4.xml"))
//{
// this.sfDataGrid1.Serialize(file);
//}
}
}
private void RibbonButtonViewDelete_Click(object sender, EventArgs e)
{
if (ribbonCBAnsicht.SelectedItem.Text.Trim()=="" || ribbonCBAnsicht.SelectedItem.Text.Substring(0,4)==" Heu")
{
MessageBox.Show("Die gewählte Standard-Ansicht kann nicht gelöscht werden", "Ansicht löschen", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
if (MessageBox.Show("Aktuelle Ansicht löschen?", "Ansicht löschen", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
DB db = new DB(AppParams.connectionstring);
foreach (System.Data.DataRow dr in Ansichten.Rows)
{
if (dr["bezeichnung"].ToString() == ribbonCBAnsicht.SelectedItem.Text)
{
db.Exec_SQL("Update mitarbeiter_gridsettings set aktiv=0 where id=" + dr["id"].ToString());
}
}
db = null;
refresh_ansichten();
}
}
private void ribbonButton4_Click_1(object sender, EventArgs e)
{
FileHelper fh = new FileHelper();
string b = fh.Base64FromFile(@"x:\gridsettings2.xml");
DB db = new DB(AppParams.connectionstring);
db.Exec_SQL("Update mitarbeiter_gridsettings set gridsettings='" + b + "' where id=-101");
// using (var file = File.Open(@"x:\gridsettings2.xml", FileMode.Open))
// {
// this.sfDataGrid1.Deserialize(file);
// }
//using (var file = File.Open(@"x:\gridsettings3.xml", FileMode.Open))
//{
// this.sfDataGrid1.Serialize(file);
//}
}
private void archivierenToolStripMenuItem_Click(object sender, EventArgs e)
{
RibbonButtonArchivToOnBase_Click(sender, e);
}
}
}