48 lines
1.2 KiB
PHP
48 lines
1.2 KiB
PHP
<?php
|
|
namespace app\service\wx;
|
|
|
|
use EasyWeChat\Factory;
|
|
use EasyWeChat\MiniProgram\Application;
|
|
use think\facade\Config;
|
|
|
|
/**
|
|
* 微信小程序
|
|
* Class WechatApplets
|
|
* @package app\service\wx
|
|
*/
|
|
class WechatApplets
|
|
{
|
|
private static $app = null;
|
|
|
|
/**
|
|
* TODO 正式上线时需要替换模板配置信息和相关小程序配置信息
|
|
*/
|
|
// 订阅消息模板:预约通知
|
|
public const SUBSCRIBE_TPL_APPOINTMENT = 'uvGd7RqaegheGU-uVxR-uM3y2MadZeMOHdQaNiiWm8U';
|
|
|
|
private function __construct()
|
|
{
|
|
}
|
|
|
|
private function __clone()
|
|
{
|
|
}
|
|
|
|
//微信小程序实例 单例模式
|
|
public static function getInstance(): ?Application
|
|
{
|
|
if (self::$app == null) {
|
|
Config::load('extra/wechat', 'wechat');
|
|
$conf = config('wechat');
|
|
$config = [
|
|
// 必要配置
|
|
'app_id' => $conf['applets_appId'],
|
|
'secret' => $conf['applets_appSecret'],
|
|
// 返回数据类型 array | xml
|
|
'response_type' => 'array',
|
|
];
|
|
self::$app = Factory::miniProgram($config);
|
|
}
|
|
return self::$app;
|
|
}
|
|
} |