牛刀专业低代码平台开发实战—三会议案

215 阅读5分钟

一、功能描述

图片

1、流程发起

      申请人新建一个股东会申请,会议中有多个事项需要审批。退回到发起人的,发起人再次提交,直接流转到退回者,不需要再重复已同意的流程环节。

实现效果:

图片

2、流程审批

      流程需要分三个阶段审批:

      1) 第一阶段,从发起到“申请人主管领导”环节。“申请人岗位经理”、“申请人主管领导”两个环节,根据申请人所在单位不同,审批环节不一样。如果申请人没有对应的岗位经理或主管经理,则审批时需要跳过对应流程环节;

      2)第二阶段,子流程环节,会议中的多事项分为多个子流程,按照单个事项进行审批,其中主办人可以选择会签。会签人审批完成后会签人部门经理会进行审批。子流程的任何一个环节不同意,都退回到主办人,由主办人选择是否退回到发起人;

        3)第三阶段,子流程后面环节,“法律部主办人”环节会把单次会议所有事项合并到一起审批,其后的任何一个环节,都只退回到此环节,并由其选择是否退回到发起人;“法律部主管领导”环节可以选择是否到“上报总经理”环节。

实现效果:      

图片

图片

图片

二、实现思路

      牛刀专业低代码平台采用业务模型驱动设计模式,提供数据建模、服务建模、流程建模、页面建模等模型设计工具,既可以通过可视化界面来定义数据模型、定义模型中的字段、建立数据库表与表之间的关系,以及设置数据模型的规则;也可以基于可视化界面来构建用户界面和定义流程,并自动生成对应源码,可以通过本地IDE或云IDE修改代码的方式来扩展功能。

(1) 创建企业门户应用

      根据应用模板中的“企业门户”应用模板创建门户应用,并初始化。

(2) 创建工作流应用

      根据应用模板中的“工作流”应用模板创建应用,并在门户中通过自动注册的方式注册服务。

(3) 数据模型定义

      根据需求确定数据结构,并通过可视化界面设计数据模型。

(4) 页面设计

      会议申请需要流程审批,创建页面时需要基于包含流程的页面模板创建,快速生成可以操作数据模型的页面。

工作流定义

      在创建“三会议案主信息”和“三会议案明细信息”页面的同时会自动生成一个简单流程,我们基于自动生成的简单流程进行开发。

(5) 代码提交

      平台默认使用git进行开发协作管理。

(6) 应用发布

      应用的编译、构建、发布过程是自动化的,发布后在门户中查看。

三、平台功能应用

      1 、牛刀专业低代码平台数据模型支持主从表关系的设置,用于在不同的表之间建立主从关系。

      本案例的“三会议案主信息”是主表,“三会议案明细信息”是从表,这两个表之间需要建立主从关系,需要在从表的高级选项中勾选“从数据集”,并关联主表。

图片

      2 、牛刀专业低代码平台流程支持根据复杂表达式来判断流程分支执行路径,表达式支持嵌入自己写的函数。

      本案例中,申请人提交申请后,系统需要根据条件判断是否需要申请人岗位经理审批;申请人部门经理审批后,也需要根据条件判断是否需要主管领导审批。

图片

图片

图片

      3 、牛刀专业低代码平台主流程发起子流程时,支持从多个子流程中选择子流程。

      本案例中,启动子流程时,可以从“三会议案子流程”和“三会议案流程”中选择“三会议案子流程”作为需要执行的子流程。

图片

图片

      4 、牛刀专业低代码平台主流程发起子流程时,支持根据 “业务主键”处设置的业务表和字段信息来产生子流程。

      本案例中,主流程启动的子流程,是根据子表“三会会议明细信息”的主键来产生的,子表的主键来自主表主键所对应的子表主键,每一个子表主键会对应启动一个子流程。

图片

图片

      5 、牛刀专业低代码平台流程环节支持通过事件设置,跳过某些环节。

      本案例中,子流程的“申请人”环节通过事件设置,会自动跳过进入“主办人”环节。

图片

图片

      6 、牛刀专业低代码平台流程多人任务(会签)的任务协作模式支持“独立”和“共同”两种模式,独立模式即任务互相独立,有人可以回退,有人可以继续执行。

    本案例中,三会议案子流程的会签节点使用的是“独立”模式。

图片

图片

      7 、牛刀专业低代码平台流程回退规则支持对返回方式和回退范围等进行设置。

      本案例中,子流程回退规则设置,返回方式为“原路返回”,回退范围设置为“指定环节”。

图片

图片

关于此案例的开发视频,请点击以下链接进行查看:

      01-牛刀专业低代码开发实战案例—三会议案—需求

      02-牛刀专业低代码开发实战案例—三会议案—系统演示

      03-牛刀专业低代码开发实战案例—三会议案—数据模型创建

      04-牛刀专业低代码开发实战案例—三会议案—表单功能实现

      05-牛刀专业低代码开发实战案例—三会议案—主流程实现

      06-牛刀专业低代码开发实战案例—三会议案—子流程实现