def get_type(node):
    """
    用于判断树形结构节点展示的展示模板类型
    共6种条件，6种条件的组合共有10种情况(加other共11种)
    按照优先级，判断条件依次为
    1.搜索命中：node.get("is_selected", -1) == 1
    2.标准节点：node.get('me_type', '') == 'standard'
    3.下面有标准的节点：node.get('has_standard', 0) == 1
    4.count=0的节点：node['dataset_count'] == 0
    5.根节点：node.get('loc', -2)==-1
    6.普通节点
    """
    if node.get("is_selected", -1) == 1:
        if node.get("me_type", "") == "standard":
            return "curstandard"
        if node.get("has_standard", 0) == 1:
            return "curhasstandard"
        return "current"
    if node.get("has_standard", 0) == 1 and node.get("loc", -2) == -1:
        return "rootstandard"
    if node.get("me_type", "") == "standard" and node["dataset_count"] == 0:
        return "zerostandard"
    if node.get("has_standard", 0) == 1 and node["dataset_count"] == 0:
        return "zerohasstandard"
    if node.get("me_type", "") == "standard":
        return "standard"
    if node.get("has_standard", 0) == 1:
        return "hasstandard"
    if node.get("loc", -2) == -1:
        return "root"
    if node["dataset_count"] == 0:
        return "zero"
    return "other"