model = new \app\admin\model\Product; $this->view->assign("isShowList", $this->model->getIsShowList()); $this->view->assign("isRecommendList", $this->model->getIsRecommendList()); $this->view->assign("jxtypeList", $this->model->getJxtypeList()); } /** * 默认生成的控制器所继承的父类中有index/add/edit/del/multi五个基础方法、destroy/restore/recyclebin三个回收站方法 * 因此在当前控制器中可不用编写增删改查的代码,除非需要自己控制这部分逻辑 * 需要将application/admin/library/traits/Backend.php中对应的方法复制到当前控制器,然后进行修改 */ /** * 查看 */ public function index() { //当前是否为关联查询 $this->relationSearch = true; //设置过滤方法 $this->request->filter(['strip_tags', 'trim']); if ($this->request->isAjax()) { //如果发送的来源是Selectpage,则转发到Selectpage if ($this->request->request('keyField')) { return $this->selectpage(); } list($where, $sort, $order, $offset, $limit) = $this->buildparams(); $list = $this->model ->with(['procate','protag','productxieyi']) ->where($where) ->order($sort, $order) ->paginate($limit); foreach ($list as $row) { $row->getRelation('procate')->visible(['name']); $row->getRelation('protag')->visible(['name']); $row->getRelation('productxieyi')->visible(['name']); } $result = array("total" => $list->total(), "rows" => $list->items()); return json($result); } return $this->view->fetch(); } /** * 经销商码 */ public function jxqrcode(){ $id = input('id',0); $product = Db::name('product')->where('id',$id)->find(); $codeurl = $this->getMiniCode($product['id'],$product); $this->view->assign("codeurl", $codeurl.'?v='.time()); $this->view->assign("product", $product); return $this->view->fetch(); } //仅返回套餐二维码 //https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/qrcode-link/qr-code/getUnlimitedQRCode.html private function getMiniCode($id,$package = []) { $httpStr = $_SERVER['REQUEST_SCHEME'].'://'.$_SERVER['HTTP_HOST']; //if (empty($package) || empty($package['mini_code'])) { $wechat_config = config('wxMiniProgram'); $wechat = new Wechat($wechat_config['appid'],$wechat_config['secret']); $tk = $wechat->getPublicAccessToken(); $miniCodeConfig = config('mini_code'); $miniCodeConfig['scene'] = 'id='.$id; $res2 = curl_post('https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token='.$tk,json_encode($miniCodeConfig)); $fileName = md5($id); $fileUrl = '/uploads/product/'.$fileName.'.png'; $code = $res2; file_put_contents(ROOT_PATH.'/public'.$fileUrl,$code); $miniCode = $httpStr.$fileUrl; /*} else { $miniCode = $httpStr.$package['mini_code']; }*/ return $miniCode; } }