script to delete multiple addresses with same customer number
This commit is contained in:
114
scripts/delete-multiple-addresses.php
Normal file
114
scripts/delete-multiple-addresses.php
Normal file
@@ -0,0 +1,114 @@
|
||||
#!/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);
|
||||
|
||||
$address_ids = [];
|
||||
|
||||
foreach(AddressModel::getAll() as $address) {
|
||||
if(!$address->customer_number) continue;
|
||||
|
||||
if(in_array($address->id, $address_ids)) continue;
|
||||
|
||||
$address_ids[] = $address->id;
|
||||
|
||||
$clone_search = [
|
||||
"customer_number" => $address->customer_number,
|
||||
/*"company" => $address->company,
|
||||
"firstname" => $address->firstname,
|
||||
"lastname" => $address->lastname,
|
||||
"street" => $address->street,
|
||||
"phone" => $address->phone,
|
||||
"email" => $address->email,*/
|
||||
];
|
||||
|
||||
if(AddressModel::count($clone_search) > 1) {
|
||||
echo " == ".$address->id." - ".$address->customer_number." - ".$address->getCompanyOrName();
|
||||
|
||||
if(ContractModel::count(["owner_id" => $address->id])) {
|
||||
echo " CO";
|
||||
}
|
||||
if(ContractModel::count(["billingaddress_id" => $address->id])) {
|
||||
echo " CB";
|
||||
}
|
||||
|
||||
if(OrderModel::count(["owner_id" => $address->id])) {
|
||||
echo " OO";
|
||||
}
|
||||
if(OrderModel::count(["billingaddress_id" => $address->id])) {
|
||||
echo " OB";
|
||||
}
|
||||
|
||||
if(NetworkModel::count(["owner_id" => $address->id])) {
|
||||
echo " NO";
|
||||
}
|
||||
|
||||
echo "\n";
|
||||
|
||||
foreach(AddressModel::search($clone_search) as $clone) {
|
||||
if($clone->id == $address->id) continue;
|
||||
|
||||
if(in_array($clone->id, $address_ids)) continue;
|
||||
$address_ids[] = $clone->id;
|
||||
|
||||
//var_dump($clone);exit;
|
||||
echo $clone->id." - ".$clone->customer_number." - ".$clone->getCompanyOrName();
|
||||
|
||||
if(ContractModel::count(["owner_id" => $clone->id])) {
|
||||
echo " CO";
|
||||
continue;
|
||||
}
|
||||
if(ContractModel::count(["billingaddress_id" => $clone->id])) {
|
||||
echo " CB";
|
||||
continue;
|
||||
}
|
||||
|
||||
if(OrderModel::count(["owner_id" => $clone->id])) {
|
||||
echo " OO";
|
||||
continue;
|
||||
}
|
||||
if(OrderModel::count(["billingaddress_id" => $clone->id])) {
|
||||
echo " OB";
|
||||
continue;
|
||||
}
|
||||
|
||||
if(NetworkModel::count(["owner_id" => $clone->id])) {
|
||||
echo " NO";
|
||||
continue;
|
||||
}
|
||||
|
||||
foreach(AddresstypeModel::search(["address_id" => $clone->id]) as $at) {
|
||||
echo "del at\n";
|
||||
$at->delete();
|
||||
}
|
||||
foreach(AddressLinkModel::search(["address_id" => $clone->id]) as $al) {
|
||||
echo "del al\n";
|
||||
$al->delete();
|
||||
}
|
||||
foreach(AddressLinkModel::search(["origin_address_id" => $clone->id]) as $al2) {
|
||||
echo "del al2\n";
|
||||
$al2->delete();
|
||||
}
|
||||
|
||||
//echo ": deleting";
|
||||
$clone->delete();
|
||||
|
||||
echo "\n";
|
||||
|
||||
}
|
||||
|
||||
echo "\n";
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user