<%--
  Created by IntelliJ IDEA.
  User: 56827
  Date: 2021/3/4
  Time: 20:54
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:set value="${pageContext.request.contextPath}" var="path" scope="page"/>
<html>
<head>
    <title>测试用的完整性信息校验</title>
    <meta http-equiv="Content-Type"  content="text/html;charset=utf-8">
    <%--<meta name="referrer" content="no-referrer">--%>
    <%--<meta name="referrer" content="never">--%>
    <!-- 解决部分兼容性问题，如果安装了GCF，则使用GCF来渲染页面，如果未安装GCF，则使用最高版本的IE内核进行渲染。 -->
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <!-- 页面按原比例显示 -->
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <%@include file="../jspf/comm.jspf" %>
    <%@ include file="../jspf/ztreeCommom.jsp" %>
</head>
<style>
    body{
        scroll-x:hidden;
    }

    .divCss{
        margin-top: 5px;
        margin-left: 20px;
    }

    .divCss8 {
        margin-top: 5px;
        margin-right: 20px;
    }

    .divCss5{
        margin-top: 5px;
        margin-right: 2px;
    }

    .divW{
        margin-left: 20px;
        scroll-x:hidden;
        width: 95%;
    }

    /*选中行颜色*/
    .fixed-table-container tbody .selected td {
        background-color: #9acfea;
    }
</style>

<body>
<div class="row form-inline divCss" style="scroll-x:hidden;">
    <div class="form-group divCss8"><input type="text" id="masterId2" hidden/>
        <label for="inpNo">住院号:</label>
        <input type="text" class="input-sm form-control" id="inpNo2" placeholder="请输入住院号">
    </div>
    <div class="form-group divCss8">
        <label >住院次数:</label>
        <input type="number" class="input-sm form-control" id="visitId2" placeholder="请输入次数">
    </div>
    <div class="form-group divCss5">
        <label>出院日期：</label>
        <div class="input-daterange input-group" id="datepicker">
            <input type="text" class="input-sm form-control" name="start" id="startDateTo"/>
            <span class="input-group-addon">-</span>
            <input type="text" class="input-sm form-control" name="end" id="endDateTo"/>
        </div>
    </div>


    <button type="button" class="btn btn-primary btn-sm divCss5" id="searchBtn2">查询</button>
    <button type="button" class="btn btn-info btn-sm divCss5" id="excelBtn2">条件导出</button>
    <button type="button" class="btn btn-danger btn-sm divCss5" id="wzCheckBtn">重置校验</button>
    <div class="row divW">
        <table id="table2" class="table  text-nowrap  table-striped"></table>
    </div>

</div>

