XML rechnung icons and links for auftrag & lieferschein

This commit is contained in:
OpenXE 2024-12-05 16:08:16 +01:00
parent dc53b0462c
commit c71eb50b74
4 changed files with 49 additions and 42 deletions

View File

@ -6844,10 +6844,7 @@ r.land as land, p.abkuerzung as projekt, r.zahlungsweise as zahlungsweise,
as fehlt, as fehlt,
if(r.status = 'storniert' AND r.teilstorno = 1,'TEILSTORNO',UPPER(r.status)) as status if(r.status = 'storniert' AND r.teilstorno = 1,'TEILSTORNO',UPPER(r.status)) as status
".(!empty($zusatzcols)?','.implode(', ',$zusatzcols):'').", ".(!empty($zusatzcols)?','.implode(', ',$zusatzcols):'').",
IF(r.xmlrechnung, ".$this->GetRechnungFileDownloadLinkIconSQL().",
CONCAT('<a href=\"index.php?module=rechnung&action=xml&id=',r.id,'\"><img src=\"themes/".$this->app->Conf->WFconf['defaulttheme']."/images/xml.svg\" border=\"0\">'),
CONCAT('<a href=\"index.php?module=rechnung&action=pdf&id=',r.id,'\"><img src=\"themes/".$this->app->Conf->WFconf['defaulttheme']."/images/pdf.svg\" border=\"0\">')
),
r.id r.id
FROM rechnung r LEFT JOIN projekt p ON p.id=r.projekt LEFT JOIN adresse adr ON r.adresse=adr.id LEFT JOIN auftrag au ON au.id = r.auftragid "; FROM rechnung r LEFT JOIN projekt p ON p.id=r.projekt LEFT JOIN adresse adr ON r.adresse=adr.id LEFT JOIN auftrag au ON au.id = r.auftragid ";
if(isset($parameter['artikel']) && !empty($parameter['artikel'])) { if(isset($parameter['artikel']) && !empty($parameter['artikel'])) {
@ -15941,4 +15938,24 @@ function IframeDialog($width, $height, $src = "") {
return 'convert(cast(convert('.$field.' using latin1) as binary) using utf8)'; return 'convert(cast(convert('.$field.' using latin1) as binary) using utf8)';
//return $field.' COLLATE utf8_general_ci'; ersetzt Original //return $field.' COLLATE utf8_general_ci'; ersetzt Original
} }
public function GetRechnungFileDownloadLinkIconSQL($tablename = 'r') {
return(
"IF(".$tablename.".xmlrechnung,
CONCAT('<a href=\"index.php?module=rechnung&action=xml&id=',".$tablename.".id,'\"><img src=\"themes/".$this->app->Conf->WFconf['defaulttheme']."/images/xml.svg\" border=\"0\">'),
CONCAT('<a href=\"index.php?module=rechnung&action=pdf&id=',".$tablename.".id,'\"><img src=\"themes/".$this->app->Conf->WFconf['defaulttheme']."/images/pdf.svg\" border=\"0\">')
)"
);
}
public function GetRechnungFileDownloadLinkIcon($id) {
$xmlrechnung = $this->app->DB->SelectRow("SELECT belegnr, xmlrechnung FROM rechnung WHERE id = '".$id."' LIMIT 1");
if ($xmlrechnung['belegnr'] == '') {
return('');
} else if ($xmlrechnung['xmlrechnung']) {
return("<a href=\"index.php?module=rechnung&action=xml&id=%value%\"><img border=\"0\" src=\"./themes/new/images/xml.svg\" title=\"XML\"></a>");
} else {
return("<a href=\"index.php?module=rechnung&action=pdf&id=%value%\"><img border=\"0\" src=\"./themes/new/images/pdf.svg\" title=\"PDF\"></a>");
}
}
} }

View File

