微信用户列表
This commit is contained in:
parent
cd8ff84f02
commit
448154f363
@ -10,40 +10,29 @@
|
||||
*/
|
||||
namespace catchAdmin\wechat\controller;
|
||||
|
||||
use catchAdmin\wechat\model\WechatUsers;
|
||||
use catcher\base\CatchController;
|
||||
use catcher\CatchResponse;
|
||||
use catcher\library\WeChat;
|
||||
use catcher\Utils;
|
||||
|
||||
class Users extends CatchController
|
||||
{
|
||||
protected $user;
|
||||
|
||||
public function __construct(WeChat $weChat)
|
||||
public function __construct(WechatUsers $users)
|
||||
{
|
||||
$this->user = $weChat->officialAccount()->user;
|
||||
$this->user = $users;
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表
|
||||
*
|
||||
* @time 2020年06月19日
|
||||
* @param null $nextOpenid
|
||||
* @return \think\response\Json
|
||||
*/
|
||||
public function index($nextOpenid = null)
|
||||
public function index()
|
||||
{
|
||||
$openIds = $this->user->list($nextOpenid);
|
||||
|
||||
if ($openIds['count']) {
|
||||
$users = $this->user->select($openIds['data']['openid']);
|
||||
|
||||
$openIds['users'] = $users;
|
||||
|
||||
return CatchResponse::success($openIds);
|
||||
}
|
||||
|
||||
return CatchResponse::success($openIds);
|
||||
return CatchResponse::paginate($this->user->getList());
|
||||
}
|
||||
|
||||
/**
|
||||
@ -94,4 +83,14 @@ class Users extends CatchController
|
||||
{
|
||||
return CatchResponse::success($this->user->unblock(Utils::stringToArrayBy($openId)));
|
||||
}
|
||||
|
||||
public function subscribe()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public function unsubscribe()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
@ -28,7 +28,7 @@ class WechatUsers extends Migrator
|
||||
*/
|
||||
public function change()
|
||||
{
|
||||
$table = $this->table('wechat_users',array('engine'=>'Innodb', 'comment' => ' 微信用户表', 'signed' => false));
|
||||
$table = $this->table('wechat_users',array('engine'=>'Innodb', 'collation' => 'utf8mb4_general_ci', 'comment' => ' 微信用户表', 'signed' => false));
|
||||
$table->addColumn('nickname', 'string',array('limit' => 30,'default'=>'','comment'=>'用户名'))
|
||||
->addColumn('avatar', 'string',array('limit' => 255,'comment'=>'用户头像'))
|
||||
->addColumn('openid', 'string',array('limit' => 35, 'comment'=>'openid'))
|
||||
@ -39,12 +39,11 @@ class WechatUsers extends Migrator
|
||||
->addColumn('subscribe', 'boolean',array('limit' => 1,'default'=> 1,'comment'=>'用户状态 0 取消订阅 1 订阅'))
|
||||
->addColumn('block', 'boolean',array('limit' => 1,'default'=> 1,'comment'=>'拉黑状态 1 正常 2 拉黑'))
|
||||
->addColumn('subscribe_time', 'integer',array('default'=>0,'comment'=>'订阅时间', 'signed' => false))
|
||||
->addColumn('subscribe_scene', 'string', ['limit' => 50, 'comment' => '订阅场景'])
|
||||
->addColumn('subscribe_scene', 'string', ['limit' => 50, 'comment' => '订阅场景 ADD_SCENE_SEARCH 公众号搜索,ADD_SCENE_ACCOUNT_MIGRATION 公众号迁移,ADD_SCENE_PROFILE_CARD 名片分享,ADD_SCENE_QR_CODE 扫描二维码,ADD_SCENE_PROFILE_LINK 图文页内名称点击,ADD_SCENE_PROFILE_ITEM 图文页右上角菜单,ADD_SCENE_PAID 支付后关注,ADD_SCENE_WECHAT_ADVERTISEMENT 微信广告,ADD_SCENE_OTHERS 其他'])
|
||||
->addColumn('unionid', 'string', ['limit' => 255, 'comment' => '用户平台唯一身份认证'])
|
||||
->addColumn('sex', 'boolean',array('limit' => 1,'default'=> 1,'comment'=>'用户状态 1 男 2 女 0 未知'))
|
||||
->addColumn('remark', 'string', ['limit' => 255, 'comment' => '备注'])
|
||||
->addColumn('groupid', 'integer', ['limit' => 0, 'comment' => '分组ID'])
|
||||
->addColumn('remark', 'string', ['limit' => 255, 'comment' => '备注'])
|
||||
->addColumn('tagid_list', 'string',['limit' => 50, 'default'=>0,'comment'=>'标签列表'])
|
||||
->addColumn('created_at', 'integer', array('default'=>0,'comment'=>'创建时间', 'signed' => false ))
|
||||
->addColumn('updated_at', 'integer', array('default'=>0,'comment'=>'更新时间', 'signed' => false))
|
||||
|
47
catch/wechat/model/WechatUsers.php
Normal file
47
catch/wechat/model/WechatUsers.php
Normal file
@ -0,0 +1,47 @@
|
||||
<?php
|
||||
// +----------------------------------------------------------------------
|
||||
// | CatchAdmin [Just Like ~ ]
|
||||
// +----------------------------------------------------------------------
|
||||
// | Copyright (c) 2017~2020 http://catchadmin.com All rights reserved.
|
||||
// +----------------------------------------------------------------------
|
||||
// | Licensed ( https://github.com/yanwenwu/catch-admin/blob/master/LICENSE.txt )
|
||||
// +----------------------------------------------------------------------
|
||||
// | Author: JaguarJack [ njphper@gmail.com ]
|
||||
// +----------------------------------------------------------------------
|
||||
|
||||
namespace catchAdmin\wechat\model;
|
||||
|
||||
use catchAdmin\wechat\model\search\UserSearchTrait;
|
||||
use catcher\base\CatchModel;
|
||||
use catcher\traits\db\BaseOptionsTrait;
|
||||
|
||||
class WechatUsers extends CatchModel
|
||||
{
|
||||
use UserSearchTrait;
|
||||
|
||||
protected $name = 'wechat_users';
|
||||
|
||||
protected $field = [
|
||||
'id', //
|
||||
'nickname', // 用户名
|
||||
'avatar', // 用户头像
|
||||
'openid', // openid
|
||||
'language', // 语言
|
||||
'country', // 国家
|
||||
'province', // 省份
|
||||
'city', // 城市
|
||||
'subscribe', // 用户状态 0 取消订阅 1 订阅
|
||||
'block', // 拉黑状态 1 正常 2 拉黑
|
||||
'subscribe_time', // 订阅时间
|
||||
'subscribe_scene', // 订阅场景 ADD_SCENE_SEARCH 公众号搜索,ADD_SCENE_ACCOUNT_MIGRATION 公众号迁移,ADD_SCENE_PROFILE_CARD 名片分享,ADD_SCENE_QR_CODE 扫描二维码,ADD_SCENE_PROFILE_LINK 图文页内名称点击,ADD_SCENE_PROFILE_ITEM 图文页右上角菜单,ADD_SCENE_PAID 支付后关注,ADD_SCENE_WECHAT_ADVERTISEMENT 微信广告,ADD_SCENE_OTHERS 其他
|
||||
'unionid', // 用户平台唯一身份认证
|
||||
'sex', // 用户状态 1 男 2 女 0 未知
|
||||
'remark', // 备注
|
||||
'groupid', // 分组ID
|
||||
'tagid_list', // 标签列表
|
||||
'created_at', // 创建时间
|
||||
'updated_at', // 更新时间
|
||||
'deleted_at', // 删除状态,0未删除 >0 已删除
|
||||
];
|
||||
|
||||
}
|
@ -8,3 +8,76 @@
|
||||
* @copyright By CatchAdmin
|
||||
* @license https://github.com/yanwenwu/catch-admin/blob/master/LICENSE.txt
|
||||
*/
|
||||
namespace catchAdmin\wechat\model\search;
|
||||
|
||||
trait UserSearchTrait
|
||||
{
|
||||
/**
|
||||
* 昵称搜索
|
||||
* @time 2020年06月21日
|
||||
* @param $query
|
||||
* @param $value
|
||||
* @param $data
|
||||
* @return mixed
|
||||
*/
|
||||
public function searchNicknameAttr($query, $value, $data)
|
||||
{
|
||||
return $query->whereLike('nickname', $value);
|
||||
}
|
||||
|
||||
/**
|
||||
* 拉黑
|
||||
*
|
||||
* @time 2020年06月21日
|
||||
* @param $query
|
||||
* @param $value
|
||||
* @param $data
|
||||
* @return mixed
|
||||
*/
|
||||
public function searchBlockAttr($query, $value, $data)
|
||||
{
|
||||
return $query->where('block', $value);
|
||||
}
|
||||
|
||||
/**
|
||||
* 订阅
|
||||
*
|
||||
* @time 2020年06月21日
|
||||
* @param $query
|
||||
* @param $value
|
||||
* @param $data
|
||||
* @return mixed
|
||||
*/
|
||||
public function searchSubscribeAttr($query, $value, $data)
|
||||
{
|
||||
return $query->where('subscribe', $value);
|
||||
}
|
||||
|
||||
/**
|
||||
* 订阅开始
|
||||
*
|
||||
* @time 2020年06月21日
|
||||
* @param $query
|
||||
* @param $value
|
||||
* @param $data
|
||||
* @return mixed
|
||||
*/
|
||||
public function searchStartAtAttr($query, $value, $data)
|
||||
{
|
||||
return $query->where('subscribe_time', '>=', strtotime($value . ' 00:00:00'));
|
||||
}
|
||||
|
||||
/**
|
||||
* 订阅结束
|
||||
*
|
||||
* @time 2020年06月21日
|
||||
* @param $query
|
||||
* @param $value
|
||||
* @param $data
|
||||
* @return mixed
|
||||
*/
|
||||
public function searchEndAtAttr($query, $value, $data)
|
||||
{
|
||||
return $query->where('subscribe_time', '<=', strtotime($value . ' 23:59:59'));
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user