<script>
    $(function () {

        //======================================hjl===============================
        //日期控件
       $(".input-daterange").datepicker({
            format: "yyyy-mm-dd ",
            language: "zh-CN"
        });

        var opts = {
            lines: 13, // 花瓣数目
            length: 20, // 花瓣长度
            width: 10, // 花瓣宽度
            radius: 30, // 花瓣距中心半径
            corners: 1, // 花瓣圆滑度 (0-1)
            rotate: 0, // 花瓣旋转角度
            direction: 1, // 花瓣旋转方向 1: 顺时针, -1: 逆时针
            color: '#000', // 花瓣颜色
            speed: 1, // 花瓣旋转速度
            trail: 60, // 花瓣旋转时的拖影(百分比)
            shadow: false, // 花瓣是否显示阴影
            hwaccel: false, //spinner 是否启用硬件加速及高速旋转
            className: 'spinner', // spinner css 样式名称
            zIndex: 2e9, // spinner的z轴 (默认是2000000000)
            top: '50%', // spinner 相对父容器Top定位 单位 px
            //left: '900%'// spinner 相对父容器Left定位 单位 px
        };
        var spinner = new Spinner(opts);

        //导出excel功能
        $("#excelBtn2").click(function () {
            var inpNo = $("#inpNo2").val();
            var visitId = $("#visitId2").val();
            var checkDatetime = $("#startDateTo").val();
            var checkedDatetime = $("#endDateTo").val();
            window.location.href = "${path}/exportExcel?inpNo=" + inpNo+ "&visitId=" + visitId + "&checkDatetime=" + checkDatetime
                + "&checkedDatetime=" + checkedDatetime
        });

       function wzCheckFun(){
           var target = document.getElementById('table2');
           spinner.spin(target);//给id为foo的div 中绑上spinner
            var entity={};
            var inpNo = $("#inpNo2").val();
            var visitId = $("#visitId2").val();
            var checkDatetime = $("#startDateTo").val();
            var checkedDatetime = $("#endDateTo").val();
            var masterId = $("#masterId2").val();
            entity.masterId=masterId;
            entity.inpNo=inpNo;
            entity.visitId=visitId;
            entity.checkDatetime=checkDatetime;
            entity.checkedDatetime=checkedDatetime;
           // console.log(entity);
            $.ajax({
                url: "${path}/wzByArchivId",
                type: "POST",
                data: entity,
                success: function (result) {
                    //console.log(result);
                    if(result=="已重置完成!"){
                        $('#table2').bootstrapTable('refresh');
                        toastr.success(result);
                    }else{
                        toastr.warning(result);
                    }
                   // spinner.spin();
                }
            });
           spinner.spin();
       }

       //更新校验
        $("#wzCheckBtn").on('click', function () {
            $("#masterId2").val("");
            wzCheckFun();
        });


        //刷新
        $("#searchBtn2").on('click', function () {
            $("#masterId2").val("");
            $('#table2').bootstrapTable('refresh');
        });

        //查询缺陷列表
        var scollPostion2 = null;
        var idArr=[];
        //var eidtSelRow2=[];
        function initTable2() {
            //idArr = [];
            $("#table2").bootstrapTable({ // 对应table标签的id
                //method: 'POST',
                url: "${path}/geWZdetail", // 获取表格数据的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, // 页面数据条数
                geNumber: 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;

                    //判断是否导出全部all
                    if ($("#sel_exportoption").val() == "all") {
                        offset = 0;
                        limit = this.totalRows;
                        this.pageSize = limit;
                    } else {
                        limit = currPageSize;
                        this.pageSize = currPageSize;
                    }
                    var inpNo = $("#inpNo2").val();
                    var visitId = $("#visitId2").val();
                    var checkDatetime = $("#startDateTo").val();
                    var checkedDatetime = $("#endDateTo").val();

                    var temp = {
                        limit: limit,     //页面大小
                        offset: offset,   //页码
                        order: params.order,      //排位命令（desc，asc）
                        inpNo: inpNo,
                        visitId: visitId,
                        checkDatetime: checkDatetime,
                        checkedDatetime: checkedDatetime
                    };


                    return temp;
                },
                sortName: 'assortSort', // 要排序的字段
                sortOrder: 'desc', // 排序规则
                columns: [{
                    title: '全选',
                    field: 'select',   //复选框
                    checkbox: true,
                    width: 25,
                    align: 'center',
                    hidden: true,
                }, {
                    title: '序号',
                    field: 'id',
                    align: 'center',
                    valign: 'middle',
                    //sortable: true,
                    // visible: false,
                    formatter: function (value, row, index) {
                        return index + 1;
                    }
                },

                    {
                        title: '病案id',
                        field: 'masterId',
                        align: 'left',
                        valign: 'middle',
                    },

                    {
                        title: '住院号',
                        field: 'inpNo',
                        align: 'left',
                        valign: 'middle',
                    },
                    {
                        title: '住院次数',
                        field: 'visitId',
                        align: 'left',
                        valign: 'middle',
                        // width: 150, // 定义列的宽度，单位为像素px
                    },
                    {
                        title: '出院日期',
                        field: 'dischargeDateTime',
                        align: 'center',
                        valign: 'middle',
                        // width: 50, // 定义列的宽度，单位为像素px
                    },
                    {
                        title: '校验完成日期',
                        field: 'checkedDatetime',
                        align: 'center',
                        valign: 'middle',
                    },
                    {
                        title: '完整性内容',
                        field: 'lockinfo',
                        align: 'left',
                        valign: 'middle',
                        // width: 50, // 定义列的宽度，单位为像素px
                    },
                    {
                        title: "操作",
                        align: 'left',
                        valign: 'middle',
                        //width: 120, // 定义列的宽度，单位为像素px
                        formatter: function (value, row, index) {
                            var html = "";
                            html = html + '<button type="button" class="btn btn-info btn-sm wzInfo" >重置校验 </button>';
                            return html;
                        }, events: {
                            'click .wzInfo': function (e, value, row, index) {
                                   //重置校验
                                $("#masterId2").val(row.masterId);
                                wzCheckFun();
                            }
                        },
                        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});
                        //console.info(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);
                            }
                            //eidtSelRow2.push(rows[i].id);
                        }
                    }
                }, onCheck: function (row) {//点击每一个单选框时触发的操作
                    scollPostion2 = $('#table2').bootstrapTable('getScrollPosition');
                    if(idArr.indexOf(row.id)==-1){
                        idArr.push(row.id);
                    }

                    /* if(eidtSelRow2.indexOf(row.id)==-1){
                         eidtSelRow2.push(row.id);
                     }*/

                }, onUncheck: function (row) {//取消每一个单选框时对应的操作；
                    var index = idArr.indexOf(row.id);
                    if (index > -1) {
                        idArr.splice(index, 1);
                    }
                    /* var index2 = eidtSelRow2.indexOf(row.id);
                     if (index2 > -1) {
                         eidtSelRow2.splice(index2, 1);
                     }*/
                    //console.log(eidtSelRow2);
                }, onUncheckAll: function (row) {//取消每一个单选框时对应的操作；
                    idArr = [];
                    // eidtSelRow2= [];
                }

            });
        }

        initTable2();
    });
