💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# 新建、编辑技术组件 新建编辑组件,打开对应java类,鼠标光标要在类内部。如图: ![](https://img.kancloud.cn/6e/73/6e73518101ff70045de8f0c5be7a3ab4_1040x735.jpg) > 光标在空行,新增组件,光标在组件方法上,编辑组件 新建时组件添加java类最末尾位置 ***** # 技术组件方法信息描述 组件的方法信息包含组件综合信息和参数信息两部分。 综合信息中 组件名称、实现名称、版本号必填。参数信息可以为空 ## 综合信息 ![](https://img.kancloud.cn/be/a1/bea16fe94a974dda4fa7411d60f62910_750x750.jpg) ### 实现名称 生成的组件java方法名称,必填 ### 组件名称 组件名称,即交易开发中拖拽可见的名称,必填 ### 组件风格 默认返回类型。判断型:返回成功、失败;处理型:返回成功;选择型:返回成功、失败、异常 ### 组件类型 暂时只支持同步类型,异步类型无效,如果需要异步组件,在组件代码中自行实现 ### 组件版本 组件版本号,格式:1.0.0 ,必填 ### 是否过时组件 标识组件是否过时。[过时组件介绍](https://www.kancloud.cn/book/frank258jun/componentlib/preview/%E8%BF%87%E6%97%B6%E7%BB%84%E4%BB%B6%E4%BB%8B%E7%BB%8D.md) ### 中文注释 组件添加注释 ### 返回状态 定义组件有几种返回状态,在交易流程图表现为组件可以有几个输出分支 ### 异常处理 代码增加try-catch代码块,单独finally无效 ***** ## 参数信息 参数配置包含出参和入参,其配置方法一致 ![](https://img.kancloud.cn/85/03/8503f5107491665edb787e3b1bfb708f_750x750.jpg) 点击增加图标,弹出参数配置框,填写参数名称、中文名称、选择参数类型,如图: ![](https://img.kancloud.cn/09/2f/092fe36ec2db1a61a562c5bf80dd6f06_681x678.jpg) ***** # 组件源码说明 技术组件新增后,在java类中(类文件最后面)生成对于的组件方法,内容,如图: ![](https://img.kancloud.cn/56/ab/56ab93e7049de888e4b9d035b5aa086b_1947x1047.jpg) ## 组件注释 组件的注释、入参、出参、返回值等 ## @Component 组件的基本信息,label=组件名称,同一个组件类内,组件名称不能重复。 ## @InParams 组件的输入参数定义,明确参数的数量、顺序、类型 ## @OutParams 组件的输出参数定义,明确参数的数量、顺序、类型,可以定义多个输出参数。 多个出参返回代码示例:ResultBase.newSuccessResult(out1,out2,out3),out可以是任意Object类型 ## @Returns 定义组件返回状态,根据组件类型不同,可以包含不同的返回状态,默认有成功、失败、异常,若需要其他返回状态,可以在组件编辑弹出框自定义增加返回状态 组件定义的返回状态在交易中的使用。如图: ![](https://img.kancloud.cn/39/30/39309579e68cf6e99d45887e23543688_767x580.jpg) 交易流程设计时根据组件的返回状态不同,画不同的业务 处理逻辑 ## 组件代码 组件代码,如图: ![](https://img.kancloud.cn/e2/6a/e26a2955c3b32f8c176fd046b74685aa_1640x491.jpg) 组件定义了几种返回状态,代码中就要根据逻辑处理几种返回值 /** * <b>方法描述:</b> 平台字典 <br/> * <b>创建者:</b> Anonymous <br/> * <b>创建时间:</b> 2018-06-07 21:53:51 <br/> * * @param dict 入参|字典名称|{@link java.lang.String} * @param key 入参|字典key|{@link java.lang.String} * @param value 出参|字典值|{@link java.lang.String} * @return 0 失败<br/> * 1 成功<br/> */ @Component(label = "平台字典", style = "判断型", type = "同步组件", comment = "获取平台级别的字典", version = "1.0.0", deprecated = false, author = "Anonymous", date = "2018-06-07 09:53:51") @InParams(param = { @Param(name = "dict", comment = "字典名称", type = java.lang.String.class), @Param(name = "key", comment = "字典key", type = java.lang.String.class) }) @OutParams(param = { @Param(name = "value", comment = "字典值", type = java.lang.String.class) }) @Returns(returns = { @Return(id = "0", desp = "失败"), @Return(id = "1", desp = "成功") }) public static ResultBase P_getPlatDict(String dict, String key) { String value = DictManager.getPlatDictValue(dict, key); if (StringUtil.isEmpty(value)) return ResultBase.newFailureResult("TPTK0015", "获取平台字典错误空值,key=" + key); return ResultBase.newSuccessResult(value); } /** * <b>方法描述:</b> 银行字典 <br/> * <b>创建者:</b> Anonymous <br/> * <b>创建时间:</b> 2018-06-07 21:53:51 <br/> * * @param dict 入参|字典名称|{@link java.lang.String} * @param key 入参|字典key|{@link java.lang.String} * @param value 出参|字典值|{@link java.lang.String} * @return 0 失败<br/> * 1 成功<br/> */ @Component(label = "银行字典", style = "判断型", type = "同步组件", comment = "获取银行级别的字典", version = "1.0.0", deprecated = false, author = "Anonymous", date = "2018-06-07 09:53:51") @InParams(param = { @Param(name = "dict", comment = "字典名称", type = java.lang.String.class), @Param(name = "key", comment = "字典key", type = java.lang.String.class) }) @OutParams(param = { @Param(name = "value", comment = "字典值", type = java.lang.String.class) }) @Returns(returns = { @Return(id = "0", desp = "失败"), @Return(id = "1", desp = "成功") }) public static ResultBase P_getBankDict(String dict, String key) { String value = DictManager.getBankDictValue(dict, key); if (StringUtil.isEmpty(value)) return ResultBase.newFailureResult("TPTK0016", "获取银行字典错误空值,key=" + key); return ResultBase.newSuccessResult(value); } /** * <b>方法描述:</b> 银行字典 <br/> * <b>创建者:</b> Anonymous <br/> * <b>创建时间:</b> 2018-06-07 21:53:51 <br/> * * @param dict 入参|字典名称|{@link java.lang.String} * @param key 入参|字典key|{@link java.lang.String} * @param value 出参|字典值|{@link java.lang.String} * @return 0 失败<br/> * 1 成功<br/> */ @Component(label = "应用字典", style = "判断型", type = "同步组件", comment = "获取应用级别的字典", version = "1.0.0", deprecated = false, author = "Anonymous", date = "2018-06-07 09:53:51") @InParams(param = { @Param(name = "dict", comment = "字典名称", type = java.lang.String.class), @Param(name = "key", comment = "字典key", type = java.lang.String.class) }) @OutParams(param = { @Param(name = "value", comment = "字典值", type = java.lang.String.class) }) @Returns(returns = { @Return(id = "0", desp = "失败"), @Return(id = "1", desp = "成功") }) public static ResultBase P_getAppDict(String dict, String key) { String value = DictManager.getAppDictValue(dict, key); if (StringUtil.isEmpty(value)) return ResultBase.newFailureResult("TPTK0017", "获取应用字典错误空值,key=" + key); return ResultBase.newSuccessResult(value); }