Update 20250117 12:30

This commit is contained in:
Stefan Hutter
2025-01-17 12:37:03 +01:00
parent 3e36dd541b
commit cfd7c00451
147 changed files with 89099 additions and 248 deletions

View File

@@ -51,19 +51,21 @@ namespace DOCGEN.Klassen
public SyncFWord(string resturi, string apikey)
{
this.resturi = resturi;
this.apikey=apikey;
this.apikey = apikey;
}
public bool create_nativ(string property, string value, string base64, string originalfile, string destfile)
{
//FileStream ms = new FileStream(@originalfile, FileMode.Open, FileAccess.Read);
WordDocument document = new WordDocument();
document.Open(@originalfile,FormatType.Automatic);
document.Open(@originalfile, FormatType.Automatic);
//document.Open(ms, FormatType.Automatic);
try {
document.CustomDocumentProperties.Add(property, value);
try
{
document.CustomDocumentProperties.Add(property, value);
}
catch {
catch
{
document.CustomDocumentProperties.Remove(property);
document.CustomDocumentProperties.Add(property, value);
@@ -80,7 +82,7 @@ namespace DOCGEN.Klassen
}
}
catch { }
Logging.Logging.Debug("Create Native: " + destfile, "Ondoc", "");
document.UpdateDocumentFields();
document.Save(destfile);
@@ -121,8 +123,8 @@ namespace DOCGEN.Klassen
}
private string get_unterschrift(string MaNr)
{
string URL = resturi + "API/GetUnterschriftAsBase64ByMitarbeiternr?MaNr=" + MaNr;
string URL = resturi + "API/GetUnterschriftAsBase64ByMitarbeiternr?MaNr=" + MaNr;
HttpWebRequest webRequest = HttpWebRequest.Create(URL) as HttpWebRequest;
webRequest.Method = WebRequestMethods.Http.Get;
@@ -156,8 +158,8 @@ namespace DOCGEN.Klassen
return (System.Drawing.Image)new Bitmap(imgToResize, size);
}
public void set_compatibilitymode(ref WordDocument document,string force)
public void set_compatibilitymode(ref WordDocument document, string force)
{
CompatibilityMode compatibilityMode = document.Settings.CompatibilityMode;
Logging.Logging.Debug(compatibilityMode.ToString(), "ondoc sf", force);
@@ -192,7 +194,7 @@ namespace DOCGEN.Klassen
}
}
public string Generate_Word(string base64, clsDocData docdata, string img_UL="", string img_UR="",string img_faktura="")
public string Generate_Word(string base64, clsDocData docdata, string img_UL = "", string img_UR = "", string img_faktura = "")
{
string formattype = "";
MemoryStream ms = new MemoryStream(Helper.EncodeExtensions.DecodeBase642ByteArray(base64));
@@ -255,7 +257,8 @@ namespace DOCGEN.Klassen
paragraph.AppendBreak(BreakType.LineBreak);
}
catch {
catch
{
foreach (WSection section in document.Sections)
{
IWParagraph p;
@@ -277,12 +280,16 @@ namespace DOCGEN.Klassen
//{
// insert_ppfaktura(document, img_faktura);
//}
if (docdata.Form_ohne_Unterschrift=="True" || docdata.As_Faksimile == "True")
if (docdata.Form_ohne_Unterschrift == "True" || docdata.As_Faksimile == "True")
{
//DB db = new DB();
}
foreach (clsDocValue dv in docdata.DocValues)
{
//if (dv.TMBeginn.ToString().Contains("TGEDKCursor")) { //break; }
//if (dv.FieldName.ToString().Contains("TGEDKCursor")) { //break; }
if (docdata.Form_ohne_Unterschrift == "True")
{
foreach (clsDocValue dv2 in docdata.DocValues)
@@ -298,6 +305,11 @@ namespace DOCGEN.Klassen
//if (dv2.TMBeginn.ToString() == "TGEDKFunktionRechtsB99") { dv2.Value = ""; }
}
}
if (dv.TMBeginn.ToString() == "TGEDKTagesdatumB99")
{
int a = 1;
}
if (dv.TMBeginn.ToString() != "" && dv.TMEnd.ToString() == "")
{
try
@@ -323,8 +335,11 @@ namespace DOCGEN.Klassen
if (dv.TMBeginn.ToString().Contains("VornameNameLinks"))
{
string unterschrift = "";
if (img_UL != "") { unterschrift = img_UL.ToString(); } else {
unterschrift = Newtonsoft.Json.JsonConvert.DeserializeObject<string>(get_unterschrift(docdata.Unterschrift_Links)); }
if (img_UL != "") { unterschrift = img_UL.ToString(); }
else
{
unterschrift = Newtonsoft.Json.JsonConvert.DeserializeObject<string>(get_unterschrift(docdata.Unterschrift_Links));
}
if (unterschrift != "")
{
MemoryStream mssign = new MemoryStream(Convert.FromBase64String(unterschrift));
@@ -337,9 +352,12 @@ namespace DOCGEN.Klassen
else
{
string unterschrift = "";
if (img_UR != "") { unterschrift = img_UR; } else {
unterschrift = Newtonsoft.Json.JsonConvert.DeserializeObject<string>(get_unterschrift(docdata.Unterschrift_Rechts)); }
if (img_UR != "") { unterschrift = img_UR; }
else
{
unterschrift = Newtonsoft.Json.JsonConvert.DeserializeObject<string>(get_unterschrift(docdata.Unterschrift_Rechts));
}
if (unterschrift != "")
{
MemoryStream mssign = new MemoryStream(Helper.EncodeExtensions.DecodeBase642ByteArray(unterschrift));
@@ -373,43 +391,50 @@ namespace DOCGEN.Klassen
else
{
//if (docdata.As_Faksimile=="True" && (dv.TMBeginn.ToString() == "TGEDKFunktionLinksB99" || dv.TMBeginn.ToString() == "TGEDKFunktionRechtsB99"))
if (docdata.As_Faksimile == "True" && (dv.TMBeginn.ToString().Contains("FunktionLinks") || dv.TMBeginn.ToString().Contains("FunktionRechts")))
{
if (docdata.As_Faksimile == "True" && (dv.TMBeginn.ToString().Contains("FunktionLinks") || dv.TMBeginn.ToString().Contains("FunktionRechts")))
{
}
else
{
//if (dv.TMBeginn.ToString() == "TGEDKAdresseZustellungB99")
if (dv.TMBeginn.ToString() == "TGEDKZustellungB99")
{
if (img_faktura != "")
//if (dv.TMBeginn.ToString() == "TGEDKAdresseZustellungB99")
if (dv.TMBeginn.ToString() == "TGEDKZustellungB99")
{
if (img_faktura != "")
{
insert_ppfaktura(document, img_faktura);
bookmarkNavigator.MoveToBookmark(dv.TMBeginn.ToString());
bookmarkNavigator.InsertText(dv.Value.ToString());
//bookmarkNavigator.ReplaceBookmarkContent(dv.Value.ToString(), true);
}
else
{
bookmarkNavigator.MoveToBookmark(dv.TMBeginn.ToString());
bookmarkNavigator.InsertText(dv.Value.ToString());
bookmarkNavigator.ReplaceBookmarkContent(dv.Value.ToString(), true);
if (!dv.TMBeginn.ToString().Contains("TGEDKCursor"))
{
bookmarkNavigator.MoveToBookmark(dv.TMBeginn.ToString());
bookmarkNavigator.InsertText(dv.Value.ToString());
bookmarkNavigator.ReplaceBookmarkContent(dv.Value.ToString(), true);
}
}
}
else
{
bookmarkNavigator.MoveToBookmark(dv.TMBeginn.ToString());
bookmarkNavigator.InsertText(dv.Value.ToString());
bookmarkNavigator.ReplaceBookmarkContent(dv.Value.ToString(), true);
}
if (!dv.TMBeginn.ToString().Contains("TGEDKCursor"))
{
bookmarkNavigator.MoveToBookmark(dv.TMBeginn.ToString());
bookmarkNavigator.InsertText(dv.Value.ToString());
bookmarkNavigator.ReplaceBookmarkContent(dv.Value.ToString(), true);
}
}
}
}
}
catch { }
@@ -418,7 +443,10 @@ namespace DOCGEN.Klassen
{
try
{
ReplaceBookmarkContent(ref document, dv.TMBeginn.ToString(), dv.TMEnd.ToString(), dv.Value.ToString());
if (!dv.TMBeginn.ToString().Contains("TGEDKCursor"))
{
ReplaceBookmarkContent(ref document, dv.TMBeginn.ToString(), dv.TMEnd.ToString(), dv.Value.ToString());
}
}
catch { }
}
@@ -427,7 +455,7 @@ namespace DOCGEN.Klassen
{
if (dv.FieldName.ToString().Substring(0, 2) == "$$")
{
Replace_Text(ref document, dv.FieldName.ToString(),dv.Value.ToString());
Replace_Text(ref document, dv.FieldName.ToString(), dv.Value.ToString());
}
try
{
@@ -438,7 +466,7 @@ namespace DOCGEN.Klassen
//Iterates through form fields
foreach (WFormField formField in textBody.FormFields)
{
if (formField.Name == dv.FieldName.ToString())
if (formField.Name == dv.FieldName.ToString() && !dv.FieldName.ToString().Contains("TGEDKCursor"))
{
formField.Text = dv.Value.ToString();
break;
@@ -515,12 +543,12 @@ namespace DOCGEN.Klassen
}
}
//document.UpdateDocumentFields();
//document.UpdateAlternateChunks();
MemoryStream destms = new MemoryStream();
if (formattype_original.ToString().ToUpper() == "DOTMXXX")
@@ -721,7 +749,7 @@ namespace DOCGEN.Klassen
BookmarksNavigator bookmarkNavigator = new BookmarksNavigator(document);
//bookmarkNavigator.MoveToBookmark("TGEDKAdresseZustellungB99");
bookmarkNavigator.MoveToBookmark("TGEDKZustellungB99");
string img = ppfakturaimage;
byte[] b = Convert.FromBase64String(ppfakturaimage);
MemoryStream mssign = new MemoryStream(b);
@@ -731,7 +759,7 @@ namespace DOCGEN.Klassen
//paragraph.AppendText(zustellungvalue);
bookmarkNavigator.InsertParagraph(paragraph);
}
@@ -820,7 +848,7 @@ namespace DOCGEN.Klassen
case "0":
//int rotation = 0;
//if (docData.barcode_horizontal == 0) { rotation = 270; }
barcodeimage = Barcode.Get_LinerBarcode(Barcoded.Symbology.I2of5, docData.Dokumentid.Substring(6, 16), docData.Dokumentid.Substring(6, 16)+docData.barcode_zusatz, docData.barcode_textposition, docData.Zusatz_Font, Convert.ToInt32(docData.Zusatz_FontSize),0);
barcodeimage = Barcode.Get_LinerBarcode(Barcoded.Symbology.I2of5, docData.Dokumentid.Substring(6, 16), docData.Dokumentid.Substring(6, 16) + docData.barcode_zusatz, docData.barcode_textposition, docData.Zusatz_Font, Convert.ToInt32(docData.Zusatz_FontSize), 0);
//barcodeimage = AutoSizeImage(barcodeimage, docData.barcode_width, docData.barcode_height,false);
//barcodeimage = ScaleImage(barcodeimage, docData.barcode_width, docData.barcode_height);
//barcodeimage = resizeImage(barcodeimage, new Size(docData.barcode_width,docData.barcode_height));
@@ -833,42 +861,42 @@ namespace DOCGEN.Klassen
//System.IO.File.Delete(@"h:\tssettings\edoka\a_" + docData.Dokumentid + ".png");
//barcodeimage = Barcode.Get_Datamatrix(DataMatrix.net.DmtxScheme.DmtxSchemeAutoBest, docData.barcode_content, 4, 0, 0, "Left", docData.barcode_content, docData.barcode_font, docData.barcode_fontsize);
barcodeimage = Barcode.Get_Datamatrix(DataMatrix.net.DmtxScheme.DmtxSchemeAscii,docData.barcode_content, 6, 6, 0, "Right", docData.barcode_text+docData.barcode_zusatz, docData.Zusatz_Font, docData.Zusatz_FontSize);
barcodeimage = Barcode.Get_Datamatrix(DataMatrix.net.DmtxScheme.DmtxSchemeAscii, docData.barcode_content, 6, 6, 0, "Right", docData.barcode_text + docData.barcode_zusatz, docData.Zusatz_Font, docData.Zusatz_FontSize);
barcodeimage = AutoSizeImage(barcodeimage, docData.barcode_width, docData.barcode_height, false);
//barcodeimage= resizeImage(barcodeimage, new Size(docData.barcode_width, docData.barcode_height));
//barcodeimage = ScaleImage(barcodeimage, docData.barcode_width,docData.barcode_height);
//barcodeimage.Save(@"x:\bctest.png");
break;
default:
barcodeimage = Barcode.Get_LinerBarcode(Barcoded.Symbology.I2of5C, docData.Dokumentid.Substring(9, 13), docData.Dokumentid.Substring(6, 16)+docData.barcode_zusatz, docData.barcode_textposition, docData.barcode_font, Convert.ToInt32(docData.barcode_fontsize), 0);
barcodeimage = Barcode.Get_LinerBarcode(Barcoded.Symbology.I2of5C, docData.Dokumentid.Substring(9, 13), docData.Dokumentid.Substring(6, 16) + docData.barcode_zusatz, docData.barcode_textposition, docData.barcode_font, Convert.ToInt32(docData.barcode_fontsize), 0);
break;
}
// System.Drawing.Image barcodeimage = Barcode.Get_LinerBarcode(Barcoded.Symbology.I2of5C, docData.Dokumentid.Substring(9, 13), docData.Dokumentid.Substring(9, 13), docData.barcode_textposition "Below", "Arial", 6, 0);
// System.Drawing.Image barcodeimage = Barcode.Get_LinerBarcode(Barcoded.Symbology.I2of5C, docData.Dokumentid.Substring(9, 13), docData.Dokumentid.Substring(9, 13), docData.barcode_textposition "Below", "Arial", 6, 0);
foreach (WSection section in document.Sections)
{
WPicture picture = new WPicture(document);
picture.LoadImage(barcodeimage);
//picture.Height = docData.barcode_height;
//picture.Width = docData.barcode_width;
picture.VerticalPosition = docData.barcode_left;
picture.HorizontalPosition = docData.barcode_top;
picture.HorizontalOrigin = HorizontalOrigin.Page ;
picture.HorizontalOrigin = HorizontalOrigin.Page;
picture.VerticalOrigin = VerticalOrigin.Page;
picture.TextWrappingStyle = TextWrappingStyle.Square;
picture.TextWrappingType = TextWrappingType.Largest;
//picture.Width = barcodeimage.Width;
//picture.Height = barcodeimage.Height;
if (docData.barcode_horizontal == 0)
{
picture.Rotation = 270;
// picture.Height = docData.barcode_height;
// picture.Width = docData.barcode_width;
// picture.Height = docData.barcode_height;
// picture.Width = docData.barcode_width;
picture.VerticalPosition = docData.barcode_top; ;
picture.HorizontalPosition = docData.barcode_left;
@@ -882,29 +910,29 @@ namespace DOCGEN.Klassen
picture.VerticalPosition = docData.barcode_top; ;
picture.HorizontalPosition = docData.barcode_left;
// picture.Width = barcodeimage.Width;
// picture.Height = barcodeimage.Height;
// picture.Width = barcodeimage.Width;
// picture.Height = barcodeimage.Height;
}
if (docData.barcode_type == "0")
{
picture.Width = docData.barcode_width;
picture.Height = docData.barcode_height;
picture.Height = docData.barcode_height;
}
WPicture picture2 = new WPicture(document);
picture2 = picture;
section.HeadersFooters.Footer.AddParagraph().ChildEntities.Add(picture);
section.HeadersFooters.FirstPageFooter.AddParagraph().ChildEntities.Add(picture2);
if (section.HeadersFooters.FirstPageFooter.Paragraphs.Count < 1)
{
{
section.HeadersFooters.FirstPageFooter.AddParagraph();
section.HeadersFooters.FirstPageFooter.Paragraphs[0].ChildEntities.Add(picture);
section.HeadersFooters.FirstPageFooter.Paragraphs[0].ChildEntities.Add(picture);
}
Syncfusion.DocIO.DLS.IWParagraph paragraph = section.Body.LastParagraph;
if (paragraph != null)
@@ -927,7 +955,7 @@ namespace DOCGEN.Klassen
return newImage;
}
public void insert_Logo(WordDocument document, clsDocData docData)
public void insert_Logo(WordDocument document, clsDocData docData)
{
IWSection section = document.Sections[0];
IWParagraph paragraph = section.HeadersFooters.Header.AddParagraph();
@@ -1056,8 +1084,8 @@ namespace DOCGEN.Klassen
}
public void SplitDocument_Part2(ref WordDocument wordDocument, ref WordDocument target, int SectionNumber)
{
int i = 0;
foreach (WSection section in wordDocument.Sections)
{