think-queue消费者逻辑中引用第三方类错误

浏览:385 发布日期:2018/12/21 分类:ThinkPHP5专区 关键字: tp5.1 队列
执行返回[think\exception\ClassNotFoundException]                   
  class not exists: wechat.open_platform.wxb43ec10c87287cd5 
消费者类业务逻辑namespace app\home\queue;
use think\Exception;
use think\queue\Job;

use Naixiaoxin\ThinkWechat\Facade;
use app\home\model\Wechat;

class ReleaseCode{
    
    public function fire(Job $job, $data){
      $data = json_decode($data, true);
      //接收要处理的数据
      if($this->withMiniProgram($data['program'], $data['template'])){
        print ("<warn>任务执行成功,,已经删除!" . "</warn>\n");
        //如果任务执行成功后 记得删除任务,不然这个任务会重复执行,直到达到最大重试次数后失败后,执行failed方法
        $job->delete();
      }else{
        print ("<warn>任务执行成功,已经删除!0" .$job->attempts() . "</warn>\n");
        // 也可以重新发布这个任务
        $job->release(2); //$delay为延迟时间2秒后重发
      }
      //....这里执行具体的任务 
       if ($job->attempts() > 3) {
            //通过这个方法可以检查这个任务已经重试了几次了
            $job->delete();
       } 
    }
    
    public function failed($data){
    
        // ...任务达到最大重试次数后,失败了
    }
    //同步小程序基础信息
    public function withMiniProgram($program, $template)
    {
        $openPlatform = Facade::openPlatform($template['platform_appid']);
        $miniProgram = $openPlatform->miniProgram($program['authorizer_appid'], $program['refresh_token']);
        $code = $miniProgram->code;
        $category = $code->getCategory();
        $page = $code->getPage();
        
        $config = json_decode($program['config'], true);
        //获取已授权小程序设置的类目 get_category
        if((int)$category['errcode'] === 0){
            $config['category'] = $category['category_list'];
        }
        //获取小程序的第三方提交代码的页面配置 get_page
        if((int)$page['errcode'] === 0){
            $config['page'] =   $page['page_list'];
        }
        if(!Wechat::update(['id'=>$program['id'],'config'=>json_encode($config)])){
            //TODO  收集错误
            return false;
        }
        return true;
    }
}
求解

写在common.php里的公共函数不可以使用时怎么回事
最佳答案
评论( 相关
后面还有条评论,点击查看>>