﻿<%@ page language="java" import="java.util.*" pageEncoding="UTF-8" contentType="text/html;charset=UTF-8" %>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:set value="${pageContext.request.contextPath}" var="path" scope="page"/>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>用户在线</title>
    <!-- Tell the browser to be responsive to screen width -->
    <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
    <%@include file="../../jspf/comm.jspf" %>
    <script>
        var path = "${path}";
    </script>
    <!-- Google Font -->
    <style type="text/css">
        h3{
            size:14px;
            color: #0f0f0f;
        }
        .height20{
            height: 600px;
        }
    </style>
</head>
<body>
<div class=table-responsive">
    <table id="table" class="table text-nowrap table-striped"></table>
</div>
<script>
    $(function(){
        initTable();
    })
    var tipLoad = 1;
   /* var data = [{
        "name":"全院",
        "disNumber":"652000",
        "admissNumber":"120000",
        "disCount":"500000",
        "recordRate":"78%"
    }]*/
    //出院列表
    var data=[{name:"admin",disCount:"管理员",admissCount:"2022-10-12 10:46:04",sumbitCount:"59.57.154.221",recordCount:"在线"},
        {name:"admin1",disCount:"管理员2",admissCount:"2022-10-11 13:48:26",sumbitCount:"59.57.154.221",recordCount:"离线"}]
    function initTable() {
        if (tipLoad == 1) {
            $("#table").bootstrapTable({ // 对应table标签的id
                //data:data,
                // url: path+"/workHome/recordDataOneTable", // 获取表格数据的url
                uniqueId:"id",
                contentType: "application/x-www-form-urlencoded",//一种编码。好像在post请求的时候需要用到。这里用的get请求，注释掉这句话也能拿到数据
                cache: false, // 设置为 false 禁用 AJAX 数据缓存， 默认为true
                striped: true,  //是否显示行间隔色
                pagination: true, // 在表格底部显示分页组件，默认false
                paginationShowPageGo: true,
                data:data,
                pageList: [5,10, 20, 50], // 如果设置了分页，设置可供选择的页面数据条数。设置为All 则显示所有记录。
                sidePagination: 'client', // 设置为服务器端分页     客户端：client
                searchOnEnterKey: true, //设置为 true时，按回车触发搜索方法，否则自动触发搜索方法
                undefinedText: '---', //当数据为 undefined 时显示的字符
                singleSelect: false,//设置True 将禁止多选
                clickToSelect: true,//设置true 将在点击行时，自动选择rediobox 和 checkbox
                //height: getHeight(220),     //定义表格的高度。
                searchTimeOut: 500,// 默认500  设置搜索超时时间。
                toolbarAlign: 'right',// 指定 toolbar 水平方向的位置。'left' 或 'right'
                paginationDetailHAlign: 'left',//指定 分页详细信息 在水平方向的位置。'left' 或 'right'。
                showHeader: true,//是否显示列头。
                trimOnSearch: true,//设置为 true 将自动去掉搜索字符的前后空格。
                // detailView:true,//是否可展开
                queryParams: function (params) {
                    return queryParams(params,this,'');
                },
                columns: [
                    {
                        title: '工号',
                        field: 'name',
                        align: 'center',
                        valign: 'middle'
                    },
                    {
                        title: '姓名',
                        field: 'disCount',
                        align: 'center',
                        valign: 'middle'
                    },
                    {
                        title: '最后上线时间',
                        field: 'admissCount',
                        align: 'center',
                        valign: 'middle'
                    },
                    {
                        title: 'IP',
                        field: 'sumbitCount',
                        align: 'center',
                        valign: 'middle'
                    },
                    {
                        title: '在线状态',
                        field: 'recordCount',
                        align: 'center'
                    }
                ],
                onLoadSuccess: function () {  //加载成功时执行
                    $(".page-list").show();
                    tipLoad = 0;
                },
                onLoadError: function () {  //加载失败时执行
                    tipLoad = 0
                },
                //展开详情事件
                onExpandRow: function (index, row, $detail) {//點擊datagrid 展開按鈕事件
                    var html = '<div id="tableDiv1">\n' +
                        '        <table id="table1" class="table text-nowrap"></table>\n' +
                        '    </div>';
                    $detail.html(html);
                    initTable1();
                }
            });
        }
    }
    /*var data1 = [{
        "deptName":"儿科",
        "deptCode":"300",
        "disCount":"500",
        "admissCount":"120",
        "sumbitCount":"300",
        "sumbitRate":"60%"
        },
        {
            "deptName":"妇科",
            "deptCode":"400",
            "disCount":"500",
            "admissCount":"120",
            "sumbitCount":"300",
            "sumbitRate":"60%"
        }]*/
    //第二层，按科室分组查
    function initTable1() {
        $("#table1").bootstrapTable({ // 对应table标签的id
            //data:data1,
            url: path + "/workHome/recordDataTwoTable", // 获取表格数据的url
            cache: false, // 设置为 false 禁用 AJAX 数据缓存， 默认为true
            striped: true,  //表格显示条纹，默认为false
            pagination: true, // 在表格底部显示分页组件，默认false
            paginationShowPageGo: true,
            pageSize: 5,
            pageList: [5,10, 20, 50, 100], // 如果设置了分页，设置可供选择的页面数据条数。设置为All 则显示所有记录。
            sidePagination: 'server', // 设置为服务器端分页     客户端：client
            searchOnEnterKey: true, //设置为 true时，按回车触发搜索方法，否则自动触发搜索方法
            detailView: true,//是否可展开
            undefinedText: '--', //当数据为 undefined 时显示的字符
            singleSelect: false,//设置True 将禁止多选
            clickToSelect: true,//设置true 将在点击行时，自动选择rediobox 和 checkbox
            paginationDetailHAlign: 'left',//指定 分页详细信息 在水平方向的位置。'left' 或 'right'。
            height:200,
            searchTimeOut: 500,// 默认500  设置搜索超时时间。
            showHeader: true,//是否显示列头。
            //查询条件
            queryParams: function (params) {
                return queryParams(params,this,'');
            },
            columns: [
                {
                    title: '序号',
                    align: 'center',
                    formatter: function (value, row, index) {
                        return index + 1;
                    }
                },
                {
                    title: '出院科室',
                    field: 'name',
                    align: 'left'
                },
                {
                    title: '出院人数',
                    field: 'disCount',
                    align: 'center'
                },
                {
                    title: '入院人数',
                    field: 'admissCount',
                    align: 'center'
                },
                {
                    title: '出科数量',
                    field: 'sumbitCount',
                    align: 'center'
                },
                {
                    title: '归档数量',
                    field: 'recordCount',
                    align: 'center'
                },
                {
                    title: '归档率',
                    field: 'recordRate',
                    align: 'center',
                    formatter: function (value, row, index) {
                        var val;
                        if (row.recordRate != null && row.recordRate != '') {
                            val = Math.round(row.recordRate) + "%";
                        }
                        return val;
                    }
                },
            ],
            onLoadSuccess: function (result) {  //加载成功时执行
                $(".page-list").show();
            },
            //展开详情事件
            onExpandRow: function (index, row, $detail) {//點擊datagrid 展開按鈕事件
                var deptName = row.deptName;
                var name = row.name;
                var tableId = 'table_'+deptName;
                var html = '<div id="tableDiv2">\n' +
                    '        <table id="'+tableId+'" class="table2" class="table text-nowrap table-bordered"></table>\n' +
                    '    </div>';
                $detail.html(html);
                initTable2(tableId,deptName,name);
            }
        });
    }
    /*var data2 = [{
        "attending":"张三",
        "disCount":"200",
        "admissCount":"60",
        "sumbitCount":"100",
        "recordRate":"50%"
    }]*/
    //第三层，按审核角色分组查
    function initTable2(tableId,deptName) {
        $("#"+tableId).bootstrapTable({ // 对应table标签的id
            url:path + "/workHome/recordDataThreeTable",
            sidePagination: 'client', // 设置为服务器端分页     客户端：client
            cache: false, // 设置为 false 禁用 AJAX 数据缓存， 默认为true
            striped: true,  //表格显示条纹，默认为false
            //pagination: true, // 在表格底部显示分页组件，默认false
            //paginationShowPageGo: true,
            //pageList: [5,10, 20, 50, 100], // 如果设置了分页，设置可供选择的页面数据条数。设置为All 则显示所有记录。
            searchOnEnterKey: true, //设置为 true时，按回车触发搜索方法，否则自动触发搜索方法
            undefinedText: '--', //当数据为 undefined 时显示的字符
            singleSelect: false,//设置True 将禁止多选
            clickToSelect: true,//设置true 将在点击行时，自动选择rediobox 和 checkbox
            paginationDetailHAlign: 'left',//指定 分页详细信息 在水平方向的位置。'left' 或 'right'。
            height:300,
            searchTimeOut: 500,// 默认500  设置搜索超时时间。
            showHeader: true,//是否显示列头。
            //查询条件
            queryParams: function (params) {
                var temp = {
                    startDate:parent.parent.$("#startDateTo").val(),
                    endDate:parent.parent.$("#endDateTo").val(),
                    deptName:deptName
                };
                return temp;
            },
            columns: [
                {
                    title: '序号',
                    formatter: function (value, row, index) {
                        return index + 1;
                    }
                },
                {
                    title: '出院科室',
                    field: 'deptNameCn'
                },
                {
                    title: '审核角色',
                    field: 'role'
                },
                {
                    title: '未提交份数',
                    field: 'unCount'
                },
                {
                    title: "操作",
                    align: 'left',
                    valign: 'middle',
                    formatter: function (value, row) {
                        var html = '<button type="button" class="btn btn-danger btn-sm selInfo" title="查看明细">查看明细</button>';
                        return html;
                    },
                    events: {
                        'click .selInfo': function (e, value, row) {
                            var pdfUrl = path+"/workHome/notSubmitRecord?deptName="+deptName+"&infoId="+row.infoId+"&startDate="+parent.parent.$("#startDateTo").val()+"&endDate="+parent.parent.$("#endDateTo").val();
                            window.open(pdfUrl,"_blank");
                        }
                    }
                }
            ],
            onLoadSuccess: function (result) {  //加载成功时执行
                $(".page-list").show();
            },
        });
    }
    //各表格查询条件
    function queryParams(params,_this,deptName){
        var currPageSize = _this.pageSize;
        if (currPageSize == 2) {
            currPageSize = 5;
        }
        var limit = null;
        var offset = params.offset;
        //判断是否导出全部all
        if ($("#sel_exportoption").val() == "all") {
            offset = 0;
            limit = _this.totalRows;
            _this.pageSize = limit;
        } else {
            limit = currPageSize;
            _this.pageSize = currPageSize;
        }
        var temp = {
            limit: limit,     //页面大小
            offset: offset,  //页码
            startDateTo:parent.parent.$("#startDateTo").val(),
            endDateTo:parent.parent.$("#endDateTo").val()
        };
        return temp;
    }
</script>
</body>
</html>

