Files
thetool/scripts/fibu-check/export-address-and-billingaddress.php
2024-08-05 21:03:02 +02:00

83 lines
3.3 KiB
PHP

#!/usr/bin/php
<?php
//require 'vendor/autoload.php';
require("../../config/config.php");
define('FRONKDB_SQLDEBUG',false);
error_reporting(E_ALL & ~(E_NOTICE | E_STRICT | E_DEPRECATED));
require_once(LIBDIR."/mvcfronk/mfRouter/mfRouter.php");
require_once(LIBDIR."/mvcfronk/mfBase/mfBaseModel.php");
require_once(LIBDIR."/mvcfronk/mfBase/mfBaseController.php");
$me = new User(1);
$lines = [];
$header = "billingaddress_id;In Verwendung;Kundennummer;Debitorennummer;Firma;Vorname;Nachname;Strasse;PLZ;Ort;Land;Email;Telefon;Mobil;Verrechnungsart;Rechnungsversand;Kontoinhaber;IBAN;BIC;";
$header .= "owner_id;Kundennummer;Debitorennummer;Firma;Vorname;Nachname;Strasse;PLZ;Ort;Land;Email;Telefon;Mobil;Verrechnungsart;Rechnungsversand;Kontoinhaber;IBAN;BIC";
foreach(AddressLinkModel::search(["type" => "billing"]) as $link) {
if($link->address_id == $link->origin_address_id) continue;
$address = $link->address;
$origin = $link->origin;
$in_use = "";
if(ContractModel::getFirst(["billingaddress_id" => $address->id])) {
$in_use = "contract-billingaddress";
} elseif(ContractModel::getFirst(["owner_id" => $address->id])) {
$in_use = "contract-billingaddress";
} elseif(OrderModel::getFirst(["billingaddress_id" => $address->id])) {
$in_use = "order-billingaddress";
} elseif(OrderModel::getFirst(["owner_id" => $address->id])) {
$in_use = "order-billingaddress";
}
$csv = $address->id.';';
$csv .= '"'.$in_use.'";';
$csv .= $address->customer_number.';';
$csv .= $address->fibu_account_number.';';
$csv .= '"'.str_replace(["\n","\r","\t"], "", $address->company).'";';
$csv .= '"'.str_replace(["\n","\r","\t"], "", $address->firstname).'";';
$csv .= '"'.str_replace(["\n","\r","\t"], "", $address->lastname).'";';
$csv .= '"'.str_replace(["\n","\r","\t"], "", $address->street).'";';
$csv .= '"'.$address->zip.'";';
$csv .= '"'.$address->city.'";';
$csv .= '"'.$address->country->name.'";';
$csv .= '"'.$address->email.'";';
$csv .= '"'.$address->phone.'";';
$csv .= '"'.$address->mobile.'";';
$csv .= '"'.$address->billing_type.'";';
$csv .= '"'.$address->billing_delivery.'";';
$csv .= '"'.$address->bank_account_owner.'";';
$csv .= '"'.$address->bank_account_iban.'";';
$csv .= '"'.$address->bank_account_bic.'";';
$csv .= $origin->id.';';
$csv .= $origin->customer_number.';';
$csv .= $origin->fibu_account_number.';';
$csv .= '"'.str_replace(["\n","\r","\t"], "", $origin->company).'";';
$csv .= '"'.str_replace(["\n","\r","\t"], "", $origin->firstname).'";';
$csv .= '"'.str_replace(["\n","\r","\t"], "", $origin->lastname).'";';
$csv .= '"'.str_replace(["\n","\r","\t"], "", $origin->street).'";';
$csv .= '"'.$origin->zip.'";';
$csv .= '"'.$origin->city.'";';
$csv .= '"'.$origin->country->name.'";';
$csv .= '"'.$origin->email.'";';
$csv .= '"'.$origin->phone.'";';
$csv .= '"'.$origin->mobile.'";';
$csv .= '"'.$origin->billing_type.'";';
$csv .= '"'.$origin->billing_delivery.'";';
$csv .= '"'.$origin->bank_account_owner.'";';
$csv .= '"'.$origin->bank_account_iban.'";';
$csv .= '"'.$origin->bank_account_bic.'"';
$lines[] = $csv;
}
echo "$header\n";
foreach($lines as $line) {
echo "$line\n";
}