肇新合同肇新合同2.0文档中心
功能介绍
功能介绍

通知模板与提醒

学习如何配置系统通知模板、定时提醒规则及查看通知日志。涵盖任务事件、通用通知、定时提醒三种场景,支持邮件、短信、钉钉等多渠道推送。 通知模板与提醒 - 消息推送配置与管理指南

通知模板路径:【管理后台】→【消息推送管理】→【通知模板】
定时提醒规则路径:【管理后台】→【消息推送管理】→【到期提醒】
通知日志路径:【管理后台】→【消息推送管理】→【消息记录】
计划任务路径:【管理后台】→【消息推送管理】→【计划任务】
权限:需要通知配置权限(config:notify


一、通知模板

路径:【管理后台】→【消息推送管理】→【通知模板】

通知模板定义了系统在不同业务事件触发时发送的消息内容和渠道。

1.1 模板要素

  • 模板名称:描述性名称,如"审批通过通知",可自定义修改
  • 模板编码:系统预置的唯一标识(不可修改),用于关联业务事件
  • 场景类型(不可修改):决定模板的触发方式
  • 事件类型(不可修改):具体触发事件,仅"任务事件"场景需要
  • 业务类型(不可修改):关联的业务模块(如合同审批、变更审批、用印审批等)

1.2 三种场景类型与触发机制

系统的通知分为三条独立的触发路径,每种路径的触发时机和可用变量各不相同:

任务事件(task)— 共 9 个模板

审批流程流转时自动触发的通知,无需手动干预。

  • 触发时机与接收人

    • 任务创建:审批任务分配给审批人时,通知审批人“您有新的待办”
    • 任务转交:审批任务被转交给其他人时,通知新的处理人
  • 模板匹配规则

    系统会根据"这个待办来自哪种业务"来自动选择对应的模板。具体规则如下:

    举例:张三提交了一份合同审批,系统产生了一条待办任务分配给审批人李四。此时系统需要发通知给李四,它会这样找模板:

    1. 先看有没有专门给"合同审批"配的待办通知模板 → 找到了 TASK_CREATED_AUDIT(审批待办通知),就用这个发送
    2. 如果没有找到(比如后续新增了某种新业务但还没配模板),就自动用 TASK_CREATED_DEFAULT(新待办通知-默认)兜底

    用户无需操作,系统会自动匹配。如果您只想修改某个环节的通知内容(比如只改"用印待办"的消息文字),直接编辑那个模板即可,不会影响其他环节。

任务创建类(8个)——有新待办时通知处理人"您有新的任务":

模板编码模板名称什么时候用
TASK_CREATED_DEFAULT新待办通知(默认)兜底模板:找不到下面任何一个专用模板时使用
TASK_CREATED_AUDIT审批待办通知合同提交审批后,通知审批人
TASK_CREATED_CHANGE变更审批待办通知合同变更提交审批后,通知审批人
TASK_CREATED_STAMP用印待办通知合同进入用印环节,通知用印人
TASK_CREATED_REVIEW归档复核待办通知合同进入归档复核,通知复核人
TASK_CREATED_STAMP_APPLY申请用印待办通知合同审批通过后,通知发起人去申请用印
TASK_CREATED_UPLOAD_SEAL上传双章待办通知用印完成后,通知发起人上传双章文件
TASK_CREATED_STAMP_AUDIT用印审批待办通知用印审批环节,通知审批人

任务转交类(1个)——待办被转交给其他人时,通知新处理人:

模板编码模板名称
TASK_TRANSFERRED_DEFAULT待办转交通知(默认)

说明:审批的最终结果(整个流程通过/拒绝/作废等)不在这里,而是由下面的"通用通知"负责发送。

通用通知(notify)— 共 21 个模板

由业务代码在特定操作完成后主动触发的通知,每种通知有独立的模板编码。

合同审批与流程类:

模板编码触发时机典型接收人
CONTRACT_BEING_SEAL合同到达用印环节用印负责人
CONTRACT_CHANGE_BEING_SEAL变更单到达用印环节用印负责人
CONTRACT_USE_SEAL_FINISH合同用印完成发起人
CONTRACT_CHANGE_USE_SEAL_FINISH变更单用印完成发起人
CONTRACT_RE_AUDIT_PASS合同归档复核通过发起人
CONTRACT_RE_AUDIT_NO_PASS合同归档复核不通过发起人
CONTRACT_CHANGE_RE_AUDIT_PASS变更归档复核通过发起人
CONTRACT_CHANGE_RE_AUDIT_NO_PASS变更归档复核不通过发起人

合同终态类:

模板编码触发时机典型接收人
CONTRACT_DONE合同已完成并关闭发起人/负责人
CONTRACT_CANCELLED合同已作废发起人/负责人

催办类:

模板编码触发时机典型接收人
CONTRACT_QUALIFICATION_NOTIFY资质申请列表点击「催办」资质管理员

人员变动与协作类:

模板编码触发时机典型接收人
WORKFLOW_COPY工作流抄送被抄送人
WORK_HANDOVER工作交接完成新负责人
CONTRACT_DIRECTOR_CHANGE合同负责人变更相关人员

资质借阅类:

模板编码触发时机典型接收人
CERT_BORROW_APPLY资质借阅申请审批人
CERT_BORROW_PASS资质借阅通过申请人
CERT_BORROW_NO_PASS资质借阅不通过申请人

维护工单类:

模板编码触发时机典型接收人
MAINTENANCE_ORDER_START维护工单开启负责人
MAINTENANCE_ORDER_END维护工单结束负责人

AI 合同雷达类:

模板编码触发时机典型接收人
AI_FULFILLMENT_OVERDUE履约任务已逾期合同负责人
AI_FULFILLMENT_EXPIRING履约任务即将到期合同负责人

其他:

模板编码触发时机典型接收人
USER_ADD新用户注册新用户

定时提醒(schedule)— 共 9 个模板

由系统定时任务按计划自动扫描并触发的提醒。每种提醒业务类型对应一个模板,详见第二章"定时提醒"。

模板编码模板名称
CONTRACT_END_PRE合同到期提醒
BORROW_EXPIRE_PRE借阅到期提醒
CERTIFICATE_END_PRE合作方资质到期提醒
BACK_CONTRACT_PRE用印完成后,提醒负责人收回纸质合同并上传双章扫描件
QUALIFICATION_EXPIRE_PRE资质借阅到期提醒
PAYMENT_REMIND_PRE付款提醒
RECEIVE_REMIND_PRE收款提醒
PERIODIC_CHECK_PRE定期提醒
MONITORING_REMIND_PRE履约监控项提醒

1.3 推送渠道

每个通知模板可以独立开启或关闭以下推送渠道(可同时开启多个):

  • 邮件:通过邮件发送(需先在系统管理中配置邮件服务)
  • 短信:通过腾讯云短信发送(需先配置短信服务)
  • 钉钉:通过钉钉工作通知发送(需先配置钉钉集成)
  • 企业微信:通过企微消息发送(需先配置企微集成)
  • 飞书:通过飞书消息发送(需先配置飞书集成)

1.4 模板变量

在消息标题和内容中可以使用 ${变量名} 格式的变量,系统在发送时会自动替换为实际值。

不同场景类型的可用变量不同,编辑模板时系统会根据场景类型和模板编码自动加载对应的变量面板。点击变量可直接复制。

任务事件公共变量

所有任务事件模板(场景类型 = 任务事件)共享以下变量:

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${objId}业务ID
${result}处理结果通过/不通过

通用通知变量

每个通用通知模板(场景类型 = 通用通知)有各自专属的变量,编辑模板时系统会根据模板编码自动加载对应的变量面板。各模板编码对应的变量如下:

工作交接(WORK_HANDOVER)

变量说明示例
${num}交接合同数量5
${user1}原负责人张三
${user2}新负责人李四

合同到达用印(CONTRACT_BEING_SEAL)

变量说明示例
${contractName}合同名称XX采购合同
${objId}用印申请ID

变更单到达用印(CONTRACT_CHANGE_BEING_SEAL)

变量说明示例
${contractName}合同名称XX采购合同
${objId}用印申请ID

合同用印完成(CONTRACT_USE_SEAL_FINISH)

变量说明示例
${contractName}合同名称XX采购合同

变更单用印完成(CONTRACT_CHANGE_USE_SEAL_FINISH)

变量说明示例
${contractName}合同名称XX采购合同
${date}完成时间2026-02-26 10:00

合同归档通过(CONTRACT_RE_AUDIT_PASS)

变量说明示例
${contractName}合同名称XX采购合同

变更单归档通过(CONTRACT_CHANGE_RE_AUDIT_PASS)

变量说明示例
${contractName}合同名称XX采购合同
${date}归档时间2026-02-26 10:00

合同归档不通过(CONTRACT_RE_AUDIT_NO_PASS)

变量说明示例
${contractName}合同名称XX采购合同

变更单归档不通过(CONTRACT_CHANGE_RE_AUDIT_NO_PASS)

变量说明示例
${contractName}合同名称XX采购合同
${date}操作时间2026-02-26 10:00

审批/用印催办(CONTRACT_AUDIT_NOTIFY)

变量说明示例
${contractName}合同名称XX采购合同
${applyUser}发起人张三
${infoType}催办类型审批/用印
${objId}合同ID

工作流抄送(WORKFLOW_COPY)

变量说明示例
${businessName}业务名称XX采购合同
${senderName}抄送人张三
${category}业务分类合同审批
${copyMessage}抄送自定义消息张三发起的XX采购合同已抄送给您,请查阅。

用户注册(USER_ADD)

变量说明示例
${userName}用户名zhangsan

资质借阅申请(CERT_BORROW_APPLY)

变量说明示例
${userName}申请人张三
${objId}申请ID

资质借阅通过(CERT_BORROW_PASS)

变量说明示例
${date}审批时间2026-02-26 10:00:00

资质借阅不通过(CERT_BORROW_NO_PASS)

变量说明示例
${date}审批时间2026-02-26 10:00:00

资质催办(CONTRACT_QUALIFICATION_NOTIFY)

变量说明示例
${applyUser}申请人张三
${objId}申请ID

借阅催办(CONTRACT_BORROW_NOTIFY)

变量说明示例
${applyUser}申请人张三
${objId}借阅ID

合同审批通过(CONTRACT_AUDIT_PASS)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${objId}合同ID

合同审批拒绝(CONTRACT_AUDIT_REJECT)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${objId}合同ID

合同已完成(CONTRACT_DONE)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${objId}合同ID

合同已作废(CONTRACT_CANCELLED)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${objId}合同ID

维护工单开始(MAINTENANCE_ORDER_START)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${objId}合同ID

维护工单结束(MAINTENANCE_ORDER_END)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${objId}合同ID

定时提醒变量

所有定时提醒模板(场景类型 = 定时提醒)共享以下公共变量:

变量说明示例
${bizName}业务名称XX采购合同
${bizCode}业务编号HT-2026-001
${daysRemain}剩余天数(未过期时)7
${daysOverdue}超期天数(已过期时)3
${expireStatus}到期状态即将到期/今天到期/已过期

此外,每种提醒类型还有各自的业务变量,编辑模板时系统会根据模板编码自动加载:

合同到期(CONTRACT_END_PRE)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${date}到期日期2026-03-01

借阅到期(BORROW_EXPIRE_PRE)

变量说明示例
${applyCode}借阅申请编号JY-2026-001
${returnDate}应归还日期2026-03-01
${borrowType}借阅类型在线借阅/原件借阅
${borrowUserName}借阅人张三

资质到期(CERTIFICATE_END_PRE)

变量说明示例
${partnerName}合作方名称XX公司
${certificate}资质名称营业执照
${date}到期日期2026-03-01

双章收回(BACK_CONTRACT_PRE)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001

资质借阅到期(QUALIFICATION_EXPIRE_PRE)

变量说明示例
${qualificationName}资质名称营业执照
${returnDate}应归还日期2026-03-01
${borrowType}借阅类型在线借阅/原件借阅
${borrowUserName}借阅人张三

付款提醒(PAYMENT_REMIND_PRE)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${planName}付款计划名称首付款
${planAmount}付款金额50000
${date}计划付款日期2026-03-01

收款提醒(RECEIVE_REMIND_PRE)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${planName}收款计划名称首期回款
${planAmount}收款金额50000
${date}计划收款日期2026-03-01

履约监控提醒(MONITORING_REMIND_PRE)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${itemName}监控项名称验收节点
${date}计划完成日期2026-03-01

定期提醒(PERIODIC_CHECK_PRE)

变量说明示例
${contractName}合同名称XX采购合同
${contractCode}合同编号HT-2026-001
${effectiveDate}合同生效日期2024-03-01
${archiveDate}归档日期2025-03-01

1.5 邮件的两层模板机制

系统发出的每封邮件,其实是由两部分拼在一起的:

  1. 外层:统一的邮件样式

    • 可以理解为所有邮件共用的"信纸"——上面印着系统名称、下面印着版权信息,中间留了一块空白区域放正文。
    • 设置位置:【管理后台】→【开发管理】→【参数设置】→【邮件配置】。
    • 改了这里,所有邮件的外观都会跟着变。可以点「预览效果」提前看看改完是什么样。
    • 详见《02-系统设置-集成与通知》。
  2. 内层:每个模板自己的正文

    • 就是你在编辑通知模板时写的"邮件内容"。发送时,系统会把这段正文填进上面那个"信纸"的空白区域里。
    • 改了这里,只影响这一种通知的邮件内容,不影响其他通知。

一句话总结:外层管长相(所有邮件统一样式),内层管内容(每种通知各写各的)。

1.6 编辑模板

  1. 在通知模板列表中找到要编辑的模板
  2. 点击「编辑」按钮打开编辑抽屉
  3. 基础信息(模板编码、场景类型、业务类型、事件类型)为系统预置,不可修改
  4. 消息内容:编辑消息标题和正文,可在变量面板中点击变量快速插入
  5. 邮件(可选):如需单独配置邮件标题和正文,在邮件区域填写,支持 HTML 格式。为空时使用消息内容作为邮件正文。邮件发送时会自动套入全局邮件布局模板中
  6. 短信(可选):填写腾讯云短信模板 ID 和短信参数顺序(逗号分隔的变量名,对应腾讯云模板中 {1},{2},{3} 的顺序)
  7. 推送渠道:通过开关选择需要启用的推送渠道
  8. 点击「保存」

注意:系统预置的默认模板不允许删除,仅可编辑内容和渠道配置。

1.7 确认通知是否发送成功

配置好通知模板后,可以通过以下方式确认通知是否正常发出:

  1. 触发一次业务操作:例如提交一条合同审批,让系统产生一条实际的通知事件
  2. 查看通知日志:在【消息推送管理】→【消息记录】页面搜索对应的模板编码或消息标题,查看是否有发送记录
  3. 检查发送状态:日志中会显示每条通知的推送渠道、接收人、发送状态(成功/失败)以及失败原因

说明:系统没有"测试发送"按钮。验证通知是否正常工作,需要通过实际触发业务操作后查看通知日志来确认。


二、定时提醒

路径:【管理后台】→【消息推送管理】→【到期提醒】

定时提醒用于按计划自动扫描业务数据并发送提醒,如合同到期提醒、付款提醒、借阅归还提醒等。

2.1 支持的业务类型

系统支持以下 8 种定时提醒场景:

业务类型说明关键日期默认时间点
合同到期提醒合同到期前/到期后提醒相关人员合同结束日期提前90/30/7天、当天
借阅到期提醒合同借阅到期前提醒归还应归还日期提前7/3天、当天
合作方资质到期提醒合作方资质证照到期提醒资质到期日期提前30/7天、当天
双章收回提醒我方用印完成后,提醒收回纸质合同用印完成时间提前7/3天、当天
资质借阅到期提醒资质借阅到期归还提醒应归还日期提前7/3天、当天
付款提醒按付款计划提醒付款计划付款日期提前7/3天、当天
收款提醒按收款计划提醒收款计划收款日期提前7/3天、当天
履约监控项提醒合同履约监控项到期提醒计划完成日期提前7/1天、当天
定期提醒归档满一年的合同,在每个自然年合同开始日期提醒合同生效日期提前7天、当天

2.2 系统默认提醒

对于合同到期付款收款履约监控项这 4 种核心业务类型,即使管理员未配置任何自定义规则,系统也会按上表中的"默认时间点"自动提醒合同负责人

  • 在【到期提醒】列表页面顶部,可以看到系统默认提醒区域,显示每种业务类型当前是"默认提醒中"还是"已自定义"
  • 创建自定义规则后,该业务类型的默认提醒自动停用,以您配置的规则为准
  • 删除或禁用所有自定义规则后,默认提醒将自动恢复

2.3 自定义提醒规则

点击列表页右上角的「新增规则」按钮,可创建自定义提醒规则。每条规则包含 4 个配置项:

基本信息

  • 规则名称:自定义名称,如"重点合同到期提前3个月提醒"
  • 业务类型:选择需要提醒的业务场景(见上表)
  • 备注:可选的补充说明

过滤条件

过滤条件决定哪些数据需要发送提醒,不配置则对该业务类型的所有数据发送提醒。

可用的过滤字段根据业务类型自动匹配,常见字段包括:

  • 合同金额:支持大于等于、小于等于、等于、区间
  • 合同类型:下拉多选
  • 合同阶段:下拉多选(如仅提醒履约中的合同)
  • 我方主体:下拉多选
  • 签约相对方:下拉多选
  • 归属部门:下拉多选
  • 创建人:人员选择器
  • 借阅类型:在线借阅/原件借阅(仅借阅到期场景)

多个过滤条件之间可选择"全部满足(AND)"或"满足任一(OR)"的关系。

提醒时间点

设置在关键日期的什么时候发送提醒。每条规则可以添加多个时间点,支持三种模式:

  • 到期前 N 天:在关键日期之前的指定天数发送(如提前 30 天提醒),N 范围 1~365
  • 到期当天:在关键日期当天发送
  • 到期后每天重复:过期后每天持续提醒,可设置最多重复天数(如最多重复 30 天),避免无限提醒

示例:一条合同到期提醒规则设置了"提前30天、提前7天、到期当天、到期后每天(最多30天)"四个时间点,则系统会在到期前 30 天发一次、前 7 天发一次、到期当天发一次、到期后连续 30 天每天发一次。

接收人策略

设置提醒发送给谁。每条规则可以添加多个接收人策略(并集关系):

策略说明适用场景
发起人/负责人业务数据的发起人或负责人所有场景
合同负责人业务数据关联合同的负责人监控项提醒等
固定人员指定具体的用户需通知到特定人时
指定角色指定角色下的所有用户通知整个角色组时
系统参数从系统参数中读取管理员用户ID通知系统配置的管理员时
部门领导发起人所在部门的领导需上级知晓时

注意:不同业务类型支持的接收人策略不同。例如"合同负责人"策略仅适用于履约监控项提醒(因为监控项负责人与合同负责人可能不同)。选择业务类型后,接收人下拉选项会自动过滤为该类型支持的策略。

2.4 启用与禁用

  • 在规则列表中,通过启用开关可以随时启用或禁用某条规则
  • 禁用后该规则不再触发提醒,但不会被删除
  • 如需删除规则,点击操作列的「删除」按钮

2.5 执行机制

定时提醒由系统后台的计划任务驱动,执行频率可在【管理后台】→【消息推送管理】→【计划任务】中查看和调整(Cron 表达式)。

每次执行时,系统会:

  1. 加载所有已启用的提醒规则
  2. 对每条规则,根据时间点配置计算需要查询的日期范围
  3. 查询符合过滤条件的业务数据
  4. 解析接收人
  5. 防重复检查:同一条规则 + 同一条业务数据 + 同一天,只会发送一次提醒
  6. 通过关联的通知模板和推送渠道发送提醒

说明:提醒消息的推送渠道取决于对应通知模板中开启的渠道。例如,如果"合同到期提醒"模板只开启了邮件和钉钉,那么定时提醒也只会通过邮件和钉钉发送。

2.6 确认提醒是否执行

如果配置了提醒规则但没有收到提醒,按以下步骤逐一排查:

  1. 规则开了没? 回到【消息推送管理】→【到期提醒】列表,看一下这条规则的启用开关是不是打开状态
  2. 定时任务开了没? 到【消息推送管理】→【计划任务】页面,找到"任务超期提醒"这个任务,确认它是启用状态。如果这个任务没开,系统根本不会去检查哪些数据该提醒
  3. 日志里有没有记录? 到【消息推送管理】→【消息记录】页面搜索一下对应的模板名称,看系统有没有实际发过这条提醒
  4. 推送渠道开了没? 到对应的通知模板里看看,是不是至少打开了一个推送渠道(站内信、邮件、钉钉等)。如果所有渠道都关着,系统即使触发了提醒也发不出去

三、通知日志

路径:【管理后台】→【消息推送管理】→【消息记录】

通知日志记录系统所有通知的发送记录,是排查通知问题的核心工具。

3.1 日志内容

每条日志包含以下信息:

字段说明
消息标题发送的消息标题(变量已替换为实际值)
模板编码使用的通知模板编码
推送渠道具体的推送渠道(邮件/短信/钉钉/企微/飞书)
接收人消息的接收人
推送内容发送的消息正文
推送时间消息发送的时间
状态成功、失败、待发送、已放弃
失败原因失败时的错误信息

3.2 搜索与筛选

支持按以下条件筛选日志:

  • 消息标题:模糊搜索
  • 推送渠道:按渠道类型筛选(邮件/短信/钉钉/企微/飞书)
  • 推送状态:成功或失败
  • 接收人:按接收人搜索

3.3 常见排查场景

  • 通知没有发出

    1. 搜索对应模板编码,如果没有任何记录,说明事件未触发或模板未匹配
    2. 检查通知模板是否已正确配置场景类型和业务类型
    3. 如果是定时提醒,检查规则是否启用、计划任务是否正常运行
  • 通知发送失败

    1. 在日志中找到状态为"失败"的记录
    2. 查看"失败原因"列的错误信息
    3. 常见原因:邮件服务未配置、短信模板ID错误、钉钉/企微/飞书集成配置有误、接收人信息不完整
  • 收不到某个渠道的通知

    1. 检查通知模板中该渠道的开关是否已开启
    2. 检查系统管理中该渠道的基础配置(如邮件服务器、钉钉 AppKey 等)是否正确
    3. 在日志中确认该渠道是否有发送记录