<!DOCTYPE HTML> 
 | 
<html xmlns:th="http://www.thymeleaf.org"> 
 | 
<head> 
 | 
    <meta charset="utf-8"> 
 | 
    <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 
 | 
    <meta name="renderer" content="webkit|ie-comp|ie-stand"> 
 | 
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
 | 
    <meta name="viewport" 
 | 
          content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"/> 
 | 
    <meta http-equiv="Cache-Control" content="no-siteapp"/> 
 | 
    <!-- 本框架基本脚本和样式 --> 
 | 
    <script type="text/javascript" 
 | 
            th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script> 
 | 
    <script type="text/javascript" th:src="@{/js/systools/MBase.js}"></script> 
 | 
    <title>异步任务管理</title> 
 | 
</head> 
 | 
<body class=" container-fluid"> 
 | 
<div class="pd-10"> 
 | 
    <!-- 搜索框部分start --> 
 | 
    <div class="row form-head"> 
 | 
        <div class="col-md-4 col-xs-12"> 
 | 
            <button onclick="myGrid.delItems('jdId')" type="button" 
 | 
                    class="btn btn-danger btn-sm"> 
 | 
                <i class="fa fa-trash"></i>批量删除 
 | 
            </button> 
 | 
            <button onclick="openAdd()" type="button" 
 | 
                    class="btn btn-success btn-sm"> 
 | 
                <i class="fa fa-plus"></i> 新增 
 | 
            </button> 
 | 
        </div> 
 | 
        <!-- 搜索框部分start --> 
 | 
        <div class="col-md-8 col-xs-12"> 
 | 
            <div class="row"> 
 | 
                <div class="col-md-11 col-xs-12" style="text-align: right"> 
 | 
                    <form class="form-inline" id="serchform"> 
 | 
                        <div class="input-group"> 
 | 
                            <div class="form-group mr-20"> 
 | 
                                <select class="form-control " name="table"> 
 | 
                                    <option value="async_task">执行中任务</option> 
 | 
                                    <option value="async_task_error">失败任务</option> 
 | 
                                    <option value="async_task_success">成功任务</option> 
 | 
                                </select> 
 | 
                            </div> 
 | 
                            <div class="form-group mr-20"> 
 | 
                                <input autocomplete="off"   id="search-text" name="taskType" placeholder="输入异步任务类型" 
 | 
                                       type="text" class="form-control"> 
 | 
                            </div> 
 | 
                            <div class="form-group mr-20"> 
 | 
                                <div class="input-group"> 
 | 
                                    <div class="input-group-addon">创建日期</div> 
 | 
                                    <input autocomplete="off"   name="beginTime" type="text" 
 | 
                                           class="form-control datetimepicker" id="beginTime"> 
 | 
                                    <div class="input-group-addon">-</div> 
 | 
                                    <input autocomplete="off"   name="endTime" type="text" class="form-control datetimepicker" 
 | 
                                           id="endTime"> 
 | 
                                </div> 
 | 
                            </div> 
 | 
                            <div class="form-group mr-20"> 
 | 
                                <button onclick="myGrid.serchData()" type="button" 
 | 
                                        class="btn btn-info"> 
 | 
                                    <i class="fa fa-search "></i> 搜索 
 | 
                                </button> 
 | 
                                <button type="reset" class="btn btn-info "> 
 | 
                                    <i class="fa fa-refresh "></i> 重置 
 | 
                                </button> 
 | 
                            </div> 
 | 
                        </div> 
 | 
                    </form> 
 | 
                </div> 
 | 
            </div> 
 | 
        </div> 
 | 
    </div> 
 | 
    <!-- 搜索框部分en --> 
 | 
    <div class="row"> 
 | 
        <table id="mgrid"> 
 | 
            <thead> 
 | 
            <tr> 
 | 
                <th data-checkbox="true"></th> 
 | 
                <th data-formatter="MGrid.indexfn" data-align="center" 
 | 
                    data-width="30px">序号 
 | 
                </th> 
 | 
                <th data-field="pkgId" data-sortable="true">异步包主键</th> 
 | 
                <th data-field="batchNo" data-sortable="true">批次号</th> 
 | 
                <th data-field="taskType" data-sortable="true">任务类型</th> 
 | 
                <th data-field="status" data-formatter="status">状态</th> 
 | 
                <th data-field="retryTimes">重试次数</th> 
 | 
                <th data-field="processedBy">处理任务的主机名称</th> 
 | 
                <th data-field="createTime" data-formatter="MGrid.getTime">创建时间</th> 
 | 
                <th data-field="initTime" data-formatter="MGrid.getTime"> 
 | 
                    任务初始化时间 
 | 
                </th> 
 | 
                <th data-field="enqueueTime" data-formatter="MGrid.getTime">入队时间</th> 
 | 
                <th data-field="dequeueTime" data-formatter="MGrid.getTime"> 
 | 
                    出队时间 
 | 
                </th> 
 | 
                <th data-field="startTime" data-formatter="MGrid.getTime">开始时间</th> 
 | 
                <th data-field="finishTime" data-formatter="MGrid.getTime"> 
 | 
                    完成时间 
 | 
                </th> 
 | 
                <th data-align="center" data-width="150px" data-field="id" 
 | 
                    data-formatter="buidOperate">操作 
 | 
                </th> 
 | 
            </tr> 
 | 
            </thead> 
 | 
        </table> 
 | 
    </div> 
 | 
