# 业务字典

# com.eos.foundation.eoscommon.BusinessDictUtil

# 构件包说明

本工具类实现了对业务字典的操作。本构件库使用了两个非持久化的实体来操作字典项和字典类型数据。如下图所示:

img

其中DictEntry表示字典项,DictType表示字典类型。

# 运算逻辑构件使用说明

该构件包包含以下构件:

序号 方法 功能描述
序号 方法 功能描述
1 fillEntitiesWithDictValues(DataObject[] dataObjects, String... params) 根据字典码为数组中的DataObject添加一个或多个字典名称字段
2 fillEntityWithDictValues(DataObject dataObject, String... params) 根据字典码为DataObject添加一个或多个字典名称字段
3 fillPropertyWithDictValue(Object dataObjects, String dictTypeId, String dictIdPropertyName, String filledPropertyName) 根据字典码为list或者数组中的DataObject添加一个字典名称字段
4 getChildDictInfo(String childDictTypeId, String parentDictId) 根据下一级业务字典的类型和父字典值获得下一级业务字典
5 getCurrentDictInfoByType(String dictTypeId) 取得当前业务字典(不包含下一级业务字典)
6 getDictInfoByType(String typeId) 根据字典类型获得字典信息
7 getDictInfoByTypeAndSort(String dictTypeId, String orderPropertyName, boolean asc) 根据字典类型获得字典信息并按指定属性排序
8 getDictName(String typeID, String id) 获取字典名称
9 reLoad() 重载业务字典

# fillEntitiesWithDictValues:根据字典码为数组中的DataObject添加一个或多个字典名称字段

# 【功能说明】

根据字典码为数组中的DataObject添加一个或多个业务字典名称字段。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.BusinessDictUtil.fillEntitiesWithDictValues,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 dataObjects commonj.sdo.DataObject[] 包含字典码字段的DataObject数组。
参数 params java.lang.String... Unknown macro: {span}变长参数,3个一组(可以有一组或多组),按下面次序:params[0]:dictIdPropertyName DataObjec中存放字典码的属性名称,DataObject必须要有该属性;params[1]:dictTypeId字典类型;params[2]:filledPropertyName DataObjec中存放字典值的属性名称,可以根据需要设置。
  1. 抛出异常说明 当输入的params长度不为3的整数倍时,抛出com.eos.system.exception.EOSRuntimeException异常。

  2. 规则说明

    • 输入的params长度不为3的整数倍;
    • 变长参数,3个一组的次序不能变。

# 【参考案例】

示例:获取业务字典"性别"和"是否为雇员"的业务字典名称。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 dataObjects commonj.sdo.DataObject[] objects 变量 传引用
参数 params java.lang.String sexDictId 常量 传引用
参数 param1 java.lang.String gender 常量 传引用
参数 param2 java.lang.String sex 常量 传引用
参数 param3 java.lang.String employeeDictId 常量 传引用
参数 param4 java.lang.String isEmployee 常量 传引用
参数 param5 java.lang.String employee 常量 传引用
  • 参数描述

    • dataObjects中的DataObject必须要有sexDictId和employeeDictId属性;
    • param2和param4必须是字典类型;
    • param3和param5可以根据需要设置,比如可以设置成sexTest, employeeTest。
  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
 <__root __id="0" __type="java:java.util.HashMap">
 <objects __collection="array" __collectionid="1"
                               __componentType="java:commonj.sdo.DataObject"
                               __id="2" __index="0"
                               __type="sdo:com.primeton.das.datatype.AnyType">
     <sexDictId __type="java:java.lang.String">M</sexDictId>
     <employeeDictId __type="java:java.lang.String">Y</employeeDictId>
 </objects>
 <objects __collection="array" __collectionid="1" __id="3" __index="1"
                               __type="sdo:com.primeton.das.datatype.AnyType">
     <sexDictId __type="java:java.lang.String">M</sexDictId>
     <employeeDictId __type="java:java.lang.String">N</employeeDictId>
 </objects>
 <objects __collection="array" __collectionid="1" __id="4" __index="2"
                               __type="sdo:com.primeton.das.datatype.AnyType">
     <sexDictId __type="java:java.lang.String">F</sexDictId>
     <employeeDictId __type="java:java.lang.String">N</employeeDictId>
 </objects>
 </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
 <__root __id="0" __type="java:java.util.HashMap">
 <objects __collection="array" __collectionid="1" __componentType="java:commonj.sdo.DataObject"
                               __id="2" __index="0"
                               __type="sdo:com.primeton.das.datatype.AnyType">
     <sexDictId __type="java:java.lang.String">M</sexDictId>
     <employeeDictId __type="java:java.lang.String">Y</employeeDictId>
     <sex __type="java:java.lang.String">男</sex>
     <employee __type="java:java.lang.String">是雇员</employee>
 </objects>
 <objects __collection="array" __collectionid="1" __id="3" __index="1"
                               __type="sdo:com.primeton.das.datatype.AnyType">
     <sexDictId __type="java:java.lang.String">M</sexDictId>
     <employeeDictId __type="java:java.lang.String">N</employeeDictId>
     <sex __type="java:java.lang.String">男</sex>
     <employee __type="java:java.lang.String">非雇员</employee>
 </objects>
 <objects __collection="array" __collectionid="1" __id="4" __index="2"
                               __type="sdo:com.primeton.das.datatype.AnyType">
     <sexDictId __type="java:java.lang.String">F</sexDictId>
     <employeeDictId __type="java:java.lang.String">N</employeeDictId>
     <sex __type="java:java.lang.String">女</sex>
     <employee __type="java:java.lang.String">非雇员</employee>
 </objects>
 </__root>
