Администратор биллинговой платформы сможет удалить клиента через графический интерфейс, если:
- Клиент не совершил ни одного платежа.
- Клиент не имеет ненулевых расходов.
- Клиент не имеет ни одной активной услуги.
В остальных случаях, необходимо выполнить запросы на удаление информации из базы данных billmgr:
set @account_id = <ИДЕНТИФИКАТОР_КЛИЕНТА>;
DELETE FROM expense WHERE subaccount IN (SELECT id FROM subaccount WHERE account = @account_id);
DELETE FROM payment WHERE subaccount IN (SELECT id FROM subaccount WHERE account = @account_id);
DELETE FROM billorder WHERE subaccount IN (SELECT id FROM subaccount WHERE account = @account_id);
UPDATE ip SET item = NULL WHERE item IN (SELECT id FROM item WHERE account = @account_id OR parent IN (SELECT id FROM item WHERE account = @account_id));
DELETE FROM invoiceitem where invoice in (SELECT id FROM invoice WHERE customer IN (SELECT id FROM profile WHERE account = @account_id));
DELETE FROM item WHERE parent IN (SELECT id FROM (SELECT id FROM item WHERE account = @account_id) itm);
DELETE FROM item WHERE account = @account_id;
DELETE FROM service_profile WHERE account = @account_id;
DELETE FROM invoice WHERE customer IN (SELECT id FROM profile WHERE account = @account_id);
DELETE FROM profile WHERE account = @account_id;
DELETE FROM ticket WHERE account_client = @account_id;
DELETE FROM user WHERE account = @account_id;
DELETE FROM affiliatereward WHERE account = @account_id OR referal = @account_id;
DELETE FROM account WHERE id = @account_id;
В результате выполнения этих запросов из биллинговой платформы будет удалена история взаимоотношений с клиентом, его финансовая информация и запросы в центр поддержки. При этом сохранятся файлы клиента: конфигурационные файлы, аватары и файлы, загруженные в запросах.
После удаления информации перезапустите BILLmanager:
/usr/local/mgr5/sbin/mgrctl -m billmgr exit