<!--文件列表相关操作-->
//文件列表请求接口地址
var tableReqUrl = path+"/inHosp/getAssortdetail";
function initTable2() {
    // idArr = [];
    $("#table2").bootstrapTable({ // 对应table标签的id
        //method: 'POST',
        url: "", // 获取表格数据的url
        contentType: "application/x-www-form-urlencoded",//一种编码。好像在post请求的时候需要用到。这里用的get请求，注释掉这句话也能拿到数据
        //dataField: "data",//这是返回的json数组的key.默认是"rows".这里只有前后端约定好就行
        cache: false, // 设置为 false 禁用 AJAX 数据缓存， 默认为true
        striped: true,  //表格显示条纹，默认为false
        pagination: true, // 在表格底部显示分页组件，默认false
        paginationShowPageGo: true,
        pageList: [10, 20, 50, 100], // 如果设置了分页，设置可供选择的页面数据条数。设置为All 则显示所有记录。
        smartDisplay: false,
        pageSize: 10, // 页面数据条数
        pageNumber: 1, // 初始化加载第一页，默认第一页
        sidePagination: 'server', // 设置为服务器端分页     客户端：client
        search: false,
        toolbar: '#toolbar2',//指定工具栏
        showColumns: true,
        searchOnEnterKey: true, //设置为 true时，按回车触发搜索方法，否则自动触发搜索方法
        undefinedText: '---', //当数据为 undefined 时显示的字符
        singleSelect: false,//设置True 将禁止多选
        clickToSelect: true,//设置true 将在点击行时，自动选择rediobox 和 checkbox
        height: 650,     //定义表格的高度。
        searchTimeOut: 500,// 默认500  设置搜索超时时间。
        toolbarAlign: 'left',// 指定 toolbar 水平方向的位置。'left' 或 'right'
        paginationDetailHAlign: 'left',//指定 分页详细信息 在水平方向的位置。'left' 或 'right'。
        showHeader: true,//是否显示列头。
        trimOnSearch: true,//设置为 true 将自动去掉搜索字符的前后空格。
        queryParams: function (params) {

            var currPageSize = this.pageSize;
            /* if (currPageSize == 2) {
                 currPageSize = 10;
             }*/
            var limit = null;
            var offset = params.offset;
            var patientId = $("#idLab").html();
            var assortId = $("#assortId").html();
            if (assortId == 0) assortId = null;
            //判断是否导出全部all
            if ($("#sel_exportoption").val() == "all") {
                offset = 0;
                limit = this.totalRows;
                this.pageSize = limit;
            } else {
                limit = currPageSize;
                this.pageSize = currPageSize;
            }
            var source = null;
            if ($("#sourceSearch").val() != null) {
                source = $("#sourceSearch").val();
            }
            var temp = {
                limit: limit,     //页面大小
                offset: offset,   //页码
                order: params.order,      //排位命令（desc，asc）
                patientId: patientId,
                assortId: assortId,
                source: source,
                flag: flag
            };

            var title = $("#titleSearch").val();
            if (title != null && title != "") {
                temp.title = title;
            }
            return temp;
        },
        sortName: 'assortSort', // 要排序的字段
        sortOrder: 'desc', // 排序规则
        columns: [{
            title: '全选',
            field: 'select',   //复选框
            checkbox: true,
            width: 25,
            align: 'center',
            hidden: true,
        }, {
            title: '序',
            field: 'id',
            align: 'left',
            visible: false
        },

            {
                title: '分段类id',
                field: 'assortId',
                align: 'left',
                valign: 'middle',
                visible: false
            },

            {
                title: '标题',
                field: 'title',
                align: 'left',
                valign: 'middle',
            },
            {
                title: '上传时间',
                field: 'uploaddatetime',
                align: 'left',
                valign: 'middle',
                width: 150, // 定义列的宽度，单位为像素px
            },
            {
                title: '来源',
                field: 'source',
                align: 'center',
                valign: 'middle',
                width: 50, // 定义列的宽度，单位为像素px
            },
            {
                title: '状态',
                field: 'flag',
                align: 'center',
                valign: 'middle',
                width: 80, // 定义列的宽度，单位为像素px
                formatter: function (value, row, index) {
                    //在院  未归档  归档中  初审 已归档 已认证
                    var a = '';
                    if (value == "1") {
                        a = '<span style="color:red;"><i class="fa fa-times-circle-o" aria-hidden="true"></i>作废</span>';
                    } else if (value == "0") {
                        a = '<span style="color:green"><i class="fa fa-check-circle-o" aria-hidden="true"></i>使用</span>';
                    }
                    return a;
                }
            },
            {
                title: "操作",
                align: 'left',
                valign: 'middle',
                width: 120, // 定义列的宽度，单位为像素px
                formatter: function (value, row, index) {
                    //return '<button class="btn btn-danger btn-sm" onclick="selectFun(\'' + row + '\')">查看 </button>';
                    // var html = '<button type="button" class="btn btn-info btn-sm editInfo" >编辑 </button>';// '<a href="javascript:;" class="delete">删除</a>';
                    // if (row.flag == "0") {
                    //     html = html + '<button type="button" class="btn btn-danger btn-sm stateInfo" >作废 </button>';
                    // }
                    var url = window.location.href;
                    var index = url.substring(url.lastIndexOf('?') + 1).replace("num=", "");

                    var html = "";
                    if (index != null && index != "" && index.indexOf("edit") != -1) {
                        //return '<button class="btn btn-danger btn-sm" onclick="selectFun(\'' + row + '\')">查看 </button>';
                        html = html + '<button type="button" class="btn btn-info btn-sm editInfo" >编辑 </button>';// '<a href="javascript:;" class="delete">删除</a>';


                    }

                    if (index != null && index != "" && index.indexOf("cancel") != -1) {
                        if (row.flag == "0") {
                            html = html + '<button type="button" class="btn btn-danger btn-sm stateInfo" >作废 </button>';
                        }
                    }

                    if (index != null && index != "" && index.indexOf("delPdf") != -1) {
                        //console.log("===:" + row.pdfPath + "====" + row.source);
                        //删除
                        if (row.pdfPath != null && row.pdfPath != "") {
                            var pdfName = row.pdfPath.substring(row.pdfPath.lastIndexOf('\\') + 1, row.pdfPath.lastIndexOf('.'));
                            if (pdfName != row.assortId) {
                                if (row.source != null && row.source != "") {
                                    if (row.source.indexOf("后台") != -1) {
                                        html = html + '<button type="button" class="btn btn-warning btn-sm delPdfInfo" >删除 </button>';
                                    }
                                }
                            }
                        } else {

                            if (row.source != null && row.source != "") {
                                if (row.source.indexOf("后台") != -1) {
                                    html = html + '<button type="button" class="btn btn-warning btn-sm delPdfInfo" >删除 </button>';
                                }
                            }
                        }
                    }
                    if (index != null && index != "" && index.indexOf("delPage") != -1) {
                        //return '<button class="btn btn-danger btn-sm" onclick="selectFun(\'' + row + '\')">查看 </button>';
                        html = html + '<button type="button" class="btn btn-primary btn-sm delPdfPage" >删除页 </button>';// '<a href="javascript:;" class="delete">删除</a>';

                    }


                    return html;
                }, events: {
                    'click .editInfo': function (e, value, row, index) {
                        var detailId = row.id;
                        $.ajax({
                            url: path+"/inHosp/getDetailInfo",
                            type: "POST",
                            data: {detailId: detailId},
                            success: function (data) {
                                $("#inpTitle").val(data.title)
                                $("#pageNumber").val(data.pageNumber)
                                $("#inpSource").val(data.source)
                                $("#inpFlag").val(data.flag)
                                $("#pdfPathVal").val(data.pdfPath)
                                $("#idPdfT").val(data.id);
                            }
                        });
                        $("#inpId").val(detailId);
                        $('#assortModal').modal({
                            backdrop: 'static',//backdrop 为 static 时，点击模态对话框的外部区域不会将其关闭。
                            keyboard: false,//keyboard 为 false 时，按下 Esc 键不会关闭 Modal。
                            show: true//弹出对话框
                        });
                    }, 'click .stateInfo': function (e, value, row, index) {
                        $('#exampleModal').modal({
                            backdrop: 'static',//backdrop 为 static 时，点击模态对话框的外部区域不会将其关闭。
                            keyboard: false,//keyboard 为 false 时，按下 Esc 键不会关闭 Modal。
                            show: true//弹出对话框
                        });

                        //同步
                        $("#idT").val(row.id);

                    }, 'click .delPdfInfo': function (e, value, row, index) {
                        $('#delPdfModal').modal({
                            backdrop: 'static',//backdrop 为 static 时，点击模态对话框的外部区域不会将其关闭。
                            keyboard: false,//keyboard 为 false 时，按下 Esc 键不会关闭 Modal。
                            show: true//弹出对话框
                        });
                        //同步
                        $("#idPdfT").val(row.id);
                    }, 'click .delPdfPage': function (e, value, row, index) {
                        $("#mb").css("display", "block");
                        var target = document.getElementById('delPdfBody');
                        spinner.spin(target);//给id为foo的div 中绑上spinner
                        var detailId = row.id;
                        $("#pdfId").val(row.id);
                        $.ajax({
                            url: path+"/inHosp/getDetailInfo",
                            async: false,
                            type: "POST",
                            data: {detailId: detailId},
                            success: function (data) {
                                $("#pathPdf").val(data.pdfPath);
                            }
                        });
                        var titleName = document.getElementById("nameLab").innerText;
                        var iframeUrl = path+"/static/pdfjs/web/viewer.html?file=" + encodeURIComponent(path+"/inHosp/pdfStreamHandeler?url="+detailId+"?titleName=" + titleName);
                        $('#pdf_page').attr('src', iframeUrl);
                        //病案号 45e9b098f9da49ffba1843bfc6930cb8
                        //删除pdf某一页
                        $('#delPdfPageModal').modal({
                            backdrop: 'static',//backdrop 为 static 时，点击模态对话框的外部区域不会将其关闭。
                            keyboard: false,//keyboard 为 false 时，按下 Esc 键不会关闭 Modal。
                            show: true//弹出对话框
                        });
                        // //同步
                        getDelPicPageFun();
                        setTimeout(function () {
                            $("#mb").css("display", "none");
                            spinner.spin();
                        }, 1500);
                    }
                },
                cellStyle: function (value, row, index) {
                    return {classes: 'success'}

                }
            }
        ],
        onLoadSuccess: function (result) {  //加载成功时执行
            // console.info("加载成功");
            //idArr = [];
            $('#table2').bootstrapTable('scrollTo', scollPostion2);
            if (idArr != []) {
                //对刷新表格的数据选中之前选的id行
                $('#table2').bootstrapTable("checkBy", {field: 'id', values: idArr});
            }
        },
        onLoadError: function () {  //加载失败时执行
            //console.info("加载数据失败");
            //toastr.warning("用户长时间未操作，请重新登录!");
        }, onCheckAll: function (rows) { //点击全选框时触发的操作
            if (rows != null && rows.length) {
                for (var i = 0; i < rows.length; i++) {
                    if (idArr.indexOf(row.id) == -1) {
                        idArr.push(rows[i].id);
                    }
                }
            }
        }, onCheck: function (row) {//点击每一个单选框时触发的操作
            scollPostion2 = $('#table2').bootstrapTable('getScrollPosition');
            if (idArr.indexOf(row.id) == -1) {
                idArr.push(row.id);
            }
        }, onUncheck: function (row) {//取消每一个单选框时对应的操作；
            var index = idArr.indexOf(row.id);
            if (index > -1) {
                idArr.splice(index, 1);
            }
        }, onUncheckAll: function (row) {//取消每一个单选框时对应的操作；
            idArr = [];
        }

    });
}

