这是基于vue-vben-admin 模板适用于abp Vnext的前端管理项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

3.4 KiB

LINGYUN.Abp.RulesManagement

规则引擎管理模块,提供了基于规则引擎的工作流和规则管理功能。

1. 模块说明

该模块基于RulesEngine实现,提供了工作流规则的持久化管理、缓存管理以及API接口。主要包含以下子模块:

1.1 Domain.Shared

  • 定义了工作流记录、规则记录、动作记录等基础常量
  • 提供了动作类型等枚举定义
  • 查看详细说明

1.2 Domain

  • 实现了工作流存储的核心业务逻辑
  • 提供了基于内存缓存的工作流存储实现
  • 定义了规则记录、工作流记录等领域模型
  • 查看详细说明

1.3 EntityFrameworkCore

  • 提供了基于EF Core的数据访问层实现
  • 实现了工作流、规则等实体的数据库映射
  • 实现了仓储接口
  • 查看详细说明

1.4 Application.Contracts

  • 定义了规则引擎管理的应用服务接口
  • 定义了数据传输对象(DTOs)
  • 定义了权限
  • 查看详细说明

1.5 Application

  • 实现了规则记录和工作流记录的应用服务
  • 提供了对象自动映射配置
  • 查看详细说明

1.6 HttpApi

  • 提供了RESTful风格的API接口
  • 实现了规则和工作流的CRUD操作API
  • 查看详细说明

2. 功能特性

  • 工作流管理

    • 支持工作流的创建、修改、删除、查询
    • 提供工作流的缓存管理
    • 支持按类型查询工作流
  • 规则管理

    • 支持规则的创建、修改、删除、查询
    • 支持规则表达式的定义
    • 支持规则与工作流的关联
  • 参数管理

    • 支持工作流参数的定义
    • 支持参数值的验证
  • 动作管理

    • 支持成功/失败动作的定义
    • 支持动作执行结果的记录

3. 配置项

3.1 工作流记录配置

  • MaxNameLength: 工作流名称最大长度,默认64
  • MaxTypeFullNameLength: 类型全名最大长度,默认255
  • MaxInjectWorkflowsLength: 注入工作流最大长度,默认(MaxNameLength + 1) * 5

3.2 规则记录配置

  • MaxNameLength: 规则名称最大长度,默认64
  • MaxOperatorLength: 操作符最大长度,默认30
  • MaxErrorMessageLength: 错误消息最大长度,默认255
  • MaxExpressionLength: 表达式最大长度,默认int.MaxValue
  • MaxSuccessEventLength: 成功事件最大长度,默认128

4. 权限

  • RulesEngineManagement.Rule

    • 规则管理权限
    • 包含创建、修改、删除、查询权限
  • RulesEngineManagement.Workflow

    • 工作流管理权限
    • 包含创建、修改、删除、查询权限

5. API接口

5.1 规则记录API

  • 基路径: api/rules-engine-management/rules
  • 提供规则记录的CRUD操作API
  • 支持分页查询API

5.2 工作流记录API

  • 基路径: api/rules-engine-management/workflows
  • 提供工作流记录的CRUD操作API
  • 支持分页查询API

6. 依赖

  • Volo.Abp.Core
  • LINGYUN.Abp.Rules.RulesEngine
  • Microsoft.Extensions.Caching.Memory
  • Volo.Abp.EntityFrameworkCore
  • Volo.Abp.Ddd.Application
  • Volo.Abp.AspNetCore.Mvc