Appearance
🛠️ 设计进阶操作
自定义表头输出表格功能
由于模型属性的增加,相应表格输出的需求也愈加丰富,故设计模块新增自定义表头输出表格功能,操作步骤如下:
选定视图下的设计图内的指定图层,点击顶部菜单栏编辑分页中的”自定义属性导出“按键打开如下弹窗。

在“表头信息”字段内输入本图层内需要输出的表头内容,表头与表头文字中间使用”,”进行分隔。输入完成后选择导出的范围后点击确认进行表格的输出。示例如下:


功能视图架构协议文档导出
在功能视图上使用架构协议文档导出功能需要先确保当前设计图状态为“可写”且设计图上存在符合输出规范的模型内容后,再进行以下操作:
点击设计图顶部菜单栏中开发功能分页下的“架构协议文档”按键

在弹出下载成功的弹出后,可查看本设计图内输出的架构协议文档内容


符合架构协议文档导出的设计图要求如下:
- 设计图内至少拥有4层及以上的模型层级结构
- 设计图第4层级的模型属性需要包含属性名称为“所属系统”的多选类型
逻辑视图架构协议文档
在逻辑视图上使用架构协议文档导出功能需要先确保当前设计图状态为“可写”且设计图上存在符合输出规范的模型内容后,再进行以下操作:
选中模型后或未选中画布任何内容时点击设计图顶部菜单栏中开发功能分页下的“架构协议文档”按键

在弹出下载成功的弹出后,可查看选中模型内或整个设计图输出的架构协议文档内容


符合架构协议文档导出的设计图要求如下:
- 设计图内或选中模型内至少拥有4层及以上的模型层级结构
- 建议设计图内的所有线路详情页都填写“线接口类型”字段
- 文档内的图片需在设计图下方进行过导出操作后才可正常显示

物理视图模型重量统计
选择无子级模型的重量统计属性进行填写

设计图中所有无子级模型的重量统计属性填写完毕后,点击开发模块下的重量统计按键

计算结果成功返回至需求页面,页面如下图

物理视图管路重量统计
选择需要统计的线路属性进行填写

该设计图中所有需要统计的线路属性都编辑完毕后,点击开发模块下的计算管路重量按键

计算结果成功返回至需求页面,页面如下图

物理视图设备协议书导出
在设计图上使用物理视图设备协议书导出功能需要先确保设计图状态为“可写”且设计图上存在含协议书内容的模型后,再进行以下操作:
在选中含协议书内容的模型后,点击开发模块的“设备协议文档”按键

在弹出下载成功的弹出后,可查看该模型输出的设备协议书内容
- 设备模型的内容tab被禁用后,导出的协议书相关章节在标题上标注“不适用”


- 设备模型的功能要求tab在输出的协议书时,将属性分组名称作为下级标题,属性内容作为正文内容平铺展示。


物理视图设备协议导出半通用设置
在原先设备协议文档的基础上,引入标准模板的概念。标准模板的变量都预设好位置与格式,设计模块的模型属性调用模板内的变量即可输出属性在模板指定位置的设备协议文档。
以标准模板的封面为例,该页面存在4个变量(见下图红框内)为实现封面的正确输出,进行以下操作:

新建模型后在属性编辑时输入以下内容(见下图红框内),注意此处变量名称与其名称需要一一对应。
在模型属性上填入相应的内容后,点击顶部菜单中的开发分页里找到“设备协议文档”,点击后即可导出。


导出效果如下:

- 本功能文档变量替换支持的模型属性类型为单行文本、多行文本、单选、多选与表格。
设计模块关联信号概况
关联信号概况是设计图的与其他视图关联概览。关联信号概况有模型需求关联、模型物理关联、关联信号列表、物理信号分配与模型逻辑关联五个类型,其具体情况如下:
1. 模型需求关联
适用场景
适用于功能视图、逻辑视图、物理视图
功能说明
展示当前设计图层的模型与需求进行关联的概况

- 勾选模型关联项后点击搜索框右侧的导出按键,可导出对应的模型需求关联表
2. 模型物理关联
适用场景
适用于ICD模式开启的逻辑视图
功能说明
展示当前设计图层的模型与物理模型进行关联的概况

- 勾选模型物理关联项后点击搜索框右侧的导出按键,可导出对应的模型物理关联表
3. 关联信号列表
适用场景
适用于ICD模式开启的逻辑视图
功能说明
展示当前设计图层已进行模型物理关联的信号内容概况

- 勾选关联信号项后点击搜索框右侧的导出按键,可导出对应的关联信号表
4. 物理信号分配
适用场景
适用于ICD模式开启的逻辑视图
功能说明
展示当前项目内所有物理视图的未关联信号内容概况

5. 模型逻辑关联
适用场景
适用于ICD模式开启的物理视图
功能说明
展示当前设计图层的模型与逻辑模型进行关联的概况

- 勾选物理模型关联项后点击搜索框右侧的导出按键,可导出对应的模型逻辑关联表
设计模块关联功能
1.建立关联
需求关联如下:
在设计模块的新增关联需求关联页面里可以找到项目下所有的需求内容,勾选在本视角所需的待分配需求内容

