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
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;
|
|
|
|
}
|
|
}
|
|
|
|
}
|