</bizContext>

# fillEntityWithDictValues:根据字典码为DataObject添加一个或多个字典名称字段

# 【功能说明】

根据字典码为DataObject添加一个或多个字典名称字段。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.BusinessDictUtil.fillEntityWithDictValues,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 dataObject commonj.sdo.DataObject 包含字典码字段的DataObject。
参数 params java.lang.String... Unknown macro: {span}变长参数,3个一组(可以有一组或多组),按下面次序:params[0]:dictIdPropertyName DataObjec中存放字典码的属性名称,DataObject必须要有该属性;params[1]:dictTypeId字典类型;params[2]:filledPropertyName DataObjec中存放字典值的属性名称,可以根据需要设置。
  1. 抛出异常说明 当输入的params长度不为3的整数倍时,抛出com.eos.system.exception.EOSRuntimeException异常。

  2. 规则说明

    • 输入的params长度不为3的整数倍;
    • 变长参数,3个一组的次序不能变。

# 【参考案例】

示例:获取业务字典"性别"和"是否为雇员"的业务字典名称。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 dataObject commonj.sdo.DataObject object 变量 传引用
参数 params java.lang.String sexDictId 常量 传引用
参数 param1 java.lang.String gender 常量 传引用
参数 param2 java.lang.String sex 常量 传引用
参数 param3 java.lang.String employeeDictId 常量 传引用
参数 param4 java.lang.String isEmployee 常量 传引用
参数 param5 java.lang.String employee 常量 传引用
  • 参数描述

    • dataObject必须要有sexDictId和employeeDictId属性;
    • param2和param4必须是字典类型;
    • param3和param5可以根据需要设置,比如可以设置成sexTest, employeeTest。
  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <object __id="1" __type="sdo:com.primeton.das.datatype.AnyType">
            <sexDictId __type="java:java.lang.String">F</sexDictId>
            <employeeDictId __type="java:java.lang.String">N</employeeDictId>
        </object>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <object __id="1" __type="sdo:com.primeton.das.datatype.AnyType">
        <sexDictId __type="java:java.lang.String">F</sexDictId>
            <employeeDictId __type="java:java.lang.String">N</employeeDictId>
            <sex __type="java:java.lang.String">女</sex>
            <employee __type="java:java.lang.String">非雇员</employee>
        </object>
    </__root>
</bizContext>

# fillPropertyWithDictValue:根据字典码为list或者数组中的DataObject添加一个字典名称字段

# 【功能说明】

根据字典码为List或者数组中的DataObject添加一个字典名称字段,遍历List或者数组中的所有DataObject,根据当前的DataObject的dictIdPropertyName属性获取业务字典编号,然后再结合当前的DataObject的业务字典类型即dictTypeId 的值,获取真正的业务字典名称,并把业务字典名称放在DataObject的filledPropertyName属性指定的字段。 伪代码如下:

