Browse Source

OpenPlatform

develop
李可松 4 years ago
parent
commit
b479a5e6fe
  1. 35
      app/Admin/Extensions/Grid/MiniProgramReg.php
  2. 22
      app/Admin/Extensions/Grid/MiniProgramUpload.php

35
app/Admin/Extensions/Grid/MiniProgramReg.php

@ -5,6 +5,7 @@ use App\Models\AdminSetting;
use App\Models\Agent;
use App\Models\MiniProgramTemplate;
use App\Models\MiniProgramUploadLog;
use App\Service\OpenPlatform;
use Dcat\Admin\Grid\RowAction;
use EasyWeChat\Factory;
use EasyWeChat\OpenPlatform\Component\Client;
@ -44,19 +45,11 @@ class MiniProgramReg extends RowAction
{
$agent = Agent::find($this->getKey());
$setting = AdminSetting::val(['service_appid', 'service_appsecret', 'service_token', 'service_aeskey', 'service_component_phone']);
$config = [
'app_id' => $setting['service_appid'],
'secret' => $setting['service_appsecret'],
'token' => $setting['service_token'],
'aes_key' => $setting['service_aeskey'],
];
$openPlatform = Factory::openPlatform($config);
if (empty($openPlatform['component'])) {
return $this->response()->error('获取component失败,请检查配置信息是否正确');
$openPlatform = new OpenPlatform();
$component = $openPlatform->component();
if (empty($component)) {
return $this->response()->error('获取component失败');
}
$component = $openPlatform['component'];
$res = $component->registerMiniProgram([
'name' => $agent->company_name, // 企业名
@ -64,7 +57,7 @@ class MiniProgramReg extends RowAction
'code_type' => 1, // 企业代码类型(1:统一社会信用代码, 2:组织机构代码,3:营业执照注册号)
'legal_persona_wechat' => $agent->legal_persona_wechat, // 法人微信
'legal_persona_name' => $agent->legal_persona_name, // 法人姓名
'component_phone' => $setting['service_component_phone'], //第三方联系电话
'component_phone' => AdminSetting::val('service_component_phone'), //第三方联系电话
]);
$errorArr = $this->regErrorCode();
@ -88,20 +81,12 @@ class MiniProgramReg extends RowAction
}
try {
$setting = AdminSetting::val(['service_appid', 'service_appsecret', 'service_token', 'service_aeskey']);
$config = [
'app_id' => $setting['service_appid'],
'secret' => $setting['service_appsecret'],
'token' => $setting['service_token'],
'aes_key' => $setting['service_aeskey'],
];
$openPlatform = Factory::openPlatform($config);
if (empty($openPlatform['component'])) {
$openPlatform = new OpenPlatform();
/** @var Client $component */
$component = $openPlatform->component();
if (empty($component)) {
return $this->response()->error('获取component失败,请检查配置信息是否正确');
}
/** @var Client $component */
$component = $openPlatform['component'];
$res = $component->getRegistrationStatus($agent->company_name, $agent->legal_persona_wechat, $agent->legal_persona_name);
$errorArr = $this->searchErrorCode();

22
app/Admin/Extensions/Grid/MiniProgramUpload.php

@ -5,6 +5,7 @@ use App\Models\AdminSetting;
use App\Models\Agent;
use App\Models\MiniProgramTemplate;
use App\Models\MiniProgramUploadLog;
use App\Service\OpenPlatform;
use Dcat\Admin\Grid\RowAction;
use EasyWeChat\Factory;
use EasyWeChat\OpenPlatform\Authorizer\MiniProgram\Code\Client;
@ -55,16 +56,8 @@ class MiniProgramUpload extends RowAction
}
try {
$setting = AdminSetting::val(['service_appid', 'service_appsecret', 'service_token', 'service_aeskey']);
$config = [
'app_id' => $setting['service_appid'],
'secret' => $setting['service_appsecret'],
'token' => $setting['service_token'],
'aes_key' => $setting['service_aeskey'],
];
$openPlatform = Factory::openPlatform($config);
$refreshToken = $openPlatform->getAuthorizer($agent->appid)['authorization_info']['authorizer_refresh_token'] ?? null;
$openPlatform = new OpenPlatform();
$refreshToken = $openPlatform->refreshToken($agent->appid);
if (!$refreshToken) {
return $this->response()->error('获取refresh_token失败');
}
@ -102,10 +95,6 @@ class MiniProgramUpload extends RowAction
//提交上传
$commit = $code->commit($templateId, $extJson, $version, $description);
//获取体验二维码并保存
$qrcode = $code->getQrCode(storage_path("app/public/{$agent->id}-{$agent->appid}.jpg"));
Storage::put("public/mini_program_qrcode/{$agent->id}-{$agent->appid}.jpg", $qrcode);
if (!isset($commit['errcode'], $commit['errmsg']) || $commit['errcode'] != 0 || $commit['errmsg'] != 'ok') {
throw new \Exception(isset($commit['errmsg']) ? $commit['errmsg'] : join(',', $commit));
}
@ -125,6 +114,11 @@ class MiniProgramUpload extends RowAction
'audit_id' => $res['auditid'],
'created_at' => now(),
]);
//获取体验二维码并保存
$qrcode = $code->getQrCode(storage_path("app/public/{$agent->id}-{$agent->appid}.jpg"));
Storage::put("public/mini_program_qrcode/{$agent->id}-{$agent->appid}.jpg", $qrcode);
return $this->response()->success("上传成功,并已提交审核")->refresh();
} else if (isset($audit_err_code[$res['errcode']])) {
throw new \Exception($audit_err_code[$res['errcode']]);

Loading…
Cancel
Save