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

Главная категория => Nodeny 50 => Тема начата: neom от 05 Апреля 2011, 20:05:44



Название: Занесение платежа напрямую в базу.
Отправлено: neom от 05 Апреля 2011, 20:05:44
Кто сталкивался с задачей заносить платеж напрямую в базу мускула в pays и апдейта юзерского баланса, попробовал такое провернуть платеж заносится нормально баланс тоже все пучком, в биллинге не ругается, что разница по платежам и балансу, а вот фигня получается если у юзера минус на счету и он заблокирован, то после такого прямого добавления бабок он не включается автоматом, даже когда он пытается законектиться авторизатором ему говорит что баланс положительный но доступ заблокирован. Как сказать биллингу что бабло есть у юзера и его надо включить.

P.S.поиск юзал такого не нашел :) спасибо заранее


Название: Re: Занесение платежа напрямую в базу.
Отправлено: Elisium от 05 Апреля 2011, 21:31:09
[оффтоп]
В вопрос вьехал со второго раза.
Расставлять знаки препинания уже в школе  не обучают ????
Пушкин бы и без посторонней помощи сам застрелился от такой фразы ...
[/оффтоп]


Название: Re: Занесение платежа напрямую в базу.
Отправлено: neom от 05 Апреля 2011, 21:35:31
Сорри, но это был так сказать поток мысли )


Название: Re: Занесение платежа напрямую в базу.
Отправлено: GrimWig от 05 Апреля 2011, 22:05:30
UPDATE `users` SET `state` = 'on' WHERE и так далее


Название: Re: Занесение платежа напрямую в базу.
Отправлено: neom от 05 Апреля 2011, 22:44:25
Да, но для этого нужно еще проверять хватило ли денег, чтобы поставить state=on, а я спрашивал про то, каким образом в самом нодени реализуется эта функция.


Название: Re: Занесение платежа напрямую в базу.
Отправлено: Андрій от 05 Апреля 2011, 23:01:09
інакше ніяк, після добавлення платежу треба, щоб скрипт перевіряв чи достатнього грошей для включеня і якщо достатньо, то відповідно міняв би `state` = 'on'


Название: Re: Занесение платежа напрямую в базу.
Отправлено: Efendy от 05 Апреля 2011, 23:37:51
Да, но для этого нужно еще проверять хватило ли денег, чтобы поставить state=on, а я спрашивал про то, каким образом в самом нодени реализуется эта функция.
баланс высчитывается динамически скриптом nomoney.pl. Проще всего при любом платеже включать доступ, через небольшой промежуток времени ядро заблочит учетку если денег не будет достаточно


Название: Re: Занесение платежа напрямую в базу.
Отправлено: ser970 от 06 Апреля 2011, 07:53:03
Кто сталкивался с задачей заносить платеж напрямую в базу мускула в pays и апдейта юзерского баланса, попробовал такое провернуть платеж заносится нормально баланс тоже все пучком, в биллинге не ругается, что разница по платежам и балансу, а вот фигня получается если у юзера минус на счету и он заблокирован, то после такого прямого добавления бабок он не включается автоматом, даже когда он пытается законектиться авторизатором ему говорит что баланс положительный но доступ заблокирован. Как сказать биллингу что бабло есть у юзера и его надо включить.

P.S.поиск юзал такого не нашел :) спасибо заранее
у меня єто юзается.
кроме палатежей заносится и новые звери - изненения у зверей - и прочее.


Название: Re: Занесение платежа напрямую в базу.
Отправлено: 0xbad0c0d3 от 06 Апреля 2011, 08:12:04
А так:
Код:
UPDATE users SET state=if(balance>limit_balance,'on','off')
или
Код:
UPDATE users SET state='on' WHERE balance>limit_balance


Название: Re: Занесение платежа напрямую в базу.
Отправлено: neom от 06 Апреля 2011, 09:06:07
А так:
Код:
UPDATE users SET state=if(balance>limit_balance,'on','off')
или
Код:
UPDATE users SET state='on' WHERE balance>limit_balance

Таким макаром мы врубим всем юзерам у кого денег хватает, а если юзер просил приостановить услугу и мы ему бац и насчитали за текущий месяц, а потом будем возвращать денежки и т.п. нехорошо получаеццо.


Название: Re: Занесение платежа напрямую в базу.
Отправлено: ser970 от 06 Апреля 2011, 09:46:29
Таким макаром мы врубим всем юзерам у кого денег хватает, а если юзер просил приостановить услугу и мы ему бац и насчитали за текущий месяц, а потом будем возвращать денежки и т.п. нехорошо получаеццо.
смена тарифа на -временно отключен- стоимость 0 . проверка
UPDATE users SET state=if(balance>limit_balance,'on','off') where paket<>900


Название: Re: Занесение платежа напрямую в базу.
Отправлено: neom от 06 Апреля 2011, 21:56:02
Спасибо за предложения, решили вопрос вариантом

update users set balance=balance+$money,state='on' where id=$id

пока полет нормальный.



Название: Re: Занесение платежа напрямую в базу.
Отправлено: versus от 07 Апреля 2011, 14:36:31
И не забываем добавлять запись о внесении платежа в историю платежей, иначе будет показывать что баланс не совпадает с историей платежей.


Название: Re: Занесение платежа напрямую в базу.
Отправлено: neom от 15 Апреля 2011, 21:16:12
Ясное дело, это учитывалось сразу же.