"use strict";
layui.extend({
    common    :   'js/common'
}).use(['jquery','common','form'],function(){
    var $ = layui.jquery;


    //  页面元素
    var $node = {
        //  搜索框
        searchInput     :   $('#search_text'),
        //  搜索结果列表
        searchList      :   $('#select_content'),
        //  机构名称表单
        orgNameInput    :   $('#org_name'),
        //  原上级机构表单
        oldParentName   :   $('#old_parent_name'),
        //  上级机构表单
        pidInput        :   $('input[name="pid"]'),
        //  取消按钮
        resetBtn        :   $('button[type="reset"]')
    };

    //  搜索检索时需要过滤的机构位置
    var excludePosition = undefined;
    var orgType = null;
    //  获取机构信息
    $.ajax({
        url     :   '/permissions/org/get/' + pageData.orgId,
        success :   function(result){
            var entity = result.data;
            //  填充表单数据
            $node.orgNameInput.val(entity.name);
            $node.oldParentName.val(entity.parentName);
            excludePosition = entity.position;
            orgType = entity.orgType;

            if (orgType == 3){
                $("#tips").show();
                $("#parent_entity .must").remove();
                $("#parent_entity input[name='pid']").removeAttr("lay-verify");
            }
        }
    });

    //  上级机构模糊搜索
    (function(){
        //  输入检索
        $node.searchInput.on('input propertychange',function () {
            var name = $(this).val();
            if (name){
                $.ajax({
                    url     :   '/permissions/org/getListByLikeName',
                    data    :   {
                        name            :   name,
                        excludePosition :   excludePosition
                    },
                    success :   function(result){
                        //  清空dd
                        $node.searchList.children().each(function () {
                            $(this).remove();
                        });
                        if (result.list.length) {
                            result.list.forEach(function (item) {
                                if (!!orgType && orgType == item.orgType){
                                    $node.searchList.append('<dd lay-value="' + item.id + '" class="">' + item.name + '</dd>')
                                }
                            });
                            $node.searchList.show();
                        }
                    }
                });
            }
        });

        //  选中搜索结果
        $(document).on('click','#select_content dd',function () {
            $node.searchInput.val($(this).text());
            $node.pidInput.val($(this).attr('lay-value'));
            $(this).addClass('layui-this').siblings().removeClass('layui-this');
            $node.searchList.hide();
        });

        $node.searchInput.on('focus',function () {
            if ($(this).val()) {
                $node.searchList.show();
            }
        });

    })();

    //  点击取消事件
    $node.resetBtn.on('click',function(){
        //  关闭当前页面弹窗
        var index = parent.layer.getFrameIndex(window.name);
        parent.layer.close(index);
    });

    layui.form.on("submit(entity_submit_event)",function(data){
        data.field.id = pageData.orgId;
        $.ajax({
            url     :   '/permissions/org/transfer',
            data    :   data.field,
            type    :   'POST',
            success :   function(result){
                if (result.data){
                    $node.resetBtn.click();
                    parent.location.reload();
                }else {
                    layer.alert("迁移失败");
                }
            }
        })
    });

});