更新时间:2025-12-30 GMT+08:00
分享

基于脚本模式配置快递费用计费规则

场景描述

在快递费计费场景中,快递费的计算方式会根据配送距离、快递重量的不同而变化,同时结合快递类型的差异,形成多样化的计费规则。

场景分析

根据不同的配送条件,可快速计算出所需要的配送费用,具体说明如下:

  • 条件字段(输入项):
    • 配送距离
    • 快递类型
    • 快递重量
  • 结果字段(输出项):

    配送费用

配置步骤

  1. 登录应用运行态
  2. 在左侧导航栏中,选择规则引擎 > 规则列表,进入“规则列表”页面。
  3. “规则列表”页面,单击“创建”
  4. “创建规则”页面,配置如下主要参数信息。

    表1 “基本信息”参数说明(模式配置)

    参数

    配置示例

    规则名称

    快递费规则_脚本模式

    规则类型

    自定义规则

    界面模式

    脚本模式

    冲突解决策略

    全匹配

  5. 单击“下一步”,进入“定义参数”页面。
  6. “定义参数”页面,根据场景需求,依次添加如下3个条件字段作为判断依据,添加1个结果字段用于输出判断结果。

    表2 “定义参数”参数说明(脚本模式)

    参数名称

    配置示例

    条件字段

    条件字段1:
    • 数据类型:数字
    • 字段名:收件距离
    • 字段代码:distance
    • 数组:否
    条件字段2:
    • 数据类型:文本
    • 字段名:快递类型
    • 字段代码:type
    • 数组:否
    条件字段3:
    • 数据类型:数字
    • 字段名:快递重量
    • 字段代码:weight
    • 数组:否

    结果字段

    结果字段1:
    • 数据类型:数字
    • 字段名:快递费用
    • 字段代码:fee
    • 数组:否

  7. 单击“下一步”,进入“规则配置”页面。
  8. “规则配置”页面,使用脚本模式的编辑器编写计费逻辑脚本,实现多条件联动计算。

    图1 脚本模式规则配置示例

    常见计费场景的脚本示例:

    规则 "情形一" 
    如果
      decision_factor.收件距离 小于等于 1000 并且 decision_factor.快递类型 等于 "普通类型"
    那么
     outcome.快递费用 = decision_factor.快递重量 * 2
    结束
    
    规则 "情形二" 
    如果
      decision_factor.收件距离 小于等于 1000 并且 decision_factor.快递类型 等于 "挂号类型"
    那么
     outcome.快递费用 = decision_factor.快递重量 * 3
    结束
    
    规则 "情形三" 
    如果
      decision_factor.收件距离 大于 1000 并且 decision_factor.快递类型 等于 "普通类型" 并且 decision_factor.快递重量 小于等于 30
    那么
     outcome.快递费用 = decision_factor.快递重量 * 2.5
    结束
    
    规则 "情形四" 
    如果
      decision_factor.收件距离 大于 1000 并且 decision_factor.快递类型 等于 "普通类型" 并且 decision_factor.快递重量 大于 30
    那么
     outcome.快递费用 = 2.5 * 30 + 3 * (decision_factor.快递重量 - 30)
    结束
    
    规则 "情形五" 
    如果
      decision_factor.收件距离 大于 1000 并且 decision_factor.快递类型 等于 "挂号类型" 并且 decision_factor.快递重量 小于等于 30
    那么
     outcome.快递费用 = decision_factor.快递重量 * 3.5
    结束
    
    
    规则 "情形六" 
    如果
      decision_factor.收件距离 大于 1000 并且 decision_factor.快递类型 等于 "挂号类型" 并且 decision_factor.快递重量 大于 30
    那么
     outcome.快递费用 = 3.5 * 30 + 4 * (decision_factor.快递重量 - 30)
    结束

  9. 编写完脚本后,仔细检查逻辑是否正确,确认无误后,单击“提交”,完成规则配置。

相关文档