update 20250406
This commit is contained in:
@@ -25,6 +25,7 @@ using Windows.Media.Capture;
|
||||
|
||||
namespace OnDoc.Versandstrasse
|
||||
{
|
||||
|
||||
public partial class Versandstrasse : SfForm
|
||||
{
|
||||
private List<Versandpaket> pakete = new List<Versandpaket>();
|
||||
@@ -32,6 +33,7 @@ namespace OnDoc.Versandstrasse
|
||||
private TreeNodeAdv currentSourceNode;
|
||||
private bool serienbrief = false;
|
||||
private serienbrief sb;
|
||||
private bool direktversenden = false;
|
||||
public Versandstrasse(List<Versandpaket> pakete)
|
||||
{
|
||||
InitializeComponent();
|
||||
@@ -95,17 +97,96 @@ namespace OnDoc.Versandstrasse
|
||||
{
|
||||
db.Get_Tabledata("Select bkpar00 from partner where nrpar00=" + pakete[i].partnernr.ToString(), false, true);
|
||||
DruckJob = new TreeNodeAdv();
|
||||
DruckJob.Text = "Druckpaket " + pakete[i].PaketNr.ToString()+" - " + db.dsdaten.Tables[0].Rows[0][0].ToString();
|
||||
DruckJob.Text = "Versand-Couvert - " + db.dsdaten.Tables[0].Rows[0][0].ToString();
|
||||
DruckJob.Tag = "Druckpaket";
|
||||
DruckJob.TagObject = pakete[i];
|
||||
|
||||
|
||||
set_nodeimage(DruckJob, 0);
|
||||
|
||||
treeViewAdv1.Nodes.Add(DruckJob);
|
||||
|
||||
PopulateDocs(pakete[i], ref DruckJob);
|
||||
}
|
||||
db = null;
|
||||
treeViewAdv1.ExpandAll();
|
||||
foreach (TreeNodeAdv node in treeViewAdv1.Nodes)
|
||||
{
|
||||
if (node.Level == 1) { Verify_Couvert(node); }
|
||||
}
|
||||
}
|
||||
|
||||
private void set_nodeimage(TreeNodeAdv node, int img)
|
||||
{
|
||||
node.LeftImageIndices = null;
|
||||
node.LeftImageIndices = new int[] { img };
|
||||
}
|
||||
|
||||
private void Verify_Couverts()
|
||||
{
|
||||
foreach (TreeNodeAdv node in treeViewAdv1.Nodes)
|
||||
{
|
||||
if (node.Level == 1) { Verify_Couvert(node); }
|
||||
}
|
||||
}
|
||||
private bool Verify_Couvert(TreeNodeAdv node)
|
||||
{
|
||||
Versandpaket vp = node.TagObject as Versandpaket;
|
||||
int currentbp = vp.partnernr;
|
||||
DB db = new DB(AppParams.connectionstring);
|
||||
//node.LeftImageIndices = new int[] { 0 };
|
||||
int nodecounter = 0;
|
||||
int anzbp = 1;
|
||||
|
||||
bool versandbereit = true;
|
||||
|
||||
foreach (TreeNodeAdv dokumentnode in node.Nodes)
|
||||
{
|
||||
//node.LeftImageIndices = new int[] { 0 };
|
||||
db.Get_Tabledata("SELECT dbo.dokument.nrpar00, dbo.dokument.dokumentid, isnull(dbo.dokumenttyp.Versandstrasse_moeglich,0) as vsm, isnull(dbo.dokumenttyp.versandstrasse_firstdoc,0) as firstdoc FROM dbo.dokument INNER JOIN " +
|
||||
" dbo.dokumenttyp ON dbo.dokument.dokumenttypnr = dbo.dokumenttyp.dokumenttypnr where dbo.dokument.dokumentid='" + dokumentnode.Tag + "'", false, true);
|
||||
//BP-Verifikation
|
||||
if (currentbp != Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["nrpar00"]))
|
||||
{
|
||||
currentbp = Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["nrpar00"]);
|
||||
anzbp = anzbp + 1;
|
||||
}
|
||||
|
||||
//Versandstrasse möglich
|
||||
if (Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["vsm"]) == 0)
|
||||
{
|
||||
set_nodeimage(dokumentnode, 0);
|
||||
|
||||
versandbereit = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["firstdoc"]) == 0)
|
||||
{
|
||||
if (nodecounter == 0) { set_nodeimage(dokumentnode, 4); }
|
||||
else
|
||||
{
|
||||
set_nodeimage(dokumentnode, 5);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
if (node.Nodes.Count == 0)
|
||||
{
|
||||
versandbereit = false;
|
||||
}
|
||||
nodecounter++;
|
||||
}
|
||||
if (node.Nodes.Count < 1) { versandbereit = false; }
|
||||
if (anzbp > 1) { versandbereit = false; }
|
||||
if (versandbereit == true)
|
||||
{
|
||||
set_nodeimage(node, 1);
|
||||
return true;
|
||||
} else
|
||||
{
|
||||
set_nodeimage(node, 0);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private void populate_serienbriefe()
|
||||
@@ -117,11 +198,13 @@ namespace OnDoc.Versandstrasse
|
||||
TreeNodeAdv tn = new TreeNodeAdv();
|
||||
tn.Text = dr["dokumentid"].ToString();
|
||||
tn.Tag = dr["dokument"].ToString();
|
||||
set_nodeimage(tn, 3);
|
||||
treeViewAdv1.Nodes[0].Nodes.Add(tn);
|
||||
}
|
||||
}
|
||||
private void PopulateDocs(Versandpaket paket, ref TreeNodeAdv parentnode)
|
||||
{
|
||||
DB db = new DB(AppParams.connectionstring);
|
||||
TreeNodeAdv dokumentnode;
|
||||
for (int i = 0; i < paket.Dokument.Count; i++)
|
||||
{
|
||||
@@ -129,6 +212,24 @@ namespace OnDoc.Versandstrasse
|
||||
dokumentnode.Text = paket.Dokument[i].Bezeichnung+" (" + paket.Dokument[i].Partnernr+")";
|
||||
dokumentnode.Tag = paket.Dokument[i].DokumentID;
|
||||
dokumentnode.TagObject= paket.Dokument[i];
|
||||
db.Get_Tabledata("SELECT dbo.dokument.dokumentid, isnull(dbo.dokumenttyp.Versandstrasse_moeglich,0) as vsm, isnull(dbo.dokumenttyp.versandstrasse_firstdoc,0) as firstdoc FROM dbo.dokument INNER JOIN " +
|
||||
" dbo.dokumenttyp ON dbo.dokument.dokumenttypnr = dbo.dokumenttyp.dokumenttypnr where dbo.dokument.dokumentid='" + dokumentnode.Tag + "'", false, true);
|
||||
|
||||
if (Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["firstdoc"]) == 0)
|
||||
{
|
||||
set_nodeimage(dokumentnode, 5);
|
||||
} else
|
||||
{
|
||||
set_nodeimage(dokumentnode, 3);
|
||||
}
|
||||
if (Convert.ToInt32(db.dsdaten.Tables[0].Rows[0]["vsm"]) ==0)
|
||||
{
|
||||
set_nodeimage(dokumentnode, 0);
|
||||
} else
|
||||
{
|
||||
//dokumentnode.LeftImageIndices = new int[] { 3};
|
||||
}
|
||||
|
||||
parentnode.Nodes.Add(dokumentnode);
|
||||
|
||||
}
|
||||
@@ -160,6 +261,8 @@ namespace OnDoc.Versandstrasse
|
||||
}
|
||||
}
|
||||
treeView.SelectedNode = sourceNode;
|
||||
Verify_Couverts();
|
||||
|
||||
}
|
||||
|
||||
private void treeViewAdv1_DragLeave(object sender, EventArgs e)
|
||||
@@ -422,6 +525,13 @@ namespace OnDoc.Versandstrasse
|
||||
}
|
||||
}
|
||||
|
||||
private void button3_Click(object sender, EventArgs e)
|
||||
{
|
||||
direktversenden = true;
|
||||
btnSendFinal_Click(sender, e);
|
||||
direktversenden = false;
|
||||
}
|
||||
|
||||
private void btnSendFinal_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (serienbrief)
|
||||
@@ -494,14 +604,29 @@ namespace OnDoc.Versandstrasse
|
||||
send_vs(ref vp);
|
||||
|
||||
}
|
||||
private void send_vs(ref Versandpaket vp, bool showmessage = true) {
|
||||
//vp.send_onbase_doc = true;
|
||||
private void send_vs(ref Versandpaket vp, bool showmessage = true, bool direktversenden = false) {
|
||||
string jsonstring = JsonConvert.SerializeObject(vp);
|
||||
|
||||
//vp.send_onbase_doc = true;
|
||||
if (!direktversenden)
|
||||
{
|
||||
|
||||
DB db = new DB(AppParams.connectionstring);
|
||||
db.Get_Tabledata_for_Update("Select top 1 * from Ondoc_Versandstrasse_Paket where id=1", false, true);
|
||||
DataRow dr = db.daten.Tables[0].NewRow();
|
||||
dr[1] = AppParams.CurrentMitarbeiter.ToString();
|
||||
dr[2] = jsonstring;
|
||||
dr[3] = DateTime.Now;
|
||||
|
||||
db.daten.Tables[0].Rows.Add(dr);
|
||||
db.Update_Data();
|
||||
return;
|
||||
}
|
||||
|
||||
string URL = AppParams.RESTURI + "api/Send_Versandstrasse";
|
||||
panelVerify.Visible = false;
|
||||
|
||||
|
||||
WebRequest request;
|
||||
var data = Encoding.UTF8.GetBytes(jsonstring);
|
||||
request = WebRequest.Create(URL);
|
||||
@@ -589,6 +714,11 @@ namespace OnDoc.Versandstrasse
|
||||
TreeNodeAdv node = treeViewAdv1.SelectedNode;
|
||||
if (node.Level == 1)
|
||||
{
|
||||
if (Verify_Couvert(node)==false)
|
||||
{
|
||||
GrpPaketDetails.Enabled = false;
|
||||
return;
|
||||
}
|
||||
GrpPaketDetails.Enabled = true;
|
||||
Versandpaket paket = node.TagObject as Versandpaket; ;
|
||||
|
||||
@@ -653,9 +783,68 @@ namespace OnDoc.Versandstrasse
|
||||
{
|
||||
try
|
||||
{
|
||||
TreeNodeAdv node = treeViewAdv1.SelectedNode;
|
||||
if (node.Level > 1) {
|
||||
node = node.Parent;
|
||||
treeViewAdv1.SelectedNode.Remove();
|
||||
Verify_Couvert(node);
|
||||
}
|
||||
else {
|
||||
treeViewAdv1.SelectedNode.Remove();
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
private void toolStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void TabControlDokuments_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (TabControlDokuments.SelectedIndex == 1)
|
||||
{
|
||||
DB db = new DB(AppParams.connectionstring);
|
||||
DB db2 = new DB(AppParams.connectionstring);
|
||||
|
||||
db.Get_Tabledata("Select * from ondoc_versandstrasse_paket where ersteller=" + AppParams.CurrentMitarbeiter + " and versendet=0", false, true);
|
||||
treeViewAdvCouverts.Nodes.Clear();
|
||||
foreach (DataRow dr in db.dsdaten.Tables[0].Rows)
|
||||
{
|
||||
Versandpaket vp = JsonConvert.DeserializeObject<Versandpaket>(dr["paket"].ToString());
|
||||
TreeNodeAdv tn = new TreeNodeAdv();
|
||||
db2.Get_Tabledata("Select bkpar00 from partner where nrpar00=" + vp.partnernr.ToString(), false, true);
|
||||
tn.Text = vp.partnernr.ToString() + " - " + db2.dsdaten.Tables[0].Rows[0][0].ToString();
|
||||
tn.TagObject = vp.finaldoc;
|
||||
tn.Tag = dr[0].ToString();
|
||||
if (vp.Versandoption.ToString() == "A_POST") { set_nodeimage(tn, 0); }
|
||||
if (vp.Versandoption.ToString() == "B2_POST") { set_nodeimage(tn, 1); }
|
||||
if (vp.Versandoption.ToString() == "B2_POST") { set_nodeimage(tn, 2); }
|
||||
treeViewAdvCouverts.Nodes.Add(tn);
|
||||
foreach (Versanddokument vd in vp.Dokument)
|
||||
{
|
||||
TreeNodeAdv tn2 = new TreeNodeAdv();
|
||||
tn2.Text = vd.Bezeichnung;
|
||||
tn2.Tag = vd.DokumentID;
|
||||
tn2.TagObject = vd.dokument;
|
||||
tn.Nodes.Add(tn2);
|
||||
}
|
||||
}
|
||||
db = null;
|
||||
db2 = null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void treeViewAdvCouverts_AfterSelect(object sender, EventArgs e)
|
||||
{
|
||||
TreeNodeAdv node = treeViewAdvCouverts.SelectedNode;
|
||||
|
||||
var stream = new MemoryStream(Convert.FromBase64String(node.TagObject.ToString()));
|
||||
this.pdfViewerControl2.Load(stream);
|
||||
stream = null;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user