<?php
 namespace Module\Vendor\Pay\Util; use ModStart\Core\Util\AgentUtil; use Module\Vendor\Pay\Type\PayType; class PayUtil { public static function hasPay() { if (self::isWechatMobileEnable()) { return true; } if (self::isAlipayEnable()) { return true; } if (self::isAlipayWebEnable()) { return true; } if (self::isWechatEnable()) { return true; } if (self::isAlipayManualEnable()) { return true; } if (self::isWechatManualEnable()) { return true; } if (self::isOfflinePayEnable()) { return true; } return false; } public static function isPayEnable($payType) { switch ($payType) { case PayType::ALIPAY: return self::isAlipayEnable(); case PayType::ALIPAY_WEB: return self::isAlipayWebEnable(); case PayType::WECHAT_MOBILE: return self::isWechatMobileEnable(); case PayType::WECHAT_MINI_PROGRAM: return self::isWechatMiniProgramEnable(); case PayType::WECHAT: return self::isWechatEnable(); case PayType::ALIPAY_MANUAL: return self::isAlipayManualEnable(); case PayType::WECHAT_MANUAL: return self::isWechatManualEnable(); case PayType::OFFLINE_PAY: return self::isOfflinePayEnable(); } return false; } public static function isWechatMobileEnable() { if (AgentUtil::isWechat()) { if (modstart_config()->getWithEnv('payWechatMobileOn', false)) { return true; } } return false; } public static function isWechatMiniProgramEnable() { if (AgentUtil::isWechat()) { if (modstart_config()->getWithEnv('payWechatMiniProgramOn', false)) { return true; } } return false; } public static function isWechatEnable() { if (AgentUtil::isMobile()) { return false; } if (modstart_config('payWechatOn', false)) { return true; } return false; } public static function isAlipayEnable() { if (AgentUtil::isWechat()) { return false; } if (modstart_config()->getWithEnv('payAlipayOn', false)) { return true; } return false; } public static function isAlipayManualEnable() { if (modstart_config('payAlipayManualOn', false)) { return true; } return false; } public static function isAlipayWebEnable() { if (modstart_config('payAlipayWebOn', false)) { return true; } return false; } public static function isWechatManualEnable() { if (modstart_config('payWechatManualOn', false)) { return true; } return false; } public static function isOfflinePayEnable() { if (modstart_config('payOfflinePayOn', false)) { return true; } return false; } }