</div> 
 | 
  
 | 
<script type="text/javascript" th:src="@{/js/systools/MJsBase.js}"></script> 
 | 
<script type="text/javascript"> 
 | 
  
 | 
  
 | 
    function status(value, row, index) { 
 | 
        if (value == "0") { 
 | 
            return "待处理"; 
 | 
        } else if (value == "1") { 
 | 
            return "处理中"; 
 | 
        } else if (value == "2") { 
 | 
            return "成功"; 
 | 
        } else if (value == "3") { 
 | 
            return "失败"; 
 | 
        } else if (value == "4") { 
 | 
            return "异常"; 
 | 
        } 
 | 
    } 
 | 
  
 | 
    var myGrid; 
 | 
  
 | 
  
 | 
    $(function () { 
 | 
        console.log(1); 
 | 
        myGrid = MGrid.initGrid({ 
 | 
            url: basePath + "/developer/async/showList", 
 | 
            detailView: true, 
 | 
            onExpandRow: function (index, row, $detail) { 
 | 
                var cur = $detail.html('<div class=" box"></div>'); 
 | 
                var html = []; 
 | 
                var i = 0; 
 | 
                for (var obj in row.taskData) { 
 | 
                    html[i] = '<p>' + obj + ' : ' + row.taskData[obj] + '</p>' 
 | 
                    i++; 
 | 
                } 
 | 
                cur.append(html.join("")); 
 | 
            }, 
 | 
        }); 
 | 
  
 | 
        var _initParam = { 
 | 
            format: 'yyyy-mm-dd hh:ii', 
 | 
            todayBtn: true, 
 | 
            autoclose: true, 
 | 
            startView: 2, 
 | 
            maxView: 3, 
 | 
            minView: 0 
 | 
        }; 
 | 
        MTools.ininDatetimepicker(_initParam); 
 | 
        //限制结束时间不小于开始时间 
 | 
        var initParam = { 
 | 
            format: 'yyyy-mm-dd hh:ii', 
 | 
            todayBtn: true, 
 | 
            autoclose: true, 
 | 
            startView: 2, 
 | 
            maxView: 3, 
 | 
            minView: 0 
 | 
        }; 
 | 
        MTools.limitStartEndTime(initParam); 
 | 
  
 | 
    }); 
 | 
  
 | 
    function buidOperate(value, row, index) { 
 | 
        var html = []; 
 | 
        html[0] = '<a onClick="del(\'' + value + '\', \'' + row.pkgId + '\')"  title="删除" class="fa fa-trash option"></a>' 
 | 
        return html.join(""); 
 | 
    } 
 | 
  
 | 
    function del(id, pkgId) { 
 | 
        console.log(pkgId); 
 | 
        MTools.handleItem(basePath + "/developer/async/del/" + id + "/" + pkgId, "确认要删除该任务吗?", function () { 
 | 
            myGrid.serchData(); 
 | 
        }) 
 | 
    } 
 | 
  
 | 
    //打开添加界面 
 | 
    function openAdd() { 
 | 
        layer.open({ 
 | 
            type: 2, 
 | 
            title: "添加异步任务", 
 | 
            maxmin: true, 
 | 
            area: [MUI.SIZE_L, '500px'], 
 | 
            content: [basePath + '/developer/redirect/async/async-form'] 
 | 
        }); 
 | 
    } 
 | 
</script> 
 | 
</body> 
 | 
</html> 
 |