数据集内置参数

所有数据集都内置了如下参数:
DG_USER 当前用户
DG_ROLE_NAMES 当前用户已启用的角色名称集合
DG_DATE 当前日期
DG_DATETIME 当前日期时间
详细结构如下述章节所示。
在数据集的参数化语句中,可以直接使用这些内置参数,无需先定义参数信息。

DG_USER

DG_USER参数包含当前用户信息,具体结构如下所示:
{
  //用户ID
  id: "...",
  //用户登录名
  name: "...",
  //用户姓名
  realName: "...",
  //是否管理员,true 是,false 否
  admin: true、false,
  //是否匿名用户,true 是,false 否
  anonymous: true、false,
  //角色集合
  roles:
  [
    {
      //角色ID
      id: "...",
      //角色名称
      name: "...",
      //是否启用,true 是,false 否
      enabled: true、false
    },
    ...
  ]
}
企业版自1.2.0版本起,DG_USER参数的结构中新增了组织机构信息,如下所示:
{
  //其他DG_USER属性
  ...,
  //用户组织机构信息,没有则是null
  org:
  {
    //组织机构ID
    id: "...",
    //组织机构名称
    name: "...",
    //组织机构ID完整路径
    fullPath: "...",
    //上级组织机构ID,没有则是null
    parentId: "...",
    //上级组织机构名称,没有则是null
    parentName: "..."
  }
}
示例:
SELECT
  '${(DG_USER.org.id)!}' AS org_id,
  '${(DG_USER.org.name)!}' as org_name,
  '${(DG_USER.org.fullPath)!}' as org_path,
  '${(DG_USER.org.parentId)!}' as org_parent_id,
  '${(DG_USER.org.parentName)!}' as org_parent_name

DG_ROLE_NAMES

DG_ROLE_NAMES参数包含当前用户已启用的角色名称集合,具体结构如下所示:
[
  "...", ...
]

DG_DATE

DG_DATE参数包含当前日期(年、月、日)信息,具体结构如下所示:
"..."
它是一个yyyy-MM-dd格式的字符串,示例:"2026-04-01"

DG_DATETIME

DG_DATETIME参数包含当前日期时间(年、月、日、时、分、秒)信息,具体结构如下所示:
"..."
它是一个yyyy-MM-dd HH:mm:ss格式的字符串,示例:"2026-04-01 20:06:01"

示例

SELECT
  'DG_USER-${DG_USER.id}' AS id,
  '${DG_USER.name}' as name

<#list DG_USER.roles as role>
UNION
SELECT
'DG_USER.roles-${role.id}',
'${role.name}'
</#list>

<#list DG_ROLE_NAMES as rn>
UNION
SELECT
'DG_ROLE_NAMES-${rn}',
'${rn}'
</#list>
 
京ICP备18055183号-1
© 2018-2024 datagear.tech 北京溪歌科技有限公司
登录