var pageCurr; 
 | 
layui.use(['table','laydate', 'form'], function(){ 
 | 
    var table = layui.table; 
 | 
    var $ = layui.jquery; 
 | 
    var layer = layui.layer; 
 | 
    var layDate = layui.laydate; 
 | 
    var form = layui.form; 
 | 
  
 | 
    $('#wrkNo').val(parent.wrkNo); 
 | 
    // 数据渲染 
 | 
    tableIns = table.render({ 
 | 
        elem: '#shuttleCommand', 
 | 
        headers: {token: localStorage.getItem('token')}, 
 | 
        url: baseUrl+'/basShuttle/command/list/auth', 
 | 
        where: {wrkNo: parent.wrkNo}, 
 | 
        page: true, 
 | 
        limit: 16, 
 | 
        limits: [16, 30, 50, 100, 200, 500], 
 | 
        even: true, 
 | 
        toolbar: '#toolbar', 
 | 
        cellMinWidth: 50, 
 | 
        cols: [[ 
 | 
            {field: 'commandWord', align: 'center',title: '命令类型', templet: function (row) { 
 | 
                    var html = row.request.body.requestType; 
 | 
                    return html; 
 | 
            }} 
 | 
            ,{field: 'start', align: 'center',title: '起点', templet: function (row) { 
 | 
                    var html = row.request.body.start; 
 | 
                    if (html === undefined) { 
 | 
                        html = "" 
 | 
                    } 
 | 
                    return JSON.stringify(html); 
 | 
            }} 
 | 
            ,{field: 'target', align: 'center',title: '终点', templet: function (row) { 
 | 
                    var html = row.request.body.target; 
 | 
                    if (html === undefined) { 
 | 
                        html = "" 
 | 
                    } 
 | 
                    return JSON.stringify(html); 
 | 
            }} 
 | 
            ,{field: 'taskId', align: 'center',title: 'taskId', templet: function (row) { 
 | 
                    var html = row.request.body.taskId; 
 | 
                    return html; 
 | 
            }} 
 | 
            ,{field: 'robotId', align: 'center',title: 'robotId', templet: function (row) { 
 | 
                    var html = row.robotId; 
 | 
                    return html; 
 | 
            }} 
 | 
            ,{field: 'complete', align: 'center',title: '是否完成', templet: function (row){ 
 | 
                    var html = "<input value='complete' type='checkbox' lay-skin='switch' lay-text='完成|未完成' lay-filter='completeSwitch' table-index='"+row.LAY_TABLE_INDEX+"'"; 
 | 
                    if(row.complete){html += " checked ";} 
 | 
                    html += ">"; 
 | 
                    return html; 
 | 
            }} 
 | 
            ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:150} 
 | 
        ]], 
 | 
        request: { 
 | 
            pageName: 'curr', 
 | 
            pageSize: 'limit' 
 | 
        }, 
 | 
        parseData: function (res) { 
 | 
            return { 
 | 
                'code': res.code, 
 | 
                'msg': res.msg, 
 | 
                'count': res.data.total, 
 | 
                'data': res.data.records 
 | 
            } 
 | 
        }, 
 | 
        response: { 
 | 
            statusCode: 200 
 | 
        }, 
 | 
        done: function(res, curr, count) { 
 | 
            var that = this.elem.next(); 
 | 
            if (res.code === 403) { 
 | 
                top.location.href = baseUrl+"/"; 
 | 
            } 
 | 
            pageCurr=curr; 
 | 
  
 | 
            res.data.forEach((item,idx) => { 
 | 
                if (idx == item.commandStep) { 
 | 
                    that.find(".layui-table-box tr[data-index='" + idx + "']").css("background-color", "#1E9FFF"); 
 | 
                } 
 | 
            }) 
 | 
        } 
 | 
    }); 
 | 
  
 | 
    // 监听排序事件 
 | 
    table.on('sort(shuttleCommand)', function (obj) { 
 | 
        var searchData = {}; 
 | 
        $.each($('#search-box [name]').serializeArray(), function() { 
 | 
            searchData[this.name] = this.value; 
 | 
        }); 
 | 
        searchData['orderByField'] = obj.field; 
 | 
        searchData['orderByType'] = obj.type; 
 | 
        tableIns.reload({ 
 | 
            where: searchData, 
 | 
            page: { 
 | 
                curr: 1 
 | 
            }, 
 | 
            done: function (res, curr, count) { 
 | 
                if (res.code === 403) { 
 | 
                    top.location.href = baseUrl+"/"; 
 | 
                } 
 | 
                pageCurr=curr; 
 | 
                limit(); 
 | 
            } 
 | 
        }); 
 | 
    }); 
 | 
  
 | 
    // 监听头工具栏事件 
 | 
    table.on('toolbar(shuttleCommand)', function (obj) { 
 | 
        var checkStatus = table.checkStatus(obj.config.id); 
 | 
        switch(obj.event) { 
 | 
            case 'addData': 
 | 
                layer.open({ 
 | 
                    type: 2, 
 | 
                    title: '新增', 
 | 
                    maxmin: true, 
 | 
                    area: ['500px', top.detailHeight], 
 | 
                    shadeClose: false, 
 | 
                    content: 'shuttleCommand_detail.html', 
 | 
                    success: function(layero, index){ 
 | 
                        layer.getChildFrame('#data-detail-submit-edit', index).hide(); 
 | 
                        clearFormVal(layer.getChildFrame('#detail', index)); 
 | 
                        layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); 
 | 
                    } 
 | 
                }); 
 | 
                break; 
 | 
            case 'refreshData': 
 | 
                tableIns.reload({ 
 | 
                    page: { 
 | 
                        curr: pageCurr 
 | 
                    } 
 | 
                }); 
 | 
                limit(); 
 | 
                break; 
 | 
            case 'deleteData': 
 | 
                var data = checkStatus.data; 
 | 
                if (data.length === 0){ 
 | 
                    layer.msg('请选择数据'); 
 | 
                } else { 
 | 
                    layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ 
 | 
                        $.ajax({ 
 | 
                            url: baseUrl+"/shuttleCommand/delete/auth", 
 | 
                            headers: {'token': localStorage.getItem('token')}, 
 | 
                            data: {param: JSON.stringify(data)}, 
 | 
                            method: 'POST', 
 | 
                            traditional:true, 
 | 
                            success: function (res) { 
 | 
                                if (res.code === 200){ 
 | 
                                    layer.closeAll(); 
 | 
                                    tableReload(false); 
 | 
                                } else if (res.code === 403){ 
 | 
                                    top.location.href = baseUrl+"/"; 
 | 
                                } else { 
 | 
                                    layer.msg(res.msg) 
 | 
                                } 
 | 
                            } 
 | 
                        }) 
 | 
                    }); 
 | 
                } 
 | 
                break; 
 | 
            case 'exportData': 
 | 
                layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ 
 | 
                    var titles=[]; 
 | 
                    var fields=[]; 
 | 
                    obj.config.cols[0].map(function (col) { 
 | 
                        if (col.type === 'normal' && col.hide === false && col.toolbar == null) { 
 | 
                            titles.push(col.title); 
 | 
                            fields.push(col.field); 
 | 
                        } 
 | 
                    }); 
 | 
                    var exportData = {}; 
 | 
                    $.each($('#search-box [name]').serializeArray(), function() { 
 | 
                        exportData[this.name] = this.value; 
 | 
                    }); 
 | 
                    var param = { 
 | 
                        'shuttleCommand': exportData, 
 | 
                        'fields': fields 
 | 
                    }; 
 | 
                    $.ajax({ 
 | 
                        url: baseUrl+"/shuttleCommand/export/auth", 
 | 
                        headers: {'token': localStorage.getItem('token')}, 
 | 
                        data: JSON.stringify(param), 
 | 
                        dataType:'json', 
 | 
                        contentType:'application/json;charset=UTF-8', 
 | 
                        method: 'POST', 
 | 
                        success: function (res) { 
 | 
                            layer.closeAll(); 
 | 
                            if (res.code === 200) { 
 | 
                                table.exportFile(titles,res.data,'xls'); 
 | 
                            } else if (res.code === 403) { 
 | 
                                top.location.href = baseUrl+"/"; 
 | 
                            } else { 
 | 
                                layer.msg(res.msg) 
 | 
                            } 
 | 
                        } 
 | 
                    }); 
 | 
                }); 
 | 
                break; 
 | 
        } 
 | 
    }); 
 | 
  
 | 
    // 监听行工具事件 
 | 
    table.on('tool(shuttleCommand)', function(obj){ 
 | 
        var data = obj.data; 
 | 
        //获取当前行的索引 
 | 
        var rowIndex = $(obj.tr).attr("data-index"); 
 | 
        switch (obj.event) { 
 | 
            // 回退命令 
 | 
            case 'rollback': 
 | 
                $.ajax({ 
 | 
                    url: baseUrl+"/basShuttle/command/rollback/auth", 
 | 
                    headers: {'token': localStorage.getItem('token')}, 
 | 
                    data: JSON.stringify({ 
 | 
                        wrkNo: parent.wrkNo, 
 | 
                        commandStep: rowIndex 
 | 
                    }), 
 | 
                    dataType:'json', 
 | 
                    contentType:'application/json;charset=UTF-8', 
 | 
                    method: 'POST', 
 | 
                    success: function (res) { 
 | 
                        layer.closeAll(); 
 | 
                        if (res.code === 200) { 
 | 
                            tableReload(); 
 | 
                            layer.msg(res.msg) 
 | 
                        } else if (res.code === 403) { 
 | 
                            top.location.href = baseUrl+"/"; 
 | 
                        } else { 
 | 
                            layer.msg(res.msg) 
 | 
                        } 
 | 
                    } 
 | 
                }); 
 | 
                break; 
 | 
  
 | 
        } 
 | 
    }); 
 | 
  
 | 
    // 修改状态 
 | 
    form.on('switch(completeSwitch)', function (obj) { 
 | 
        var index  = obj.othis.parents('tr').attr("data-index"); 
 | 
        $.ajax({ 
 | 
            url: baseUrl+"/basShuttle/command/completeSwitch/auth", 
 | 
            headers: {'token': localStorage.getItem('token')}, 
 | 
            data: JSON.stringify({ 
 | 
                wrkNo: parent.wrkNo, 
 | 
                commandStep: index, 
 | 
                complete: obj.elem.checked?1:0 
 | 
            }), 
 | 
            dataType:'json', 
 | 
            contentType:'application/json;charset=UTF-8', 
 | 
            method: 'POST', 
 | 
            success: function (res) { 
 | 
                layer.closeAll(); 
 | 
                if (res.code === 200) { 
 | 
                    tableReload(); 
 | 
                    layer.msg(res.msg) 
 | 
                } else if (res.code === 403) { 
 | 
                    top.location.href = baseUrl+"/"; 
 | 
                } else { 
 | 
                    layer.msg(res.msg) 
 | 
                } 
 | 
            } 
 | 
        }); 
 | 
    }) 
 | 
  
 | 
    // 数据保存动作 
 | 
    form.on('submit(save)', function () { 
 | 
        if (banMsg != null){ 
 | 
            layer.msg(banMsg); 
 | 
            return; 
 | 
        } 
 | 
        method("add"); 
 | 
    }); 
 | 
  
 | 
    // 数据修改动作 
 | 
    form.on('submit(edit)', function () { 
 | 
        method("update") 
 | 
    }); 
 | 
  
 | 
    function method(name){ 
 | 
        var index = layer.load(1, { 
 | 
            shade: [0.5,'#000'] //0.1透明度的背景 
 | 
        }); 
 | 
        var data = { 
 | 
//            id: $('#id').val(), 
 | 
            wrkSts: $('#wrkSts').val(), 
 | 
            wrkDesc: $('#wrkDesc').val(), 
 | 
            modiUser: $('#modiUser').val(), 
 | 
            modiTime: top.strToDate($('#modiTime\\$').val()), 
 | 
            appeUser: $('#appeUser').val(), 
 | 
            appeTime: top.strToDate($('#appeTime\\$').val()), 
 | 
  
 | 
        }; 
 | 
        $.ajax({ 
 | 
            url: baseUrl+"/shuttleCommand/"+name+"/auth", 
 | 
            headers: {'token': localStorage.getItem('token')}, 
 | 
            data: top.reObject(data), 
 | 
            method: 'POST', 
 | 
            success: function (res) { 
 | 
                if (res.code === 200){ 
 | 
                    parent.layer.closeAll(); 
 | 
                    tableReload(true); 
 | 
                    $("#data-detail :input").each(function () { 
 | 
                        $(this).val(""); 
 | 
                    }); 
 | 
                } else if (res.code === 403){ 
 | 
                    top.location.href = baseUrl+"/"; 
 | 
                }else { 
 | 
                    layer.msg(res.msg) 
 | 
                } 
 | 
                layer.close(index); 
 | 
            } 
 | 
        }) 
 | 
    } 
 | 
  
 | 
    // 搜索栏搜索事件 
 | 
    form.on('submit(search)', function (data) { 
 | 
        pageCurr = 1; 
 | 
        tableReload(false); 
 | 
    }); 
 | 
  
 | 
    // 搜索栏重置事件 
 | 
    form.on('submit(reset)', function (data) { 
 | 
        pageCurr = 1; 
 | 
        clearFormVal($('#search-box')); 
 | 
        tableReload(false); 
 | 
    }); 
 | 
  
 | 
    // 搜索栏重启任务 
 | 
    form.on('submit(restartCommand)', function (data) { 
 | 
        $.ajax({ 
 | 
            url: baseUrl+"/basShuttle/command/restart/auth", 
 | 
            headers: {'token': localStorage.getItem('token')}, 
 | 
            data: JSON.stringify({ 
 | 
                wrkNo: parent.wrkNo 
 | 
            }), 
 | 
            dataType:'json', 
 | 
            contentType:'application/json;charset=UTF-8', 
 | 
            method: 'POST', 
 | 
            success: function (res) { 
 | 
                layer.closeAll(); 
 | 
                if (res.code === 200) { 
 | 
                    tableReload(); 
 | 
                    layer.msg(res.msg) 
 | 
                } else if (res.code === 403) { 
 | 
                    top.location.href = baseUrl+"/"; 
 | 
                } else { 
 | 
                    layer.msg(res.msg) 
 | 
                } 
 | 
            } 
 | 
        }); 
 | 
    }); 
 | 
  
 | 
    // 搜索栏删除任务 
 | 
    form.on('submit(delCommand)', function (data) { 
 | 
        $.ajax({ 
 | 
            url: baseUrl+"/basShuttle/command/del/auth", 
 | 
            headers: {'token': localStorage.getItem('token')}, 
 | 
            data: JSON.stringify({ 
 | 
                wrkNo: parent.wrkNo 
 | 
            }), 
 | 
            dataType:'json', 
 | 
            contentType:'application/json;charset=UTF-8', 
 | 
            method: 'POST', 
 | 
            success: function (res) { 
 | 
                layer.closeAll(); 
 | 
                if (res.code === 200) { 
 | 
                    tableReload(); 
 | 
                    layer.msg(res.msg) 
 | 
                } else if (res.code === 403) { 
 | 
                    top.location.href = baseUrl+"/"; 
 | 
                } else { 
 | 
                    layer.msg(res.msg) 
 | 
                } 
 | 
            } 
 | 
        }); 
 | 
    }); 
 | 
  
 | 
    // 时间选择器 
 | 
    layDate.render({ 
 | 
        elem: '#modiTime\\$', 
 | 
        type: 'datetime' 
 | 
    }); 
 | 
    layDate.render({ 
 | 
        elem: '#appeTime\\$', 
 | 
        type: 'datetime' 
 | 
    }); 
 | 
  
 | 
  
 | 
}); 
 | 
  
 | 
