Skip to content

系统参数管理

该接口主要实现了对系统参数的管理,包括添加、删除、更新、查询等功能。此外,还提供了参数缓存同步的方法,可以根据需要进行调用。

Maven坐标

xml
<dependency>
    <groupId>com.ikingtech.platform</groupId>
    <artifactId>sdk-variable-api</artifactId>
</dependency>

主要方法说明

  • VariableController层
方法名说明
add(VariableDTO variable)添加新的系统参数。如果ID策略为手动并且未设置ID,则抛出异常;如果已存在相同名称的参数,则抛出异常。最后将新增的参数同步到缓存中。
delete(String id)根据ID删除指定的系统参数。
update(VariableDTO variable)更新系统参数。在更新前会先检查该参数是否存在;如果存在具有相同名称的其他参数则抛出异常;如果参数值无效也会抛出异常。最后将更新后的参数同步到缓存中。
page(VariableQueryParamDTO queryParam)分页查询系统参数。
all()查询所有系统参数。
detail(String id)根据ID查询单个系统参数的详细信息。
valueByKey(String key)根据键名获取对应的参数值。
  • VariableService层
方法名说明
listByTenantCode(String tenantCode)根据租户代码列出所有相关的系统参数。
getValueByKey(String key)根据键名获取对应的参数值。
syncVariableToCache(VariableDO entity)将一个系统参数同步到缓存中。
syncVariableToCache(List<
VariableDO> entities)
将一组系统参数同步到缓存中。
nameExist(String name, String tenantCode)检查指定租户下是否存在具有给定名称的系统参数。
nameExist(String id, String name, String tenantCode)在排除特定ID的前提下,检查指定租户下是否存在具有给定名称的系统参数。
listPage(VariableQueryParamDTO queryParam, String tenantCode)分页查询指定租户下的系统参数。
removeByTenantCode(String tenantCode)删除指定租户的所有系统参数。
existByTenantCode(String tenantCode)检查是否存在指定租户的系统参数。

使用方式

调用add方法添加系统参数。需要传入一个VariableDTO对象,其中包含了参数的基本信息。如果成功,返回新创建参数的ID。

调用delete方法删除系统参数。需要传入要删除参数的ID。

调用update方法更新系统参数。需要传入一个包含了新参数信息的VariableDTO对象,其中必须包含要更新的参数的ID。

调用page方法分页查询系统参数。
调用all方法获取所有参数。

调用detail方法获取单个参数的详细信息。需要传入参数ID。

调用valueByKey方法获取指定键名的参数值。

注意

在进行增删改查操作前,建议先进行名称或ID的检查,以避免重复或无效操作。在添加或更新参数后,需要手动调用同步方法将数据同步到缓存中。

实例代码:

java
// 创建一个新的系统参数
VariableDTO variable = new VariableDTO();
variable.setPolicy(IdPolicyEnum.MANUAL);
variable.setName("test");
variable.setId("1234");

R<String> result = controller.add(variable);

// 删除一个系统参数
controller.delete("1234");

// 更新一个系统参数
VariableDTO updatedVariable = new VariableDTO();
updatedVariable.setId("1234");
updatedVariable.setName("test_updated");
controller.update(updatedVariable);

// 查询所有系统参数
R<List<VariableDTO>> allVariables = controller.all();

// 获取指定ID的系统参数详细信息
R<VariableDTO> detail = controller.detail("1234");

// 获取指定键名的系统参数值
R<String> value = controller.valueByKey("test_key");

异常处理

在使用接口时,若发生异常,例如参数不存在、已存在相同名称或键名的参数、参数值无效等,会抛出FrameworkException异常。具体的错误信息可通过VariableExceptionInfo枚举类获取。