update 20251210
This commit is contained in:
@@ -1,11 +1,14 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Net.Mail;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Database;
|
||||
using Model;
|
||||
using Newtonsoft.Json;
|
||||
using static System.Net.WebRequestMethods;
|
||||
@@ -14,158 +17,409 @@ namespace zz_api_doccreate_demo
|
||||
{
|
||||
internal class Program
|
||||
{
|
||||
static string connectionstring = @"data source=shu01\shu00;initial catalog=edoka_dms;packet size=4096;user id=sa;password=*shu29";
|
||||
static string unterschriftenpath = @"E:\Software-Projekte\OnDoc\Unterschriften\";
|
||||
static void Main(string[] args)
|
||||
{
|
||||
//createpac();
|
||||
dokumentcreate();
|
||||
}
|
||||
bool hasattachment = false;
|
||||
|
||||
private static void createpac()
|
||||
{
|
||||
|
||||
string result = System.IO.File.ReadAllText(@"E:\Software-Projekte\OnDoc\APIJson\PAKET.json");
|
||||
DokumentCreate paket = new DokumentCreate();
|
||||
paket.Dokumente = new List<APIDokument>();
|
||||
paket.Versandstrasse = "No";
|
||||
paket.Versand_Direkt = "No";
|
||||
paket.Versand_Option = "";
|
||||
paket.GAS_Adresse = "";
|
||||
paket.Result_OnDoc = "Yes";
|
||||
paket.Result_Sender = "No";
|
||||
paket.Result_FileType = "WORD";
|
||||
paket.ConfirmationMail = "No";
|
||||
paket.ConfirmationMailAddress = "";
|
||||
paket = JsonConvert.DeserializeObject<DokumentCreate>(result);
|
||||
|
||||
add_dokument(ref paket);
|
||||
|
||||
add_dokument(ref paket);
|
||||
string jsonstring = Newtonsoft.Json.JsonConvert.SerializeObject(paket);
|
||||
string debugfilename = @"x:\servicepaiket.json";
|
||||
System.IO.File.WriteAllText(debugfilename, jsonstring);
|
||||
}
|
||||
|
||||
private static void add_dokument(ref DokumentCreate paket)
|
||||
{
|
||||
APIDokument apidoc = new APIDokument();
|
||||
apidoc.VorlagenTypID = "120";
|
||||
apidoc.Partnernr = "1000208";
|
||||
apidoc.TGNrErsteller = "stefan hutter lokal";
|
||||
apidoc.TGNrVerantwortlich = "stefan hutter lokal";
|
||||
apidoc.TGNrUnterschriftLinks = "stefan hutter lokal";
|
||||
apidoc.TGNrUnterschriftRechts = "";
|
||||
apidoc.OhneUnterschrift = "Yes";
|
||||
apidoc.FaksimileUnterschrift = "No";
|
||||
apidoc.PrintLogo = "No";
|
||||
apidoc.Dokumentdatum = "14.07.2025";
|
||||
apidoc.Bezeichnung = "Test API-Dokument";
|
||||
apidoc.APIValues = new List<attribute>();
|
||||
attribute attr = new attribute();
|
||||
attr.Tag = "API Betreff";
|
||||
attr.Value = "Musterbrief";
|
||||
apidoc.APIValues.Add(attr);
|
||||
attribute attr1 = new attribute();
|
||||
attr.Tag = "API Anrede";
|
||||
attr.Value = "Guten Tag";
|
||||
apidoc.APIValues.Add(attr1);
|
||||
paket.Dokumente.Add(apidoc);
|
||||
|
||||
}
|
||||
|
||||
private static void dokumentcreate()
|
||||
{
|
||||
DokumentCreate doccreate = new DokumentCreate();
|
||||
string debugfilename = @"x:\servicepaiket.json";
|
||||
string jsonstring = Newtonsoft.Json.JsonConvert.SerializeObject(doccreate);
|
||||
jsonstring = System.IO.File.ReadAllText(debugfilename);
|
||||
doccreate = Newtonsoft.Json.JsonConvert.DeserializeObject<DokumentCreate>(jsonstring);
|
||||
send(ref doccreate);
|
||||
}
|
||||
|
||||
private static void createdoc() {
|
||||
//DokumentCreate doccreate = new DokumentCreate();
|
||||
//doccreate.APIValues = new List<attribute>();
|
||||
|
||||
//string debugfilename = @"x:\servicedoc.json";
|
||||
//string jsonstring = Newtonsoft.Json.JsonConvert.SerializeObject(doccreate);
|
||||
//jsonstring = System.IO.File.ReadAllText(debugfilename);
|
||||
//doccreate = Newtonsoft.Json.JsonConvert.DeserializeObject<DokumentCreate>(jsonstring);
|
||||
//doccreate.Partnernr = "1000208";
|
||||
//doccreate.Result_Versandstrasse = "No";
|
||||
//doccreate.Result_OnDoc = "Yes";
|
||||
//doccreate.Result_Sender = "No";
|
||||
//doccreate.Result_FileType = "WORD";
|
||||
//doccreate.ConfirmationMail = "No";
|
||||
//doccreate.ConfirmationMailAddress = "";
|
||||
//doccreate.VorlagenTypID = "120";
|
||||
//doccreate.TGNrErsteller = "stefan hutter lokal";
|
||||
//doccreate.TGNrVerantwortlich = "stefan hutter lokal";
|
||||
//doccreate.TGNrUnterschriftLinks = "stefan hutter lokal";
|
||||
//doccreate.TGNrUnterschriftRechts = "";
|
||||
//doccreate.OhneUnterschrift = "Yes";
|
||||
//doccreate.FaksimileUnterschrift = "No";
|
||||
//doccreate.PrintLogo = "No";
|
||||
//doccreate.Dokumentdatum = "14.07.2025";
|
||||
//doccreate.Bezeichnung = "Test API-Dokument";
|
||||
|
||||
//attribute at = new attribute();
|
||||
//at.Tag = "APIBetreff";
|
||||
//at.Value = "Muster-Brief";
|
||||
//doccreate.APIValues.Add(at);
|
||||
//attribute at1 = new attribute();
|
||||
//at1.Tag = "APIAnrede";
|
||||
//at1.Value = "Guten Tag";
|
||||
//doccreate.APIValues.Add(at1);
|
||||
//attribute at2 = new attribute();
|
||||
//at2.Tag = "APIInhalt";
|
||||
//at2.Value = "Das ist der Dokument-Inhalt";
|
||||
//doccreate.APIValues.Add(at2);
|
||||
//jsonstring = Newtonsoft.Json.JsonConvert.SerializeObject(doccreate);
|
||||
//string debugfilename = @"x:\servicedoc.json";
|
||||
//System.IO.File.WriteAllText(debugfilename, jsonstring);
|
||||
//send(ref doccreate);
|
||||
|
||||
|
||||
}
|
||||
|
||||
static string send(ref DokumentCreate docCreate)
|
||||
{
|
||||
string URL = "https://localhost:44334/API/CreateDoks";
|
||||
string response;
|
||||
string jsonstring = JsonConvert.SerializeObject(docCreate);
|
||||
|
||||
WebRequest request;
|
||||
|
||||
var data = Encoding.UTF8.GetBytes(jsonstring);
|
||||
request = WebRequest.Create(URL);
|
||||
request.ContentLength = data.Length;
|
||||
request.ContentType = "application/json";
|
||||
request.Method = "POST";
|
||||
request.Headers["Authorization"] = "Bearer " + "pZkuG6l6ORCEckqQimPK58PO1A9EnkMtL5oCgRX9WiWnD4xeH7ikGzhWnTBy/vk8J4Iiz8gCSx9uFHA4+DvITG0roO97sk82d/0BCjVlwLWINpXlJfGYEF3X96AdoCQvb3ruwv/tVqEHsSU5aNfyxBAe+EhLTHQ8t7ysgJZWh98=";
|
||||
|
||||
|
||||
try
|
||||
string CheckResult = "";
|
||||
CheckResult = CreatePaket_Verify(ref paket);
|
||||
if (CheckResult != "")
|
||||
{
|
||||
|
||||
using (Stream requestStream = request.GetRequestStream())
|
||||
{
|
||||
requestStream.Write(data, 0, data.Length);
|
||||
requestStream.Close();
|
||||
Console.WriteLine(CheckResult);
|
||||
}
|
||||
|
||||
using (Stream responseStream = request.GetResponse().GetResponseStream())
|
||||
{
|
||||
using (var reader = new StreamReader(responseStream))
|
||||
{
|
||||
response = reader.ReadToEnd();
|
||||
}
|
||||
}
|
||||
foreach (APIDokument dokument in paket.Dokumente)
|
||||
{
|
||||
if (dokument.PDFDoc != "" && dokument.PDFDoc != null)
|
||||
{
|
||||
string gid = "ATT" + RandomString(19);
|
||||
dokument.DokumentID = gid;
|
||||
hasattachment = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
dokument.DokumentID = create_paketdoc(dokument, paket, "");
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
||||
}
|
||||
|
||||
static string CreatePaket_Verify(ref DokumentCreate paket)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
||||
int i = 0;
|
||||
foreach (APIDokument dokument in paket.Dokumente)
|
||||
{
|
||||
i = i + 1;
|
||||
if (dokument.PDFDoc != null && dokument.PDFDoc.Length > 0)
|
||||
{
|
||||
if (i == 1) { return "Ein Anhang (PDF-Dokument) kann nicht als erstes Dokument bereit gestellt werden."; }
|
||||
if (!(ParamCheck("partnernr", dokument.Partnernr.ToString()))) { return "Partnernr " + dokument.Partnernr + " ist ungültig"; }
|
||||
if (dokument.VorlagenTypID != "0") { return "Vorlagentyp muss bei PDF-Dokumenten '0' sein"; }
|
||||
break;
|
||||
}
|
||||
if (!(ParamCheck("partnernr", dokument.Partnernr.ToString()))) { return "Partnernr " + dokument.Partnernr + " ist ungültig"; }
|
||||
if (dokument.VorlagenTypID == "" && dokument.PDFDoc == "") { return "Vorlagentyp emptry und PDFDoc empty"; }
|
||||
if (!(ParamCheck("dokumenttyp", dokument.VorlagenTypID))) { return "Vorlagentyp " + dokument.VorlagenTypID + " ist ungültig"; }
|
||||
if (!(ParamCheck("tgnr", dokument.TGNrErsteller))) { return "TGNr-Ersteller " + dokument.TGNrErsteller + " ist ungültig"; }
|
||||
if (!(ParamCheck("tgnr", dokument.TGNrVerantwortlich))) { return "TGNr-Verantwortlich " + dokument.TGNrVerantwortlich + " ist ungültig"; }
|
||||
if (!(ParamCheck("tgnr", dokument.TGNrUnterschriftLinks))) { return "TGNr-Unterschriftlinks " + dokument.TGNrUnterschriftLinks + " ist ungültig"; }
|
||||
if (!(ParamCheck("tgnr", dokument.TGNrUnterschriftRechts))) { return "TGNr-Unterschriftrechts " + dokument.TGNrUnterschriftRechts + " ist ungültig"; }
|
||||
if (!(ParamCheck("yesno", dokument.FaksimileUnterschrift))) { return "Parameter Faxsimile " + dokument.FaksimileUnterschrift + " ist ungültig"; }
|
||||
if (!(ParamCheck("yesno", dokument.OhneUnterschrift))) { return "Parameter Form ohne Unterschrift " + dokument.OhneUnterschrift + " ist ungültig"; }
|
||||
if (!(ParamCheck("yesno", dokument.PrintLogo))) { return "Parameter PrintLogo " + dokument.PrintLogo + " ist ungültig"; }
|
||||
if (!(ParamCheck("yesno", dokument.UnterschriftLinksGeprueft))) { return "Parameter UnterschriftLinksGeprueft" + dokument.UnterschriftLinksGeprueft + " ist ungültig"; }
|
||||
if (!(ParamCheck("yesno", dokument.UnterschriftRechtsGeprueft))) { return "Parameter UnterschriftRechtsGeprueft" + dokument.UnterschriftRechtsGeprueft + " ist ungültig"; }
|
||||
if (dokument.TGNrUnterschriftLinks.ToString() == "") { dokument.TGNrUnterschriftLinks = "-1"; }
|
||||
if (dokument.TGNrUnterschriftRechts.ToString() == "") { dokument.TGNrUnterschriftRechts = "-1"; }
|
||||
if (dokument.FaksimileUnterschrift.ToUpper() == "YES")
|
||||
{
|
||||
if (dokument.TGNrUnterschriftLinks.ToString() == "-1") { return "Faksimile Unterschrift benötigt mit den Parameter TGUnterschriftLinks"; }
|
||||
if (dokument.TGNrUnterschriftLinks.ToString() != "")
|
||||
{
|
||||
//string path = System.Configuration.ConfigurationManager.AppSettings["UnterschriftPath"].ToString() + dokument.TGNrUnterschriftLinks.ToString() + ".jpg";
|
||||
string path = unterschriftenpath + dokument.TGNrUnterschriftLinks.ToString() + ".jpg";
|
||||
if (!System.IO.File.Exists(path)) { return "Image Unterschrift links " + dokument.TGNrUnterschriftLinks + " ist nicht vorhanden"; }
|
||||
}
|
||||
if (dokument.TGNrUnterschriftRechts.ToString() != "-1")
|
||||
{
|
||||
//string path = System.Configuration.ConfigurationManager.AppSettings["UnterschriftPath"].ToString() + dokument.TGNrUnterschriftLinks.ToString() + ".jpg";
|
||||
string path = unterschriftenpath + dokument.TGNrUnterschriftLinks.ToString() + ".jpg";
|
||||
if (!System.IO.File.Exists(path)) { return "Image Unterschrift rechts " + dokument.TGNrUnterschriftRechts + " ist nicht vorhanden"; }
|
||||
}
|
||||
}
|
||||
if (paket.Versandstrasse == "Yes")
|
||||
{
|
||||
if (dokument.TGNrUnterschriftLinks != "" && dokument.UnterschriftLinksGeprueft != "Yes")
|
||||
{
|
||||
return "Versandstrasse mit ungeprüfter, linker Unterschrift ist nicht möglich";
|
||||
}
|
||||
if (dokument.TGNrUnterschriftRechts != "" && dokument.UnterschriftRechtsGeprueft != "Yes")
|
||||
{
|
||||
return "Versandstrasse mit ungeprüfter, rechter Unterschrift ist nicht möglich";
|
||||
}
|
||||
if (ParamCheck("doktypversandstrasse", dokument.VorlagenTypID) == false) { return "Vorlagentyp " + dokument.VorlagenTypID + " ist nicht für die Versandstrasse konfiguriert"; }
|
||||
if (i == 1)
|
||||
{
|
||||
if (ParamCheck("firstdoc", dokument.VorlagenTypID) == false) { return "Vorlagentyp " + dokument.VorlagenTypID + " kann nicht als erstes Dokument im Paket sein"; }
|
||||
}
|
||||
//if (dokument.TGNrUnterschriftLinks.ToLower() != "-1" && dokument.TGNrUnterschriftRechts.ToString() != "-1") { return "Versandstrasse mit zwei Unterschriften kann nicht automatisch angesteuert werden"; }
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (!(ParamCheck("yesno", paket.Versandstrasse))) { return "Parameter Versandstrasse " + paket.Versandstrasse + " ist ungültig"; }
|
||||
if (!(ParamCheck("yesno", paket.Versand_Direkt))) { return "Parameter Versand Direkt " + paket.Versand_Direkt + " ist ungültig"; }
|
||||
if (!(ParamCheck("yesno", paket.Result_OnDoc))) { return "Parameter Result_OnDoc " + paket.Result_OnDoc + " ist ungültig"; }
|
||||
if (!(ParamCheck("yesno", paket.Result_Sender))) { return "Parameter Result_Sender " + paket.Result_Sender + " ist ungültig"; }
|
||||
if (!(ParamCheck("filetype", paket.Result_FileType))) { return "Parameter Result_Filetype " + paket.Result_FileType + " ist ungültig"; }
|
||||
if (!(ParamCheck("yesno", paket.ConfirmationMail))) { return "Parameter ConfirmationMail " + paket.ConfirmationMail + " ist ungültig"; }
|
||||
if (!(ParamCheck("yesno", paket.ConfirmationMail))) { return "Parameter ConfirmationMail " + paket.ConfirmationMail + " ist ungültig"; }
|
||||
if (!(ParamCheck("versandoption", paket.Versand_Option))) { return "Versandoption " + paket.Versand_Option + " ist ungültig"; }
|
||||
if (paket.ConfirmationMail.ToUpper() == "YES" && paket.ConfirmationMailAddress.ToString() != "") { return "E-Mailadresse für Confirmation fehlt"; }
|
||||
|
||||
if (paket.Versandstrasse == "Yes")
|
||||
{
|
||||
if (paket.Versand_Option == "") { return "Versandoption fehlt (A_Post, B1_Post, B2_Post"; }
|
||||
}
|
||||
return "";
|
||||
}
|
||||
catch (Exception ex) { return ex.Message; }
|
||||
|
||||
}
|
||||
static bool ParamCheck(string ParamType, string ParamValue)
|
||||
{
|
||||
DB db = new DB(connectionstring);
|
||||
try
|
||||
{
|
||||
|
||||
switch (ParamType)
|
||||
{
|
||||
case "partnernr":
|
||||
db.Get_Tabledata("Select count(*) from partner where nrpar00=" + ParamValue, false, true);
|
||||
if (db.dsdaten.Tables[0].Rows[0][0].ToString() == "0") { return false; }
|
||||
break;
|
||||
case "dokumenttyp":
|
||||
db.Get_Tabledata("Select count(*) from dokumenttyp where dokumenttypnr=" + ParamValue, false, true);
|
||||
if (db.dsdaten.Tables[0].Rows[0][0].ToString() == "0") { return false; }
|
||||
break;
|
||||
case "partnerdokumenttyp":
|
||||
//Prüfung Person/Doktyp BP/Doktyp
|
||||
break;
|
||||
case "tgcreator":
|
||||
case "tgresp":
|
||||
case "tgul":
|
||||
case "tgur":
|
||||
case "tgnr":
|
||||
if (ParamType == "tgcreator" && ParamValue == "") { return false; } else { if (ParamValue == "") { return true; } };
|
||||
db.Get_Tabledata("Select count(*) from mitarbeiter where tgnummer='" + ParamValue + "'", false, true);
|
||||
if (db.dsdaten.Tables[0].Rows[0][0].ToString() == "0") { return false; }
|
||||
break;
|
||||
case "yesno":
|
||||
if (ParamValue != "Yes" && ParamValue != "No" && ParamValue != "") { return false; };
|
||||
break;
|
||||
case "filetype":
|
||||
if (ParamValue != "WORD" && ParamValue != "PDF") { return false; }
|
||||
break;
|
||||
case "versandoption":
|
||||
if (ParamValue != "A_POST" && ParamValue != "B1_POST" && ParamValue != "B2_POST" && ParamValue != "") { return false; }
|
||||
break;
|
||||
case "doktypversandstrasse":
|
||||
db.Get_Tabledata("Select versandstrasse_moeglich, versandstrasse_firstdoc from dokumenttyp where dokumenttypnr=" + ParamValue, false, true);
|
||||
if (Convert.ToInt32(db.dsdaten.Tables[0].Rows[0][0]) == 0) { return false; }
|
||||
break;
|
||||
case "firstdoc":
|
||||
db.Get_Tabledata("Select versandstrasse_moeglich, versandstrasse_firstdoc from dokumenttyp where dokumenttypnr=" + ParamValue, false, true);
|
||||
if (Convert.ToInt32(db.dsdaten.Tables[0].Rows[0][1]) == 0) { return false; }
|
||||
break;
|
||||
default:
|
||||
return false;
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return false;
|
||||
}
|
||||
finally
|
||||
{
|
||||
db = null;
|
||||
}
|
||||
}
|
||||
|
||||
static string create_paketdoc(APIDokument dokument, DokumentCreate paket, string key)
|
||||
{
|
||||
//string OwnHost = System.Configuration.ConfigurationManager.AppSettings["OwnHost"].ToString();
|
||||
string dokumentid = "";
|
||||
clsDocData dokdata = new clsDocData();
|
||||
Database.DB db = new DB(connectionstring);
|
||||
|
||||
db.Get_Tabledata("Select * from dokumenttyp where dokumenttypnr=" + dokument.VorlagenTypID, false, true);
|
||||
System.Data.DataRow dr = db.dsdaten.Tables[0].Rows[0];
|
||||
dokdata.Barcode = Convert.ToBoolean(dr["Vertrag"]) == true;
|
||||
db.Get_Tabledata("Select beschreibung from physischesarchiv where physischesarchivnr = " + dr["physisches_archiv"].ToString(), false, true);
|
||||
dokdata.barcode_zusatz = db.dsdaten.Tables[0].Rows[0][0].ToString();
|
||||
if (dokdata.barcode_zusatz != "") { dokdata.barcode_zusatz = " " + dokdata.barcode_zusatz; }
|
||||
|
||||
db.Get_Tabledata("Select office_vorlagenr,kopfzeile_generieren, bcpt,bcpl, bcw, bch, bchorizontal, barcodetype, datamatrixcontent from office_vorlage where office_vorlagenr=" + dr["office_vorlagenr"].ToString(), false, true);
|
||||
dokdata.VorlageNr = Convert.ToInt32(dr["office_vorlagenr"]).ToString(); ;
|
||||
try
|
||||
{
|
||||
dokdata.Kopfzeile_generieren = false;
|
||||
if (Convert.ToBoolean(db.dsdaten.Tables[0].Rows[0][1]) == true) { dokdata.Kopfzeile_generieren = true; }
|
||||
}
|
||||
catch { }
|
||||
|
||||
if (dokdata.Barcode)
|
||||
{
|
||||
dokdata.barcode_left = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["bcpl"]);
|
||||
dokdata.barcode_top = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["bcpt"]);
|
||||
dokdata.barcode_width = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["bcw"]);
|
||||
dokdata.barcode_height = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["bch"]);
|
||||
dokdata.barcode_horizontal = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["bchorizontal"]);
|
||||
dokdata.barcode_type = db.dsdaten.Tables[0].Rows[0]["BarcodeType"].ToString();
|
||||
dokdata.barcode_content = db.dsdaten.Tables[0].Rows[0]["DatamatrixContent"].ToString();
|
||||
string sql = "";
|
||||
sql = "select bcpt, bcpl, bcw, bch, bchorizontal from OnDocBarcodeMpping ";
|
||||
sql = sql + "where orig_bcpt = " + dokdata.barcode_top.ToString() + " and orig_bcpl=" + dokdata.barcode_left.ToString() + " ";
|
||||
sql = sql + "and orig_bcw=" + dokdata.barcode_width.ToString() + " and orig_bch=" + dokdata.barcode_height.ToString();
|
||||
db.Get_Tabledata(sql, false, true);
|
||||
if (db.dsdaten.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
dokdata.barcode_left = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["bcpl"]);
|
||||
dokdata.barcode_top = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["bcpt"]);
|
||||
dokdata.barcode_width = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["bcw"]);
|
||||
dokdata.barcode_height = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["bch"]);
|
||||
}
|
||||
if (dokdata.barcode_type == "1")
|
||||
{
|
||||
DB dB = new DB(connectionstring);
|
||||
dB.clear_parameter();
|
||||
dB.add_parameter("@dokumentid", dokumentid);
|
||||
dB.add_parameter("@DokumentidBR", "");
|
||||
dB.add_parameter("@BARCODEFONTNAME", "");
|
||||
dB.add_parameter("@BARCODEFONTSIZE", "");
|
||||
dB.add_parameter("@BarcodeKantenlaenge", "");
|
||||
dB.Get_Tabledata("sp_get_OnDoc_barcodetype_and_value", true, false);
|
||||
dokdata.barcode_content = dB.dsdaten.Tables[0].Rows[0][1].ToString();
|
||||
dokdata.barcode_formatn = dB.dsdaten.Tables[0].Rows[0][3].ToString();
|
||||
dokdata.barcode_text = dB.dsdaten.Tables[0].Rows[0][4].ToString();
|
||||
dokdata.barcode_kantenlaenge = dB.dsdaten.Tables[0].Rows[0][5].ToString();
|
||||
dokdata.Zusatz_Font = dB.dsdaten.Tables[0].Rows[0][6].ToString();
|
||||
dokdata.Zusatz_FontSize = Convert.ToInt32(dB.dsdaten.Tables[0].Rows[0][7]);
|
||||
dokdata.barcode_width = Convert.ToInt32(dB.dsdaten.Tables[0].Rows[0][8]);
|
||||
dokdata.barcode_height = Convert.ToInt32(dB.dsdaten.Tables[0].Rows[0][9]);
|
||||
|
||||
//dokdata.barcode_type= dB.dsdaten.Tables[0].Rows[0][3].ToString();
|
||||
|
||||
sql = "select bcpt, bcpl, bcw, bch, bchorizontal from OnDocBarcodeMpping ";
|
||||
sql = sql + "where orig_bcpt = " + dokdata.barcode_top.ToString() + " and orig_bcpl=" + dokdata.barcode_left.ToString() + " ";
|
||||
sql = sql + "and orig_bcw=" + dokdata.barcode_width.ToString() + " and orig_bch=" + dokdata.barcode_height.ToString();
|
||||
dB.Get_Tabledata(sql, false, true);
|
||||
if (dB.dsdaten.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
//Logging.Logging.Debug("Barcode-Übersteuerung" + dokdata.DokumenttypNr.ToString(), "Dokumenterstellung", "");
|
||||
dokdata.barcode_left = Convert.ToInt32(dB.dsdaten.Tables[0].Rows[0]["bcpl"]);
|
||||
dokdata.barcode_top = Convert.ToInt32(dB.dsdaten.Tables[0].Rows[0]["bcpt"]);
|
||||
dokdata.barcode_width = Convert.ToInt32(dB.dsdaten.Tables[0].Rows[0]["bcw"]);
|
||||
dokdata.barcode_height = Convert.ToInt32(dB.dsdaten.Tables[0].Rows[0]["bch"]);
|
||||
}
|
||||
}
|
||||
db.Get_Tabledata("Select * from ondoc_appparams", false, true);
|
||||
dokdata.barcode_font = db.dsdaten.Tables[0].Rows[0]["barcodefont"].ToString();
|
||||
dokdata.barcode_fontsize = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["barcodefontsize"].ToString());
|
||||
dokdata.Zusatz_Font = db.dsdaten.Tables[0].Rows[0]["Zusatzfont"].ToString();
|
||||
dokdata.Zusatz_FontSize = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["ZusatzfontSize"].ToString());
|
||||
dokdata.barcode_textposition = db.dsdaten.Tables[0].Rows[0]["barcodetextposition"].ToString(); ;
|
||||
}
|
||||
Model.clsdocgendata docgendata = new Model.clsdocgendata();
|
||||
DataTable dokwertlist = new DataTable();
|
||||
dokwertlist = db.Get_DokumentWertList("", Convert.ToInt32(dokument.VorlagenTypID), 1);
|
||||
|
||||
docgendata.dokumentwerte = dokwertlist;
|
||||
docgendata.partnernr = dokument.Partnernr;
|
||||
docgendata.inhaberadresse = "";
|
||||
docgendata.zustelladresse = "";
|
||||
docgendata.dokumenttypnr = dokument.VorlagenTypID;
|
||||
docgendata.unterschriftLinks = db.Get_Mitarbeiternr(dokument.TGNrUnterschriftLinks).ToString();
|
||||
docgendata.unterschriftRehts = db.Get_Mitarbeiternr(dokument.TGNrUnterschriftRechts).ToString();
|
||||
docgendata.verantwortlich = db.Get_Mitarbeiternr(dokument.TGNrVerantwortlich).ToString();
|
||||
docgendata.ersteller = db.Get_Mitarbeiternr(dokument.TGNrErsteller).ToString();
|
||||
docgendata.team = db.Get_Teamnr(docgendata.ersteller).ToString();
|
||||
docgendata.digitaleunterschrift = false;
|
||||
docgendata.frormularOhneUnterschrift = dokument.OhneUnterschrift == "Yes";
|
||||
docgendata.zustaendigkube = db.Get_Mitarbeiternr(dokument.TGNrVerantwortlich).ToString();
|
||||
docgendata.status = "-1";
|
||||
docgendata.dokumentdatum = DateTime.Now.ToString("dd.MM.yyyy");
|
||||
docgendata.dokumentdatum = dokument.Dokumentdatum;
|
||||
docgendata.frormularOhneUnterschrift = dokument.OhneUnterschrift == "Yes";
|
||||
docgendata.bezeichnung = dokument.Bezeichnung;
|
||||
if (paket.Result_FileType == "WORD") { docgendata.erstellungsart = Erstellungsart.DokumentBearbeiten; } else { docgendata.erstellungsart = Erstellungsart.DokumentAlsPDF; }
|
||||
if (docgendata.verantwortlich == "0") { docgendata.verantwortlich = docgendata.ersteller; }
|
||||
|
||||
|
||||
dokdata.PartnerNr = docgendata.partnernr;
|
||||
dokdata.UseEDOKA_Values = "True";
|
||||
dokdata.DokumenttypNr = docgendata.dokumenttypnr;
|
||||
dokdata.Unterschrift_Links = docgendata.unterschriftLinks;
|
||||
if (dokdata.Unterschrift_Links == "0") { dokdata.Unterschrift_Links = "-1"; }
|
||||
dokdata.Unterschrift_Rechts = docgendata.unterschriftRehts;
|
||||
if (dokdata.Unterschrift_Rechts == "0") { dokdata.Unterschrift_Rechts = "-1"; }
|
||||
dokdata.Verantwortlich = docgendata.verantwortlich;
|
||||
dokdata.Team = docgendata.team;
|
||||
dokdata.Zustaendig = docgendata.zustaendigkube;
|
||||
dokdata.Zustaendig = docgendata.zustaendigkube;
|
||||
dokdata.Status = docgendata.status;
|
||||
dokdata.Ersteller = docgendata.ersteller;
|
||||
dokdata.DokumentDatum = docgendata.dokumentdatum;
|
||||
dokdata.Termin = "01.01.1900";
|
||||
dokdata.Bezeichnung = docgendata.bezeichnung;
|
||||
dokdata.dokumentwerte = docgendata.dokumentwerte;
|
||||
|
||||
//Unterschriftenprüfung
|
||||
dokdata.Form_ohne_Unterschrift = docgendata.frormularOhneUnterschrift.ToString();
|
||||
dokdata.approval1 = 0;
|
||||
dokdata.approval2 = 0;
|
||||
dokdata.approved = 0;
|
||||
if (dokdata.Form_ohne_Unterschrift == "True")
|
||||
{
|
||||
dokdata.Unterschrift_Links = "-1";
|
||||
dokdata.Unterschrift_Rechts = "-1";
|
||||
}
|
||||
if (dokument.FaksimileUnterschrift == "Yes")
|
||||
{
|
||||
dokdata.As_Faksimile = "True"; dokdata.sign = true; docgendata.digitaleunterschrift = true;
|
||||
if (dokdata.Unterschrift_Links != "-1") { dokdata.approval1 = 1; }
|
||||
if (dokdata.Unterschrift_Rechts != "-1") { dokdata.approval2 = 1; }
|
||||
dokdata.approved = 1;
|
||||
docgendata.erstellungsart = Erstellungsart.DokumentBearbeiten;
|
||||
//if (dokdata.Unterschrift_Links != "-1" && dokdata.Unterschrift_Rechts != "-1")
|
||||
//{
|
||||
// if (dokdata.Ersteller == dokdata.Unterschrift_Links)
|
||||
// {
|
||||
// dokdata.approved = 1;
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// dokdata.sign = false;
|
||||
// dokdata.toapprove = 0;
|
||||
// dokdata.approved = 1;
|
||||
// dokdata.approval1 = 1;
|
||||
// dokdata.approval2 = 1;
|
||||
// docgendata.erstellungsart = Erstellungsart.DokumentBearbeiten;
|
||||
// }
|
||||
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// docgendata.erstellungsart = Erstellungsart.DokumentBearbeiten;
|
||||
// dokdata.toapprove = 1;
|
||||
// dokdata.sign = true;
|
||||
//}
|
||||
|
||||
}
|
||||
|
||||
dokdata.APIValues = dokument.APIValues;
|
||||
dokdata.TextToReplace = dokument.TextToReplace;
|
||||
|
||||
if (dokument.PrintLogo == "Yes") { dokdata.PrintLogo = true; } else { dokdata.PrintLogo = false; }
|
||||
if (docgendata.erstellungsart == Erstellungsart.DokumentAlsPDF) { dokdata.Result_as_PDF = "True"; } else { dokdata.Result_as_PDF = "False"; }
|
||||
if (docgendata.digitaleunterschrift == true) { dokdata.As_Faksimile = "True"; } else { dokdata.As_Faksimile = "False"; }
|
||||
|
||||
dokumentid = db.Create_EDOKA_Doc(dokdata, false, "");
|
||||
dokdata.Dokumentid = dokumentid;
|
||||
|
||||
//DOCGEN.Generator.DocGenerator_from_EDOKA Generator = new DOCGEN.Generator.DocGenerator_from_EDOKA(this.connectionstring, OwnHost, key.ToString());
|
||||
DOCGEN.Generator.DocGenerator_from_EDOKA Generator = new DOCGEN.Generator.DocGenerator_from_EDOKA(connectionstring, "", key.ToString());
|
||||
clsdok dok = new clsdok("", "", "", "");
|
||||
dok = Generator.Generate_Doc_EDOKA(dokumentid, ref dokdata, false, 0, false, false);
|
||||
db.Save_To_DB(dokumentid, "", dok.dokument);
|
||||
dokdata = null;
|
||||
docgendata = null;
|
||||
db = null;
|
||||
Generator = null;
|
||||
dok = null;
|
||||
return dokumentid;
|
||||
}
|
||||
|
||||
|
||||
static readonly Random _random = new Random();
|
||||
static string RandomString(int size, bool lowerCase = false)
|
||||
{
|
||||
var builder = new StringBuilder(size);
|
||||
|
||||
// Unicode/ASCII Letters are divided into two blocks
|
||||
// (Letters 65–90 / 97–122):
|
||||
// The first group containing the uppercase letters and
|
||||
// the second group containing the lowercase.
|
||||
|
||||
// char is a single Unicode character
|
||||
char offset = lowerCase ? 'a' : 'A';
|
||||
const int lettersOffset = 26; // A...Z or a..z: length=26
|
||||
|
||||
for (var i = 0; i < size; i++)
|
||||
{
|
||||
var @char = (char)_random.Next(offset, offset + lettersOffset);
|
||||
builder.Append(@char);
|
||||
}
|
||||
|
||||
return lowerCase ? builder.ToString().ToLower() : builder.ToString();
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user