工作流

1. 查看、处理流程

1.1 流程查看

流程管理页面共同点:

  1. 选项分类筛选

  2. 标签筛选

  3. 应用下拉选筛选

  4. 根据流程名称搜索

image.png

  • 流程管理页面名词解释:
  1. 任务待办:当前登录用户未处理的流程节点

  2. 我发起的:当前登录用户人为触发的流程(模型触发)

  3. 抄送:抄送给当前登录用户的节点(审批/填写)

  4. 我已办结:由当前登录用户完成人工/自动同意、人工拒绝或人工填写的节点

  5. 无需办理:当前登录用户转交的任务/被退回、被撤销、被或签、被其他分支任务拒绝的还未办理的任务

1.2 流程处理

1.2.1 任务待办

任务待办中点击“审批/填写”会进入流程详情处理页面,主要展示 1. 操作区 2. 流程发起人及状态 3. 模型视图内容 4. 流程时间线及其他记录。

审批代办操作区可能包含“分享、同意、拒绝、退回、加签、转交、返回”,填写代办操作区可能包含“分享、转交、提交、暂存、返回”,审批/填写操作区包含哪些动作由流程设计决定。

image.png

image.png

image.png

1.2.2 我发起的

我发起的流程列表中主要分为进行中和已完成的流程。进行中的流程可以进行查看、催办、撤销的操作,已完成的流程可以进行查看操作。

查看我发起的流程,进入流程详情页面,也是根据流程状态展示对应操作功能,进行中的流程有分享、催办、撤销、返回按钮,已完成的流程有分享、返回按钮。

image.png

image.png

image.png

1.2.3 抄送

抄送列表中每条抄送只可以进行查看操作,查看进入流程的详情页面,有分享和返回的操作。

image.png

image.png

1.2.4 我已办结

我已办结列表中可以进行查看操作,查看进入代办的详情页面,可以进行分享和返回的操作。

image.png

image.png

1.2.5 无需办理

无需办理列表中可以进行查看操作,查看进入代办的详情页面,可以进行分享和返回的操作。

image.png

image.png

2. 流程运行记录查看

所有运行流程都会记录在流程运行记录中,可以根据流程的所属应用,流程名称,触发方式和状态进行搜索,流程运行记录详情中展示流程运行的具体节点,运行时间,当前运行节点,异常信息等。

image.png

image.png

Oinone社区 作者:史, 昂原创文章,如若转载,请注明出处:https://doc.oinone.top/oio4/9388.html

访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验

(0)
史, 昂的头像史, 昂数式管理员
上一篇 2024年6月20日 am9:48
下一篇 2024年6月20日 am9:48

