var token = $.cookie("token");
var keyWord; //关键字
var tree; //部门树
var table = $("#table1"); //右边表格
var userid;
var usercode;
var username;
var deid = 0;
$(document).ready(function () {
    bindtree();
    initTable();
    bindrole();
    getCharacter();
    bumen();
    // 获取坐席组
    getSeatGroup();
    //搜索按钮
    $(".searchGo").click(function () {
        deid = $("#testInput1").val();
        initTable(deid);
    });

    //===============添加功能开始=============================
    laydate.skin("molv");
    //用户生日
    laydate({
        elem: "#ygbirth",
        event: "focus",
        istoday: true,
        format: "YYYY-MM-DD",
        // 分隔符可以任意定义，该例子表示只显示年月
    });
    //下拉
    $(".inps").focus(function () {
        $(this).siblings(".addTree").css("display", "block");
    });

    $(".xl").click(function () {
        var xl = $(this).siblings(".addTree");
        if (xl.css("display") == "block") {
            xl.css("display", "none");
        } else {
            xl.css("display", "block");
        }
    });
    $(".addTree").mouseleave(function () {
        $(this).css("display", "none");
    });

    //添加按钮
    $(".add").click(function () {
        $(".addModel").css("display", "block");
    });
    $(".addBtr").click(function () {
        $(".addModel").css("display", "none");
    });

    //保存添加按钮
    $(".addCun").click(function () {
        if (
            $(".add_ygName").val() == "" ||
            $(".add_ygCode").val() == "" ||
            $(".add_pwd").val() == "" ||
            $(".inps1").val() == "" ||
            $(".inps2").val() == ""
        ) {
            layer.confirm("标红内容不允许为空！", {
                btn: ["确定"],
            });
            return;
        } else if ($(".add_pwd").val() !== $(".add_pwd2").val()) {
            layer.confirm("密码输入不一致！", {
                btn: ["确定"],
            });
            return;
        } else {
            var reg = /^[1-9]\d*$/;
            if (!reg.test($(".add_ygCode").val())) {
                layer.confirm("工号必须为正整数！", {
                    btn: ["确定"],
                });
                return;
            }

            addCun();
        }
    });
    //  用户部门
    function bumen() {
        $("#testInput1").empty();
        $("<option value=''>请选择</option>").appendTo("#testInput1");
        $.getJSON(
            huayi.config.callcenter_url + "Department/GetDeptList",
            {
                iscbdw: 0,
                token: $.cookie("token"),
            },
            function (data) {
                if (data.state.toLowerCase() == "success") {
                    var content = data.data;
                    $(content).each(function (i, n) {
                        $(
                            "<option value='" +
                                n.F_DeptId +
                                "'>" +
                                n.F_DeptName +
                                "</option>"
                        ).appendTo("#testInput1");
                    });
                    $("#testInput1").comboSelect();
                }
            }
        );
    }
    //所属角色列表

    $(".xlAdd_one ul").on("click", "li", function () {
        $(".inps1").val($(this).html());
        $(".add_roleid").val($(this).attr("data-id"));
        $(this).parent().parent().css("display", "none");
    });
    //***********************添加功能结束=============================

    //=======================修改功能开始==============================
    laydate.skin("molv");
    //用户生日
    laydate({
        elem: "#chan_ygbirth",
        event: "focus",
        istoday: true,
        format: "YYYY-MM-DD",
        // 分隔符可以任意定义，该例子表示只显示年月
    });

    $(".change").click(function () {
        if (userid) {
            $(".changeModel").css("display", "block");
            getYG();
        } else {
            layer.confirm("请选择要修改的行！", {
                btn: ["确定"],
            });
            return;
        }
    });
    //所属角色列表

    $(".xlChan_four ul").on("click", "li", function () {
        $(".inps4").val($(this).html());
        $(".change_roleid").val($(this).attr("data-id"));
        $(this).parent().parent().css("display", "none");
    });

    //关闭按钮
    $(".changeBtr").click(function () {
        $(".changeModel").css("display", "none");
    });

    //保存按钮
    $(".changeCun").click(function () {
        if (
            $(".change_ygName").val() == "" ||
            $(".change_ygCode").val() == "" ||
            $(".change_did").val() == "" ||
            $(".change_roleid").val() == ""
        ) {
            layer.confirm("标红内容不允许为空！", {
                btn: ["确定"],
            });
            return;
        }
        var reg = /^[1-9]\d*$/;
        if (!reg.test($(".change_ygCode").val())) {
            layer.confirm("工号必须为正整数！", {
                btn: ["确定"],
            });
            return;
        }
        $.post(
            huayi.config.callcenter_url + "UserAccount/EditUsers",
            {
                token: token,
                userid: $(".change_id").val(),
                usercode: $(".change_ygCode").val(),
                username: $(".change_ygName").val(),
                password: $(".change_pwd").val(),
                worknumber: $(".change_ygCode").val(),
                deptid: $(".change_did").val(),
                roleid: $(".change_roleid").val(),
                isseat: $('.change_hwb input[name="huwu"]:checked ').val(),
                searright: $('.change_zxqx input[name="zxqx"]:checked ').val(),
                sex: $('.changeSex input[name="sex"]:checked ').val(),
                F_IsSms: $('.changeIsSms input[name="IsSms"]:checked').val(),
                mobile: $(".change_mobile").val(),
                telphone: $(".change_telphone").val(),
                birth: $("#chan_ygbirth").val(),
                GroupId: $("#changeGroupId").val(),
                remark: $(".change_remark").val(),
            },
            function (data) {
                data = JSON.parse(data);
                if (data.state.toLowerCase() == "success") {
                    layer.msg("修改成功！");
                    $(".change_id").val("");
                    $(".change_ygCode").val("");
                    $(".change_ygName").val("");
                    $(".change_pwd").val("");
                    $(".change_did").val("");
                    $(".change_roleid").val("");
                    $(".change_mobile").val("");
                    $(".change_telphone").val("");
                    $("#chan_ygbirth").val("");
                    $(".change_remark").val("");
                    $("#changeGroupId").val("");
                    initTable();

                    $(".changeModel").css("display", "none");
                }
            }
        );
    });

    //***********************修改功能结束==============================

    //=======================重设功能开始==============================
    $(".again").click(function () {
        if (usercode) {
            $(".againModel").css("display", "block");
            $(".again_ygName").val(username);
            $(".again_ygCode").val(usercode);
            $(".again_pwd").val("");
            $(".again_pwd2").val("");
        } else {
            layer.confirm("请选择要重设密码的用户！", {
                btn: ["确定"],
            });
            return;
        }
    });
    //关闭按钮
    $(".agBtr").click(function () {
        $(".againModel").css("display", "none");
    });
    //确定按钮
    $(".again_Cun").click(function () {
        if ($(".again_pwd").val() !== $(".again_pwd2").val()) {
            layer.confirm("密码不一致，请重新输入！", {
                btn: ["确定"],
            });
            return;
            $(".again_pwd2").val("");
        } else {
            $(".againModel").css("display", "none");
            cs(usercode); //重设密码
        }
    });
    //***********************重设功能结束==============================

    //=======================禁用功能开始==============================
    $(".ban").click(function () {
        if (userid) {
            $(".banModel").css("display", "block");
        } else {
            layer.confirm("请选择行！", {
                btn: ["确定"],
            });
            return;
        }
    });
    //关闭按钮
    $(".banBtr").click(function () {
        $(".banModel").css("display", "none");
    });
    //取消按钮
    $(".banReturn").click(function () {
        $(".banModel").css("display", "none");
    });

    //确定按钮
    $(".banSure").click(function () {
        bu(1);
    });
    //***********************禁用功能结束==============================

    //=======================启用功能开始==============================
    $(".using").click(function () {
        if (userid) {
            $(".useModel").css("display", "block");
        } else {
            layer.confirm("请选择行！", {
                btn: ["确定"],
            });
            return;
        }
    });
    //关闭按钮
    $(".useBtr").click(function () {
        $(".useModel").css("display", "none");
    });
    //取消按钮
    $(".useReturn").click(function () {
        $(".useModel").css("display", "none");
    });
    //确定按钮
    $(".useSure").click(function () {
        bu(0);
    });
    //***********************启用功能结束==============================

    //=======================删除功能开始==============================
    $(".del").click(function () {
        if (userid) {
            layer.confirm(
                "确定要删除选中的用户吗？",
                { btn: ["确定", "取消"] },
                function () {
                    $.post(
                        huayi.config.callcenter_url + "UserAccount/WLDelUsers",
                        { token: token, ids: userid },
                        function (data) {
                            data = JSON.parse(data);
                            if (data.state.toLowerCase() == "success") {
                                initTable();
                                layer.confirm("删除成功！", {
                                    btn: ["确定"],
                                });
                            }
                        }
                    );
                }
            );
        } else {
            layer.confirm("请选择行！", {
                btn: ["确定"],
            });
            return;
        }
    });
    //***********************删除功能结束==============================

    table.on("click-row.bs.table", function (e, row, ele) {
        $(".success").removeClass("success"); //去除之前选中的行的，选中样式
        $(ele).addClass("success"); //添加当前选中的 success样式用于区别
        userid = row.F_UserId;
        usercode = row.F_UserCode;
        username = row.F_UserName;
    });
});

