auth->isLogin()){ $nickname = '用户'; // $avatar = file_get_contents(MODULE_URL.'/assets/img/avatar.png'); $userId = 0; }else{ $nickname = $this->auth->nickname; // $avatar = $this->auth->avatar; $userId = $this->auth->id; } $params = \app\common\library\share\Links::getShareParams($type,$src,$userId); $themes = input('themes',''); // if(strpos($avatar,"base64") !==false){ // if(\app\common\library\Platform::getSystemType() == 'single'){ // $avatar = file_get_contents(MODULE_URL.'/assets/img/avatar.png'); // }else{ // $avatar = file_get_contents(APP_PATH.'../public/assets/img/avatar.png'); // } // }else{ // try{ // $avatar = file_get_contents(cdnurl($avatar)); // }catch(\Exception $e){ // $avatar = file_get_contents(APP_PATH.'../public/assets/img/avatar.png'); // } // } $avatar = file_get_contents(MODULE_URL.'/assets/img/avatar.png'); try{ switch (\app\common\library\Platform::getPlatform()){ case 'wxMiniProgram': $data = \app\common\library\share\Links::getMpLink($type,$params); $qrCode = \app\common\library\share\Qrsharecode::mkMpCode($data['link'],$data['params']); break; case 'dyMiniProgram': $data = \app\common\library\share\Links::getMpLink($type,$params); $qrCode = \app\common\library\share\Qrsharecode::mkDouyinMpCode($data['link'],$data['params']); break; default: $link = \app\common\library\share\Links::getLink($type,$params); $qrCode = \app\common\library\share\Qrsharecode::mkQrcode($link); break; } }catch (\Exception $e){ $this->error("系统错误生成海报失败,请刷新重试"); } if(!$qrCode){ $this->error("生成海报失败,请刷新重试"); } $qrCode = base64_decode($qrCode); $data = \app\common\library\share\Poster::mkPoster($nickname,$avatar,$qrCode,$themes); if(!$data){ $this->error("生成海报失败,请刷新重试"); } $this->success("获取成功","data:image/png;base64,".$data); } /** * 获取分享图文 * @return void */ public function getArticle(){ $type = input('type',''); $src = input('src',''); if(!$src){ $type = 'page'; $src = 0; } if(!$this->auth->isLogin()){ $nickname = '用户'; $avatar = file_get_contents(MODULE_URL.'/assets/img/avatar.png'); $userId = 0; }else{ $nickname = $this->auth->nickname; $avatar = $this->auth->avatar; $userId = $this->auth->id; } $data = [ 'text'=>'', 'poster'=>[] ]; $params = \app\common\library\share\Links::getShareParams($type,$src,$userId); if($type == 'goods'){ $courseModel = new \app\common\model\goods\Course(); $goods = $courseModel->getDetail($src); if($goods){ $data['poster'] = [$goods['cover']]; } } $link = \app\common\library\share\Links::getLink($type,$params); $copywriting = $this->copywriting[rand(0,(count($this->copywriting) -1 ))]; $data['text'] = "【🎉推荐】{$copywriting}\n【🔗链接】{$link}"; $this->success("获取成功",$data); } public function getQrcode(){ $type = input('type',''); $platform = input('platform','h5'); $id = input('id',''); if(!$this->auth->isLogin()){ $userId = 0; }else{ $userId = $this->auth->id; } $params = \app\common\library\share\Links::getShareParams($type,$id,$userId,$platform == 'miniprogram' ? 'mp' : 'h5'); try{ if($platform == 'miniprogram'){ $data = \app\common\library\share\Links::getMpLink($type,$params); $qrCode = \app\common\library\share\Qrsharecode::mkMpCode($data['link'],$data['params']); }else{ $link = \app\common\library\share\Links::getLink($type,$params); $qrCode = \app\common\library\share\Qrsharecode::mkQrcode($link); } }catch (\Exception $e){ $this->error("生成二维码失败,请刷新重试"); } if(!$qrCode){ $this->error("生成二维码失败,请刷新重试"); } $this->success("获取成功","data:image/png;base64,".$qrCode); } }