123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- <?php
- namespace crmeb\services\wechat;
- use think\facade\Config;
- class DefaultConfig
- {
-
- const MINI_APPID = 'mini.appid';
-
- const OFFICIAL_APPID = 'official.appid';
-
- const APP_APPID = 'app.appid';
-
- const WEB_APPID = 'web.appid';
-
- const WORK_CORP_ID = 'work.corp_id';
-
- const PAY_MCHID = 'pay.mchid';
-
- const COMMENT_URL = 'comment.url';
-
- const WECHAT_CONFIG = [
-
- 'logger' => true,
-
- 'comment' => [
- 'url' => 'site_url',
- ],
-
- 'mini' => [
- 'appid' => 'routine_appId',
- 'secret' => 'routine_appsecret',
- 'notifyUrl' => '/api/pay/notify/routine',
- ],
-
- 'official' => [
- 'appid' => 'wechat_appid',
- 'secret' => 'wechat_appsecret',
- 'token' => 'wechat_token',
- 'key' => 'wechat_encodingaeskey',
- 'encode' => 'wechat_encode',
- ],
-
- 'app' => [
- 'appid' => 'wechat_app_appid',
- 'secret' => 'wechat_app_appsecret',
- 'token' => 'wechat_openapp_app_token',
- 'key' => 'wechat_openapp_app_aes_key',
- 'notifyUrl' => '/api/pay/notify/app',
- ],
-
- 'web' => [
- 'appid' => 'wechat_open_app_id',
- 'secret' => 'wechat_open_app_secret',
- 'token' => 'wechat_open_app_token',
- 'key' => 'wechat_open_app_aes_key',
- ],
-
- 'work' => [
- 'corp_id' => 'wechat_work_corpid',
- 'token' => 'wechat_work_token',
- 'key' => 'wechat_work_aes_key',
- ],
-
- 'pay' => [
- 'mchid' => 'pay_weixin_mchid',
- 'key' => 'pay_weixin_key',
- 'client_cert' => 'pay_weixin_client_cert',
- 'client_key' => 'pay_weixin_client_key',
- 'notifyUrl' => '/api/pay/notify/wechat',
- 'refundUrl' => '/api/pay/refund/wechat',
- ]
- ];
-
- public static function value(string $key)
- {
- $config = [];
- if (Config::has('wechat')) {
- $config = Config::get('wechat', []);
- }
- $config = array_merge(self::WECHAT_CONFIG, $config);
- $key = explode('.', $key);
- $value = null;
- foreach ($key as $k) {
- if ($value) {
- $value = $value[$k] ?? null;
- } else {
- $value = $config[$k] ?? null;
- }
- }
- if (is_array($value)) {
- $value = !empty($value['value']) ? $value['value'] : $value['key'];
- }
- return $value;
- }
- }
|