Биллинговая система Nodeny

Главная категория => Модули NodenyPlus => Тема начата: dimonous от 05 Июня 2019, 10:16:51



Название: Модуль Акция
Отправлено: dimonous от 05 Июня 2019, 10:16:51
Здравствуйте!

Кажется, модуль "Акция" неправильно работает. Вместо завершения льготной услуги inet_unlim и заказа обычной, услуга модуля action перетирает выбор следующей. Менеджер, настраивающий услуги в свежекупленном модуле, в шоке.

Завершение услуги с подключением следующей

SELECT *, UNIX_TIMESTAMP() AS t FROM v_services WHERE id='2456178' AND uid='5004' LIMIT 1
Строк: 1. Время выполнения sql: 0.0004 сек

SELECT * FROM pays WHERE id='6729666'
Строк: 1. Время выполнения sql: 0.0002 сек

start transaction

UPDATE v_services SET next_service_id=0 WHERE uid='5004' AND module='inet_unlim'
Строк: 1. Время выполнения sql: 0.0004 сек

UPDATE v_services SET next_service_id=0 WHERE uid='5004' AND module='speed_up'
Строк: 0. Время выполнения sql: 0.0004 сек

DELETE FROM users_services WHERE id='2456178' AND uid='5004' LIMIT 1
Строк: 1. Время выполнения sql: 0.0002 сек

commit

Переустановка услуги action_vdv_test (id=2456178, uid=5004)

Шаги воспроизведения:
1. Создать услугу модуля inet_unlim сроком месяц и больше ценой 1 грн.
2. Создать услугу модуля action с завершением предположим вчера и полем "завершить услуги" "inet_unlim, speed_up"
3. Подключить тестовому абоненту услугу из п.1
4. Кликнуть на услугу, кликнуть "выбрать следующую", выбрать любую услугу модуля "Безлимитные"
5. Подключить услугу из п.2
6. Обновить страницу через время, убедиться что услуга, подключенная в п.5, исчезла из списка
Наблюдаемое поведениие: услуга inet_unlim, подключенная в п.3 осталась в списке, если на нее кликнуть, то следующая услуга будет отсутствовать
Ожидаемое поведение: должна быть подключена безлимитная услуга как текущая та, которую выбрали в п.4





Название: Re: Модуль Акция
Отправлено: Efendy от 06 Июня 2019, 22:26:49
Написал как тестировщик) Обязательно проверю


Название: Re: Модуль Акция
Отправлено: Efendy от 12 Июня 2019, 17:32:00
Я думаю ты не совсем понимаешь как работает модуль.

1) пока услуга акция установлена - клиент не может изменить параметр "следующая услуга". Но администратор может и эта услуга установится при наступлении нового  периода, а не по окончанию действия акции
2) параметр "завершить услуги" ... эээ... указывает на те услуги, которые необходимо завершить. А как происходит корректное завершение? Правильно, поле "следующая услуга" сбрасывается и при окончании периода ничего нового не подключается.

Чтобы понять как работает модуль, достаточно просто представить что нам надо от клиентов и все.

Мы даем акцию: 5 месяцев интернет по 10 грн! Проходит 5 месяцев. Услуга отключается. Выбирай новую. Та, которая была подключена, уже установить не получится (в ее настройках не должно стоять галки, что ее может выбрать абонент)