相关推荐

  • 资源

    翻译应用是管理翻译规则的应用,以模型为基础、维护字段的翻译值,支持导入、导出 1. 操作步骤 Step1:导出所有翻译项; Step2:线下翻译; Step3:导入翻译项; Step4:刷新远程资源; Step5:页面右上角可切换语言,查看翻译效果。 2. 新增翻译 翻译是具体到模型字段,其中需要区分出是否字典; 源语言、目标语言,是在资源中维护的语言,可在资源中维护需要翻译的语言; 翻译项则是模型字段,默认翻译项为激活状态,关闭后维护的翻译项无效。 3. 导出、导入 不勾选导出:导出所有需要翻译的翻译项,包括模块、字段,源术语、翻译值等,其中如果已经翻译过的内容,会体现在翻译值中; 勾选导出:导出勾选模型的翻译项。 导入:导入翻译项,平台会根据模型拆分为多条数据。 4. 刷新远程资源 导入翻译项后,点击“刷新远程资源”按钮。 5. 查看翻译内容 页面右上角切换语言,查看翻译效果。

    2024年6月20日
    96700
  • 新版权限操作手册(5.0以上)

    一 整体介绍 1. 角色类型: 为了更好地管理和控制平台中的不同用户,权限系统将对角色进行分类定义。通过角色分类,可以更高效地管理同一类角色,无需单独操作每个角色,实现统一管理。 2. 角色管理: 角色管理是权限系统中的一个基础功能,负责管理具体角色的创建、编辑和禁用,以及对角色的单独操作。 3. 系统权限: 可配置某个应用或其下的某个菜单、某个应用的首页的管理权限和访问权限。 管理权限:赋予某角色后,该角色具备向下分配权限的能力。 访问权限:赋予某角色后,该角色可进行访问。访问权限可配置多个权限组,不同权限组可授权给不同角色。 注: 此处应用下的“首页”菜单是在【应用中心-设置首页-绑定视图】中配置的视图。权限控制是针对这个视图进行的。只有当在设置首页时选择了绑定视图,应用下才会有对应的“首页”菜单;否则,该菜单将不可见。 当【应用中心-设置首页-绑定菜单】只需单独为应用下的某个菜单进行授权即可。 拥有访问权限并不代表拥有管理权限,同理,拥有管理权限也不代表拥有访问权限。这两种权限需要单独授权。二者并无直接关系。 4. 数据权限项和数据权限: 数据权限项:通过为某个模型配置过滤条件来定义特定的数据访问规则,但这些规则不会立即生效。它们需要与数据权限配合使用,以实现精细化的数据访问权限控制。 数据权限:为多个角色应用指定多个数据权限项,类似于系统权限的管理,但其范围更广泛,涵盖了对所有模块的授权。 通过数据权限项定义具体的访问规则,再通过数据权限将这些规则分配给不同的角色,以实现全面的权限控制。 二 操作手册 2.1 创建用户、绑定角色 创建一个名为testName的用户。 2.1.2 用户与角色的绑定(3种方式) 2.1.2.1 创建用户时为其单个或批量绑定角色 在创建用户页面进行添加绑定的角色,勾选完成,点击“确定”,完成角色的添加。 2.1.2.2 修改用户时为其单个或批量绑定角色 在修改用户页面进行添加绑定的角色,勾选完成,点击“确定”,完成角色的添加。 2.1.2.3 选择指定用户为其单个或批量绑定角色 指定用户后点击绑定角色,进行绑定的角色。 2.2 应用的授权–访问权限 访问权限是指将特定应用程序授权给相应的角色,一旦用户被分配到这些角色,他们将获得访问该应用程序的权限。确保了只有经过认证的用户才能访问特定的应用功能或数据。 2.2.1 应用与角色的授权–访问权限 选择系统权限,点击某个想要为其授权的应用。 添加角色,点击“确定”按钮,为应用授权。 授权成功,显示可以访问此应用的角色。 2.2.2 菜单与角色的授权–访问权限 选中系统权限,点击某个想要为其授权的菜单,为其添加权限组。 配置权限组,保存配置。 为权限组授权对应的角色。 授权成功,显示可以访问此菜单的角色。 2.2.3 批量授权–访问权限 我们支持对单个或多个应用程序及其菜单执行批量授权操作,以授予相应的访问权限。 角色权限访问: 角色未被授予应用的访问权限时,即使授予了菜单权限也无法访问。 角色被授予应用访问权限但未被授予菜单权限时,仍然无法访问菜单。 只有当角色同时被授予应用和菜单的权限时,才能访问相关菜单。 批量授权: 该功能仅作为添加角色至应用或菜单配置访问权限的入口。 批量授权: 在批量授权过程中,平台会自动创建一个默认权限组,这个权限组赋予了用户管理所有数据和当前菜单下所有管理权限的能力。这个默认权限组的创建会根据不同的平台版本进行区分处理。 在5.0.4版本之前,平台在创建默认权限组时,并不会自动勾选动作权限。 从5.0.4版本开始,包括5.0.4版本在内,平台会自动勾选所有动作权限,简化了授权流程。 值得注意的是,默认权限组在首次创建时遵循当时的动作权限规则。如果后续进行多次批量授权,平台不会重新创建默认权限组,而是保留之前的设置。因此,即使在后续的批量授权过程中,动作权限也会保持之前的状态。 总结来说,批量授权时,平台会根据版本自动创建带有或不带有动作权限的默认权限组,且该默认权限组在多次授权过程中保持不变,不会随每次授权而更新其动作权限设置。 找到系统权限菜单,点击批量配置。 选择单个或多个应用为其添加访问权限,点击添加角色进行添加操作。 进入添加角色页面。 选择需要添加的角色,点击“确定”按钮,完成角色的授权。 在批量授权过程中,添加角色框中的角色将被视为本次批量授权的角色。 此时完成批量授权,点击取消批量即可。 验证是否批量授权成功:点击已经授权的应用下某一菜单,看到“管理所有数据”下有我们添加的“子管理员”。 2.3 应用的授权–管理权限 管理权限涉及将应用程序的管理功能授权给特定角色,例如“子管理员”。拥有管理权限的角色能够进一步授权其他用户管理权限,可以向下分配。通过这种方式,组织可以实施分级的管理结构,确保各级管理员能够有效地管理和分配资源。 注:如果要为应用授予管理权限,则该应用下的所有菜单也会被授予管理权限。此外,也可以单独为某个应用下的特定菜单授予管理权限。 2.3.1 应用与角色的授权–管理权限 选择系统权限,点击某个想要为其授予管理权限的应用。 进入添加角色页面。 添加可管理此应用的角色,点击“确定”,完成角色的授权。 授权成功,显示可以管理此应用的角色。 2.3.2 菜单与角色的授权–管理权限 选择系统权限,点击某个想要为其授予管理权限的菜单。 进入添加角色页面。 添加可管理此菜单的角色,点击“确定”,完成角色的授权。 授权成功,显示可以管理此菜单的角色。 2.2 实例:向下分配权限–子管理员 子管理员描述 管理权限向下分配能力:子管理员可以向下分配管理权限,包括向其他角色授予或取消某应用、菜单或首页的管理权限。 访问权限:子管理员被授予访问权限,可以访问平台中指定的应用、菜单或首页。 持续的管理权限向下分配:子管理员可以持续地向下分配管理权限,确保权限的适当控制和分配。 子管理员一定要为管理中心应用配置访问和管理权限。 2.2.1 创建一个名字为“子管理员”的角色 2.2.2 角色与用户的绑定 2.2.3 为子管理员分配应用的管理权限 如果要为应用授予管理权限,则该应用下的所有菜单也会被授予管理权限。此外,也可以单独为某个应用下的特定菜单授予管理权限。 应用管理权限的分配 选择系统权限,点击某个想要为其授予管理权限的应用。 进入添加角色页面。 添加可管理此应用的角色,点击“确定”,完成角色的授权。 授权成功,显示可以管理此应用的角色。 2.2.4 登录子管理员继续向下级分配权限 输入账号、密码,点击登录。 在上级角色中我们已经为“子管理员”角色,授权了管理中心的管理、访问权限和具体的某个应用的管理权限。 选择系统权限,点击某个想要为其授权的应用。在此页面“子管理员”这一角色还可以根据所需的业务场景继续向下级分配管理权限和访问权限。 至此,已成功实现子管理员角色所需的管理权限的配置。子管理员随后可依循相同流程,对下属用户进行相应的权限分配。

    2024年7月2日
    4.2K00
  • 5.2 CDM之工程模式

    两种工程模式介绍 oinone推荐的两种工程模式都保留互联网特性,如跟业务无关的基础平台还是采用平台化思路建设。二种侧重点差异如下 第一种:比较适合企业采用多供应商联合开发场景,先以业务区分,各个业务线有独立的领域平台,最大限度保持不同业务线的独立性,有利于各个业务线独立发展(目前oinone上层星空系列产品采用这种工程模式,因为我们期望的时候帮助企业构建软件生态,必然要考虑不同供应商联合开发场景) 第二种:比较接近传统互联网架构,先按平台领域区分,如商品领域:商品平台做总工程,但里面按业务区分模块分子工程来保持业务相互独立,相对于第一种把领域的代码放一起,带来好处强化大家思考模型通用性。但不适用于跨公司主体间配合。 图5-2-1 Oinone-CDM的两种工程模式 注意事项: oinone兼容传统互联网架构 不管哪种模式,都需要解决CDM的维护问题 CDM维护的常见问题: Q:CDM层缺少模型怎么办? A:CDM层模型是逐步完善和丰富的。如果是特定业务自己需要的模型,这类模型无通用性。则加到自己的工程中;如果是通用的,则架构组确定是否需要纳入到CDM。 Q:CDM层已有的模型缺少字段怎么办? A:CDM层模型的字段也是逐步完善和丰富的,通用的字段在架构组确定后也会被吸收进来 Q:CDM层不同业务线相互影响怎么办? A:扩展字段最好带上自有前缀标志,如果觉得通用则提交架构组走模型缺少字段加入 Q:CDM层某模型新增加了的字段,但原先业务线已经加了相同含义字段 A:业务线可以把自己的字段related到CDM增加的新字段,并做数据迁移

    2024年5月23日
    90000
  • 3.5.5.1 设计器数据导出

    简介 通过调用导出接口,将设计器的设计数据与运动数据打包导出到文件中。 提供了download/export两类接口。 export 导出到OSS。导出的文件会上传到文件服务,通过返回的url下载导出文件。 请求示例: mutation { uiDesignerExportReqMutation { export( data: { module: "gemini_core", fileName: "meta", moduleBasics: true } ) { jsonUrl } } } 响应示例: { "data": { "uiDesignerExportReqMutation": { "export": { "jsonUrl": "https://xxx/meta.json" } } }, "errors": [], "extensions": {} } download 直接返回导出数据。适用于通过浏览器直接下载文件。 请求示例: mutation { uiDesignerExportReqMutation { download( data: { module: "gemini_core", fileName: "meta", moduleBasics: true } ) { jsonUrl } } } 如何构造url protocol :// hostname[:port] / path ? query=URLEncode(GraphQL) 例: http://127.0.0.1:8080/pamirs/base?query=mutation%20%7B%0A%09uiDesignerExportReqMutation%20%7B%0A%09%09download(%0A%09%09%09data%3A%20%7B%20module%3A%20%22gemini_core%22%2C%20fileName%3A%20%22meta%22%2C%20moduleBasics%3A%20true%20%7D%0A%09%09)%20%7B%0A%09%09%09jsonUrl%0A%09%09%7D%0A%09%7D%0A%7D 在浏览器中访问构造后的url,可直接下载文件 接口列表 模型设计器 指定模块导出 query { modelMetaDataExporterQuery { export/download(query: { module: "模块编码" }) { module url } } } module参数:指定导出的模块编码 url返回结果:export方式导出的文件url 页面设计器 导出页面 指定模块导出 mmutation { uiDesignerExportReqMutation { download/export( data: { module: "gemini_core", fileName: "meta", moduleBasics: false } ) { jsonUrl } } } module参数:模块编码 fileName参数:指定生成的json文件名称 moduleBasics参数:指定是否只导出模块基础数据,如果为true,只导出内置布局、模块菜单、菜单关联的动作。 如果为false,还会导出模块内的所有页面,以及页面关联的动作元数据、页面设计数据 等等。 默认值为false。 指定菜单导出 mutation { uiDesignerExportReqMutation { download/export( data: { menu: { name: "uiMenu0000000000048001" } fileName: "meta" relationViews: true } ) { jsonUrl } } } menu参数:菜单对象,指定菜单的name。只会导出该菜单及其绑定页面,不会递归查询子菜单 fileName参数:指定生成的json文件名称 relationViews参数:指定是否导出关联页面,默认为false,只导出菜单关联的页面。如果为true,还会导出该页面通过跳转动作关联的自定义页面。 指定页面导出 mutation { uiDesignerExportReqMutation { download/export( data: { view: { name: "xx_TABLE_0000000000119001" model: "ui.designer.TestUiDesigner" } fileName: "meta" relationViews: true } ) { jsonUrl } } }…

    Oinone 7天入门到精通 2024年5月23日
    1.5K00
  • 3.3.10 字段类型之关系描述的特殊场景

    在3.3.9【字段类型之关系与引用】一文中已经描述了各种关系字段的常规写法,还有一些特殊场景如:关系映射中存在常量,或者M2M中间表是大于两个字段构成。 举例说明关系字段-高级用法 场景描述 PetTalent模型增加talentType字段,PetItem与PetTalent的多对多关系增加talentType(达人类型),PetItemRelPetTalent 中间表维护petItemId、petTalentId以及talentType,PetDogItem和PetCatItem分别重写petTalents 字段,关系中增加常量描述。示意图如下 实际操作步骤: Step1 新增 TalentTypeEnum package pro.shushi.pamirs.demo.api.enumeration; import pro.shushi.pamirs.meta.annotation.Dict; import pro.shushi.pamirs.meta.common.enmu.BaseEnum; @Dict(dictionary = TalentTypeEnum.DICTIONARY,displayName = "达人类型") public class TalentTypeEnum extends BaseEnum<TalentTypeEnum,Integer> { public static final String DICTIONARY ="demo.TalentTypeEnum"; public final static TalentTypeEnum DOG =create("DOG",1,"狗达人","狗达人"); public final static TalentTypeEnum CAT =create("CAT",2,"猫达人","猫达人"); } Step2 PetTalent模型增加talentType字段 package pro.shushi.pamirs.demo.api.model; import pro.shushi.pamirs.demo.api.enumeration.TalentTypeEnum; import pro.shushi.pamirs.meta.annotation.Field; import pro.shushi.pamirs.meta.annotation.Model; @Model.model(PetTalent.MODEL_MODEL) @Model(displayName = "宠物达人",summary="宠物达人",labelFields ={"name"}) public class PetTalent extends AbstractDemoIdModel{ public static final String MODEL_MODEL="demo.PetTalent"; @Field(displayName = "达人") private String name; @Field(displayName = "达人类型") private TalentTypeEnum talentType; } Step3 修改PetItem的petTalents字段,在关系描述中增加talentType(达人类型) @Field.many2many(relationFields = {"petItemId"},referenceFields = {"petTalentId","talentType"},through = "PetItemRelPetTalent") @Field.Relation(relationFields = {"id"}, referenceFields = {"id","talentType"}) @Field(displayName = "推荐达人",summary = "推荐该商品的达人们") private List<PetTalent> petTalents; Step4 PetDogItem增加petTalents字段,重写父类PetItem的关系描述 talentType配置为常量,填入枚举的值 增加domain描述用户页面选择的时候自动过滤出特定类型的达人,RSQL用枚举的name @Field.many2many(relationFields = {"petItemId"},referenceFields = {"petTalentId","talentType"},through = "PetItemRelPetTalent") @Field.Relation(relationFields = {"id"}, referenceFields = {"id","talentType"}) @Field(displayName = "推荐达人",summary = "推荐该商品的达人们") private List<PetTalent> petTalents; Step5 PetCatItem增加petTalents字段,重写父类PetItem的关系描述 talentType配置为常量,填入枚举的值 增加domain描述用户页面选择的时候自动过滤出特定类型的达人,RSQL用枚举的name @Field(displayName = "推荐达人") @Field.many2many( through = "PetItemRelPetTalent", relationFields = {"petItemId"}, referenceFields = {"petTalentId","talentType"} ) @Field.Relation(relationFields = {"id"}, referenceFields = {"id", "#2#"}, domain = " talentType == CAT") private List<PetTalent> petTalents; Step6 清除中间表demo_core_pet_item_rel_pet_talent的数据记录 清除PetItem与PetTalent的多对多中间表demo_core_pet_item_rel_pet_talent的数据记录 Step7 重启看效果 修改达人记录,选择不同达人类型 PetItem、PetCatItem、PetDogItem不同的交互页面

    2024年5月23日
    1.4K00

Leave a Reply

登录后才能评论