3namespace Bitrix\Sale\Controller;
5use Bitrix\Main\Engine\AutoWire\ExactParameter;
6use Bitrix\Main\Engine\Response\DataType\Page;
9use Bitrix\Main\UI\PageNavigation;
11use Bitrix\Sale\Helpers\Order\Builder\SettingsContainer;
12use Bitrix\Sale\PaymentCollection;
13use Bitrix\Sale\PaySystem\PaymentAvailablesPaySystems;
27 function($className, $id)
32 $paymentClass = $registry->getPaymentClassName();
47 $orderClass = $registry->getOrderClassName();
49 $order = $orderClass::load($row[
'ORDER_ID']);
58 $this->
addError(
new Error(
'payment is not exists', 200640400001));
78 $builder = $this->getBuilder();
79 $builder->buildEntityPayments(
$fields);
81 if (!$builder->getErrorsContainer()->getErrorCollection()->isEmpty())
83 $this->
addErrors($builder->getErrorsContainer()->getErrors());
88 $order = $builder->getOrder();
100 'PAYMENTS' => $this->toArray(
$order)[
'ORDER'][
'PAYMENTS'],
110 $builder = $this->getBuilder(
112 'deletePaymentIfNotExists' =>
false,
116 $builder->buildEntityPayments(
$data);
118 if (!$builder->getErrorsContainer()->getErrorCollection()->isEmpty())
120 $this->
addErrors($builder->getErrorsContainer()->getErrors());
125 $order = $builder->getOrder();
127 $collection =
$order->getPaymentCollection();
133 $idx =
$payment->getInternalIndex();
147 $entity =
$order->getPaymentCollection()->getItemByIndex($idx);
150 'PAYMENT' => $this->
get(
$entity),
164 $builder = $this->getBuilder(
165 new SettingsContainer([
166 'deletePaymentIfNotExists' =>
false,
169 $builder->buildEntityPayments(
$data);
171 if (!$builder->getErrorsContainer()->getErrorCollection()->isEmpty())
173 $this->
addErrors($builder->getErrorsContainer()->getErrors());
178 $order = $builder->getOrder();
198 'PAYMENT' => $this->
get(
$entity),
212 'PAYMENT' => $this->
get($payment),
221 bool $__calculateTotalCount =
true
228 new \Bitrix\Main\Entity\ReferenceField(
230 '\Bitrix\Sale\Internals\PaySystemActionTable',
231 [
'=this.PAY_SYSTEM_ID' =>
'ref.ID']
239 'offset' => $pageNavigation->
getOffset(),
240 'limit' => $pageNavigation->
getLimit(),
241 'runtime' => $runtime,
242 'count_total' => $__calculateTotalCount,
257 return $payment->getPaymentSystemId();
262 return $payment->getPaymentSystemName();
282 return $payment->isInner() ?
'Y' :
'N';
287 return $payment->isMarked() ?
'Y' :
'N';
292 return $payment->isPaid() ?
'Y' :
'N';
297 return $payment->isReturn() ?
'Y' :
'N';
381 if (!$r->isSuccess())
390 $collection =
$payment->getCollection();
391 $r = $collection->getOrder()->save();
392 if (!$r->isSuccess())
400 return $r->isSuccess();
405 $payments = $this->toArray(
$payment->getCollection()->getOrder(),
$fields)[
'ORDER'][
'PAYMENTS'];
406 foreach ($payments as $item)
408 if ($item[
'ID'] ==
$payment->getId())
421 ? [
'PAYMENT' =>
$fields[
'PAYMENTS']]
429 $name ===
'getorderid'
430 ||
$name ===
'getpaymentsystemid'
431 ||
$name ===
'getpaymentsystemname'
432 ||
$name ===
'getpersontypeid'
433 ||
$name ===
'getsum'
434 ||
$name ===
'getsumpaid'
435 ||
$name ===
'isinner'
436 ||
$name ===
'ismarked'
437 ||
$name ===
'isnarked'
438 ||
$name ===
'ispaid'
439 ||
$name ===
'isreturn'
442 $result = $this->checkReadPermissionEntity();
446 ||
$name ===
'setavailablepaysystems'
447 ||
$name ===
'clearavailablepaysystems'
448 ||
$name ===
'setreturn'
451 $result = $this->checkModifyPermissionEntity();
getPrimaryAutoWiredParameter()
listAction(PageNavigation $pageNavigation, array $select=[], array $filter=[], array $order=[], bool $__calculateTotalCount=true)
static prepareFields($fields)
getSumPaidAction(Sale\Payment $payment)
isInnerAction(Sale\Payment $payment)
setPaidAction(Sale\Payment $payment, $value)
getPaymentSystemIdAction(Sale\Payment $payment)
checkPermissionEntity($name)
setAvailablePaySystemsAction(Sale\Payment $payment, array $paySystemIds)
getPersonTypeIdAction(Sale\Payment $payment)
getPaymentSystemNameAction(Sale\Payment $payment)
isMarkedAction(Sale\Payment $payment)
isReturnAction(Sale\Payment $payment)
getSumAction(Sale\Payment $payment)
clearAvailablePaySystemsAction(Sale\Payment $payment)
getAction(\Bitrix\Sale\Payment $payment)
setReturnAction(Sale\Payment $payment, $value)
getOrderIdAction(Sale\Payment $payment)
isPaidAction(Sale\Payment $payment)
deleteAction(\Bitrix\Sale\Payment $payment)
static clearBindings(int $paymentId)
static setBindings(int $paymentId, array $paySystemIds)
static getList(array $parameters=[])
static getInstance($type)
const REGISTRY_TYPE_ORDER
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)