function bindtree() {
    $.getJSON(
        huayi.config.callcenter_url + "Department/GetDeptList",
        { token: $.cookie("token") },
        function (result) {
            if (result.state.toLowerCase() == "success") {
                tree = $.fn.zTree.init($("#treeDemo"), setting1, result.data);
                $.fn.zTree.init($("#xlAdd_depTree"), setting2, result.data);
                $.fn.zTree.init($("#xlChan_depTree"), setting3, result.data);
            }
        }
    );
}
//获取所属部门
var setting1 = {
    data: {
        key: {
            name: "F_DeptName",
        },
        simpleData: {
            enable: true,
            idKey: "F_DeptId",
            pIdKey: "F_PartentId",
            rootPId: 0,
        },
    },
    callback: {
        onClick: zTreeOnClick,
    },
};
function zTreeOnClick(event, treeId, treeNode) {
    deid = treeNode.F_DeptId;
    initTable(deid);
}

//获取所属部门
var setting2 = {
    data: {
        key: {
            name: "F_DeptName",
        },
        simpleData: {
            enable: true,
            idKey: "F_DeptId",
            pIdKey: "F_PartentId",
            rootPId: 0,
        },
    },
    callback: {
        onClick: ztreeDep,
    },
};
function ztreeDep(event, treeId, treeNode) {
    if (treeNode.level >= 0) {
        $(".inps2").val(treeNode.F_DeptName);
        $(".add_did").val(treeNode.F_DeptId);
    }
}

