Files
thetool/scripts/import-supplier.php
2024-02-20 20:20:48 +01:00

93 lines
2.0 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);
die("country auf country_id umbauen!");
$folder = __DIR__."/import/";
$csvname = "lieferanten_import.csv";
$filename = $folder.$csvname;
$db = FronkDB::singleton();
$log = mfLoghandler::singleton();
$input = fopen($filename, "r");
$l = 0;
$c = 0;
while($csv = fgetcsv($input, 0, ";")) {
$l++;
if($l == 1) continue;
if(!trim($csv[1])) {
continue;
}
//var_dump($csv);exit;
$fibu_account_number = trim($csv[0]);
$fibu_supplier_number = trim($csv[1]);
$company = trim($csv[2]);
$street = trim($csv[3]);
$zip = trim($csv[4]);
$city = trim($csv[5]);
$country = trim($csv[6]);
if(!$fibu_supplier_number || !$company) continue;
if(AddressModel::getFirst(["fibu_supplier_number" => $fibu_supplier_number])) {
echo "$company $fibu_supplier_number gibts schon!\n";
continue;
}
$address = AddressModel::create([
'fibu_supplier_number' => $fibu_supplier_number,
'company' => $company,
'street' => $street,
'zip' => $zip,
'city' => $city,
'country' => $country,
'firstname' => '',
'lastname' => '',
'phone' => '',
'fax' => '',
'mobile' => '',
'email' => '',
'note' => '',
'create_by' => $me->id,
'edit_by' => $me->id
]);
if(!$address->save()) {
echo "Cannot save $company $fibu_supplier_number\n";
continue;
}
$role = AddresstypeModel::create([
'address_id' => $address->id,
'type' => "supplier",
'primary' => 1,
'create_by' => $me->id,
'edit_by' => $me->id
]);
if(!$role->save()) {
die("cannot save role for $company $fibu_supplier_number\n");
}
$c++;
}
echo "Imported $c Suppliers\n";