Comments (9)
目前定时器的场景是: 如果配置流转的时候设置了定时器,那么到达定时器的时间 状态还没变化(也就是没人处理),那么会自动流转到下个状态。 你可以在下个状态设置为处理人类型是脚本。如果需要将执行结果保存到工单中,可以在脚本中调用loonflow的service里面的方法修改工单字段的值
不过看你的配置好像是需要正常情况下TL审批,如果TL一直不审批,才执行脚本。
可以说下你需要执行的脚本是做什么操作?
from loonflow.
场景如下:
1.请假的工单创建者(user01) ,在创建工单时在表单中提供了一个身份证信息
2. 脚本需要根据身份证信息在其他HR系统中查询是否满足10年的工作年限.
3.将脚本执行的结果,传到下一个流程节点(即leader01),为他提供决策参考信息.
from loonflow.
那就直接在“新建中” 和TL审批中加个状态如”获取设备信息“,这个状态的处理人类型是脚本。
注意需要下个节点看到这些信息,有两种方式:
1.直接脚本中print结果, 这个会在工单流转记录ticket_flow_log中记录
2.脚本调用loonflow的service里面的方法修改工单字段的值。 在tl审批中这个状态下把这些字段显示出来
from loonflow.
您看我的理解对吗?
1. “新建中” 和"TL审批中" 之间增加"”获取设备信息“" 获取工作年限
2.上传"get_year_info"python脚本,并记录脚本的ID号
3.在"获取工作年限"中,脚本"参与人类型"为"脚本" 同时指定"参与人"为4 (即为上传脚本的ID值)
4. 下一步还需要做什么吗?
from loonflow.
贴下你现在的流程图
from loonflow.
您看我的理解对吗?
1. “新建中” 和"TL审批中" 之间增加"”获取设备信息“" 获取工作年限
2.上传"get_year_info"python脚本,并记录脚本的ID号
3.在"获取工作年限"中,脚本"参与人类型"为"脚本" 同时指定"参与人"为4 (即为上传脚本的ID值)
4. 下一步还需要做什么吗?
对需求做了重起梳理,如上所示.
from loonflow.
1: 你可以通过条件表达式实现区分流程。 也可以在脚本里面做下兼容(<30直接return就好了)
2. 可以脚本里面直接print, print的内容会出现在flow_log中, 也可以在脚本中调用loonflow的service里面有个更新工单字段的方法来将的获取到的内容更新到对应的字段中去
条件流转如下(目前自动生成的流程图没显示条件流转的情况,但是使用上应该没问题,后续我优化下)
from loonflow.
可以在你的脚本中通过此方法更新工单的字段
from service.ticket.ticket_base_service import TicketBaseService
update_dict={'a':1,'b':2}
TicketBaseService.update_ticket_custom_field(ticket_id, update_dict)
from loonflow.
之前流程所示,"获取工作年限"的节点是断, 在此有两个困惑点:(与blackholl沟通后整理如下)
1. 这个获取年限的节点 并不是每个人申请年假时都存在的,比如说,只有申请者年龄>30岁时才会走这个节点
blackholl:
配置流转的时候 有个条件表达式 在里面写上表达式有提示的 , 按照提示来填写条件表达式,不过你在脚本里面兼容下就可以了,
blackholl:
那你就直接写一个脚本里面好了。 脚本逻辑如下:
1.获取用户年龄
2. 当年龄大于30 再去获取工作年限,然后将结果通过service方法写到工单里面去。 当年龄小于30 直接return就好了
**yslhzj :**这个"service方法" 是什么?
blackholl:
yslhzj : 如下理解对吗?
blackholl:
不要在脚本中更新工单的状态。脚本执行完成后loonflow会实现状态流转
yslhzj :
"loonflow会实现状态流转" 是指按照之前定义的流程图 流转 对吗?
如果是这样,我拿到返回值后做逻辑判断后, 怎么把这个结果反馈到下一个 节点中呢?
2.在哪获取这个脚本的返回值,并通过什么方式传到下一个节点?(是类似于通知功能中的golbals()的方式传递参数吗?)
blackholl:
默认action_from 是loonflowrobot。 但是如果脚本执行失败了, 允许用户在界面上点击重试,那么这个action_from就是xxxx_retry了
你需要具体什么结果返回给下个节点? 脚本中更新了工单的字段, 下个节点不就可以获取到了么
yslhzj :
你的意思是不是说我只要把脚本执行完以后,它会自动把脚本所执行的结果传下一个节点吗?因为我上面的那个截图,脚本处理的返回结果,并根据结果做出逻辑判断以后,通过你的update的方法更新到那个下一个节点,当时我看你的回复是说,不要通过update那个方法来更新,然而,刚刚说“脚本更新了工单的字段”所以这会儿我就有点困惑了。
blackholl:
脚本中更新字段建议只限于: 自定义字段
你可以通过脚本更新 工作年限这个字段啊
工单状态不要更新
脚本执行完后 工单的状态自己会变到下个状态。 所以不要在脚本中更新工单的状态id
yslhzj : ###
也就是说,通过update方法更新的是自定义的字段,对吗?更新后的字段会自动传入下一个节点?
blackholl:
何为传入下个节点?
字段更新后, 以后获取这个字段都有值了
你的传入 是啥意思
没有传递的动作
yslhzj :
理解成 更新了一下原来自定义字段的值 是吗?
blackholl:
是的.
from loonflow.
Related Issues (20)
- 请问在用户管理如果不需要email和电话需要在哪些地方进行删改? HOT 7
- 大佬,一层层领导审批怎么做 HOT 1
- 兄弟们,工作流状态数据怎么支持列表 HOT 1
- 项目启动报错Broken pipe HOT 6
- docker镜像实在是太臃肿了 HOT 2
- 审批后,获得某些资源的权限,这个怎么做 HOT 2
- 老哥,用户,部门这些通用的,建议你直接用dvadmin的后台,后面再加工单和工作流的模型,这样重构比较好 HOT 1
- 一个部门下分管流程的领导不一样要怎么来设置流程 HOT 1
- 新建工单留言错误 HOT 7
- 工单流转 HOT 3
- 分配方式为全部处理,a,b,c 三人怎么实现处理意见为不同字段 HOT 1
- 关于r1.0.9的版本,和最新版2.0.18一些问题 HOT 14
- 状态脚本执行和hook的调用问题 HOT 30
- 大佬,父子工单的例子有吗?我看文档很少提及父子工单 HOT 1
- 前端小白关于页面的几个问题向请教一下怎么改? HOT 3
- 当部门有多个leader时,如何配置creator_tl如何复选某种角色? HOT 1
- 创建工单问题 HOT 5
- 流程配置了通知,新建工单后celery看不到发送的通知日志 HOT 3
- 新创建的工单保存不了 HOT 5
- 不能使用helm部署是吗 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from loonflow.