mirror of
https://github.com/OpenXE-org/OpenXE.git
synced 2024-11-15 04:27:14 +01:00
cleanup old versandarten
This commit is contained in:
parent
696e9efc76
commit
51552e7530
@ -28104,31 +28104,15 @@ function Firmendaten($field,$projekt="")
|
|||||||
$modul = "";
|
$modul = "";
|
||||||
|
|
||||||
$tmp = array(
|
$tmp = array(
|
||||||
'DHL'=>'DHL','DPD'=>'DPD',
|
|
||||||
'express_dpd'=>'Express DPD',
|
|
||||||
'export_dpd'=>'Export DPD',
|
|
||||||
'gls'=>'GLS',
|
|
||||||
'keinversand'=>'Kein Versand',
|
'keinversand'=>'Kein Versand',
|
||||||
'selbstabholer'=>'Selbstabholer',
|
'selbstabholer'=>'Selbstabholer',
|
||||||
'versandunternehmen'=>'Sonstige',
|
|
||||||
'spedition'=>'Spedition',
|
'spedition'=>'Spedition',
|
||||||
'Go'=>'GO!',
|
|
||||||
'post'=>'Post'
|
|
||||||
);
|
);
|
||||||
foreach($tmp as $key=>$value)
|
foreach($tmp as $key=>$value)
|
||||||
{
|
{
|
||||||
if($key == 'DHL'){$modul='intraship';}
|
|
||||||
if($key == 'DPD'){$modul='dpdapi';}
|
|
||||||
if($key == 'express_dpd'){$modul='';}
|
|
||||||
if($key == 'export_dpd'){$modul='';}
|
|
||||||
if($key == 'gls'){$modul='glsapi';}
|
|
||||||
if($key == 'keinversand'){$modul='';}
|
if($key == 'keinversand'){$modul='';}
|
||||||
if($key == 'selbstabholer'){$modul='selbstabholer';}
|
if($key == 'selbstabholer'){$modul='selbstabholer';}
|
||||||
if($key == 'versandunternehmen'){$modul='';}
|
|
||||||
if($key == 'spedition'){$modul='';}
|
if($key == 'spedition'){$modul='';}
|
||||||
if($key == 'Go'){$modul='';}
|
|
||||||
if($key == 'post'){$modul='post';}
|
|
||||||
|
|
||||||
|
|
||||||
$this->app->DB->Insert("INSERT INTO versandarten (id,type,bezeichnung,aktiv,modul) VALUES ('','$key','$value','1','$modul')");
|
$this->app->DB->Insert("INSERT INTO versandarten (id,type,bezeichnung,aktiv,modul) VALUES ('','$key','$value','1','$modul')");
|
||||||
}
|
}
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,691 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
use Xentral\Components\Database\Database;
|
|
||||||
use Xentral\Components\Http\JsonResponse;
|
|
||||||
use Xentral\Modules\Dhl\Api\DhlApi;
|
|
||||||
use Xentral\Modules\Dhl\Content\PackageContent;
|
|
||||||
use Xentral\Modules\Dhl\Exception\DhlBaseException;
|
|
||||||
use Xentral\Modules\Dhl\Exception\InvalidCredentialsException;
|
|
||||||
use Xentral\Modules\Dhl\Exception\InvalidRequestDataException;
|
|
||||||
use Xentral\Modules\Dhl\Exception\UnknownProductException;
|
|
||||||
use Xentral\Modules\Dhl\Factory\DhlApiFactory;
|
|
||||||
use Xentral\Modules\Dhl\Request\CreateInterationalShipmentRequest;
|
|
||||||
use Xentral\Modules\Dhl\Request\CreateNationalShipmentRequest;
|
|
||||||
|
|
||||||
require_once dirname(__DIR__) . '/class.versanddienstleister.php';
|
|
||||||
|
|
||||||
class Versandart_dhl extends Versanddienstleister
|
|
||||||
{
|
|
||||||
|
|
||||||
private $einstellungen;
|
|
||||||
|
|
||||||
private $info;
|
|
||||||
|
|
||||||
private $credentials;
|
|
||||||
|
|
||||||
public $paketmarke_drucker;
|
|
||||||
public $export_drucker;
|
|
||||||
|
|
||||||
public $errors;
|
|
||||||
|
|
||||||
public $name;
|
|
||||||
protected $voucherId;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Versandart_internetmarke constructor.
|
|
||||||
*
|
|
||||||
* @param ApplicationCore $app
|
|
||||||
* @param int $id
|
|
||||||
*/
|
|
||||||
function __construct($app, $id)
|
|
||||||
{
|
|
||||||
$this->id = $id;
|
|
||||||
$this->app = $app;
|
|
||||||
$einstellungenArr = $this->app->DB->SelectRow("SELECT einstellungen_json,paketmarke_drucker,export_drucker FROM versandarten WHERE id = '$id' LIMIT 1");
|
|
||||||
$einstellungen_json = $einstellungenArr['einstellungen_json'];
|
|
||||||
$this->paketmarke_drucker = $einstellungenArr['paketmarke_drucker'];
|
|
||||||
$this->export_drucker = $einstellungenArr['export_drucker'];
|
|
||||||
|
|
||||||
$this->name = 'DHL 3.0';
|
|
||||||
if($einstellungen_json){
|
|
||||||
$this->einstellungen = json_decode($einstellungen_json, true);
|
|
||||||
}else{
|
|
||||||
$this->einstellungen = [];
|
|
||||||
}
|
|
||||||
$this->errors = [];
|
|
||||||
}
|
|
||||||
|
|
||||||
function ShowUserdata()
|
|
||||||
{
|
|
||||||
if(isset($this->app->Conf->WFuserdata)){
|
|
||||||
return 'Userdata-Ordner: ' . $this->app->Conf->WFuserdata;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function Einstellungen($target = 'return')
|
|
||||||
{
|
|
||||||
if($this->app->Secure->GetPOST('testen')){
|
|
||||||
$parameter1 = $this->einstellungen['pfad'];
|
|
||||||
if($parameter1){
|
|
||||||
if(is_dir($parameter1)){
|
|
||||||
if(substr($parameter1, -1) !== '/'){
|
|
||||||
$parameter1 .= '/';
|
|
||||||
}
|
|
||||||
|
|
||||||
if(file_put_contents($parameter1 . 'wawision_test.txt', 'TEST')){
|
|
||||||
$this->app->Tpl->Add('MESSAGE',
|
|
||||||
'<div class="info">Datei ' . $parameter1 . 'wawision_test.txt' . ' wurde erstellt!</div>');
|
|
||||||
}else{
|
|
||||||
$this->app->Tpl->Add('MESSAGE', '<div class="error">Datei konnte nicht angelegt werden!</div>');
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
$this->app->Tpl->Add('MESSAGE',
|
|
||||||
'<div class="error">Speicherort existiert nicht oder ist nicht erreichbar!</div>');
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
$this->app->Tpl->Add('MESSAGE', '<div class="error">Bitte einen Speicherort angeben!</div>');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
parent::Einstellungen($target);
|
|
||||||
}
|
|
||||||
|
|
||||||
//TODO ....
|
|
||||||
|
|
||||||
/*function Trackinglink($tracking, &$notsend, &$link, &$rawlink)
|
|
||||||
{
|
|
||||||
$notsend = 0;
|
|
||||||
//$rawlink = 'https://tracking.dpd.de/parcelstatus/?locale=de_DE&query='.$tracking;
|
|
||||||
$rawlink = ' https://www.gls-group.eu/276-I-PORTAL-WEB/content/GLS/DE03/DE/5004.htm?txtRefNo='.$tracking.'&txtAction=71000';
|
|
||||||
$link = 'GLS Versand: '.$tracking.' ('.$rawlink.')';
|
|
||||||
}*/
|
|
||||||
|
|
||||||
public function GetBezeichnung()
|
|
||||||
{
|
|
||||||
return 'DHL 3.0';
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return array[]
|
|
||||||
*/
|
|
||||||
public function getCreateForm()
|
|
||||||
{
|
|
||||||
return [
|
|
||||||
[
|
|
||||||
'id' => 0,
|
|
||||||
'name' => 'usernameGroup',
|
|
||||||
'inputs' => [
|
|
||||||
[
|
|
||||||
'label' => 'Benutzername',
|
|
||||||
'type' => 'text',
|
|
||||||
'name' => 'dhl_username',
|
|
||||||
'validation' => true,
|
|
||||||
],
|
|
||||||
],
|
|
||||||
],
|
|
||||||
[
|
|
||||||
'id' => 1,
|
|
||||||
'name' => 'passwordGroup',
|
|
||||||
'inputs' => [
|
|
||||||
[
|
|
||||||
'label' => 'Passwort',
|
|
||||||
'type' => 'text',
|
|
||||||
'name' => 'dhl_password',
|
|
||||||
'validation' => true,
|
|
||||||
]
|
|
||||||
],
|
|
||||||
],
|
|
||||||
[
|
|
||||||
'id' => 2,
|
|
||||||
'name' => 'accountNumberGroup',
|
|
||||||
'inputs' => [
|
|
||||||
[
|
|
||||||
'label' => 'Abrechnungsnummer',
|
|
||||||
'type' => 'text',
|
|
||||||
'name' => 'dhl_accountnumber',
|
|
||||||
'validation' => true,
|
|
||||||
]
|
|
||||||
],
|
|
||||||
]
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @param array $postData
|
|
||||||
*
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
public function updatePostDataForAssistent($postData): array
|
|
||||||
{
|
|
||||||
$name = $this->app->erp->Firmendaten('name');
|
|
||||||
$street = $this->app->erp->Firmendaten('strasse');
|
|
||||||
$zip = $this->app->erp->Firmendaten('plz');
|
|
||||||
$city = $this->app->erp->Firmendaten('ort');
|
|
||||||
$country = $this->app->erp->Firmendaten('land');
|
|
||||||
$houseNo = '';
|
|
||||||
|
|
||||||
$streetParts = explode(' ', $street);
|
|
||||||
$partsCount = count($streetParts);
|
|
||||||
|
|
||||||
if($partsCount >= 2){
|
|
||||||
$street = implode(' ', array_slice($streetParts, 0, $partsCount - 1));
|
|
||||||
$houseNo = $streetParts[$partsCount - 1];
|
|
||||||
}
|
|
||||||
|
|
||||||
$postData['dhl_origin_name'] = $name;
|
|
||||||
$postData['dhl_origin_street'] = $street;
|
|
||||||
$postData['dhl_origin_houseno'] = $houseNo;
|
|
||||||
$postData['dhl_origin_zip'] = $zip;
|
|
||||||
$postData['dhl_origin_city'] = $city;
|
|
||||||
$postData['dhl_origin_country'] = $country;
|
|
||||||
|
|
||||||
return $postData;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return JsonResponse|null
|
|
||||||
*/
|
|
||||||
public function AuthByAssistent()
|
|
||||||
{
|
|
||||||
$step = (int)$this->app->Secure->GetPOST('step');
|
|
||||||
if($step == 0){
|
|
||||||
$username = $this->app->Secure->GetPOST('dhl_username');
|
|
||||||
$password = $this->app->Secure->GetPOST('dhl_password');
|
|
||||||
$accountnumber = $this->app->Secure->GetPOST('dhl_accountnumber');
|
|
||||||
|
|
||||||
$error = null;
|
|
||||||
if(empty($username)){
|
|
||||||
$error = 'Bitte Nutzernamen eingeben';
|
|
||||||
}else if(empty($password)){
|
|
||||||
$error = 'Bitte Passwort eingeben';
|
|
||||||
}else if(empty($accountnumber)){
|
|
||||||
$error = 'Bitte Abrechnungsnummer eingeben';
|
|
||||||
}
|
|
||||||
|
|
||||||
if($error != null) {
|
|
||||||
return new JsonResponse(
|
|
||||||
['error' => $error],
|
|
||||||
JsonResponse::HTTP_BAD_REQUEST
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
try{
|
|
||||||
$this->testCredentials($username, $password, $accountnumber);
|
|
||||||
}catch (DhlBaseException $e){
|
|
||||||
return new JsonResponse(
|
|
||||||
['error' => $e->getMessage()],
|
|
||||||
JsonResponse::HTTP_BAD_REQUEST
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return array
|
|
||||||
*/
|
|
||||||
public function getStructureDataForClickByClickSave(): array
|
|
||||||
{
|
|
||||||
return $this->updatePostDataForAssistent([]);
|
|
||||||
}
|
|
||||||
|
|
||||||
function EinstellungenStruktur()
|
|
||||||
{
|
|
||||||
if(!empty($this->einstellungen['dhl_username']) && !empty($this->einstellungen['dhl_password'])){
|
|
||||||
try{
|
|
||||||
$this->testCredentials($this->einstellungen['dhl_username'], $this->einstellungen['dhl_password'], $this->einstellungen['dhl_accountnumber']);
|
|
||||||
$this->app->Tpl->Set('MESSAGE', '<div class="info">Zugangsdaten erfolgreich überprüft</div>');
|
|
||||||
}catch (DhlBaseException $e){
|
|
||||||
$this->app->Tpl->Set('MESSAGE', '<div class="error">' . $e->getMessage() . '</div>');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return [
|
|
||||||
'dhl_username' => ['typ' => 'text', 'bezeichnung' => 'Benutzername:'],
|
|
||||||
'dhl_password' => ['typ' => 'text', 'bezeichnung' => 'Passwort:'],
|
|
||||||
'dhl_accountnumber' => ['typ' => 'text', 'bezeichnung' => 'Abrechnungsnummer:'],
|
|
||||||
'dhl_origin_name' => ['typ' => 'text', 'bezeichnung' => 'Versender Name:'],
|
|
||||||
'dhl_origin_street' => ['typ' => 'text', 'bezeichnung' => 'Versender Strasse:'],
|
|
||||||
'dhl_origin_houseno' => ['typ' => 'text', 'bezeichnung' => 'Versender Hausnummer:'],
|
|
||||||
'dhl_origin_city' => ['typ' => 'text', 'bezeichnung' => 'Versender Ort:'],
|
|
||||||
'dhl_origin_zip' => ['typ' => 'text', 'bezeichnung' => 'Versender PLZ:'],
|
|
||||||
'dhl_origin_country' => ['typ' => 'text', 'bezeichnung' => 'Versender Land (2-stellig):'],
|
|
||||||
'dhl_origin_email' => ['typ' => 'text', 'bezeichnung' => 'Versender Email:'],
|
|
||||||
|
|
||||||
'dhl_height' => ['typ' => 'text', 'bezeichnung' => 'Standardhöhe'],
|
|
||||||
'dhl_width' => ['typ' => 'text', 'bezeichnung' => 'Standardbreite'],
|
|
||||||
'dhl_length' => ['typ' => 'text', 'bezeichnung' => 'Standardlänge'],
|
|
||||||
|
|
||||||
'dhl_export_product_type' => [
|
|
||||||
'typ' => 'select',
|
|
||||||
'bezeichnung' => 'Export Producttyp',
|
|
||||||
'optionen' => [
|
|
||||||
'PRESENT' => 'Geschenke',
|
|
||||||
'COMMERCIAL_SAMPLE' => 'Kommerzielle Probe',
|
|
||||||
'DOCUMENT' => 'Dokumente',
|
|
||||||
'RETURN_OF_GOODS' => 'Rücksendungen',
|
|
||||||
'OTHER' => 'Andere',
|
|
||||||
]
|
|
||||||
],
|
|
||||||
'dhl_export_product_type_description' => [
|
|
||||||
'typ' => 'text',
|
|
||||||
'bezeichnung' => 'Beschreibung im Falle von "Andere"'
|
|
||||||
],
|
|
||||||
|
|
||||||
'dhl_product' => [
|
|
||||||
'typ' => 'select',
|
|
||||||
'bezeichnung' => 'Produkt:',
|
|
||||||
'optionen' => [
|
|
||||||
'V01PAK' => 'Paket national',
|
|
||||||
'V53WPAK' => 'Paket international'
|
|
||||||
],
|
|
||||||
],
|
|
||||||
'dhl_coding' => ['typ' => 'checkbox', 'bezeichnung' => 'Leitcodierung aktivieren'],
|
|
||||||
'autotracking' => ['typ' => 'checkbox', 'bezeichnung' => 'Tracking übernehmen:'],
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
||||||
public function testCredentials($username, $password, $accountNumber){
|
|
||||||
/** @var DhlApiFactory $dhlApiFactory */
|
|
||||||
$dhlApiFactory = $this->app->Container->get('DhlApiFactory');
|
|
||||||
|
|
||||||
/** @var DhlApi $dhlApi */
|
|
||||||
$dhlApi = $dhlApiFactory->createProductionInstance(
|
|
||||||
$username,
|
|
||||||
$password,
|
|
||||||
$accountNumber,
|
|
||||||
'',
|
|
||||||
'',
|
|
||||||
'',
|
|
||||||
'',
|
|
||||||
'',
|
|
||||||
'',
|
|
||||||
''
|
|
||||||
);
|
|
||||||
|
|
||||||
try {
|
|
||||||
$dhlApi->validateShipment(new CreateNationalShipmentRequest(
|
|
||||||
date("Y-m-d"),
|
|
||||||
1.0,
|
|
||||||
10,
|
|
||||||
20,
|
|
||||||
30,
|
|
||||||
"Max muster",
|
|
||||||
'',
|
|
||||||
'',
|
|
||||||
'Teststr. 1',
|
|
||||||
'11',
|
|
||||||
'86153',
|
|
||||||
'Augsburg',
|
|
||||||
'DE',
|
|
||||||
'max.muster@xentral.com',
|
|
||||||
false
|
|
||||||
));
|
|
||||||
}catch (InvalidRequestDataException $e){
|
|
||||||
// do nothing, test data is invalid
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function PaketmarkeDrucken($id, $sid)
|
|
||||||
{
|
|
||||||
$adressdaten = $this->GetAdressdaten($id, $sid);
|
|
||||||
$ret = $this->Paketmarke($sid, $id, '', false, $adressdaten);
|
|
||||||
if($sid === 'lieferschein'){
|
|
||||||
$deliveryNoteArr = $this->app->DB->SelectRow("SELECT adresse,projekt,versandart,auftragid FROM lieferschein WHERE id = '$id' LIMIT 1");
|
|
||||||
$adresse = $deliveryNoteArr['adresse'];
|
|
||||||
$projekt = $deliveryNoteArr['projekt'];
|
|
||||||
$versandart = $deliveryNoteArr['versandart'];
|
|
||||||
$adressvalidation = 2;
|
|
||||||
if($ret){
|
|
||||||
$adressvalidation = 1;
|
|
||||||
}
|
|
||||||
$tracking = '';
|
|
||||||
if(isset($adressdaten['tracking'])){
|
|
||||||
$tracking = $adressdaten['tracking'];
|
|
||||||
}
|
|
||||||
if(!isset($adressdaten['versandid'])){
|
|
||||||
$adressdaten['versandid'] = $this->app->DB->Select("SELECT id FROM versand WHERE abgeschlossen = 0 AND tracking = '' AND lieferschein = '$id' LIMIT 1");
|
|
||||||
}
|
|
||||||
if(!isset($adressdaten['versandid'])){
|
|
||||||
$this->app->DB->Insert("INSERT INTO versand (versandunternehmen, tracking,
|
|
||||||
versendet_am,abgeschlossen,lieferschein,freigegeben,firma,adresse,projekt,paketmarkegedruckt,adressvalidation)
|
|
||||||
VALUES ($versandart','$tracking',NOW(),1,'$id',1,'1','$adresse','$projekt',1,'$adressvalidation') ");
|
|
||||||
$adressdaten['versandid'] = $this->app->DB->GetInsertID();
|
|
||||||
}elseif($tracking){
|
|
||||||
$this->app->DB->Update("UPDATE versand SET freigegeben = 1, abgeschlossen = 1, tracking =1, paketmarkegedruckt = 1, tracking= '$tracking',adressvalidation = '$adressvalidation', versendet_am = now() WHERE id = '" . $adressdaten['versandid'] . "' LIMIT 1");
|
|
||||||
$this->app->DB->Update("UPDATE versand SET versandunternehmen = versandart WHERE id = '" . $adressdaten['versandid'] . "' AND versandunternehmen = '' LIMIT 1");
|
|
||||||
$this->app->DB->Update("UPDATE versand SET versandunternehmen = '$versandart' WHERE id = '" . $adressdaten['versandid'] . "' AND versandunternehmen = '' LIMIT 1");
|
|
||||||
}
|
|
||||||
$auftragid = $deliveryNoteArr['auftragid'];
|
|
||||||
if($auftragid){
|
|
||||||
$this->app->DB->Update("UPDATE auftrag SET schreibschutz = 1, status = 'abgeschlossen' WHERE id = '$auftragid' AND status = 'freigegeben' LIMIT 1");
|
|
||||||
}
|
|
||||||
if($adressvalidation == 1){
|
|
||||||
$this->app->erp->LieferscheinProtokoll($id, 'Paketmarke automatisch gedruckt');
|
|
||||||
if($adressdaten['versandid']){
|
|
||||||
return $adressdaten['versandid'];
|
|
||||||
}
|
|
||||||
}elseif($adressvalidation == 2){
|
|
||||||
$this->app->erp->LieferscheinProtokoll($id, 'automatisches Paketmarke Drucken fehlgeschlagen');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return $ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function Paketmarke($doctyp, $docid, $target = '', $error = false, &$adressdaten = null)
|
|
||||||
{
|
|
||||||
$id = $docid;
|
|
||||||
$sid = $doctyp;
|
|
||||||
if($adressdaten === null){
|
|
||||||
$drucken = $this->app->Secure->GetPOST('drucken');
|
|
||||||
$anders = $this->app->Secure->GetPOST('anders');
|
|
||||||
$tracking_again = $this->app->Secure->GetGET('tracking_again');
|
|
||||||
$module = $this->app->Secure->GetPOST('module');
|
|
||||||
if(empty($module)){
|
|
||||||
$module = $doctyp;
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
$drucken = 1;
|
|
||||||
$anders = '';
|
|
||||||
$tracking_again = '';
|
|
||||||
$module = $doctyp;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/** @var DhlApiFactory $dhlApiFactory */
|
|
||||||
$dhlApiFactory = $this->app->Container->get('DhlApiFactory');
|
|
||||||
|
|
||||||
/** @var DhlApi $dhlApi */
|
|
||||||
$dhlApi = $dhlApiFactory->createProductionInstance(
|
|
||||||
$this->einstellungen['dhl_username'],
|
|
||||||
$this->einstellungen['dhl_password'],
|
|
||||||
$this->einstellungen['dhl_accountnumber'],
|
|
||||||
$this->einstellungen['dhl_origin_name'],
|
|
||||||
$this->einstellungen['dhl_origin_street'],
|
|
||||||
$this->einstellungen['dhl_origin_houseno'],
|
|
||||||
$this->einstellungen['dhl_origin_zip'],
|
|
||||||
$this->einstellungen['dhl_origin_city'],
|
|
||||||
$this->einstellungen['dhl_origin_country'],
|
|
||||||
$this->einstellungen['dhl_origin_email']
|
|
||||||
);
|
|
||||||
|
|
||||||
if($drucken != '' || $tracking_again == '1'){
|
|
||||||
|
|
||||||
if($tracking_again != "1"){
|
|
||||||
$versandId = 0;
|
|
||||||
if($module === 'retoure'){
|
|
||||||
$Query = $this->app->DB->SelectRow("SELECT * FROM retoure where id='$id'");
|
|
||||||
}elseif($module === 'versand'){
|
|
||||||
$versandId = $id;
|
|
||||||
$lieferschein = $this->app->DB->Select("SELECT lieferschein WHERE id = '$id' LIMIT 1");
|
|
||||||
$Query = $this->app->DB->SelectRow("SELECT * FROM lieferschein where id='$lieferschein'");
|
|
||||||
}else{
|
|
||||||
$Query = $this->app->DB->SelectRow("SELECT * FROM lieferschein where id='$id'");
|
|
||||||
}
|
|
||||||
$projekt = $Query['projekt'];
|
|
||||||
$Adresse = $this->app->DB->SelectRow("SELECT * FROM adresse WHERE id='" . $Query['adresse'] . "'");
|
|
||||||
$product = '';
|
|
||||||
$Country = $Query['land'];
|
|
||||||
if($adressdaten === null){
|
|
||||||
$versandmit = $this->app->Secure->GetPOST("versandmit");
|
|
||||||
$trackingsubmit = $this->app->Secure->GetPOST("trackingsubmit");
|
|
||||||
$versandmitbutton = $this->app->Secure->GetPOST("versandmitbutton");
|
|
||||||
$tracking = $this->app->Secure->GetPOST("tracking");
|
|
||||||
$trackingsubmitcancel = $this->app->Secure->GetPOST("trackingsubmitcancel");
|
|
||||||
$retourenlabel = $this->app->Secure->GetPOST("retourenlabel");
|
|
||||||
|
|
||||||
//$Weight = $this->app->Secure->GetPOST("kg1");
|
|
||||||
$Name = $this->app->Secure->GetPOST("name");
|
|
||||||
$Name2 = $this->app->Secure->GetPOST("name2");
|
|
||||||
$Name3 = $this->app->Secure->GetPOST("name3");
|
|
||||||
$Street = $this->app->Secure->GetPOST("strasse");
|
|
||||||
$HouseNo = $this->app->Secure->GetPOST("hausnummer");
|
|
||||||
$ZipCode = $this->app->Secure->GetPOST("plz");
|
|
||||||
$City = $this->app->Secure->GetPOST("ort");
|
|
||||||
$Mail = $this->app->Secure->GetPOST("email");
|
|
||||||
$Phone = $this->app->Secure->GetPOST("phone");
|
|
||||||
$Country = $this->app->Secure->GetPOST("land");
|
|
||||||
$Weight = $this->app->Secure->GetPOST('kg1');
|
|
||||||
|
|
||||||
$height = $this->app->Secure->GetPOST('height');
|
|
||||||
$wigth = $this->app->Secure->GetPOST('width');
|
|
||||||
$length = $this->app->Secure->GetPOST('length');
|
|
||||||
|
|
||||||
$coding = $this->app->Secure->GetPOST('coding') == '1';
|
|
||||||
}else{
|
|
||||||
$versandmit = '';//$this->app->Secure->GetPOST("versandmit");
|
|
||||||
$trackingsubmit = '';//$this->app->Secure->GetPOST("trackingsubmit");
|
|
||||||
$versandmitbutton = '';//$this->app->Secure->GetPOST("versandmitbutton");
|
|
||||||
$tracking = '';//$this->app->Secure->GetPOST("tracking");
|
|
||||||
$trackingsubmitcancel = '';//$this->app->Secure->GetPOST("trackingsubmitcancel");
|
|
||||||
$retourenlabel = '';// $this->app->Secure->GetPOST("retourenlabel");
|
|
||||||
|
|
||||||
$Name = $adressdaten["name"];
|
|
||||||
$Name2 = $adressdaten["name2"];
|
|
||||||
$Name3 = $adressdaten["name3"];
|
|
||||||
$Street = $adressdaten["strasse"];
|
|
||||||
$HouseNo = $adressdaten["hausnummer"];
|
|
||||||
$ZipCode = $adressdaten['plz'];
|
|
||||||
$City = $adressdaten['ort'];
|
|
||||||
$Mail = $adressdaten['email'];
|
|
||||||
$Phone = $adressdaten["telefon"];
|
|
||||||
$Country = $adressdaten["land"];
|
|
||||||
$Company = "Company";
|
|
||||||
$Weight = $adressdaten["standardkg"];
|
|
||||||
$coding = $this->einstellungen['dhl_coding'] == 1;
|
|
||||||
|
|
||||||
$height = $this->einstellungen('dhl_height');
|
|
||||||
$wigth = $this->einstellungen('dhl_width');
|
|
||||||
$length = $this->einstellungen('dhl_length');
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
$shipmentDate = date("Y-m-d");
|
|
||||||
|
|
||||||
switch ($this->einstellungen['dhl_product']) {
|
|
||||||
case 'V01PAK':
|
|
||||||
{
|
|
||||||
$shipmentData = new CreateNationalShipmentRequest(
|
|
||||||
$shipmentDate,
|
|
||||||
$Weight,
|
|
||||||
$length,
|
|
||||||
$wigth,
|
|
||||||
$height,
|
|
||||||
$Name,
|
|
||||||
$Name2,
|
|
||||||
$Name3,
|
|
||||||
$Street,
|
|
||||||
$HouseNo,
|
|
||||||
$ZipCode,
|
|
||||||
$City,
|
|
||||||
$Country,
|
|
||||||
$Mail,
|
|
||||||
$coding
|
|
||||||
);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case 'V53WPAK':
|
|
||||||
{
|
|
||||||
$shipmentData = new CreateInterationalShipmentRequest(
|
|
||||||
$shipmentDate,
|
|
||||||
$Weight,
|
|
||||||
$length,
|
|
||||||
$wigth,
|
|
||||||
$height,
|
|
||||||
$Name,
|
|
||||||
$Name2,
|
|
||||||
$Name3,
|
|
||||||
$Street,
|
|
||||||
$HouseNo,
|
|
||||||
$ZipCode,
|
|
||||||
$City,
|
|
||||||
$Country,
|
|
||||||
$Mail,
|
|
||||||
$coding,
|
|
||||||
$this->einstellungen['dhl_export_product_type'],
|
|
||||||
$this->einstellungen['dhl_export_product_type_description'],
|
|
||||||
$this->getPackageContents($Query['id'])
|
|
||||||
);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
default:
|
|
||||||
{
|
|
||||||
throw new UnknownProductException();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$createResponse = $dhlApi->createShipment($shipmentData);
|
|
||||||
|
|
||||||
if($this->einstellungen['autotracking'] == "1")
|
|
||||||
$this->SetTracking($createResponse->getShipmentNumber(), $sid === 'versand' ? $id : 0, $lieferschein);
|
|
||||||
|
|
||||||
|
|
||||||
$data['drucker'] = $this->paketmarke_drucker;
|
|
||||||
$data['druckerlogistikstufe2'] = $this->export_drucker;
|
|
||||||
|
|
||||||
if(!$data['drucker']){
|
|
||||||
if($this->app->erp->GetStandardPaketmarkendrucker() > 0){
|
|
||||||
$data['drucker'] = $this->app->erp->GetStandardPaketmarkendrucker();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!$data['druckerlogistikstufe2']){
|
|
||||||
if($this->app->erp->GetStandardVersanddrucker($projekt) > 0){
|
|
||||||
$data['druckerlogistikstufe2'] = $this->app->erp->GetStandardVersanddrucker($projekt);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$pdf = $createResponse->getLabelAsPdf();
|
|
||||||
$datei = $this->app->erp->GetTMP() . 'DhlLabel_' . $createResponse->getShipmentNumber() . '.pdf';
|
|
||||||
|
|
||||||
file_put_contents($datei, $pdf);
|
|
||||||
|
|
||||||
$spoolerId = $this->app->printer->Drucken($data['drucker'], $datei);
|
|
||||||
if($spoolerId > 0 && $versandId > 0){
|
|
||||||
$this->app->DB->Update(
|
|
||||||
sprintf(
|
|
||||||
'UPDATE versand SET lastspooler_id = %d, lastprinter = %d WHERE id = %d',
|
|
||||||
$spoolerId, $data['drucker'], $versandId
|
|
||||||
)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
if($module === 'retoure'){
|
|
||||||
if(@is_file($datei) && @filesize($datei)){
|
|
||||||
$fileid = $this->app->erp->CreateDatei('DhlMarkeLabel_' . $this->app->DB->Select("SELECT belegnr FROM retoure WHERE id = '$id' LIMIT 1") . '.pdf',
|
|
||||||
'Anhang', '', "", $datei,
|
|
||||||
$this->app->DB->real_escape_string($this->app->User->GetName()));
|
|
||||||
$this->app->erp->AddDateiStichwort($fileid, 'anhang', 'retoure', $id);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
unlink($datei);
|
|
||||||
if($adressdaten !== null){
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if($createResponse->containsExportDocuments()){
|
|
||||||
$tmppdf = $this->app->erp->GetTMP() . 'DhlExport_' . $createResponse->getShipmentNumber() . '.pdf';
|
|
||||||
file_put_contents($tmppdf, $createResponse->getExportPaperAsPdf());
|
|
||||||
$spoolerId = $this->app->printer->Drucken($data['druckerlogistikstufe2'], $tmppdf);
|
|
||||||
if($versandId && $spoolerId){
|
|
||||||
$this->app->DB->Update(
|
|
||||||
sprintf(
|
|
||||||
'UPDATE versand SET lastexportspooler_id = %d, lastexportprinter = %d WHERE id = %d',
|
|
||||||
$spoolerId, $data['druckerlogistikstufe2'], $versandId
|
|
||||||
)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
if($module === 'retoure'){
|
|
||||||
if(@is_file($tmppdf) && @filesize($tmppdf)){
|
|
||||||
$fileid = $this->app->erp->CreateDatei('Export_' . $this->app->DB->Select("SELECT belegnr FROM retoure WHERE id = '$id' LIMIT 1") . '.pdf', 'Anhang', '', "", $tmppdf, $this->app->DB->real_escape_string($this->app->User->GetName()));
|
|
||||||
$this->app->erp->AddDateiStichwort($fileid, 'anhang', 'retoure', $id);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
unlink($tmppdf);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
} catch (DhlBaseException $e) {
|
|
||||||
$this->errors[] = $e->getMessage();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if($adressdaten !== null){
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if($target){
|
|
||||||
if($this->einstellungen['dhl_coding'] == '1'){
|
|
||||||
$this->app->Tpl->Set('DHL_CODING_CHECKED', 'checked="checked"');
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->app->Tpl->Add("HEIGHT", $this->einstellungen['dhl_height']);
|
|
||||||
$this->app->Tpl->Add("WIDTH", $this->einstellungen['dhl_width']);
|
|
||||||
$this->app->Tpl->Add("LENGTH", $this->einstellungen['dhl_length']);
|
|
||||||
$this->app->Tpl->Parse($target, 'versandarten_dhl.tpl');
|
|
||||||
}
|
|
||||||
if(count($this->errors) > 0){
|
|
||||||
return $this->errors;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private function getPackageContents($deliveryNoteId)
|
|
||||||
{
|
|
||||||
$contents = [];
|
|
||||||
/** @var Database $db */
|
|
||||||
$db = $this->app->Container->get('Database');
|
|
||||||
|
|
||||||
$select = $db->select()
|
|
||||||
->from('lieferschein_position AS l')
|
|
||||||
->cols([
|
|
||||||
'l.bezeichnung',
|
|
||||||
'l.menge',
|
|
||||||
'l.zolltarifnummer',
|
|
||||||
'l.herkunftsland',
|
|
||||||
'a.umsatz_netto_einzeln',
|
|
||||||
'g.gewicht'
|
|
||||||
])
|
|
||||||
->leftJoin('auftrag_position AS a', 'l.auftrag_position_id = a.id')
|
|
||||||
->leftJoin('artikel AS g', 'l.artikel = g.id')
|
|
||||||
->where('l.lieferschein=:id')
|
|
||||||
->bindValue('id', $deliveryNoteId);
|
|
||||||
|
|
||||||
$positions = $db->fetchAll($select->getStatement(), $select->getBindValues());
|
|
||||||
|
|
||||||
foreach ($positions as $position) {
|
|
||||||
$contents[] = new PackageContent(
|
|
||||||
(int)$position['menge'],
|
|
||||||
$position['bezeichnung'],
|
|
||||||
$position['umsatz_netto_einzeln'],
|
|
||||||
$position['herkunftsland'],
|
|
||||||
$position['zolltarifnummer'],
|
|
||||||
$position['gewicht']
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
return $contents;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function Export($daten)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private function log($message)
|
|
||||||
{
|
|
||||||
if(isset($this->einstellungen['log'])){
|
|
||||||
if(is_array($message) || is_object($message)){
|
|
||||||
error_log(print_r($message, true));
|
|
||||||
}else{
|
|
||||||
error_log($message);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,90 +0,0 @@
|
|||||||
01.01.2021;;1;N;Standardbrief;0,8;Standardbrief;0,8;;;140;90;0;235;125;5;0;20;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Für Briefe, Schriftstücke und kleinere Gegenstände bis 20 g. Die Länge muss mindestens das 1,4-fache der Breite betragen.;https://www.deutschepost.de/de/b/brief_postkarte.html;nein;nein
|
|
||||||
01.01.2021;;11;N;Kompaktbrief;0,95;Kompaktbrief;0,95;;;100;70;0;235;125;10;0;50;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Für Briefe, Schriftstücke und kleinere Gegenstände bis 50 g. Die Länge muss mindestens das 1,4-fache der Breite betragen.;https://www.deutschepost.de/de/b/brief_postkarte.html;nein;nein
|
|
||||||
01.01.2021;;21;N;Großbrief;1,55;Großbrief;1,55;;;100;70;0;353;250;20;0;500;;;;Preis nach UStG umsatzsteuerfrei. Für Briefe, Schriftstücke und kleinere Gegenstände bis 500 g.;https://www.deutschepost.de/de/b/brief_postkarte.html;nein;nein
|
|
||||||
01.01.2021;;31;N;Maxibrief;2,7;Maxibrief;2,7;;;100;70;0;353;250;50;0;1000;;;;Preis nach UStG umsatzsteuerfrei. Für Briefe, Schriftstücke und kleinere Gegenstände bis 1000 g.;https://www.deutschepost.de/de/b/brief_postkarte.html;nein;nein
|
|
||||||
01.01.2021;;41;N;Maxibrief bis 2000 g + Zusatzentgelt MBf;4,9;Maxibrief;2,7;Zusatzentgelt MBf;2,2;100;70;0;600;300;150;0;2000;;;Höchstmaße alternativ: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Ein Maxibrief bis 2000 g mit einem Überformat.;https://www.deutschepost.de/de/b/brief_postkarte.html;nein;nein
|
|
||||||
01.01.2021;;51;N;Postkarte;0,6;Postkarte;0,6;;;140;90;0;235;125;2;;;;;Flächengewicht: 150 g/m2 bis 500 g/m2. Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Die Länge muss mindestens das 1,4-fache der Breite betragen.;https://www.deutschepost.de/de/b/brief_postkarte.html;nein;nein
|
|
||||||
01.01.2021;1;195;N;Standardbrief + Prio;1,8;Standardbrief;0,8;Prio;1;140;90;0;235;125;5;0;20;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Kombi-Produkt aus Standardbrief (umsatzsteuerfrei) und Zusatzleistung Prio (umsatzsteuerfrei). Sendungsverfolgung per T&T. Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/p/prio.html;nein;nein
|
|
||||||
01.01.2021;1;196;N;Kompaktbrief + Prio;1,95;Kompaktbrief;0,95;Prio;1;100;70;0;235;125;10;0;50;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Kombi-Produkt aus Kompaktbrief (umsatzsteuerfrei) und Zusatzleistung Prio (umsatzsteuerfrei). Sendungsverfolgung per T&T. Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/p/prio.html;nein;nein
|
|
||||||
01.01.2021;1;197;N;Großbrief + Prio;2,55;Großbrief;1,55;Prio;1;100;70;0;353;250;20;0;500;;;;Kombi-Produkt aus Großbrief (umsatzsteuerfrei) und Zusatzleistung Prio (umsatzsteuerfrei). Sendungsverfolgung per T&T. Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/p/prio.html;nein;nein
|
|
||||||
01.01.2021;1;198;N;Maxibrief + Prio;3,7;Maxibrief;2,7;Prio;1;100;70;0;353;250;50;0;1000;;;;Kombi-Produkt aus Maxibrief (umsatzsteuerfrei) und Zusatzleistung Prio (umsatzsteuerfrei). Sendungsverfolgung per T&T. Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/p/prio.html;nein;nein
|
|
||||||
01.01.2021;1;199;N;Maxibrief bis 2000 g + Zusatzentgelt MBf + Prio;5,9;Maxibrief;2,7;Zusatzentgelt MBf + Prio;3,2;100;70;0;600;300;150;0;2000;;;Höchstmaße alternativ: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Kombi-Produkt aus Maxibrief bis 2000 g mit einem Überformat (umsatzsteuerfrei) und Zusatzleistung Prio (umsatzsteuerfrei). Sendungsverfolgung per T&T. Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/p/prio.html;nein;nein
|
|
||||||
01.01.2021;1;200;N;Postkarte + Prio;1,6;Postkarte;0,6;Prio;1;140;90;0;235;125;2;;;;;Flächengewicht: 150 g/m2 bis 500 g/m2. Die Länge muss mindestens das 1,4-fache der Breite betragen.;Kombi-Produkt aus Postkarte (umsatzsteuerfrei) und Zusatzleistung Prio (umsatzsteuerfrei). Sendungsverfolgung per T&T. Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/p/prio.html;nein;nein
|
|
||||||
01.01.2021;;282;N;Bücher- und Warensendung 500;1,9;BÜCHER- UND WARENSENDUNG 500;1,9;;;100;70;0;353;250;50;0;500;;;;Preis nach UStG umsatzsteuerfrei. Bücher- und Warenversand bis 500 g, 35,3 x 25 x 5 cm. Zustellung bis 4 Werktage. Verschlossener Versand. Keine brieflichen Mitteilungen.;https://www.deutschepost.de/de/w/buecherundwarensendung.html;nein;nein
|
|
||||||
01.01.2021;;290;N;Bücher- und Warensendung 1000;2,2;BÜCHER- UND WARENSENDUNG 1000;2,2;;;100;70;0;353;250;50;501;1000;;;;Preis nach UStG umsatzsteuerfrei. Bücher- und Warenversand bis 1000 g, 35,3 x 25 x 5 cm. Zustellung bis 4 Werktage. Verschlossener Versand. Keine brieflichen Mitteilungen.;https://www.deutschepost.de/de/w/buecherundwarensendung.html;nein;nein
|
|
||||||
01.01.2021;;401;N;Streifbandzeitung bis 50 g;0,89;Streifbandzeitung bis 50 g;0,89;;;140;90;0;353;250;50;0;50;;;Einlieferung in Filiale oder Großannahmestelle, bei mehr als 500 Stück immer in Großannahmestelle. Mit Produkt- oder Internetmarke ist die Einlieferung über Briefkasten möglich.;Nutzung exklusiv f<>ür Vertragspartner der Deutsche Post Presse Distribution oder gewerbliche Einrichtungen des Pressehandels.;https://www.deutschepost.de/de/p/presse-distribution/produkte/streifbandzeitung.html;nein;nein
|
|
||||||
01.01.2021;;402;N;Streifbandzeitung bis 100 g;1,19;Streifbandzeitung über 50 g bis 100 g;1,19;;;140;90;0;353;250;50;51;100;;;Einlieferung in Filiale oder Großannahmestelle, bei mehr als 500 Stück immer in Großannahmestelle. Mit Produkt- oder Internetmarke ist die Einlieferung über Briefkasten möglich.;Nutzung exklusiv f<>ür Vertragspartner der Deutsche Post Presse Distribution oder gewerbliche Einrichtungen des Pressehandels.;https://www.deutschepost.de/de/p/presse-distribution/produkte/streifbandzeitung.html;nein;nein
|
|
||||||
01.01.2021;;403;N;Streifbandzeitung bis 250 g;1,37;Streifbandzeitung über 100 g bis 250 g;1,37;;;140;90;0;353;250;50;101;250;;;Einlieferung in Filiale oder Großannahmestelle, bei mehr als 500 Stück immer in Großannahmestelle. Mit Produkt- oder Internetmarke ist die Einlieferung über Briefkasten möglich.;Nutzung exklusiv f<>ür Vertragspartner der Deutsche Post Presse Distribution oder gewerbliche Einrichtungen des Pressehandels.;https://www.deutschepost.de/de/p/presse-distribution/produkte/streifbandzeitung.html;nein;nein
|
|
||||||
01.01.2021;;404;N;Streifbandzeitung bis 500 g;1,67;Streifbandzeitung über 250 g bis 500 g;1,67;;;140;90;0;353;250;50;251;500;;;Einlieferung in Filiale oder Großannahmestelle, bei mehr als 500 Stück immer in Großannahmestelle. Mit Produkt- oder Internetmarke ist die Einlieferung über Briefkasten möglich.;Nutzung exklusiv f<>ür Vertragspartner der Deutsche Post Presse Distribution oder gewerbliche Einrichtungen des Pressehandels.;https://www.deutschepost.de/de/p/presse-distribution/produkte/streifbandzeitung.html;nein;nein
|
|
||||||
01.01.2021;;405;N;Streifbandzeitung bis 1000 g;2,5;Streifbandzeitung über 500 g bis 1000 g;2,5;;;140;90;0;353;250;50;501;1000;;;Einlieferung in Filiale oder Großannahmestelle, bei mehr als 500 Stück immer in Großannahmestelle. Mit Produkt- oder Internetmarke ist die Einlieferung über Briefkasten möglich.;Nutzung exklusiv f<>ür Vertragspartner der Deutsche Post Presse Distribution oder gewerbliche Einrichtungen des Pressehandels.;https://www.deutschepost.de/de/p/presse-distribution/produkte/streifbandzeitung.html;nein;nein
|
|
||||||
01.01.2021;1;1002;N;Standardbrief Integral + EINSCHREIBEN EINWURF;3;Standardbrief;0,8;EINSCHREIBEN EINWURF;2,2;140;90;0;235;125;5;0;20;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Ein Standardbrief bis 20 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 20 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1007;N;Standardbrief Integral + EINSCHREIBEN;3,3;Standardbrief;0,8;EINSCHREIBEN;2,5;140;90;0;235;125;5;0;20;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Ein Standardbrief bis 20 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1009;N;Standardbrief Integral + EINSCHREIBEN + EIGENHÄNDIG;5,5;Standardbrief;0,8;EINSCHREIBEN + EIGENHÄNDIG;4,7;140;90;0;235;125;5;0;20;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Ein Standardbrief bis 20 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1012;N;Kompaktbrief Integral + EINSCHREIBEN EINWURF;3,15;Kompaktbrief;0,95;EINSCHREIBEN EINWURF;2,2;100;70;0;235;125;10;0;50;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Ein Kompaktbrief bis 50 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 20 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1017;N;Kompaktbrief Integral + EINSCHREIBEN;3,45;Kompaktbrief;0,95;EINSCHREIBEN;2,5;100;70;0;235;125;10;0;50;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Ein Kompaktbrief bis 50 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1019;N;Kompaktbrief Integral + EINSCHREIBEN + EIGENHÄNDIG;5,65;Kompaktbrief;0,95;EINSCHREIBEN + EIGENHÄNDIG;4,7;100;70;0;235;125;10;0;50;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Ein Kompaktbrief bis 50 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1022;N;Großbrief Integral + EINSCHREIBEN EINWURF;3,75;Großbrief;1,55;EINSCHREIBEN EINWURF;2,2;100;70;0;353;250;20;0;500;;;;Preis nach UStG umsatzsteuerfrei. Ein Großbrief bis 500 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 20 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1027;N;Großbrief Integral + EINSCHREIBEN;4,05;Großbrief;1,55;EINSCHREIBEN;2,5;100;70;0;353;250;20;0;500;;;;Preis nach UStG umsatzsteuerfrei. Ein Großbrief bis 500 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1029;N;Großbrief Integral + EINSCHREIBEN + EIGENHÄNDIG;6,25;Großbrief;1,55;EINSCHREIBEN + EIGENHÄNDIG;4,7;100;70;0;353;250;20;0;500;;;;Preis nach UStG umsatzsteuerfrei. Ein Großbrief bis 500 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1032;N;Maxibrief Integral + EINSCHREIBEN EINWURF;4,9;Maxibrief;2,7;EINSCHREIBEN EINWURF;2,2;100;70;0;353;250;50;0;1000;;;;Preis nach UStG umsatzsteuerfrei. Ein Maxibrief bis 1000 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 20 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1037;N;Maxibrief Integral + EINSCHREIBEN;5,2;Maxibrief;2,7;EINSCHREIBEN;2,5;100;70;0;353;250;50;0;1000;;;;Preis nach UStG umsatzsteuerfrei. Ein Maxibrief bis 1000 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1039;N;Maxibrief Integral + EINSCHREIBEN + EIGENHÄNDIG;7,4;Maxibrief;2,7;EINSCHREIBEN + EIGENHÄNDIG;4,7;100;70;0;353;250;50;0;1000;;;;Preis nach UStG umsatzsteuerfrei. Ein Maxibrief bis 1000 g, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1042;N;Maxibrief Integral + Zusatzentgelt MBf + EINSCHREIBEN EINWURF;7,1;Maxibrief;2,7;Zusatzentgelt MBf + EINSCHREIBEN EINWURF;4,4;100;70;0;600;300;150;0;2000;;;Höchstmaße alternativ: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Ein Maxibrief bis 2000 g mit einem Überformat, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 20 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1047;N;Maxibrief Integral + Zusatzentgelt MBf + EINSCHREIBEN;7,4;Maxibrief;2,7;Zusatzentgelt MBf + EINSCHREIBEN;4,7;100;70;0;600;300;150;0;2000;;;Höchstmaße alternativ: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Ein Maxibrief bis 2000 g mit einem Überformat, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1049;N;Maxibrief Integral + Zusatzentgelt MBf + EINSCHREIBEN + EIGENHÄNDIG;9,6;Maxibrief;2,7;Zusatzentgelt MBf + EINSCHREIBEN + EIGENHÄNDIG;6,9;100;70;0;600;300;150;0;2000;;;Höchstmaße alternativ: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Ein Maxibrief bis 2000 g mit einem Überformat, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1052;N;Postkarte Integral + EINSCHREIBEN EINWURF;2,8;Postkarte;0,6;EINSCHREIBEN EINWURF;2,2;140;90;0;235;125;2;;;;;Flächengewicht: 150 g/m2 bis 500 g/m2. Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Eine Postkarte, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 20 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1057;N;Postkarte Integral + EINSCHREIBEN;3,1;Postkarte;0,6;EINSCHREIBEN;2,5;140;90;0;235;125;2;;;;;Flächengewicht: 150 g/m2 bis 500 g/m2. Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Eine Postkarte, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;1;1059;N;Postkarte Integral + EINSCHREIBEN + EIGENHÄNDIG;5,3;Postkarte;0,6;EINSCHREIBEN + EIGENHÄNDIG;4,7;140;90;0;235;125;2;;;;;Flächengewicht: 150 g/m2 bis 500 g/m2. Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Eine Postkarte, Zustellnachweis durch Postmitarbeiter, Sendungsverfolgung per T&T, Haftung bis 25 EUR, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/e/einschreiben.html;nein;nein
|
|
||||||
01.01.2021;;10001;I;Standardbrief Intern. GK;1,1;Standardbrief Intern. GK;1,1;;;140;90;0;235;125;5;0;20;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Für Briefe, Schriftstücke und kleinere Gegenstände bis 20 g. Die Länge muss mindestens das 1,4-fache der Breite betragen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/brief-postkarte-international.html;nein;nein
|
|
||||||
01.01.2021;;10011;I;Kompaktbrief Intern. GK;1,7;Kompaktbrief Intern. GK;1,7;;;140;90;0;235;125;10;0;50;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Für Briefe, Schriftstücke und kleinere Gegenstände bis 50 g. Die Länge muss mindestens das 1,4-fache der Breite betragen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/brief-postkarte-international.html;nein;nein
|
|
||||||
01.01.2021;;10051;I;Großbrief Intern. GK;3,7;Großbrief Intern. GK;3,7;;;140;90;0;600;600;600;0;500;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Für Briefe, Schriftstücke und kleinere Gegenstände bis 500 g. Keine Seite länger als 600 mm.;https://www.deutschepost.de/de/b/briefe-ins-ausland/brief-postkarte-international.html;nein;nein
|
|
||||||
01.01.2021;;10071;I;Maxibrief Intern. bis 1.000g GK;7;Maxibrief Intern. bis 1.000g GK;7;;;140;90;0;600;600;600;501;1000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Für Briefe, Schriftstücke und kleinere Gegenstände bis 1000 g. Keine Seite länger als 600 mm.;https://www.deutschepost.de/de/b/briefe-ins-ausland/brief-postkarte-international.html;nein;nein
|
|
||||||
01.01.2021;;10091;I;Maxibrief Intern. bis 2.000g GK;17;Maxibrief Intern. bis 2.000g GK;17;;;140;90;0;600;600;600;1001;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Für Briefe, Schriftstücke und kleinere Gegenstände bis 2000 g. Keine Seite länger als 600 mm.;https://www.deutschepost.de/de/b/briefe-ins-ausland/brief-postkarte-international.html;nein;nein
|
|
||||||
01.01.2021;1;10162;I;Brief Kilotarif international ohne USt + EINSCHREIBEN;4,29;Frankierung Brief Kilotarif Stückentgelt;0,79;EINSCHREIBEN;3,5;140;90;0;600;600;600;0;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Für Briefe, Schriftstücke und kleinere Gegenstände. Die Länge muss mindestens das 1,4-fache der Breite betragen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/brief-international-kilotarif.html;ja;nein
|
|
||||||
01.01.2021;;10166;I;Brief Kilotarif international ohne USt.;0,79;Frankierung Brief Kilotarif Stückentgelt;0,79;;;140;90;0;600;600;600;0;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Für Briefe, Schriftstücke und kleinere Gegenstände. Die Länge muss mindestens das 1,4-fache der Breite betragen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/brief-international-kilotarif.html;ja;nein
|
|
||||||
01.01.2021;;10201;I;Postkarte Intern. GK;0,95;Postkarte Intern. GK;0,95;;;140;90;0;235;125;2;;;;;Flächengewicht: 150 g/m2 bis 500 g/m2. Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Die Länge muss mindestens das 1,4-fache der Breite betragen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/brief-postkarte-international.html;nein;nein
|
|
||||||
01.01.2021;;10246;I;Warenpost International XS;3,8;Warenpost International XS;3,8;;;140;90;0;353;250;30;0;500;;;;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10247;I;Warenpost International S;5;Warenpost International S;5;;;140;90;0;600;600;600;0;500;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10248;I;Warenpost International M;9;Warenpost International M;9;;;140;90;0;600;600;600;501;1000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10249;I;Warenpost International L;19,9;Warenpost International L;19,9;;;140;90;0;600;600;600;1001;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;1;10250;I;Warenpost International XS Tracked;6,15;Warenpost International XS Tracked;6,15;;;140;90;0;353;250;30;0;500;;;;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;1;10251;I;Warenpost International S Tracked;7,35;Warenpost International S Tracked;7,35;;;140;90;0;600;600;600;0;500;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;1;10252;I;Warenpost International M Tracked;11,35;Warenpost International M Tracked;11,35;;;140;90;0;600;600;600;501;1000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;1;10253;I;Warenpost International L Tracked;22,25;Warenpost International L Tracked;22,25;;;140;90;0;600;600;600;1001;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10254;I;Warenpost International XS (EU/USt.);3,81;Warenpost International XS (EU/USt.);3,81;;;140;90;0;353;250;30;0;500;;;;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10255;I;Warenpost International S (EU/USt.);4,4;Warenpost International S (EU/USt.);4,4;;;140;90;0;600;600;600;0;500;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10256;I;Warenpost International M (EU/USt.);8,33;Warenpost International M (EU/USt.);8,33;;;140;90;0;600;600;600;501;1000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10257;I;Warenpost International L (EU/USt.);20,23;Warenpost International L (EU/USt.);20,23;;;140;90;0;600;600;600;1001;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;1;10258;I;Warenpost International XS Tracked (EU/USt.);6,6;Warenpost International XS Tracked (EU/USt.);6,6;;;140;90;0;353;250;30;0;500;;;;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;1;10259;I;Warenpost International S Tracked (EU/USt.);7,2;Warenpost International S Tracked (EU/USt.);7,2;;;140;90;0;600;600;600;0;500;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;1;10260;I;Warenpost International M Tracked (EU/USt.);11,13;Warenpost International M Tracked (EU/USt.);11,13;;;140;90;0;600;600;600;501;1000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;1;10261;I;Warenpost International L Tracked (EU/USt.);23,03;Warenpost International L Tracked (EU/USt.);23,03;;;140;90;0;600;600;600;1001;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10270;I;Warenpost Int. KT (EU/USt.) für Internetmarke;1,5;WARENPOST INT KT EU Internetmarke;1,5;;;140;90;0;600;600;600;0;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;ja;ja
|
|
||||||
01.01.2021;1;10271;I;Warenpost Int. KT Tracked (EU/USt.) für Internetmarke;3,6;WARENPOST INT KT TRACKED EU Internetmarke;3,6;;;140;90;0;600;600;600;0;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;ja;ja
|
|
||||||
01.01.2021;;10272;I;Warenpost Int. KT (Non EU) für Internetmarke;2;WARENPOST INT KT NON EU Internetmarke;2;;;140;90;0;600;600;600;0;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;ja;ja
|
|
||||||
01.01.2021;1;10273;I;Warenpost Int. KT Tracked (Non EU) für Internetmarke;4,1;WARENPOST INT KT TRACKED NON EU Internetmarke;4,1;;;140;90;0;600;600;600;0;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;ja;ja
|
|
||||||
01.01.2021;;10280;I;Warenpost International XS Unterschrift;7,3;Warenpost International XS Unterschrift;7,3;;;140;90;0;353;250;30;0;500;;;;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10281;I;Warenpost International S Unterschrift;8,5;Warenpost International S Unterschrift;8,5;;;140;90;0;600;600;600;0;500;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10282;I;Warenpost International M Unterschrift;12,5;Warenpost International M Unterschrift;12,5;;;140;90;0;600;600;600;501;1000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10283;I;Warenpost International L Unterschrift;23,4;Warenpost International L Unterschrift;23,4;;;140;90;0;600;600;600;1001;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10284;I;Warenpost International XS Unterschrift (EU/USt.);7,97;Warenpost International XS Unterschrift (EU/USt.);7,97;;;140;90;0;353;250;30;0;500;;;;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10285;I;Warenpost International S Unterschrift (EU/USt.);8,57;Warenpost International S Unterschrift (EU/USt.);8,57;;;140;90;0;600;600;600;0;500;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10286;I;Warenpost International M Unterschrift (EU/USt.);12,5;Warenpost International M Unterschrift (EU/USt.);12,5;;;140;90;0;600;600;600;501;1000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10287;I;Warenpost International L Unterschrift (EU/USt.);24,4;Warenpost International L Unterschrift (EU/USt.);24,4;;;140;90;0;600;600;600;1001;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;nein;ja
|
|
||||||
01.01.2021;;10292;I;Warenpost Int. KT Unterschrift (EU/USt.) für Internetmarke;4,75;WARENPOST INT KT UNTERSCHRIFT EU Internetmarke;4,75;;;140;90;0;600;600;600;0;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerpflichtig. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;ja;ja
|
|
||||||
01.01.2021;;10293;I;Warenpost Int. KT Unterschrift (Non EU) für Internetmarke;5,25;WARENPOST INT KT UNTERSCHRIFT NON EU Internetmarke;5,25;;;140;90;0;600;600;600;0;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Vertragsprodukt. Umsatzsteuerfrei. Nur Waren als Inhalt, keine schriftlichen Mitteilungen zulässig, eine auf den Inhalt bezogene Rechnung ist zulässig, für Versande in Länder außerhalb der EU ist immer eine Zollinhaltserklärung auf der Sendung anzubringen.;https://www.deutschepost.de/de/b/briefe-ins-ausland/warenpost-international.html;ja;ja
|
|
||||||
01.01.2021;1;11006;I;Standardbrief Intern. GK Integral + EINSCHREIBEN;4,6;Standardbrief Intern. GK;1,1;EINSCHREIBEN;3,5;140;90;0;235;125;5;0;20;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Ein Standardbrief INTERNATIONAL bis 20 g, nachgewiesene Übergabe an Empfänger, Sendungsverfolgung per T&T, Haftung, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/b/briefe-ins-ausland/einschreiben-international.html;nein;nein
|
|
||||||
01.01.2021;1;11016;I;Kompaktbrief Intern. GK Integral + EINSCHREIBEN;5,2;Kompaktbrief Intern. GK;1,7;EINSCHREIBEN;3,5;140;90;0;235;125;10;0;50;;;Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Ein Kompaktbrief INTERNATIONAL bis 50 g, nachgewiesene Übergabe an Empfänger, Sendungsverfolgung per T&T, Haftung, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/b/briefe-ins-ausland/einschreiben-international.html;nein;nein
|
|
||||||
01.01.2021;1;11056;I;Großbrief Intern. GK Integral + EINSCHREIBEN;7,2;Großbrief Intern. GK;3,7;EINSCHREIBEN;3,5;140;90;0;600;600;600;0;500;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Ein Großbrief INTERNATIONAL bis 500 g, nachgewiesene Übergabe an Empfänger, Sendungsverfolgung per T&T, Haftung, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/b/briefe-ins-ausland/einschreiben-international.html;nein;nein
|
|
||||||
01.01.2021;1;11076;I;Maxibrief Intern. bis 1.000g GK Integral + EINSCHREIBEN;10,5;Maxibrief Intern. bis 1.000g GK;7;EINSCHREIBEN;3,5;140;90;0;600;600;600;501;1000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Ein Maxibrief INTERNATIONAL bis 1000 g, nachgewiesene Übergabe an Empfänger, Sendungsverfolgung per T&T, Haftung, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/b/briefe-ins-ausland/einschreiben-international.html;nein;nein
|
|
||||||
01.01.2021;1;11096;I;Maxibrief Intern. bis 2.000g GK Integral + EINSCHREIBEN;20,5;Maxibrief Intern. bis 2.000g GK;17;EINSCHREIBEN;3,5;140;90;0;600;600;600;1001;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Ein Maxibrief INTERNATIONAL bis 2000 g, nachgewiesene Übergabe an Empfänger, Sendungsverfolgung per T&T, Haftung, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/b/briefe-ins-ausland/einschreiben-international.html;nein;nein
|
|
||||||
01.01.2021;1;11202;I;Postkarte Intern. GK Integral + EINSCHREIBEN;4,45;Postkarte Intern. GK;0,95;EINSCHREIBEN;3,5;140;90;0;235;125;2;;;;;Flächengewicht: 150 g/m2 bis 500 g/m2. Die Länge muss mindestens das 1,4-fache der Breite betragen.;Preis nach UStG umsatzsteuerfrei. Eine Postkarte INTERNATIONAL, nachgewiesene Übergabe an Empfänger, Sendungsverfolgung per T&T, Haftung, Einlieferung über die Filialen der Deutschen Post.;https://www.deutschepost.de/de/b/briefe-ins-ausland/einschreiben-international.html;nein;nein
|
|
||||||
01.01.2021;;30092;I;Presse Eco 500g;3,5;Presse Eco 500g;3,5;;;140;90;0;600;600;600;0;500;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Mit Presse Eco 500g versenden Sie Zeitungen und Zeitschriften.;https://www.deutschepost.de/de/b/briefe-ins-ausland/presse-international.html;nein;nein
|
|
||||||
01.01.2021;;30112;I;Presse Eco 1000g;6,5;Presse Eco 1000g;6,5;;;140;90;0;600;600;600;501;1000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Mit Presse Eco 1000g versenden Sie Zeitungen und Zeitschriften.;https://www.deutschepost.de/de/b/briefe-ins-ausland/presse-international.html;nein;nein
|
|
||||||
01.01.2021;;30132;I;Presse Eco 2000g;14;Presse Eco 2000g;14;;;140;90;0;600;600;600;1001;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Mit Presse Eco 2000g versenden Sie Zeitungen und Zeitschriften.;https://www.deutschepost.de/de/b/briefe-ins-ausland/presse-international.html;nein;nein
|
|
||||||
01.01.2021;;30202;I;Presse Prio 500g;3,7;Presse Prio 500g;3,7;;;140;90;0;600;600;600;0;500;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Mit Presse Prio 500 g versenden Sie Zeitungen und Zeitschriften. Bitte beachten Sie die Kennzeichnungspflicht der Sendung.;https://www.deutschepost.de/de/b/briefe-ins-ausland/presse-international.html;nein;nein
|
|
||||||
01.01.2021;1;30207;I;Presse Prio 500g + EINSCHREIBEN;7,2;Presse Prio 500g;3,7;EINSCHREIBEN;3,5;140;90;0;600;600;600;0;500;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Presse Prio 500g, nachgewiesene Übergabe an Empfänger, Sendungsverfolgung per T&T, Haftung, Einlieferung über die Filialen der Deutschen Post. Bitte beachten Sie die Kennzeichnungspflicht der Sendung. ;https://www.deutschepost.de/de/b/briefe-ins-ausland/presse-international.html;nein;nein
|
|
||||||
01.01.2021;;30222;I;Presse Prio 1000g;7;Presse Prio 1000g;7;;;140;90;0;600;600;600;501;1000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Mit Presse Prio 1000 g versenden Sie Zeitungen und Zeitschriften. Bitte beachten Sie die Kennzeichnungspflicht der Sendung.;https://www.deutschepost.de/de/b/briefe-ins-ausland/presse-international.html;nein;nein
|
|
||||||
01.01.2021;1;30227;I;Presse Prio 1000g + EINSCHREIBEN;10,5;Presse Prio 1000g;7;EINSCHREIBEN;3,5;140;90;0;600;600;600;501;1000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Presse Prio 1000 g, nachgewiesene Übergabe an Empfänger, Sendungsverfolgung per T&T, Haftung, Einlieferung über die Filialen der Deutschen Post. Bitte beachten Sie die Kennzeichnungspflicht der Sendung.;https://www.deutschepost.de/de/b/briefe-ins-ausland/presse-international.html;nein;nein
|
|
||||||
01.01.2021;;30242;I;Presse Prio 2000g;17;Presse Prio 2000g;17;;;140;90;0;600;600;600;1001;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Mit Presse Prio 2000 g versenden Sie Zeitungen und Zeitschriften. Bitte beachten Sie die Kennzeichnungspflicht der Sendung.;https://www.deutschepost.de/de/b/briefe-ins-ausland/presse-international.html;nein;nein
|
|
||||||
01.01.2021;1;30247;I;Presse Prio 2000g + EINSCHREIBEN;20,5;Presse Prio 2000g;17;EINSCHREIBEN;3,5;140;90;0;600;600;600;1001;2000;;;Höchstmaße: L + B + H = 900 mm, dabei keine Seite länger als 600 mm.;Preis nach UStG umsatzsteuerfrei. Presse Prio 2000g, nachgewiesene Übergabe an Empfänger, Sendungsverfolgung per T&T, Haftung, Einlieferung über die Filialen der Deutschen Post. Bitte beachten Sie die Kennzeichnungspflicht der Sendung. ;https://www.deutschepost.de/de/b/briefe-ins-ausland/presse-international.html;nein;nein
|
|
|
@ -1,410 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
require_once(dirname(__FILE__).'/../class.versanddienstleister.php');
|
|
||||||
class Versandart_sonstiges extends Versanddienstleister{
|
|
||||||
|
|
||||||
private $einstellungen;
|
|
||||||
|
|
||||||
private $info;
|
|
||||||
|
|
||||||
private $client;
|
|
||||||
private $credentials;
|
|
||||||
|
|
||||||
public $paketmarke_drucker;
|
|
||||||
public $export_drucker;
|
|
||||||
|
|
||||||
public $errors;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor for Shipment SDK
|
|
||||||
*
|
|
||||||
* @param type $api_einstellungen
|
|
||||||
* @param type $customer_info
|
|
||||||
*/
|
|
||||||
|
|
||||||
function __construct(&$app, $id) {
|
|
||||||
$this->id = $id;
|
|
||||||
$this->app = &$app;
|
|
||||||
$einstellungen_json = $this->app->DB->Select("SELECT einstellungen_json FROM versandarten WHERE id = '$id' LIMIT 1");
|
|
||||||
$this->paketmarke_drucker = $this->app->DB->Select("SELECT paketmarke_drucker FROM versandarten WHERE id = '$id' LIMIT 1");
|
|
||||||
$this->export_drucker = $this->app->DB->Select("SELECT export_drucker FROM versandarten WHERE id = '$id' LIMIT 1");
|
|
||||||
if($einstellungen_json)
|
|
||||||
{
|
|
||||||
$this->einstellungen = json_decode($einstellungen_json,true);
|
|
||||||
}else{
|
|
||||||
$this->einstellungen = array();
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->credentials = $this->einstellungen;
|
|
||||||
//$this->errors = array();
|
|
||||||
$data = $this->einstellungen;
|
|
||||||
$this->info = $this->einstellungen;
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public function GetBezeichnung()
|
|
||||||
{
|
|
||||||
return 'UPS';
|
|
||||||
}
|
|
||||||
|
|
||||||
function EinstellungenStruktur()
|
|
||||||
{
|
|
||||||
return array();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public function VersandartMindestgewicht()
|
|
||||||
{
|
|
||||||
if(!isset($this->einstellungen['WeightInKG']))return 1;
|
|
||||||
if($this->einstellungen['WeightInKG'] === '')return 1;
|
|
||||||
return str_replace(',','.',$this->einstellungen['WeightInKG']);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function Paketmarke($doctyp, $docid, $target = '', $error = false)
|
|
||||||
{
|
|
||||||
$id = $docid;
|
|
||||||
$drucken = $this->app->Secure->GetPOST("drucken");
|
|
||||||
$anders = $this->app->Secure->GetPOST("anders");
|
|
||||||
$land = $this->app->Secure->GetPOST("land");
|
|
||||||
$tracking_again = $this->app->Secure->GetGET("tracking_again");
|
|
||||||
|
|
||||||
|
|
||||||
$versandmit= $this->app->Secure->GetPOST("versandmit");
|
|
||||||
$trackingsubmit= $this->app->Secure->GetPOST("trackingsubmit");
|
|
||||||
$versandmitbutton = $this->app->Secure->GetPOST("versandmitbutton");
|
|
||||||
$tracking= $this->app->Secure->GetPOST("tracking");
|
|
||||||
$trackingsubmitcancel= $this->app->Secure->GetPOST("trackingsubmitcancel");
|
|
||||||
$retourenlabel = $this->app->Secure->GetPOST("retourenlabel");
|
|
||||||
|
|
||||||
$kg= $this->app->Secure->GetPOST("kg1");
|
|
||||||
$name= $this->app->Secure->GetPOST("name");
|
|
||||||
$name2= $this->app->Secure->GetPOST("name2");
|
|
||||||
$name3= $this->app->Secure->GetPOST("name3");
|
|
||||||
$strasse= $this->app->Secure->GetPOST("strasse");
|
|
||||||
$hausnummer= $this->app->Secure->GetPOST("hausnummer");
|
|
||||||
$plz= $this->app->Secure->GetPOST("plz");
|
|
||||||
$ort= $this->app->Secure->GetPOST("ort");
|
|
||||||
$email= $this->app->Secure->GetPOST("email");
|
|
||||||
$phone= $this->app->Secure->GetPOST("telefon");
|
|
||||||
$nummeraufbeleg= $this->app->Secure->GetPOST("nummeraufbeleg");
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if($sid=="")
|
|
||||||
$sid= $this->app->Secure->GetGET("sid");
|
|
||||||
|
|
||||||
if($zusatz=="express")
|
|
||||||
$this->app->Tpl->Set('ZUSATZ',"Express");
|
|
||||||
|
|
||||||
if($zusatz=="export")
|
|
||||||
$this->app->Tpl->Set('ZUSATZ',"Export");
|
|
||||||
|
|
||||||
$id = $this->app->Secure->GetGET("id");
|
|
||||||
$drucken = $this->app->Secure->GetPOST("drucken");
|
|
||||||
$anders = $this->app->Secure->GetPOST("anders");
|
|
||||||
$land = $this->app->Secure->GetGET("land");
|
|
||||||
if($land=="")$land = $this->app->Secure->GetPOST("land");
|
|
||||||
|
|
||||||
if($name3=="" && $land!=$this->app->erp->Firmendaten("land")) $name3=$name;
|
|
||||||
|
|
||||||
$tracking_again = $this->app->Secure->GetGET("tracking_again");
|
|
||||||
|
|
||||||
|
|
||||||
$versandmit= $this->app->Secure->GetPOST("versandmit");
|
|
||||||
$trackingsubmit= $this->app->Secure->GetPOST("trackingsubmit");
|
|
||||||
$versandmitbutton = $this->app->Secure->GetPOST("versandmitbutton");
|
|
||||||
$tracking= $this->app->Secure->GetPOST("tracking");
|
|
||||||
$trackingsubmitcancel= $this->app->Secure->GetPOST("trackingsubmitcancel");
|
|
||||||
$retourenlabel = $this->app->Secure->GetPOST("retourenlabel");
|
|
||||||
if($typ=="DHL" || $typ=="dhl")
|
|
||||||
$versand = "dhl";
|
|
||||||
else if($typ=="Intraship")
|
|
||||||
$versand = "intraship";
|
|
||||||
else $versand = $typ;
|
|
||||||
|
|
||||||
if($sid == "versand")
|
|
||||||
{
|
|
||||||
$projekt = $this->app->DB->Select("SELECT projekt FROM versand WHERE id='$id' LIMIT 1");
|
|
||||||
}else{
|
|
||||||
$projekt = $this->app->DB->Select("SELECT projekt FROM lieferschein WHERE id='$id' LIMIT 1");
|
|
||||||
}
|
|
||||||
|
|
||||||
if($trackingsubmit!="" || $trackingsubmitcancel!="")
|
|
||||||
{
|
|
||||||
|
|
||||||
if($sid==='versand') {
|
|
||||||
// falche tracingnummer bei DHL da wir in der Funktion PaketmarkeDHLEmbedded sind
|
|
||||||
if((strlen($tracking) < 12 || strlen($tracking) > 20) && $trackingsubmitcancel=='' && ($typ==='DHL' || $typ==='Intraship')) {
|
|
||||||
$this->app->Location->execute("index.php?module=versanderzeugen&action=frankieren&id=$id&land=$land&tracking_again=1");
|
|
||||||
}
|
|
||||||
$this->app->DB->Update("UPDATE versand SET versandunternehmen='$versand', tracking='$tracking',
|
|
||||||
versendet_am=NOW(),versendet_am_zeitstempel=NOW(), abgeschlossen='1',logdatei=NOW() WHERE id='$id' LIMIT 1");
|
|
||||||
|
|
||||||
$this->app->erp->VersandAbschluss($id);
|
|
||||||
$this->app->erp->RunHook('versanderzeugen_frankieren_hook1', 1, $id);
|
|
||||||
//versand mail an kunden
|
|
||||||
$this->app->erp->Versandmail($id);
|
|
||||||
|
|
||||||
$weiterespaket=$this->app->Secure->GetPOST("weiterespaket");
|
|
||||||
$lieferscheinkopie=$this->app->Secure->GetPOST("lieferscheinkopie");
|
|
||||||
if($weiterespaket=='1') {
|
|
||||||
if($lieferscheinkopie=='1') {
|
|
||||||
$lieferscheinkopie=0;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$lieferscheinkopie=1;
|
|
||||||
}
|
|
||||||
//$this->app->erp->LogFile("Lieferscheinkopie $lieferscheinkopie");
|
|
||||||
$all = $this->app->DB->SelectArr("SELECT * FROM versand WHERE id='$id' LIMIT 1");
|
|
||||||
$this->app->DB->Insert("INSERT INTO versand (id,adresse,rechnung,lieferschein,versandart,projekt,bearbeiter,versender,versandunternehmen,firma,
|
|
||||||
keinetrackingmail,gelesen,paketmarkegedruckt,papieregedruckt,weitererlieferschein)
|
|
||||||
VALUES ('','{$all[0]['adresse']}','{$all[0]['rechnung']}','{$all[0]['lieferschein']}','{$all[0]['versandart']}','{$all[0]['projekt']}',
|
|
||||||
'{$all[0]['bearbeiter']}','{$all[0]['versender']}','{$all[0]['versandunternehmen']}',
|
|
||||||
'{$all[0]['firma']}','{$all[0]['keinetrackingmail']}','{$all[0]['gelesen']}',0,$lieferscheinkopie,1)");
|
|
||||||
|
|
||||||
$newid = $this->app->DB->GetInsertID();
|
|
||||||
$this->app->Location->execute('index.php?module=versanderzeugen&action=einzel&id='.$newid);
|
|
||||||
}
|
|
||||||
$url = 'index.php?module=versanderzeugen&action=offene';
|
|
||||||
$lieferschein = $this->app->DB->Select(sprintf('SELECT lieferschein FROM versand WHERE id = %d', $id));
|
|
||||||
$this->app->erp->RunHook('paketmarke_abschluss_url', 2, $lieferschein, $url);
|
|
||||||
$this->app->Location->execute($url);
|
|
||||||
}
|
|
||||||
//direkt aus dem Lieferschein
|
|
||||||
if($id > 0) {
|
|
||||||
$adresse = $this->app->DB->Select("SELECT adresse FROM lieferschein WHERE id='$id' LIMIT 1");
|
|
||||||
$projekt = $this->app->DB->Select("SELECT projekt FROM lieferschein WHERE id='$id' LIMIT 1");
|
|
||||||
$kg = $this->app->Secure->GetPOST("kg1");
|
|
||||||
if($kg=="") {
|
|
||||||
$kg = $this->app->erp->VersandartMindestgewicht($id);
|
|
||||||
}
|
|
||||||
|
|
||||||
$this->app->DB->Insert("INSERT INTO versand (id,versandunternehmen, tracking,
|
|
||||||
versendet_am,abgeschlossen,lieferschein,
|
|
||||||
freigegeben,firma,adresse,projekt,gewicht,paketmarkegedruckt,anzahlpakete)
|
|
||||||
VALUES ('','$versand','$tracking',NOW(),1,'$id',1,'".$this->app->User->GetFirma()."','$adresse','$projekt','$kg','1','1') ");
|
|
||||||
$versandId = $this->app->DB->GetInsertID();
|
|
||||||
$auftrag = $this->app->DB->Select("SELECT auftragid FROM lieferschein WHERE id = '$id'");
|
|
||||||
$shop = $this->app->DB->Select("SELECT shop FROM auftrag WHERE id = '$auftrag' LIMIT 1");
|
|
||||||
$auftragabgleich=$this->app->DB->Select("SELECT auftragabgleich FROM shopexport WHERE id='$shop' LIMIT 1");
|
|
||||||
|
|
||||||
if($shop > 0 && $auftragabgleich=="1")
|
|
||||||
{
|
|
||||||
//$this->LogFile("Tracking gescannt");
|
|
||||||
$this->app->remote->RemoteUpdateAuftrag($shop,$auftrag);
|
|
||||||
}
|
|
||||||
$this->app->erp->sendPaymentStatus($versandId);
|
|
||||||
$this->app->Location->execute('index.php?module=lieferschein&action=paketmarke&id='.$id);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if($versandmitbutton!="")
|
|
||||||
{
|
|
||||||
|
|
||||||
if($sid=="versand")
|
|
||||||
{
|
|
||||||
$this->app->DB->Update("UPDATE versand SET versandunternehmen='$versandmit',
|
|
||||||
versendet_am=NOW(),versendet_am_zeitstempel=NOW(),abgeschlossen='1' WHERE id='$id' LIMIT 1");
|
|
||||||
|
|
||||||
$this->VersandAbschluss($id);
|
|
||||||
//versand mail an kunden
|
|
||||||
$this->Versandmail($id);
|
|
||||||
|
|
||||||
header("Location: index.php?module=versanderzeugen&action=offene");
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if($sid=="versand")
|
|
||||||
{
|
|
||||||
// wenn paketmarke bereits gedruckt nur tracking scannen
|
|
||||||
$paketmarkegedruckt = $this->app->DB->Select("SELECT paketmarkegedruckt FROM versand WHERE id='$id' LIMIT 1");
|
|
||||||
|
|
||||||
if($paketmarkegedruckt>=1)
|
|
||||||
$tracking_again=1;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if($anders!="")
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
else if(($drucken!="" || $tracking_again=="1") && !$error )
|
|
||||||
{
|
|
||||||
if($tracking_again!="1")
|
|
||||||
{
|
|
||||||
$kg = (float)(str_replace(',','.',$kg));
|
|
||||||
$kg = round($kg,2);
|
|
||||||
$name = substr($this->app->erp->ReadyForPDF($name),0,30);
|
|
||||||
$name2 = $this->app->erp->ReadyForPDF($name2);
|
|
||||||
$name3 = $this->app->erp->ReadyForPDF($name3);
|
|
||||||
$strasse = $this->app->erp->ReadyForPDF($strasse);
|
|
||||||
$hausnummer = $this->app->erp->ReadyForPDF($hausnummer);
|
|
||||||
$plz = $this->app->erp->ReadyForPDF($plz);
|
|
||||||
$ort = $this->app->erp->ReadyForPDF(html_entity_decode($ort));
|
|
||||||
$land = $this->app->erp->ReadyForPDF($land);
|
|
||||||
|
|
||||||
|
|
||||||
$module = $this->app->Secure->GetGET("module");
|
|
||||||
//TODO Workarrond fuer lieferschein
|
|
||||||
if($module=="lieferschein")
|
|
||||||
{
|
|
||||||
$lieferschein = $id;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$lieferschein = $this->app->DB->Select("SELECT lieferschein FROM versand WHERE id='$id' LIMIT 1");
|
|
||||||
if($lieferschein <=0) $lieferschein=$id;
|
|
||||||
}
|
|
||||||
|
|
||||||
$projekt = $this->app->DB->Select("SELECT projekt FROM lieferschein WHERE id='$lieferschein' LIMIT 1");
|
|
||||||
$lieferscheinnummer = $this->app->DB->Select("SELECT belegnr FROM lieferschein WHERE id='$lieferschein' LIMIT 1");
|
|
||||||
|
|
||||||
//pruefe ob es auftragsnummer gibt dann nehmen diese
|
|
||||||
/*
|
|
||||||
$auftragid = $this->app->DB->Select("SELECT auftragid FROM lieferschein WHERE id='$lieferschein' LIMIT 1");
|
|
||||||
if($auftragid > 0)
|
|
||||||
{
|
|
||||||
$nummeraufbeleg = $this->app->DB->Select("SELECT belegnr FROM auftrag WHERE id='$auftragid' LIMIT 1");
|
|
||||||
} else {
|
|
||||||
$nummeraufbeleg = $lieferscheinnummer;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
$nummeraufbeleg = $lieferscheinnummer;
|
|
||||||
|
|
||||||
$rechnung = $this->app->DB->Select("SELECT id FROM rechnung WHERE lieferschein='$lieferschein' LIMIT 1");
|
|
||||||
|
|
||||||
$rechnung_data = $this->app->DB->SelectArr("SELECT * FROM rechnung WHERE id='$rechnung' LIMIT 1");
|
|
||||||
|
|
||||||
// fuer export
|
|
||||||
$email = $rechnung_data[0]['email']; //XXX
|
|
||||||
if($phone=="")
|
|
||||||
$phone = $rechnung_data[0]['telefon']; //XXX
|
|
||||||
$rechnungssumme = $rechnung_data[0]['soll']; //XXX
|
|
||||||
|
|
||||||
if($rechnung){
|
|
||||||
$artikel_positionen = $this->app->DB->SelectArr("SELECT * FROM rechnung_position WHERE rechnung='$rechnung'");
|
|
||||||
} else {
|
|
||||||
$artikel_positionen = $this->app->DB->SelectArr("SELECT * FROM lieferschein_position WHERE lieferschein='$lieferschein'");
|
|
||||||
}
|
|
||||||
|
|
||||||
$data = $this->einstellungen;
|
|
||||||
|
|
||||||
// your customer and api credentials from/for dhl
|
|
||||||
$credentials = array(
|
|
||||||
'api_user' => $data['api_user'],
|
|
||||||
'api_password' => $data['api_password'],
|
|
||||||
'api_accountnumber' => $data['accountnumber'],
|
|
||||||
'api_key' => $data['api_key'],
|
|
||||||
'log' => true
|
|
||||||
);
|
|
||||||
|
|
||||||
// your company info
|
|
||||||
$info = array(
|
|
||||||
'company_name' => $data['company_name'],
|
|
||||||
'street_name' => $data['street_name'],
|
|
||||||
'street_number' => $data['street_number'],
|
|
||||||
'zip' => $data['zip'],
|
|
||||||
'country' => $data['country'],
|
|
||||||
'city' => $data['city'],
|
|
||||||
'email' => $data['email'],
|
|
||||||
'phone' => $data['phone'],
|
|
||||||
'internet' => $data['internet'],
|
|
||||||
'contact_person' => $data['contact_person'],
|
|
||||||
'export_reason' => $data['exportgrund']
|
|
||||||
);
|
|
||||||
// receiver details
|
|
||||||
$customer_details = array(
|
|
||||||
'name1' => $name,
|
|
||||||
'name2' => $name2,
|
|
||||||
'c/o' => $name3,
|
|
||||||
'street_name' => $strasse,
|
|
||||||
'street_number' => $hausnummer,
|
|
||||||
//'country' => 'germany',
|
|
||||||
'country_code' => $land,
|
|
||||||
'zip' => $plz,
|
|
||||||
'city' => $ort,
|
|
||||||
'email' => $email,
|
|
||||||
'phone' => $phone,
|
|
||||||
'ordernumber' => $nummeraufbeleg,
|
|
||||||
'ordernumber2' => $lieferscheinnummer,
|
|
||||||
'weight' => $kg,
|
|
||||||
'amount' => str_replace(",",".",$rechnungssumme),
|
|
||||||
'currency' => 'EUR'
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
$shipment_details['WeightInKG'] = $data['WeightInKG'];
|
|
||||||
$shipment_details['LengthInCM'] = $data['LengthInCM'];
|
|
||||||
$shipment_details['WidthInCM'] = $data['WidthInCM'];
|
|
||||||
$shipment_details['HeightInCM'] = $data['HeightInCM'];
|
|
||||||
$shipment_details['PackageType'] = $data['PackageType'];
|
|
||||||
|
|
||||||
$shipment_details['service_code'] = $data['service_code'];
|
|
||||||
$shipment_details['service_description'] = $data['service_description'];
|
|
||||||
$shipment_details['package_code'] = $data['package_code'];
|
|
||||||
$shipment_details['package_description'] = $data['package_description'];
|
|
||||||
$shipment_details['exportgrund'] = $data['exportgrund'];
|
|
||||||
|
|
||||||
if($data['note']=="") $data['note'] = $rechnungsnummer;
|
|
||||||
|
|
||||||
//$response = $this->createShipment($customer_details,$shipment_details);
|
|
||||||
|
|
||||||
|
|
||||||
$data['sonstiges_drucker'] = $this->paketmarke_drucker;
|
|
||||||
$data['druckerlogistikstufe2'] = $this->export_drucker;
|
|
||||||
|
|
||||||
|
|
||||||
if($this->app->erp->GetStandardPaketmarkendrucker()>0)
|
|
||||||
$data['sonstiges_drucker'] = $this->app->erp->GetStandardPaketmarkendrucker();
|
|
||||||
|
|
||||||
|
|
||||||
if($this->app->erp->GetStandardVersanddrucker($projekt)>0)
|
|
||||||
$data['druckerlogistikstufe2'] = $this->app->erp->GetStandardVersanddrucker($projekt);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if($this->app->Secure->GetPOST('drucken') || $this->app->Secure->GetPOST('anders'))
|
|
||||||
{
|
|
||||||
|
|
||||||
|
|
||||||
}else{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//$this->info = $customer_info;
|
|
||||||
if($target)$this->app->Tpl->Parse($target,'versandarten_sonstiges.tpl');
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function Export($daten)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private function log($message) {
|
|
||||||
|
|
||||||
if (isset($this->einstellungen['log'])) {
|
|
||||||
|
|
||||||
if (is_array($message) || is_object($message)) {
|
|
||||||
|
|
||||||
error_log(print_r($message, true));
|
|
||||||
|
|
||||||
} else {
|
|
||||||
|
|
||||||
error_log($message);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user