php Оплатазаказатолькопослеподтвержденияменеджером。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php Оплатазаказатолькопослеподтвержденияменеджером。相关的知识,希望对你有一定的参考价值。

//Первым делом изменим параметры статуса с кодом «N». Дадим ему название «Принят. Ожидает подтверждения». Далее добавим статус с кодом, например, «A» и названием «Подтвержден. Ожидает оплаты.» Оставшиеся статусы «Выполнен» и «Оплачен» не трогаем.
//Создаем свой шаблон компонента sale.order.ajax, после этого он будет доступен в директории /bitrix/templates/you_template/components/bitrix/sale.order.ajax/.default/ Нас интересует confirm.php. Приводим его к следующему виду:

<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();

use Bitrix\Main\Localization\Loc;

/**
 * @var array $arParams
 * @var array $arResult
 * @var $APPLICATION CMain
 */

if ($arParams["SET_TITLE"] == "Y")
{
	$APPLICATION->SetTitle(Loc::getMessage("SOA_ORDER_COMPLETE"));
}
?>

<? if (!empty($arResult["ORDER"])) { ?>
	<!-- заказ существует идем дальше -->
	<? if ($arResult["ORDER"]["STATUS_ID"]=="N") { ?>
		<!--сообщаем пользователю о том что его заказ сформирован -->
		<table class="sale_order_full_table">
			<tr>
				<td>
					<?=Loc::getMessage("SOA_ORDER_SUC", array(
						"#ORDER_DATE#" => $arResult["ORDER"]["DATE_INSERT"],
						"#ORDER_ID#" => $arResult["ORDER"]["ACCOUNT_NUMBER"]
					))?>
					<? if (!empty($arResult['ORDER']["PAYMENT_ID"])): ?>
						<?=Loc::getMessage("SOA_PAYMENT_SUC", array(
							"#PAYMENT_ID#" => $arResult['PAYMENT'][$arResult['ORDER']["PAYMENT_ID"]]['ACCOUNT_NUMBER']
						))?>
					<? endif ?>
					<br /><br />
					<?=Loc::getMessage("SOA_ORDER_SUC1", array("#LINK#" => $arParams["PATH_TO_PERSONAL"]))?>
				</td>
			</tr>
		</table>
		<div class="content pay">
			<div class="pay_name"><?=Loc::getMessage("SOA_PAY") ?></div>
				<?=CFile::ShowImage($arResult["PAY_SYSTEM"]["LOGOTIP"], 100, 100, "border=0", "", false);?>
				<div class="paysystem_name"><?= $arResult["PAY_SYSTEM"]["NAME"] ?></div>
			<div class="info-order">
				<b><?=Loc::getMessage("PAY_SYSTEM_PAYABLE_ERROR_DEFAULT") ?></b>
			</div>
		</div>
	<? } elseif (!empty($arResult["PAY_SYSTEM"]) && $arResult["ORDER"]["STATUS_ID"]=="A") { ?>
		<!-- предлагаем оплатить заказ (Я взял эту часть из стандартного шаблона) -->
		<table class="sale_order_full_table">
			<tr>
				<td>
					<?=Loc::getMessage("SOA_ORDER_SUC", array(
						"#ORDER_DATE#" => $arResult["ORDER"]["DATE_INSERT"],
						"#ORDER_ID#" => $arResult["ORDER"]["ACCOUNT_NUMBER"]
					))?>
					<? if (!empty($arResult['ORDER']["PAYMENT_ID"])): ?>
						<?=Loc::getMessage("SOA_PAYMENT_SUC", array(
							"#PAYMENT_ID#" => $arResult['PAYMENT'][$arResult['ORDER']["PAYMENT_ID"]]['ACCOUNT_NUMBER']
						))?>
					<? endif ?>
					<br /><br />
					<?=Loc::getMessage("SOA_ORDER_SUC1", array("#LINK#" => $arParams["PATH_TO_PERSONAL"]))?>
				</td>
			</tr>
		</table>
		<div class="content pay">
			<div class="pay_name"><?=Loc::getMessage("SOA_PAY") ?></div>
				<?=CFile::ShowImage($arResult["PAY_SYSTEM"]["LOGOTIP"], 100, 100, "border=0", "", false);?>
				<div class="paysystem_name"><?= $arResult["PAY_SYSTEM"]["NAME"] ?></div>
			<div class="info">
				<? if (strlen($arResult["PAY_SYSTEM"]["ACTION_FILE"]) > 0) { ?>
					<? if ($arResult["PAY_SYSTEM"]["NEW_WINDOW"] == "Y") { ?>
						<script language="JavaScript">
							window.open('<?=$arParams["PATH_TO_PAYMENT"]?>?ORDER_ID=<?=urlencode(urlencode($arResult["ORDER"]["ACCOUNT_NUMBER"]))?>');
						</script>
					<?= GetMessage("SOA_TEMPL_PAY_LINK", Array("#LINK#" => $arParams["PATH_TO_PAYMENT"]."?ORDER_ID=".urlencode(urlencode($arResult["ORDER"]["ACCOUNT_NUMBER"]))))?>
					<? if (CSalePdf::isPdfAvailable()) { ?>
					<br />
						<?= GetMessage("SOA_TEMPL_PAY_PDF", Array("#LINK#" => $arParams["PATH_TO_PAYMENT"]."?ORDER_ID=".urlencode(urlencode($arResult["ORDER"]["ACCOUNT_NUMBER"]))."&pdf=1&DOWNLOAD=Y")) ?>
					<? } ?>
					<? } else { ?>
						<? if (strlen($arResult["PAY_SYSTEM"]["PATH_TO_ACTION"])>0) {
							include($arResult["PAY_SYSTEM"]["PATH_TO_ACTION"]);
						} ?>
					<? } ?>
				<? } ?>
			</div>
		</div>
	<? } else { ?>
		<!-- на тот случай если по той или иной причине не выбрана платежная система (ну мало ли:)) -->
		<span style="color:red;"><?=Loc::getMessage("SOA_ORDER_PS_ERROR")?></span>
	<? } ?>
<? } else { ?>
	<!-- Сообщаем что такого заказа не существует -->
	<b><?=Loc::getMessage("SOA_ERROR_ORDER")?></b>
	<br /><br />

	<table class="sale_order_full_table">
		<tr>
			<td>
				<?=Loc::getMessage("SOA_ERROR_ORDER_LOST", array("#ORDER_ID#" => $arResult["ACCOUNT_NUMBER"]))?>
				<?=Loc::getMessage("SOA_ERROR_ORDER_LOST1")?>
			</td>
		</tr>
	</table>
<? } ?>

以上是关于php Оплатазаказатолькопослеподтвержденияменеджером。的主要内容,如果未能解决你的问题,请参考以下文章

sh Длякаждойсделаннойправкибезкоммитапоказатьизмененныйучастоккодаиспросить,должнолиэтоизменениепопа

比特币不能购买特斯拉了!今日比特币狂跌背后的原因……

python КакполучитьIPаарресспользователявDjango

ini Позволяетлюбомупользователюлокальнойсистемыподключитьсяклюбойбазеданных,используялюбоеимябазыдан

swift Запроснаконсультацию。 ПоследовательноеполучениекартинокизPFFileдлямассиваобъектовPFObject

php Сделатьдоступкчемулибовзависимостиотгруппыпользователя