You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1118 lines
42 KiB

using OnDoc.Helper;
using OnDoc.Klassen;
using Syncfusion.Windows.Forms.Tools;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Database;
using DOCGEN;
using System.IO;
using Model;
using Helper;
using System.Web;
using static Syncfusion.Windows.Forms.Tools.NavigationView;
using System.Net;
using static System.Windows.Forms.VisualStyles.VisualStyleElement.StartPanel;
using System.Security.Policy;
using edoka_dms;
using Microsoft.Office.Interop.Word;
using System.Diagnostics;
using Syncfusion.WinForms.DataGrid.Events;
using Syncfusion.WinForms.DataGrid;
using DOCGEN.Generator;
using OnDoc.DocMgmt;
using OnDoc.UIControls.Administrator;
using Syncfusion.WinForms.ListView;
using OnDoc.Diverses;
using OnDoc.UIControls;
using BroadcastListener.Interfaces;
using static BroadcastListener.Classes.Factory;
using BroadcastListener.Classes;
using System.Resources;
using NLog.Config;
using OnDoc.Versandstrasse;
using Windows.UI.Input.Preview.Injection;
using Windows.UI.WebUI;
using Windows.ApplicationModel.VoiceCommands;
namespace OnDoc.UICintrols
{
public partial class DokList : UserControl, IMessageListener1
{
public int partnernr { get; set; } = 0;
public int forMaNr { get; set; } = 0;
public int docartnr { get; set; }
public int profilnr { get; set; }
public int mitarbeiternr { get; set; }
public string selected_dokumentid { get; set; }
public string selected_partnernr { get; set; }
public string selected_cellvalue { get; set; }
private string vorschauposition = "";
private bool Separate_Vorschau_offen = false;
public string datafilter { get; set; } = "";
public bool interop { get; set; } = false;
public bool runmacros { get; set; } = false;
public string Search_Docid { get; set; } = "";
public DokList()
{
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("de-DE");
InitializeComponent();
Broadcaster().AddListener(this);
//t_functions();
pos_elements();
}
public void OnListen(string message, SenderInfo sender)
{
if (sender.SenderName is "PreviewWindow")
{
if (sender.Function == "WindowClosed")
{
this.Separate_Vorschau_offen = false;
}
}
}
private void DokList_Load(object sender, EventArgs e)
{
tsrbvorschau.SelectedIndex = 0;
sfDataGrid1.AllowDraggingColumns = true;
// Helper.Security security = new Helper.Security();
// security.set_security(this);
//Refresh_Bewilligungen();
}
public void load_Profile()
{
RibbonCBProfil.DropDownItems.Clear();
DB db = new DB(AppParams.connectionstring);
db.dsdaten.Tables.Clear();
db.Get_Tabledata("Select profilnr, bezeichnung, standard from profil where aktiv=1 and mitarbeiternr=" + AppParams.CurrentMitarbieter.ToString(), false, true);
foreach (System.Data.DataRow r in db.dsdaten.Tables[0].Rows)
{
RibbonLabel rl = new RibbonLabel();
rl.Text = r["bezeichnung"].ToString();
rl.Tag = Convert.ToInt32(r["profilnr"]);
RibbonCBProfil.DropDownItems.Add(rl);
if (Convert.ToBoolean(r["standard"]) == true)
{
RibbonCBProfil.SelectedItem = rl;
}
}
}
public bool grid_empty()
{
if (this.sfDataGrid1.RowCount > 0) { return false; } else return true;
}
public bool row_selected()
{
if (grid_empty() == true) { return false; }
var records = sfDataGrid1.View.GetSelectedRecords();
if (records.Count < 1) { return false; }
return true;
}
public void delete_doks_in_list()
{
var records = this.sfDataGrid1.View.Records;
foreach (var record in records)
{
var a = record.Data;
var b = a as DataRowView;
string dokumentid = b["dokumentid"].ToString();
dokument_loeschen(dokumentid);
}
}
public void refresh_dokumente()
{
if (datafilter != "")
{
refresh_dokumente_filtered();
return;
}
DB db = new DB(AppParams.connectionstring);
int selectedIndex = RibbonCBProfil.SelectedIndex;
profilnr = Convert.ToInt32(RibbonCBProfil.SelectedItem.Tag.ToString());
// profilnr = Convert.ToInt32(RibbonCBProfil.SelectedItem.Tag.ToString());
System.Data.DataTable dokumente = new System.Data.DataTable();
dokumente = db.Get_Dokumente(partnernr, docartnr, profilnr, forMaNr, Search_Docid, false);
// TableHelper.SetColumnsOrder(dokumente, "trefferliste");
TableHelper.FormatTable(ref dokumente, "trefferliste_relaunch", ref this.sfDataGrid1);
//this.sfDataGrid1.DataSource = dokumente;
sfDataGrid1.View.AutoExpandGroups = true;
this.timer1.Enabled = true;
}
public void refresh_dokumente_filtered()
{
DB db = new DB(AppParams.connectionstring);
int selectedIndex = RibbonCBProfil.SelectedIndex;
try
{
profilnr = Convert.ToInt32(RibbonCBProfil.SelectedItem.Tag.ToString());
}
catch { }
System.Data.DataTable dokumente = new System.Data.DataTable();
dokumente = db.Get_Dokumente(partnernr, docartnr, profilnr, forMaNr, Search_Docid, false);
dokumente.DefaultView.RowFilter = datafilter;
// TableHelper.SetColumnsOrder(dokumente, "trefferliste");
TableHelper.FormatTable(ref dokumente, "trefferliste_relaunch", ref this.sfDataGrid1);
//this.sfDataGrid1.DataSource = dokumente;
}
private void sfDataGrid1_CellClick(object sender, Syncfusion.WinForms.DataGrid.Events.CellClickEventArgs e)
{
string documentid = "";
try
{
var selectedItem = e.DataRow;
var dataRow = (e.DataRow.RowData as DataRowView).Row;
documentid = dataRow["dokumentid"].ToString();
selected_dokumentid = documentid;
selected_partnernr = dataRow["Partner-Nr"].ToString();
selected_cellvalue = dataRow[e.DataColumn.ColumnIndex].ToString();
if (dataRow["Bearbeitung_Zwingend"].ToString() == "1")
{
RibbonButtonArchivToOnBase.Enabled = false;
archivierenToolStripMenuItem.Enabled = false;
}
else
{
if (dataRow["toapprove"].ToString() == "True" && dataRow["approved"].ToString() =="False")
{
RibbonButtonArchivToOnBase.Enabled = false;
archivierenToolStripMenuItem.Enabled = false;
}
else
{
RibbonButtonArchivToOnBase.Enabled = true;
archivierenToolStripMenuItem.Enabled = true;
}
}
}
catch
{
selected_dokumentid = "";
selected_partnernr = "";
return;
}
if (vorschauposition == "Keine Vorschau") { return; }
if (Separate_Vorschau_offen)
{
Broadcaster().Broadcast(selected_dokumentid, new SenderInfo("Doklist", "UpdateView", ""));
return;
}
docPreview1.Show_Doc(selected_dokumentid);
docPreview1.Hide_Editbuttons();
}
private void dokumentAnzeigenToolStripMenuItem_Click(object sender, EventArgs e)
{
clsdok dok = GetDoc(false);
OpenDoc(dok, false);
}
private void dokumentBearbeitenToolStripMenuItem_Click(object sender, EventArgs e)
{
if (!row_selected()) return;
dokument_bearbeiten();
}
public void dokument_bearbeiten()
{
clsdok dok = GetDoc(false);
if (dok.dokument == "") return;
DB db = new DB(AppParams.connectionstring);
if (db.Dok_in_Bearbeietung(3, selected_dokumentid, AppParams.CurrentMitarbieter) == false)
{
MessageBox.Show("Das Dokument wird aktuell bearbeitet.", "Dokumentbearbeitung", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
db.Get_Tabledata("Select * from dokument where dokumentid='" + selected_dokumentid + "'", false, true);
if (Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["verantwortlich"]) != AppParams.CurrentMitarbieter)
{
if (MessageBox.Show("Durch die Bearbeitung wird die Dokument-Verantwortung übernommen.", "Dokumentbearbieutng", MessageBoxButtons.OKCancel, MessageBoxIcon.Information) == DialogResult.OK)
{
db.Exec_SQL("Update dokument set verantwortlich=" + AppParams.CurrentMitarbieter.ToString() + " where dokumentid='" + selected_dokumentid + "'");
Logging.DocLog.Info("Verantwortung für Bearbeitung übernommen", "Doklist", selected_dokumentid, selected_partnernr, "Verantwortung übernommen");
}
}
db.Dok_in_Bearbeietung(1, selected_dokumentid, AppParams.CurrentMitarbieter);
db = null;
Logging.DocLog.Info("Dokument bearbeiten", "Doklist", selected_dokumentid, selected_partnernr, "Dokument bearbeiten: InterOP: " + interop.ToString());
OpenDoc(dok, true, interop, runmacros);
}
private clsdok GetDoc(bool AsPDF)
{
clsdok dok = new clsdok("", "", "");
if (selected_dokumentid == "")
{
return dok; ;
}
if (AppParams.UseAPI == "YES")
{
string URL = AppParams.RESTURI + "api/GetDocument?dokid=" + selected_dokumentid;
if (AsPDF == true)
{
URL = AppParams.RESTURI + "api/GetDocumentPDF?dokid=" + selected_dokumentid;
}
HttpWebRequest webRequest = HttpWebRequest.Create(URL) as HttpWebRequest;
webRequest.Method = WebRequestMethods.Http.Get;
webRequest.Headers["Authorization"] = "Bearer " + AppParams.apikey;
//webRequest.Credentials = new NetworkCredential(Username, Password);
//webRequest.ContentType = "application/x-www-form-urlencoded";
using (HttpWebResponse response = webRequest.GetResponse() as HttpWebResponse)
{
if (response.StatusCode == HttpStatusCode.OK)
{
StreamReader reader = new StreamReader(response.GetResponseStream());
string responseContent = reader.ReadToEnd();
dok = Newtonsoft.Json.JsonConvert.DeserializeObject<clsdok>(responseContent);
}
else
{
Logging.Logging.Error(URL + ": " + response.StatusCode.ToString() + " / " + response.StatusDescription, "Clinet - DokList GetDocument", "");
}
}
}
else
{
DocGet gd = new DocGet(AppParams.connectionstring);
if (AsPDF == true)
{
dok = gd.GetDocAsPDF(selected_dokumentid);
}
else
{
dok = gd.GetDoc(selected_dokumentid);
}
}
if (dok.extension.ToString() == "")
{
MessageBox.Show("Das Dokument mit der ID " + selected_dokumentid + " wurde nicht gefunden.", "");
return dok;
}
return dok;
}
private void OpenDoc(clsdok dok, bool editdoc, bool interop = false, bool runmacros = false)
{
switch (dok.extension.ToUpper().Substring(0, 1))
{
case "D":
clsFileHelper fh = new clsFileHelper();
string tempfilename = "";
tempfilename = fh.save_temp_file(dok.dokument, selected_dokumentid, AppParams.tempdir, dok.extension);
//System.Diagnostics.Process.Start(tempfilename);
if (interop == true)
{
OnDocOffice.clsWordEdit WordInterOP = new OnDocOffice.clsWordEdit(AppParams.connectionstring, tempfilename, selected_dokumentid);
WordInterOP.Edit_Document(runmacros);
WordInterOP = null;
}
else
{
System.Diagnostics.Process.Start("winword.exe", "/w " + tempfilename);
}
if (editdoc == true)
{
clsProcessWatch.AddToList(selected_dokumentid, tempfilename, "Word");
}
fh = null;
break;
case "X":
clsFileHelper fh2 = new clsFileHelper();
tempfilename = fh2.save_temp_file(dok.dokument, selected_dokumentid, AppParams.tempdir, dok.extension);
if (interop == true)
{
OnDocOffice.clsExcelEdit ExcelInterOP = new OnDocOffice.clsExcelEdit(AppParams.connectionstring, tempfilename, selected_dokumentid);
ExcelInterOP.Edit_Document();
ExcelInterOP = null;
}
else
{
System.Diagnostics.Process.Start("excel.exe", " " + tempfilename);
}
//System.Diagnostics.Process.Start("excel.exe", "/x " + tempfilename);
if (editdoc == true)
{
clsProcessWatch.AddToList(selected_dokumentid, tempfilename, "Excel");
}
fh2 = null;
break;
case "P":
clsFileHelper fh3 = new clsFileHelper();
tempfilename = fh3.save_temp_file(dok.dokument, selected_dokumentid, AppParams.tempdir, dok.extension);
System.Diagnostics.Process.Start(tempfilename);
if (editdoc == true)
{
clsProcessWatch.AddToList(selected_dokumentid, tempfilename, "PDF");
}
fh3 = null;
break;
default:
break;
}
}
private void barcodeDemoToolStripMenuItem_Click(object sender, EventArgs e)
{
DOCGEN.DocGen dg = new DOCGEN.DocGen();
Helper.FileHelper fh = new FileHelper();
fh.SaveBase64ToFile(dg.Barcodetest(selected_dokumentid), @"x:\test.png");
}
private void tsrbvorschau_TextChanged(object sender, EventArgs e)
{
vorschauposition = tsrbvorschau.Text;
}
private void tsrbvorschau_SelectedIndexChanged(object sender, EventArgs e)
{
vorschauposition = tsrbvorschau.Text;
switch (vorschauposition)
{
case "Keine Vorschau":
this.splitContainer1.SplitterDistance = this.Height;
this.splitContainer1.Orientation = Orientation.Horizontal;
docPreview1.Visible = false;
break;
case "Vorschau unten":
this.splitContainer1.SplitterDistance = this.Height / 2;
this.splitContainer1.Orientation = Orientation.Horizontal;
docPreview1.Visible = true;
docPreview1.Show_Doc(selected_dokumentid);
docPreview1.Hide_Editbuttons();
break;
case "Vorschau rechts":
this.splitContainer1.SplitterDistance = this.Width / 2;
this.splitContainer1.Orientation = Orientation.Vertical;
docPreview1.Visible = true;
docPreview1.Show_Doc(selected_dokumentid);
docPreview1.Hide_Editbuttons();
break;
case "Eigenes Fenster":
this.splitContainer1.SplitterDistance = this.Height;
this.splitContainer1.Orientation = Orientation.Horizontal;
docPreview1.Visible = false;
if (Separate_Vorschau_offen)
{
Broadcaster().Broadcast(selected_dokumentid, new SenderInfo("Doklist", "UpdateView", ""));
}
else
{
frmDocPreview dp = new frmDocPreview();
dp.Show();
Separate_Vorschau_offen = true;
Broadcaster().Broadcast(selected_dokumentid, new SenderInfo("Doklist", "UpdateView", ""));
}
break;
}
}
private void vertragPDFDEMOToolStripMenuItem_Click(object sender, EventArgs e)
{
clsdok dok = new clsdok("", "", "");
dok = GetDoc(false);
DocGenerator_from_EDOKA docgen = new DocGenerator_from_EDOKA(AppParams.connectionstring);
//docgen.DocToPDF(ref dok);
return;
}
private void RibbonButtonExit_Click(object sender, EventArgs e)
{
System.Windows.Forms.Application.Exit();
}
private void RibbonBtnVorschauNo_Click(object sender, EventArgs e)
{
tsrbvorschau.SelectedIndex = 0;
}
private void RibbonBtnVorschauUnten_Click(object sender, EventArgs e)
{
tsrbvorschau.SelectedIndex = 1;
}
private void RibbonButtonVorschauRechts_Click(object sender, EventArgs e)
{
tsrbvorschau.SelectedIndex = 2;
}
private void RibbonBtnVorschauSepparat_Click(object sender, EventArgs e)
{
if (tsrbvorschau.SelectedIndex == 3 && Separate_Vorschau_offen == false)
{
tsrbvorschau_SelectedIndexChanged(sender, e);
return;
}
tsrbvorschau.SelectedIndex = 3;
}
private void RibbonButtonCreateNewDoc_Click(object sender, EventArgs e)
{
createnewdoc(0, 0);
}
public void StartPruefung()
{
ribbonButtonApproval_Click(null, null);
}
public void createnewdoc(int partnernr, int dokumenttypnr, bool Favoriten = false, string interaktion = "Yes", string showdoc = "Yes")
{
if (dokumenttypnr == 0)
{
DokTypSelect DokTypSelect = new DokTypSelect(Favoriten);
DokTypSelect.vorlagentype = 1;
DokTypSelect.ShowDialog(this);
if (DokTypSelect.DialogResult == DialogResult.OK)
{
dokumenttypnr = DokTypSelect.dokumenttypnr;
}
else { return; }
}
int selectedIndex = RibbonCBProfil.SelectedIndex;
profilnr = Convert.ToInt32(RibbonCBProfil.SelectedItem.Tag.ToString());
Dokumenterstellung frmnewdok = new Dokumenterstellung(partnernr, dokumenttypnr, profilnr);
if (interaktion == "No")
{
frmnewdok.Visible = false;
frmnewdok.Show();
frmnewdok.Dokument_Erstellen();
frmnewdok.Dispose();
}
else
{
frmnewdok.ShowDialog();
}
switch (frmnewdok.DocFunction)
{
case 1:
if (frmnewdok.dokumentid != "")
{
selected_dokumentid = frmnewdok.dokumentid;
selected_partnernr = frmnewdok.partnernr.ToString(); ;
interop = frmnewdok.interop;
runmacros = frmnewdok.runmacros;
dokument_bearbeiten();
}
break;
case 2:
if (frmnewdok.dokumentid != "")
{
dokument_loeschen(frmnewdok.dokumentid);
}
break;
case 3:
break;
case 4:
archivedoc(frmnewdok.dokumentid);
break;
case 5:
break;
default:
break;
}
}
private void RibbonButtonRefresh_Click(object sender, EventArgs e)
{
refresh_dokumente();
}
private void RibbonButtonEditDelete_Click(object sender, EventArgs e)
{
var records = sfDataGrid1.View.GetSelectedRecords();
if (records.Count < 1) { return; }
if (MessageBox.Show("Gewählte Dokument(e) löschen", "Dokument löschen", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) { return; }
foreach (var record in records)
{
var datarow = record as DataRowView;
string documentid = datarow["dokumentid"].ToString();
dokument_loeschen(documentid);
}
refresh_dokumente();
}
public void dokument_loeschen(string dokumentid)
{
DB db = new DB(AppParams.connectionstring);
db.Exec_SQL("Delete from dokument where dokumentid='" + dokumentid + "'");
db.Exec_SQL("Delete from dokument_trefferliste where dokumentid='" + dokumentid + "'");
db = null;
Logging.DocLog.Info("Dokument gelöscht", "Doklist.Dokument_loeschen", dokumentid, "", "Dokument gelöscht");
}
private void ribbonButton1_Click(object sender, EventArgs e)
{
MitarbeiterProfil map = new MitarbeiterProfil(AppParams.CurrentMitarbieter);
map.ShowDialog();
load_Profile();
}
private void dokumentLöschenToolStripMenuItem_Click(object sender, EventArgs e)
{
RibbonButtonEditDelete_Click(sender, e);
}
private void RibbonButtonZuweisen_Click(object sender, EventArgs e)
{
if (!row_selected()) return;
InputDialog ma = new InputDialog(true, "Verantwortlichkeit wechseln zu");
ma.ShowDialog();
if (ma.DialogResult == DialogResult.OK)
{
DB dB = new DB(AppParams.connectionstring);
dB.Exec_SQL("Update dokument set verantwortlich=" + ma.result + " where dokumentid = '" + selected_dokumentid + "'");
dB = null;
Logging.DocLog.Info("Verantwortung zugewiesen auf " + ma.result.ToString(), "Doklist", selected_dokumentid, selected_partnernr, "Verantwortung zugewiesen");
}
}
private void RibbonButtonCreateNewPaket_Click(object sender, EventArgs e)
{
int selectedIndex = RibbonCBProfil.SelectedIndex;
profilnr = Convert.ToInt32(RibbonCBProfil.SelectedItem.Tag.ToString());
Dokumentpaket dp = new Dokumentpaket(profilnr);
dp.Show();
}
private void RibbonButtonCreateNewSerienbrief_Click(object sender, EventArgs e)
{
Serienbrief sb = new Serienbrief(this.profilnr);
sb.Show();
}
private void RibbonButtonNewDoc_Click(object sender, EventArgs e)
{
createnewdoc(0, 0);
}
public void hide_panels()
{
this.RibbonButtonFavoriten.Visible = false;
this.RibbonPanelSuche.Visible = false;
this.RibbonPannelAproval.Visible = false;
this.lblToApprove.Visible = false;
this.RibbonPanelExit.Visible = false;
this.RibbonPanelProfil.Visible = false;
this.RibbonPanelCreate.Visible = false;
this.RibbonTabAdmin.Visible = false;
this.sfDataGrid1.AllowGrouping = false;
this.sfDataGrid1.ShowGroupDropArea = false;
this.lblTitel.Text = "";
this.RibbonButtonNewDoc.Visible = false;
this.RibbonPanelDoklist.Visible = false;
this.RibbonBtnVorschauNo.Visible = false;
this.RibbonButtonVorschauRechts.Visible = false;
this.RibbonBtnVorschauUnten.Visible = false
;
}
private void sfDataGrid1_DrawCell(object sender, DrawCellEventArgs e)
{
if (e.Column.MappingName == "fileext")
{
try
{
e.Column.CellStyle.HorizontalAlignment = HorizontalAlignment.Center;
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
if (dataRow[11].ToString() != "1")
{
if (Convert.ToBoolean(dataRow[16]) == true)
{
if (Convert.ToBoolean(dataRow[17]) == true)
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.Word_approved_24x24_32, e.Bounds.X + 20, e.Bounds.Y);
}
else
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.Word_ToApprove_24x24_32, e.Bounds.X + 20, e.Bounds.Y);
}
}
else
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.Word_24x24_32, e.Bounds.X + 20, e.Bounds.Y);
}
}
else
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.Word_Edit_24x24_32, e.Bounds.X + 20, e.Bounds.Y);
}
}
if (dataRow[0].ToString().Substring(0, 1).ToUpper() == "X")
{
if (dataRow[11].ToString() != "1")
if (Convert.ToBoolean(dataRow[16]) == true)
{
if (Convert.ToBoolean(dataRow[17]) == true)
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.Excel_approved_24x24_32, e.Bounds.X + 20, e.Bounds.Y);
}
else
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.Excel_ToApprove_24x24_32, e.Bounds.X + 20, e.Bounds.Y);
}
}
else
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.Excel_24x24_32, e.Bounds.X + 20, e.Bounds.Y);
}
else
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.Excel_Edit_24x24_32, e.Bounds.X + 20, e.Bounds.Y);
}
}
if (dataRow[0].ToString().Substring(0, 1).ToUpper() == "P")
{
e.Graphics.DrawImage(OnDoc.Properties.Resources.PDF_24x24_32, e.Bounds.X + 20, e.Bounds.Y);
}
//e.Graphics.DrawImage(Image.FromFile(@"../../US.jpg"), e.Bounds.X + 20, e.Bounds.Y);
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);
}
catch { }
}
}
private void zellenwertInZwischenablageKopierenToolStripMenuItem_Click(object sender, EventArgs e)
{
System.Windows.Forms.Clipboard.SetText(selected_cellvalue);
}
private void sfDataGrid1_CurrentCellKeyDown(object sender, CurrentCellKeyEventArgs e)
{
}
private void sfDataGrid1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.C)
{
System.Windows.Forms.Clipboard.SetText(selected_cellvalue);
e.SuppressKeyPress = true;
}
}
private void druckenToolStripMenuItem_Click(object sender, EventArgs e)
{
DocGet gd = new DocGet(AppParams.connectionstring);
clsdok dok = new clsdok("", "", "");
dok = gd.GetDoc(selected_dokumentid);
gd.Print_Doc(dok.dokument);
}
private void RibbonButtonTest1_Click(object sender, EventArgs e)
{
DOCGEN.print print = new DOCGEN.print();
print.printWord();
}
private void RibbonButtonBerechtigungsgruppe_Click(object sender, EventArgs e)
{
TableEditor tb = new TableEditor("Relaunch_Berechtigungsgruppe");
tb.Show();
}
private void ribbonButton2_Click(object sender, EventArgs e)
{
Verbindungseditor ve = new Verbindungseditor("Relaunch_Berechtigungsgruppe", "Mitarbeiter", "Relaunch_Berechtigungsgruppe_Mitarbeiter");
ve.Show();
}
private void RibbonButtonDokumenttyp_Click(object sender, EventArgs e)
{
//DokumenttypListe dtliste = new DokumenttypListe();
//dtliste.Show();
Dokumenttyp doktype = new Dokumenttyp();
doktype.Show();
}
private void RibbonButtonVorlagen_Click(object sender, EventArgs e)
{
OfficeVorlage ov = new OfficeVorlage();
ov.Show();
}
private void pDFGenerierenToolStripMenuItem_Click(object sender, EventArgs e)
{
DOCGEN.DocGet dg = new DocGet(AppParams.connectionstring);
//dg.GetDocAsPDF(selected_dokumentid);
clsdok dok = new clsdok("", "", "");
dok = dg.GetDocAsFinalPDF(selected_dokumentid);
clsFileHelper fh = new clsFileHelper();
string tempfilename = "";
tempfilename = fh.save_temp_file(dok.dokument, selected_dokumentid, AppParams.tempdir, dok.extension);
}
private void ribbonButtonNativ_Click(object sender, EventArgs e)
{
NativVorlagen nv = new NativVorlagen();
nv.Show();
}
private void archivedoc (string documentid)
{
string URL = AppParams.RESTURI + "api/ArchiveDocFromDatabase?dokumentid=" + documentid;
HttpWebRequest webRequest = HttpWebRequest.Create(URL) as HttpWebRequest;
webRequest.Method = WebRequestMethods.Http.Get;
webRequest.Headers["Authorization"] = "Bearer " + AppParams.apikey;
try
{
using (HttpWebResponse response = webRequest.GetResponse() as HttpWebResponse)
{
if (response.StatusCode == HttpStatusCode.OK)
{
StreamReader reader = new StreamReader(response.GetResponseStream());
string responseContent = reader.ReadToEnd();
Logging.DocLog.Info("Dokument archiviert", "OnDoc", documentid, "", "Dokument archiviert und abgeschlossen");
}
else
{
MessageBox.Show("Die Archivierung des Dokumentes " + documentid + " wurde abgebrochen." + Environment.NewLine + "Fehler: " + response.StatusDescription);
Logging.Logging.Error(URL + ": " + response.StatusCode.ToString() + " / " + response.StatusDescription, "Clinet - DokList GetDocument", "");
}
}
}
catch (Exception ex)
{
MessageBox.Show("Die Archivierung des Dokumentes " + documentid + " konnte nicht durchgeführt werden." + Environment.NewLine + "Fehler: " + ex.Message);
}
}
private void RibbonButtonArchivToOnBase_Click(object sender, EventArgs e)
{
var records = sfDataGrid1.View.GetSelectedRecords();
if (records.Count < 1) { return; }
if (MessageBox.Show("Gewählte Dokument(e) archiviern und abschliessen", "Dokument archivieren und abschliessen", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) { return; }
foreach (var record in records)
{
var datarow = record as DataRowView;
string documentid = datarow["dokumentid"].ToString();
archivedoc(documentid);
string URL = AppParams.RESTURI + "api/ArchiveDocFromDatabase?dokumentid=" + documentid;
HttpWebRequest webRequest = HttpWebRequest.Create(URL) as HttpWebRequest;
webRequest.Method = WebRequestMethods.Http.Get;
webRequest.Headers["Authorization"] = "Bearer " + AppParams.apikey;
try
{
using (HttpWebResponse response = webRequest.GetResponse() as HttpWebResponse)
{
if (response.StatusCode == HttpStatusCode.OK)
{
StreamReader reader = new StreamReader(response.GetResponseStream());
string responseContent = reader.ReadToEnd();
}
else
{
MessageBox.Show("Die Archivierung des Dokumentes " + documentid + " wurde abgebrochen." + Environment.NewLine + "Fehler: " + response.StatusDescription);
Logging.Logging.Error(URL + ": " + response.StatusCode.ToString() + " / " + response.StatusDescription, "Clinet - DokList GetDocument", "");
}
}
} catch (Exception ex) {
MessageBox.Show("Die Archivierung des Dokumentes " + documentid + " konnte nicht durchgeführt werden." + Environment.NewLine + "Fehler: " + ex.Message);
}
}
refresh_dokumente();
}
private void ribbonButtonVersandstrasse_Click(object sender, EventArgs e)
{
Versandpakete versandpakete = new Versandpakete();
Versandpaket paket = new Versandpaket();
paket.Versandoption = "1";
paket.Mitteilung = "";
paket.GAS = "";
paket.GASAdresse = "";
paket.PaketNr = "1";
var records = sfDataGrid1.View.GetSelectedRecords();
if (records.Count < 1) { return; }
// string[] selectedDokument = new string[records.Count];
int i = 0;
paket.Dokument = new List<Versanddokument>();
foreach (var record in records)
{
var datarow = record as DataRowView;
paket.Dokument.Add(new Versanddokument(datarow["dokumentid"].ToString(), datarow["doktyp"].ToString(), datarow["partner-nr"].ToString()));
i++;
}
versandpakete.paket = new List<Versandpaket>();
versandpakete.paket.Add(paket);
OnDoc.Versandstrasse.Versandstrasse vs = new OnDoc.Versandstrasse.Versandstrasse(versandpakete);
vs.Show();
dokumentAnVersandstrasseToolStripMenuItem.Visible = true;
}
private void RibbonButtonFavoriten_Click(object sender, EventArgs e)
{
createnewdoc(0, 0, true);
}
private void ribbonButtonApproval_Click(object sender, EventArgs e)
{
Refresh_Bewilligungen();
if (this.lblToApprove.Text == "") { MessageBox.Show("Es stehen keine Dokumente zur Unterschriftenprüfung an.", "Unterschriftenprüfung", MessageBoxButtons.OK, MessageBoxIcon.Information); return; }
frmBewilligung bw = new frmBewilligung();
bw.Show();
}
private void ribbonButtonToApproval_Click(object sender, EventArgs e)
{
if (!row_selected()) return;
frmToApproval fa = new frmToApproval();
fa.dokumentid = selected_dokumentid;
fa.ShowDialog();
}
private void Refresh_Bewilligungen()
{
DB db = new DB(AppParams.connectionstring);
db.Get_Tabledata("Select count(*) from view_relaunch_approval where bewilligt=0 and abgelehnt = 0 and mitarbeiter_bewilligung=" + AppParams.CurrentMitarbieter.ToString(), false, true);
if (Convert.ToInt32(db.dsdaten.Tables[0].Rows[0][0]) == 0)
{
this.lblToApprove.Text = "";
}
else
{
this.lblToApprove.Text = db.dsdaten.Tables[0].Rows[0][0].ToString();
}
db = null;
}
private void timer1_Tick(object sender, EventArgs e)
{
Refresh_Bewilligungen();
}
private void ribbonButtonRefresh_Bewilligungen_Click(object sender, EventArgs e)
{
Refresh_Bewilligungen();
}
private void ribbon2_Click(object sender, EventArgs e)
{
pos_elements();
if (ribbon2.ActiveTab.Text != "Funktionen")
{
lblToApprove.Visible = false;
}
else
{
lblToApprove.Visible = true;
}
}
private void pos_elements()
{
System.Windows.Forms.Application.DoEvents();
int posx = ribbonButtonApproval.Bounds.X;
int width = RibbonPannelAproval.Bounds.Width;
if (RibbonPannelAproval.Visible == true && ribbonButtonApproval.Visible == true)
{
//lblToApprove.Visible = true;
lblToApprove.Left = posx + (width / 2);
}
else { lblToApprove.Visible = false; }
}
private void ribbonButton3_Click(object sender, EventArgs e)
{
BarcodeLib.Barcode bck = new BarcodeLib.Barcode();
bck.Gen_BCK(AppParams.connectionstring);
}
public void set_functions()
{
Security security = new Security();
security.set_security(this);
security = null;
//pos_elements();
}
private void ribbon2_DockChanged(object sender, EventArgs e)
{
}
private void DokList_DockChanged(object sender, EventArgs e)
{
}
private void wordInterOPEditToolStripMenuItem_Click(object sender, EventArgs e)
{
clsdok dok = GetDoc(false);
if (dok.dokument == "") return;
OpenDoc(dok, true, true);
}
private void ribbonGroupMitarbeiter_Click(object sender, EventArgs e)
{
InputDialog ma = new InputDialog(true, "Verantwortlicher Mitarbeiter wählen");
ma.ShowDialog();
if (ma.DialogResult == DialogResult.OK)
{
Filter_Loeschen();
this.RibbonFilterLabel.Text = ma.resulttext;
this.forMaNr = Convert.ToInt32(ma.result);
RibbonFilterLabel.Visible = true;
RibbonFilterDelete.Visible = true;
refresh_dokumente();
}
}
private void ribbonButton3_Click_1(object sender, EventArgs e)
{
Partnersuche ps = new Partnersuche();
ps.ShowDialog();
if (ps.DialogResult == DialogResult.OK)
{
Filter_Loeschen();
this.partnernr = ps.partnernr;
RibbonFilterLabel.Text = ps.partnernr + " " + ps.partnerkurzname;
RibbonFilterLabel.Visible = true;
RibbonFilterDelete.Visible = true;
if (ps.partnersaldiert) { RibbonPartnerSaldiert.Visible = true; } else { RibbonPartnerSaldiert.Visible = false; }
refresh_dokumente();
}
}
private void ribbonDokumntID_Click(object sender, EventArgs e)
{
InputDialog dokid = new InputDialog("Dokument-ID", "Gesuchte Dokument-ID", "");
dokid.ShowDialog();
if (dokid.DialogResult == DialogResult.OK)
{
Filter_Loeschen();
Search_Docid = dokid.result;
RibbonFilterLabel.Text = dokid.result;
RibbonFilterLabel.Visible = true;
RibbonFilterDelete.Visible = true;
refresh_dokumente();
}
}
private void RibbonFilterDelete_Click(object sender, EventArgs e)
{
Filter_Loeschen();
refresh_dokumente();
}
private void Filter_Loeschen()
{
this.partnernr = 0;
this.forMaNr = 0;
this.Search_Docid = "";
this.RibbonFilterLabel.Visible = false;
this.RibbonFilterLabel.Text = "";
this.RibbonPartnerSaldiert.Visible = false;
RibbonFilterDelete.Visible = false;
}
}
}