пятница, 21 сентября 2018 г.

Битрикс начисление на внутренний счет при изменении статуса заказа

Пост для истории, обнаружил сейчас что в драфте много лет лежит пост. Решил что раз он начал писаться, то достоин появиться, пусть даже спустя много лет :)


Событие OnSaleStatusOrder уже deprecated в продакшне не применять)
Смотрю на кусок кода и думаю ... как же ужасно выглядит сочетание UpperCamelCase и underscore и зачем я это сотворил :)

----------------
Недавно делал реализацию под битрикс функционала 100 рублей за друга


AddEventHandler("sale", "OnSaleStatusOrder", Array("check_sale_status_aff", "OnSaleStatusOrder_aff"));

class check_sale_status_aff
{

function OnSaleStatusOrder_aff($ID, $val)
{

// Код статуса заказа P = оплачен, F = отправлен, N = принят
if ($val == "P")
{
// Получаем параметры заказа
$arOrder = CSaleOrder::GetByID($ID);
$AFFILIATE_ID = $arOrder["AFFILIATE_ID"];
$PRICE = $arOrder["PRICE"];

//ПРОВЕРЯЕМ ЧТО СУММА ЗАКАЗА БОЛЬШЕ 500 рублей
//ПРОВЕРЯЕМ К КАКОМУ АФФИЛЕЙТУ ОТНОСИТСЯ ЗАКАЗ
//ПРОВЕРЯЕМ НАЧИСЛЯЛИ ЛИ ЗА ЭТОГО ПОЛЬЗОВАТЕЛЯ УЖЕ БОНУС
//НАЧИСЛЯЕМ БОНУС

$arFilter = Array("ID" => $arOrder["AFFILIATE_ID"]);
$rsUser = CSaleAffiliate::GetList(array(), $arFilter, false, false, array("USER_ID"));
$arUser = $rsUser->Fetch();
$aff_userid=$arUser["USER_ID"];

$arFilter = Array("USER_ID" => $arUser["USER_ID"], "DEBIT" => "Y", "AMOUNT" => "100");
$rsTran = CSaleUserTransact::GetList(array(), $arFilter, false, false, array());
$exist = $rsTran->GetNext();
if (!isset($exist['USER_ID'])AND $PRICE>=500 AND $aff_userid>0){
CSaleUserAccount::UpdateAccount($aff_userid,100 ,$arOrder['CURRENCY'], "Бонус за друга ID=".$arOrder['USER_ID'].", Заказ №=".$ID, $ID);
}

}

}

}

Как заставить элементы каталога обновиться

  Периодически возникает такая ситуация при разработке или отладке обмена с 1С, что требуется загружать одни и те же давно подготовленные файлы. В своём обычном поведении битрикс второй раз загружать один и тот же файл не будет, если в нем не поменять определенные данные.
  Да можно заходить в каждый файл и править его. Или заходить в каждый элемент каталога, менять там что-то и пересохранять, но согласитесь это так себе вариант.
  А если же файл большой или для теста надо обновлять много данных?
  Поэтому самый простой вариант будет для каталога сбрасывать запросом к базе, тот самый вычисленный хэш, который проверяется при загрузке элементов.
----------
update b_iblock_element
set tmp_id = 0
where
iblock_id = 1
and tmp_id <> '0'

tmp_id искомый хэш, типа varchar
При обновлении "Не обменом" он выставялется в значение '0'.
При обновлении "Обменом" он выставляется в значение тега <НомерВерсии>

суббота, 26 мая 2018 г.

Когда то всё должно было измениться

В один прекрасный день всё должно было измениться. И пришло время утренних пробежек, в моём случае просто ходьба после утренней разминки.


суббота, 10 ноября 2012 г.

FullTiltPoker снова жив

6 ноября как и обещали запустили Фул Тильт. Так что любимый шустрый покер рум снова жив. Правда есть один минус очень сильно подрезали рб. если раньше он был статичный 27%+магазин. То теперь он вместе со всеми плюшками будет дай бог выдавать 25%

Ошибка при обновлении Eclipse “No repository found containing”

Сегодня решил обновить Эклипс и столкнулся с ошибкой.

“No repository found containing” и путь до репозитория

Путем Гугления проблема была решена, оказалось что по какой-то сверхестественной причине,  в конце ссылки для репозитория теперь должен стоять "/". 
Идем Help->Software Updates и кнопка  Manage Sites для тех ссылок где нет в конце слэша и они не disabled. Вставляем в конце слэш, сохраняемся и снова апдейтим Эклипс. Вуаля

вторник, 30 октября 2012 г.

Нормативы на 2013 год на электроэнергию и воду

Кому любопытно найдет сам постановления Единого Тарифного Органа 28\6 и 28\7 от 31 августа 2012 года.
Теперь мы будет платить за электроэнергию взависимости от размеров нашей ванной (длинна в мм) и а за воду взавимости от размеров нашей ванной и от того на каком этаже она находится. Любите наших законотворцев.


воскресенье, 16 сентября 2012 г.

FTP будет жить

На днях друзья подкинули ссылку что FullTiltPoker будет жить. На момент блокировки данного покер рума я зависал именно в нем. Холивары разводить не буду, но данный рум меня устраивал больше чем ПокерСтарз. В ноябре рум будет запущен в работу. А владеть им будет лейбл ПокерСтарз, вот такие пироги..........

среда, 15 августа 2012 г.

Битрикс весьма интересная штука, если в нем как следует разобраться. Но чтобы писать в нем правильный код, надо изучать мелкие нюансы, иначе получается говно-код.

После долгого перерыва

Решил оценить новый интерфейс в блоге и заодно начать снова писать небольшие посты.

К Андроиду за последние полгода я даже не обращался, не считая вчерашнего дня когда друг попросил ему на Nook\Нук читалка, пересобрать исходник чтобы он по умолчанию запускал другую софтину. ZX Reader вместо Cool Reader-a. Оказалось что на андроид читалках весьма популярно вместо лаунчера воткнуть приложение которое при старте будет просто запускать программу читалку. Пересобрал добавил 20 сек таймаут при запуске, чтобы медленные SD карты при старте могли прожеваться, если софтинка стоит на них. Все остались довольны.




воскресенье, 19 февраля 2012 г.

О битрикс

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