forum.bitel.ru http://forum.bitel.ru/ |
|
Управление лимитом. http://forum.bitel.ru/viewtopic.php?f=22&t=4042 |
Страница 1 из 2 |
Автор: | MiB [ 18 май 2010, 12:45 ] |
Заголовок сообщения: | Управление лимитом. |
Прошу прояснить непонятную ситуацию в работе функционала "управление лимитов" в части временного понижения через кабинет пользователя. конфигурация: Код: #коды групп договоров для которых действует данная настройка, через ',' (чтобы узнать код группы нажмите Ctrl+i в справочнике #групп при выбранной строке таблицы) contract.limit.1.groups=9,10,61 #максимальное количество не оплаченных(не возвратившихся) понижений #при котором клиенту будет доступно понижение, при 0 клиент не сможет выполнять #понижение до тех пор пока будет хотя бы одно не оплаченное contract.limit.1.maxnotpayoffed=0 #максимальное количество частично оплаченных понижений #при котором клиенту будет доступно понижение (0-1, частично оплаченное понижение #может быть только одно) contract.limit.1.maxpartialpayoffed=0 #количество просроченных платежей после последней разблокировки #после которых доступ к понижению будет заблокирован, 0 - не блокировать при любом количестве contract.limit.1.maxexpiredforblock=1 #дни от до contract.limit.1.mindays=1 contract.limit.1.maxdays=1 #сумма от до contract.limit.1.minsumm=200 contract.limit.1.maxsumm=300 #нижний порог лимита при понижении клиентом (по умолчанию -100) #т.е ниже этого порога клиент понизить не сможет contract.limit.1.minlimit=-300 по моей логике: клиент понижает себе лимит. далее в 00:00 отработает задача "Востановление лимитов" и понижение клиента будет помечено как "просроченное" следуя contract.limit.1.maxnotpayoffed=0 он не должен больше иметь возможности понизить. так? или где-то в моей логике ошибка. реально клеинты могут понизить себе лимит дважды: Вложение: Вложение:
|
Автор: | Cromeshnic [ 18 май 2010, 13:06 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Нужно contract.limit.1.maxnotpayoffed=1 Если не ошибаюсь. |
Автор: | MiB [ 18 май 2010, 14:46 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Cromeshnic писал(а): Нужно contract.limit.1.maxnotpayoffed=1 Если не ошибаюсь. Код: при 0 клиент не сможет выполнять понижение до тех пор пока будет хотя бы одно не оплаченное это из документации. |
Автор: | MiB [ 21 май 2010, 09:49 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Cromeshnic писал(а): Нужно contract.limit.1.maxnotpayoffed=1 Если не ошибаюсь. проверил. не помогает. разработчики могут что-то сказать по этому поводу? |
Автор: | skyb [ 25 май 2010, 05:31 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Код: сontract.limit.1.groups=4 #максимальное количество не оплаченных(не возвратившихся) понижений #при котором клиенту будет доступно понижение, при 0 клиент не сможет выполнять #понижение до тех пор пока будет хотя бы одно не оплаченное contract.limit.1.maxnotpayoffed=0 #максимальное количество частично оплаченных понижений #при котором клиенту будет доступно понижение (0-1, частично оплаченное понижение #может быть только одно) contract.limit.1.maxpartialpayoffed=0 #количество просроченных платежей после последней разблокировки #после которых доступ к понижению будет заблокирован contract.limit.1.maxexpiredforblock=0 #дни от до contract.limit.1.mindays=1 contract.limit.1.maxdays=2 #сумма от до contract.limit.1.minsumm=100 contract.limit.1.maxsumm=100 #нижний порог лимита при понижении клиентом (по умолчанию -100) #т.е ниже этого порога клиент понизить не сможет contract.limit.1.minlimit=-100 Вот мой конфиг, у меня можно брать на 2 суток минус 100 второй раз нельзя. проверенно |
Автор: | snark [ 26 май 2010, 18:19 ] |
Заголовок сообщения: | Re: Управление лимитом. |
что для меня всегда было непонятно, так это то что здесь: Код: contract.limit.1.minsumm= contract.limit.1.maxsumm= суммы должны быть положительные, а здесь: Код: contract.limit.1.minlimit= сумма должна быть отрицательной честно говоря уже не помню как это выглядит в вебе, но IMHO самое красивое решение - это когда клиент заходит в понижение лимитом и просто пишет сумму которую он хочет получить в долг в диапазоне от minsumm до maxsumm, при этом перед полем нарисован жирный минус, и при сабмите делается простейшая операция Код: if ("сумма лимита из сабмита" < 0) { "сумма лимита" = "сумма лимита из сабмита" * -1; } после чего в биллинг поступает правильная, т.е. отрицательная, сумма |
Автор: | MiB [ 28 май 2010, 14:42 ] |
Заголовок сообщения: | Re: Управление лимитом. |
skyb писал(а): Код: #количество просроченных платежей после последней разблокировки #после которых доступ к понижению будет заблокирован contract.limit.1.maxexpiredforblock=0 Вот мой конфиг, у меня можно брать на 2 суток минус 100 второй раз нельзя. проверенно непомогло. |
Автор: | skyb [ 31 май 2010, 13:46 ] |
Заголовок сообщения: | Re: Управление лимитом. |
MiB писал(а): skyb писал(а): Код: #количество просроченных платежей после последней разблокировки #после которых доступ к понижению будет заблокирован contract.limit.1.maxexpiredforblock=0 Вот мой конфиг, у меня можно брать на 2 суток минус 100 второй раз нельзя. проверенно непомогло. Мож что то упустили? у меня настроено все было на 4.6 перешли на 5.0 не чего не меняли и работает. |
Автор: | MiB [ 09 июн 2010, 11:57 ] |
Заголовок сообщения: | Re: Управление лимитом. |
skyb писал(а): Мож что то упустили? у меня настроено все было на 4.6 перешли на 5.0 не чего не меняли и работает. на 2е суток работает. до конца текущих нет. |
Автор: | skyb [ 17 июн 2010, 09:49 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Как сглазили ![]() согласно этому Цитата: Понижение лимита доступно только при следующих условиях: * количество уже сделанных не погашенных понижений меньше либо равно переменной contract.limit.1.maxnotpayoffed конфигурации сервера * количество просроченных понижений меньше или равно переменной contract.limit.1.maxexpiredforblock конфигурации сервера * количество частично оплаченных платежей меньше или равно переменной contract.limit.1.maxpartialpayoffed конфигурации сервера а вот так настроено у меня Код: contract.limit.1.maxnotpayoffed=0 Ув. Разработчики пожалуйста обратите внимание на топик contract.limit.1.maxpartialpayoffed=0 contract.limit.1.maxexpiredforblock=0 ![]() |
Автор: | restart [ 21 июн 2010, 13:11 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Было несколько ошибок, связанных с конфигурациями лимитов - сейчас они исправлены, обновитесь и попробуйте еще раз. |
Автор: | skyb [ 21 июн 2010, 13:28 ] |
Заголовок сообщения: | Re: Управление лимитом. |
отпишимся |
Автор: | MiB [ 21 июн 2010, 18:25 ] |
Заголовок сообщения: | Re: Управление лимитом. |
тестируем. |
Автор: | skyb [ 23 июн 2010, 06:09 ] | ||||
Заголовок сообщения: | Re: Управление лимитом. | ||||
Так, вроде стало ещё хуже. Скрины прилагаю
|
Автор: | restart [ 23 июн 2010, 13:46 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Конфиг покажите |
Автор: | skyb [ 23 июн 2010, 13:49 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Код: contract.limit.1.groups=4 #максимальное количество не оплаченных(не возвратившихся) понижений #при котором клиенту будет доступно понижение, при 0 клиент не сможет выполнять #понижение до тех пор пока будет хотя бы одно не оплаченное contract.limit.1.maxnotpayoffed=0 #максимальное количество частично оплаченных понижений #при котором клиенту будет доступно понижение (0-1, частично оплаченное понижение #может быть только одно) contract.limit.1.maxpartialpayoffed=0 #количество просроченных платежей после последней разблокировки #после которых доступ к понижению будет заблокирован contract.limit.1.maxexpiredforblock=0 #дни от до contract.limit.1.mindays=1 contract.limit.1.maxdays=2 #сумма от до contract.limit.1.minsumm=30 contract.limit.1.maxsumm=100 #нижний порог лимита при понижении клиентом (по умолчанию -100) #т.е ниже этого порога клиент понизить не сможет contract.limit.1.minlimit=-100 так же он есть и в этом посте выше по топику ![]() |
Автор: | focus [ 25 июн 2010, 07:28 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Поясните параметр Код: contract.limit.1.maxexpiredforblock=3 Это количество раз в месяц или вообще за все время работы договора ? |
Автор: | restart [ 25 июн 2010, 15:49 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Цитата: #количество просроченных платежей после последней разблокировки #после которых доступ к понижению будет заблокирован contract.limit.1.maxexpiredforblock=0 Поставьте единицу здесь, тогда при первом же просроченном платеже понижать больше не сможет. Ноль означает "не блокирует за просроченные платежи", иначе бы получалось, что даже без единого просроченного платежа сразу блок ![]() |
Автор: | iros [ 03 ноя 2010, 19:49 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Подскажите значения параметров для таких правил: - 1 раз в месяц абонент может уменьшить себе лимит. Сроком на 3 дня. - В не зависимости от погашения предыдущего лимита в следующем месяце разрешать понижение. |
Автор: | iros [ 03 фев 2011, 12:43 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Цитата из документации: Цитата: Таким образом если возможность блокируется для договора системой повторная активация администратором сбрасывает счётчики. Какая функция в API отвечает за эту процедуру ? (мне нужно сбрасывать все счетчики каждый месяц) |
Автор: | aardvark [ 03 фев 2011, 13:08 ] |
Заголовок сообщения: | Re: Управление лимитом. |
iros писал(а): Какая функция в API отвечает за эту процедуру ? (мне нужно сбрасывать все счетчики каждый месяц) LimitManager.setLimitManageMode(int uid, int cid, int mode) - вероятно. но я не тестил |
Автор: | iros [ 28 фев 2011, 14:06 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Параметры не описаны. Разработчики подскажите !!! |
Автор: | snark [ 28 фев 2011, 21:26 ] |
Заголовок сообщения: | Re: Управление лимитом. |
iros писал(а): Параметры не описаны. параметры чего? этого? aardvark писал(а): LimitManager.setLimitManageMode(int uid, int cid, int mode) так тут же все очевидно Код: LimitManager.setLimitManageMode(<id пользователя биллинга>, <id договора>, <режим>)
|
Автор: | iseed [ 02 сен 2013, 11:58 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Доброго дня. Можно я тему апну? Имеется: --- Сервер: вер. 5.2 сборка 1538 от 23.08.2013 15:51:00 os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.6.0_29 --- Отдали возможность 1 раз понижать лимит на н рублей. Не все пользователи сознательны и оплачивают услуги во время лимита и как следствие лимит возвращается в исходный 0. Пользователи через какое то время оплачивают, но лимит уже считается просроченным и несмотря на полученный платеж после даты востановления лимита, пользователи новый лимит взять уже не смогут. Подскажите если кто знает, как можно выйти из этой ситуации? Есть какая либо возможность в случае получения платежа удалять просроченный лимит с договора? Либо это придется чистить ручками? Или применять скрипт поведения? |
Автор: | Cromeshnic [ 02 сен 2013, 12:19 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Скрипт на приход платежа, ага |
Автор: | iseed [ 02 сен 2013, 14:21 ] |
Заголовок сообщения: | Re: Управление лимитом. |
Ну к примеру можно зделать скрипт исполняющий sql запрос типа: --- delete from contract_limit_manage( select * from( SELECT cl.* FROM contract ct join contract_limit_manage cl on ct.id=cl.cid where cl.status = 3 and cl.date2 < curdate() ) as str) --- И исполнять его раз в день. Когда лимит будет просрочен сменится статус и его удалит собственно. Просто хотелось бы логикой биллинка решать такие вот проблемы, а не плодит сущности. |
Автор: | skn [ 02 сен 2013, 14:39 ] |
Заголовок сообщения: | Re: Управление лимитом. |
iseed писал(а): Когда лимит будет просрочен сменится статус и его удалит собственно. Просто хотелось бы логикой биллинка решать такие вот проблемы, а не плодит сущности. тут как раз логика и используется "обещал, но сдержал, больше тебе не доверяем и в долг не даем" |
Автор: | skn [ 02 сен 2013, 14:41 ] |
Заголовок сообщения: | Re: Управление лимитом. |
и чем вас этот параметр не устроил? Код: #количество просроченных платежей после последней разблокировки #после которых доступ к понижению будет заблокирован, 0 - не блокировать при любом количестве contract.limit.1.maxexpiredforblock=1 пропишите здесь большое число... |
Автор: | iseed [ 02 сен 2013, 14:43 ] |
Заголовок сообщения: | Re: Управление лимитом. |
skn писал(а): iseed писал(а): Когда лимит будет просрочен сменится статус и его удалит собственно. Просто хотелось бы логикой биллинка решать такие вот проблемы, а не плодит сущности. тут как раз логика и используется "обещал, но сдержал, больше тебе не доверяем и в долг не даем" Не спорю. Вполне логичное решение. Просто не гибкое. Насколько я понимаю сейчас, такую логику средствами биллинка мне не удастся нарисовать. |
Автор: | skn [ 02 сен 2013, 14:46 ] |
Заголовок сообщения: | Re: Управление лимитом. |
iseed писал(а): Не спорю. Вполне логичное решение. Просто не гибкое. Насколько я понимаю сейчас, такую логику средствами биллинка мне не удастся нарисовать. а так Код: contract.limit.1.maxexpiredforblock=10000
|
Страница 1 из 2 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |