请选择 进入手机版 | 继续访问电脑版

zhangsheng

中级会员

61

主题

249

帖子

838

积分

中级会员

积分
838
zhangsheng
中级会员   /  发表于:2022-11-25 21:59  /   查看:3021  /  回复:7
本帖最后由 zhangsheng 于 2022-11-28 17:03 编辑

        由于刚使用社区不久,没有深入学习社区规则,把所有问题都混在了一个帖子里面发了:

8.0.102 工作流中回退等问题
https://gcdn.grapecity.com.cn/fo ... 57926&fromuid=74659
(出处: 葡萄城产品技术社区)

         在上面帖子里提的有些问题,版主给了回复。总结原来存在的问题,和得到回复后测试的结果,可以总结如下BUG:
1、流程发起设置权限设置好角色后,不符合权限的用户通过页面调用“发起流程”命令后,从页面端来看:没有报错,也没有提示“没有权限”之类的提示,与有权限的用户不能区分;从服务端看:没有权限用户“发起流程”的返回值是null,有权限的可以得到id。这个问题在内置库里可能测试不出来,流程发起设置权限在内置库环境下只列出“administrator”“登录用户”两个选项。流程发起权限现在这种处理方式弊端:没有权限的也成功执行了命令,只是返回值为空,这与因为其它问题造成的返回值null并不能得到区分;反过来讲,利用返回值为null来判断用户没有权限也是不成立的。所以,前端页面也不知道这个用户有没有权限,只能知道发起有没有成功。这就无法有效使用权限设置属性了,变成了一个黑箱。
2、节点负责人保存的是“角色”的name(可能没有保存id),导致在修改“角色”名称后,所有节点都会因为“无负责人”全部自动通过;

7 个回复

Simon.Sun活字格认证 Wyn认证
超级版主   /  发表于:2022-11-28 09:30:32
沙发
本帖最后由 Simon.Sun 于 2022-11-28 09:34 编辑

关于问题一,
发起权限的角色设置需要您在用户管理添加相关角色,然后才能支持选择。
这边测试(设计器调试),如果用户没有发起权限会在浏览器输出下面结果:

虽然前端没有提示(流程中心没有做这个提示),但是您可以自己修改添加。

流程属性设置 - 活字格V8帮助手册 - 葡萄城产品文档中心 (grapecity.com.cn)
关于问题二,这边以复现并反馈,有结果会在此贴继续跟进。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
zhangsheng
中级会员   /  发表于:2022-11-28 10:44:26
板凳
Simon.Sun 发表于 2022-11-28 09:30
关于问题一,
发起权限的角色设置需要您在用户管理添加相关角色,然后才能支持选择。
这边测试(设计器调 ...

老师,您好!
        我是封装了一个组件,在页面根据情况显示为“新增XX”,其中会调用“流程发起”命令。
        节点任务通过用户角色进行权限限制,前端页面通过后端服务器命令查找负责人,可以得到现有用户有无权限。
        发起流程采用“具备权限显示”的方式,前端页面与后端服务器命令都无法判断现有用户有无权限。那样只能显示为一个固定按钮,结果又没有任何返回信息。
        发起流程权限要么暴露负责人,要么系统命令返回信息,这样方便设计。
回复 使用道具 举报
Simon.Sun活字格认证 Wyn认证
超级版主   /  发表于:2022-11-28 12:03:48
地板
本帖最后由 Simon.Sun 于 2022-11-28 17:48 编辑

您好,您这边应该是从业务发起流程,这样在页面端命令里使用发起流程命令也是会受发起流程权限设置的角色限制的。
至于提示信息,您可以从发起流程的结果中获取到。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
zhangsheng
中级会员   /  发表于:2022-11-28 16:18:36
5#
Simon.Sun 发表于 2022-11-28 12:03
您好,您这边应该是从业务发起流程,这样在页面端命令里使用发起流程命令也是会收发起流程权限设置的角色限 ...

老师您好!
       我学习了一下您的demo,知道我的问题出在哪里了。我是页面组件调用服务端命令,服务端命令再调用的服务端命令“发起流程”。在服务端是不是没有类似“发起流程结果.ErrorMessage”的结果变量啊?
回复 使用道具 举报
Simon.Sun活字格认证 Wyn认证
超级版主   /  发表于:2022-11-28 16:39:34
6#
您好,服务端发起流程命令和前端的流程发起权限控制目前是不相关的。
如果您想在服务端去实现发起流程,您可以考虑给这个服务端命令设置调用权限,来实现权限控制。
服务端发起流程命令的结果和前端的发起流程命令是不一样的,目前确实没有 ErrorMessage 这个属性。


如果没有特殊需求,建议在调用前端的流程发起名命令。

关于修改角色名流程设计没有立即生效,这个是这边的一个限制,目前需要您在角色名修改时,手动将流程设计的角色重新设置一下。
不过这个问题我们这边已经当做一个需求来记录,后续的版本会进行实现。
十分感谢您的反馈和支持。
回复 使用道具 举报
zhangsheng
中级会员   /  发表于:2022-11-28 17:03:06
7#
Simon.Sun 发表于 2022-11-28 16:39
您好,服务端发起流程命令和前端的流程发起权限控制目前是不相关的。
如果您想在服务端去实现发起流程,您 ...

谢谢老师,我把这个问题搞清楚了,后面按这个结果去设计。
回复 使用道具 举报
Simon.Sun活字格认证 Wyn认证
超级版主   /  发表于:2022-11-28 17:05:34
8#
您客气了,感谢您的反馈和支持。
流程角色修改目前是这边的一个限制,这个已经当做需求来记录,需求实现后会在此贴继续进行跟进。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部