wmssnstate.js 7.44 KB
let action = null;

layui.config({
    base: "/js/",
    version: 111
}).use(['system'], function () {
    var form = layui.form,
        $ = layui.jquery,
        system = layui.system,
        sysU = new system.u(),
        areaName = 'configure',
        tableName = 'SnProgress';

    action = {
        queryOptions: function () {
            var options = {
                resetFrom: "form[lay-filter=listForm]",
                fromId: "listForm",
                urlExport: `/${areaName}/${tableName}/Export`,
                urlQuery: `/${areaName}/${tableName}/Load`,
                mainTable: app.data.tableIns
            }
            return options;
        },
        queryBefore: (sysU, toolbarId, fromValueObj, callBack) => {
            debugger
            if (fromValueObj.start != "" && fromValueObj.end != "") {
                if (new Date(fromValueObj.start) >= new Date(fromValueObj.end)) {
                    layer.alert("开始时间不能大于等于结束时间", { icon: sysU.config.iconoError, shade: 0.4, time: sysU.config.errorTime });
                    return false;
                }
            }
            if (callBack != null) callBack();
        },

        //导出方法
        exportOptions: function () {
            var options = {
                fromId: "listForm",
                url: `/${areaName}/${controllerName}/Export`,
                isDefault: false,//false导出单表,true导出主明细表
                sendDataWhere: {},
                //后台接口返回数据也要保持一致 response.Result=new{ head=x,body=x、footer=x}
                excelCols: {
                    head: app.data.cols
                },
                ExcelExportFn: function (excelParm, result, toolbarId, callBackFn) {
                    debugger
                    result.Result.body.forEach(x => {
                        if (x.UserHandleTime == "0001-01-01 00:00:00") x.UserHandleTime = "";
                        x.errorduration = "".convertSecondsToTime(x.errorduration);
                        x.alarmMessage = x.alarmMessage + ";" + (x.remark == null ? "" : x.remark);

                        x.isHandled = x.isHandled ? "已处理" : "未处理";
                        x.isEnd = x.isEnd ? "已结束" : "未结束";
                    })
                    callBackFn(excelParm, result, toolbarId);
                }
            }
            return options;
        },

        //所有动作成功之后
        actionSuccess: (falg) => {
            sysU.refreshTable(app, sysU, null, falg);
        }
    }

    var app = {
        data: {
            cols: [[
                { type: 'numbers', title: '序号', width: 70, align: 'center', fixed: 'left' },  // 自动生成行号
                { field: 'sn', minWidth: 180, title: 'sn', fixed: 'left' },
                { field: 'registered', minWidth: 270, title: '注册状态信息', templet: function (d) {
                    var info = `<i class="layui-icon layui-timeline-axis layui-icon-ok-circle"></i><br/>
                                <span>创建人:${d.register_by},创建时间:${d.register_time}</span>`;
                    return info;
                    }
                },
                {
                    field: 'authorization', minWidth: 290, title: '授权状态信息', templet: function (d) {
                        if (d.authorization == null) return '<i class="layui-icon layui-timeline-axis layui-icon-close-fill layui-bg-gray"></i><br/>未授权';
                        var info = `<i class="layui-icon layui-timeline-axis layui-icon-ok-circle"></i><br/>
                                    <span>创建时间:${d.authorize_time},到期:${d.expiration_time}</span>`;
                        return info;
                    } },
                {
                    field: 'stockroom', minWidth: 260, title: '入库状态信息', templet: function (d) {
                        if (d.inbound_operator == "未入库") return '<i class="layui-icon layui-timeline-axis layui-icon-close-fill layui-bg-gray"></i><br/>未入库';
                        var info = `<i class="layui-icon layui-timeline-axis layui-icon-ok-circle"></i><br/>
                                    <span>入库人:${d.inbound_operator},入库时间:${d.inbound_time}</span>`;
                        return info;
                    }
},
                {
                    field: 'outbound', minWidth: 260, title: '出库状态信息', templet: function (d) {
                        if (d.outbound_operator == "未出库") return '<i class="layui-icon layui-timeline-axis layui-icon-close-fill layui-bg-gray"></i><br/>未绑定';
                        var info = `<i class="layui-icon layui-timeline-axis layui-icon-ok-circle"></i><br/>
                                    <span>出库人:${d.outbound_operator},出库时间:${d.outbound_time}</span>`;
                        return info;
                    }
},
                {
                    field: 'iot', minWidth: 270, title: '推送IOT状态信息', templet: function (d) {
                        if (d.last_push_time =="未推送") return '<i class="layui-icon layui-timeline-axis layui-icon-close-fill layui-bg-gray"></i><br/>未推送IOT';
                        var info = `<i class="layui-icon layui-timeline-axis layui-icon-ok-circle"></i><br/>
                                    <span>时间:${d.last_push_time},申请人:${d.last_push_userBy},项目号:${d.last_push_ordeCode}</span>`;
                        return info;
                    } },
                {
                    field: 'project', minWidth: 350, title: '绑定项目状态信息', templet: function (d) {
                        if (d.bind_time == '未绑定') return '<i class="layui-icon layui-timeline-axis layui-icon-close-fill layui-bg-gray"></i><br/>未绑定项目';
                        var info = `<i class="layui-icon layui-timeline-axis layui-icon-ok-circle"></i><br/>
                                    <span>时间:${d.bind_time},项目名称:${d.bind_project}</span>`;
                        return info;
                    } },
                {
                    field: 'errorInfo', minWidth: 180, title: '报警信息是否上传', templet: function (d) {
                        if (d.has_alarm == "否") return '<i class="layui-icon layui-timeline-axis layui-icon-close-fill layui-bg-gray"></i><br/>否';
                        var info = `<i class="layui-icon layui-timeline-axis layui-icon-ok-circle"></i><br/>
                                    <span></span>`;
                        return info;
                    }},
            ]],
            tableIns: null,
            tableElem: "mainList",
            selectOption: {
               
                //返回的数据 用于后续操作
                selectData: {

                }
            }
        },
        methods: {
            initTable: function () {
                let options = {
                    elem: "#" + app.data.tableElem,
                    url: `/${areaName}/${tableName}/Load`,
                    cols: sysU.columnRecord(app.data.tableElem, app.data.cols),
                    toolbar: '#toolbarTable',
                }
                app.data.tableIns = sysU.initTable(options);
            },
            initFrom: function () {
               
            }
        },
        registerEvent: function () {

        },
        init: function () {
            app.methods.initTable();
            app.methods.initFrom();
            app.registerEvent();
        }
    };
    app.init();
});