config = $config; $this->noticeSwitch = $noticeSwitch; $this->switchLog = $switchLog; } /** * 记录日志 * @param string $message * @param array $content * @author 等风来 * @email 136327134@qq.com * @date 2023/9/20 */ protected function log(string $message, array $content = []) { $this->switchLog && Log::error($message, $content); } /** * 执行任务 * @param callable $callable * @param array $params * @return false * @author 等风来 * @email 136327134@qq.com * @date 2023/9/20 */ protected function handle(callable $callable, array $params = []) { try { if ($this->noticeSwitch) { return $callable(...$params); } else { return false; } } catch (\Throwable $e) { $this->log($e->getMessage(), [ 'file' => $e->getFile(), 'line' => $e->getLine() ]); return false; } } /** * 根据UID,user_type获取openid * @param int $uid * @param string $userType * @return mixed */ public function getOpenidByUid(int $uid, string $userType = 'wechat') { /** @var WechatUserServices $wechatServices */ $wechatServices = app()->make(WechatUserServices::class); return $wechatServices->uidToOpenid($uid, $userType); } }