简易出差审批应用开发
本示例通过使用AppCube的BPM功能,带您快速创建一个简易版的出差审批应用。
通过创建出差审批应用,您可以初步了解轻应用的基本概念并体验“BPM”的能力。
场景说明
本示例主要针对员工出差场景,即员工在出差前需要提交一个出差申请审批的电子流程,员工提交出差申请后,主管处理审批或拒绝提交人申请。
本示例中的出差审批应用主要包括如下功能:
- 基于BPM模板创建出差电子流。
- 发送邮件。

前提条件
步骤1:添加子帐号并进行授权
添加子帐号的目的是为了给应用添加不同角色的业务用户,本示例中的应用包括主管和员工两种角色的业务用户。创建出差审批应用前,需要将员工、主管子帐号添加到AppCube中。
- 在统一身份认证服务IAM中创建两个子帐号(主管和员工)。
- 在AppCube中添加子帐号并授权。
- 以租户帐号登录华为云。
- 单击
,在查找框中搜索“应用魔方”,单击查找的结果,进入AppCube服务控制台。
- 在AppCube服务控制台,单击实例中的“进入经典首页”。
- 单击页面上方的“管理”,进入AppCube管理中心。
- 在左侧导航栏中,选择“用户管理 > 用户”,单击“添加IAM用户”。
- 在全部用户列表中,选择1中创建的子帐号,单击“下一步”。图3 选择待添加的子帐号
- 赋予主管和员工Developer Profile权限,单击“保存”。
Developer Profile为开发者权限,拥有这个权限的用户可以在AppCube进行开发。在实际的出差审批应用中,只需赋予业务用户Portal User Profile或Anonymous User Profile权限即可。此处为了验证出差审批应用的功能,赋予业务用户(员工Mike、主管Helen)Developer Profile权限。如何给业务用户授权,请参见配置业务用户。
图4 给子帐号授权
步骤2:创建工作队列
工作队列是AppCube中的一种成员集,即在实际业务场景中,用来记录一类具有相同权限和任务对象的成员集。
本示例中应用需要使用到表1中2个工作队列,用于在BPM中区分不同角色在流程中处理的任务。
步骤3:创建空白轻应用
创建应用是在AppCube开发环境开发项目的第一步,也是端到端构建软件应用的入口。此处创建一个空白轻应用的目的是在该应用的Logic目录下创建BPM。
- 以租户帐号登录AppCube服务控制台。
- 在实例列表中,单击“旧版入口”,进入开发环境首页。
- 在“项目”中,单击轻应用图标,进入创建轻应用页面。图8 进入创建轻应用入口
- 单击“创建空白轻应用”,输入轻应用标签和名称,此处均设置为BTA。
图9名称前的CNAME01为命名空间,在AppCube中为了避免不同租户间数据的重名,租户在首次创建应用时需要先定义一个命名空间。一个租户只能创建一个命名空间,创建后不支持修改,请谨慎定义。
- 单击“创建”,进入BTA应用开发页面。图10 BTA应用开发页面
在BTA应用开发页面,若出现下图中提示,请单击页面的“请单击此处进行配置”,进入“用户管理 > 公司配置 > 公司信息”中配置默认SMTP邮箱服务器,具体请参见服务编排、BPM、脚本中发送邮件功能不可用。若不配置默认SMTP邮箱服务器,主管无法正常审批出差电子流。
步骤4:创建BPM
基于BPM中HR类流程模板,创建BPM,并设置各泳道责任人。
- 创建BPM。
- 在BTA应用开发页面,单击Logic目录后的
,单击“BPM”。
- 在添加BPM页面,单击“基于模板”,设置标签、名称和描述信息。图11 添加BPM
- 单击“选择模板”,选择“HR”中的“出差申请”模板后,单击“创建”。图12 选择出差申请模板
执行上述操作后,在BTA应用开发页面的“Logic”目录下,可查看到基于出差模板创建的BPM。
- 在BTA应用开发页面,单击Logic目录后的
- 设置BPM,配置各泳道处理人。
在进行BPM设计前,请先参照初始BPM中内容对BPM设计界面进行全面的了解。
- 在BTA应用开发页面,单击基于出差模板创建的BPM,单击
,获取锁定。
- 单击“Process Owner”泳道,配置工作队列为“Employee”。图13 配置员工为申请人
- 单击“Reviewer”泳道,配置工作队列为“Manager”。图14 配置主管为审批人
- 单击泳道“Process Owner”上的“重新填写请求”用户任务元素,设置任务标题为“待重新提交”。
执行该操作的目的是,后续在“我的待办”中可以看到“待重新提交”的任务状态。
图15 配置为待重新提交 - 单击泳道“Reviewer”上的“申请审批”用户任务元素,设置任务标题为“待主管审批”。
执行此操作的目的是,后续在“我的待办”中可以看到“待主管审批”的任务状态。
图16 配置为待主管审批 - 单击
,保存设置。
- 单击
,启用BPM。
- 在BTA应用开发页面,单击基于出差模板创建的BPM,单击
步骤5:配置BTA应用
在应用配置中,定义出差审批应用的导航菜单栏。
- 在BTA应用开发页面,单击底部的“配置”,进入应用配置页面。图17 进入应用配置
- 在“导航条”页签,单击“菜单树 > Home”后的
,将“标签”设置为“我的待办”。
图18 编辑页签 - 单击“菜单树”后的
,选择“添加页签”,新建我要出差页签。
图19 添加我要出差页签图20 导航条最终效果 - 单击BTA应用开发页面下方的
,可预览出差审批应用。
图21 出差审批应用效果图到此,您已完成出差审批应用的开发。
思考:如何将导航栏菜单在出差审批应用顶部显示?
在应用配置页面的“布局和颜色”中,可以修改菜单样式、应用图标等。
图22 设置后效果
步骤6:业务功能调测
出差审批测试流程:员工提交出差申请,主管对申请进行审批,分别测试审批通过、拒绝与重填。
- 我是员工,填写出差申请。
- 以员工帐号(本示例为Mike)登录AppCube服务控制台。图23 员工登录AppCube
- 单击实例中的“旧版入口”,进入开发环境首页。
- 在“项目 > 我的应用”中,单击已创建的BTA应用,进入BTA应用开发页面。
- 单击页面下方的
,进入应用预览页面。
- 单击“我要出差”,填写出差信息,单击“提交”。
- 在确认页面,单击“确定”。
- 以员工帐号(本示例为Mike)登录AppCube服务控制台。
- 我是主管,审批出差申请。
- 以主管帐号(本示例为Helen)登录AppCube服务控制台。图26 主管登录AppCube
- 单击实例中的“旧版入口”,进入开发环境首页。
- 在“项目 > 我的应用”中,单击已创建的BTA应用,进入BTA应用开发页面。
- 单击页面下方的
,进入应用预览页面。
- 单击“我的待办”,在我的待办列表中,单击“待主管审批”,进入主管审批页面。图27 我的待办图28 主管审批页面
- 单击“通过”或“驳回”。
恭喜您,完成了出差审批应用的开发和功能测试。通过本章节的操作,相信您对AppCube中的轻应用及BPM有了一定的了解,若需更深入的学习AppCube,可挑战一下进阶实战和高阶实战。
思考:如何将出差审批应用发布到运行环境?发布到运行环境后,队列中数据会同步到运行环境中吗?
- 问题1:免费版不提供运行环境,若需将应用发布到运行环境,请购买专享版或专业版本,详情可参见购买商用租户。如何编译发布应用,请参见如何编译发布应用。
- 问题2:出差审批应用发布到运行环境后,开发环境中的队列信息不会同步到运行环境中,请在运行环境中重新执行步骤2:创建工作队列。
- 以主管帐号(本示例为Helen)登录AppCube服务控制台。
