TestController.php 3.9 KB
<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2019/8/21
 * Time: 19:08
 */

namespace app\portal\controller;


use cmf\controller\HomeBaseController;
use EasyWeChat\Foundation\Application;
use think\Db;

class TestController extends HomeBaseController
{
    /**
     * 恢复父级id
     * @throws \think\Exception
     * @throws \think\db\exception\DataNotFoundException
     * @throws \think\db\exception\ModelNotFoundException
     * @throws \think\exception\DbException
     * @throws \think\exception\PDOException
     */
    public function test(){
        $indent_data = Db::query("select id,uid,money,indent_id,count(indent_id) count from `cmf_money_income` group by indent_id having count(indent_id) >= 4 order by indent_id desc");
        $a = [];
        foreach ($indent_data as $v) {
            if($v['count'] == 4) {
                $data = Db::name('money_income')->where('money','>',0)->where('indent_id',$v['indent_id'])->find();
                if($data) {
                    $data['nickname'] = Db::name('user')->where('id',$v['uid'])->value('user_nickname');
                    $a[] = $data;
                }
            }
        }
        print_r($a);exit;
//        $data = Db::name('my_user')->where(['status'=>3,'inviter_phone'=>['neq','']])->select()->toArray();
//        foreach($data as $key => $vo){
//            $result = Db::name('my_user')->where(['phone'=>$vo['inviter_phone']])->value('id');
//            if(!empty($result)){
//                Db::name('my_user')->where(['id'=>$vo['id']])->update(['pid'=>$result]);
//            }
//        }
    }

    public function index(){
        //生成带参二维码
        $savePath=ROOT_PATH.'public/upload/code_img/';
        if (!file_exists($savePath)){
            mkdir($savePath, 0777,true);
        }
        $code_img = $this->code_img(28,3);
        $code = file_get_contents($code_img);
        file_put_contents(ROOT_PATH."public/upload/code_img/code_img28.png",$code);
        echo cmf_get_image_url('code_img/code_img28.png');
    }
    /**
     * 生成带参二维码
     */
    public function code_img($admin_id,$status)
    {
        $options=config('wechat_config');
        $app = new Application($options);
        $accessToken = $app->access_token; // EasyWeChat\Core\AccessToken 实例
        $token = $accessToken->getToken(false);
        $url = 'https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=' . $token;
        $param = [
            'expire_seconds' => '',
            'action_name' => 'QR_LIMIT_STR_SCENE',
            'action_info' => ['scene' => ['scene_str' => "$admin_id"."-"."$status"]]
        ];
        $result = $this->api_notice_increment($url, json_encode($param));
        $data = json_decode($result, true);
        $ticket = urlencode($data['ticket']);
        $qr_url = 'https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=' . $ticket;
        return $qr_url;
    }

    /**
     * 获取二维码提交
     */
    public function api_notice_increment($url, $data)
    {
//        $data=json_encode($data);
        $ch = curl_init();
        $header = array("Accept-Charset: utf-8");
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
        curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $tmpInfo = curl_exec($ch);
        if (curl_errno($ch)) {
            curl_close($ch);
            return $ch;
        } else {
            curl_close($ch);
            return $tmpInfo;
        }
    }
}