//参数:dataObjects、dictTypeId、dictIdPropertyName、dictTypeId、filledPropertyName
for (DataObject curObject:dataObjects) {
        //当前的DataObject的dictIdPropertyName属性获取业务字典编号
    String dictId = curObject.get(dictIdPropertyName);
        //从业务字典Cache中获取业务字典名称
    String dictName = getDictName(dictTypeId, dictId);
        //业务字典名称放在DataObject的filledPropertyName属性指定的字段
    curObject.set(filledPropertyName, dictName);
}

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.BusinessDictUtil.fillPropertyWithDictValue,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 dataObjects java.lang.Object 必须是list或者数组类型,否则抛出Com.eos.system.exception.EOSRuntimeException异常,告知参数类型错误
参数 dictTypeId java.lang.String 业务字典类型
参数 dictIdPropertyName java.lang.String DataObjec中存放dictId的属性名称
参数 filledPropertyName java.lang.String DataObjec中存放dictValue的属性名称
  1. 抛出异常说明

    • 输入的dataObjects参数类型错误(非DataObject数组或者List)时,会抛出com.eos.system.exception.EOSRuntimeException异常;
    • 参数dataObjects中的元素(DataObject)为非开放式的DataObject(即不能动态扩展属性的DataObject),如果该元素中不包含filledPropertyName指定的属性时,会抛出com.eos.system.exception.EOSRuntimeException异常。
  2. 规则说明 无。

# 【参考案例】

示例:获取业务字典性别的业务字典名称。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 dataObjects java.lang.Object objects 变量 传引用
参数 dictTypeId java.lang.String gender 常量 传引用
参数 dictIdPropertyName java.lang.String dictId 常量 传引用
参数 filledPropertyName java.lang.String sex 常量 传引用
  • 参数描述 第一个参数objects是com.primeton.das.datatype.AnyType

  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <objects __collection="array" __collectionid="1"
                                      __componentType="java:commonj.sdo.DataObject"
                                      __id="2" __index="0"
                                      __type="sdo:com.primeton.das.datatype.AnyType">
            <dictId __type="java:java.lang.String">M</dictId>
        </objects>
        <objects __collection="array" __collectionid="1" __id="3" __index="1"
                                      __type="sdo:com.primeton.das.datatype.AnyType">
            <dictId __type="java:java.lang.String">F</dictId>
        </objects>
        <objects __collection="array" __collectionid="1" __id="4" __index="2"
                                      __type="sdo:com.primeton.das.datatype.AnyType">
            <dictId __type="java:java.lang.String">F</dictId>
        </objects>
        <objects __collection="array" __collectionid="1" __id="5" __index="3"
                                      __type="sdo:com.primeton.das.datatype.AnyType">
            <dictId __type="java:java.lang.String">M</dictId>
        </objects>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <objects __collection="array" __collectionid="1"
                                      __componentType="java:commonj.sdo.DataObject"
                                      __id="2" __index="0"
                                      __type="sdo:com.primeton.das.datatype.AnyType">
            <dictId __type="java:java.lang.String">M</dictId>
            <sex __type="java:java.lang.String">男</sex>
        </objects>
        <objects __collection="array" __collectionid="1" __id="3" __index="1"
                                      __type="sdo:com.primeton.das.datatype.AnyType">
            <dictId __type="java:java.lang.String">F</dictId>
            <sex __type="java:java.lang.String">女</sex>
        </objects>
        <objects __collection="array" __collectionid="1" __id="4" __index="2"
                                      __type="sdo:com.primeton.das.datatype.AnyType">
            <dictId __type="java:java.lang.String">F</dictId>
            <sex __type="java:java.lang.String">女</sex>
        </objects>
        <objects __collection="array" __collectionid="1" __id="5" __index="3"
                                      __type="sdo:com.primeton.das.datatype.AnyType">
            <dictId __type="java:java.lang.String">M</dictId>
            <sex __type="java:java.lang.String">男</sex>
        </objects>
    </__root>
</bizContext>

# getChildDictInfo:根据下一级业务字典的类型和父字典值获得下一级业务字典

# 【功能说明】

根据下一级业务字典的类型和父字典值获得下一级业务字典信息。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.BusinessDictUtil.getChildDictInfo,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 childDictTypeId java.lang.String 下一级业务字典的类型
参数 parentDictId java.lang.String 下一级业务字典的父字典的值
返回值 commonj.sdo.DataObject[] 业务字典信息(只包含dictID和dictName信息)
  1. 抛出异常说明 无。

  2. 规则说明 无。

# 【参考案例】

