on/utter

扩展底座:通道执行


Methods

(static) onApp($inited) → {Object}

「标准」Ex.onApp

1.基本介绍

使用应用数据初始化,自动加载应用配置数据

     let $inited = {};
     $inited.type = "ENTITY";
     const form = Ex.yoForm(this, null, Ex.onApp($inited));

本函数追加的核心字段

字段名 含义
appName 应用程序名称,直接从Ux.isInit()获取的数据中读取。
namespace 当前应用名空间,暂时使用cn.originx.前缀,调用toNamespace方法(后期会修正和更改)。
active 是否激活当前记录,如果不包含active则默认为true。

2.核心点

此处最重要的一点就是namespace的计算,该名空间的计算目前使用固定值cn.originx.前缀,后期考虑使用环境变量或者其他手段进行计算和配置。

在Ox平台开第二个应用时候,名空间的计算会纳入到开发计划中,主要牵涉I_API/I_JOB/I_SERVICE三张表的数据读取。

Parameters:
Name Type Description
$inited Object

初始化应用数据

Returns:

返回最终数据

Type
Object

(static) onRelation(current, config, $defineMap) → {Object}

「标准」Ex.onRelation

1.基本介绍

计算关系专用函数,该函数可计算两种关系:

  • 传入$defineMap:执行关系定义的计算,对应M_RELATION表。
  • 未传入$defineMap:执行关系数据的计算(实际关系),在目前CMDB中则是RL_DEVICE_RELATION表。

2.字段说明

在CMDB的关系计算中,关系主要分为两部分(上游和下游)

  • up:上游关系
  • down:下游关系

此处的config中的updown存储了上下游关系计算时的基础配置数据(元数据)。

Parameters:
Name Type Description
current Object

当前节点的关系处理

config Object

上下游专用配置处理

$defineMap Object

定义的关系关联数据

Returns:

分组过后的关系信息

Type
Object

(static) onRelationIdentifiers(identifier, source, definition) → {Object}

「标准」Ex.onRelationIdentifiers

1.基本介绍

计算关系的 identifier 专用函数,返回的数据结构如:

{
    "up": [],
    "down": []
}
  • up: 上游关系数据。
  • down: 下游关系数据。

2.函数代码流程

  1. 先从X_CATEGORY分类表中(每一个分类对应一个identifier)提取和传入模型标识符匹配的分类数据。
  2. 读取当前模型标识符的所有父类(包括祖辈)直到根节点。
  3. 展开树中检索和当前模型标识符匹配的节点(二次计算)。
  4. 计算相关的所有上游下游数据信息。

3.关系结构

整体的关系结构如:

    A     -------   B
   / \             / \
  A1  A2          B1  B2

如上图结构中

  1. 若计算A2B
    1. A2到B
    2. A到B
  2. 若计算A2B1
    1. A2到B
    2. A2到B1
    3. A到B1
    4. A到B

计算两个节点之间关系时,实际上是两颗树之间任意节点的关联计算(两两计算,只要有定义就计算)。

Parameters:
Name Type Description
identifier String

统一标识符

source Array

关系数据源

definition Array

关系定义数据源

Returns:

返回关系数据对象

Type
Object

(static) onRelationType(reference, record) → {undefined|Object}

「标准」Ex.onRelationType

1.基本介绍

计算关系类型专用函数,根据关系定义计算当前关系的类型。

2.类型表

CMDB系统定义的关系类型如:

类型值 类型名
containment 包含
deployed 运行于
connection 连接
dependency 依赖
Parameters:
Name Type Description
reference Object | ReactComponent

React对应组件引用

record Object

当前数据记录

Returns:

返回唯一关系值

Type
undefined | Object

(static) onTree(keys, data, config) → {Array}

「标准」Ex.onTree

1.基本介绍

树形菜单专用处理函数

     const calculated = Ex.onTree(selected, data, {
         mode: $selection.mode,
         tree: config.tree,
     });

2.基础结构

2.1.树结构

参考Ux.toTreeArray文档。

2.2.树选择

选择模式参考Ux.Tree文档。

Parameters:
Name Type Description
keys Array

配置数据信息

data Array

树相关数据源

config Object

树相关配置

Returns:

返回最终树信息

Type
Array