开发者社区 问答 正文

钉钉服务端API审批实例,审批的所在部门能否显示发起人完整部门

在钉钉上发起的审批,能够显示发起人所在部门的完整部门(包括其父部门),通过服务端API发起只能够显示发起人的最后一级部门,是否可以通过什么设置可以在通过服务端API发起的审批,能够显示所在部门的完整部门(包括其父部门)?

展开
收起
candleday 2021-12-30 11:38:08 1579 分享
分享
版权
举报
阿里云 AI 助理回答

在使用钉钉服务端API发起审批时,若希望展示发起人所在部门的完整部门路径(包括所有父部门),标准的服务端API调用可能仅直接提供发起人的直接归属部门信息。不过,您可以通过以下方法间接实现这一需求:

  1. 获取发起人用户ID

    • 首先,通过钉钉API如users/get或相关接口,根据发起人的账号信息获取其用户ID。
  2. 查询用户部门信息

    • 使用钉钉APIdepartment/list_ids获取部门列表。
    • 然后,利用user/getDeptMember或类似接口,传入用户ID获取该用户所属的部门ID列表。这一步通常会直接给出用户所在的最后一级部门ID。
  3. 递归构建部门路径

    • 对于获得的每个部门ID,使用department/get接口逐个查询部门详情,包括部门名称和父部门ID。
    • 通过递归或循环方式,根据每个部门的父部门ID继续查询,直至达到根部门,以此构建出完整的部门路径。
  4. 构造审批表单字段

    • 在发起审批时,将步骤3中构建的完整部门路径作为一个自定义字段添加到审批表单中。这样,在审批流程中就能显示发起人的全部部门信息了。

注意事项: - 这种方法需要额外的API调用和数据处理逻辑,可能会增加一定的开发工作量和时间成本。 - 请确保应用具备足够的权限访问用户信息和部门结构,特别是涉及到的部门读取权限。 - 考虑到性能和响应速度,优化递归或循环查询的效率,避免因过多API调用导致超时或受限。

通过上述步骤,尽管服务端API直接发起审批时默认不展示完整部门路径,但通过后端逻辑处理,您可以实现在审批中展示发起人所在部门的完整层级结构。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答分类:
API
问答地址:
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等