将需求链接里的待分配需求项拖拽至设计图中的模型上进行关联

待关联需求链接添加勾选框选择,可同时勾选或框选多条链接(框选时以勾选框为起点)进行拖拽操作关联至模型,无勾选状态不能进行拖拽操作

勾选或框选多条链接后可进行批量关联与删除。

需求待选区内,在需求表格显示该需求项是否被选中至待选区内

需求待选区内,在需求表格显示该需求项被关联的模型视图链接

设计图里已关联需求的模型会在模型属性中的“绑定需求”显示所有被该模型关联的需求项,同时当该模型为最小单位时,其绑定的需求项的子需求项也同时绑定至本模型上。
- 当设计图关联多层子级的需求项时,拖拽绑定模型后,该模型设计图内继承该关联需求项的子级需求项
- 模型关联需求项后,在”绑定需求“属性分类中点击需求项/需求表名称,可跳转至该需求项的需求表后且选中该需求项
2.解除关联
在设计图上将需求关联解除需要选中模型后,在默认分类下的关联关系tab打开绑定需求分组,根据下方红框操作:


将逻辑-物理关联解除需要在逻辑视图上选中逻辑模型后,在默认分类下的关联关系tab打开物理关联映射分组,根据下方红框操作:


- 若关联物理设备下已存在数据字传输,关联关系解除后会将涉及本模型信号的数据字一并删除。
连线与需求的绑定
为支持更多样的需求绑定,现将新增连线与需求的绑定功能。具体操作如下:
确保设计图状态为“可写”后,选中连线后在其侧边属性栏内的需求关联tab内点击“前往关联”按键

在新增关联需求关联页面里可以找到项目下所有的需求内容,勾选在本连线所需的需求内容后点击“确定”即可将连线与需求进行绑定