//获取所属部门
var setting3 = {
    data: {
        key: {
            name: "F_DeptName",
        },
        simpleData: {
            enable: true,
            idKey: "F_DeptId",
            pIdKey: "F_PartentId",
            rootPId: 0,
        },
    },
    callback: {
        onClick: chanaDep,
    },
};
function chanaDep(event, treeId, treeNode) {
    if (treeNode.level >= 0) {
        $(".inps5").val(treeNode.F_DeptName);
        $(".change_did").val(treeNode.F_DeptId);
    }
}

function bindrole() {
    $(".xlAdd_one ul").html("");
    $(".xlChan_four ul").html("");
    $.getJSON(
        huayi.config.callcenter_url + "RoleInfo/GetRoleList",
        { token: token, isall: 1 },
        function (data) {
            var con = data.data;
            for (var i = 0; i < con.length; i++) {
                if ($.cookie("code") != "WLDW") {
                    var html =
                        "<li data-id=" +
                        con[i].F_RoleId +
                        ">" +
                        con[i].F_RoleName +
                        "</li>";
                    $(html).appendTo(".xlAdd_one ul");
                    $(html).appendTo(".xlChan_four ul");
                } else {
                    if (con[i].F_RoleName == "三级网络单位") {
                        var html =
                            "<li data-id=" +
                            con[i].F_RoleId +
                            ">" +
                            con[i].F_RoleName +
                            "</li>";
                        $(html).appendTo(".xlAdd_one ul");
                        $(html).appendTo(".xlChan_four ul");
                    }
                }
            }
        }
    );
}

//保存所调方法
function addCun() {
    $.post(
        huayi.config.callcenter_url + "UserAccount/AddUsers",
        {
            token: $.cookie("token"),
            usercode: $(".add_ygCode").val(),
            username: $(".add_ygName").val(),
            password: $.md5($(".add_pwd").val()),
            deptid: $(".add_did").val(),
            roleid: $(".add_roleid").val(),
            isseat: $('.addhwb input[name="huwu"]:checked ').val(),
            searright: $('.addzxqx input[name="zxqx"]:checked ').val(),
            sex: $('.addSex input[name="sex"]:checked ').val(),
            F_IsSms: $('.addIsSms input[name="IsSms"]:checked').val(),
            mobile: $(".add_mobile").val(),
            telphone: $(".add_telphone").val(),
            birth: $(".add_birth").val(),
            GroupId: $("#addGroupId").val(),
            remark: $(".add_remark").val(),
        },
        function (data) {
            data = JSON.parse(data);
            if (data.state.toLowerCase() == "success") {
                $(".add_ygCode").val("");
                $(".add_ygName").val("");
                $(".add_pwd").val("");
                $(".add_pwd2").val("");
                $(".add_did").val("");
                $(".add_roleid").val("");
                $(".add_mobile").val("");
                $(".add_telphone").val("");
                $(".add_birth").val("");
                $(".add_remark").val("");
                $(".inps1").val("");
                $(".inps2").val("");
                $(".addhwb input").removeAttr("checked");
                $(".addzxqx input").removeAttr("checked");
                $(".addSex input").removeAttr("checked");
                $(".addIsSms input").removeAttr("checked");
                $("#addGroupId").val(""); // 坐席组
                layer.msg("添加成功！");
                table.bootstrapTable("refresh");
                $(".addModel").css("display", "none");
            }
        }
    );
}

//获取用户信息
function getYG() {
    $.getJSON(
        huayi.config.callcenter_url + "UserAccount/GetUser",
        { token: token, usercode: usercode, userid: userid },
        function (data) {
            if (data.state.toLowerCase() == "success") {
                var ygcon = data.data;
                $(".change_id").val(ygcon.F_UserId); //员工ID
                $(".change_ygCode").val(ygcon.F_UserCode); //员工工号
                $(".change_pwd").val(ygcon.F_Password); //员工密码
                $(".change_ygName").val(ygcon.F_UserName); //员工姓名
                //$('.change_ygCode').val(ygcon.F_WorkNumber); //员工工号
                $(".xlChan_four ul li").each(function (i, n) {
                    if ($(n).attr("data-id") == ygcon.F_RoleId) {
                        $(".inps4").val($(n).text()); //所属角色
                    }
                });
                $(".change_roleid").val(ygcon.F_RoleId);
                $(".inps5").val(ygcon.depname); //所属部门
                $(".change_did").val(ygcon.F_DeptId);
                $(
                    '.change_hwb input[name="huwu"][value="' +
                        ygcon.F_SeatFlag +
                        '"]'
                ).prop("checked", "checked"); //话务标志
                $(
                    '.change_zxqx input[name="zxqx"][value="' +
                        ygcon.F_SeatRight +
                        '"]'
                ).prop("checked", "checked"); //坐席权限
                $(
                    '.changeSex input[name="sex"][value="' +
                        ygcon.F_SexFlag +
                        '"]'
                ).prop("checked", "checked"); //性别
                $(
                    '.changeIsSms input[name="IsSms"][value="' +
                        ygcon.F_IsSms +
                        '"]'
                ).prop("checked", "checked"); //性别
                if (ygcon.F_Birthday && ygcon.F_Birthday != "0001-01-01") {
                    $("#chan_ygbirth").val(ygcon.F_Birthday); //生日
                }
                $(".change_telphone").val(ygcon.F_Telephone); //电话
                $(".change_mobile").val(ygcon.F_Mobile); //手机
                $(".change_remark").val(ygcon.F_Remark); //备注
                $("#changeGroupId").val(ygcon.F_SeartGroupID); //坐席组
            }
        }
    );
}

//重设密码
function cs(ygbh) {
    $.post(
        huayi.config.callcenter_url + "UserAccount/ResetPwd",
        { token: token, usercode: ygbh, pwd: $.md5($(".again_pwd").val()) },
        function (data) {
            data = JSON.parse(data);
            if (data.state.toLowerCase() == "success") {
                layer.msg("重设密码成功！");
                initTable();
            }
        }
    );
}

