新增定时任务查看

master
chenzhi 4 years ago
parent df3b3ad4f8
commit 4efab5c479

@ -1440,6 +1440,73 @@ class ToolController extends ThinkController {
}
}
}
public function cmdTasksList()
{
$params = I('get.');
$page = $params['p'] ? intval($params['p']) : 1;
$row = $params['row'] ? intval($params['row']) : 10;
$status = [
'0'=>"待处理",
'1'=>"处理中",
'2'=>'处理成功',
'3'=>'处理失败'
];
$where = [
"_string"=>"1 = 1"
];
if(isset($params['status'])){
$where['c.status'] = $params['status'];
}
if(isset($params['type'])){
$where['c.type'] = $params['type'];
}
$records = M("cmd_tasks","tab_")->alias("c")->join("sys_member m on c.uid = m.uid","left")
->field("c.*,ifnull(m.nickname,'system') admin_username")
->page($page,$row)
->where($where)
->order("id desc")
->select();
foreach ($records as $k => &$v) {
$v['params'] = str_replace(' 2>&1','',stristr($v['params'],"php "));
$v['status_str'] = $status[$v['status']];
if($v['schedule_time'] == 0){
$v['schedule_time'] = "立即执行";
}else{
$v['schedule_time'] = date("Y-m-d H:i:s", $v['schedule_time']);
}
if($v['start_time'] == 0){
$v['start_time'] = "--";
}else{
$v['start_time'] = date("Y-m-d H:i:s", $v['start_time']);
}
if($v['end_time'] == 0){
$v['end_time'] = "--";
}else{
$v['end_time'] = date("Y-m-d H:i:s", $v['end_time']);
}
$v['created_time'] = date("Y-m-d H:i:s", $v['created_time']);
}
$this->assign('records', $records);
$count = M("cmd_tasks","tab_")->alias("c")->where($where)->count();
// dd($count);
$params['p'] = $page;
$params['row'] = $row;
$page = set_pagination($count, $row, $params);
if ($page) {
$this->assign('_page', $page);
}
$this->display();
}
}