</script>












<div>==================================保留原有的===========================================</div>
    <div style="margin-left:30px;margin-right:10px;height:auto">
        <%--<form id="form" name="form" method="post" action="${pageContext.request.contextPath }/selectByInpNoAndVisitId">--%>
        <form>
            <div>
                <label for="inpNo">住院号:</label>
                <input type="text" id="inpNo" placeholder="请输入住院号">
            </div>
            <div>
                <label for="visitId">住院次数:</label>
                <input type="number" id="visitId" placeholder="请输入次数">
            </div>
            <button type="button" id="searchBtn">查询</button>
            <button type="button" id="reloadWz">重新校验完整性</button>
            <button type="button" id="reloadWzAll">重新校验完整性（缺失清单）</button>
        </form>
    </div>
    <div>
        <label>患者id:</label>
        <textarea id="masterId" style="height: 200px;width: 400px">

        </textarea>
        <label>完整性信息:</label>
        <textarea id="wzContent" style="height: 200px;width: 400px">

        </textarea>
    </div>

<script>
    $(function () {
        //======================================wzq===============================
        $("#searchBtn").on('click', function () {
            var inpNo = $("#inpNo").val();
            var visitId = $("#visitId").val();
            $.ajax({
                url: "${pageContext.request.contextPath }/selectByInpNoAndVisitId",
                type: "POST",
                data: {inpNo: inpNo, visitId: visitId},
                success: function (result) {
                    console.log(result);
                    if (result.length > 0) {
                        $("#masterId").val(result[0].id);
                        $("#wzContent").val(result[0].lockinfo);
                    }else {
                        alert("不存在该患者");
                    }
                }
            });
        });

        $("#reloadWz").on('click', function () {
            var masterId = $("#masterId").val();
            $.ajax({
                url: "${pageContext.request.contextPath }/reloadWz",
                type: "POST",
                data: {masterId: masterId},
                success: function (result) {
                    //console.log(result);
                    if (result > 0) {
                        alert("重新校验成功");
                    }else {
                        alert("重新校验失败");
                    }
                }
            });
        });

        $("#reloadWzAll").on('click', function () {
            //var masterId = $("#masterId").val();
            $.ajax({
                url: "${pageContext.request.contextPath }/reloadWzAll",
                type: "GET",
                data: null,
                success: function (result) {
                    // console.log(result.length);
                    // console.log(result);
                    if (result > 0) {
                        alert("重新校验成功");
                    }else {
                        alert("重新校验失败");
                    }
                }
            });
        });
    });

</script>
</body>
</html>
