mirror of
https://gitee.com/zoujingli/ThinkAdmin.git
synced 2025-04-06 03:58:04 +08:00
commit
337f11df16
@ -4,7 +4,7 @@
|
||||
<!--{notempty name='title'}-->
|
||||
<div class="layui-header notselect">
|
||||
<div class="pull-left"><span>{$title}</span></div>
|
||||
<div class="pull-right margin-right-15">{block name="button"}{/block}</div>
|
||||
<div class="pull-right margin-right-15 nowrap">{block name="button"}{/block}</div>
|
||||
</div>
|
||||
<!--{/notempty}-->
|
||||
<div class="layui-card-body">{block name='content'}{/block}</div>
|
||||
|
@ -46,9 +46,9 @@ class Block extends BasicAdmin
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$this->title = '微信粉丝黑名单管理';
|
||||
$this->title = '微信黑名单管理';
|
||||
$get = $this->request->get();
|
||||
$db = Db::name($this->table)->where(['is_black' => '1'])->order('subscribe_time desc');
|
||||
$db = Db::name($this->table)->where(['is_black' => '1']);
|
||||
(isset($get['sex']) && $get['sex'] !== '') && $db->where('sex', $get['sex']);
|
||||
foreach (['nickname', 'country', 'province', 'city'] as $key) {
|
||||
(isset($get[$key]) && $get[$key] !== '') && $db->whereLike($key, "%{$get[$key]}%");
|
||||
@ -56,11 +56,11 @@ class Block extends BasicAdmin
|
||||
if (isset($get['tag']) && $get['tag'] !== '') {
|
||||
$db->where("concat(',',tagid_list,',') like :tag", ['tag' => "%,{$get['tag']},%"]);
|
||||
}
|
||||
if (isset($get['date']) && $get['date'] !== '') {
|
||||
list($start, $end) = explode(' - ', $get['date']);
|
||||
if (isset($get['create_at']) && $get['create_at'] !== '') {
|
||||
list($start, $end) = explode(' - ', $get['create_at']);
|
||||
$db->whereBetween('subscribe_at', ["{$start} 00:00:00", "{$end} 23:59:59"]);
|
||||
}
|
||||
return parent::_list($db);
|
||||
return parent::_list($db->order('subscribe_time desc'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -44,14 +44,15 @@ class Config extends BasicAdmin
|
||||
{
|
||||
if ($this->request->isGet()) {
|
||||
$code = encode(url('@admin', '', true, true) . '#' . $this->request->url());
|
||||
return $this->fetch('', [
|
||||
$assign = [
|
||||
'title' => '微信接口配置',
|
||||
'appuri' => url("@wechat/api.push", '', true, true),
|
||||
'appid' => $this->request->get('appid', sysconf('wechat_appid')),
|
||||
'appkey' => $this->request->get('appkey', sysconf('wechat_appkey')),
|
||||
'authurl' => config('wechat.service_url') . "/wechat/api.push/auth/redirect/{$code}.html",
|
||||
'authurl' => "http://wm.cuci.cc/wechat/api.push/auth/{$code}.html",
|
||||
'wechat' => WechatService::instance('config')->getConfig(),
|
||||
]);
|
||||
];
|
||||
return $this->fetch('', $assign);
|
||||
}
|
||||
try {
|
||||
sysconf('wechat_appid', $this->request->post('wechat_appid'));
|
||||
|
@ -50,7 +50,7 @@ class Fans extends BasicAdmin
|
||||
{
|
||||
$this->title = '微信粉丝管理';
|
||||
$get = $this->request->get();
|
||||
$db = Db::name($this->table)->where(['is_black' => '0'])->order('subscribe_time desc');
|
||||
$db = Db::name($this->table)->where(['is_black' => '0']);
|
||||
(isset($get['sex']) && $get['sex'] !== '') && $db->where('sex', $get['sex']);
|
||||
foreach (['nickname', 'country', 'province', 'city'] as $key) {
|
||||
(isset($get[$key]) && $get[$key] !== '') && $db->whereLike($key, "%{$get[$key]}%");
|
||||
@ -58,11 +58,11 @@ class Fans extends BasicAdmin
|
||||
if (isset($get['tag']) && $get['tag'] !== '') {
|
||||
$db->where("concat(',',tagid_list,',') like :tag", ['tag' => "%,{$get['tag']},%"]);
|
||||
}
|
||||
if (isset($get['date']) && $get['date'] !== '') {
|
||||
list($start, $end) = explode(' - ', $get['date']);
|
||||
if (isset($get['create_at']) && $get['create_at'] !== '') {
|
||||
list($start, $end) = explode(' - ', $get['create_at']);
|
||||
$db->whereBetween('subscribe_at', ["{$start} 00:00:00", "{$end} 23:59:59"]);
|
||||
}
|
||||
return parent::_list($db);
|
||||
return parent::_list($db->order('subscribe_time desc'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -84,19 +84,6 @@ class Keys extends BasicAdmin
|
||||
return $this->_form($this->table, 'form');
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加数据处理
|
||||
* @param array $data
|
||||
*/
|
||||
protected function _add_form_filter(array $data)
|
||||
{
|
||||
if ($this->request->isPost() && isset($data['keys'])) {
|
||||
$db = Db::name($this->table)->where('keys', $data['keys']);
|
||||
!empty($data['id']) && $db->where('id', 'neq', $data['id']);
|
||||
$db->count() > 0 && $this->error('关键字已经存在,请使用其它关键字!');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑关键字
|
||||
* @return string
|
||||
@ -111,14 +98,6 @@ class Keys extends BasicAdmin
|
||||
return $this->_form($this->table, 'form');
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑数据处理
|
||||
* @param array $data
|
||||
*/
|
||||
protected function _edit_form_filter(array $data)
|
||||
{
|
||||
$this->_add_form_filter($data);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除关键字
|
||||
@ -170,23 +149,10 @@ class Keys extends BasicAdmin
|
||||
public function subscribe()
|
||||
{
|
||||
$this->assign('title', '编辑默认回复');
|
||||
return $this->_form($this->table, 'form');
|
||||
$extend = ['keys' => 'subscribe'];
|
||||
return $this->_form($this->table, 'form', 'keys', $extend, $extend);
|
||||
}
|
||||
|
||||
/**
|
||||
* 关注默认回复表单处理
|
||||
* @param array $data
|
||||
* @throws \think\db\exception\DataNotFoundException
|
||||
* @throws \think\db\exception\ModelNotFoundException
|
||||
* @throws \think\exception\DbException
|
||||
*/
|
||||
protected function _subscribe_form_filter(&$data)
|
||||
{
|
||||
if ($this->request->isGet()) {
|
||||
$data = Db::name($this->table)->where(['keys' => 'subscribe'])->find();
|
||||
}
|
||||
$data['keys'] = 'subscribe';
|
||||
}
|
||||
|
||||
/**
|
||||
* 无配置默认回复
|
||||
@ -199,22 +165,22 @@ class Keys extends BasicAdmin
|
||||
public function defaults()
|
||||
{
|
||||
$this->assign('title', '编辑无配置默认回复');
|
||||
return $this->_form($this->table, 'form');
|
||||
$extend = ['keys' => 'default'];
|
||||
return $this->_form($this->table, 'form', 'keys', $extend, $extend);
|
||||
}
|
||||
|
||||
/**
|
||||
* 无配置默认回复表单处理
|
||||
* 添加数据处理
|
||||
* @param array $data
|
||||
* @throws \think\db\exception\DataNotFoundException
|
||||
* @throws \think\db\exception\ModelNotFoundException
|
||||
* @throws \think\exception\DbException
|
||||
*/
|
||||
protected function _defaults_form_filter(&$data)
|
||||
protected function _form_filter(array &$data)
|
||||
{
|
||||
if ($this->request->isGet()) {
|
||||
$data = Db::name($this->table)->where(['keys' => 'default'])->find();
|
||||
if ($this->request->isPost() && isset($data['keys'])) {
|
||||
$db = Db::name($this->table)->where('keys', $data['keys']);
|
||||
!empty($data['id']) && $db->where('id', 'neq', $data['id']);
|
||||
$data['content'] = htmlspecialchars_decode($data['content']);
|
||||
$db->count() > 0 && $this->error('关键字已经存在,请使用其它关键字!');
|
||||
}
|
||||
$data['keys'] = 'default';
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -172,8 +172,9 @@ class News extends BasicAdmin
|
||||
foreach ($data as &$vo) {
|
||||
$vo['create_by'] = session('user.id');
|
||||
$vo['create_at'] = date('Y-m-d H:i:s');
|
||||
$vo['content'] = htmlspecialchars_decode($vo['content']);
|
||||
if (empty($vo['digest'])) {
|
||||
$vo['digest'] = mb_substr(strip_tags(str_replace(["\s", ' '], '', htmlspecialchars_decode($vo['content']))), 0, 120);
|
||||
$vo['digest'] = mb_substr(strip_tags(str_replace(["\s", ' '], '', $vo['content'])), 0, 120);
|
||||
}
|
||||
if (empty($vo['id'])) {
|
||||
$result = $id = Db::name('WechatNewsArticle')->insertGetId($vo);
|
||||
|
@ -35,7 +35,7 @@ class Review extends Controller
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$content = str_replace("\n", "<br>", $this->request->get('content', '')); // 内容
|
||||
$content = str_replace("\n", "<br>", $this->request->get('content', '', 'urldecode')); // 内容
|
||||
$type = $this->request->get('type', 'text'); // 类型
|
||||
// 图文处理
|
||||
if ($type === 'news' && is_numeric($content) && !empty($content)) {
|
||||
|
@ -207,6 +207,7 @@ class Push
|
||||
protected function sendMessage($type, $data)
|
||||
{
|
||||
$msgData = ['touser' => $this->openid, 'msgtype' => $type, "{$type}" => $data];
|
||||
p($msgData);
|
||||
return WechatService::custom()->send($msgData);
|
||||
}
|
||||
|
||||
|
@ -43,7 +43,6 @@ class MediaService
|
||||
foreach ($articles as $article) {
|
||||
if (intval($article['id']) === intval($article_id)) {
|
||||
unset($article['create_by'], $article['create_at']);
|
||||
$article['content'] = htmlspecialchars_decode($article['content']);
|
||||
$data['articles'][] = $article;
|
||||
}
|
||||
}
|
||||
|
@ -7,7 +7,7 @@
|
||||
<!--{/if}-->
|
||||
|
||||
<!--{if auth('wechat/fans/sync')}-->
|
||||
<button data-load="{:url('wechat/fans/sync')}" class='layui-btn layui-btn-sm'>获取远程粉丝列表</button>
|
||||
<button data-load="{:url('wechat/fans/sync')}" class='layui-btn layui-btn-sm'>远程获取粉丝</button>
|
||||
<!--{/if}-->
|
||||
|
||||
{/block}
|
||||
@ -79,7 +79,7 @@
|
||||
<div class="layui-form-item layui-inline">
|
||||
<label class="layui-form-label">时 间</label>
|
||||
<div class="layui-input-inline">
|
||||
<input name="date" id='range-date' value="{$Think.get.date|default=''}" placeholder="关注时间" class="layui-input">
|
||||
<input name="create_at" id='create_at' value="{$Think.get.create_at|default=''}" placeholder="关注时间" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -151,7 +151,7 @@
|
||||
{block name="script"}
|
||||
<!--表单初始化-->
|
||||
<script>
|
||||
window.laydate.render({range: true, elem: '#range-date'});
|
||||
window.laydate.render({range: true, elem: '#create_at'});
|
||||
window.form.render();
|
||||
</script>
|
||||
<!--引入标签设置-->
|
||||
|
@ -7,7 +7,7 @@
|
||||
<div class="row">
|
||||
<div class="col-sm-2"></div>
|
||||
<div class="col-sm-10 padding-bottom-20">
|
||||
<div class="pull-left padding-right-15">
|
||||
<div class="pull-left padding-right-15 notselect">
|
||||
<img data-tips-image src="{$wechat.qrcode_url|local_image}" style="width:160px;margin-left:-15px">
|
||||
</div>
|
||||
<div class="pull-left padding-15 padding-left-0">
|
||||
|
@ -7,7 +7,7 @@
|
||||
<!--{/if}-->
|
||||
|
||||
<!--{if auth("$classuri/sync")}-->
|
||||
<button data-load="{:url('sync')}" class='layui-btn layui-btn-sm'>获取远程粉丝列表</button>
|
||||
<button data-load="{:url('sync')}" class='layui-btn layui-btn-sm'>远程获取粉丝</button>
|
||||
<!--{/if}-->
|
||||
|
||||
{/block}
|
||||
@ -79,7 +79,7 @@
|
||||
<div class="layui-form-item layui-inline">
|
||||
<label class="layui-form-label">时 间</label>
|
||||
<div class="layui-input-inline">
|
||||
<input name="date" id='range-date' value="{$Think.get.date|default=''}" placeholder="关注时间" class="layui-input">
|
||||
<input name="create_at" id='create_at' value="{$Think.get.create_at|default=''}" placeholder="关注时间" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -151,7 +151,7 @@
|
||||
{block name="script"}
|
||||
<!--表单初始化-->
|
||||
<script>
|
||||
window.laydate.render({range: true, elem: '#range-date'});
|
||||
window.laydate.render({range: true, elem: '#create_at'});
|
||||
window.form.render();
|
||||
</script>
|
||||
|
||||
|
@ -100,7 +100,7 @@
|
||||
<div class="form-group" data-keys-type='text'>
|
||||
<label class="col-md-2 control-label layui-form-label label-required">规则内容</label>
|
||||
<div class="col-md-9">
|
||||
<textarea name="content" maxlength="10000" class="form-control">{$vo.content|default='说点什么吧'}</textarea>
|
||||
<textarea name="content" maxlength="10000" class="form-control">{$vo.content|default='说点什么吧'|raw}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -153,7 +153,7 @@
|
||||
<div class="form-group" data-keys-type='music'>
|
||||
<label class="col-md-2 control-label layui-form-label">音乐描述</label>
|
||||
<div class="col-md-9">
|
||||
<input name="music_desc" class="layui-input" value="{$vo.music_desc|default='音乐描述'}">
|
||||
<input name="music_desc" class="layui-input" value="{$vo.music_desc|default='音乐描述'|raw}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group" data-keys-type='music'>
|
||||
@ -187,7 +187,7 @@
|
||||
<div class="form-group" data-keys-type='video'>
|
||||
<label class="col-md-2 control-label layui-form-label">视频描述</label>
|
||||
<div class="col-md-9">
|
||||
<textarea name="video_desc" maxlength="50" class="form-control">{$vo.video_desc|default='视频描述'}</textarea>
|
||||
<textarea name="video_desc" maxlength="50" class="form-control">{$vo.video_desc|default='视频描述'|raw}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -34,7 +34,7 @@
|
||||
<div class="aui-chat-content bg-white">
|
||||
<div class="aui-chat-arrow one"></div>
|
||||
<div class="aui-chat-arrow two"></div>
|
||||
{$content|default=''}
|
||||
{$content|default=''|raw|htmlspecialchars_decode}
|
||||
</div>
|
||||
{elseif $type eq 'image'}
|
||||
<div class="aui-chat-content bg-white">
|
||||
|
@ -127,7 +127,8 @@ class BasicAdmin extends Controller
|
||||
for ($i = 1; $i <= $maxNum; $i++) {
|
||||
list($query['rows'], $query['page']) = [$rows, $i];
|
||||
$url = url('@admin') . '#' . $this->request->baseUrl() . '?' . http_build_query($query);
|
||||
$pageHTML[] = "<option data-url='{$url}' " . ($i === $page->currentPage() ? 'selected' : '') . " value='{$i}'>{$i}</option>";
|
||||
$selected = $i === intval($page->currentPage()) ? 'selected' : '';
|
||||
$pageHTML[] = "<option data-url='{$url}' {$selected} value='{$i}'>{$i}</option>";
|
||||
}
|
||||
list($pattern, $replacement) = [['|href="(.*?)"|', '|pagination|'], ['data-open="$1"', 'pagination pull-right']];
|
||||
$html = "<span class='pagination-trigger nowrap'>共 {$totalNum} 条记录,每页显示 <select data-auto-none>" . join('', $rowsHTML) . "</select> 条,共 " . ceil($totalNum / $rows) . " 页当前显示第 <select>" . join('', $pageHTML) . "</select> 页。</span>";
|
||||
|
Loading…
x
Reference in New Issue
Block a user