Биллинговая система Nodeny
23 Апреля 2024, 09:48:03 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: 1 [2]
  Печать  
Автор Тема: Модуль группировки списаний  (Прочитано 9066 раз)
Stronglan
Постоялец
***

Карма: -3
Offline Offline

Сообщений: 185


Просмотр профиля Email
« Ответ #15 : 21 Февраля 2018, 11:15:22 »

Приобрел наконец то, надеюсь карма немного отбелилась...
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #16 : 21 Февраля 2018, 11:45:27 »

Сделай мне модуль для пайпала с рекурентными платежами - куплю сразу
в Украине/России можно принимать платежи пайпал?
Записан
elite
Начальник планеты
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1227

In LAN we trust!

358714596
Просмотр профиля
« Ответ #17 : 21 Февраля 2018, 23:09:15 »

Сделай мне модуль для пайпала с рекурентными платежами - куплю сразу
в Украине/России можно принимать платежи пайпал?
В РФ да
Записан
vddav
Старожил
****

Карма: 3
Offline Offline

Сообщений: 251


Просмотр профиля Email
« Ответ #18 : 30 Января 2021, 14:41:50 »

в общем приобрел его, а он не робыть((
в коде есть момент
Код:
sub main
{
    my($task, $single, $config) = @_;

    my $db = Db->sql(
        "SELECT COUNT(*) AS n, YEAR(FROM_UNIXTIME(time)) AS y, MONTH(FROM_UNIXTIME(time)) AS m, mid ".
        "FROM pays WHERE category=100 AND NOT EXISTS (SELECT 1 FROM users_services WHERE pays.id=pay_id) AND mid=371 ".
        "GROUP BY y, m, mid HAVING n>1"

при вставке этого запроса в мускул:
Код:
mysql> SELECT COUNT(*) AS n, YEAR(FROM_UNIXTIME(time)) AS y, MONTH(FROM_UNIXTIME(time)) AS m, mid 
    -> FROM pays WHERE category=100 AND NOT EXISTS (SELECT 1 FROM users_services WHERE pays.id=pay_id) AND mid=371
    -> GROUP BY y, m, mid HAVING n>1;
Empty set (0.00 sec)


зачем там захардкорено mid=371? без него уж очень долго запрос обрабатывается (после двух минут - прервал).

чего делать что б заработало?
perl install.pl -x делал
perl install -w=www делал
ядро перезапускал
даже сервак перегружал.
Записан
Cell
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1407



Просмотр профиля
« Ответ #19 : 30 Января 2021, 21:37:52 »

Очевидно что
Код:
AND mid=371
нужно убрать, это юзалось для тестирования.
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #20 : 31 Января 2021, 12:58:15 »

Да, случайно с тестовым кодом залил. Скачай заново - удалил
Записан
vddav
Старожил
****

Карма: 3
Offline Offline

Сообщений: 251


Просмотр профиля Email
« Ответ #21 : 03 Февраля 2021, 17:38:46 »

судя по дате файлов - модулю около двух лет... похоже никто его не использует чтоль?)
как то он корявенько работает - как я понял его логика такова:
1  в начале селект, который выше, выбирает у кого больше одного сгрупированного по году и месяцу платежей (у меня запрос робыл 27 минут)))
ну да ладно, потом он быстрее, наверное, будет)))
2 потом с тем кого выбрал начинается самое веселое) - создается один суммарный платеж в комментарий которого добавлены все комментарии платежей за месяц (типа расшифровка), а сами платежи удаляются. ну вроде ничего), но в реале выглядит как то не очень(.
прицепил скрин - вот раньше напротив каждого "куплета" была сумма - та что в строке стоимость услуги за период. для понимания это кусок скрина этого суммарного платежа)). т.е. фактически простыня не уменьшилась - а стало меньше циферек слева.
получается что стал один платеж но такой же длины) на скрине период с 11 по 19 т.е. примерно столько же вверх  и вниз.
предлагаю ничего не удалять, а при заходе в платежи динамически суммировать и группировать их под "плюсик".
Записан
Efendy
Администратор
Спец
*****

Карма: 138
Offline Offline

Сообщений: 4782



Просмотр профиля
« Ответ #22 : 03 Февраля 2021, 21:43:06 »

ну так это уже будет не модуль группировки списаний. Группировка предназначена чтобы вместо 30 посуточных списаний было одно. Может для экспорта кому-то надо. Таких не много сетей, но им надо. Это модуль для них
Записан
Cell
NoDeny
Спец
*

Карма: 52
Offline Offline

Сообщений: 1407



Просмотр профиля
« Ответ #23 : 03 Февраля 2021, 23:53:29 »

Это нормальная тема, для тех, у кого абонентов за 5 тысяч и тарифы с посуточным списанием. Через пару лет таблица платежей начинает занимать столько места, что становится страшно чтобы с ней что-то не случилось нехорошее, да и поиск и любые операции с отчетами становятся не комфортными.
Первый раз очень долго отрабатывает, потом все входит в нормальное русло.
Записан
Страниц: 1 [2]
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!