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.
300 lines
12 KiB
300 lines
12 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Configuration;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
using Database;
|
|
using Microsoft.Office.Interop.Excel;
|
|
using OnDoc.Klassen;
|
|
using Syncfusion.Windows.Forms.Tools;
|
|
using Syncfusion.WinForms.Controls;
|
|
|
|
namespace OnDoc.DocMgmt
|
|
{
|
|
public partial class frmToApproval : SfForm
|
|
{
|
|
public string dokumentid { get; set; } = "";
|
|
public string serienbriefnr { get; set; } = "";
|
|
|
|
private bool isserienbrief = false;
|
|
|
|
DB db = new DB(AppParams.connectionstring);
|
|
DB db1 = new DB(AppParams.connectionstring);
|
|
|
|
public frmToApproval()
|
|
{
|
|
InitializeComponent();
|
|
this.Style.TitleBar.BackColor = Theaming.Titelbar();
|
|
this.Style.TitleBar.ForeColor = Theaming.TitelFontColor();
|
|
this.Style.ShadowOpacity = Theaming.ShadowOpacity;
|
|
this.Style.InactiveShadowOpacity = Theaming.InactivShadowOpacity;
|
|
Closing += Form_Closing;
|
|
}
|
|
|
|
private void Form_Closing(object sender, CancelEventArgs e)
|
|
{
|
|
db = null;
|
|
db1 = null;
|
|
}
|
|
|
|
|
|
private void frmToApproval_Load(object sender, EventArgs e)
|
|
{
|
|
|
|
db.clear_parameter();
|
|
db.Get_Tabledata("SP_Dokumentbearbeitung_Mitarbeiter", true, false);
|
|
|
|
cbboxunterschriftlinks.DataSource = db.dsdaten.Tables[0];
|
|
cbboxunterschriftrechts.DataSource = db.dsdaten.Tables[0];
|
|
|
|
cbboxunterschriftlinks.DisplayMember = "name";
|
|
cbboxunterschriftlinks.ValueMember = "mitarbeiternr";
|
|
cbboxunterschriftrechts.DisplayMember = "name";
|
|
cbboxunterschriftrechts.ValueMember = "mitarbeiternr";
|
|
|
|
if (dokumentid == "" && serienbriefnr == "") { return; }
|
|
|
|
update_dokdetails();
|
|
}
|
|
public void update_dokdetails()
|
|
{
|
|
|
|
|
|
if (serienbriefnr != "") { isserienbrief = true; }
|
|
|
|
btntoapproval.Enabled = true;
|
|
|
|
if (!isserienbrief)
|
|
{
|
|
|
|
db1.Get_Tabledata("Select * from dokument where dokumentid='" + dokumentid + "'", false, true);
|
|
cbboxunterschriftlinks.SelectedValue = db1.dsdaten.Tables[0].Rows[0]["unterschriftlinks"].ToString();
|
|
cbboxunterschriftrechts.SelectedValue = db1.dsdaten.Tables[0].Rows[0]["unterschriftrechts"].ToString();
|
|
pxapproval1.Visible = false;
|
|
pxapproval2.Visible = false;
|
|
cbboxunterschriftlinks.Enabled = true;
|
|
cbboxunterschriftrechts.Enabled = true;
|
|
}
|
|
else
|
|
{
|
|
db1.Get_Tabledata("Select * from edex_sb_serienbrief where serienbriefnr=" + serienbriefnr, false, true);
|
|
cbboxunterschriftlinks.SelectedValue = db1.dsdaten.Tables[0].Rows[0]["unterschriftlinks"].ToString();
|
|
cbboxunterschriftrechts.SelectedValue = db1.dsdaten.Tables[0].Rows[0]["unterschriftrechts"].ToString();
|
|
pxapproval1.Visible = false;
|
|
pxapproval2.Visible = false;
|
|
cbboxunterschriftlinks.Enabled = true;
|
|
cbboxunterschriftrechts.Enabled = true;
|
|
}
|
|
|
|
if (db1.dsdaten.Tables[0].Rows[0]["mutierer"].ToString() == db1.dsdaten.Tables[0].Rows[0]["unterschriftlinks"].ToString())
|
|
{
|
|
cbboxunterschriftlinks.Enabled = false;
|
|
pxapproval1.Visible = true;
|
|
}
|
|
if (db1.dsdaten.Tables[0].Rows[0]["mutierer"].ToString() == db1.dsdaten.Tables[0].Rows[0]["unterschriftrechts"].ToString())
|
|
{
|
|
cbboxunterschriftrechts.Enabled = false;
|
|
pxapproval2.Visible = true;
|
|
}
|
|
if (db1.dsdaten.Tables[0].Rows[0]["toApprove"].ToString() == "True")
|
|
{
|
|
if (cbboxunterschriftlinks.SelectedValue.ToString() == db1.dsdaten.Tables[0].Rows[0]["unterschriftlinks"].ToString())
|
|
{
|
|
cbboxunterschriftlinks.Enabled = false;
|
|
//pxapproval2.Visible = true;
|
|
}
|
|
if (cbboxunterschriftrechts.SelectedValue.ToString() == db1.dsdaten.Tables[0].Rows[0]["unterschriftrechts"].ToString())
|
|
{
|
|
cbboxunterschriftrechts.Enabled = false;
|
|
//pxapproval2.Visible = true;
|
|
}
|
|
}
|
|
|
|
if (Convert.ToBoolean(db1.dsdaten.Tables[0].Rows[0]["approved"]))
|
|
{
|
|
cbboxunterschriftlinks.Enabled = false;
|
|
pxapproval1.Visible = true;
|
|
cbboxunterschriftrechts.Enabled = false;
|
|
pxapproval2.Visible = true;
|
|
btntoapproval.Enabled = false;
|
|
}
|
|
if (Convert.ToBoolean(db1.dsdaten.Tables[0].Rows[0]["approval1"]))
|
|
{
|
|
cbboxunterschriftlinks.Enabled = false;
|
|
pxapproval1.Visible = true;
|
|
}
|
|
if (Convert.ToBoolean(db1.dsdaten.Tables[0].Rows[0]["approval2"]))
|
|
{
|
|
cbboxunterschriftrechts.Enabled = false;
|
|
pxapproval2.Visible = true;
|
|
}
|
|
}
|
|
|
|
private void btntoapproval_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
insert_bewilligung();
|
|
this.DialogResult = DialogResult.OK;
|
|
this.Close();
|
|
|
|
}
|
|
|
|
|
|
public void insert_bewilligung()
|
|
{
|
|
if (!btntoapproval.Enabled) { return; };
|
|
DB dB = new DB(AppParams.connectionstring);
|
|
int mailid = 1;
|
|
string sql = "";
|
|
if (!isserienbrief)
|
|
{
|
|
sql = "Update dokument_Bewilligung set aktiv=0, mutiert_am=getdate(), mutierer = " + AppParams.CurrentMitarbeiter.ToString();
|
|
sql = sql + " where dokumentid='" + dokumentid + "' and abgelehnt=0 and bewilligt=0";
|
|
dB.Exec_SQL(sql);
|
|
dB.Get_Tabledata_for_Update("select top 1 * from dokument_bewilligung where id=-2", false, true);
|
|
mailid = 1;
|
|
}
|
|
else
|
|
{
|
|
sql = "Update serienbrief_Bewilligung set aktiv=0, mutiert_am=getdate(), mutierer = " + AppParams.CurrentMitarbeiter.ToString();
|
|
sql = sql + " where serienbriefnr='" + serienbriefnr + "' and abgelehnt=0 and bewilligt=0";
|
|
dB.Exec_SQL(sql);
|
|
dB.Get_Tabledata_for_Update("select top 1 * from serienbrief_bewilligung where id=-2", false, true);
|
|
mailid = 2;
|
|
}
|
|
//dB.Exec_SQL(sql);
|
|
//dB.Get_Tabledata_for_Update("select top 1 * from dokument_bewilligung where id=-2", false, true);
|
|
|
|
if (pxapproval1.Visible == false)
|
|
{
|
|
DataRow dr = dB.daten.Tables[0].NewRow();
|
|
if (!isserienbrief) { dr["dokumentid"] = this.dokumentid; } else { dr["serienbriefnr"] = this.serienbriefnr; }
|
|
dr["mitarbeiter_bewilligung"] = cbboxunterschriftlinks.SelectedValue.ToString();
|
|
if (Convert.ToInt32(cbboxunterschriftlinks.SelectedValue) == AppParams.CurrentMitarbeiter)
|
|
{
|
|
dr["bewilligt"] = true;
|
|
dr["bewilligt_am"] = DateTime.Now;
|
|
}
|
|
else
|
|
{
|
|
dr["bewilligt"] = false;
|
|
}
|
|
dr["abgelehnt"] = false;
|
|
dr["bewilligungstyp"] = 1;
|
|
dr["erstellt_am"] = DateTime.Now;
|
|
dr["mutiert_am"] = DateTime.Now;
|
|
dr["mutierer"] = AppParams.CurrentMitarbeiter;
|
|
dr["aktiv"] = true;
|
|
dr["notiz"] = txtnachricht.Text;
|
|
dB.daten.Tables[0].Rows.Add(dr);
|
|
dB.Update_Data();
|
|
string id = "";
|
|
if (!isserienbrief)
|
|
{
|
|
dB.Get_Tabledata("Select top 1 id from dokument_Bewilligung where dokumentid='" + dokumentid + "' order by id desc", false, true);
|
|
id = dB.dsdaten.Tables[0].Rows[0][0].ToString();
|
|
|
|
}
|
|
else
|
|
{
|
|
dB.Get_Tabledata("Select top 1 id from Serienbrief_Bewilligung where serienbriefnr='" + serienbriefnr + "' order by id desc", false, true);
|
|
id = dB.dsdaten.Tables[0].Rows[0][0].ToString();
|
|
|
|
}
|
|
clsMailer mailer = new clsMailer();
|
|
mailer.sendmail(mailid, cbboxunterschriftlinks.SelectedValue.ToString(), "", "", dokumentid, "", AppParams.CurrentMitarbeiter.ToString(), id);
|
|
mailer = null;
|
|
if (dokumentid != "")
|
|
{
|
|
Logging.DocLog.Info("Dokument zur Prüfung", "Dokument zur Prüfung", dokumentid, "", cbboxunterschriftlinks.Text.ToString());
|
|
}
|
|
else
|
|
{
|
|
Logging.DocLog.Info("Serienbrief zur Prüfung", "Serienbrief zur Prüfung", serienbriefnr, "", cbboxunterschriftlinks.Text.ToString());
|
|
}
|
|
}
|
|
|
|
|
|
if (pxapproval2.Visible == false)
|
|
{
|
|
DataRow dr = dB.daten.Tables[0].NewRow();
|
|
if (!isserienbrief) { dr["dokumentid"] = this.dokumentid; } else { dr["serienbriefnr"] = this.serienbriefnr; }
|
|
dr["mitarbeiter_bewilligung"] = cbboxunterschriftrechts.SelectedValue.ToString();
|
|
dr["bewilligt"] = false;
|
|
dr["abgelehnt"] = false;
|
|
dr["bewilligungstyp"] = 2;
|
|
dr["erstellt_am"] = DateTime.Now;
|
|
dr["mutiert_am"] = DateTime.Now;
|
|
dr["mutierer"] = AppParams.CurrentMitarbeiter;
|
|
dr["aktiv"] = true;
|
|
dr["notiz"] = txtnachricht.Text;
|
|
dB.daten.Tables[0].Rows.Add(dr);
|
|
dB.Update_Data();
|
|
string id = "";
|
|
if (!isserienbrief)
|
|
{
|
|
dB.Get_Tabledata("Select top 1 id from dokument_Bewilligung where dokumentid='" + dokumentid + "' order by id desc", false, true);
|
|
id = dB.dsdaten.Tables[0].Rows[0][0].ToString();
|
|
mailid = 1;
|
|
}
|
|
else
|
|
{
|
|
dB.Get_Tabledata("Select top 1 id from Serienbrief_Bewilligung where serienbriefnr='" + serienbriefnr + "' order by id desc", false, true);
|
|
id = dB.dsdaten.Tables[0].Rows[0][0].ToString();
|
|
mailid = 2;
|
|
}
|
|
|
|
clsMailer mailer = new clsMailer();
|
|
|
|
mailer.sendmail(mailid, cbboxunterschriftrechts.SelectedValue.ToString(), "", "", dokumentid, "", AppParams.CurrentMitarbeiter.ToString(), id);
|
|
mailer = null;
|
|
|
|
if (!isserienbrief)
|
|
{
|
|
Logging.DocLog.Info("Dokument zur Prüfung", "Dokument zur Prüfung", dokumentid, "", cbboxunterschriftrechts.Text.ToString());
|
|
}
|
|
else
|
|
{
|
|
Logging.DocLog.Info("Serienbrief zur Prüfung", "Serienbrief zur Prüfung", dokumentid, "", cbboxunterschriftrechts.Text.ToString());
|
|
|
|
}
|
|
|
|
if (pxapproval1.Visible && pxapproval2.Visible)
|
|
{
|
|
if (!isserienbrief)
|
|
{
|
|
MessageBox.Show("Die Unterschriftenprüfung für dieses Dokument ist bereits erfolgt", "Unterschriftenprüfung", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show("Die Unterschriftenprüfung für diesen Serienbrief ist bereits erfolgt", "Unterschriftenprüfung", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
|
|
|
}
|
|
this.Close();
|
|
}
|
|
dB = null;
|
|
}
|
|
//if (txtnachricht.Text.Trim() != "")
|
|
//{
|
|
// dB.insert_note(AppParams.CurrentMitarbeiter, "Hinweis zur Unterschriftenprüfung", txtnachricht.Text, dokumentid);
|
|
//}
|
|
|
|
|
|
}
|
|
public void close_window()
|
|
{
|
|
this.Close();
|
|
}
|
|
|
|
private void btncancel_Click(object sender, EventArgs e)
|
|
{
|
|
this.Close();
|
|
}
|
|
}
|
|
}
|