本文介绍如何在领域对象的基础上直接批量创建应用服务、结构对象和数据模型。

背景信息

技术建模中结构对象、领域对象和数据对象中的很多字段可能都是相同的,如果所有的模型都从对象到字段逐个手动创建,会带来较大的维护成本。系统支持根据领域对象直接批量创建应用服务、结构对象和数据模型,同时会自动创建模型间的关系映射,可以极大的降低领域建模操作复杂度。

操作步骤

  1. 登录BizWorks,单击左侧导航栏1图标。在概览页面的左上角,单击1图标,从项目下拉列表中选择目标项目实例。1
  2. 单击1图标,在领域建模导航栏中,选择技术建模 > 业务域
  3. 业务域页面,单击目标业务域名称后,在版本列表中,单击目标版本。
  4. 在目标业务域的技术建模页面,批量生成相关模型。
    1. 领域模型页签,单击领域对象
    2. 单击批量生成相关模型1
    3. 批量生成相关模型面板,选择生成范围(支持全量生产部分生成)。1
      • 如果您选择全量生成,单击下一步
      • 如果您选择部分生成,在领域对象列表中选中目标领域对象后,单击下一步1
    4. 批量生成相关模型面板,完成相关参数配置。1
      配置项 描述
      生成应用服务和结构对象 支持以下取值:
      • 生成
        • 每个实体对象都将生成一个应用服务,应用服务编码规则为:领域对象编码+Service,如果领域对象编码超出29位,则截取前29位。
        • 每个应用服务中将生成基本的增删改查应用服务方法。
        • 每个领域对象以及领域对象字段中引用其它的领域对象将生成对应结构对象,结构对象编码规则为:领域对象编码+DTO。
      • 不生成
      生成数据模型 支持以下取值:
      • 生成
        • 每个领域对象都将生成一个数据模型,数据模型与领域对象编码相同。
        • 领域对象中每一个基础类型的字段都将生成数据模型的字段。
      • 不生成
      重复数据判断规则 支持以下取值:
      • 对象编码重复
        • 生成结构对象和数据模型时,仅判断模型的编码是否重复,不对模型字段编码作比较。
        • 生成应用服务时,仅判断服务编码是否存在,不判断服务的字段。
      • 字段编码重复
        • 生成结构对象和数据模型时,在模型的编码重复时,继续比较模型字段编码,判断字段是否重复。
        • 生成应用服务时,仅判断服务编码是否存在,不判断服务的字段。
      重复数据处理策略 支持以下取值:
      • 跳过重复数据
        • 生成结构对象和数据模型时,如果编码已经存在,则结构对象和数据模型的名称、编码以及所有的字段都不做任何修改。
        • 生成应用服务时,如果服务编码已存在,服务本身信息不做修改,并继续判断方法是否存在,如果方法编码也相同则不再判断出入参,该方法将不再重复生成。
      • 覆盖已有数据
        • 编码相同的数据将被覆盖,包括名称和类型。
        • 不在生成范围内的数据不受影响,将被保留。
      • 终止生成数据:只要应用服务、应用服务方法、结构对象或者数据模型中有任何一个编码与已有数据编码重复,则任何数据都不会生成,生成过程将自动终止。
    5. 单击开始生成,待界面提示生成成功后,单击关闭
    6. 您可以在数据模型应用服务页签,查看对应生成的数据模型、应用服务和结构对象。1
      说明 批量生成模型时,系统会做如下处理:
      • 为每个领域对象生成一个应用服务,应用服务中都包含一个按条件查询的方法。
      • 生成三个结构对象作为所有按条件查询方法的入参:QueryConditionPredicateOrderBy。建议您不要随便修改这三个方法,否则可能会导致生成的代码报错。
      • 为每个结构对象生成一个分页的结构对象****PageInfo作为按条件查询方法的出参。
      • 生成以下映射关系:
        • 结构对象领域对象
        • 结构对象数据对象
        • 领域对象数据对象
      • 如果领域对象间有继承关系,生成结构对象时也同样会保留继承关系。