Изменение периода оплаты до выписки счета

Ошибки, проблемы, способы их решения.
B0nuse
Сообщения: 79
Зарегистрирован: 2010-04-16 23:10:59

Изменение периода оплаты до выписки счета

Сообщение B0nuse » 2010-09-09 11:18:09

Ситуация:
1. Пользователь заказывает или продляет услугу, нажимает "Новый заказ" или "Оплатить заказ", выбирает период оплаты, нажимает "Продолжить" и еще раз "Продолжить", Заказ попадает в корзину. Но пользователь решил изменить период оплаты до выписки счета.

Так вот:
При заказе/продлении услуги, если изменять период оплаты из корзины, то ошибка 500
жалуется, что

Код: Выделить всё

SELECT `ID`,`UserID`,`ServiceID`,`ExpirationDate`,`IsPayed`,`StatusID`,(SELECT `Balance` FROM `Contracts` WHERE `Contracts`.`ID` = `ContractID`) as `ContractBalance` FROM `OrdersOwners`
запись не является уникальной в линии 195 файла /path/to/billing/hosts/root/system/libs/auto/DB.lib

Если заного оплатить заказ с помещением его в корзину, то период изменяется, заменив старый пункт в корзине на новый с новыми данными.

Поковырял, нашел, что за это отвечает в файле hosts/billing/comp/www/ServiceOrderPay.comp строка 23

Код: Выделить всё

$ServiceOrder = DB_Select('OrdersOwners',$Columns,Array('UNIQ','ID'=>$ServiceOrderID?$ServiceOrderID:$OrderID));

При этом везде в файле используется именно $ServiceOrderID... а $OrderID передается через GET только при попытке изменить период оплаты из корзины.
Поэтому, решил эти значения приравнять при условии, что $OrderID есть.

Решается:
В файле hosts/billing/comp/www/ServiceOrderPay.comp строку 23 сделать вида:

Код: Выделить всё

$ServiceOrder = DB_Select('OrdersOwners',$Columns,Array('UNIQ','ID'=>$ServiceOrderID=$OrderID?$OrderID:$ServiceOrderID));

или, чтобы было более понятно:
В файле hosts/billing/comp/www/ServiceOrderPay.comp перед строкой 23 добавить

Код: Выделить всё

if($OrderID) $ServiceOrderID=$OrderID;
возможно все...

serge
Сообщения: 171
Зарегистрирован: 2009-10-06 23:43:37
Откуда: Саратов
Контактная информация:

Re: Изменение периода оплаты до выписки счета

Сообщение serge » 2010-09-10 12:40:05

+1
Только включить бы эти изменения в очередной релиз биллинга. Иначе обновление все вернет как было.

B0nuse
Сообщения: 79
Зарегистрирован: 2010-04-16 23:10:59

Re: Изменение периода оплаты до выписки счета

Сообщение B0nuse » 2010-09-12 20:29:10

serge писал(а):Только включить бы эти изменения в очередной релиз биллинга.

Это, к сожалению, от меня не зависит...
возможно все...

serge
Сообщения: 171
Зарегистрирован: 2009-10-06 23:43:37
Откуда: Саратов
Контактная информация:

Re: Изменение периода оплаты до выписки счета

Сообщение serge » 2010-09-14 12:41:56

B0nuse писал(а):
serge писал(а):Только включить бы эти изменения в очередной релиз биллинга.

Это, к сожалению, от меня не зависит...

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

B0nuse
Сообщения: 79
Зарегистрирован: 2010-04-16 23:10:59

Re: Изменение периода оплаты до выписки счета

Сообщение B0nuse » 2010-09-14 21:37:26

serge писал(а):В связи со сложившейся ситуацией думаю что уже зависит.

Думаю, что, при желании, разработчики сами могут включить в релиз хорошо и подробно расписанные мои фиксы.
возможно все...


Вернуться в «Решение проблем»

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 16 гостей