二次开发如何扩展工作流协作关系

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

二次开发如何扩展工作流协作关系

      企业中各项经营活动主要是通过人与人之间协作共同完成。各项业务的协作关系构建了人与人之间的网络化关系,人与人之间的业务协作关系有基于行政组织架构关系的协作,岗位汇报关系的协作、角色汇报关系的协作、项目汇报关系的协作等等。 

      工作流,是指一类能够完全自动执行的经营过程,根据一系列过程规则,将文档、信息或任务在不同的执行者之间进行传递与执行。 工作流协作关系要支持以“人”为中心的多维业务协作关系,工作流协作关系来源于各业务,取之于各业务,用之于各业务,比如基于行政组织的行政汇报关系,基于渠道关系的渠道汇报关系,基于项目协作的项目汇报关系等。

      苍穹平台工作流中内置行政组织汇报关系,可基于业务关系扩展自己的汇报关系,本文以基建项目汇报关系为例,讲解如何扩展项目中的项目经理这个人员关系。


第一步:

      在工作流协作关系中自定义一个类型,如下图:

    关键信息说明:

    1. 微服务接口名:为一个接口,接口中定义了相关关系的方法说明。

    2. ServiceFactory包路径:为ServiceFactory所在的包路径,按照规范,各个业务可以自己建立自己的ServiceFactory. 在自己的ServiceFactory中建立接口有实现类的映射关系。

    每个业务的微服务都需要写一个ServiceFactory的类,包路径就是在协作关系中填写的包路径,格式为kd.xxx.xxx.servicehelper, 其中必须存在注册的服务类

    3. 增加关系类型说明:这里增加项目经理的关系类型,方法名为接口中对应的方法名称。

    4. 关系类型参数:可自定义相关参数,并选择参数类型和说明。

 

第二步

    在节点中增加参与人,选择关系类型,在协作类型中选择刚刚建立的项目汇报关系,参照人选择【单据-创建人】,关系选择汇报关系中定义的关系类型【项目经理】,参数中会列出在汇报关系中项目经理定义的参数,然后选择参数的值,最终解析出来的值为:单据-创建人的项目经理。

   关键信息说明:

    1. 图中的参数仅做测试使用。

    2. 参数的映射字段可以选择单据中的某个字段、流程中的相关信息,包括某个节点处理人,某个节点处理结果,流程变量,固定值等。


第三步

     扩展汇报关系的接口与实现类。如下图:

     图中projectRole为汇报关系中定义的api方法名,参数是固定的,分别对应如下:

     1. refPerson:第二步中解析出来的参照人,参照人可能选择分录中的人,也可能选择多选字段,因此人员可能存在多个,集合中为人员的ID.

     2. businessKey:当前节点中的单据ID

     3. entityNumber:当前节点中选择的实体类型。

     4. params:为第二步中设置的参数最终解析值。

    然后此接口的实现类中,就可以编写相关业务逻辑,获取相关的汇报关系信息。

二次开发如何扩展工作流协作关系

企业中各项经营活动主要是通过人与人之间协作共同完成。各项业务的协作关系构建了人与人之间的网络化关系,人与人之间的业务协作...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息