SysInterfaceLog.js 5.18 KB
let action = null;

layui.config({
    base: "/js/",
    version: 33
}).use(['system'], function () {
    var form = layui.form,
        $ = layui.jquery,
        system = layui.system,
        table = layui.table,
        u = new system.u(),
        element = layui.element,
        areaName = 'Log',
        tableName = 'Logs';

    action = {
        queryOptions: function () {
            var options = {
                resetFrom: "form[lay-filter=listForm]",
                fromId: "listForm",
                urlQuery: `/${areaName}/${tableName}/LoadSysInterLog`,
                sendDataWhere: { responseNo200:"httpNo200"},
                mainTable: app.data.tableIns


            }
            return options;
        },
        queryOptionsDesc: function () {
            var options = {
                resetFrom: "form[lay-filter=listFormDesc]",
                fromId: "listFormDesc",
                urlQuery: `/${areaName}/${tableName}/LoadSysInterLog`,
                mainTable: app.data.tableInsDesc,
                sendDataWhere: null,
                isAddWhereExtend: "arbitrarily"
            }
            return options;
        },
        //所有动作成功之后
        actionSuccess: (falg) => {
            u.refreshTable(app, u, null, falg);
        }
    }

    var app = {
        data: {
            cols: [
                [
                    { field: 'id', width: 80, hide: true, title: 'Id' },
                    { field: 'type', width: 180, title: '类型:接收/发送' },
                    { field: 'system', width: 120, hide: true, title: '系统' },
                    { field: 'path', width: 240, title: '路径' },
                    { field: 'method', width: 100, title: '方法' },
                    { field: 'request', width: 500,   title: '请求',   },
                    { field: 'response', width: 400, title: '响应' },
                    { field: 'totalMilliseconds', width: 100, title: '耗时(秒)' },
                    { field: 'logTime', width: 150, title: '日志时间' },
                    { field: 'actionName', width: 400, title: '调用方法' },
                    { field: 'server', width: 150, title: '服务器' },
                    { field: 'queryString', width: 150, title: '查询字符串' },
                    { field: 'apiGroup', width: 150, title: 'Api控制器' },
                    { field: 'name', width: 150, title: '用户名' },
                    { field: 'ip', width: 150, title: 'Ip地址' },
                    { field: 'browser', width: 150, title: '浏览器' },
                    { field: 'result', width: 150, title: '结果' },
                    { field: 'flag', width: 150, title: '重发标识' },
                    { field: 'createTime', width: 150, title: '创建时间' },
                    { field: 'createBy', width: 150, title: '创建用户' }
                ]
            ],
            tableIns: null,
            tableInsDesc: null,
            tableElem: "mainList",
            tableElemDesc: "mainListDesc",

            selectOption: {
                type: {
                    SelType: "key",
                    SelValue: "key",
                    SelFrom: "dataSource",
                    Dom: [$("select[name='type']")],
                    dataSource: window.top.EnumLog,
                },
                //返回的数据 用于后续操作
                selectData: {
                }
            }
        },
        methods: {
            initTable: function (opt) {
                var config = {};
                if (opt != undefined) $.extend(config, opt);
                let options = {
                    elem: "#" + app.data.tableElem,
                    url: `/${areaName}/${tableName}/LoadSysInterLog`,
                    cols: u.columnRecord(app.data.tableElem, app.data.cols),
                    toolbar: '#toolbarTable',
                    height: "full-56",
                    where: config,
                }
                app.data.tableIns = u.initTable(options);
            },
            initTableDesc: function (obj) {
                debugger
                let opt = {
                    elem: "#" + app.data.tableElemDesc,
                    url: `/${areaName}/${tableName}/LoadSysInterLog`,
                    cols: u.columnRecord(app.data.tableElem, app.data.cols),
                    toolbar: '#toolbarTableDesc',
                    height: "full-56"
                }
                app.data.tableInsDesc = u.initTable(opt);
            },
            initFrom: function () {
                debugger
                u.initSelecteByEnum(app.data.selectOption);

                u.tabClick("tableTabBody");
            }
        },
        registerEvent: function () {
            layer.msg("表格列【请求、响应】等文本展开后,可双击鼠标左键全选文本值!", { icon: u.config.iconoOk, shade: 0.4, time: u.config.msgOpenTime });
        },
        init: function () {
            var sendDataWhere = form.val("listForm")
            sendDataWhere["responseNo200"] = "httpNo200";
            app.methods.initTable(sendDataWhere);

            app.methods.initTableDesc();
            app.methods.initFrom();
            app.registerEvent();
        }
    };
    app.init();
});