var ExcelData;
function ConfirmImport() {
    $.ajax({
        type: "POST",
        url: "/Admin/PosMerchantInfo/Import?r=" + Math.random(1),
        data: "ExcelData=" + encodeURIComponent(JSON.stringify(ExcelData)),
        dataType: "text",
        success: function (data) {
            if (data == "success") {
                layer.msg("导入成功", { time: 2000 }, function () {
                    window.location.reload();
                });
            } else {
                layer.msg(data);
            }
        }
    });
}

var excel;
layui.config({
    base: '/layuiadmin/' //静态资源所在路径
}).extend({
    myexcel: 'layui/lay/modules/excel',
    index: 'lib/index' //主入口模块
}).use(['index', 'table', 'excel', 'laydate'], function () {
    var $ = layui.$
        , form = layui.form
        , table = layui.table;

    //- 筛选条件-日期
    var laydate = layui.laydate;
    var layCreateDate = laydate.render({
        elem: '#CreateDate',
        type: 'date',
        range: true,
        trigger: 'click',
        change: function (value, date, endDate) {
            var op = true;
            if (date.year == endDate.year && endDate.month - date.month <= 1) {
                if (endDate.month - date.month == 1 && endDate.date > date.date) {
                    op = false;
                    layCreateDate.hint('日期范围请不要超过1个月');
                    setTimeout(function () {
                        $(".laydate-btns-confirm").addClass("laydate-disabled");
                    }, 1);
                }
            } else {
                op = false;
                layCreateDate.hint('日期范围请不要超过1个月');
                setTimeout(function () {
                    $(".laydate-btns-confirm").addClass("laydate-disabled");
                }, 1);
            }
            if (op) {
                $('#CreateDate').val(value);
            }
        }
    });
    var layKqRegTime = laydate.render({
        elem: '#KqRegTime',
        trigger: 'click',
        type: 'date',
        range: true,
        change: function (value, date, endDate) {
            var op = true;
            if (date.year == endDate.year && endDate.month - date.month <= 1) {
                if (endDate.month - date.month == 1 && endDate.date > date.date) {
                    op = false;
                    layKqRegTime.hint('日期范围请不要超过1个月');
                    setTimeout(function () {
                        $(".laydate-btns-confirm").addClass("laydate-disabled");
                    }, 1);
                }
            } else {
                op = false;
                layKqRegTime.hint('日期范围请不要超过1个月');
                setTimeout(function () {
                    $(".laydate-btns-confirm").addClass("laydate-disabled");
                }, 1);
            }
            if (op) {
                $('#KqRegTime').val(value);
            }
        }
    });


    //excel导入
    excel = layui.excel;        
    $('#ExcelFile').change(function (e) {
        var files = e.target.files;
        excel.importExcel(files, { }, function (data) {
            ExcelData = data[0].sheet1;
        });
    });

    //监听单元格编辑
    table.on('edit(LAY-list-manage)', function(obj){
        var value = obj.value //得到修改后的值
        ,data = obj.data //得到所在行所有键值
        ,field = obj.field; //得到字段
        if(field == "Sort"){
            $.ajax({
                type: "POST",
                url: "/Admin/PosMerchantInfo/Sort?r=" + Math.random(1),
                data: "Id=" + data.Id + "&Sort=" + value,
                dataType: "text",
                success: function (data) {
                }
            });
        }
    });
    

    //列表数据
    table.render({
        elem: '#LAY-list-manage'
        , url: '/Admin/PosMerchantInfoList/IndexData' //模拟接口
        , cols: [[
            { type: 'checkbox', fixed: 'left' }
            ,{field:'MerchantNo', width: 200, title:'商户编号', sort: true}
            ,{field:'MerIdcardNo', width: 200, title:'身份证号', sort: true}
            ,{field:'MerchantName', width: 200, title:'商户名称', sort: true}
            ,{field:'MerchantMobile', width: 200, title:'商户手机号', sort: true}
            ,{field:'KqMerNo', width: 200, title:'快钱商户编码', sort: true}
            ,{field:'KqSnNo', width: 200, title:'快钱SN号', sort: true}
            ,{field:'SnType', width: 200, title:'机具类型', sort: true}
            ,{field:'RebateQual', width: 200, title:'返利资格', sort: true}
            ,{field:'ActType', width: 200, title:'激活类型', sort: true}
            ,{field:'MerStatus', width: 200, title:'商户状态', sort: true}
            ,{field:'ActiveStatus', width: 200, title:'商户激活状态', sort: true}
            ,{field:'MerMakerCode', width: 200, title:'商户创客编码', sort: true}
            ,{field:'MerRealName', width: 200, title:'商户创客名称', sort: true}
            ,{field:'MerUserType', width: 200, title:'商户创客类型', sort: true}
            ,{field:'MakerCode', width: 200, title:'直属创客编号', sort: true}
            ,{field:'RealName', width: 200, title:'直属创客姓名', sort: true}
            ,{field:'StoreNo', width: 200, title:'SN仓库编号', sort: true}
            ,{field:'StoreName', width: 200, title:'SN仓库名称', sort: true}
            ,{field:'SnApplyMakerCode', width: 200, title:'申请创客编号', sort: true}
            ,{field:'SnApplyRealName', width: 200, title:'申请创客姓名', sort: true}
            , { field: 'KqRegTime', width: 200, title: '注册时间', sort: true }
            , { title: '操作', width: 120, align: 'left', toolbar: '#table-list-tools', fixed: 'right' }
        ]]
        , where: {
        }
        , page: true
        , limit: 30
        , height: 'full-' + String($('.layui-card-header').height() + 130)
        , text: '对不起，加载出现异常！'
        , done: function (res, curr, count) {
            $(".layui-none").text("无数据");
        }
    });

    //监听工具条
    table.on('tool(LAY-list-manage)', function (obj) {
        var data = obj.data;
        if (obj.event === 'del') {
            var index = layer.confirm('确定要删除吗？删除后不能恢复！', function (index) {
                $.ajax({
                    type: "POST",
                    url: "/Admin/PosMerchantInfo/Delete?r=" + Math.random(1),
                    data: "Id=" + data.Id,
                    dataType: "text",
                    success: function (data) {
                        if (data == "success") {                            
                            obj.del();
                            layer.close(index);
                        } else {
                            parent.layer.msg(data);
                        }
                    }
                });
            });
        } else if (obj.event === 'edit') {
            var tr = $(obj.tr);
            var perContent = layer.open({
                type: 2
                , title: '商户-编辑'
                , content: 'Edit?Id=' + data.Id + ''
                , maxmin: true
                , area: ['500px', '450px']
                , btn: ['确定', '取消']
                , yes: function (index, layero) {
                    var iframeWindow = window['layui-layer-iframe' + index]
                        , submitID = 'LAY-list-front-submit'
                        , submit = layero.find('iframe').contents().find('#' + submitID);

                    setTimeout(function () { 
                        layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
                            var errObj = $(this).find('.layui-form-danger');
                            if (errObj.length > 0) {
                                iframeWindow.element.tabChange('mytabbar', String(i + 1));
                                submit.click();
                            }
                        });                        
                    }, 300);

                    
                    
                    
                    

                    //监听提交
                    iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
                        var field = data.field; //获取提交的字段
                        var userdata = "";
                        for (var prop in field) {
                            userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
                        }
                        //提交 Ajax 成功后，静态更新表格中的数据
                        //$.ajax({});
                        
                        $.ajax({
                            type: "POST",
                            url: "/Admin/PosMerchantInfo/Edit?r=" + Math.random(1),
                            data: userdata,
                            dataType: "text",
                            success: function (data) {
                                layer.close(index); //关闭弹层
                                if (data == "success") {
                                    table.reload('LAY-list-manage'); //数据刷新
                                } else {
                                    layer.msg(data);
                                }
                            }
                        });
                    });

                    submit.trigger('click');
                }
                , success: function (layero, index) {

                }
            });
            layer.full(perContent);
        } else if (obj.event === 'sycntrade') {
            var tr = $(obj.tr);
            var perContent = layer.open({
                type: 2
                , title: '同步交易额'
                , content: 'SycnTradeAmount?Id=' + data.Id
                , maxmin: false
                , area: ['550px', '700px']
                , btn: ['确定', '取消']
                , yes: function (index, layero) {
                    var iframeWindow = window['layui-layer-iframe' + index]
                        , submitID = 'LAY-list-front-submit'
                        , submit = layero.find('iframe').contents().find('#' + submitID);

                    //监听提交
                    iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
                        var field = data.field; //获取提交的字段
                        var userdata = "";
                        for (var prop in field) {
                            userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
                        }
                        //提交 Ajax 成功后，静态更新表格中的数据
                        //$.ajax({});
                        var loadindex = layer.load(1, {
                            shade: [0.5, '#000']
                        });
                        $.ajax({
                            type: "POST",
                            url: "/Admin/PosMerchantInfo/SycnTradeAmountDo?r=" + Math.random(1),
                            data: userdata,
                            dataType: "text",
                            success: function (data) {
                                layer.close(loadindex); //关闭弹层
                                layer.close(index); //关闭弹层
                                if (data == "success") {
                                    layer.alert('重置程序已启动，请稍后核对商户交易额');
                                } else {
                                    layer.msg(data);
                                }
                            }
                        });
                    });

                    submit.trigger('click');
                }
                , success: function (layero, index) {

                }
            });
        }
    });


    //监听搜索
    form.on('submit(LAY-list-front-search)', function (data) {
        var field = data.field;

        //执行重载
        table.reload('LAY-list-manage', {
            where: field,
            page: {
                curr: 1
            }
        });
    });
    form.on('submit(LAY-list-front-searchall)', function (data) {
        table.reload('LAY-list-manage', {
            where: null,
            page: {
                curr: 1
            }
        });
    });

    //事件
    var active = {
        batchdel: function () {
            var checkStatus = table.checkStatus('LAY-list-manage')
                , data = checkStatus.data; //得到选中的数据
            if (data.length < 1) {
                parent.layer.msg("请选择要删除的项");
            } else {
                var ids = "";
                $.each(data, function (index, value) {
                    ids += data[index].Id + ",";
                });
                ids = ids.substring(0, ids.length - 1);
                var index = layer.confirm('确定要删除吗？删除后不能恢复！', function (index) {
                    $.ajax({
                        type: "POST",
                        url: "/Admin/PosMerchantInfo/Delete?r=" + Math.random(1),
                        data: "Id=" + ids,
                        dataType: "text",
                        success: function (data) {
                            layer.close(index);
                            if (data == "success") {
                                table.reload('LAY-list-manage');
                            } else {
                                layer.msg(data);
                            }
                        }
                    });
                });
            }
        }
        , add: function () {
            var perContent = layer.open({
                type: 2
                , title: '商户-添加'
                , content: 'Add'
                , maxmin: true
                , area: ['500px', '450px']
                , btn: ['确定', '取消']
                , yes: function (index, layero) {
                    var iframeWindow = window['layui-layer-iframe' + index]
                        , submitID = 'LAY-list-front-submit'
                        , submit = layero.find('iframe').contents().find('#' + submitID);

                    setTimeout(function () { 
                        layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
                            var errObj = $(this).find('.layui-form-danger');
                            if (errObj.length > 0) {
                                iframeWindow.element.tabChange('mytabbar', String(i + 1));
                                submit.click();
                            }
                        });                        
                    }, 300);

                    
                    
                    
                    

                    //监听提交
                    iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
                        var field = data.field; //获取提交的字段
                        var userdata = "";
                        for (var prop in field) {
                            userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
                        }
                        //提交 Ajax 成功后，静态更新表格中的数据
                        //$.ajax({});
                        
                        $.ajax({
                            type: "POST",
                            url: "/Admin/PosMerchantInfo/Add?r=" + Math.random(1),
                            data: userdata,
                            dataType: "text",
                            success: function (data) {
                                layer.close(index); //关闭弹层
                                if (data == "success") {
                                    table.reload('LAY-list-manage'); //数据刷新
                                } else {
                                    layer.msg(data);
                                }
                            }
                        });
                    });

                    submit.trigger('click');
                }
            });
            layer.full(perContent);
        }
        , ImportData: function () {
            layer.open({
                type: 1,
                title: '导入',
                maxmin: false,
                area: ['460px', '180px'],
                content: $('#excelForm'),
                cancel: function () {
                }
            });
        }
        , ExportExcel: function () {
            var userdata = '';
            $(".layuiadmin-card-header-auto input").each(function (i) {
                userdata += $(this).attr('name') + '=' + encodeURIComponent($(this).val()) + '&';
            });
            $(".layuiadmin-card-header-auto select").each(function (i) {
                userdata += $(this).attr('name') + '=' + encodeURIComponent($(this).val()) + '&';
            });
            $.ajax({
                type: "GET",
                url: "/Admin/PosMerchantInfo/ExportExcel?r=" + Math.random(1),
                data: userdata,
                dataType: "json",
                success: function (data) {
                    data.Obj.unshift(data.Fields);
                    excel.exportExcel(data.Obj, data.Info, 'xlsx');
                }
            });
        }
        , Open: function () {
            var checkStatus = table.checkStatus('LAY-list-manage')
                , data = checkStatus.data; //得到选中的数据
            if(data.length < 1){
                parent.layer.msg("请选择要开启的项");
            }else{
                var ids = "";
                $.each(data, function (index, value) {
                    ids += data[index].Id + ",";
                });
                ids = ids.substring(0, ids.length - 1);
                var index = layer.confirm('确定要开启吗？', function (index) {
                    $.ajax({
                        type: "POST",
                        url: "/Admin/PosMerchantInfo/Open?r=" + Math.random(1),
                        data: "Id=" + ids,
                        dataType: "text",
                        success: function (data) {
                            layer.close(index);
                            if (data == "success") {
                                table.reload('LAY-list-manage');
                            } else {
                                layer.msg(data);
                            }
                        }
                    });
                });
            }
        }
        , Close: function () {
            var checkStatus = table.checkStatus('LAY-list-manage')
                , data = checkStatus.data; //得到选中的数据
            if(data.length < 1){
                parent.layer.msg("请选择要关闭的项");
            }else{
                var ids = "";
                $.each(data, function (index, value) {
                    ids += data[index].Id + ",";
                });
                ids = ids.substring(0, ids.length - 1);
                var index = layer.confirm('确定要关闭吗？', function (index) {
                    $.ajax({
                        type: "POST",
                        url: "/Admin/PosMerchantInfo/Close?r=" + Math.random(1),
                        data: "Id=" + ids,
                        dataType: "text",
                        success: function (data) {
                            layer.close(index);
                            if (data == "success") {
                                table.reload('LAY-list-manage');
                            } else {
                                layer.msg(data);
                            }
                        }
                    });
                });
            }
        }
    };

    $('.layui-btn').on('click', function () {
        var type = $(this).data('type');
        active[type] ? active[type].call(this) : '';
    });
});