巧用智能助手实现会议室状态变更,避免使用时间冲突

1. 简介

1.1 案例简介

会议室预约是人事管理里中非常高频的场景,本案例将介绍,如何通过 智能助手Pro、数据联动、流程搭建会议室预约系统,实现会议室使用时间校验,有效避免会议室使用冲突,减小沟通成本,提高办公效率。

1.2 设计思路

1)当成员在「会议室预约」表单中申请会议室时,通过智能助手Pro 同步新增到辅助表「会议室申请记录」中;

2)会议室申请审批完成后,通过智能助手Pro 将审批结果同步更新到辅助表「会议室申请记录」中;

3)在「会议室预约」表单中通过数据联动,调用「会议室申请记录」中的会议室预约记录;

4)在「会议室预约」表单中设置流程节点提交校验,当本次预约时间与已有的会议室申请记录有时间冲突时,不能提交表单。

1.3 预期效果

在「会议室预约」中选择要预约的会议室后,即可通过关联查询字段查看到该会议室的预约记录。选择会议的开始、结束时间时,如果与预约记录中的会议开始时间、结束时间有冲突,则会进行流程节点校验,无法提交表单;修改会议的开始、结束时间和预约记录不冲突后,即可完成表单提交,效果如下:

2. 设置步骤

在学习之前建议安装 人事OA管理 应用模板,本文将按照模板中的示例数据进行讲解。

2.1 表单设计

本案例需要使用 3 张表单,分别是:

  • 会议室基础表:用于录入会议室地点、名称、容纳人数、设备等基础信息;
  • 会议室预约:用于进行会议的预约申请、行政审批;
  • 会议室申请记录:作为智能助手Pro 的新增、修改辅助表,用于后续表单校验的调用。

2.2 配置智能助手Pro

「会议室预约」同步至「会议室申请记录」的流程为:

  • 提交预约申请时,同步在「会议室申请记录」中新增一条记录。此时,申请结果信息为空;
  • 提交后,预约申请会流转至审批节点,需要在审批后,将审批结果同步至上述记录中。

如何通过一个智能助手Pro 解决上述两类事件呢?

2.2.1 配置思路

1)多选如下触发动作,以实现在新增会议室预约和审批预约申请时,均能触发该智能助手Pro:

2)利用修改数据节点的「没有可修改的数据时,向对应表单新增数据」特性,结合过滤条件设置,来区分并按情况执行如下两类事件:

  • 新增预约时,未能在「会议室申请记录」表中找到对应记录,直接新增;
  • 审批预约时,能在「会议室申请记录」表中找到对应记录,同步审批意见。

注:关于修改数据节点的使用方式和执行逻辑,可参考文档 修改数据节点使用说明

2.2.2 配置步骤

1)进入「管理后台 >> 智能助手」,新建智能助手Pro「同步会议室预约情况至申请记录表」,并设置触发方式为「表单触发」,触发表单为「会议室预约」。

2)选中触发节点,进行如下设置:

  • 触发动作1:新增数据时
  • 触发动作2:节点流转时
    • 选择流程节点:审批节点
    • 选择节点行为:提交

3)添加一个 修改数据 节点,用于同步新增/修改会议室的预约情况。

4)进一步对 修改数据 节点进行如下设置:

  • 修改对象:选择表单修改数据
  • 目标表单:会议室申请记录
  • 过滤条件:
    • 「会议室编号」等于「触发数据--会议室编号」
    • 「当前时间」等于「触发数据--当前时间」
    • 「会议主题」等于「触发数据--会议主题」
    • 「预约人」等于「触发数据--预约人」
  • 勾选「没有可修改的数据时,向对应表单新增数据」
  • 字段修改赋值:将「审批意见」赋值为触发数据中「审批意见」的字段值

5)进行字段新增赋值,设置步骤如下:

  • 切换至「新增数据」:在此处进行新增数据时,各字段值的设置;
  • 设置字段值:将各字段值设置为触发数据中相应字段的值。

6)配置完成后,点击「保存并启用」,将智能助手Pro 投入实际使用

2.3 设置数据联动

在「会议室预约」表单中新增 3 个辅助字段:「开始时间判断」、「结束时间判断」、「开始和结束时间判断」,用于对会议室预约时间进行校验,避免使用时间冲突,字段的数据联动配置如下:

1)选中「开始时间判断」字段,在「字段属性 >> 默认值」处,设置选项为「数据联动」,点击「数据联动设置」:

2)进入数据联动设置页面,具体设置如下:

  • 联动表单:会议室申请记录
  • 联动条件:
    • 当前表单中的「会议室」等于联动表单的「会议室」字段
    • 当前表单中的「会议开始时间」小于等于联动表单的「会议开始时间」字段
    • 当前表单中的「会议结束时间」大于等于联动表单的「会议开始时间」字段
    • 当前表单中的「审批意见」不等于“拒绝”
  • 触发联动:「开始时间判断」字段显示联动表单的「会议主题」

全部设置完成点击「确定」。

3)同样的方法,设置「结束时间判断」字段的数据联动规则如下:

  • 联动表单:会议室申请记录
  • 联动条件:
    • 当前表单中的「会议室」等于联动表单的「会议室」字段
    • 当前表单中的「会议开始时间」小于等于联动表单的「会议结束时间」字段
    • 当前表单中的「会议结束时间」大于等于联动表单的「会议结束时间」字段
    • 当前表单中的「审批意见」不等于“拒绝”
  • 触发联动:「结束时间判断」字段显示联动表单的「会议主题」

全部设置完成点击「确认」。

4)同样的方法,设置「开始和结束时间判断」字段的数据联动规则如下:

  • 联动表单:会议室申请记录
  • 联动条件:
    • 当前表单中的「会议室」等于联动表单的「会议室」字段
    • 当前表单中的「会议开始时间」大于等于联动表单的「会议开始时间」字段
    • 当前表单中的「会议结束时间」小于等于联动表单的「会议结束时间」字段
    • 当前表单中的「审批意见」不等于“拒绝”
  • 触发联动:「开始和结束时间判断」字段显示联动表单的「会议主题」

全部设置完成点击「确认」。

2.4 设置流程提交校验

1)进入「流程设定」,选中「流程发起节点」,在「节点属性 >> 更多属性 >> 节点校验条件」处,选择「满足条件的数据才可提交」,点击下方「添加校验条件」:

2)在节点提交校验页面,设置校验内容如下:

  • 不满足校验条件时提示文字:会议结束时间必须大于会议开始时间
  • 公式:
会议开始时间<会议结束时间

3)同样的方法,设置如下节点校验条件:

  • 不满足校验条件时提示文字:会议开始时间需要大于当前时间!
  • 公式:
当前时间<会议开始时间
  • 不满足校验条件时提示文字:开始时间与历史预约记录有冲突,请修改后提交!
  • 公式:(即校验是否该会议开始时间已有其他会议占用)
EXACT(开始时间判断,'')
  • 不满足校验条件时提示文字:结束时间与历史预约记录有冲突,请修改后提交!
  • 公式:(即校验是否该会议结束时间已有其他会议占用)
EXACT(结束时间判断,'')
  • 不满足校验条件时提示文字:开始和结束时间与历史预约记录有冲突,请修改后提交!
  • 公式:(即校验是否该会议时间已有其他会议占用)
EXACT(开始和结束时间判断,'')

2.5 效果演示

效果演示参见本文【1.3 预期效果】。

文档内容是否对您有帮助?
有帮助
没帮助没帮助
如需获取即时帮助,请联系技术支持
咨询
扫码领取100+零代码资料简道云官方微信号400-111-0890
图标在线咨询
立即体验