Ví dụ về tp lnh thanh toán
庄này c在vào 2023年4月17日。Để ly phiên bn hin ti, vui lòng truy cp https://help.shopify.com/vi/manual/checkout-settings/script-editor/examples/payment-gateway-scripts。
tp lnh thanh toán tng tác vi cổng thanh toán và có thể thayđổi tiêu đề, khnongs hiển thvà vtrí hiển thcủa cổng。nhng tp lnh này sẽ chy mỗi khi khách hàng truy cp vào trang phng thc thanh toán khi thanh toán。tp lnh thanh toán không tng tác vi清toán nhanh Vì thanh toán nhanh hiển thvi khách hàng trc khi họ n trang thanh toán。
Shopify +
Đoạn mã Shopify và ng脚本编辑器chỉ khdng cho thng nhânShopify + .Ứng dng脚本编辑器không còn khdng để ti xung từ Cửa hàng ng dng
Vào ngày 13 tháng 8 nim 2024, Đoạn mã Shopify sẽ tr。Hãy di chuyển Đoạn mã hin có của bn sangShopify功能 trc ngày này。
Để sử dng mẫu trên trang này, to tp lnh vi mẫu trng。
Các bc thực hin:
Trong trang qun trshopify, vàoỨng dụng >脚本编辑器 .
Nhấp农村村民创建脚本 (to tp lnh)。
Nhấp农村村民Cổng thanh toán .
Chọn空白模板 (Mẫu tr), rdif nhp vào创建脚本 (to tp lnh)。
阮富仲mụcRuby源代码 (Mã nguubnn Ruby), xóa dòng mã mặc nh:输出。车=输入.车
Sao chép tp lnh từ trang này và dán vào mcRuby源代码 (Mã nguailn Ruby)。
Chỉnh sửa m: c可定制的设置 (Caiđặ深处t图伊chỉnh) củtập lệnhđểhoạtđộng tạ我cử挂起。
Kiểm tra p lnh。Để bit thêm thông tin, tham khoThử nghim và gỡ lỗi Đoạn mã Shopify .
秀姬kiểm tra:
nhấp农村村民保存草稿 (lu blnháp) để lu blnháp cha ng của tp lnh hoặc
nhấp农村村民保存并发布 (lu và) để to và n mã。
Hiển themail cổng thanh toán cho khách hàng cụ thể
Sử dng tp lnh này để chỉ hiển thmut tùy chn cổng cụ thể cho nhng khách hàng c gắn thẻ cụ thể。
Ví dụ: Chỉ hiển thmutt cổng cụ thể vi nhng khách hàng có thẻ贵宾
- cổng này sẽ n vi tt ccác khách hàng khác。
# ================================ 可定制的设置 ================================ # ================================================================ #显示客户标签的网关 # 如果我们有一个匹配的客户,输入的网关将是 #显示,所有其他将被隐藏。否则,输入的 # gateway将被隐藏。 # # - 'customer_tag_match_type'决定我们是否寻找客户 #是否使用输入的标签进行标记。可以是: # - ':include'检查客户是否被标记 # - ':exclude'以确保客户没有被标记 # - 'customer_tags'是一个客户标签列表,用于触发 #活动 # - 'gateway_match_type'决定下面的字符串是否 #应该是完全匹配或部分匹配。可以是: # - ':exact'用于精确匹配 # - ':partial'表示部分匹配 # - 'gateway_names'是一个用于标识网关的字符串列表 # ================================================================ SHOW_GATEWAYS_FOR_CUSTOMER_TAG = [ { customer_tag_match_type:包括 , customer_tags: [ “customer_tag” , “another_tag” ], gateway_match_type:精确 , gateway_names: [ “网关” , “其他网关” ], }, ] # ================================ 脚本代码(不要编辑 ) ================================ # ================================================================ # CustomerTagSelector # #查找所提供的客户是否有任何输入的标记。 # ================================================================ 类 CustomerTagSelector def 初始化 ( match_type , 标签 ) @comparator = match_type = = :包括 ? “什么?” : “没有吗?” @ tags = 标签 . 地图 { | 标签 | 标签 . downcase . 带 } 结束 def 比赛吗? ( 客户 ) customer_tags = 客户 . 标签 . 地图 { | 标签 | 标签 . downcase . 带 } ( @ tags & customer_tags ). 发送 ( @comparator ) 结束 结束 # ================================================================ # GatewayNameSelector # 查找所提供的网关名是否与 #输入的名称。 # ================================================================ 类 GatewayNameSelector def 初始化 ( match_type , gateway_names ) @comparator = match_type = = :确切 ? “= =” : “有吗?” @gateway_names = gateway_names . 地图 { | 名字 | 名字 . downcase . 带 } 结束 def 比赛吗? ( payment_gateway ) @gateway_names . 任何? { | 名字 | payment_gateway . 名字 . downcase . 带 . 发送 ( @comparator , 名字 ) } 结束 结束 # ================================================================ # ShowGatewaysForCustomerTagCampaign # 如果客户有任何输入的标记,则输入的网关 根据输入的设置显示/隐藏 # ================================================================ 类 ShowGatewaysForCustomerTagCampaign def 初始化 ( 活动 ) @campaigns = 活动 结束 def 运行 ( 车 , payment_gateways ) @campaigns . 每一个 做 | 运动 | customer_tag_selector = CustomerTagSelector . 新 ( 运动 [ : customer_tag_match_type ], 运动 [ : customer_tags ], ) customer_match = 车 . 客户 . nil ? ? 假 : customer_tag_selector . 比赛吗? ( 车 . 客户 ) gateway_name_selector = GatewayNameSelector . 新 ( 运动 [ : gateway_match_type ], 运动 [ : gateway_names ], ) payment_gateways . delete_if 做 | payment_gateway | gateway_name_selector . 比赛吗? ( payment_gateway ) ! = customer_match 结束 结束 结束 结束 活动 = [ ShowGatewaysForCustomerTagCampaign . 新 ( SHOW_GATEWAYS_FOR_CUSTOMER_TAG ), ] 活动 . 每一个 做 | 运动 | 运动 . 运行 ( 输入 . 车 , 输入 . payment_gateways ) 结束 输出 . payment_gateways = 输入 . payment_gateways
Ẩn cổng thanh toán cho khách hàng cụ thể
Sử dng tp lnh này để t cổng cụ thể vi nhng khách hàng c gắn thẻ cụ thể。
Ví dụ: Ẩn mutt cổng cụ thể vi nhng khách hàng có thẻHIDE_GATEWAY
.
# ================================ 可定制的设置 ================================ # ================================================================ #隐藏客户标签的网关 # 如果我们有一个匹配的客户,输入的网关将是 #隐藏。 # # - 'customer_tag_match_type'决定我们是否寻找客户 #是否使用输入的标签进行标记。可以是: # - ':include'检查客户是否被标记 # - ':exclude'以确保客户没有被标记 # - 'customer_tags'是一个客户标签列表,用于触发 #活动 # - 'gateway_match_type'决定下面的字符串是否 #应该是完全匹配或部分匹配。可以是: # - ':exact'用于精确匹配 # - ':partial'表示部分匹配 # - 'gateway_names'是一个用于标识网关的字符串列表 # ================================================================ HIDE_GATEWAYS_FOR_CUSTOMER_TAG = [ { customer_tag_match_type:包括 , customer_tags: [ “customer_tag” , “another_tag” ], gateway_match_type:精确 , gateway_names: [ “网关” , “其他网关” ], }, ] # ================================ 脚本代码(不要编辑 ) ================================ # ================================================================ # CustomerTagSelector # #查找所提供的客户是否有任何输入的标记。 # ================================================================ 类 CustomerTagSelector def 初始化 ( match_type , 标签 ) @comparator = match_type = = :包括 ? “什么?” : “没有吗?” @ tags = 标签 . 地图 { | 标签 | 标签 . downcase . 带 } 结束 def 比赛吗? ( 客户 ) customer_tags = 客户 . 标签 . 地图 { | 标签 | 标签 . downcase . 带 } ( @ tags & customer_tags ). 发送 ( @comparator ) 结束 结束 # ================================================================ # GatewayNameSelector # 查找所提供的网关名是否与 #输入的名称。 # ================================================================ 类 GatewayNameSelector def 初始化 ( match_type , gateway_names ) @comparator = match_type = = :确切 ? “= =” : “有吗?” @gateway_names = gateway_names . 地图 { | 名字 | 名字 . downcase . 带 } 结束 def 比赛吗? ( payment_gateway ) @gateway_names . 任何? { | 名字 | payment_gateway . 名字 . downcase . 带 . 发送 ( @comparator , 名字 ) } 结束 结束 # ================================================================ # HideGatewaysForCustomerTagCampaign # 如果我们有一个匹配的客户,输入的网关将是 #隐藏。 # ================================================================ 类 HideGatewaysForCustomerTagCampaign def 初始化 ( 活动 ) @campaigns = 活动 结束 def 运行 ( 车 , payment_gateways ) 返回 如果 车 . 客户 . nil ? @campaigns . 每一个 做 | 运动 | customer_tag_selector = CustomerTagSelector . 新 ( 运动 [ : customer_tag_match_type ], 运动 [ : customer_tags ], ) 下一个 除非 customer_tag_selector . 比赛吗? ( 车 . 客户 ) gateway_name_selector = GatewayNameSelector . 新 ( 运动 [ : gateway_match_type ], 运动 [ : gateway_names ], ) payment_gateways . delete_if 做 | payment_gateway | gateway_name_selector . 比赛吗? ( payment_gateway ) 结束 结束 结束 结束 活动 = [ HideGatewaysForCustomerTagCampaign . 新 ( HIDE_GATEWAYS_FOR_CUSTOMER_TAG ), ] 活动 . 每一个 做 | 运动 | 运动 . 运行 ( 输入 . 车 , 输入 . payment_gateways ) 结束 输出 . payment_gateways = 输入 . payment_gateways
Ẩn cổng i vi sn phm cụ thể
Sửdụng tập lệnh不đểẩn một cổng nhấtđịnh川崎cac mặt挂cụthểđược农村村民giỏ挂。
Ví dụ: Ẩn mutt cổng cụ thể naut u khách hàng đặt mũ。
# ================================ 可定制的设置 ================================ # ================================================================ #隐藏产品的网关 # #如果购物车中包含任何匹配的物品,则输入的网关 #是隐藏的。 # # - 'product_selector_match_type'决定我们是否寻找 #与输入选择器匹配或不匹配的产品。可以 号是: # - ':include'检查产品是否匹配 # - ':exclude'以确保产品不匹配 # - 'product_selector_type'决定产品的合格程度 #将被识别。可以是: # - ':tag'按标签查找产品 # - ':type'按类型查找产品 # - ':vendor'按供应商查找产品 # - ':product_id'按ID查找产品 # - ':variant_id'通过变量ID查找产品 # - ':subscription'查找订阅产品 # - 'product_selectors'是一个字符串或数字的列表 #通过上述选择器类型识别产品 # - 'gateway_match_type'决定下面的字符串是否 #应该是完全匹配或部分匹配。可以是: # - ':exact'用于精确匹配 # - ':partial'表示部分匹配 # - 'gateway_names'是一个用于标识网关的字符串列表 # ================================================================ HIDE_GATEWAY_FOR_PRODUCT = [ { product_selector_match_type:包括 , product_selector_type: product_id , product_selectors: [ 1234567890987 , 1234567890986 ], gateway_match_type:精确 , gateway_names: [ “网关” , “其他网关” ], }, ] # ================================ 脚本代码(不要编辑 ) ================================ # ================================================================ # ProductSelector # #根据输入的标准查找匹配的产品。 # ================================================================ 类 ProductSelector def 初始化 ( match_type , selector_type , 选择器 ) @match_type = match_type @comparator = match_type = = :包括 ? “什么?” : “没有吗?” @selector_type = selector_type @ selector = 选择器 结束 def 比赛吗? ( line_item ) 如果 自我 . respond_to吗? ( @selector_type ) 自我 . 发送 ( @selector_type , line_item ) 其他的 提高 RuntimeError . 新 ( “无效的产品选择器类型” ) 结束 结束 def 标签 ( line_item ) product_tags = line_item . 变体 . 产品 . 标签 . 地图 { | 标签 | 标签 . downcase . 带 } @ selector = @ selector . 地图 { | 选择器 | 选择器 . downcase . 带 } ( @ selector & product_tags ). 发送 ( @comparator ) 结束 def 类型 ( line_item ) @ selector = @ selector . 地图 { | 选择器 | 选择器 . downcase . 带 } ( @match_type = = :包括 ) = = @ selector . 包括什么? ( line_item . 变体 . 产品 . product_type . downcase . 带 ) 结束 def 供应商 ( line_item ) @ selector = @ selector . 地图 { | 选择器 | 选择器 . downcase . 带 } ( @match_type = = :包括 ) = = @ selector . 包括什么? ( line_item . 变体 . 产品 . 供应商 . downcase . 带 ) 结束 def product_id ( line_item ) ( @match_type = = :包括 ) = = @ selector . 包括什么? ( line_item . 变体 . 产品 . id ) 结束 def variant_id ( line_item ) ( @match_type = = :包括 ) = = @ selector . 包括什么? ( line_item . 变体 . id ) 结束 def 订阅 ( line_item ) ! line_item . selling_plan_id . nil ? 结束 结束 # ================================================================ # GatewayNameSelector # 查找所提供的网关名是否与 #输入的名称。 # ================================================================ 类 GatewayNameSelector def 初始化 ( match_type , gateway_names ) @comparator = match_type = = :确切 ? “= =” : “有吗?” @gateway_names = gateway_names . 地图 { | 名字 | 名字 . downcase . 带 } 结束 def 比赛吗? ( payment_gateway ) @gateway_names . 任何? { | 名字 | payment_gateway . 名字 . downcase . 带 . 发送 ( @comparator , 名字 ) } 结束 结束 # ================================================================ # HideGatewayForProductCampaign # #如果购物车中包含任何匹配的物品,则输入的网关 #是隐藏的。 # ================================================================ 类 HideGatewayForProductCampaign def 初始化 ( 活动 ) @campaigns = 活动 结束 def 运行 ( 车 , payment_gateways ) @campaigns . 每一个 做 | 运动 | product_selector = ProductSelector . 新 ( 运动 [ : product_selector_match_type ], 运动 [ : product_selector_type ], 运动 [ : product_selectors ], ) 下一个 除非 车 . line_items . 任何? { | line_item | product_selector . 比赛吗? ( line_item ) } gateway_name_selector = GatewayNameSelector . 新 ( 运动 [ : gateway_match_type ], 运动 [ : gateway_names ], ) payment_gateways . delete_if 做 | payment_gateway | gateway_name_selector . 比赛吗? ( payment_gateway ) 结束 结束 结束 结束 活动 = [ HideGatewayForProductCampaign . 新 ( HIDE_GATEWAY_FOR_PRODUCT ), ] 活动 . 每一个 做 | 运动 | 运动 . 运行 ( 输入 . 车 , 输入 . payment_gateways ) 结束 输出 . payment_gateways = 输入 . payment_gateways
Hiển thcổng cho mut số quc gia cụ thể
Sử dng tp lnh này để chỉ hiển thmut cổng cụ thể khi khách hàng đặt hàng từ mut quc gia cụ thể。
Ví dụ: Chỉ hiển thmutt cổng cụ thể khi khách hàng đặt hàng từ加拿大- cổng sẽ v i nhng a chỉ các quc gia khác。
# ================================ 可定制的设置 ================================ # ================================================================ #显示国家的网关 # 如果收货地址国家与输入的任何国家相匹配 #国家,输入的网关(s)将显示,以及所有其他 #将被隐藏。否则,输入的网关将被隐藏。 # # - 'country_code_match_type'决定是否查找购物车 是否匹配输入的选择器。可以是: # - ':include'在列表中查找一个国家 # - ':exclude'以确保该国家不在列表中 # - 'country_codes'是一个2个字符的缩写列表 #适用国家 # - 'gateway_match_type'决定下面的字符串是否 #应该是完全匹配或部分匹配。可以是: # - ':exact'用于精确匹配 # - ':partial'表示部分匹配 # - 'gateway_names'是一个用于标识网关的字符串列表 # ================================================================ SHOW_GATEWAYS_FOR_COUNTRY = [ { country_code_match_type:包括 , country_code: [ “CA” ], gateway_match_type:精确 , gateway_names: [ “网关” , “其他网关” ], }, ] # ================================ 脚本代码(不要编辑 ) ================================ # ================================================================ # CountrySelector # #查找所提供的国家代码是否与输入的国家代码匹配 #字符串。 # ================================================================ 类 CountrySelector def 初始化 ( match_type , 国家 ) @match_type = match_type @countries = 国家 . 地图 { | 国家 | 国家 . upcase . 带 } 结束 def 比赛吗? ( country_code ) ( @match_type = = :包括 ) = = @countries . 包括什么? ( country_code . upcase . 带 ) 结束 结束 # ================================================================ # GatewayNameSelector # 查找所提供的网关名是否与 #输入的名称。 # ================================================================ 类 GatewayNameSelector def 初始化 ( match_type , gateway_names ) @comparator = match_type = = :确切 ? “= =” : “有吗?” @gateway_names = gateway_names . 地图 { | 名字 | 名字 . downcase . 带 } 结束 def 比赛吗? ( payment_gateway ) @gateway_names . 任何? { | 名字 | payment_gateway . 名字 . downcase . 带 . 发送 ( @comparator , 名字 ) } 结束 结束 # ================================================================ # ShowGatewaysForCountryCampaign # 如果收货地址国家与输入的任何国家相匹配 #国家,输入的网关(s)将显示,以及所有其他 #将被隐藏。否则,输入的网关将被隐藏。 # ================================================================ 类 ShowGatewaysForCountryCampaign def 初始化 ( 活动 ) @campaigns = 活动 结束 def 运行 ( 车 , payment_gateways ) 地址 = 车 . shipping_address @campaigns . 每一个 做 | 运动 | country_selector = CountrySelector . 新 ( 运动 [ : country_code_match_type ], 运动 [ : country_code ], ) country_match = 地址 . nil ? ? 假 : country_selector . 比赛吗? ( 地址 . country_code ) gateway_name_selector = GatewayNameSelector . 新 ( 运动 [ : gateway_match_type ], 运动 [ : gateway_names ], ) payment_gateways . delete_if 做 | payment_gateway | gateway_name_selector . 比赛吗? ( payment_gateway ) ! = country_match 结束 结束 结束 结束 活动 = [ ShowGatewaysForCountryCampaign . 新 ( SHOW_GATEWAYS_FOR_COUNTRY ), ] 活动 . 每一个 做 | 运动 | 运动 . 运行 ( 输入 . 车 , 输入 . payment_gateways ) 结束 输出 . payment_gateways = 输入 . payment_gateways
Ẩn cổng i vi các quc gia cụ thể
Sử dng tp lnh này để n cổng thanh toán ti mut số quc gia cụ thể。
Ví dụ: Ẩn mutt cổng cụ thể vi khách hàng ti加拿大。
# ================================ 可定制的设置 ================================ # ================================================================ #隐藏国家的入口 # 如果收货地址国家与输入的任何国家相匹配 # countries,输入的网关将被隐藏。 # # - 'country_code_match_type'决定是否查找购物车 是否匹配输入的选择器。可以是: # - ':include'在列表中查找一个国家 # - ':exclude'以确保该国家不在列表中 # - 'country_codes'是一个2个字符的缩写列表 #适用国家 # - 'gateway_match_type'决定下面的字符串是否 #应该是完全匹配或部分匹配。可以是: # - ':exact'用于精确匹配 # - ':partial'表示部分匹配 # - 'gateway_names'是一个用于标识网关的字符串列表 # ================================================================ HIDE_GATEWAYS_FOR_COUNTRY = [ { country_code_match_type:包括 , country_code: [ “CA” ], gateway_match_type:精确 , gateway_names: [ “网关” , “其他网关” ], }, ] # ================================ 脚本代码(不要编辑 ) ================================ # ================================================================ # CountrySelector # #查找所提供的国家代码是否与输入的国家代码匹配 #字符串。 # ================================================================ 类 CountrySelector def 初始化 ( match_type , 国家 ) @match_type = match_type @countries = 国家 . 地图 { | 国家 | 国家 . upcase . 带 } 结束 def 比赛吗? ( country_code ) ( @match_type = = :包括 ) = = @countries . 包括什么? ( country_code . upcase . 带 ) 结束 结束 # ================================================================ # GatewayNameSelector # 查找所提供的网关名是否与 #输入的名称。 # ================================================================ 类 GatewayNameSelector def 初始化 ( match_type , gateway_names ) @comparator = match_type = = :确切 ? “= =” : “有吗?” @gateway_names = gateway_names . 地图 { | 名字 | 名字 . downcase . 带 } 结束 def 比赛吗? ( payment_gateway ) @gateway_names . 任何? { | 名字 | payment_gateway . 名字 . downcase . 带 . 发送 ( @comparator , 名字 ) } 结束 结束 # ================================================================ # HideGatewaysForCountryCampaign # 如果收货地址国家与输入的任何国家相匹配 # countries,输入的网关将被隐藏。 # ================================================================ 类 HideGatewaysForCountryCampaign def 初始化 ( 活动 ) @campaigns = 活动 结束 def 运行 ( 车 , payment_gateways ) 地址 = 车 . shipping_address 返回 如果 地址 . nil ? @campaigns . 每一个 做 | 运动 | country_selector = CountrySelector . 新 ( 运动 [ : country_code_match_type ], 运动 [ : country_code ], ) 下一个 除非 country_selector . 比赛吗? ( 地址 . country_code ) gateway_name_selector = GatewayNameSelector . 新 ( 运动 [ : gateway_match_type ], 运动 [ : gateway_names ], ) payment_gateways . delete_if 做 | payment_gateway | gateway_name_selector . 比赛吗? ( payment_gateway ) 结束 结束 结束 结束 活动 = [ HideGatewaysForCountryCampaign . 新 ( HIDE_GATEWAYS_FOR_COUNTRY ), ] 活动 . 每一个 做 | 运动 | 运动 . 运行 ( 输入 . 车 , 输入 . payment_gateways ) 结束 输出 . payment_gateways = 输入 . payment_gateways
Hiển thcổng theo m生化c chi tiêu
Sử dng tp lnh này để hiển thcổng cụ thể nu khách hàng chi tiêu vt t số tin nht nh。
Ví dụ: Hiển thmutt cổng cụ thể nu khách hàng chi tiêu từ 1000 USD trlên, nu không hãy n cổng。
# ================================ 可定制的设置 ================================ # ================================================================ #显示开销阈值的网关 # #如果购物车总数大于或等于输入的 # threshold,则显示输入的网关。 # # -“threshold”是客户必须消费的金额 #命令查看输入的网关 # - 'gateway_match_type'决定下面的字符串是否 #应该是完全匹配或部分匹配。可以是: # - ':exact'用于精确匹配 # - ':partial'表示部分匹配 # - 'gateway_names'是一个用于标识网关的字符串列表 # ================================================================ SHOW_GATEWAYS_FOR_THRESHOLD = [ { 阈值: 500 , gateway_match_type:精确 , gateway_names: [ “网关” , “其他网关” ], }, ] # ================================ 脚本代码(不要编辑 ) ================================ # ================================================================ # GatewayNameSelector # 查找所提供的网关名是否与 #输入的名称。 # ================================================================ 类 GatewayNameSelector def 初始化 ( match_type , gateway_names ) @comparator = match_type = = :确切 ? “= =” : “有吗?” @gateway_names = gateway_names . 地图 { | 名字 | 名字 . downcase . 带 } 结束 def 比赛吗? ( payment_gateway ) @gateway_names . 任何? { | 名字 | payment_gateway . 名字 . downcase . 带 . 发送 ( @comparator , 名字 ) } 结束 结束 # ================================================================ # ShowGatewaysForThresholdCampaign # #如果购物车总数大于或等于输入的 # threshold,则显示输入的网关。 # ================================================================ 类 ShowGatewaysForThresholdCampaign def 初始化 ( 活动 ) @campaigns = 活动 结束 def 运行 ( 车 , payment_gateways ) @campaigns . 每一个 做 | 运动 | 下一个 除非 车 . subtotal_price < ( 钱 . 新 ( 分: One hundred. ) * 运动 [ :阈值 ]) gateway_name_selector = GatewayNameSelector . 新 ( 运动 [ : gateway_match_type ], 运动 [ : gateway_names ], ) payment_gateways . delete_if 做 | payment_gateway | gateway_name_selector . 比赛吗? ( payment_gateway ) 结束 结束 结束 结束 活动 = [ ShowGatewaysForThresholdCampaign . 新 ( SHOW_GATEWAYS_FOR_THRESHOLD ), ] 活动 . 每一个 做 | 运动 | 运动 . 运行 ( 输入 . 车 , 输入 . payment_gateways ) 结束 输出 . payment_gateways = 输入 . payment_gateways
Sắp xongt p lvmi thứ tự cổng
Sử dng tp lnh này để thay đổi thứ tự mặc cnh của cổng thanh toán bn cung cp cho khách hàng。
# ================================ 可定制的设置 ================================ # ================================================================ #重新排序网关 # #您希望网关显示的顺序 # ================================================================ DESIRED_GATEWAY_ORDER = [ “支付网关1” , “支付网关2” , “支付网关3” , ] # ================================ 脚本代码(不要编辑 ) ================================ # ================================================================ # ReorderGatewaysCampaign # #将网关重新排序到输入的顺序 # ================================================================ 类 ReorderGatewaysCampaign def 初始化 ( desired_order ) @desired_order = desired_order . 地图 { | 项 | 项 . downcase . 带 } 结束 def 运行 ( 车 , payment_gateways ) payment_gateways . sort_by ! { | payment_gateway | @desired_order . 指数 ( payment_gateway . 名字 . downcase . 带 ) || 浮动 :: ∞ } 结束 结束 活动 = [ ReorderGatewaysCampaign . 新 ( DESIRED_GATEWAY_ORDER ), ] 活动 . 每一个 做 | 运动 | 运动 . 运行 ( 输入 . 车 , 输入 . payment_gateways ) 结束 输出 . payment_gateways = 输入 . payment_gateways