Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kentico 检测内部订单/在管理中创建_Kentico - Fatal编程技术网

Kentico 检测内部订单/在管理中创建

Kentico 检测内部订单/在管理中创建,kentico,Kentico,我们已经建立了一个定制的支付提供商,请参阅(抱歉,请参阅谷歌翻译版) 它工作得很好,包括网站编辑的内部订单,但是因为访问者(在前端)需要重定向到“待定订单页面”(在提供商的应用程序中有接受付款的指示),它也在管理中重定向用户 我希望为管理部门提供一个ViewMode,但是在执行内部订单时,PortalContext.ViewMode是一个实时站点(我想它可以使用购物车的步骤/方法等) 检查当前登录的用户是否不是购物车的用户以及是否具有电子商务模块的必要权限就足够了吗 考虑到可用性,从CMSPay

我们已经建立了一个定制的支付提供商,请参阅(抱歉,请参阅谷歌翻译版)

它工作得很好,包括网站编辑的内部订单,但是因为访问者(在前端)需要重定向到“待定订单页面”(在提供商的应用程序中有接受付款的指示),它也在管理中重定向用户

我希望为管理部门提供一个ViewMode,但是在执行内部订单时,
PortalContext.ViewMode
是一个实时站点(我想它可以使用购物车的步骤/方法等)

检查当前登录的用户是否不是购物车的用户以及是否具有电子商务模块的必要权限就足够了吗


考虑到可用性,从CMSPaymentGatewayProvider ProcessPayment方法重定向到Orders应用程序的最佳方法是什么?

用于通过管理界面创建新订单的页面具有以下url:

/CMSModules/Ecommerce/Pages/Tools/Orders/Order_New.aspx
因此,您可以检查订单是否通过此页面下订单,也可以对其进行自定义,并设置一些自定义变量,告诉您将在何处下订单

如果您希望重定向到man Orders应用程序,则url为:

/Admin/CMSAdministration.aspx#b72ad042-31bf-4ff2-8436-25a647bba548
如果您只需要订单网格,那么这就是您要查找的url:

/CMSModules/Ecommerce/Pages/Tools/Orders/Order_List.aspx

用于通过管理界面创建新订单的页面具有以下url:

/CMSModules/Ecommerce/Pages/Tools/Orders/Order_New.aspx
因此,您可以检查订单是否通过此页面下订单,也可以对其进行自定义,并设置一些自定义变量,告诉您将在何处下订单

如果您希望重定向到man Orders应用程序,则url为:

/Admin/CMSAdministration.aspx#b72ad042-31bf-4ff2-8436-25a647bba548
如果您只需要订单网格,那么这就是您要查找的url:

/CMSModules/Ecommerce/Pages/Tools/Orders/Order_List.aspx

您还可以使用以下选项:

if(!string.IsNullOrEmpty(DocumentContext.CurrentAliasPath))
{
//do front end code
}
else
{
//do back end code
}

我在自定义支付网关中运行此功能,完全没有问题。

您也可以使用以下功能:

if(!string.IsNullOrEmpty(DocumentContext.CurrentAliasPath))
{
//do front end code
}
else
{
//do back end code
}

我在一个定制的支付网关上运行这个,没有任何问题。

我更喜欢@Josh的答案,因为它直截了当,而且非常聪明,但是你的回答完成了问题的另一部分。但是,有没有一种方法可以通过编程方式获取这些URL?不喜欢在提供者中硬编码URL:适用于带有GUID锚的应用程序,但不适用于所有其他格式的URL。但是这些默认应用程序的GUI在Kentico的所有版本中都应该保持不变,因为升级脚本依赖于它们。我更喜欢@Josh的答案,因为它直截了当,而且非常聪明,但是你的回答完成了问题的另一部分。但是,有没有一种方法可以通过编程方式获取这些URL?不喜欢在提供者中硬编码URL:适用于带有GUID锚的应用程序,但不适用于所有其他格式的URL。但是这些默认应用程序的guid应该在所有版本的Kentico中保持不变,因为升级脚本依赖于它们。