diff --git a/ADDemo/obj/Debug/ADDemo.csproj.CoreCompileInputs.cache b/ADDemo/obj/Debug/ADDemo.csproj.CoreCompileInputs.cache index dd7244ae7..513eb6918 100644 --- a/ADDemo/obj/Debug/ADDemo.csproj.CoreCompileInputs.cache +++ b/ADDemo/obj/Debug/ADDemo.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -29a0297ab3573f953fcec20be9ec7a7194f474f54b0d5cd139c388019969abfc +44d66dca658f14ca665690280a32a4f0b1d13348d1a13413f027861c5842a1ed diff --git a/API_DocTest/API_DocTest.csproj b/API_DocTest/API_DocTest.csproj index cc2fdbd8c..cf8a66b33 100644 --- a/API_DocTest/API_DocTest.csproj +++ b/API_DocTest/API_DocTest.csproj @@ -81,11 +81,20 @@ Form1.cs + + Form + + + Form2.cs + Form1.cs + + Form2.cs + ResXFileCodeGenerator Resources.Designer.cs @@ -94,6 +103,7 @@ True Resources.resx + True @@ -121,5 +131,11 @@ false + + + + + + \ No newline at end of file diff --git a/API_DocTest/App.config b/API_DocTest/App.config index 804946429..6358e2878 100644 --- a/API_DocTest/App.config +++ b/API_DocTest/App.config @@ -22,6 +22,15 @@ x:\jsonfiles\ + + Fachuser + + + data source=shu01\shu00;initial catalog=edoka_dms;packet size=4096;user id=sa;password=*shu29 + + + x:\jsonfiles\[userid]\ + \ No newline at end of file diff --git a/API_DocTest/Form1.Designer.cs b/API_DocTest/Form1.Designer.cs index 18781e310..2077cd967 100644 --- a/API_DocTest/Form1.Designer.cs +++ b/API_DocTest/Form1.Designer.cs @@ -29,10 +29,10 @@ private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1)); - Syncfusion.Windows.Forms.Edit.Implementation.Config.Config config1 = new Syncfusion.Windows.Forms.Edit.Implementation.Config.Config(); - Syncfusion.Windows.Forms.PdfViewer.MessageBoxSettings messageBoxSettings1 = new Syncfusion.Windows.Forms.PdfViewer.MessageBoxSettings(); - Syncfusion.Windows.PdfViewer.PdfViewerPrinterSettings pdfViewerPrinterSettings1 = new Syncfusion.Windows.PdfViewer.PdfViewerPrinterSettings(); - Syncfusion.Windows.Forms.PdfViewer.TextSearchSettings textSearchSettings1 = new Syncfusion.Windows.Forms.PdfViewer.TextSearchSettings(); + Syncfusion.Windows.Forms.Edit.Implementation.Config.Config config2 = new Syncfusion.Windows.Forms.Edit.Implementation.Config.Config(); + Syncfusion.Windows.Forms.PdfViewer.MessageBoxSettings messageBoxSettings2 = new Syncfusion.Windows.Forms.PdfViewer.MessageBoxSettings(); + Syncfusion.Windows.PdfViewer.PdfViewerPrinterSettings pdfViewerPrinterSettings2 = new Syncfusion.Windows.PdfViewer.PdfViewerPrinterSettings(); + Syncfusion.Windows.Forms.PdfViewer.TextSearchSettings textSearchSettings2 = new Syncfusion.Windows.Forms.PdfViewer.TextSearchSettings(); this.toolStrip1 = new System.Windows.Forms.ToolStrip(); this.toolStripLabel1 = new System.Windows.Forms.ToolStripLabel(); this.txtKey = new System.Windows.Forms.ToolStripTextBox(); @@ -51,10 +51,14 @@ this.backgroundWorker1 = new System.ComponentModel.BackgroundWorker(); this.panel1 = new System.Windows.Forms.Panel(); this.groupBox2 = new System.Windows.Forms.GroupBox(); - this.label9 = new System.Windows.Forms.Label(); - this.label8 = new System.Windows.Forms.Label(); - this.label7 = new System.Windows.Forms.Label(); + this.groupBox3 = new System.Windows.Forms.GroupBox(); + this.radioButton2 = new System.Windows.Forms.RadioButton(); + this.radioButton1 = new System.Windows.Forms.RadioButton(); + this.panel2 = new System.Windows.Forms.Panel(); this.label6 = new System.Windows.Forms.Label(); + this.label9 = new System.Windows.Forms.Label(); + this.label7 = new System.Windows.Forms.Label(); + this.label8 = new System.Windows.Forms.Label(); this.label5 = new System.Windows.Forms.Label(); this.label4 = new System.Windows.Forms.Label(); this.txtfilename = new System.Windows.Forms.TextBox(); @@ -79,6 +83,8 @@ ((System.ComponentModel.ISupportInitialize)(this.editControl1)).BeginInit(); this.panel1.SuspendLayout(); this.groupBox2.SuspendLayout(); + this.groupBox3.SuspendLayout(); + this.panel2.SuspendLayout(); this.groupBox1.SuspendLayout(); this.SuspendLayout(); // @@ -210,7 +216,7 @@ this.editControl1.AllowZoom = false; this.editControl1.ChangedLinesMarkingLineColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(238)))), ((int)(((byte)(98))))); this.editControl1.CodeSnipptSize = new System.Drawing.Size(100, 100); - this.editControl1.Configurator = config1; + this.editControl1.Configurator = config2; this.editControl1.ContextChoiceBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255))))); this.editControl1.ContextChoiceBorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(233)))), ((int)(((byte)(166)))), ((int)(((byte)(50))))); this.editControl1.ContextChoiceForeColor = System.Drawing.SystemColors.InfoText; @@ -254,17 +260,17 @@ this.pdfViewerControl1.IsTextSearchEnabled = true; this.pdfViewerControl1.IsTextSelectionEnabled = true; this.pdfViewerControl1.Location = new System.Drawing.Point(0, 0); - messageBoxSettings1.EnableNotification = true; - this.pdfViewerControl1.MessageBoxSettings = messageBoxSettings1; + messageBoxSettings2.EnableNotification = true; + this.pdfViewerControl1.MessageBoxSettings = messageBoxSettings2; this.pdfViewerControl1.MinimumZoomPercentage = 50; this.pdfViewerControl1.Name = "pdfViewerControl1"; this.pdfViewerControl1.PageBorderThickness = 1; - pdfViewerPrinterSettings1.Copies = 1; - pdfViewerPrinterSettings1.PageOrientation = Syncfusion.Windows.PdfViewer.PdfViewerPrintOrientation.Auto; - pdfViewerPrinterSettings1.PageSize = Syncfusion.Windows.PdfViewer.PdfViewerPrintSize.ActualSize; - pdfViewerPrinterSettings1.PrintLocation = ((System.Drawing.PointF)(resources.GetObject("pdfViewerPrinterSettings1.PrintLocation"))); - pdfViewerPrinterSettings1.ShowPrintStatusDialog = true; - this.pdfViewerControl1.PrinterSettings = pdfViewerPrinterSettings1; + pdfViewerPrinterSettings2.Copies = 1; + pdfViewerPrinterSettings2.PageOrientation = Syncfusion.Windows.PdfViewer.PdfViewerPrintOrientation.Auto; + pdfViewerPrinterSettings2.PageSize = Syncfusion.Windows.PdfViewer.PdfViewerPrintSize.ActualSize; + pdfViewerPrinterSettings2.PrintLocation = ((System.Drawing.PointF)(resources.GetObject("pdfViewerPrinterSettings2.PrintLocation"))); + pdfViewerPrinterSettings2.ShowPrintStatusDialog = true; + this.pdfViewerControl1.PrinterSettings = pdfViewerPrinterSettings2; this.pdfViewerControl1.ReferencePath = null; this.pdfViewerControl1.ScrollDisplacementValue = 0; this.pdfViewerControl1.ShowHorizontalScrollBar = true; @@ -274,10 +280,10 @@ this.pdfViewerControl1.SpaceBetweenPages = 8; this.pdfViewerControl1.TabIndex = 0; this.pdfViewerControl1.Text = "pdfViewerControl1"; - textSearchSettings1.CurrentInstanceColor = System.Drawing.Color.FromArgb(((int)(((byte)(127)))), ((int)(((byte)(255)))), ((int)(((byte)(171)))), ((int)(((byte)(64))))); - textSearchSettings1.HighlightAllInstance = true; - textSearchSettings1.OtherInstanceColor = System.Drawing.Color.FromArgb(((int)(((byte)(127)))), ((int)(((byte)(254)))), ((int)(((byte)(255)))), ((int)(((byte)(0))))); - this.pdfViewerControl1.TextSearchSettings = textSearchSettings1; + textSearchSettings2.CurrentInstanceColor = System.Drawing.Color.FromArgb(((int)(((byte)(127)))), ((int)(((byte)(255)))), ((int)(((byte)(171)))), ((int)(((byte)(64))))); + textSearchSettings2.HighlightAllInstance = true; + textSearchSettings2.OtherInstanceColor = System.Drawing.Color.FromArgb(((int)(((byte)(127)))), ((int)(((byte)(254)))), ((int)(((byte)(255)))), ((int)(((byte)(0))))); + this.pdfViewerControl1.TextSearchSettings = textSearchSettings2; this.pdfViewerControl1.ThemeName = "Default"; this.pdfViewerControl1.VerticalScrollOffset = 0; this.pdfViewerControl1.VisualStyle = Syncfusion.Windows.Forms.PdfViewer.VisualStyle.Default; @@ -295,10 +301,8 @@ // // groupBox2 // - this.groupBox2.Controls.Add(this.label9); - this.groupBox2.Controls.Add(this.label8); - this.groupBox2.Controls.Add(this.label7); - this.groupBox2.Controls.Add(this.label6); + this.groupBox2.Controls.Add(this.groupBox3); + this.groupBox2.Controls.Add(this.panel2); this.groupBox2.Controls.Add(this.label5); this.groupBox2.Controls.Add(this.label4); this.groupBox2.Controls.Add(this.txtfilename); @@ -310,51 +314,96 @@ this.groupBox2.Dock = System.Windows.Forms.DockStyle.Left; this.groupBox2.Location = new System.Drawing.Point(319, 0); this.groupBox2.Name = "groupBox2"; - this.groupBox2.Size = new System.Drawing.Size(901, 170); + this.groupBox2.Size = new System.Drawing.Size(1225, 170); this.groupBox2.TabIndex = 1; this.groupBox2.TabStop = false; this.groupBox2.Text = "Datei"; // - // label9 + // groupBox3 // - this.label9.AutoSize = true; - this.label9.Location = new System.Drawing.Point(133, 117); - this.label9.Name = "label9"; - this.label9.Size = new System.Drawing.Size(157, 13); - this.label9.TabIndex = 15; - this.label9.Text = "- Ondoc_Versandstrasse_Paket"; + this.groupBox3.Controls.Add(this.radioButton2); + this.groupBox3.Controls.Add(this.radioButton1); + this.groupBox3.Location = new System.Drawing.Point(12, 20); + this.groupBox3.Name = "groupBox3"; + this.groupBox3.Size = new System.Drawing.Size(308, 52); + this.groupBox3.TabIndex = 17; + this.groupBox3.TabStop = false; + this.groupBox3.Text = "Quelle"; // - // label8 + // radioButton2 // - this.label8.AutoSize = true; - this.label8.Location = new System.Drawing.Point(133, 131); - this.label8.Name = "label8"; - this.label8.Size = new System.Drawing.Size(138, 13); - this.label8.TabIndex = 14; - this.label8.Text = "- _OnDoc_API_TestScripts "; + this.radioButton2.AutoSize = true; + this.radioButton2.Location = new System.Drawing.Point(111, 20); + this.radioButton2.Name = "radioButton2"; + this.radioButton2.Size = new System.Drawing.Size(76, 17); + this.radioButton2.TabIndex = 1; + this.radioButton2.Text = "Produktion"; + this.radioButton2.UseVisualStyleBackColor = true; // - // label7 + // radioButton1 // - this.label7.AutoSize = true; - this.label7.Location = new System.Drawing.Point(133, 104); - this.label7.Name = "label7"; - this.label7.Size = new System.Drawing.Size(120, 13); - this.label7.TabIndex = 13; - this.label7.Text = "- ProvDokuments (CLM)"; + this.radioButton1.AutoSize = true; + this.radioButton1.Checked = true; + this.radioButton1.Location = new System.Drawing.Point(6, 20); + this.radioButton1.Name = "radioButton1"; + this.radioButton1.Size = new System.Drawing.Size(75, 17); + this.radioButton1.TabIndex = 0; + this.radioButton1.TabStop = true; + this.radioButton1.Text = "Integration"; + this.radioButton1.UseVisualStyleBackColor = true; + // + // panel2 + // + this.panel2.Controls.Add(this.label6); + this.panel2.Controls.Add(this.label9); + this.panel2.Controls.Add(this.label7); + this.panel2.Controls.Add(this.label8); + this.panel2.Location = new System.Drawing.Point(998, 92); + this.panel2.Name = "panel2"; + this.panel2.Size = new System.Drawing.Size(200, 72); + this.panel2.TabIndex = 16; + this.panel2.Visible = false; // // label6 // this.label6.AutoSize = true; - this.label6.Location = new System.Drawing.Point(133, 91); + this.label6.Location = new System.Drawing.Point(14, 8); this.label6.Name = "label6"; this.label6.Size = new System.Drawing.Size(46, 13); this.label6.TabIndex = 12; this.label6.Text = "Quellen:"; // + // label9 + // + this.label9.AutoSize = true; + this.label9.Location = new System.Drawing.Point(14, 34); + this.label9.Name = "label9"; + this.label9.Size = new System.Drawing.Size(157, 13); + this.label9.TabIndex = 15; + this.label9.Text = "- Ondoc_Versandstrasse_Paket"; + // + // label7 + // + this.label7.AutoSize = true; + this.label7.Location = new System.Drawing.Point(14, 21); + this.label7.Name = "label7"; + this.label7.Size = new System.Drawing.Size(120, 13); + this.label7.TabIndex = 13; + this.label7.Text = "- ProvDokuments (CLM)"; + // + // label8 + // + this.label8.AutoSize = true; + this.label8.Location = new System.Drawing.Point(14, 48); + this.label8.Name = "label8"; + this.label8.Size = new System.Drawing.Size(138, 13); + this.label8.TabIndex = 14; + this.label8.Text = "- _OnDoc_API_TestScripts "; + // // label5 // this.label5.AutoSize = true; - this.label5.Location = new System.Drawing.Point(326, 36); + this.label5.Location = new System.Drawing.Point(578, 33); this.label5.Name = "label5"; this.label5.Size = new System.Drawing.Size(105, 13); this.label5.TabIndex = 11; @@ -363,7 +412,7 @@ // label4 // this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(6, 59); + this.label4.Location = new System.Drawing.Point(17, 98); this.label4.Name = "label4"; this.label4.Size = new System.Drawing.Size(58, 13); this.label4.TabIndex = 10; @@ -371,14 +420,14 @@ // // txtfilename // - this.txtfilename.Location = new System.Drawing.Point(84, 59); + this.txtfilename.Location = new System.Drawing.Point(110, 95); this.txtfilename.Name = "txtfilename"; - this.txtfilename.Size = new System.Drawing.Size(212, 20); + this.txtfilename.Size = new System.Drawing.Size(377, 20); this.txtfilename.TabIndex = 9; // // button5 // - this.button5.Location = new System.Drawing.Point(699, 33); + this.button5.Location = new System.Drawing.Point(977, 30); this.button5.Name = "button5"; this.button5.Size = new System.Drawing.Size(131, 23); this.button5.TabIndex = 8; @@ -389,16 +438,16 @@ // listBox1 // this.listBox1.FormattingEnabled = true; - this.listBox1.Location = new System.Drawing.Point(437, 36); + this.listBox1.Location = new System.Drawing.Point(715, 33); this.listBox1.Name = "listBox1"; this.listBox1.Size = new System.Drawing.Size(235, 121); this.listBox1.TabIndex = 7; // // button3 // - this.button3.Location = new System.Drawing.Point(8, 91); + this.button3.Location = new System.Drawing.Point(110, 129); this.button3.Name = "button3"; - this.button3.Size = new System.Drawing.Size(75, 23); + this.button3.Size = new System.Drawing.Size(108, 23); this.button3.TabIndex = 6; this.button3.Text = "Datei-Export"; this.button3.UseVisualStyleBackColor = true; @@ -406,19 +455,20 @@ // // txtfilekey // - this.txtfilekey.Location = new System.Drawing.Point(84, 33); + this.txtfilekey.Location = new System.Drawing.Point(110, 72); this.txtfilekey.Name = "txtfilekey"; - this.txtfilekey.Size = new System.Drawing.Size(212, 20); + this.txtfilekey.Size = new System.Drawing.Size(377, 20); this.txtfilekey.TabIndex = 3; // // label3 // this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(5, 36); + this.label3.Location = new System.Drawing.Point(16, 75); this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(52, 13); + this.label3.Size = new System.Drawing.Size(76, 13); this.label3.TabIndex = 2; - this.label3.Text = "Schlüssel"; + this.label3.Text = "ESS-Schlüssel"; + this.label3.Click += new System.EventHandler(this.label3_Click); // // groupBox1 // @@ -523,6 +573,10 @@ this.panel1.ResumeLayout(false); this.groupBox2.ResumeLayout(false); this.groupBox2.PerformLayout(); + this.groupBox3.ResumeLayout(false); + this.groupBox3.PerformLayout(); + this.panel2.ResumeLayout(false); + this.panel2.PerformLayout(); this.groupBox1.ResumeLayout(false); this.groupBox1.PerformLayout(); this.ResumeLayout(false); @@ -569,6 +623,10 @@ private System.Windows.Forms.Label label6; private System.Windows.Forms.Label label8; private System.Windows.Forms.Label label9; + private System.Windows.Forms.Panel panel2; + private System.Windows.Forms.GroupBox groupBox3; + private System.Windows.Forms.RadioButton radioButton2; + private System.Windows.Forms.RadioButton radioButton1; } } diff --git a/API_DocTest/Form1.cs b/API_DocTest/Form1.cs index d8e36e537..479f09812 100644 --- a/API_DocTest/Form1.cs +++ b/API_DocTest/Form1.cs @@ -22,6 +22,7 @@ using Syncfusion.Windows.Forms.Edit.Enums; using Syncfusion.Windows.Forms.Edit.Implementation.Config; using static System.Windows.Forms.VisualStyles.VisualStyleElement; using System.Windows.Forms.Design; +using Syncfusion.Windows.Forms.Edit.Utils.Serializers; namespace API_DocTest @@ -39,7 +40,7 @@ namespace API_DocTest { string lickey = "MzYzODg2NkAzMjM4MmUzMDJlMzBTOWljRmxNelA1d1VGOHpGR0lxQzB6UTAwKzIxK2VBNEhBZFp5alcxb1NVPQ=="; Syncfusion.Licensing.SyncfusionLicenseProvider.RegisterLicense(lickey); - + LoadJSON(); Form1_Resize(sender, e); Refresh_Filelist(); @@ -394,6 +395,11 @@ ELSE this.txtdbkey.Text = comboBox1.SelectedItem.ToString(); button1_Click(sender, e); } + + private void label3_Click(object sender, EventArgs e) + { + + } } diff --git a/API_DocTest/Form1.resx b/API_DocTest/Form1.resx index 8fc96ad31..b51f42af9 100644 --- a/API_DocTest/Form1.resx +++ b/API_DocTest/Form1.resx @@ -181,7 +181,7 @@ nOccAdABIDXXE1nzAAAAAElFTkSuQmCC - + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABVTeXN0ZW0uRHJh @@ -191,4 +191,7 @@ 122, 17 + + 25 + \ No newline at end of file diff --git a/API_DocTest/Form2.Designer.cs b/API_DocTest/Form2.Designer.cs new file mode 100644 index 000000000..1f30c5815 --- /dev/null +++ b/API_DocTest/Form2.Designer.cs @@ -0,0 +1,288 @@ +namespace API_DocTest +{ + partial class Form2 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + Syncfusion.Windows.Forms.PdfViewer.MessageBoxSettings messageBoxSettings2 = new Syncfusion.Windows.Forms.PdfViewer.MessageBoxSettings(); + Syncfusion.Windows.PdfViewer.PdfViewerPrinterSettings pdfViewerPrinterSettings2 = new Syncfusion.Windows.PdfViewer.PdfViewerPrinterSettings(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form2)); + Syncfusion.Windows.Forms.PdfViewer.TextSearchSettings textSearchSettings2 = new Syncfusion.Windows.Forms.PdfViewer.TextSearchSettings(); + this.panel1 = new System.Windows.Forms.Panel(); + this.button1 = new System.Windows.Forms.Button(); + this.button5 = new System.Windows.Forms.Button(); + this.groupBox1 = new System.Windows.Forms.GroupBox(); + this.listBox1 = new System.Windows.Forms.ListBox(); + this.groupBox3 = new System.Windows.Forms.GroupBox(); + this.label1 = new System.Windows.Forms.Label(); + this.label4 = new System.Windows.Forms.Label(); + this.txtfilename = new System.Windows.Forms.TextBox(); + this.button3 = new System.Windows.Forms.Button(); + this.txtfilekey = new System.Windows.Forms.TextBox(); + this.label3 = new System.Windows.Forms.Label(); + this.radioButton2 = new System.Windows.Forms.RadioButton(); + this.radioButton1 = new System.Windows.Forms.RadioButton(); + this.pdfViewerControl1 = new Syncfusion.Windows.Forms.PdfViewer.PdfViewerControl(); + this.imageList1 = new System.Windows.Forms.ImageList(this.components); + this.panel1.SuspendLayout(); + this.groupBox1.SuspendLayout(); + this.groupBox3.SuspendLayout(); + this.SuspendLayout(); + // + // panel1 + // + this.panel1.Controls.Add(this.button1); + this.panel1.Controls.Add(this.button5); + this.panel1.Controls.Add(this.groupBox1); + this.panel1.Controls.Add(this.groupBox3); + this.panel1.Dock = System.Windows.Forms.DockStyle.Left; + this.panel1.Location = new System.Drawing.Point(0, 0); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(770, 922); + this.panel1.TabIndex = 0; + // + // button1 + // + this.button1.Location = new System.Drawing.Point(627, 357); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(143, 23); + this.button1.TabIndex = 26; + this.button1.Text = "Datei löschen"; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // button5 + // + this.button5.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.button5.Image = global::API_DocTest.Properties.Resources.PDF_128; + this.button5.ImageAlign = System.Drawing.ContentAlignment.TopCenter; + this.button5.Location = new System.Drawing.Point(627, 167); + this.button5.Name = "button5"; + this.button5.Size = new System.Drawing.Size(137, 161); + this.button5.TabIndex = 25; + this.button5.Text = "PDF generieren"; + this.button5.TextAlign = System.Drawing.ContentAlignment.BottomCenter; + this.button5.UseVisualStyleBackColor = true; + this.button5.Click += new System.EventHandler(this.button5_Click); + // + // groupBox1 + // + this.groupBox1.Controls.Add(this.listBox1); + this.groupBox1.Dock = System.Windows.Forms.DockStyle.Left; + this.groupBox1.Location = new System.Drawing.Point(0, 151); + this.groupBox1.Name = "groupBox1"; + this.groupBox1.Size = new System.Drawing.Size(621, 771); + this.groupBox1.TabIndex = 24; + this.groupBox1.TabStop = false; + this.groupBox1.Text = "Dateien"; + // + // listBox1 + // + this.listBox1.Dock = System.Windows.Forms.DockStyle.Fill; + this.listBox1.FormattingEnabled = true; + this.listBox1.Location = new System.Drawing.Point(3, 16); + this.listBox1.Name = "listBox1"; + this.listBox1.Size = new System.Drawing.Size(615, 752); + this.listBox1.TabIndex = 8; + // + // groupBox3 + // + this.groupBox3.Controls.Add(this.label1); + this.groupBox3.Controls.Add(this.label4); + this.groupBox3.Controls.Add(this.txtfilename); + this.groupBox3.Controls.Add(this.button3); + this.groupBox3.Controls.Add(this.txtfilekey); + this.groupBox3.Controls.Add(this.label3); + this.groupBox3.Controls.Add(this.radioButton2); + this.groupBox3.Controls.Add(this.radioButton1); + this.groupBox3.Dock = System.Windows.Forms.DockStyle.Top; + this.groupBox3.Location = new System.Drawing.Point(0, 0); + this.groupBox3.Name = "groupBox3"; + this.groupBox3.Size = new System.Drawing.Size(770, 151); + this.groupBox3.TabIndex = 23; + this.groupBox3.TabStop = false; + this.groupBox3.Text = "Quelle"; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(108, 94); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(35, 13); + this.label1.TabIndex = 28; + this.label1.Text = "label1"; + // + // label4 + // + this.label4.AutoSize = true; + this.label4.Location = new System.Drawing.Point(13, 74); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(58, 13); + this.label4.TabIndex = 27; + this.label4.Text = "Dateiname"; + // + // txtfilename + // + this.txtfilename.Location = new System.Drawing.Point(106, 71); + this.txtfilename.Name = "txtfilename"; + this.txtfilename.Size = new System.Drawing.Size(644, 20); + this.txtfilename.TabIndex = 26; + // + // button3 + // + this.button3.Location = new System.Drawing.Point(106, 122); + this.button3.Name = "button3"; + this.button3.Size = new System.Drawing.Size(311, 23); + this.button3.TabIndex = 25; + this.button3.Text = "Datei-Export"; + this.button3.UseVisualStyleBackColor = true; + this.button3.Click += new System.EventHandler(this.button3_Click); + // + // txtfilekey + // + this.txtfilekey.Location = new System.Drawing.Point(106, 48); + this.txtfilekey.Name = "txtfilekey"; + this.txtfilekey.Size = new System.Drawing.Size(644, 20); + this.txtfilekey.TabIndex = 24; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Location = new System.Drawing.Point(12, 51); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(76, 13); + this.label3.TabIndex = 23; + this.label3.Text = "ESS-Schlüssel"; + // + // radioButton2 + // + this.radioButton2.AutoSize = true; + this.radioButton2.Location = new System.Drawing.Point(111, 20); + this.radioButton2.Name = "radioButton2"; + this.radioButton2.Size = new System.Drawing.Size(76, 17); + this.radioButton2.TabIndex = 1; + this.radioButton2.Text = "Produktion"; + this.radioButton2.UseVisualStyleBackColor = true; + // + // radioButton1 + // + this.radioButton1.AutoSize = true; + this.radioButton1.Checked = true; + this.radioButton1.Location = new System.Drawing.Point(6, 20); + this.radioButton1.Name = "radioButton1"; + this.radioButton1.Size = new System.Drawing.Size(75, 17); + this.radioButton1.TabIndex = 0; + this.radioButton1.TabStop = true; + this.radioButton1.Text = "Integration"; + this.radioButton1.UseVisualStyleBackColor = true; + // + // pdfViewerControl1 + // + this.pdfViewerControl1.CursorMode = Syncfusion.Windows.Forms.PdfViewer.PdfViewerCursorMode.SelectTool; + this.pdfViewerControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.pdfViewerControl1.EnableContextMenu = true; + this.pdfViewerControl1.EnableNotificationBar = true; + this.pdfViewerControl1.HorizontalScrollOffset = 0; + this.pdfViewerControl1.IsBookmarkEnabled = true; + this.pdfViewerControl1.IsTextSearchEnabled = true; + this.pdfViewerControl1.IsTextSelectionEnabled = true; + this.pdfViewerControl1.Location = new System.Drawing.Point(770, 0); + messageBoxSettings2.EnableNotification = true; + this.pdfViewerControl1.MessageBoxSettings = messageBoxSettings2; + this.pdfViewerControl1.MinimumZoomPercentage = 50; + this.pdfViewerControl1.Name = "pdfViewerControl1"; + this.pdfViewerControl1.PageBorderThickness = 1; + pdfViewerPrinterSettings2.Copies = 1; + pdfViewerPrinterSettings2.PageOrientation = Syncfusion.Windows.PdfViewer.PdfViewerPrintOrientation.Auto; + pdfViewerPrinterSettings2.PageSize = Syncfusion.Windows.PdfViewer.PdfViewerPrintSize.ActualSize; + pdfViewerPrinterSettings2.PrintLocation = ((System.Drawing.PointF)(resources.GetObject("pdfViewerPrinterSettings2.PrintLocation"))); + pdfViewerPrinterSettings2.ShowPrintStatusDialog = true; + this.pdfViewerControl1.PrinterSettings = pdfViewerPrinterSettings2; + this.pdfViewerControl1.ReferencePath = null; + this.pdfViewerControl1.ScrollDisplacementValue = 0; + this.pdfViewerControl1.ShowHorizontalScrollBar = true; + this.pdfViewerControl1.ShowToolBar = true; + this.pdfViewerControl1.ShowVerticalScrollBar = true; + this.pdfViewerControl1.Size = new System.Drawing.Size(991, 922); + this.pdfViewerControl1.SpaceBetweenPages = 8; + this.pdfViewerControl1.TabIndex = 1; + this.pdfViewerControl1.Text = "pdfViewerControl1"; + textSearchSettings2.CurrentInstanceColor = System.Drawing.Color.FromArgb(((int)(((byte)(127)))), ((int)(((byte)(255)))), ((int)(((byte)(171)))), ((int)(((byte)(64))))); + textSearchSettings2.HighlightAllInstance = true; + textSearchSettings2.OtherInstanceColor = System.Drawing.Color.FromArgb(((int)(((byte)(127)))), ((int)(((byte)(254)))), ((int)(((byte)(255)))), ((int)(((byte)(0))))); + this.pdfViewerControl1.TextSearchSettings = textSearchSettings2; + this.pdfViewerControl1.ThemeName = "Default"; + this.pdfViewerControl1.VerticalScrollOffset = 0; + this.pdfViewerControl1.VisualStyle = Syncfusion.Windows.Forms.PdfViewer.VisualStyle.Default; + this.pdfViewerControl1.ZoomMode = Syncfusion.Windows.Forms.PdfViewer.ZoomMode.Default; + // + // imageList1 + // + this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream"))); + this.imageList1.TransparentColor = System.Drawing.Color.Transparent; + this.imageList1.Images.SetKeyName(0, "272705_pdf_icon.png"); + // + // Form2 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(1761, 922); + this.Controls.Add(this.pdfViewerControl1); + this.Controls.Add(this.panel1); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.Name = "Form2"; + this.Text = "ESS-/OnDoc API-Dokument-Test"; + this.Load += new System.EventHandler(this.Form2_Load); + this.panel1.ResumeLayout(false); + this.groupBox1.ResumeLayout(false); + this.groupBox3.ResumeLayout(false); + this.groupBox3.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Panel panel1; + private System.Windows.Forms.GroupBox groupBox3; + private System.Windows.Forms.RadioButton radioButton2; + private System.Windows.Forms.RadioButton radioButton1; + private System.Windows.Forms.GroupBox groupBox1; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.TextBox txtfilename; + private System.Windows.Forms.Button button3; + private System.Windows.Forms.TextBox txtfilekey; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.ListBox listBox1; + private System.Windows.Forms.Button button5; + private Syncfusion.Windows.Forms.PdfViewer.PdfViewerControl pdfViewerControl1; + private System.Windows.Forms.ImageList imageList1; + private System.Windows.Forms.Button button1; + private System.Windows.Forms.Label label1; + } +} \ No newline at end of file diff --git a/API_DocTest/Form2.cs b/API_DocTest/Form2.cs new file mode 100644 index 000000000..b3f29b6f9 --- /dev/null +++ b/API_DocTest/Form2.cs @@ -0,0 +1,176 @@ +using Newtonsoft.Json.Linq; +using Syncfusion.Windows.Forms.PdfViewer; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Data.SqlClient; +using System.Drawing; +using System.IO; +using System.Linq; +using System.Net.Http; +using System.Net.Http.Headers; +using System.Text; +using System.Threading.Tasks; +using System.Web.UI.Design; +using System.Windows.Forms; + +namespace API_DocTest +{ + public partial class Form2 : Form + { + static string connectionstring = Properties.Settings.Default.ConnectionString; + static readonly string ApiUrl = Properties.Settings.Default.DogGenURI; + static readonly string token = Properties.Settings.Default.Token; + private string path = Properties.Settings.Default.PathUser.Replace("[userid]", Environment.UserName); + + public Form2() + { + InitializeComponent(); + } + + private void Form2_Load(object sender, EventArgs e) + { + string lickey = "MzYzODg2NkAzMjM4MmUzMDJlMzBTOWljRmxNelA1d1VGOHpGR0lxQzB6UTAwKzIxK2VBNEhBZFp5alcxb1NVPQ=="; + Syncfusion.Licensing.SyncfusionLicenseProvider.RegisterLicense(lickey); + if (!System.IO.Directory.Exists(path)) { System.IO.Directory.CreateDirectory(path); } + label1.Text = "JSON-Pfad: " + path; + Refresh_Filelist(); + + } + + private void Refresh_Filelist() + { + listBox1.Items.Clear(); + DirectoryInfo d = new DirectoryInfo(path); //Assuming Test is your Folder + + FileInfo[] Files = d.GetFiles("*.json"); //Getting Text files + string str = ""; + + foreach (FileInfo file in Files) + { + listBox1.Items.Add(file.Name); + } + + } + + private void button3_Click(object sender, EventArgs e) + { + if (radioButton1.Checked) { connectionstring = Properties.Settings.Default.ConnectionString; } + if (radioButton2.Checked) { connectionstring = Properties.Settings.Default.ConnectionStringPrd; } + string key = txtfilekey.Text.Trim(); + if (key == "") { MessageBox.Show("ESS_Key fehlt");return; } + + string json = null; + using (SqlConnection con = new SqlConnection(connectionstring)) + using (SqlCommand cmd = new SqlCommand( + "SELECT JavaScriptObject FROM ProvDokuments WHERE ProvDokumentid = @key", con)) + { + cmd.Parameters.AddWithValue("@key", key); + con.Open(); + json = cmd.ExecuteScalar()?.ToString(); + } + if (string.IsNullOrEmpty(json)) { MessageBox.Show("Eintrag mit dem Schlüssel '" + txtfilekey.Text + "' ist nicht vorhanden.","Laden",MessageBoxButtons.OK,MessageBoxIcon.Error);return; } + if (string.IsNullOrEmpty(txtfilename.Text.Trim()) || txtfilename.Text=="") { txtfilename.Text=txtfilekey.Text; } + System.IO.File.WriteAllText(path + txtfilename.Text + ".json", json); + + Refresh_Filelist(); + foreach(string s in listBox1.Items) + { + if (s == txtfilename.Text+".json") { listBox1.SelectedItem = s; + txtfilekey.Text = ""; + txtfilename.Text = ""; + + return; } + } + txtfilekey.Text = ""; + txtfilename.Text = ""; + } + + private void button5_Click(object sender, EventArgs e) + { + try + { + string filename = path + listBox1.SelectedItem.ToString(); + byte[] byteArray = Generate(System.IO.File.ReadAllText(filename)); + string temp_inBase64 = Convert.ToBase64String(byteArray); + var stream = new MemoryStream(Convert.FromBase64String(temp_inBase64)); + if (stream.Length > 0) + { + this.pdfViewerControl1.Load(stream); + this.pdfViewerControl1.Visible = true; + pdfViewerControl1.ZoomMode = ZoomMode.FitWidth; + + } + else + { + + } + } + catch (Exception ex) { MessageBox.Show("Fehler beim Generieren." +ex.Message, "Generieren", MessageBoxButtons.OK, MessageBoxIcon.Error); } + } + + public static byte[] Generate(string json) + { + + try + { + using (var client = new HttpClient()) + { + // 🔐 Bearer Token + + client.DefaultRequestHeaders.Accept.Clear(); + client.DefaultRequestHeaders.Accept.Add( + new MediaTypeWithQualityHeaderValue("application/json")); + client.DefaultRequestHeaders.Authorization = + new AuthenticationHeaderValue("Bearer", token); + + var content = new StringContent( + json, + Encoding.UTF8, + "application/json"); + + var response = client.PostAsync(ApiUrl, content).Result; + + var responseText = response.Content.ReadAsStringAsync().Result; + + if (!response.IsSuccessStatusCode) + { + // optional: Logging + return null; + } + + var jsonResult = JObject.Parse(responseText); + + var base64Pdf = jsonResult["file"]?.ToString(); + + if (string.IsNullOrEmpty(base64Pdf)) + return null; + + return Convert.FromBase64String(base64Pdf); + } + } + catch (Exception ex) + { + // Logging + return null; + } + } + + private void button1_Click(object sender, EventArgs e) + { + try + { + if (File.Exists(path + listBox1.SelectedItem.ToString())) + { + System.IO.File.Delete(path + listBox1.SelectedItem.ToString()); + Refresh_Filelist(); + } + } + catch(Exception ex) + { + MessageBox.Show("Beim Löschen ist ein Fehler aufgetreten:" + ex.Message, "Löschen", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } +} diff --git a/API_DocTest/Form2.resx b/API_DocTest/Form2.resx new file mode 100644 index 000000000..fbcd0678e --- /dev/null +++ b/API_DocTest/Form2.resx @@ -0,0 +1,925 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABVTeXN0ZW0uRHJh + d2luZy5Qb2ludEYCAAAAAXgBeQAACwsCAAAAAAAAAAAAAAAL + + + + 17, 17 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADa + BwAAAk1TRnQBSQFMAwEBAAEgAQABIAEAARABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA + AUADAAEQAwABAQEAAQgGAAEEGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA + AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA + AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm + AwABmQMAAcwCAAEzAwACMwIAATMBZgIAATMBmQIAATMBzAIAATMB/wIAAWYDAAFmATMCAAJmAgABZgGZ + AgABZgHMAgABZgH/AgABmQMAAZkBMwIAAZkBZgIAApkCAAGZAcwCAAGZAf8CAAHMAwABzAEzAgABzAFm + AgABzAGZAgACzAIAAcwB/wIAAf8BZgIAAf8BmQIAAf8BzAEAATMB/wIAAf8BAAEzAQABMwEAAWYBAAEz + AQABmQEAATMBAAHMAQABMwEAAf8BAAH/ATMCAAMzAQACMwFmAQACMwGZAQACMwHMAQACMwH/AQABMwFm + AgABMwFmATMBAAEzAmYBAAEzAWYBmQEAATMBZgHMAQABMwFmAf8BAAEzAZkCAAEzAZkBMwEAATMBmQFm + AQABMwKZAQABMwGZAcwBAAEzAZkB/wEAATMBzAIAATMBzAEzAQABMwHMAWYBAAEzAcwBmQEAATMCzAEA + ATMBzAH/AQABMwH/ATMBAAEzAf8BZgEAATMB/wGZAQABMwH/AcwBAAEzAv8BAAFmAwABZgEAATMBAAFm + AQABZgEAAWYBAAGZAQABZgEAAcwBAAFmAQAB/wEAAWYBMwIAAWYCMwEAAWYBMwFmAQABZgEzAZkBAAFm + ATMBzAEAAWYBMwH/AQACZgIAAmYBMwEAA2YBAAJmAZkBAAJmAcwBAAFmAZkCAAFmAZkBMwEAAWYBmQFm + AQABZgKZAQABZgGZAcwBAAFmAZkB/wEAAWYBzAIAAWYBzAEzAQABZgHMAZkBAAFmAswBAAFmAcwB/wEA + AWYB/wIAAWYB/wEzAQABZgH/AZkBAAFmAf8BzAEAAcwBAAH/AQAB/wEAAcwBAAKZAgABmQEzAZkBAAGZ + AQABmQEAAZkBAAHMAQABmQMAAZkCMwEAAZkBAAFmAQABmQEzAcwBAAGZAQAB/wEAAZkBZgIAAZkBZgEz + AQABmQEzAWYBAAGZAWYBmQEAAZkBZgHMAQABmQEzAf8BAAKZATMBAAKZAWYBAAOZAQACmQHMAQACmQH/ + AQABmQHMAgABmQHMATMBAAFmAcwBZgEAAZkBzAGZAQABmQLMAQABmQHMAf8BAAGZAf8CAAGZAf8BMwEA + AZkBzAFmAQABmQH/AZkBAAGZAf8BzAEAAZkC/wEAAcwDAAGZAQABMwEAAcwBAAFmAQABzAEAAZkBAAHM + AQABzAEAAZkBMwIAAcwCMwEAAcwBMwFmAQABzAEzAZkBAAHMATMBzAEAAcwBMwH/AQABzAFmAgABzAFm + ATMBAAGZAmYBAAHMAWYBmQEAAcwBZgHMAQABmQFmAf8BAAHMAZkCAAHMAZkBMwEAAcwBmQFmAQABzAKZ + AQABzAGZAcwBAAHMAZkB/wEAAswCAALMATMBAALMAWYBAALMAZkBAAPMAQACzAH/AQABzAH/AgABzAH/ + ATMBAAGZAf8BZgEAAcwB/wGZAQABzAH/AcwBAAHMAv8BAAHMAQABMwEAAf8BAAFmAQAB/wEAAZkBAAHM + ATMCAAH/AjMBAAH/ATMBZgEAAf8BMwGZAQAB/wEzAcwBAAH/ATMB/wEAAf8BZgIAAf8BZgEzAQABzAJm + AQAB/wFmAZkBAAH/AWYBzAEAAcwBZgH/AQAB/wGZAgAB/wGZATMBAAH/AZkBZgEAAf8CmQEAAf8BmQHM + AQAB/wGZAf8BAAH/AcwCAAH/AcwBMwEAAf8BzAFmAQAB/wHMAZkBAAH/AswBAAH/AcwB/wEAAv8BMwEA + AcwB/wFmAQAC/wGZAQAC/wHMAQACZgH/AQABZgH/AWYBAAFmAv8BAAH/AmYBAAH/AWYB/wEAAv8BZgEA + ASEBAAGlAQADXwEAA3cBAAOGAQADlgEAA8sBAAOyAQAD1wEAA90BAAPjAQAD6gEAA/EBAAP4AQAB8AH7 + Af8BAAGkAqABAAOAAwAB/wIAAf8DAAL/AQAB/wMAAf8BAAH/AQAC/wIAA/8BABAXMAAQFzAAAhcNAAEX + MAACFwEAAhcKAAEXMAACFwEAAxcGAAIXAQABFzAAAhcDAAIXBAABFwEAARYBAAEXMAACFwQAARcBFgYX + AQABFzAAAhcFAAEXAQABFwUAARcwAAIXBQACFwYAARcwAAIXBgABFwYAARcwAAIXBQACFwYAARcwAAIX + BQACFwYAARcwAAIXBQACFwYAARcwAAIXBgABFwYAARcwABAXMAAQFzAAAUIBTQE+BwABPgMAASgDAAFA + AwABEAMAAQEBAAEBBQABgBcAA/8RAAE/Af4GAAEnAf4GAAEjAfIGAAE5AeoGAAE8AQIGAAE+Ab4GAAE+ + AX4GAAE/AX4GAAE+AX4GAAE+AX4GAAE+AX4GAAE/AX4WAAs= + + + + + + AAABAAUAAAAAAAEAGAAEewAAVgAAADAwAAABABgAqBwAAFp7AAAgIAAAAQAYAKgMAAACmAAAGBgAAAEA + GABIBwAAqqQAABAQAAABABgAaAMAAPKrAACJUE5HDQoaCgAAAA1JSERSAAABAAAAAQAIBgAAAFxyqGYA + AHrLSURBVHja7L0HvGVVeTf8X/uUe+8UhmGYYYZeFVGCiGDB8tmxxJioiS3R5LNgosZXk/dn3nx5S94v + xjTfaNBgS0RFVKo4BZCBoSggSIdpDFOZduf2etpe73pW22vXs8+55w4I++E33HP22WWttdfzX09bz8NQ + UEEFPWeJPd0NKKiggp4+KgCgoIKew1QAQEEFPYepAIDDSBu27+HjtRa4VwZjZcBjaPk+uP6dMfNXf6Af + 5EcmvzDxnYlr1HHu/G5OZ/AQuVQeZep76G2r43QW57Ip9iIuf3PPD08Tcz/1mcv2cvPZ3iZyTWSmRSee + Pd/8MX3Uh5i9c3C/qvj6ihOOLubwHKgYvMNEa7fs4HunZoHKADyvD4LvBTN7aAmO5SzMbMSAzlwPkQIH + 9SPneZ7c2UvmCdcZMHEwInQuS/hsICHp4cHv4dYl3ZdJEOCxxjHR+X7u45SFZQECxxTzuEsqBu4w0Oot + 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 + AWlSAWlSAWlSAWlSAWlSAWlSAWlSAWlSAWlSAWlSAWlSAWlSAWlSAWlSAWhSAWdTAQAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGpaF2hSAGhS + AGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhS + AGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAHZnKWhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhS + AGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIp9RmhSAGhSAGhSAGhSAGhSAGhS + AGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGlSAGhT + AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAIl9R2hSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhSAGhS + AGhSAGhSAGhSAGhSAGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIl9R2hRAGhRAGhRAGhSAGhTAGhTAGhRAGhRAGhRAGhR + AGhRAGhRAGhRAGhRAGhRAGhRAGhRAGhRAGhSAGhSAGhSAGhSAGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAI2ARGxXAWxX + AWxXAW1XAW1XAW1XAWxXAWxXAWxXAWxXAWxXAWxXAWxXAWxXAWxXAWxXAWxXAWxXAWpTAGhSAGhSAGhS + AGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAObaperbm+va + merbm+vbm+vbm+zbnevbmsKrUaGEFaGEFaGEFaGDFaGDFaGDFaGEFaGEFaGEFaGEFaGEFaGEFaGEFaGE + FaGEFaGEFaGEFaCEFXZeBWdTAGhTAGhSAGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAOfan+3ble7alO3ble3ble3cle7blezbk8SsTaOFFKOFFKOFFKOFFKOFFKOF + FKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKSFFKKFFXdfBWdTAGhSAGhSAGhSAGhSAGlSAGhT + AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOfaoOzble3blOzble3ble3cle7b + lezbk8SsTaOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKSFFKKF + FXdfBWdTAGhSAGhSAGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAOfaoOzble3blOzble3ble3cle7blezbk8SsTaOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOF + FKOFFKOFFKOFFKOFFKOFFKOFFKSFFKKFFXdfBWdTAGhSAGhSAGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOfaoOzble3blOzble3ble3cle7blezbk8SsTaOFFKOF + FKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKSFFKKFFXdfBWdTAGhSAGhS + AGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOfaoOzble3b + lOzble3ble3cle7blezbk8SsTaOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOF + FKOFFKOFFKSFFKKFFXdfBWdTAGhSAGhSAGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAOfaoOzble3blOzble3ble3cle7blezbk8SsTaOFFKOFFKOFFKOFFKOFFKOF + FKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKSFFKKFFXdfBWdTAGhSAGhSAGhSAGhSAGlSAGhT + AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOfaoOzble3blOzble3ble3ble7b + lezbk8SsTaOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKSFFKKF + FXdfBWdTAGhSAGhSAGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAOfaoOzble3blOzble3ble3cle7blezbk8SsTaOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOF + FKOFFKOFFKOFFKOFFKOFFKOFFKSFFKKFFXdfBWdTAGhSAGhSAGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOnaoO7ble7blO3ble3ble3ble7blezbk8SsTaOFFKOF + FKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKSFFKKFFXdfBWdTAGhSAGhS + AGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOnaoO7ble7a + lO3ble3ble3cle7blezbk8SsTaOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOGE6OFFKOFFKOFFKOF + FKOFFKOFFKSFFKKFFXdfBWdTAGhSAGhSAGhSAGhSAGlSAGhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAOnaoO7blO7alO3ble3ble3ble7blezbk8SsTaOFFKOFFKOFFKOFFKOFFKOF + FKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKKFFXdfBWdTAGhTAGhSAGhSAGhSAGlSAGhT + AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOnZoO7blOzalOzble3clOzcle3c + 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 + AGhSAGhSAGpTAWhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOfZn+zble7b + k+zble3ble3blu7bluzbksSsTaOFFKOFFKOFFKOFFKOFFKSFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOF + FKOFFKOFFKSFFKKFFXhfBWdTAGhSAGhSAGhSAGhSAGpTAWhTAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAOfZoO3ble3bk+zble3ble3ble7bluzbksOsTqKFFaOFFaOFFaOFFKOFFKOF + FKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKSFFKKFFXhfBWdTAGhSAGhSAGhSAGhSAGpTAWlT + AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOHRoePNiOPNhePNhuTOh+TOhuTP + hePOhdnAcNC1X9C2Xa2PJaSFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKOFFKSFFKKF + FXhfBWdTAGhSAGhSAGhSAGhSAGtSAWlTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAN/NleLIgODJgOHJgOHJgOHKf+DJgN/Jf9/Jf+HJfK+TLKOFFKOFFKOGFKOFFKOFFKOFFKOF + FKOFFKOFFKOFFKOFFKOFFKOFFKSFFKKFFXdfBWdTAGhSAGhSAGhSAGhSAGpSAWhTAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANzMlt/JgeHKfuHJf+DJgOHJf+DJfuHJgOLI + fa+TL6SGGKSGGKSGGKSGGKSGGKSGGKSGGKSGGKSGGKSGGKSGGKSGGKSGGKSGGKKGGXhhDWhVCWlVCmlV + CWlVCWlVCWtVC2lWCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AN7NluLJguHJgOHKf+DKfuHKfuDKfuDJfufTh+vVievWievWiuvWievWievWievWievWievWievWievW + ievWievWiezWierViwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN3NleLJgeHKfuDKfuHKfuHKfuHKfurXj+3Zle3Zlu3Z + lu3Zle3Zle3Zle3Zle3Zle3Zle3Zle3Zle3Zle3Zle3ZlevZlwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN7Ml+DJ + geHKfuDKfuDKfuDKfurXj+zalezalezalezalezalezalezalezalezalezalezalezalezale3alera + lgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAN3Mld/IgeDIgODJgODKf+rWkOzalOzalOzalOzalOzalOzalOza + lOzalOzalOzalOzalOzalOzalO3alOvalgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN7Mld/IgeDJgODK + f+rWkOzalOzalOzalezalOzalOzalOzalOzalOzalOzalOzalOzalOzalO3alOvalgAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAANzKlODJguDJgOrXkOzalOzalOzalOzalOzalOzalOzalOzalOzalOzalOza + lOzalOzalO3alOvalgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANvMld/JgenXkOvbk+vblOvb + lOvblOvblOvblOvblOvblOvblOvblOvblOvblOvblOzblOrblQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAANvNlOnXkuzalevalOzblOzalOzalOvalevalOzalOzalezalevalevalevblevalOna + lwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///////wAA//wAAAB/AAD//AAAAH8AAP/8AAAAfwAA//wAAAB/AAD//AAAAH8AAP/8 + AAAAfwAA//wAAAB/AAD//AAAAH8AAPwAAAAAfwAA/AAAAAB/AAD8AAAAAH8AAPwAAAAAfwAA/AAAAAB/ + AAD8AAAAAH8AAPwAAAAAfwAA/AAAAAB/AAD8AAAAAH8AAPwAAAAAfwAA/AAAAAB/AAD8AAAAAH8AAPwA + AAAAfwAA/AAAAAB/AAD8AAAAAH8AAPwAAAAAfwAA/AAAAAB/AAD8AAAAAH8AAPwAAAAAfwAA/AAAAAB/ + AAD8AAAAAH8AAPwAAAAAfwAA/AAAAAB/AAD8AAAAAH8AAPwAAAAAfwAA/AAAAAB/AAD8AAAAAH8AAPwA + AAAAfwAA/gAAAAB/AAD/AAAAAH8AAP+AAAB//wAA/8AAAH//AAD/4AAAf/8AAP/wAAB//wAA//gAAH// + AAD//AAAf/8AAP/+AAB//wAA//8AAH//AAD///////8AACgAAAAgAAAAQAAAAAEAGAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoVg1pVg1pVw1pVw1pVg1p + Vg1pVg1pVg1pVg1pVg1pVg1pVg1pVg1pVg1pVg1pVg1qVw8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAABpUQFpUQFpUgBpUgBpUgFpUgFpUgFpUgFpUgFpUgFpUgFpUgFpUgFp + UgFpUgFpUgFoUgFrVQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoUgBo + UgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBpUgBrVgwAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBo + UgBoUgBoUgBoUgBoUgBoUgBoUgBpUgBqVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAACLf0poUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBoUgBpUgBr + VgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACOgUlrVQBrVQBrVQBrVQBrVQBr + VQBrVQBrVQBrVQBrVQBrVQBrVQBpUwBoUgBoUgBoUgBpUgBqVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADo2qDs25fs25ns25nt25nQu2eihBWihBWihBWihBWihBWihBWihBWihBWihBWihBWihBWhhBVxWwNo + UwBoUgBoUgBpUgBrVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADp2p3t25Tt25Xt25Xt25XRvGWjhRSj + hRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSkhRSjhRVyWwNoUwBoUgBoUgBpUgBqVgwAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADp2p3t25Pt25Xt25Xt25XRu2WjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSj + hRSkhRSjhRVyWwNoUwBoUgBoUgBpUgBrVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADp2p3t25Tt25Xt + 3JXt25XRu2WjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSkhRSjhRVyWwNoUwBoUgBoUgBpUgBq + VgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADp2p3t25Tt25Xt25Xt25XRvGWjhRSjhRSjhRSjhRSjhRSj + hRSjhRSjhRSjhRSjhRSkhRSjhRVyWwNoUwBoUgBoUgBpUgBrVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADq2p3t25Pt25Xt25Xt25XRu2WjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSkhRSjhRVyWwNo + UwBoUgBoUgBpUgBqVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADr2p3u25Pt25Xt25Xt25XRu2WjhRSj + hhSjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhhSkhRSjhRVyWwNoUwBoUgBoUgBpUgBqVgwAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADr2p3u25Pt25Xt25Xt25XRu2WjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSj + hRSjhRSihRVyWwNoUwBoUgBoUgBpUgBqVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADr2p3s25Tt25Tt + 3JXt25TRu2WjhRWjhRSihRSjhROjhRSjhRSjhRSihRSjhRSjhROjhRSihRVyWwRoUwFoUwBpUgFpUgBr + VgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADq25zv36j068ny6sbs3aDTvmrOwY2niyXKvIOwmD/Rw5DQ + wo+/rWejhhijhhnBsW/KvIKslDdzXAecjl6nmnBnUwJpUgBrVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADq4rb9/fv7+fL8+/f7+vTTw4H///+rlTzy8Oi8qWf////g2b749vHVyp/Pwo/y8OXc07P29e6xpnvw + 7+qzqYNnUwNpUwBrVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD08eX6+O7s3Jfr3aD9/frd07P///+2 + pV/49/K7qGX///+5pVbAsG36+fPXz63p48/HuoH+/f3EvJ/g3dGHeT5oUgJpUwBrVgwAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADz8eP7+fLr3Z/t36j9/fvb0Knn4czh2b7f2LmmjjD///+5pVnKvoj29Oypkzbc + 07Hl38bAsXF7ZxrGwKXJxKxpUgRpUwFrVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADq36/8+/X+/fz+ + /v759urRvW2ihRSkhRSjhROjhx3////08un9/PvCsXKjhRSjhROihhSjhRVyWwRoUwFoUwFpUgFpUwFq + VgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADq2pvr25rv5LTv47Dt25fRvGSjhRSjhhSjhRSkhha5pFa4 + olSpkDCjhRSjhRSjhRSjhRSjhRVyWwNoUwBoUgBoUgBpUwFqVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADp25zt25Pu25Xt3JXt25XRvGSjhRSjhRSjhRSjhRSjhRSjhROkhRSjhRSjhRSjhRSkhRSjhRVyWwNo + UwBoUgBoUgBpUwFqVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADp2pzt25Pt25Xt25Xt25XRvGSjhRSj + hRSjhRSjhRSkhRSjhRSkhRSjhRSjhRSjhRSkhRSjhRVyWwNoUwBoUgBoUgBpUwFqVgwAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADp2pzt25Pt25Xt25Xu25XRvGSjhRWjhRWjhRSjhRSjhRSjhRSjhRSjhRSjhRSj + hRSkhRSjhRVyWwNoUwBoUgBoUgBpUwFrVgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADh0JnjzIPizIXj + zIXjzYPexnnVvGm7nz2jhRSjhRSjhRSjhRSjhRSjhRSjhRSjhRSkhRSjhRVyWwNoUwBoUgBoUgBqUwFq + VQsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADezJDgyX/hyX/hyX/gyX/hyX7ApUekhhekhhekhhek + hhekhhekhhekhhekhhekhhejhhdyXAlpVQZpVAZpVAZqVQdqWBIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAADgzJHhyYDhyn7hyn7gyn7m0Ybs143s143s143s143s143s143s143s143s143r144AAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgzJHgyX/gyn7gyn7n + 0ons2ZXs2pXs2pXs2pXs2pXs2pXs2pXs2pXs2ZXr2pYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADey5DfyIDgyn/m0ors2pTs2pTs2pTs2pTs2pTs2pTs2pTs + 2pTs2pTr2pUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAADdy5DgyYDm0ors2pTs2pTs2pTs2pTs2pTs2pTs2pTs2pTs2pTr2pUAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADczI/m0ovr25Tr25Tr25Tr + 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 + rEHwH6xB/B+sQQ== + + + \ No newline at end of file diff --git a/API_DocTest/Program.cs b/API_DocTest/Program.cs index 03bbc9f31..4b0cccdf2 100644 --- a/API_DocTest/Program.cs +++ b/API_DocTest/Program.cs @@ -16,7 +16,14 @@ namespace API_DocTest { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new Form1()); + if (Properties.Settings.Default.Testumgebung == "Fachuser") + { + Application.Run(new Form2()); + } + else + { + Application.Run(new Form1()); + } } } } diff --git a/API_DocTest/Properties/Resources.Designer.cs b/API_DocTest/Properties/Resources.Designer.cs index 5cbba69ca..2a4490617 100644 --- a/API_DocTest/Properties/Resources.Designer.cs +++ b/API_DocTest/Properties/Resources.Designer.cs @@ -1,71 +1,83 @@ //------------------------------------------------------------------------------ // // Dieser Code wurde von einem Tool generiert. -// Laufzeitversion: 4.0.30319.42000 +// Laufzeitversion:4.0.30319.42000 // -// Änderungen an dieser Datei können fehlerhaftes Verhalten verursachen und gehen verloren, wenn -// der Code neu generiert wird. +// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +// der Code erneut generiert wird. // //------------------------------------------------------------------------------ -namespace API_DocTest.Properties -{ - - +namespace API_DocTest.Properties { + using System; + + /// /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. /// - // Diese Klasse wurde von der StronglyTypedResourceBuilder-Klasse - // über ein Tool wie ResGen oder Visual Studio automatisch generiert. + // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen - // mit der Option /str erneut aus, oder erstellen Sie Ihr VS-Projekt neu. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "18.0.0.0")] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources - { - + internal class Resources { + private static global::System.Resources.ResourceManager resourceMan; - + private static global::System.Globalization.CultureInfo resourceCulture; - + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() - { + internal Resources() { } - + /// /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager - { - get - { - if ((resourceMan == null)) - { + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("API_DocTest.Properties.Resources", typeof(Resources).Assembly); resourceMan = temp; } return resourceMan; } } - + /// /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle - /// Ressourcenlookups, die diese stark typisierte Ressourcenklasse verwenden. + /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture - { - get - { + internal static global::System.Globalization.CultureInfo Culture { + get { return resourceCulture; } - set - { + set { resourceCulture = value; } } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap PDF_128 { + get { + object obj = ResourceManager.GetObject("PDF_128", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap PDF_256 { + get { + object obj = ResourceManager.GetObject("PDF_256", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } } } diff --git a/API_DocTest/Properties/Resources.resx b/API_DocTest/Properties/Resources.resx index af7dbebba..952403c5f 100644 --- a/API_DocTest/Properties/Resources.resx +++ b/API_DocTest/Properties/Resources.resx @@ -46,7 +46,7 @@ mimetype: application/x-microsoft.net.object.binary.base64 value : The object must be serialized with - : System.Serialization.Formatters.Binary.BinaryFormatter + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter : and then encoded with base64 encoding. mimetype: application/x-microsoft.net.object.soap.base64 @@ -60,6 +60,7 @@ : and then encoded with base64 encoding. --> + @@ -68,9 +69,10 @@ - + + @@ -85,9 +87,10 @@ - + + @@ -109,9 +112,16 @@ 2.0 - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ..\Resources\PDF_256.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\PDF_128.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + \ No newline at end of file diff --git a/API_DocTest/Properties/Settings.Designer.cs b/API_DocTest/Properties/Settings.Designer.cs index fe984a0de..daeb3a3ac 100644 --- a/API_DocTest/Properties/Settings.Designer.cs +++ b/API_DocTest/Properties/Settings.Designer.cs @@ -12,7 +12,7 @@ namespace API_DocTest.Properties { [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.10.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.14.0.0")] internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); @@ -64,7 +64,7 @@ namespace API_DocTest.Properties { [global::System.Configuration.UserScopedSettingAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("x:\\")] + [global::System.Configuration.DefaultSettingValueAttribute("x:\\jsonfiles\\")] public string tempdir { get { return ((string)(this["tempdir"])); @@ -73,5 +73,42 @@ namespace API_DocTest.Properties { this["tempdir"] = value; } } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Fachuser")] + public string Testumgebung { + get { + return ((string)(this["Testumgebung"])); + } + set { + this["Testumgebung"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("data source=shu01\\shu00;initial catalog=edoka_dms;packet size=4096;user id=sa;pas" + + "sword=*shu29")] + public string ConnectionStringPrd { + get { + return ((string)(this["ConnectionStringPrd"])); + } + set { + this["ConnectionStringPrd"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("x:\\jsonfiles\\[userid]\\")] + public string PathUser { + get { + return ((string)(this["PathUser"])); + } + set { + this["PathUser"] = value; + } + } } } diff --git a/API_DocTest/Properties/Settings.settings b/API_DocTest/Properties/Settings.settings index f5c6fe1d7..ce04d8b4a 100644 --- a/API_DocTest/Properties/Settings.settings +++ b/API_DocTest/Properties/Settings.settings @@ -12,7 +12,16 @@ pZkuG6l6ORCEckqQimPK58PO1A9EnkMtL5oCgRX9WiWnD4xeH7ikGzhWnTBy/vk8J4Iiz8gCSx9uFHA4+DvITG0roO97sk82d/0BCjVlwLWINpXlJfGYEF3X96AdoCQvb3ruwv/tVqEHsSU5aNfyxBAe+EhLTHQ8t7ysgJZWh98= - x:\ + x:\jsonfiles\ + + + Fachuser + + + data source=shu01\shu00;initial catalog=edoka_dms;packet size=4096;user id=sa;password=*shu29 + + + x:\jsonfiles\[userid]\ \ No newline at end of file diff --git a/API_DocTest/Resources/PDF_128.png b/API_DocTest/Resources/PDF_128.png new file mode 100644 index 000000000..850c20cc4 Binary files /dev/null and b/API_DocTest/Resources/PDF_128.png differ diff --git a/API_DocTest/Resources/PDF_256.png b/API_DocTest/Resources/PDF_256.png new file mode 100644 index 000000000..3e7e2eb7b Binary files /dev/null and b/API_DocTest/Resources/PDF_256.png differ diff --git a/API_DocTest/bin/Debug/APIDocTest.zip b/API_DocTest/bin/Debug/APIDocTest.zip index cd55c5819..56b581102 100644 Binary files a/API_DocTest/bin/Debug/APIDocTest.zip and b/API_DocTest/bin/Debug/APIDocTest.zip differ diff --git a/API_DocTest/bin/Debug/API_DocTest.exe b/API_DocTest/bin/Debug/API_DocTest.exe index 912058293..052d3da2c 100644 Binary files a/API_DocTest/bin/Debug/API_DocTest.exe and b/API_DocTest/bin/Debug/API_DocTest.exe differ diff --git a/API_DocTest/bin/Debug/API_DocTest.exe.config b/API_DocTest/bin/Debug/API_DocTest.exe.config index 804946429..6358e2878 100644 --- a/API_DocTest/bin/Debug/API_DocTest.exe.config +++ b/API_DocTest/bin/Debug/API_DocTest.exe.config @@ -22,6 +22,15 @@ x:\jsonfiles\ + + Fachuser + + + data source=shu01\shu00;initial catalog=edoka_dms;packet size=4096;user id=sa;password=*shu29 + + + x:\jsonfiles\[userid]\ + \ No newline at end of file diff --git a/API_DocTest/bin/Debug/API_DocTest.pdb b/API_DocTest/bin/Debug/API_DocTest.pdb index 1ff047df8..5e0353d17 100644 Binary files a/API_DocTest/bin/Debug/API_DocTest.pdb and b/API_DocTest/bin/Debug/API_DocTest.pdb differ diff --git a/API_DocTest/obj/Debug/API_DocTest.Form1.resources b/API_DocTest/obj/Debug/API_DocTest.Form1.resources index 24e87724b..16fa6123d 100644 Binary files a/API_DocTest/obj/Debug/API_DocTest.Form1.resources and b/API_DocTest/obj/Debug/API_DocTest.Form1.resources differ diff --git a/API_DocTest/obj/Debug/API_DocTest.Form2.resources b/API_DocTest/obj/Debug/API_DocTest.Form2.resources new file mode 100644 index 000000000..243416a5b Binary files /dev/null and b/API_DocTest/obj/Debug/API_DocTest.Form2.resources differ diff --git a/API_DocTest/obj/Debug/API_DocTest.Properties.Resources.resources b/API_DocTest/obj/Debug/API_DocTest.Properties.Resources.resources index 6c05a9776..04cf0ebc2 100644 Binary files a/API_DocTest/obj/Debug/API_DocTest.Properties.Resources.resources and b/API_DocTest/obj/Debug/API_DocTest.Properties.Resources.resources differ diff --git a/API_DocTest/obj/Debug/API_DocTest.csproj.AssemblyReference.cache b/API_DocTest/obj/Debug/API_DocTest.csproj.AssemblyReference.cache index 4257b7ba2..e71eb3ba3 100644 Binary files a/API_DocTest/obj/Debug/API_DocTest.csproj.AssemblyReference.cache and b/API_DocTest/obj/Debug/API_DocTest.csproj.AssemblyReference.cache differ diff --git a/API_DocTest/obj/Debug/API_DocTest.csproj.CoreCompileInputs.cache b/API_DocTest/obj/Debug/API_DocTest.csproj.CoreCompileInputs.cache index e424b0810..846f29dca 100644 --- a/API_DocTest/obj/Debug/API_DocTest.csproj.CoreCompileInputs.cache +++ b/API_DocTest/obj/Debug/API_DocTest.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -231eb6dfb1d673903f7a0f7b1e3012b6598e60cacbbf46e87068a618e2f37da1 +71cb0a6f2f19e48b875757deabbf46959323fd7b32f4627c89655d86dbc06b54 diff --git a/API_DocTest/obj/Debug/API_DocTest.csproj.FileListAbsolute.txt b/API_DocTest/obj/Debug/API_DocTest.csproj.FileListAbsolute.txt index 58577c0d0..763e7629f 100644 --- a/API_DocTest/obj/Debug/API_DocTest.csproj.FileListAbsolute.txt +++ b/API_DocTest/obj/Debug/API_DocTest.csproj.FileListAbsolute.txt @@ -37,3 +37,4 @@ E:\Software-Projekte\OnDoc\OnDoc\API_DocTest\obj\Debug\API_DocTest.csproj.CoreCo E:\Software-Projekte\OnDoc\OnDoc\API_DocTest\obj\Debug\API_DocT.E6DB62E4.Up2Date E:\Software-Projekte\OnDoc\OnDoc\API_DocTest\obj\Debug\API_DocTest.exe E:\Software-Projekte\OnDoc\OnDoc\API_DocTest\obj\Debug\API_DocTest.pdb +E:\Software-Projekte\OnDoc\OnDoc\API_DocTest\obj\Debug\API_DocTest.Form2.resources diff --git a/API_DocTest/obj/Debug/API_DocTest.csproj.GenerateResource.cache b/API_DocTest/obj/Debug/API_DocTest.csproj.GenerateResource.cache index a48f7cca1..8da3879d4 100644 Binary files a/API_DocTest/obj/Debug/API_DocTest.csproj.GenerateResource.cache and b/API_DocTest/obj/Debug/API_DocTest.csproj.GenerateResource.cache differ diff --git a/API_DocTest/obj/Debug/API_DocTest.exe b/API_DocTest/obj/Debug/API_DocTest.exe index 912058293..052d3da2c 100644 Binary files a/API_DocTest/obj/Debug/API_DocTest.exe and b/API_DocTest/obj/Debug/API_DocTest.exe differ diff --git a/API_DocTest/obj/Debug/API_DocTest.pdb b/API_DocTest/obj/Debug/API_DocTest.pdb index 1ff047df8..5e0353d17 100644 Binary files a/API_DocTest/obj/Debug/API_DocTest.pdb and b/API_DocTest/obj/Debug/API_DocTest.pdb differ diff --git a/API_DocTest/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/API_DocTest/obj/Debug/DesignTimeResolveAssemblyReferences.cache index d99906715..ea04bd86c 100644 Binary files a/API_DocTest/obj/Debug/DesignTimeResolveAssemblyReferences.cache and b/API_DocTest/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/API_DocTest/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/API_DocTest/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache index 2ce6b9284..9ca50e06e 100644 Binary files a/API_DocTest/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache and b/API_DocTest/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/API_DocTest/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll b/API_DocTest/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll new file mode 100644 index 000000000..145e9930c Binary files /dev/null and b/API_DocTest/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll differ diff --git a/API_NetFramework/API_NetFramework.csproj b/API_NetFramework/API_NetFramework.csproj index d7f1c1eb9..666817f8d 100644 --- a/API_NetFramework/API_NetFramework.csproj +++ b/API_NetFramework/API_NetFramework.csproj @@ -268,13 +268,6 @@ - - DocTester.aspx - ASPXCodeBehind - - - DocTester.aspx - dt.aspx ASPXCodeBehind @@ -290,12 +283,19 @@ - - SelectTable.aspx + + CLM.aspx ASPXCodeBehind - - SelectTable.aspx + + CLM.aspx + + + JSONViewer.aspx + ASPXCodeBehind + + + JSONViewer.aspx @@ -318,7 +318,6 @@ - @@ -354,7 +353,8 @@ - + + Web.config diff --git a/API_NetFramework/App_Data/TableConfig.json b/API_NetFramework/App_Data/TableConfig.json index cac88e440..097a4483b 100644 --- a/API_NetFramework/App_Data/TableConfig.json +++ b/API_NetFramework/App_Data/TableConfig.json @@ -1,14 +1,5 @@ { "tables": [ - { - "key": "ProvDokuments", - "displayName": "ESS-Dokumente", - "sqlList": "SELECT ProvDokumentid as id, provDokumentID as Name FROM ProvDokuments order by erstelltam desc", - "sqlById": "SELECT JavaScriptObject as JsonData FROM ProvDokuments where provdokumentid=@id", - "idField": "Id", - "displayField": "ProvDokumentID", - "jsonField": "JsonData" - }, { "key": "Ondoc_Versandstrasse_Paket", "displayName": "Ondoc_Versandstrasse_Paket", @@ -16,7 +7,10 @@ "sqlById": "SELECT paket as JsonData from Ondoc_Versandstrasse_Paket where id= @id ", "idField": "ID", "displayField": "ID", - "jsonField": "JsonData" + "jsonField": "JsonData", + "Buttons": "Öffnen", + "AnzeigeDokument": "", + "FilterColumns": "" }, { "key": "NLOGApiDoc", @@ -25,7 +19,35 @@ "sqlById": "SELECT div as JsonData from edoka_journale.dbo.nlogapidoc where id= @id ", "idField": "ID", "displayField": "ID", - "jsonField": "JsonData" + "jsonField": "JsonData", + "Buttons": "Öffnen", + "AnzeigeDokument": "", + "FilterColumns": "GUID" + + }, + { + "key": "CLMDokumente", + "displayName": "CLM-Dokumente", + "sqlList": "SELECT ID, clmdokumentid as CLM_ID, GUID, Erstellt_Am, Aktiv, Archivstatus, Archiviert from ondoc_clm_dokumente [FILTER] order by Id desc", + "sqlById": "SELECT jsondata as JsonData from ondoc_clm_dokumente where id= @id ", + "idField": "ID", + "displayField": "ID", + "jsonField": "JsonData", + "Buttons": "Öffnen;Anzeigen", + "AnzeigeDokument": "SELECT dbo.BinaryToBase64(dokument) FROM dbo.OnDoc_CLM_Dokumente INNER JOIN dbo.Doks ON dbo.OnDoc_CLM_Dokumente.dokumentid = dbo.Doks.DokumentID where dbo.ondoc_clm_dokumente.id=@id", + "FilterColumns": "clmdokumentid;archivstatus" + }, + { + "key": "CLMJournal", + "displayName": "CLM-Journal", + "sqlList": "SELECT ID, clmdokumentid as CLM_ID, Dokumentid, GUID, Erstellt_Am, Aktiv, Archivstatus, Archiviert, Archiviert_am from ondoc_clm_dokumente [FILTER] order by Id desc", + "sqlById": " ", + "idField": "ID", + "displayField": "ID", + "jsonField": "", + "Buttons": "Anzeigen", + "AnzeigeDokument": "SELECT dbo.BinaryToBase64(dokument) FROM dbo.OnDoc_CLM_Dokumente INNER JOIN dbo.Doks ON dbo.OnDoc_CLM_Dokumente.dokumentid = dbo.Doks.DokumentID where dbo.ondoc_clm_dokumente.id=@id", + "FilterColumns": "clmdokumentid;archivstatus;dokumentid" } ] diff --git a/API_NetFramework/CLM.aspx b/API_NetFramework/CLM.aspx new file mode 100644 index 000000000..a42ad422f --- /dev/null +++ b/API_NetFramework/CLM.aspx @@ -0,0 +1,303 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CLM.aspx.cs" Inherits="WebApp.CLM" %> + + + + + <%--Daten & JSON Editor--%> + + + + + + + + + <%-- + --%> + + + + + + + + + CLM + + + + + + + + Generieren + + + + + + + + + + + + + + + + Tabellen & Datensätze + + + + + + + + + + + + + + + + + + + + + + +