From 2f646a771538a5ae09085b4530ada53a0ffdd1b9 Mon Sep 17 00:00:00 2001
From: OpenXE <>
Date: Thu, 2 Nov 2023 11:56:05 +0100
Subject: [PATCH] versand added tracking for mail variables, minor bugfixes
---
phpwf/plugins/class.yui.php | 2 +-
www/lib/class.erpapi.php | 31 ++++++++++++++++++-
.../content/geschaeftsbrief_vorlagen_list.tpl | 2 +-
www/pages/content/versandpakete_edit.tpl | 8 +++++
www/pages/content/versandpakete_lieferung.tpl | 2 +-
www/pages/versandpakete.php | 12 ++++---
6 files changed, 49 insertions(+), 8 deletions(-)
diff --git a/phpwf/plugins/class.yui.php b/phpwf/plugins/class.yui.php
index 254200b7..3c7be2e1 100644
--- a/phpwf/plugins/class.yui.php
+++ b/phpwf/plugins/class.yui.php
@@ -3666,7 +3666,7 @@ class YUI {
ELSE CONCAT(
CASE
WHEN lieferscheine <> '' AND vmenge = lmenge THEN '$lieferschein_voll'
- WHEN lieferscheine <> '' AND vmenge IS NULL THEN '$lieferschein_ohne_pos'
+ WHEN lieferschein_ohne_pos <> '' AND vmenge IS NULL THEN '$lieferschein_ohne_pos'
WHEN lieferscheine <> '' THEN '$lieferschein_teil'
ELSE
'$lieferschein_kein'
diff --git a/www/lib/class.erpapi.php b/www/lib/class.erpapi.php
index dae90b63..f990f4a9 100644
--- a/www/lib/class.erpapi.php
+++ b/www/lib/class.erpapi.php
@@ -4779,11 +4779,36 @@ title: 'Abschicken',
$clieferscheine = !empty($lieferscheine)?count($lieferscheine):0;
for($li=0;$li<$clieferscheine;$li++)
{
- $tracking = $this->app->DB->SelectArr("SELECT tracking FROM versand WHERE lieferschein='".$lieferscheine[$li]['id']."' AND lieferschein > 0 AND tracking!=''");
+ /* $tracking = $this->app->DB->SelectArr("SELECT tracking FROM versand WHERE lieferschein='".$lieferscheine[$li]['id']."' AND lieferschein > 0 AND tracking!=''");
$ctracking = !empty($tracking)?count($tracking):0;
for($i=0;$i<$ctracking;$i++) {
$tmptracking[] = $tracking[$i]['tracking'];
}
+*/
+
+ $sql = "SELECT SQL_CALC_FOUND_ROWS
+ v.id,
+ v.tracking as tracking,
+ v.tracking_link
+ FROM
+ versandpakete v
+ LEFT JOIN
+ versandpaket_lieferschein_position vlp ON v.id = vlp.versandpaket
+ LEFT JOIN
+ lieferschein_position lp ON lp.id = vlp.lieferschein_position
+ LEFT JOIN
+ lieferschein l ON lp.lieferschein = l.id
+ WHERE l.id = ".$lieferscheine[$li]['id']." OR v.lieferschein_ohne_pos = ".$lieferscheine[$li]['id']."
+ GROUP BY
+ v.id
+ ";
+ $tracking = $this->app->DB->SelectArr($sql);
+ $tracking_list = array();
+ foreach ($tracking as $single_tracking) {
+ $tmptracking[] = $single_tracking['tracking'];
+ $tracking_list[] = ''.$single_tracking['tracking'].'';
+ }
+
/*
$nve = $this->app->DB->SelectArr("SELECT nve FROM spedition_packstuecke WHERE lieferschein='".$lieferscheine[$li]['id']."' AND nve!='' AND status!='storniert'");
$cnve = !empty($nve)?count($nve):0;
@@ -4791,7 +4816,11 @@ title: 'Abschicken',
$tmpnve[] = $nve[$i]['nve'];
}*/
}
+
+
+
$text = str_replace('{TRACKINGNUMMER}',!empty($tmptracking)?implode(", ",$tmptracking):'',$text);
+ $text = str_replace('{TRACKINGLINK}',!empty($tracking_list)?implode(", ",$tracking_list):'',$text);
$text = str_replace('{NVE}',!empty($tmpnve)?implode(", ",$tmpnve):'',$text);
}
diff --git a/www/pages/content/geschaeftsbrief_vorlagen_list.tpl b/www/pages/content/geschaeftsbrief_vorlagen_list.tpl
index 8ce029b8..20423efc 100644
--- a/www/pages/content/geschaeftsbrief_vorlagen_list.tpl
+++ b/www/pages/content/geschaeftsbrief_vorlagen_list.tpl
@@ -122,7 +122,7 @@
{|Stornierung|} {|Variablen|}: {AUFTRAG}, {DATUM}, {INTERNET}
{|ZahlungMiss|} {|Variablen|}: {AUFTRAG}, {DATUM}, {GESAMT}, {REST}, {ANSCHREIBEN}, {INTERNET}
Mahnung Variablen: {BELEGNR}, {DATUM}, {OFFEN}, {MAHNGEBUEHR}, {HEUTE}
- {|Versand|} {|Variablen|}: {VERSAND}, {VERSANDTYPE}, {VERSANDBEZEICHNUNG}, {TRACKINGNUMMER}, {NAME}, {ANSCHREIBEN}, {BELEGNR}, {IHREBESTELLNUMMER}, {INTERNET}, {AUFTRAGDATUM}, {LIEFERADRESSE}, {LIEFERADRESSELANG}
+ {|Versand|} {|Variablen|}: {VERSAND}, {VERSANDTYPE}, {VERSANDBEZEICHNUNG}, {TRACKINGNUMMER}, {TRACKINGLINK}, {NAME}, {ANSCHREIBEN}, {BELEGNR}, {IHREBESTELLNUMMER}, {INTERNET}, {AUFTRAGDATUM}, {LIEFERADRESSE}, {LIEFERADRESSELANG}
{|VersandMailDokumente|} {|Variablen|}: {NAME}, {ANSCHREIBEN}, {BELEGNR}, {IHREBESTELLNUMMER}, {INTERNET}, {AUFTRAGDATUM}
{|Erweiterte Freigabe|} {|Variablen|}: {REQUESTER}, {LINK}, {LINKFREIGABEUEBERSICHT}, {DOCTYPE}, {DOCTYPE_ID}
{|Selbstabholer|}
diff --git a/www/pages/content/versandpakete_edit.tpl b/www/pages/content/versandpakete_edit.tpl
index 6fab152d..de166ece 100644
--- a/www/pages/content/versandpakete_edit.tpl
+++ b/www/pages/content/versandpakete_edit.tpl
@@ -54,6 +54,14 @@
+
+
+ {|Tracking link|}:
+ |
+
+
+ |
+
{|Gewicht Kg|}:
diff --git a/www/pages/content/versandpakete_lieferung.tpl b/www/pages/content/versandpakete_lieferung.tpl
index 3f50efe0..68571da6 100644
--- a/www/pages/content/versandpakete_lieferung.tpl
+++ b/www/pages/content/versandpakete_lieferung.tpl
@@ -8,7 +8,7 @@
diff --git a/www/pages/versandpakete.php b/www/pages/versandpakete.php
index 0311b7d7..915d46b0 100644
--- a/www/pages/versandpakete.php
+++ b/www/pages/versandpakete.php
@@ -559,6 +559,7 @@ class Versandpakete {
if (!empty($info)) {
$this->app->Tpl->Set('BELEGNR', $info[0]['belegnr']);
+ $this->app->Tpl->Set('BELEGID', $lieferschein_filter);
$this->app->Tpl->SetText('KURZUEBERSCHRIFT2', $info[0]['name']." Lieferung ".$info[0]['belegnr']);
$complete = $this->versandpakete_check_completion($lieferschein_filter, null);
@@ -633,10 +634,8 @@ class Versandpakete {
}
// Check versandart
- if (empty($input['versandart'])) {
- $sql = "UPDATE versandpakete SET versandart = (SELECT versandart FROM (".self::SQL_VERSANDPAKETE_LIEFERSCHEIN.") v INNER JOIN lieferschein l ON v.lieferschein = l.id WHERE versandpaket = ".$id." LIMIT 1)";
- $this->app->DB->Update($sql);
- }
+ $sql = "UPDATE versandpakete SET versandart = (SELECT versandart FROM (".self::SQL_VERSANDPAKETE_LIEFERSCHEIN.") v INNER JOIN lieferschein l ON v.lieferschein = l.id WHERE v.versandpaket = ".$id." LIMIT 1) WHERE id = ".$id;
+ $this->app->DB->Update($sql);
switch ($submit) {
case 'speichern':
@@ -734,6 +733,8 @@ class Versandpakete {
$this->app->Tpl->Set('LIEFERSCHEIN_ADD_POS_HIDDEN', 'hidden');
$this->app->Tpl->Set('LIEFERSCHEIN_GEWICHT_DISABLED', 'disabled');
$this->app->Tpl->Set('PAKETMARKE_ADD_HIDDEN', 'hidden');
+ $this->app->Tpl->Set('TRACKING_DISABLED', 'disabled');
+ $this->app->Tpl->Set('TRACKING_LINK_EDIT_HIDDEN', 'hidden');
}
if ($result[0]['status'] != 'versendet') {
$this->app->Tpl->Set('ABSCHLIESSEN_HIDDEN', 'hidden');
@@ -754,6 +755,7 @@ class Versandpakete {
$this->app->Tpl->Set('PAKETMARKE_ADD_HIDDEN', 'hidden');
} else {
$this->app->Tpl->Set('TRACKING_DISABLED', 'disabled');
+ $this->app->Tpl->Set('TRACKING_LINK_EDIT_HIDDEN', 'hidden');
}
$file_attachments = $this->app->erp->GetDateiSubjektObjekt('paketmarke','versandpaket',$id);
@@ -786,6 +788,7 @@ class Versandpakete {
GROUP BY v.id
) temp
";
+
$icons = $this->app->DB->SelectArr($sql);
$this->app->Tpl->Set('ICONS', $icons[0]['icons']);
@@ -1185,6 +1188,7 @@ class Versandpakete {
$input['gewicht'] = $this->app->Secure->GetPOST('gewicht');
$input['bemerkung'] = $this->app->Secure->GetPOST('bemerkung');
$input['tracking'] = $this->app->Secure->GetPOST('tracking');
+ $input['tracking_link'] = $this->app->Secure->GetPOST('tracking_link');
return $input;
}
|