@ -1640,6 +1640,7 @@ class Auftrag extends GenAuftrag
* *
* @return string * @return string
*/ */
/* XENTRAL Legacy
public function AuftragTrackingTabelle($id) public function AuftragTrackingTabelle($id)
{ {
$table = new EasyTable($this->app); $table = new EasyTable($this->app);
@ -1676,6 +1677,7 @@ class Auftrag extends GenAuftrag
return $result; return $result;
} }
*/
function AuftragPDFfromArchiv() function AuftragPDFfromArchiv()
{ {
@ -2117,26 +2119,28 @@ class Auftrag extends GenAuftrag
/* rechnungen */ /* rechnungen */
$link_zur_rechnung = "CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"',if(r.status='storniert',' title=\"Rechnung storniert\"><s>','>'),if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),if(r.status='storniert','</s>',''),'</a>&nbsp;',".$this->app->YUI->GetRechnungFileDownloadLinkIconSQL().",'&nbsp; <a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>')";
$sammelrechnungcheck = $this->app->DB->Select("SELECT * FROM sammelrechnung_position LIMIT 1"); $sammelrechnungcheck = $this->app->DB->Select("SELECT * FROM sammelrechnung_position LIMIT 1");
if($sammelrechnungcheck) { if($sammelrechnungcheck) {
$rechnung = $this->app->DB->SelectPairs( $rechnung = $this->app->DB->SelectPairs(
"SELECT "SELECT
r.id, CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"',if(r.status='storniert',' title=\"Rechnung storniert\"><s>','>'),if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),if(r.status='storniert','</s>',''),'</a>&nbsp;<a href=\"index.php?module=rechnung&action=pdf&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/pdf.svg\" title=\"Rechnung PDF\" border=\"0\"></a>&nbsp; r.id,
<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>') as rechnung ".$link_zur_rechnung." as rechnung
FROM rechnung r FROM rechnung r
WHERE r.auftragid='$id' WHERE r.auftragid='$id'
union union
SELECT SELECT
r.id,CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"',if(r.status='storniert',' title=\"Rechnung storniert\"><s>','>'),if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),if(r.status='storniert','</s>',''),'</a>&nbsp;<a href=\"index.php?module=rechnung&action=pdf&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/pdf.svg\" title=\"Rechnung PDF\" border=\"0\"></a>&nbsp; r.id,
<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>') as rechnung ".$link_zur_rechnung." as rechnung
FROM rechnung r FROM rechnung r
INNER JOIN sammelrechnung_position s ON r.id = s.rechnung INNER JOIN sammelrechnung_position s ON r.id = s.rechnung
INNER JOIN auftrag_position p ON s.auftrag_position_id = p.id INNER JOIN auftrag_position p ON s.auftrag_position_id = p.id
WHERE p.auftrag='$id' WHERE p.auftrag='$id'
union union
SELECT SELECT
r.id,CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"',if(r.status='storniert',' title=\"Rechnung storniert\"><s>','>'),if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),if(r.status='storniert','</s>',''),'</a>&nbsp;<a href=\"index.php?module=rechnung&action=pdf&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/pdf.svg\" title=\"Rechnung PDF\" border=\"0\"></a>&nbsp; r.id,
<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>') as rechnung ".$link_zur_rechnung." as rechnung
FROM rechnung r FROM rechnung r
INNER JOIN sammelrechnung_position s ON r.id = s.rechnung INNER JOIN sammelrechnung_position s ON r.id = s.rechnung
INNER JOIN lieferschein_position lp ON lp.id = s.lieferschein_position_id INNER JOIN lieferschein_position lp ON lp.id = s.lieferschein_position_id
@ -2158,9 +2162,8 @@ class Auftrag extends GenAuftrag
else{ else{
$rechnung = $this->app->DB->SelectPairs( $rechnung = $this->app->DB->SelectPairs(
"SELECT "SELECT
r.id, CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"',if(r.status='storniert',' title=\"Rechnung storniert\"><s>','>'),if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),if(r.status='storniert','</s>',''),'</a>&nbsp;<a href=\"index.php?module=rechnung&action=pdf&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/pdf.svg\" title=\"Rechnung PDF\" border=\"0\"></a>&nbsp; r.id,
<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>' ".$link_zur_rechnung." as rechnung
) as rechnung
FROM rechnung r FROM rechnung r
WHERE r.auftragid='$id'" WHERE r.auftragid='$id'"
); );
@ -2176,10 +2179,9 @@ class Auftrag extends GenAuftrag
if(!$rechnung) { if(!$rechnung) {
$rechnung = $this->app->DB->SelectPairs( $rechnung = $this->app->DB->SelectPairs(
"SELECT "SELECT
r.id, CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"',if(r.status='storniert',' title=\"Rechnung storniert\"><s>','>'),if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),if(r.status='storniert','</s>',''),'</a>&nbsp;<a href=\"index.php?module=rechnung&action=pdf&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/pdf.svg\" title=\"Rechnung PDF\" border=\"0\"></a>&nbsp; r.id,
<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>' ".$link_zur_rechnung." as rechnung
) as rechnung FROM rechnung r
FROM rechnung r
INNER JOIN auftrag a ON a.rechnungid = r.id INNER JOIN auftrag a ON a.rechnungid = r.id
WHERE a.id='$id' WHERE a.id='$id'
"); ");
@ -5071,7 +5073,7 @@ class Auftrag extends GenAuftrag
foreach($lieferscheine as $deliveryNoteId => $deliveryNoteNumber) { foreach($lieferscheine as $deliveryNoteId => $deliveryNoteNumber) {
$optional .= "&nbsp;<input type=\"button\" value=\"LS " $optional .= "&nbsp;<input type=\"button\" value=\"LS "
.$deliveryNoteNumber .$deliveryNoteNumber
."\" onclick=\"window.location.href='index.php?module=lieferschein&action=pdf&id=" ."\" onclick=\"window.location.href='index.php?module=lieferschein&action=edit&id="
.$deliveryNoteId."'\">"; .$deliveryNoteId."'\">";
} }
} }
@ -5084,7 +5086,7 @@ class Auftrag extends GenAuftrag
foreach($rechnungen as $invoiceId => $invoiceNumber) { foreach($rechnungen as $invoiceId => $invoiceNumber) {
$optional .= "&nbsp;<input type=\"button\" value=\"RE " $optional .= "&nbsp;<input type=\"button\" value=\"RE "
.$invoiceNumber .$invoiceNumber
."\" onclick=\"window.location.href='index.php?module=rechnung&action=pdf&id=" ."\" onclick=\"window.location.href='index.php?module=rechnung&action=edit&id="
.$invoiceId."'\">"; .$invoiceId."'\">";
} }
} }
@ -5260,11 +5262,13 @@ class Auftrag extends GenAuftrag
$this->app->Tpl->Add('AUFTRAGSDOKUMENTE',"</fieldset>"); $this->app->Tpl->Add('AUFTRAGSDOKUMENTE',"</fieldset>");
} }
/* XENTRAL Legacy
//suche alle LS zu diesem Auftrag //suche alle LS zu diesem Auftrag
if($auftragsnummer>0) { if($auftragsnummer>0) {
$trackingInfo = $this->AuftragTrackingTabelle(empty($deliveryNoteIds)?0: $id); $trackingInfo = $this->AuftragTrackingTabelle(empty($deliveryNoteIds)?0: $id);
$this->app->Tpl->Set('VERSAND', $trackingInfo); $this->app->Tpl->Set('VERSAND', $trackingInfo);
} }
*/
// UST // UST
$ust_ok = $orderRow['ust_ok'];//$this->app->DB->Select("SELECT ust_ok FROM auftrag WHERE id='$id' LIMIT 1"); $ust_ok = $orderRow['ust_ok'];//$this->app->DB->Select("SELECT ust_ok FROM auftrag WHERE id='$id' LIMIT 1");

View File

@ -876,22 +876,19 @@ class Lieferschein extends GenLieferschein
$this->app->Tpl->Set('AUFTRAG','-'); $this->app->Tpl->Set('AUFTRAG','-');
} }
$link_zur_rechnung = "CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"',if(r.status='storniert',' title=\"Rechnung storniert\"><s>','>'),if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),if(r.status='storniert','</s>',''),'</a>&nbsp;',".$this->app->YUI->GetRechnungFileDownloadLinkIconSQL().",'&nbsp; <a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>')";
if($auftragArr[0]['auftragid'] > 0){ if($auftragArr[0]['auftragid'] > 0){
$rechnung = $this->app->DB->SelectArr( $rechnung = $this->app->DB->SelectArr(
($auftragArr[0]['auftragid']? ($auftragArr[0]['auftragid']?
"SELECT "SELECT
CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\">',if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),'&nbsp;<a href=\"index.php?module=rechnung&action=pdf&id=',r.id,'\"><img src=\"./themes/new/images/pdf.svg\" title=\"Rechnung PDF\" border=\"0\"></a>&nbsp; ".$link_zur_rechnung." as rechnung FROM rechnung r WHERE r.auftragid='".$auftragArr[0]['auftragid']."' AND r.auftragid <> '0'
<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>') as rechnung
FROM rechnung r WHERE r.auftragid='".$auftragArr[0]['auftragid']."' AND r.auftragid <> '0'
union union
SELECT SELECT
CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\">',if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),'&nbsp;<a href=\"index.php?module=rechnung&action=pdf&id=',r.id,'\"><img src=\"./themes/new/images/pdf.svg\" title=\"Rechnung PDF\" border=\"0\"></a>&nbsp; ".$link_zur_rechnung." as rechnung FROM rechnung r INNER JOIN sammelrechnung_position s ON r.id = s.rechnung INNER JOIN auftrag_position p ON s.auftrag_position_id = p.id WHERE p.auftrag='".$auftragArr[0]['auftragid']."'
<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>') as rechnung
FROM rechnung r INNER JOIN sammelrechnung_position s ON r.id = s.rechnung INNER JOIN auftrag_position p ON s.auftrag_position_id = p.id WHERE p.auftrag='".$auftragArr[0]['auftragid']."'
union ":"")." union ":"")."
SELECT SELECT
CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\">',if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),'&nbsp;<a href=\"index.php?module=rechnung&action=pdf&id=',r.id,'\"><img src=\"./themes/new/images/pdf.svg\" title=\"Rechnung PDF\" border=\"0\"></a>&nbsp; ".$link_zur_rechnung." as rechnung
<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>') as rechnung
FROM rechnung r INNER JOIN sammelrechnung_position s ON r.id = s.rechnung FROM rechnung r INNER JOIN sammelrechnung_position s ON r.id = s.rechnung
INNER JOIN lieferschein_position lp ON lp.id = s.lieferschein_position_id INNER JOIN lieferschein_position lp ON lp.id = s.lieferschein_position_id
WHERE lp.lieferschein='$id' WHERE lp.lieferschein='$id'
@ -903,14 +900,11 @@ class Lieferschein extends GenLieferschein
if($auftragArr[0]['rechnungid'] > 0){ if($auftragArr[0]['rechnungid'] > 0){
$rechnung = $this->app->DB->SelectArr("SELECT $rechnung = $this->app->DB->SelectArr("SELECT
CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\">',if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),'&nbsp;<a href=\"index.php?module=rechnung&action=pdf&id=',r.id,'\"><img src=\"./themes/new/images/pdf.svg\" title=\"Rechnung PDF\" border=\"0\"></a>&nbsp; ".$link_zur_rechnung." as rechnung
<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>') as rechnung
FROM rechnung r WHERE r.id='".$auftragArr[0]['rechnungid']."' AND r.id <> '0' FROM rechnung r WHERE r.id='".$auftragArr[0]['rechnungid']."' AND r.id <> '0'
union union
SELECT SELECT
CONCAT('<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\">',if(r.belegnr='0' OR r.belegnr='','ENTWURF',r.belegnr),'&nbsp;<a href=\"index.php?module=rechnung&action=pdf&id=',r.id,'\"><img src=\"./themes/new/images/pdf.svg\" title=\"Rechnung PDF\" border=\"0\"></a>&nbsp; ".$link_zur_rechnung." as rechnung
<a href=\"index.php?module=rechnung&action=edit&id=',r.id,'\" target=\"_blank\"><img src=\"./themes/new/images/edit.svg\" title=\"Rechnung bearbeiten\" border=\"0\"></a>') as rechnung
FROM rechnung r INNER JOIN sammelrechnung_position s ON r.id = s.rechnung FROM rechnung r INNER JOIN sammelrechnung_position s ON r.id = s.rechnung
INNER JOIN lieferschein_position lp ON lp.id = s.lieferschein_position_id INNER JOIN lieferschein_position lp ON lp.id = s.lieferschein_position_id
WHERE lp.lieferschein='$id' WHERE lp.lieferschein='$id'

View File

@ -577,15 +577,7 @@ class Rechnung extends GenRechnung
</select>&nbsp; </select>&nbsp;
"; ";
if (!empty($rechnungarr['belegnr'])) { $downloadicon = $this->app->YUI->GetRechnungFileDownloadLinkIcon($id);
if ($rechnungarr['xmlrechnung']) {
$downloadicon = "<a href=\"index.php?module=rechnung&action=xml&id=%value%\"><img border=\"0\" src=\"./themes/new/images/xml.svg\" title=\"XML\"></a>";
} else {
$downloadicon = "<a href=\"index.php?module=rechnung&action=pdf&id=%value%\"><img border=\"0\" src=\"./themes/new/images/pdf.svg\" title=\"PDF\"></a>";
}
} else {
$downloadicon = '';
}
$menu .= $downloadicon; $menu .= $downloadicon;