BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 19 апр 2024, 13:36

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 28 ] 
Автор Сообщение
 Заголовок сообщения: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 12:26 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Нужно удалить модуль dialup в тарифе. Как в таком случае узнать потомка?
Вложение:
Безымянный.png
Безымянный.png [ 9.89 КБ | Просмотров: 10157 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 12:51 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 03 авг 2009, 18:42
Сообщения: 7166
Откуда: Благовещенск
Карма: 241
Видимо какой то тариф наследован от этого

_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegram
Стиль программирования - пьяный мастерстер
Разработка мобильных приложений


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 12:54 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Наследован. Обычно в таком случае в окне пишется название этого тарифа. Как тут , например.
Вложение:
Безымянный.png
Безымянный.png [ 13.99 КБ | Просмотров: 10152 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 13:29 
Не в сети
Аватара пользователя

Зарегистрирован: 30 май 2008, 15:51
Сообщения: 6055
Карма: 244
ну с бд в связях что-то

_________________
I'm clever. I've got a computer.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 13:33 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
dimOn писал(а):
ну с бд в связях что-то

это поправимо?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 14:22 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
А вы просто в наследниках не можете убрать переопределения? Или не можете их найти?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 14:54 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Не могу найти. В списке тарифов его нет. Поэтому он должен быть в персональных тарифах. Можно этот список как-то получить?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 15:07 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
SELECT * FROM tariff_plan where id=141; 141 - код тарифа
Взять его tree_id
SELECT * FROM module_tariff_tree where parent_tree=210 где 210, ранее взятый tree_id

Вот у вас есть список всех tree_id. Теперь надо найти к какому тарифу данные ветки относятся. Так как персональные, то ищите в contract_tree_link.
SELECT * FROM contract_tree_link where tree_id=<один из наследуемых tree_id>

Можно конечно все это несколькими join-ами объединить.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 15:46 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Ildar писал(а):
SELECT * FROM tariff_plan where id=141; 141 - код тарифа
Взять его tree_id
SELECT * FROM module_tariff_tree where parent_tree=210 где 210, ранее взятый tree_id

Вот у вас есть список всех tree_id. Теперь надо найти к какому тарифу данные ветки относятся. Так как персональные, то ищите в contract_tree_link.
SELECT * FROM contract_tree_link where tree_id=<один из наследуемых tree_id>

Можно конечно все это несколькими join-ами объединить.

Отлично! Только не помогло. Потому что в результатах запроса пусто. И в tariff_plan и в contract_tree_link


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 16:12 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
А вы вставили верный id? Не было оставлено 141, как в примере запроса?
Потому как, если он вам не выдал тариф, то его как бы и нет :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 16:44 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Ildar писал(а):
А вы вставили верный id? Не было оставлено 141, как в примере запроса?
Потому как, если он вам не выдал тариф, то его как бы и нет :)

Конечно
Вложение:
Без имени-2.png
Без имени-2.png [ 71.54 КБ | Просмотров: 10131 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 17:23 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Еще вопрос: а как найти персональный тариф по id в биллинге?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 17:39 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
Не понятно как получилось, что осталась висеть ветка модуля. При удалении они не остаются.

Inspire писал(а):
Еще вопрос: а как найти персональный тариф по id в биллинге?


SELECT * FROM contract_tree_link WHERE id=??

Но id пер. тарифа ни где не фигурирует в клиенте, насколько помню.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 17:51 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Ildar писал(а):
Не понятно как получилось, что осталась висеть ветка модуля. При удалении они не остаются.

Inspire писал(а):
Еще вопрос: а как найти персональный тариф по id в биллинге?


SELECT * FROM contract_tree_link WHERE id=??

Но id пер. тарифа ни где не фигурирует в клиенте, насколько помню.


Спасибо. Я имею ввиду в клиенте биллинга.

Тем не менее они остались. Как их удалить?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 17:54 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
А ветки есть, точнее листья?
select * from mtree_node where mtree_id=461


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 05 окт 2016, 18:01 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Ildar писал(а):
А ветки есть, точнее листья?
select * from mtree_node where mtree_id=461

нету


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 06 окт 2016, 10:34 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
Тогда удалить запись:
DELETE FROM module_tariff_tree where id=895 LIMIT 1
или обновить запись предка:
UPDATE module_tariff_tree SET parent_tree=0 where id=895 LIMIT 1


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 06 окт 2016, 13:58 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Сделал, получилось удалить. Спасибо.
parent_tree=0 - это означает без наследников?

Еще есть один тариф. В нем при удалении модуля в клиенте вылезает такая же ошибка. Но в отличие от предыдущего у него в результатах запроса есть наследники. Проблема как я выяснил в том, что в одном из наследников в базе указан cid договора, которого не существует. Мистика :)
Вот скрин
Вложение:
Без имени-2.png
Без имени-2.png [ 104.65 КБ | Просмотров: 10103 ]


Что порекомендуете делать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 06 окт 2016, 14:05 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
Да, есть косяк, он исправлен пока только в 7.0. При удалении договора не удалялись персональные тарифы.
Чтобы проще было удалить тариф со всеми узлами, присвойте cid к существующему договору, далее зайдите в этот договор и удалите тариф.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 06 окт 2016, 14:08 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
Inspire писал(а):
parent_tree=0 - это означает без наследников?

Да, точнее без предка.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 06 окт 2016, 14:36 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
Получить все висячие персональные тарифы:

Код:
SELECT * FROM contract_tree_link AS ctl
 LEFT JOIN contract AS c ON c.id=ctl.cid
 WHERE c.id IS NULL


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 06 окт 2016, 16:10 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Ок, разобрался. Собственно ради чего я все это затеял - это сменить во всех тарифах модуль dialup на Inet. Может, можно это sql запросом сделать? А то тарифов многовато


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 06 окт 2016, 16:20 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
А у вас они все персональные? Думаю в любом случае просто sql не получиться, сомневаюсь что структура всех узлов и значений будет идентична между двумя модулями( а так, конечно достаточно было бы изменить mid ).
Нужно будет писать скрипт который пробежит по дереву тарифа( если они все шаблонные ) возьмет нужные значения и создаст на основе них тариф для inet и удалит старый(ветку либо тариф)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 06 окт 2016, 16:35 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
По структуре только расширяющий модуль dialup на Inet надо заменить. Поэтому все получилось. Спасибо вам. Помогли.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 06 окт 2016, 16:58 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
Кнопку оповестить об изменениях не надо будет в этом случае нажимать?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 06 окт 2016, 17:06 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
Скорее всего надо. Либо перезапустите Accounting после всех изменений. Планировщик тоже не узнает до следующей перезагрузки, но на вас это не должно отразиться, вроде, это же не npay.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 07 окт 2016, 14:28 
Не в сети

Зарегистрирован: 21 ноя 2014, 15:11
Сообщения: 393
Карма: 0
А что можно сделать с глючными тарифами, у которых нет дерева на соответствующей вкладке в клиенте?
Проблема в том, что они не удаляются. Отвечает ошибкой "не найдено дерева тарифа"
Вложение:
Безымянный.png
Безымянный.png [ 7.27 КБ | Просмотров: 10079 ]


Может, просто удалить запись с тарифом в табилице?
Вложение:
Безымянный1.png
Безымянный1.png [ 11.54 КБ | Просмотров: 10079 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Тайный потомок
СообщениеДобавлено: 07 окт 2016, 16:01 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 05 сен 2012, 18:20
Сообщения: 457
Карма: 27
Что-то у вас не здоровое происходит с тарифами.
Да, удалите.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 28 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: dos25 и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
POWERED_BY
Русская поддержка phpBB
[ Time : 0.130s | 79 Queries | GZIP : On ]