右侧属性 Tab 配置说明
配置文件路径:/config/tabConfig.json。
本说明用于指导客户配置模型、线和端口的右侧属性 Tab。系统会在选中对象时读取配置,并将对象中尚不存在的 Tab 补充到右侧面板。
配置层级
text
视图(F / L / P)
└─ 对象类型(modelType / linkType / portType)
└─ tab
└─ groupList(分组)
├─ attributeList(属性)
└─ children(子分组,可继续嵌套)视图代码与当前 URL 的对应关系:
| 配置代码 | URL 中应包含的文本 | 视图 |
|---|---|---|
F | functional | 功能视图 |
L | logical | 逻辑视图 |
P | design | 物理视图 |
对象类型:
| 配置键 | 对象 |
|---|---|
modelType | 模型 |
linkType | 线 |
portType | 端口 |
Tab 与分组
Tab 必填字段:
json
{
"id": "portCustomConfig",
"name": "端口配置",
"iconSrc": "",
"classifiedId": "default",
"groupList": []
}| 字段 | 说明 |
|---|---|
id | Tab 的稳定唯一标识。发布后不要修改,否则系统会将其视为新的 Tab。 |
name | Tab 显示名称。 |
iconSrc | 图标路径;没有图标时填空字符串。 |
classifiedId | Tab 分类,通常填 default。 |
groupList | 顶级分组数组。 |
分组必须包含以下字段:
json
{
"name": "基础信息",
"attributeList": [],
"children": []
}children 中的每一项仍是分组对象。界面手动新建分组最多支持 5 层,以避免恶意深层嵌套;系统自动生成分组和属性的运行时 id、uuid、index_sort,客户无需配置这些字段。
属性基本结构
每个属性至少需要:
json
{
"code": "portAlias",
"name": "port_alias",
"describe": "端口别名"
}| 字段 | 说明 |
|---|---|
code | 稳定业务编码,建议使用英文小驼峰,例如 maxSignalCount。 |
name | 内部字段名,建议使用小写下划线,例如 max_signal_count。 |
describe | 页面显示标签,例如“最大信号数”。 |
数据类型与展示控件
sys_data_type 表示属性值的数据类型,sys_widget_type_id 表示页面展示控件。
| 客户需要的属性 | sys_data_type | sys_widget_type_id | value 格式 |
|---|---|---|---|
| 单行文本 | 1(字符串) | 0 | "文本" |
| 下拉选择 | 1(字符串) | 1 | "选项值" |
| 单选 | 1(字符串) | 2 | "选项值" |
| 多选 | 1(字符串) | 3 | ["选项1", "选项2"] |
| 多行文本 | 1(字符串) | 4 | "多行文本" |
| 输入建议/自动补全 | 1(字符串) | 5 | "文本" |
| 表格查看 | 1(字符串) | 6 | 通常为空,数据写入 sheet_data |
| 填空式文本 | 1(字符串) | 7 | "模板内容" |
| 角标式文本 | 1(字符串) | 8 | "角标内容" |
| 级联选择 | 1(字符串) | 9 | "一级/二级/三级" |
| 多级选择 | 1(字符串) | 10 | 由多级选择控件返回 |
| 数值输入框 | 2(数值) | 0 | 100 |
| 数值下拉 | 2(数值) | 1 | 100 |
| 数值单选 | 2(数值) | 2 | 100 |
| 数值多选 | 2(数值) | 3 | [10, 20] |
| 数值滑块 | 2(数值) | 4 | 50 |
| 文件上传 | 3(文件) | 0 | "" 或已上传文件路径 |
值状态
sys_value_type 表示属性值的性质:
| 值 | 含义 | 常见用法 |
|---|---|---|
| 0 | 必填 | 用户必须填写或选择。 |
| 1 | 默认值 | value 为页面初始值。 |
| 2 | 推荐/计算值 | 用于推荐或计算结果。 |
| 3 | 固定值 | 不允许修改,通常同时设置 "disabled": true。 |
常用属性模板
单行文本
json
{
"code": "portAlias",
"name": "port_alias",
"describe": "端口别名",
"sys_data_type": 1,
"sys_widget_type_id": 0,
"sys_value_type": 1,
"value": "PORT_A",
"flow_tips": "请输入便于识别的端口名称"
}下拉选择
json
{
"code": "portRole",
"name": "port_role",
"describe": "端口角色",
"sys_data_type": 1,
"sys_widget_type_id": 1,
"sys_value_type": 1,
"extraDataList": ["输入", "输出", "双向"],
"value": "输入"
}单选
json
{
"code": "enabled",
"name": "enabled",
"describe": "是否启用",
"sys_data_type": 1,
"sys_widget_type_id": 2,
"sys_value_type": 0,
"extraDataList": ["是", "否"],
"value": "是"
}多选
json
{
"code": "signalTypes",
"name": "signal_types",
"describe": "支持信号类型",
"sys_data_type": 1,
"sys_widget_type_id": 3,
"sys_value_type": 1,
"extraDataList": ["离散量", "模拟量", "总线数据"],
"value": ["离散量"]
}多行文本
json
{
"code": "description",
"name": "description",
"describe": "说明",
"sys_data_type": 1,
"sys_widget_type_id": 4,
"sys_value_type": 1,
"value": ""
}数值输入
json
{
"code": "maxSignalCount",
"name": "max_signal_count",
"describe": "最大信号数",
"sys_data_type": 2,
"sys_widget_type_id": 0,
"sys_value_type": 1,
"sys_value_unit_id": "个",
"min_value": 1,
"max_value": 256,
"step": 1,
"value": 16
}数值滑块
json
{
"code": "latency",
"name": "latency",
"describe": "时延",
"sys_data_type": 2,
"sys_widget_type_id": 4,
"sys_value_type": 1,
"sys_value_unit_id": "ms",
"min": 0,
"max": 1000,
"value": 10
}数值输入框使用 min_value、max_value;数值滑块使用 min、max。
文件上传
json
{
"code": "portDocument",
"name": "port_document",
"describe": "端口说明文件",
"sys_data_type": 3,
"sys_widget_type_id": 0,
"sys_value_type": 0,
"value": ""
}级联选择
json
{
"code": "deployArea",
"name": "deploy_area",
"describe": "部署区域",
"sys_data_type": 1,
"sys_widget_type_id": 9,
"sys_value_type": 1,
"extraDataList": [
{
"value": "华北",
"label": "华北",
"children": [
{
"value": "北京",
"label": "北京"
}
]
}
],
"value": "华北/北京"
}可选控制字段
| 字段 | 说明 | 示例 |
|---|---|---|
value | 初始或默认值 | "输入"、10、["A"] |
extraDataList | 下拉、单选、多选、自动补全的候选项 | ["A", "B"] |
sys_value_unit_id | 数值单位 | "ms"、"Mbps"、"个" |
min_value / max_value | 数值输入框范围 | 1 / 256 |
min / max | 数值滑块范围 | 0 / 100 |
step | 数值输入步长 | 1、0.1 |
flow_tips | 悬浮提示 | "请输入 1~256" |
disabled | 是否不可编辑 | true |
invisible | 是否不展示 | true |
can_delete | 是否允许删除 | false |
sheet_data | 表格控件内容 | 表格数据数组 |
notice_list | 属性说明或提示信息 | 说明数据数组 |
通常只需配置 code、name、describe、sys_data_type、sys_widget_type_id、sys_value_type、value,再按控件需要补充候选项、范围和单位。
注意事项
tabConfig.json必须是合法的 JSON。缺少或多写逗号、字符串未使用英文双引号包裹、括号未闭合等格式问题,都可能导致配置文件无法解析,右侧属性 Tab 不会生效。- 修改配置后,请确认 JSON 格式校验通过,并重新打开或刷新设计页面后再检查配置效果。
- Tab 的
id是稳定唯一标识。已发布的 Tab 不应修改其id,否则系统会将其识别为新的 Tab。 - 属性的
value格式必须与所选的数据类型和展示控件匹配,例如多选属性应使用数组,数值属性不应配置为文本字符串。