示例:获取中国所有省份的业务字典信息。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 childDictTypeId java.lang.String province 常量 传引用
参数 parentDictId java.lang.String CN 常量 传引用
返回值 out0 commonj.sdo.DataObject[] result 变量 传引用
  • 参数描述 无。

  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <result __id="1" __isNullOrEmpty="empty" __type="java:[Lcommonj.sdo.DataObject;"/>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <result __id="1" __type="java:[Lcommonj.sdo.DataObject;">
        <__entry __componentType="java:commonj.sdo.DataObject" __id="2"
                                           __index="0" __type="sdo:com.eos.foundation.DictEntry">
        <dictID __type="java:java.lang.String">1</dictID>
            <dictName __type="java:java.lang.String">江苏</dictName>
            <level/>
            <filter1/>
            <filter2/>
            <parent/>
            <children __collection="list"/>
        </__entry>
            <__entry __id="3" __index="1" __type="sdo:com.eos.foundation.DictEntry">
            <dictID __type="java:java.lang.String">2</dictID>
            <dictName __type="java:java.lang.String">广东</dictName>
        <level/>
            <filter1/>
            <filter2/>
            <parent/>
            <children __collection="list"/>
        </__entry>
            <__entry __id="4" __index="2" __type="sdo:com.eos.foundation.DictEntry">
            <dictID __type="java:java.lang.String">3</dictID>
            <dictName __type="java:java.lang.String">福建</dictName>
            <level/>
            <filter1/>
            <filter2/>
            <parent/>
            <children __collection="list"/>
        </__entry>
        </result>
    </__root>
</bizContext>

# getCurrentDictInfoByType:取得当前业务字典(不包含下一级业务字典)

# 【功能说明】

取得当前业务字典(不包含下一级业务字典)。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.BusinessDictUtil.getCurrentDictInfoByType,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 dictTypeId java.lang.String 业务字典的类型
返回值 commonj.sdo.DataObject[] 当前业务字典(只包含dictID和dictName)
  1. 抛出异常说明 无。

  2. 规则说明 无。

# 【参考案例】

示例:获取业务字典类型为国家(country)的所有业务字典信息。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 dictTypeId java.lang.String country 常量 传引用
返回值 out0 commonj.sdo.DataObject[] result 变量 传引用
  • 参数描述 无。

  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <result __id="1" __isNullOrEmpty="empty" __type="java:[Lcommonj.sdo.DataObject;"/>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <result __id="1" __type="java:[Lcommonj.sdo.DataObject;">
        <__entry __componentType="java:commonj.sdo.DataObject" __id="2"
                                 __index="0" __type="sdo:com.eos.foundation.DictEntry">
            <dictID __type="java:java.lang.String">CN</dictID>
            <dictName __type="java:java.lang.String">中国</dictName>
            <level/>
            <filter1/>
            <filter2/>
            <parent/>
            <children __collection="list"/>
        </__entry>
            <__entry __id="3" __index="1" __type="sdo:com.eos.foundation.DictEntry">
            <dictID __type="java:java.lang.String">FR</dictID>
            <dictName __type="java:java.lang.String">法国</dictName>
            <level/>
            <filter1/>
            <filter2/>
            <parent/>
            <children __collection="list"/>
        </__entry>
            <__entry __id="4" __index="2" __type="sdo:com.eos.foundation.DictEntry">
            <dictID __type="java:java.lang.String">US</dictID>
            <dictName __type="java:java.lang.String">美国</dictName>
            <level/>
            <filter1/>
            <filter2/>
            <parent/>
            <children __collection="list"/>
        </__entry>
        </result>
    </__root>
</bizContext>

# getDictInfoByType:根据字典类型获得字典信息

# 【功能说明】

根据字典类型获得该类型的字典项数据。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.BusinessDictUtil.getDictInfoByType,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 typeId String 字典类型
返回值 out0 DataObject[] 指定类型的字典项数据
  1. 抛出异常说明 无。

  2. 规则说明 无。

# 【参考案例】

