<div class="layui-layout layui-layout-admin" style="padding-left: 20px;">
    <div class="layui-row" style="margin-top: 20px;">
        <div class="layui-col-xs6">
            <button class="layui-btn layui-btn-sm" data-type="tabAdd" id="add">新增</button>
        </div>
        <div class="layui-col-xs6 search_text">
            <form class="layui-form" action="" onsubmit="javascript:return false;">
                <div class="demoTable">
                    <div class="layui-inline" style="width: 40%">
                        <input class="layui-input" name="tplName" id="tplName" autocomplete="off" placeholder="模板名称">
                    </div>
                    <button class="layui-btn layui-btn-sm" data-type="reload">查询</button>
                </div>
            </form>

        </div>
    </div>

    <table class="layui-hide" id="table_list" lay-filter="table_filter">
    </table>

    <script type="text/html" id="bar">
        <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
        <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
    </script>
</div>
<script>

    layui.use(['table', 'form', 'element'], function () {
        var table = layui.table;
        var form = layui.form;
        var element = layui.element;
        var error_info = "{{.flash.error}}";
        if (error_info) {
            layer.msg(error_info, {icon: 2, shade: 0.3}, function () {
                window.history.go(-1)
            })
            return;
        }
        //方法级渲染
        table.render({
            elem: '#table_list'
            , url: '/notifytpl/table'
            ,size: 'sm' //小尺寸的表格
            , cols: [[
                {checkbox: true, fixed: true},
                {field: 'id', title: 'ID', align: 'center', sort: true, width: 150},
                {field: 'type', title: '类型'},
                {field: 'tpl_name', title: '模板名称'},
                {field: 'tpl_type_text', title: '模板类型'},
                {field: 'create_time', title: '创建时间'},
                {field: 'update_time', title: '更新时间'},
                {field: 'status_text', title: '状态', sort: true,},
                {fixed: 'right', width: 160, align: 'center', toolbar: '#bar'}
            ]]
            , id: 'listReload'
            , page: true
            , height: "full-130"
        });

        var $ = layui.$, active = {
            reload: function () {
                table.reload('listReload', {
                    where: {
                        tplName: $('#tplName').val(),
                    },
                    page: 1
                });
            }
        };

        $("#add").on("click", function () {
            window.parent.openTab("/notifytpl/add", '新增模板', "notify_tpl_add-0", 'fa-plus');
        })

        //监听工具条
        table.on('tool(table_filter)', function (obj) {
            var data = obj.data;
            var tplName = data.tpl_name
            if (obj.event === 'edit') {
                window.parent.openTab("/notifytpl/edit?id=" + data.id, tplName + '编辑', "notify_tpl_edit-" + data.id, 'fa-edit');
            } else if (obj.event === 'del') {
                layer.confirm('真的删除【' + data.tpl_name + '】模板么', function (index) {
                    var jsData = {'id': data.id}
                    $.post('{{urlfor "NotifyTplController.AjaxDel"}}', jsData, function (out) {
                        if (out.status == 0) {
                            layer.alert(out.message, {icon: 1}, function (index) {
                                layer.close(index);
                                window.location.reload();
                            });
                        } else {
                            layer.msg(out.message)
                        }
                    }, "json");
                    // obj.del();
                    layer.close(index);
                })
            } else {
                layer.msg('操作不存在');
            }
        });

        $('.demoTable .layui-btn').on('click', function () {
            var type = $(this).data('type');
            active[type] ? active[type].call(this) : '';
        });
    });

</script>