#
luxiaotao1123
2022-02-26 d7b1c94688aed6c5757c0b9b33e45e9120b3501c
src/main/webapp/static/js/issue/issue.js
@@ -1,48 +1,56 @@
var pageCurr;
var tableData;
var insTb2;
layui.config({
    base: baseUrl + "/static/layui/lay/modules/"
}).use(['table','laydate', 'form', 'admin'], function(){
}).extend({
    dropdown: 'dropdown/dropdown',
    notice: 'notice/notice',
}).use(['table','laydate', 'form', 'util', 'admin', 'dropdown', 'notice', 'treeTable', 'xmSelect'], function(){
    var table = layui.table;
    var $ = layui.jquery;
    var layer = layui.layer;
    var layDate = layui.laydate;
    var form = layui.form;
    var admin = layui.admin;
    var util = layui.util;
    var notice = layui.notice;
    var treeTable = layui.treeTable;
    var xmSelect = layui.xmSelect;
    // 数据渲染
    tableIns = table.render({
        elem: '#issue',
    insTb2 = table.render({
        elem: '#issueTable',
        headers: {token: localStorage.getItem('token')},
        url: baseUrl+'/issue/list/auth',
        page: true,
        limit: 16,
        limits: [16, 30, 50, 100, 200, 500],
        toolbar: '#toolbar',
        cellMinWidth: 50,
        limit: 15,
        limits: [15, 30, 50, 100, 200, 500],
        toolbar: '#issueToolbar',
        height: 'full-100',
        cols: [[
            {type: 'checkbox'}
            ,{field: 'id', align: 'center',title: 'ID'}
            ,{field: 'uuid', align: 'center',title: '故障编号'}
            ,{field: 'hostId$', align: 'center',title: '所属项目'}
            ,{field: 'issueType$', align: 'center',title: '故障类型'}
            ,{field: 'hostId$', align: 'center',title: '所属项目', templet: '#hostTpl', width: 130}
            ,{field: 'uuid', align: 'center',title: '故障编号', width: 180}
            ,{field: 'issueType$', align: 'center',title: '故障类型', templet: '#issueTypeTpl', width: 110}
            ,{field: 'title', align: 'center',title: '问题概述'}
            ,{field: 'reason', align: 'center',title: '故障原因'}
            ,{field: 'deal', align: 'center',title: '解决办法'}
            ,{field: 'files', align: 'center',title: '文件列表'}
            ,{field: 'img', align: 'center',title: '图片'}
            ,{field: 'startTime$', align: 'center',title: '发生日期'}
            ,{field: 'endTime$', align: 'center',title: '处理日期'}
            ,{field: 'lastTime$', align: 'center',title: '更新日期'}
            ,{field: 'discoverer', align: 'center',title: '发现人'}
            ,{field: 'tel', align: 'center',title: '联系方式'}
            ,{field: 'dealer', align: 'center',title: '供应商'}
            ,{field: 'settle$', align: 'center',title: '流程'}
            ,{field: 'status$', align: 'center',title: '状态'}
            ,{field: 'createBy$', align: 'center',title: '添加人员'}
            ,{field: 'createTime$', align: 'center',title: '添加时间'}
            ,{field: 'updateBy$', align: 'center',title: '修改人员'}
            ,{field: 'updateTime$', align: 'center',title: '修改时间'}
            ,{field: 'memo', align: 'center',title: '备注'}
            ,{field: 'reason', align: 'center',title: '故障原因', hide: true}
            ,{field: 'deal', align: 'center',title: '解决办法', hide: true}
            ,{field: 'files', align: 'center',title: '文件列表', hide: true}
            ,{field: 'img', align: 'center',title: '图片', hide: true}
            ,{field: 'startTime$', align: 'center',title: '发生日期', width: 120}
            ,{field: 'endTime$', align: 'center',title: '处理日期', hide: true}
            ,{field: 'lastTime$', align: 'center',title: '更新日期', hide: true}
            ,{field: 'discoverer', align: 'center',title: '发现人', hide: true}
            ,{field: 'tel', align: 'center',title: '联系方式', hide: true}
            ,{field: 'dealer', align: 'center',title: '供应商', hide: true}
            ,{field: 'settle$', align: 'center',title: '流程', templet: '#settleTpl', width: 110}
            ,{field: 'status$', align: 'center',title: '状态', hide: true}
            ,{field: 'createBy$', align: 'center',title: '添加人员', hide: true}
            ,{field: 'createTime$', align: 'center',title: '添加时间', hide: true}
            ,{field: 'updateBy$', align: 'center',title: '修改人员', hide: true}
            ,{field: 'updateTime$', align: 'center',title: '修改时间', hide: true}
            ,{field: 'memo', align: 'center',title: '备注', hide: true}
            ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:150}
        ]],
@@ -66,32 +74,15 @@
                top.location.href = baseUrl+"/";
            }
            pageCurr=curr;
            limit();
            // limit();
        }
    });
    // 监听排序事件
    table.on('sort(issue)', 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}
        });
    });
    // 监听头工具栏事件
    table.on('toolbar(issue)', function (obj) {
    table.on('toolbar(issueTable)', function (obj) {
        var checkStatus = table.checkStatus(obj.config.id).data;
        switch(obj.event) {
            case 'addData':
                showEditModel();
                break;
            case 'deleteData':
            case 'del':
               if (checkStatus.length === 0) {
                   layer.msg('请选择要删除的数据', {icon: 2});
                   return;
@@ -101,49 +92,11 @@
               });
               del(ids);
               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 = {
                        'issue': exportData,
                        'fields': fields
                    };
                    $.ajax({
                        url: baseUrl+"/issue/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, {icon: 2})
                            }
                        }
                    });
                });
                break;
        }
    });
    // 监听行工具事件
    table.on('tool(issue)', function(obj){
    table.on('tool(issueTable)', function(obj){
        var data = obj.data;
        switch (obj.event) {
            case 'edit':
@@ -211,7 +164,7 @@
                    layer.close(loadIndex);
                    if (res.code === 200){
                        layer.msg(res.msg, {icon: 1});
                        tableReload();
                        $(".layui-laypage-btn")[0].click();
                    } else if (res.code === 403){
                        top.location.href = baseUrl+"/";
                    } else {