更新时间:2024-11-13 GMT+08:00
分享

如何为对象自定义API

使用说明

当系统提供的基本操作无法满足需求时,可通过自定义API来实现

如果您的业务设置为聚合关系,则只能在主要方自定义API。

图1 查看操作类型

添加自定义API

  1. 在业务设计页面,选中某个业务对象。
  2. 单击BO属性操作中的“自定义API”,进入编辑自定义API页面。
  3. 单击“新增”,按需添加所需的API。

    • 实例级别:定义API实例的级别,如类型、实例。
    • 动作名称:设置API的动作名称。
    • 请求方法:HTTP请求方法(也称为操作或动作),用于告诉服务您正在请求什么类型的操作。
      • get请求服务器返回指定资源。
      • put请求服务器更新指定资源。
      • post请求服务器新增资源或执行特殊操作。
      • delete请求服务器删除指定资源。
    • 请求对象:单击“添加请求对象”,可添加请求对象,即API请求的输入参数。
    • 返回对象:请求发送后,您会收到的响应,如状态码。
    • 路径:单击“输入path”,添加API的路径,格式为变量放到“{}”中,单词用“_”连接,非变量单词用“-”连接。例如:/meta-bo1s/{meta_bo1_id}/test-action。

      当您没有自定义API路径,且“实例级别”选择“实例”时,生成的API路径上会拼接一个{MetaBo}_id的路径,同时方法上会多生成一个当前MetaBo主键的参数,如图2所示。

      图2 API路径
    • 描述:输入自定义API的描述信息。

  4. 设置代码生成层,参数设置与代码生成关系请参考表1

    表1 设置代码生成层组合说明

    接口层

    应用层

    数据访问层

    代码生成

    x

    x

    仅在应用层生成代码。

    x

    x

    仅在数据访问层生成代码。

    x

    在接口层和应用层生成代码。

    x

    在应用层和数据访问层生成代码。

    在接口层、应用层和数据访问层皆生成代码。

    图3 设置代码生成层

  5. 设置完成后,单击“保存”

示例

创建服务时“Package”设置为“com.astropro”。在业务设计中添加自定义API,动作名称为action1,请求方式为GET,返回对象为200,代码生成层勾选接口层和应用层,则代码生成时,将在接口层和应用层生成对应API的代码,如图6所示。

图4 设置打包路径
图5 添加自定义API
图6 查看生成代码
表2 不同目录结构下实际影响代码路径说明

目录结构

接口层

应用层

数据访问层

DDD

{package}.api.xxx

{package}.app.xxx

{package}.infrastructure.repository.base.xxx

Single

{package}.api.xxx

{package}.service.xxx

{package}.repository.base.xxx

base/service

{package}.api.xxx

{package}.service.xxx

{package}.repository.base.xxx

package为创建服务时定义的打包路径。

相关文档