function bu(state) {
    $.post(
        huayi.config.callcenter_url + "UserAccount/DelUsers",
        { token: token, ids: userid, state: state },
        function (data) {
            data = JSON.parse(data);
            if (data.state.toLowerCase() == "success") {
                initTable();
                $(".banModel").css("display", "none");
                $(".useModel").css("display", "none");
            }
        }
    );
}
//右边表格
function initTable() {
    //先销毁表格
    table.bootstrapTable("destroy");
    //初始化表格,动态从服务器加载数据
    table.bootstrapTable({
        method: "get",
        //使用get请求到服务器获取数据
        url: huayi.config.callcenter_url + "UserAccount/GetList",
        //获取数据的Servlet地址
        striped: true,
        //表格显示条纹
        pagination: true,
        //启动分页
        pageSize: 10,
        //每页显示的记录数
        pageNumber: 1,
        //当前第几页
        pageList: [10, 20, 50, 100],
        //记录数可选列表
        search: false,
        //是否启用查询
        showColumns: false,
        //显示下拉框勾选要显示的列
        showRefresh: false,
        //显示刷新按钮
        sidePagination: "server",
        //表示服务端请求
        //设置为undefined可以获取pageNumber，pageSize，searchText，sortName，sortOrder
        //设置为limit可以获取limit, offset, search, sort, order
        queryParamsType: "undefined",
        queryParams: function queryParams(params) {
            //设置查询参数
            var param = {
                page: params.pageNumber,
                pagesize: params.pageSize,
                token: $.cookie("token"),
                id: deid,
                key: $(".searCon").val(),
                roleId: $("#characterSelect").val(),
            };
            return param;
        },
        onLoadSuccess: function () {
            //加载成功时执行
            //layer.msg("加载成功");
        },
        onLoadError: function () {
            //加载失败时执行
            //layer.msg("加载数据失败", { time: 1500, icon: 2 });
        },
    });
}
/*选中行添加背景颜色*/

function setCode(val, row, index) {
    return index + 1;
}
function setYongState(val) {
    var str = "";
    switch (val + "") {
        case "0":
            str = "正常";
            break;
        case "1":
            str = "禁用";
            break;
    }
    return str;
}

function isActivation(val, row) {
    var createDate = new Date(row.F_CreateOn);
    var lastActiveDate = new Date(row.F_LastActiveTime);
    var createTime = createDate.getTime();
    var lastActiveTime = lastActiveDate.getTime();

    if (createTime === lastActiveTime) {
        return "未激活";
    } else if (createTime < lastActiveTime) {
        return "已激活";
    } else {
        return "-";
    }
}

// 获取角色
function getCharacter() {
    $("#characterSelect").empty();
    $("#characterSelect").append("<option value=''>请选择角色</option>");
    $.ajax({
        type: "get",
        async: false,
        url: huayi.config.callcenter_url + "RoleInfo/GetRoleList",
        data: {
            pageindex: 1,
            pagesize: 100,
            token: $.cookie("token"),
            name: "", //角色名称
        },
        dataType: "json",
        success: function (data) {
            var data = data.rows;
            $.each(data, function (index, value) {
                $("#characterSelect").append(
                    "<option value='" +
                        value.F_RoleId +
                        "'>" +
                        value.F_RoleName +
                        "</option>"
                );
            });
        },
    });
}

// 获取坐席组
function getSeatGroup() {
    $(".seatGroup").empty();
    $(".seatGroup").append("<option value=''>请选择</option>");
    $.ajax({
        type: "get",
        async: false,
        url: huayi.config.callcenter_url + "SeatGroup/GetSeatList",
        data: {
            token: $.cookie("token"),
        },
        dataType: "json",
        success: function (data) {
            var data = data.data;
            $.each(data, function (index, value) {
                $(".seatGroup").append(
                    "<option value='" +
                        value.F_ID +
                        "'>" +
                        value.F_ZXZName +
                        "</option>"
                );
            });
        },
    });
}

$(".exportUser").click(function () {
    var id = deid;
    var key = $(".searCon").val();
    var roleId = $("#characterSelect").val();
    var url =
        huayi.config.callcenter_url +
        "UserAccount/GetList?token=" +
        $.cookie("token");
    url += "&id=" + id + "&key=" + key + "&roleId=" + roleId + "&isdc=2";
    window.location.href = url;
});

document.onkeydown = function (e) {
    // 回车提交表单
    // 兼容FF和IE和Opera
    var theEvent = window.event || e;
    var code = theEvent.keyCode || theEvent.which || theEvent.charCode;
    if (code == 13) {
        initTable();
    }
};