function refreshTable2(){
    $('#table2').bootstrapTable('refresh',{url:tableReqUrl});
}


<!--树相关操作-->
var zNodes = [];
var nodeList = [];

function initTree(patientId) {
    var target = document.getElementById('foo');
    spinner.spin(target);//给id为foo的div 中绑上spinner
    zNodes = [];
    //获取所有分段列表
    $.ajax({
        url: path+"/inHosp/getAssort",
        type: "POST",
        data: {patientId: patientId, flag: flag},
        async: true,
        success: function (result) {
            zNodes.push({id: 0, pId: 0, name: "分段列表", open: true});
            if (result.length > 0) {
                for (var i = 0; i < result.length; i++) {
                    //下拉类别
                    // $("#inpType").append("<option value=" + result[i].assortId + ">" + result[i].assortName + "</option>");
                    //树列表
                    var obj = {};
                    obj.id = result[i].assortId;
                    obj.pId = 0;
                    obj.name = "" + result[i].assortName + "(" + (result[i].pageNum) + ")";
                    obj.assortSort = result[i].assortSort;
                    obj.patientId = result[i].patientId;
                    obj.printFlag = result[i].printFlag;
                    zNodes.push(obj);
                }
            }
            //$.fn.zTree.init($("#ztree"), setting, zNodes);
            var treeObj = $.fn.zTree.init($("#ztree"), setting, zNodes);
            var node;
            var currId = $("#assortId").html();
            if (currId != "" && currId != null) {
                //修改选中已选节点
                node = treeObj.getNodeByParam("id", currId);
            } else {
                //添加选中父节点
                var node = treeObj.getNodeByParam("id", 0);
            }
            treeObj.selectNode(node, true);//将指定ID的节点选中
            //刷新
            //$('#table2').bootstrapTable('refresh');
            spinner.spin();
        }, error: function () {
            //toastr.error("加载失败!");
        }
    });
}