// 关闭动作 
 | 
$(document).on('click','#data-detail-close', function () { 
 | 
    parent.layer.closeAll(); 
 | 
}); 
 | 
  
 | 
function tableReload(child) { 
 | 
    var searchData = {}; 
 | 
    $.each($('#search-box [name]').serializeArray(), function() { 
 | 
        searchData[this.name] = this.value; 
 | 
    }); 
 | 
    (child ? parent.tableIns : tableIns).reload({ 
 | 
        where: searchData, 
 | 
        page: { 
 | 
            curr: pageCurr 
 | 
        }, 
 | 
        done: function (res, curr, count) { 
 | 
            var that = this.elem.next(); 
 | 
            if (res.code === 403) { 
 | 
                top.location.href = baseUrl+"/"; 
 | 
            } 
 | 
            pageCurr=curr; 
 | 
            if (res.data.length === 0 && count !== 0) { 
 | 
                tableIns.reload({ 
 | 
                    where: searchData, 
 | 
                    page: { 
 | 
                        curr: pageCurr-1 
 | 
                    } 
 | 
                }); 
 | 
                pageCurr -= 1; 
 | 
            } 
 | 
            limit(child); 
 | 
  
 | 
            res.data.forEach((item,idx) => { 
 | 
                if (idx == item.commandStep) { 
 | 
                    that.find(".layui-table-box tr[data-index='" + idx + "']").css("background-color", "#1E9FFF"); 
 | 
                } 
 | 
            }) 
 | 
        } 
 | 
    }); 
 | 
} 
 | 
  
 | 
