Browse Source

fix: 回调服务处理

super-yimizi 2 months ago
parent
commit
1a8b035fd6

+ 1 - 1
addons/epay/.addonrc

@@ -1 +1 @@
-{"files":["application\/admin\/controller\/Epay.php","public\/assets\/addons\/epay\/css\/common.css","public\/assets\/addons\/epay\/less\/common.less","public\/assets\/addons\/epay\/images\/paid.png","public\/assets\/addons\/epay\/images\/logo-wechat.png","public\/assets\/addons\/epay\/images\/logo-alipay.png","public\/assets\/addons\/epay\/images\/screenshot-alipay.png","public\/assets\/addons\/epay\/images\/alipay.png","public\/assets\/addons\/epay\/images\/screenshot-wechat.png","public\/assets\/addons\/epay\/images\/wechat.png","public\/assets\/addons\/epay\/images\/scan.png","public\/assets\/addons\/epay\/images\/expired.png","public\/assets\/addons\/epay\/js\/jquery.qrcode.min.js","public\/assets\/addons\/epay\/js\/common.js"],"license":"regular","licenseto":"9671","licensekey":"Lt1DIF8fpSydPYwo 4gnW3tZGeMfSH8\/5SUQPfw==","domains":[],"licensecodes":[],"validations":[]}
+{"files":["application\/admin\/controller\/Epay.php","public\/assets\/addons\/epay\/css\/common.css","public\/assets\/addons\/epay\/less\/common.less","public\/assets\/addons\/epay\/images\/paid.png","public\/assets\/addons\/epay\/images\/logo-wechat.png","public\/assets\/addons\/epay\/images\/logo-alipay.png","public\/assets\/addons\/epay\/images\/screenshot-alipay.png","public\/assets\/addons\/epay\/images\/alipay.png","public\/assets\/addons\/epay\/images\/screenshot-wechat.png","public\/assets\/addons\/epay\/images\/wechat.png","public\/assets\/addons\/epay\/images\/scan.png","public\/assets\/addons\/epay\/images\/expired.png","public\/assets\/addons\/epay\/js\/jquery.qrcode.min.js","public\/assets\/addons\/epay\/js\/common.js"],"license":"regular","licenseto":"9671","licensekey":"AMxaXUIHu6qCBgkF 44KkzwR\/FHhXfpqWgbtM0Q==","domains":["thinkphp_fastadmin_tailored.test"],"licensecodes":[],"validations":["849901681e419b30a3ed3e4629b8f4ac"]}

+ 1 - 1
addons/epay/config.php

@@ -27,7 +27,7 @@ return [
             'key' => 'DRs2yi80exLRn6tI4cBhISMfj7SPYMQG',
             'key' => 'DRs2yi80exLRn6tI4cBhISMfj7SPYMQG',
             'key_v3' => 'vnQynXQo9kp5hh0pvlfjN03uiQZ222AS',
             'key_v3' => 'vnQynXQo9kp5hh0pvlfjN03uiQZ222AS',
             'public_key_id' => '',
             'public_key_id' => '',
-            'public_key' => '',
+            'public_key' => '/addons/epay/certs/public_key.pem',
             'cert_client' => '/addons/epay/certs/apiclient_cert.pem',
             'cert_client' => '/addons/epay/certs/apiclient_cert.pem',
             'cert_key' => '/addons/epay/certs/apiclient_key.pem',
             'cert_key' => '/addons/epay/certs/apiclient_key.pem',
             'mode' => 'normal',
             'mode' => 'normal',

+ 9 - 22
addons/epay/library/v3new/Yansongda/Pay/Shortcut/Wechat/PapayShortcut.php

@@ -68,18 +68,10 @@ class PapayShortcut implements ShortcutInterface
      */
      */
     protected function contractPlugins(array $params): array
     protected function contractPlugins(array $params): array
     {
     {
-        $type = $params['_type'] ?? 'default';
-        
-        switch ($type) {
-            case 'mini':
-                return [
-                    StartPlugin::class, 
-                    MiniOnlyContractPlugin::class, 
-                    AddPayloadSignaturePlugin::class
-                ];
-            default:
-                throw new InvalidParamsException(Exception::PARAMS_WECHAT_PAPAY_TYPE_NOT_SUPPORTED, '参数异常: 微信扣关服务纯签约,当前传递的 `_type` 类型不支持');
-        }
+        return match ($params['_type'] ?? 'default') {
+            'mini' => [StartPlugin::class, MiniOnlyContractPlugin::class, AddPayloadSignaturePlugin::class],
+            default => throw new InvalidParamsException(Exception::PARAMS_WECHAT_PAPAY_TYPE_NOT_SUPPORTED, '参数异常: 微信扣关服务纯签约,当前传递的 `_type` 类型不支持')
+        };
     }
     }
 
 
     protected function applyPlugins(): array
     protected function applyPlugins(): array
@@ -101,15 +93,10 @@ class PapayShortcut implements ShortcutInterface
      */
      */
     protected function getInvoke(array $params): string
     protected function getInvoke(array $params): string
     {
     {
-        $type = $params['_type'] ?? 'default';
-        
-        switch ($type) {
-            case 'app':
-                return AppInvokePlugin::class;
-            case 'mini':
-                return MiniInvokePlugin::class;
-            default:
-                throw new InvalidParamsException(Exception::PARAMS_WECHAT_PAPAY_TYPE_NOT_SUPPORTED, '参数异常: 微信扣关服务支付中签约,当前传递的 `_type` 类型不支持');
-        }
+        return match ($params['_type'] ?? 'default') {
+            'app' => AppInvokePlugin::class,
+            'mini' => MiniInvokePlugin::class,
+            default => throw new InvalidParamsException(Exception::PARAMS_WECHAT_PAPAY_TYPE_NOT_SUPPORTED, '参数异常: 微信扣关服务支付中签约,当前传递的 `_type` 类型不支持')
+        };
     }
     }
 }
 }