| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- <?php
- /**
- * 入口
- * @author wesmiler
- */
- namespace app\api\controller;
- use app\weixin\model\Fans;
- use app\weixin\model\Member;
- use app\weixin\model\Wechat;
- use app\weixin\service\PRedis;
- use cmf\controller\HomeBaseController;
- use think\Request;
- class BaseController extends HomeBaseController
- {
- public $userId = 0;
- public $needRegProfile = false;
- public $userInfo = [];
- public function __construct(Request $request = null)
- {
- parent::__construct($request);
- $this->userInfo = session('userInfo');
- $debug = config('weixin.debug');
- $field = 'id,openid,user_login,mobile,real_name,is_reg_profile,user_nickname,avatar,user_status';
- if (empty($this->userInfo) || $debug) {
- // 调试模式
- $curOpenId = session('openid');
- $openid = $curOpenId ? $curOpenId : config('weixin.openid');
- if($openid){
- $this->userInfo = Member::getInfo(['openid' => $openid, 'user_type'=> 2], $field);
- }
- $wxInfo = Fans::getInfo(['openid' => $openid]);
- session('openid', $openid);
- session('wxInfo', $wxInfo);
- session('userInfo', $this->userInfo);
- }
-
- $this->userId = isset($this->userInfo['id']) ? intval($this->userInfo['id']) : 0;
- if(empty($this->userId)){
- showJson(1007,2103,['url'=> Wechat::makeRedirectUrl(url('/weixin/match/index','','',true))]);
- }
- // $realname = isset($this->userInfo['real_name'])? $this->userInfo['real_name'] : '';
- $mobile = isset($this->userInfo['mobile'])? $this->userInfo['mobile'] : '';
- $isReg = isset($this->userInfo['is_reg_profile'])? $this->userInfo['is_reg_profile'] : 0;
- if(empty($mobile) || $isReg != 1){
- $this->needRegProfile = true;
- session('needRegProfile', true);
- }else{
- session('needRegProfile', false);
- }
- // $this->userId = 100002;
- }
- /**
- * 验证用户
- */
- public function checkUser(){
- $debug = config('weixin.debug');
- $memberInfo = Member::where(['id'=> $this->userId, 'user_type'=> 2])
- ->field('user_status,is_reg_profile')
- ->find();
- $needRegProfile = isset($memberInfo['is_reg_profile'])? intval($memberInfo['is_reg_profile']) : 0;
- $userStatus = isset($memberInfo['user_status'])? intval($memberInfo['user_status']) : 0;
- // 用户冻结
- if($userStatus != 1){
- showJson(1006, 2102, ['url' => url('/weixin/page/custom', '', '', true)]);
- }
- // 未完善资料
- if($needRegProfile != 1 && !$debug){
- $referer = request()->server('HTTP_REFERER');
- $rebackurl = $referer? $referer : url('/weixin/match/index','','',true);
- showJson(1006, 2132, ['url'=> Wechat::makeRedirectUrl(url('/weixin/index/entry?rebackurl='.$rebackurl,'','',true))]);
- }
- }
- }
- ?>
|