@ -0,0 +1,212 @@
<extend name="Public/base"/>
<block name="css">
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
<link rel="stylesheet" href="__CSS__/promote.css" type="text/css"/>
<link rel="stylesheet" type="text/css" href="__STATIC__/webuploader/webuploader.css" media="all">
<style>
.select2-container--default .select2-selection--single {
color: #000;
resize: none;
border-width: 1px;
border-style: solid;
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
height:28px;border-radius:3px;font-size:12px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
line-height:35px;
line-height:28px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
height:26px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
height:26px;line-height:26px;font-size:12px;
}
.select2-results__option[aria-selected] {font-size:12px;}
.textarea-style {
width: 200px;
height: 80px;
border-radius: 5px;
padding: 5px;
}
.mustmark {
color: #FF0000;
font-style: normal;
margin: 0 3px;
}
.el-card {
border-radius: 4px;
border: 1px solid #ebeef5;
background-color: #fff;
overflow: hidden;
color: #303133;
transition: .3s;
}
.el-card .card-body {
padding: 20px;
}
.el-card .card-header {
padding: 18px 20px;
border-bottom: 1px solid #ebeef5;
box-sizing: border-box;
}
.clearfix:after {
content:"";
display: block;
clear:both;
}
.set-default-btn {
border: none;
background: #3C95C8;
font-size: 14px;
font-weight: normal;
color: #fff;
cursor: pointer;
border-radius: 3px;
display: inline-block;
text-align: center;
border-bottom: none;
width: 55px;
height: 28px;
line-height: 26px;
}
</style>
</block>
<block name="body">
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
<script type="text/javascript" src="__JS__/select2.min.js"></script>
<script type="text/javascript" src="__JS__/jquery.form.js"></script>
<script type="text/javascript" src="__STATIC__/uploadify/jquery.uploadify.min.js"></script>
<script src="__STATIC__/md5.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript" src="__STATIC__/webuploader/webuploader.js"></script>
<script src="__STATIC__/layer/layer.js" type="text/javascript"></script>
<script type="text/javascript" src="__STATIC__/layer/extend/layer.ext.js"></script>
<div class="cf clearfix main-place top_nav_list navtab_list">
<h3 class="page_title">定时任务查看</h3>
</div>
<div class="cf clearfix top_nav_list">
<!-- 高级搜索 -->
<div class="jssearch fl cf search_list">
<div class="input-list search-title-box">
<label>搜索:</label>
</div>
<div class="input-list">
<input style="width: 200px;" type="text" name="type" class="search-input" value="{:I('type')}" placeholder="请输入类型">&nbsp;
</div>
<div class="input-list input-list-promote search_label_rehab">
<select id="status" name="status" class="select_gallery" style="width:150px;">
<option value="">状态</option>
<option value="0">待处理</option>
<option value="1">处理中</option>
<option value="2">处理成功</option>
<option value="3">处理失败</option>
</select>
</div>
<div class="input-list">
<a class="sch-btn" href="javascript:;" id="search" url="{:U('cmdTasksList')}">搜索</a>
<!-- <a class="sch-btn" style="width: 80px;" href="{:U('PaymentMerchant/add')}">新增商户</a> -->
</div>
</div>
</div>
<!-- 数据列表 -->
<div class="data_list">
<div class="">
<table>
<!-- 表头 -->
<thead>
<tr>
<th>id</th>
<th>类型</th>
<th style="width: 300px;">命令</th>
<th>添加用户</th>
<th>状态</th>
<th>结果</th>
<th>创建时间</th>
<th>预定时间</th>
<th>开始时间</th>
<th>结束时间</th>
</tr>
</thead>
<!-- 列表 -->
<tbody>
<empty name ="records">
<td colspan="9" class="text-center">aOh! 暂时还没有内容!</td>
<else />
<volist name="records" id="data">
<tr data-id="<?=$data['id']?>">
<td>{$data.id}</td>
<td>{$data.type}</td>
<td >{$data.params}</td>
<td>{$data.admin_username}</td>
<td>{$data.status_str}</td>
<td style="width: 100px;height: 30px;">{$data.result}</td>
<td>{$data.created_time}</td>
<td>{$data.schedule_time}</td>
<td>{$data.start_time}</td>
<td>{$data.end_time}</td>
</tr>
</volist>
</empty>
</tbody>
</table>
</div>
</div>
<div class="page">
<if condition="$role_export_check eq true ">
<!-- <a class="sch-btn export-btn"
href="{:U(CONTROLLER_NAME.'/'.ACTION_NAME,array_merge(['export'=>1],I('get.')))}" target="_blank">导出</a> -->
</if>
{$_page|default=''}
</div>
</block>
<block name="script">
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
<php>if(C('COLOR_STYLE')=='blue_color') echo '<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';</php>
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>
<script src="__STATIC__/layer/layer.js" type="text/javascript"></script>
<script type="text/javascript" src="__STATIC__/layer/extend/layer.ext.js" ></script>
<script src="__STATIC__/jquery.cookie.js" charset="utf-8"></script>
<script>
<volist name=":I('get.')" id="vo">
Think.setValue('{$key}',"{$vo}");
</volist>
$(".select_gallery").select2();
</script>
<script type="text/javascript">
//导航高亮
highlight_subnav("{:U('cmdTasksList')}");
$(function(){
//搜索功能
$("#search").click(function(){
var url = $(this).attr('url');
var query = $('.jssearch').find('input').serialize();
query += "&"+$('.jssearch').find('select').serialize();
query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g,'');
query = query.replace(/^&/g,'');
if( url.indexOf('?')>0 ){
url += '&' + query;
}else{
url += '?' + query;
}
window.location.href = url;
});
//回车自动提交
$('.jssearch').find('input').keyup(function(event){
if(event.keyCode===13){
$("#search").click();
}
})
});
</script>
</block>
Loading…
Cancel
Save