# 自定义控件打包规范

# V8.1SP1 以前自定义控件补丁包格式

​ 如:自定义控件A.zip

​ zip包含文件仅有 control.properties,并且V5终端环境已更新自定义控件的补丁包。

​ V8.1SP1 以前版本开发文档参考:后端 · CAP开发文档 · 看云 (kancloud.cn) (opens new window)

# V8.1SP1 以及之后版本自定义控件补丁包格式以及规范

# 补丁包结构:

1681202016024.png

# 兼容低版本的补丁包结构(此结构在V8.1SP1以前、以及高版本均兼容此补丁包格式,但V8.1SP1以前需要终端自行按照原逻辑进行补丁包文件的安装部署,此包结构仅对补丁包维护可以共用一个zip文件。):

1681202048272.jpg

# 制作升级包(新的补丁包结构)

V8.1SP1 依据自己开发的文件结构,根节点为seeyon目录

1681202078680.png

V8.1SP2 新增 V8.1SP2 变更点后端文件:class文件、spring.xml、国际化文件, 需要添加一层目录:custom+{key} key:来自于config.json 里定义的key值 ​ 目前自定义控件仅支持加载后端class文件、spring.xml文件(加载spring Bean)、国际化文件

1681202103419.png

# 制作config.json包描述

V8.1SP1

config.json需要在一行内写完,不能换行(云端需要),建议使用在线json压缩

config.json

  • {
  • “sourceCode”: “82951704012123”, ## 资源编码,每次需要通过UUID生成一个唯一值
  • “cloudType”: 3, ## 资源类型,默认3 自定义控件
  • “sourceName”: “富文本2”, ## 资源名称
  • “description”: “自定义组件的第一个富文本组件”, ## 资源描述
  • “restart”: 1, ## 是否需要重启,如果有java文件,需要重启 0 不需要,1需要
  • “sourceVersion”: “V1.2.0”, ## 资源版本 格式类似V1.2.0
  • “supportVersion”: “V8.0SP1,V8.0SP2”, ## 支持版本
  • “developer”: “王鑫鑫”, ## 开发人员
  • “supportTerminal”: “PC,MOBIlE,All”, ## 支持终端
  • “createTime”: “2021-10-27 13:36:25”, ## 出厂时间,创建时间
  • “key”:”richText88826600909”, ## 控件key 和 控件代码中的key一致,需要唯一
  • “pluginId”:”formBankRichText2Ctrl”, ## 控件pluginId 和 控件代码中的pluginId一致,需要唯一
  • “controlType”: “text”, ## 目前只支持text 此字段需要和mappingStandardCtrlType 中的一致
  • “beanIds”:”userId,userDao” ## 8.2新加
  • }

# V8.1SP2新增

  config.json:
   1. `beanIds` 字段定义需要校验的bean ; 多个以 `英文` 逗号拼接
   2. `key` : `控件英文名称`; 例如: richText1648797608000 ,开发自行定义
   3. `supportVersion`:ALL 如果包含此值,则该控件支持所有所有平台版本

# 压缩为zip文件

手动压缩,文件名称和控件名称保持一致
编撰人:xuecx