作者 潘浩文
1 个管道 的构建 通过 耗费 1 秒

后台报警与信息模块开发

<?php
// +----------------------------------------------------------------------
// | bronet [ 以客户为中心 以奋斗者为本 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2013-2017 http://www.bronet.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author:kane < chengjin005@163.com>
// +----------------------------------------------------------------------
namespace app\portal\controller;
use cmf\controller\AdminBaseController;
use think\Db;
/**
* Class AdminMessageController
* @package app\portal\controller
* @adminMenuRoot(
* 'name' =>'系统消息',
* 'action' =>'default',
* 'parent' =>'',
* 'display'=> true,
* 'order' => 30,
* 'icon' =>'th',
* 'remark' =>'系统消息'
* )
*/
class AdminMessageController extends AdminBaseController
{
/**
* 系统消息
* @adminMenu(
* 'name' => '系统消息',
* 'parent' => 'portal/AdminMessage/default',
* 'display'=> true,
* 'hasView'=> true,
* 'order' => 10000,
* 'icon' => '',
* 'remark' => '系统消息',
* 'param' => ''
* )
*/
public function index()
{
//数据提取
$data=Db::name('warning')
->alias('w')
->join('light l','w.light_id=l.id')
->join('temple t','l.temple_id=t.id')
->join('temple_area ta','l.area_id=ta.id')
->field('w.*,l.row,l.column,l.address,l.temple_id,l.number,t.name as tname ,ta.name as taname,w.status as wstatus')
->order('w.create_time','desc')
->paginate(10);
//向地址传参
$this->assign('page',$data->render());
$this->assign('list', $data);
return $this->fetch();
}
public function index2()
{
$data=Db::name('message_category')->select();
$this->assign('list',$data);
return $this->fetch();
}
/**
* 删除系统消息
* @adminMenu(
* 'name' => '删除系统消息',
* 'parent' => 'index',
* 'display'=> false,
* 'hasView'=> false,
* 'order' => 10000,
* 'icon' => '',
* 'remark' => '删除系统消息',
* 'param' => ''
* )
*/
public function delete()
{
$param=$this->request->param();
if (!empty($param['ids'])){
Db::name('message')->where(['id' => ['in', $param['ids']]])->delete();
$this->success('删除成功');
}
Db::name('message')->where('id', $param['id'])->delete();
$this->success('删除成功');
}
}
... ...
... ... @@ -50,6 +50,7 @@ class AdminWarningController extends AdminBaseController
->join('temple t','l.temple_id=t.id')
->join('temple_area ta','l.area_id=ta.id')
->field('w.*,l.row,l.column,l.address,l.temple_id,l.number,t.name as tname ,ta.name as taname,w.status as wstatus')
->order('w.create_time','desc')
->paginate(10);
//向地址传参
$this->assign('page',$data->render());
... ...
<include file="public@header"/>
</head>
<body>
<div class="wrap js-check-wrap">
<ul class="nav nav-tabs">
<li class="active"><a href="javascript:;">系统消息</a></li>
<li class="active"> <a href="javascript:parent.openIframeLayer('{:url('AdminMessage/index2',array('id'=>$vo['id']))}','创建消息');">创建消息</a></li>
</ul>
<form method="post" class="js-ajax-form margin-top-20">
<div class="table-actions">
<!--
<notempty name="category">
<button class="btn btn-primary btn-sm js-articles-move" type="button">批量移动</button>
</notempty>
<button class="btn btn-primary btn-sm js-articles-copy" type="button">批量复制</button>
-->
<button class="btn btn-danger btn-sm js-ajax-submit" type="submit"
data-action="{:url('AdminWarning/delete')}" data-subcheck="true" data-msg="您确定删除吗?">
{:lang('DELETE')}
</button>
</div>
<table class="table table-hover table-bordered table-list">
<thead>
<tr>
<th width="15">
<label>
<input type="checkbox" class="js-check-all" data-direction="x" data-checklist="js-check-x">
</label>
</th>
<th width="50">ID</th>
<th>消息类型</th>
<th>消息标题</th>
<th>消息内容</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<foreach name="list" item="vo">
<tr>
<td>
<input type="checkbox" class="js-check" data-yid="js-check-y" data-xid="js-check-x" name="ids[]"
value="{$vo.id}" title="ID:{$vo.id}">
</td>
<td>{$vo.id}</td>
<td>{$vo.category}</td>
<td>{$vo.title}</td>
<td>{$vo.content}</td>
<td>
<a href="{:url('AdminWarning/delete',array('id'=>$vo['id']))}">
{:lang('DELETE')}
</a>
</td>
</tr>
</foreach>
</tbody>
<tfoot>
<tr>
<th width="15"><label><input type="checkbox" class="js-check-all" data-direction="x"
data-checklist="js-check-x"></label></th>
<th width="50">ID</th>
<th>消息类型</th>
<th>消息标题</th>
<th>消息内容</th>
<th>操作</th>
</tr>
</tfoot>
</table>
<div class="table-actions">
<!--<button type="submit" class="btn btn-primary btn-sm js-ajax-submit">{:lang('SORT')}</button>-->
<button class="btn btn-danger btn-sm js-ajax-submit" type="submit"
data-action="{:url('AdminWarning/delete')}" data-subcheck="true" data-msg="您确定删除吗?">
{:lang('DELETE')}
</button>
</div>
</form>
<ul class="pagination">{$page|default=''}</ul>
</div>
<script src="__STATIC__/js/admin.js">
$(function () {
setCookie("refersh_time", 0);
Wind.use('ajaxForm', 'artDialog', 'iframeTools', function () {
//批量复制
$('.js-articles-copy').click(function (e) {
var ids = [];
$("input[name='ids[]']").each(function () {
if ($(this).is(':checked')) {
ids.push($(this).val());
}
});
if (ids.length == 0) {
art.dialog.through({
id: 'error',
icon: 'error',
content: '您没有勾选信息,无法进行操作!',
cancelVal: '关闭',
cancel: true
});
return false;
}
ids = ids.join(',');
art.dialog.open("__ROOT__/index.php?g=portal&m=AdminArticle&a=copy&ids=" + ids, {
title: "批量复制",
width: "300px"
});
});
//批量移动
$('.js-articles-move').click(function (e) {
var ids = [];
$("input[name='ids[]']").each(function () {
if ($(this).is(':checked')) {
ids.push($(this).val());
}
});
if (ids.length == 0) {
art.dialog.through({
id: 'error',
icon: 'error',
content: '您没有勾选信息,无法进行操作!',
cancelVal: '关闭',
cancel: true
});
return false;
}
ids = ids.join(',');
art.dialog.open("__ROOT__/index.php?g=portal&m=AdminArticle&a=move&old_term_id={$term.term_id|default=0}&ids=" + ids, {
title: "批量移动",
width: "300px"
});
});
});
});
</script>
</body>
</html>
\ No newline at end of file
... ...
<include file="public@header"/>
</head>
<body>
<div class="wrap js-check-wrap">
<ul class="nav nav-tabs">
<li class="active"><a href="javascript:;">创建消息</a></li>
</ul>
<form method="post" class="js-ajax-form margin-top-20">
<table class="table table-hover table-bordered table-list">
<thead>
<tr>
<th width="50">ID</th>
<th>消息类型</th>
<th>消息标题</th>
<th>消息内容</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<foreach name="list" item="vo">
<tr>
<td>{$vo.id}</td>
<td>
<switch name="vo.category_id">
<case value="1">订单消息</case>
<case value="2">续费消息</case>
<case value="3">到期消息</case>
</switch>
</td>
<td>{$vo.title}</td>
<td>{$vo.content}</td>
<td>{$vo.tname}</td>
<td>
<a href="{:url('AdminMesaage/edit',array('id'=>$vo['id']))}">
编辑
</a>
</td>
</tr>
</foreach>
</tbody>
<tfoot>
<th width="50">ID</th>
<th>消息类型</th>
<th>消息标题</th>
<th>消息内容</th>
<th>操作</th>
</tfoot>
</table>
<div class="table-actions">
<!--<button type="submit" class="btn btn-primary btn-sm js-ajax-submit">{:lang('SORT')}</button>-->
<button class="btn btn-danger btn-sm js-ajax-submit" type="submit"
data-action="{:url('AdminWarning/delete')}" data-subcheck="true" data-msg="您确定删除吗?">
{:lang('DELETE')}
</button>
</div>
</form>
<ul class="pagination">{$page|default=''}</ul>
</div>
<script src="__STATIC__/js/admin.js">
$(function () {
setCookie("refersh_time", 0);
Wind.use('ajaxForm', 'artDialog', 'iframeTools', function () {
//批量复制
$('.js-articles-copy').click(function (e) {
var ids = [];
$("input[name='ids[]']").each(function () {
if ($(this).is(':checked')) {
ids.push($(this).val());
}
});
if (ids.length == 0) {
art.dialog.through({
id: 'error',
icon: 'error',
content: '您没有勾选信息,无法进行操作!',
cancelVal: '关闭',
cancel: true
});
return false;
}
ids = ids.join(',');
art.dialog.open("__ROOT__/index.php?g=portal&m=AdminArticle&a=copy&ids=" + ids, {
title: "批量复制",
width: "300px"
});
});
//批量移动
$('.js-articles-move').click(function (e) {
var ids = [];
$("input[name='ids[]']").each(function () {
if ($(this).is(':checked')) {
ids.push($(this).val());
}
});
if (ids.length == 0) {
art.dialog.through({
id: 'error',
icon: 'error',
content: '您没有勾选信息,无法进行操作!',
cancelVal: '关闭',
cancel: true
});
return false;
}
ids = ids.join(',');
art.dialog.open("__ROOT__/index.php?g=portal&m=AdminArticle&a=move&old_term_id={$term.term_id|default=0}&ids=" + ids, {
title: "批量移动",
width: "300px"
});
});
});
});
</script>
</body>
</html>
\ No newline at end of file
... ...