var setting = {
    view: {
        addHoverDom: false,
        removeHoverDom: false,
        selectedMulti: false,
        autoCancelSelected: false
    },
    check: {
        enable: true
    },
    data: {
        simpleData: {
            enable: true,
            idKey: "id",
            pIdKey: "pId",
            rootPId: "0"
        }
    },
    edit: {
        enable: false
    },
    callback: {
        beforeClick: function (treeId, treeNode) {
            $('#table2').bootstrapTable('uncheckAll');
            $("#assortId").html(treeNode.id);
            //查询之后重新从第一页算起
            //$('#table2').bootstrapTable('refreshOptions', {limit: 1, offset: 10});
            //刷新
            refreshTable2()
            idArr = [];
        }
    }
};

function searchNode() {
    var zTree = $.fn.zTree.getZTreeObj("ztree");
    var value = $("#key").val();
    if (value == "") {
        var nodes = zTree.getNodesByParam("isHidden", true);
        zTree.showNodes(nodes);
    } else {
        nodeList = zTree.getNodesByParamFuzzy("name", value);
        var nodes = zTree.getNodes();
        zTree.hideNodes(nodes[0].children);
        updateNodes(true);
    }
    zTree.expandAll(true);
}

function updateNodes(highlight) {
    var zTree = $.fn.zTree.getZTreeObj("ztree");
    for (var i = 0, l = nodeList.length; i < l; i++) {
        zTree.showNode(nodeList[i]);
    }
}