继续拒绝上一级 , 直到处于就绪状态的节点包含要拒绝的节点 。
老板:嗯 。
10级老板又来了:给共同节点加个时限 。如果你没有在规定的时间内完成你的成就 , 那就说明你超时了 。
我:还有这种需求?
但还是实现了 。
至此 , 我明白了 , 需求和头发是负相关的 。需求越多 , 头发越少 。
11级老板又来了:加个代理功能 。比如有一件事要你批 , 但你对这件事没有把握 , 那就转给对这件事有把握的人批 。
我马上发现这个要求和过去有本质的不同 。在过去 , 工作流的节点关系从一开始就是固定的 , 即在流程启动之前就已经确定了 。
但是现在需要在审批环节进行更改 。
无非就是加一些类 , 掉一些毛 , 最后设计出以下方案:
代理操作的本质是创建一个新的并行节点作为这个节点的父节点 , 然后为代理创建一个新的兄弟节点 , 这样代理和被代理都可以被批准 。
代理可以无限嵌套 , 也就是代理也可以找代理 。
12级老板又来了:能不能加个取消代理的功能?
。。。我已经在做我自己了 , 就补充一句:
委托书注销是委托书的逆向操作 。
如果代理已经被批准 , 则不能取消代理 。
13级老板又来了:给每个节点加一个前置后置条件 。满足前置条件才能进入节点 , 满足后置条件才能审核节点 。
我的心:再见 , 老板 , 再见 , 再见 , 再见!
我的嘴:好的老板 , 收到 。
后来:后来我真的给每个节点都加了前置和后置条件 , 同时审批逻辑的相关代码也翻倍了 。
14级老板又来了:现在有些工作流程很复杂 , 审批时间很长 。能否为每个正在进行的工作流计算一个指标:直观显示当前批准的百分比?
我:收到 。
事实上 , 与前面的要求相比 , 这一条并不复杂 , 因为它不涉及核心逻辑的改变 。本质是输入一个树形结构 , 然后根据不同节点的状态输出一个整数 。
经过测试和思考 , 最终方案如下:
工作流完成的百分比是指从最右边的就绪节点到最左边的节点的距离/从树中最右边的节点的距离 。
15级老板又来了:能不能给每个节点挂两个可执行脚本 , 然后在你开始审批节点和完成审批节点之后再执行?
我:对 , 对 。
当然后来我也实现了这个功能 。与此同时 , 我发现我在壮年时已经秃顶了 。
附言老板清华 , 是毕业的高材生 , 不然我大概想不到这么多奇葩的要求 。后来老板把这套工作流程系统卖给了广*证券等公司 , 我就去了其他公司各奔东西 。当然 , 那时候 , 我觉得自己有前途 。
当我开始这个工作流程的时候 , 我刚刚本科毕业 。后来离开这家公司 , 照了照镜子 , 老了 。这件事发生在三年前 , 现在回想起那些加班换工作流程的日子 , 我还是心惊胆战 。
最后 , 希望天下所有的同事都无bug , 身心健康 , 攒够钱在一线城市买两套房 , 过几年有退休金的悠闲退休生活 。
推荐阅读
- 空匣人型基地四大系统详细玩法介绍,热门推荐
- 最强蜗牛全局监控系统作用及用法介绍,帮助升级的技巧
- 穿越火线w7系统怎么调烟雾头 w7系统怎么调烟雾头
- Win7电脑没有声音怎么办? 重装系统后没声音
- 风光互补太阳能发电系统 风光互补系统
- 网上打码赚钱哪个平台好 打码网赚系统
- 开源分销管理系统 分销管理软件
- 反导系统是怎么拦截导弹的? 反导系统
- ic系统是什么系统 cos操作系统
- 工厂质量标语 品质标语