示例:获取业务字典中类型是性别的业务字典项信息。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 typeId String gender 常量 传引用
返回值 out0 DataObject[] information 变量 传引用
  • 参数描述

    • 输入参数:性别对应的字典类型gender;
    • 返回值:根据gender得到性别的所有字典项信息。
  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
   <__root __id="0" __type="java:java.util.HashMap">
       <information __id="1" __isNullOrEmpty="empty" __type="java:[Lcommonj.sdo.DataObject;"/>
   </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
   <__root __id="0" __type="java:java.util.HashMap">
       <information __id="1" __type="java:[Lcommonj.sdo.DataObject;">
           <__entry __id="2" __index="0" __type="sdo:com.eos.foundation.DictEntry">
               <dictID __type="java:java.lang.String">F</dictID>
               <dictName __type="java:java.lang.String">女</dictName>
               <level __type="java:java.lang.Integer">1</level>
               <filter1 __isNullOrEmpty="null"/>
               <filter2 __isNullOrEmpty="null"/>
               <parent/>
               <children __collection="list"/>
           </__entry>
           <__entry __id="3" __index="1" __type="sdo:com.eos.foundation.DictEntry">
               <dictID __type="java:java.lang.String">M</dictID>
               <dictName __type="java:java.lang.String">男</dictName>
               <level __type="java:java.lang.Integer">1</level>
               <filter1 __isNullOrEmpty="null"/>
               <filter2 __isNullOrEmpty="null"/>
               <parent/>
               <children __collection="list"/>
           </__entry>
           <__entry __id="4" __index="2" __type="sdo:com.eos.foundation.DictEntry">
               <dictID __type="java:java.lang.String">U</dictID>
               <dictName __type="java:java.lang.String">未知</dictName>
               <level __type="java:java.lang.Integer">1</level>
               <filter1 __isNullOrEmpty="null"/>
               <filter2 __isNullOrEmpty="null"/>
               <parent/>
               <children __collection="list"/>
           </__entry>
       </information>
   </__root>
</bizContext>

# getDictInfoByTypeAndSort:根据字典类型获得字典信息并按指定属性排序

# 【功能说明】

根据业务字典类型获得字典信息并按指定属性排序。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.BusinessDictUtil.getDictInfoByTypeAndSort,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 dictTypeId java.lang.String 业务字典类型
参数 orderPropertyName java.lang.String 排序的属性,只能是以下几个属性之一: dictID、dictName、level、filter1、filter2
参数 asc boolean 是否是升序(true/false)
返回值 commonj.sdo.DataObject[] 排序好的业务字典信息
  1. 抛出异常说明 无。

  2. 规则说明 无。

# 【参考案例】

示例:查询业务字典类型是行业(industry)的业务字典信息,并按照业务字典码(dictID)降序排列。

  • 场景描述 无。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 dictTypeId java.lang.String industry 常量 传引用
参数 orderPropertyName java.lang.String dictID 常量 传引用
参数 asc boolean false 常量 传引用
返回值 out0 commonj.sdo.DataObject[] result 变量 传引用
  • 参数描述 无。

  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <result __id="1" __isNullOrEmpty="empty" __type="java:[Lcommonj.sdo.DataObject;"/>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <result __id="1" __type="java:[Lcommonj.sdo.DataObject;">
        <__entry __componentType="java:commonj.sdo.DataObject" __id="2"
                                __index="0" __type="sdo:com.eos.foundation.DictEntry">
            <dictID __type="java:java.lang.String">10</dictID>
            <dictName __type="java:java.lang.String">政府</dictName>
            <level __type="java:java.lang.Integer">1</level>
            <filter1 __type="java:java.lang.String">10</filter1>
            <filter2 __isNullOrEmpty="null"/>
            <parent/>
            <children __collection="list"/>
            </__entry>
        <__entry __id="3" __index="1" __type="sdo:com.eos.foundation.DictEntry">
            <dictID __type="java:java.lang.String">9</dictID>
            <dictName __type="java:java.lang.String">运输</dictName>
            <level __type="java:java.lang.Integer">1</level>
            <filter1 __type="java:java.lang.String">9</filter1>
            <filter2 __isNullOrEmpty="null"/>
            <parent/>
            <children __collection="list"/>
        </__entry>
            <__entry __id="4" __index="2" __type="sdo:com.eos.foundation.DictEntry">
            <dictID __type="java:java.lang.String">8</dictID>
            <dictName __type="java:java.lang.String">医疗</dictName>
            <level __type="java:java.lang.Integer">1</level>
            <filter1 __type="java:java.lang.String">8</filter1>
            <filter2 __isNullOrEmpty="null"/>
            <parent/>
            <children __collection="list"/>
        </__entry>
            <__entry __id="5" __index="3" __type="sdo:com.eos.foundation.DictEntry">
            <dictID __type="java:java.lang.String">7</dictID>
            <dictName __type="java:java.lang.String">教育</dictName>
                <level __type="java:java.lang.Integer">1</level>
            <filter1 __type="java:java.lang.String">7</filter1>
            <filter2 __isNullOrEmpty="null"/>
                <parent/>
        <children __collection="list"/>
            </__entry>
            <__entry __id="6" __index="4" __type="sdo:com.eos.foundation.DictEntry">
                <dictID __type="java:java.lang.String">6</dictID>
                <dictName __type="java:java.lang.String">制造</dictName>
                <level __type="java:java.lang.Integer">1</level>
                <filter1 __type="java:java.lang.String">6</filter1>
                <filter2 __isNullOrEmpty="null"/>
                <parent/>
                <children __collection="list"/>
            </__entry>
            <__entry __id="7" __index="5" __type="sdo:com.eos.foundation.DictEntry">
                <dictID __type="java:java.lang.String">5</dictID>
                <dictName __type="java:java.lang.String">电力</dictName>
                <level __type="java:java.lang.Integer">1</level>
                <filter1 __type="java:java.lang.String">5</filter1>
                <filter2 __isNullOrEmpty="null"/>
                <parent/>
                <children __collection="list"/>
            </__entry>
            <__entry __id="8" __index="6" __type="sdo:com.eos.foundation.DictEntry">
                <dictID __type="java:java.lang.String">4</dictID>
                <dictName __type="java:java.lang.String">证券</dictName>
                <level __type="java:java.lang.Integer">1</level>
                <filter1 __type="java:java.lang.String">4</filter1>
                <filter2 __isNullOrEmpty="null"/>
                <parent/>
                <children __collection="list"/>
            </__entry>
            <__entry __id="9" __index="7" __type="sdo:com.eos.foundation.DictEntry">
                <dictID __type="java:java.lang.String">3</dictID>
                <dictName __type="java:java.lang.String">保险</dictName>
                <level __type="java:java.lang.Integer">1</level>
                <filter1 __type="java:java.lang.String">3</filter1>
                <filter2 __isNullOrEmpty="null"/>
                <parent/>
                <children __collection="list"/>
            </__entry>
            <__entry __id="10" __index="8" __type="sdo:com.eos.foundation.DictEntry">
                <dictID __type="java:java.lang.String">2</dictID>
                <dictName __type="java:java.lang.String">银行</dictName>
                <level __type="java:java.lang.Integer">1</level>
                <filter1 __type="java:java.lang.String">2</filter1>
                <filter2 __isNullOrEmpty="null"/>
                <parent/>
                <children __collection="list"/>
            </__entry>
            <__entry __id="11" __index="9" __type="sdo:com.eos.foundation.DictEntry">
                <dictID __type="java:java.lang.String">1</dictID>
                <dictName __type="java:java.lang.String">电信</dictName>
                <level __type="java:java.lang.Integer">1</level>
                <filter1 __type="java:java.lang.String">1</filter1>
                <filter2 __isNullOrEmpty="null"/>
                <parent/>
                <children __collection="list"/>
            </__entry>
        </result>
    </__root>
