var personName;
var oldStatus;
var timeStart;
var timeEnd;
var  table;
var laydate;
var personIdArray = [];
var reservationTimeChild= localStorage.getItem("reservationTimeChild");

layui.use(['table', 'layer', 'laydate', 'jquery', 'form'], function () {
    table = layui.table;
    laydate = layui.laydate;
    let form = layui.form;
    //渲染table
    table.render({
        elem: '#demo'
        , url: ctxPath + '/resStatistics/getChildList' //数据接口
        , method: 'post' //方式默认是get
        , toolbar: 'default' //开启工具栏，此处显示默认图标，可以自定义模板，详见文档
        , where: {
            reservationTime:reservationTimeChild
        } //post请求必须加where ，post请求需要的参数
        , cellMinWidth: 80
        , cols: [[ //表头
            {field: 'number', width:80,title: '序号', align: 'center', type: 'numbers'}
            , {field: 'personName', width:100 ,align: 'center', title: '姓名'}
            // , {field: 'idNumber', width:240 , title: '身份证号码 '}
            ,{field: 'idNumber', align: 'center',width : 240,title: '身份证号码',templet:function(res){
                    return res.idNumber + "\t";
            }}
            , {field: 'age', width: 80, align: 'center', title: '年龄'}
            , {field: 'sex', width: 80, align: 'center', title: '性别'}
            , {field: 'phone', width: 150, align: 'center', title: '联系方式'}
            , {field: 'department', width: 240, align: 'center', title: '部门'}
            , {field: 'higherJob', width: 240, align: 'center', title: '是否高职'}
            , {field: 'reservationTime', width: 200, align: 'center', title: '预约体检时间'}
            , {field: 'name', width: 200, align: 'center', title: '预约医院'}
            , {field: 'checkContentId', width: 200, align: 'center', title: '预约套餐'}
            , {field: 'combName', width: 200, align: 'center', title: '套餐名称'}
            , {field: 'operateTime', width: 130, align: 'center', title: '操作时间'}
            , {field: 'operatePerson', width: 120, align: 'center', title: '操作人员'}
        ]]
        ,done: function (res, curr, count) {
            var state = "";
            for (var i in res.data) {
                var item = res.data[i];
                /**
                 * 初始化数据表格赋值
                 */
                if (!isNull(item.reservationTime) ){
                    res.data[i]["LAY_CHECKED"] = false;
                    $('tr[data-index=' + i + '] input[type="checkbox"]').prop('disabled', true);
                    // $('tr[data-index=' + i + '] input[type="checkbox"]').prop('checked', false);
                 //   $('tr[data-index=' + i + '] input[type="checkbox"]').next().addClass('layui-form-checked');
                    state = "1";// 隐藏表头全选判断状态
                    form.render();// 重新渲染一下
                }
                 for (var j in personIdArray) {
                     if(personIdArray[j].personId == res.data[i].personId){
                         res.data[i]["LAY_CHECKED"] = true;
                         $('tr[data-index=' + i + '] input[type="checkbox"]').prop('checked', true);
                         $('tr[data-index=' + i + '] input[type="checkbox"]').next().addClass('layui-form-checked');
                     }
                 }

            };
        }
        , id: 'menuTable'
        , page: true //开启分页
        , loading: true //数据加载中。。。
        , limits: [50,100]  //一页选择显示3,5或10条数据
        , limit: 10  //一页显示5条数据
        , response: {
            statusCode: 200 //规定成功的状态码，默认：0
        }, parseData: function (res) { //将原始数据解析成 table 组件所规定的数据，res为从url中get到的数据
            let result;
            if (res.data !== '' && res.data != null && res.data !== "null") {
                if (this.page.curr) {
                    result = res.data.slice(this.limit * (this.page.curr - 1), this.limit * this.page.curr);
                } else {
                    result = res.data.slice(0, this.limit);
                }
            }
            return {
                "code": res.code, //解析接口状态
                "msg": res.msg, //解析提示文本
                "count": res.count, //解析数据长度
                "data": result, //解析数据列表
            };
        },

        toolbar: "#toolbar"
    });

    // 行工具事件
    table.on('tool(test)', function (obj) {
        var data = obj.data //获得当前行数据
        var layEvent = obj.event; //获得 lay-event 对应的值
        var id = data.reservationId
        if (layEvent === 'edit') {
            openForm(id);
        }
    });
    table.on('checkbox(test)', function (obj) {
    });

    //头监听事件 -- checkBox 选中行和选中条数
    table.on('toolbar(test)', function (obj) {
        // 获取当前表格被选中的记录对象，返回数据
        var checkStatus = table.checkStatus(obj.config.id);
        //获取事件名，执行对应的代码
        var eventName = obj.event;
        switch (eventName) {
            case "searchBt":
                personName = $("#personName").val();
                oldStatus = $("#name").val();
                // hospitalName = $("#name").val();
                timeStart = $("#phyTimeStart").val();
                timeEnd = $("#phyTimeEnd").val();
                table.reload('menuTable', {
                    url: ctxPath + '/resStatistics/getChildList'
                    , method: 'post' //方式默认是get
                    , page: true
                    , where: {
                        personName: personName,
                        name: oldStatus,
                        phyTimeStart: timeStart,
                        phyTimeEnd: timeEnd
                    } //设定异步数据接口的额外参数
                });
                initTime();
                // console.log(hospitalName)
                $("#personName").val(personName);
                $("#name").val(oldStatus);
                $("#phyTimeStart").val(timeStart);
                $("#phyTimeEnd").val(timeEnd);
                break;

            case "searchBat":
                break;
        }
    });
    initTime();
});

function initTime() {
    // 日期选择器
    laydate.render({
        elem: '#ID-laydate-range',
        range: ['#phyTimeStart', '#phyTimeEnd']
    });
}

