审批流 ======== 案例1 - 审批完成时发送通知邮件 ------------------------------ 需求 ^^^^ 有一项目申请管理系统在审批完成后,为确保消息即时抵达申请人员,需要在审批通过时发送一封通知邮件至项目申请人。 解决方案 ^^^^^^^^ - 可在审批完成的后置逻辑中绑定python - 在Python中获取当前审批数据对应审批记录的 **最早一条**,得到申请人信息 .. panels:: :container: container pb-1 img-auto-width :column: col-lg-12 p-0 :body: p-0 .. image:: ../images/eg_appr_case1_bindpy.png 代码 ^^^^ .. code-block:: python from deepfos.api.space import SpaceAPI from deepfos.element.apvlprocess import ApprovalProcess def send_mail(to, msg): # 获取接受方信息 mail = to.email name = to.userName # 实现具体的发送邮件逻辑 return def main(p1, p2): # 实例化审批流对象 appv = ApprovalProcess('project_approve') # 根据审批数据获取审批记录 appv_records = appv.get_record(p2['primaryKeyValue']) # 获取最早一条审批记录的操作人 user_id = appv_records[-1].operate_user # 获取用户的信息作为邮件接收方 api = SpaceAPI() user = api.user.query(userId=user_id, status='ENABLE') # 发送通知邮件 project_code = p2['primaryKeyValue']['project_code'] send_mail(user, f"您申请的项目:【{project_code}】 已通过审批") .. hint:: 上述代码并不完整,没有实现具体的邮件发送逻辑。