</bizContext>

# getDictName:获取字典名称

# 【功能说明】

根据字典类型和字典码获取字典码名称。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.BusinessDictUtil.getDictName,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 dictTypeId String 字典类型
参数 dictId String 字典码
返回值 out0 String 字典码名称
  1. 抛出异常说明 EOSRuntimeException。

  2. 规则说明

    • 如果传入的dictTypeId不能找到对应的字典类型,会抛出ErrorCode是24000024的EOSRuntimeException;
    • 如果传入的dictTypeId能找到对应的字典类型,但是dictId找不到对应的字典码,返回的值就是dictId。

# 【参考案例】

示例:根据业务字典类型和字典码获取业务字典名称。

  • 场景描述 获取业务字典类型是gender(性别),字典码是M的业务字典名称。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 dictTypeId java.lang.String gender 常量 传引用
参数 dictId java.lang.String M 常量 传引用
参数 out0 java.lang.String dictName 变量 传引用
  • 参数描述

    • 第一个参数为业务字段类型dicttypeid字段值(gender);
    • 第二个参数为业务字典类型项dictid字段值(M);
    • 返回值为存放业务字典类型项名称。
  • 其他说明

    • 业务字典类型项实体:eos_dict_entry
    • 业务字典类型实体:eos_dict_type
  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <dictName __isNullOrEmpty="null"/>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <dictName __type="java:java.lang.String">男</dictName>
    </__root>
</bizContext>

# reLoad:重载业务字典

# 【功能说明】

重新读取数据库,并加载到业务字典缓存中。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.eoscommon.BusinessDictUtil.reLoad,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明 无。
  2. 抛出异常说明 无。
  3. 规则说明 无。

# 【参考案例】

示例:重新加载业务字典码数据。

  • 场景描述 无。

  • 参数设置 无。

  • 参数描述 无。

  • 其他说明 无。

  • 调用前的bizContext 无。

  • 调用后的bizContext 无。

上次更新: 2023/3/20下午3:44:43