diff --git a/catch/wechat/controller/Users.php b/catch/wechat/controller/Users.php index 6937aba..848276c 100644 --- a/catch/wechat/controller/Users.php +++ b/catch/wechat/controller/Users.php @@ -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() + { + + } } \ No newline at end of file diff --git a/catch/wechat/database/migrations/20200619124302_wechat_users.php b/catch/wechat/database/migrations/20200619124302_wechat_users.php index f5e8c2f..dd6cd4c 100644 --- a/catch/wechat/database/migrations/20200619124302_wechat_users.php +++ b/catch/wechat/database/migrations/20200619124302_wechat_users.php @@ -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)) diff --git a/catch/wechat/model/WechatUsers.php b/catch/wechat/model/WechatUsers.php new file mode 100644 index 0000000..9e361aa --- /dev/null +++ b/catch/wechat/model/WechatUsers.php @@ -0,0 +1,47 @@ +0 已删除 + ]; + +} \ No newline at end of file diff --git a/catch/wechat/model/search/UserSearchTrait.php b/catch/wechat/model/search/UserSearchTrait.php index 8c73fd6..908d4c6 100644 --- a/catch/wechat/model/search/UserSearchTrait.php +++ b/catch/wechat/model/search/UserSearchTrait.php @@ -7,4 +7,77 @@ * @author JaguarJack * @copyright By CatchAdmin * @license https://github.com/yanwenwu/catch-admin/blob/master/LICENSE.txt - */ \ No newline at end of file + */ +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')); + } +} \ No newline at end of file