function setFormVal(el, data, showImg) { 
 | 
    for (var val in data) { 
 | 
        var find = el.find(":input[id='" + val + "']"); 
 | 
        find.val(data[val]); 
 | 
        if (showImg){ 
 | 
            var next = find.next(); 
 | 
            if (next.get(0)){ 
 | 
                if (next.get(0).localName === "img") { 
 | 
                    find.hide(); 
 | 
                    next.attr("src", data[val]); 
 | 
                    next.show(); 
 | 
                } 
 | 
            } 
 | 
        } 
 | 
    } 
 | 
} 
 | 
  
 | 
function clearFormVal(el) { 
 | 
    $(':input', el) 
 | 
        .val('') 
 | 
        .removeAttr('checked') 
 | 
        .removeAttr('selected'); 
 | 
} 
 | 
  
 | 
function detailScreen(index) { 
 | 
    var detail = layer.getChildFrame('#data-detail', index); 
 | 
    var height = detail.height()+60; 
 | 
    if (height > ($(window).height()*0.9)) { 
 | 
        height = ($(window).height()*0.9); 
 | 
    } 
 | 
    layer.style(index, { 
 | 
//        top: (($(window).height()-height)/3)+"px", 
 | 
        height: height+'px' 
 | 
    }); 
 | 
} 
 | 
  
 | 
$('body').keydown(function () { 
 | 
    if (event.keyCode === 13) { 
 | 
        $("#search").click(); 
 | 
    } 
 | 
}); 
 |