基于jeecgboot-vue3的Flowable流程仿钉钉流程设计器-抄送服务处理
创始人
2024-12-16 13:35:03
0

因为这个项目license问题无法开源,更多技术支持与服务请加入我的知识星球。

1、因为仿钉钉设计器里抄送人是一个服务任务,所以要根据这个服务任务进行处理

2、前端就是一个抄送,选择人

3、这里用了jeecg的选择人组件

       

4、后端对这个处理如下:

public class CcNode extends AssigneeNode {     // 表单属性     private List formProperties = new ArrayList<>();     // 操作权限     private Map operations = new LinkedHashMap<>();      @Override     public List convert() {         ArrayList elements = new ArrayList<>();         // 服务节点         ServiceTask serviceTask = new ServiceTask();         serviceTask.setId(this.getId());         serviceTask.setName(this.getName());         // serviceTask.setAsynchronous(true);         serviceTask.setImplementationType(ImplementationType.IMPLEMENTATION_TYPE_CLASS);         serviceTask.setImplementation("org.jeecg.modules.flowable.ServiceTask.ccDelegate");         //增加扩展属性 add by nbacheng         Map> extensionElements = new HashMap>();         ExtensionElement extensionElementTotal = new ExtensionElement();         extensionElementTotal.setName("flowable:properties");          ExtensionElement extensionElement = new ExtensionElement();         extensionElement.setName("flowable:property");         ExtensionAttribute extensionAttributeName = new ExtensionAttribute();         extensionAttributeName.setName("name");         extensionAttributeName.setValue("ccUserList");         extensionElement.addAttribute(extensionAttributeName);         ExtensionAttribute extensionAttributeValue = new ExtensionAttribute();         extensionAttributeValue.setName("value");         extensionAttributeValue.setValue(StringUtils.join(this.getUsers(), ","));         extensionElement.addAttribute(extensionAttributeValue);         extensionElementTotal.addChildElement(extensionElement);         extensionElements.put("ccUserList", CollUtil.newArrayList(extensionElementTotal));         serviceTask.setExtensionElements(extensionElements);         elements.add(serviceTask);         // 下一个节点的连线         Node child = this.getChild();         SequenceFlow sequenceFlow = this.buildSequence(child);         elements.add(sequenceFlow);         // 下一个节点         if (Objects.nonNull(child)) {             child.setBranchId(this.getBranchId());             List flowElements = child.convert();             elements.addAll(flowElements);         }         return elements;     }  } 

4、实际的效果图与xml

相关内容

热门资讯

终于发现!微信牛牛房卡链接在哪... 微信游戏中心:斗牛房卡,添加微信【56001354】,进入游戏中心或相关小程序,搜索“微信斗牛房卡”...
终于发现!想找个微信牛牛房卡在... 微信游戏中心:牛牛房卡,添加微信【66336574】,进入游戏中心或相关小程序,搜索“微信牛牛房卡”...
终于发现!拼三张房卡链接在哪买... 微信游戏中心:拼三张房卡,添加微信【71319951】,进入游戏中心或相关小程序,搜索“微信拼三张房...
终于发现!拼三张房卡从哪买的,... 微信游戏中心:拼三张房卡,添加微信【56001354】,进入游戏中心或相关小程序,搜索“微信拼三张房...
终于发现!微信群链接拼三张房卡... 微信游戏中心:拼三张房卡,添加微信【66336574】,进入游戏中心或相关小程序,搜索“微信拼三张房...
终于发现!微信炸金花购买房卡,... 微信游戏中心:炸金花房卡,添加微信【71319951】,进入游戏中心或相关小程序,搜索“微信炸金花房...
终于发现!微信群链接拼三张房卡... 微信游戏中心:拼三张房卡,添加微信【56001354】,进入游戏中心或相关小程序,搜索“微信拼三张房...
终于发现!微信里玩炸金花房卡在... 微信游戏中心:炸金花房卡,添加微信【66336574】,进入游戏中心或相关小程序,搜索“微信炸金花房...
终于发现!微信里面拼三张链接房... 微信游戏中心:拼三张房卡,添加微信【71319951】,进入游戏中心或相关小程序,搜索“微信拼三张房...
终于发现!微信斗牛房卡找谁买,... 微信游戏中心:斗牛房卡,添加微信【56001354】,进入游戏中心或相关小程序,搜索“微信斗牛房卡”...
终于发现!拼三张房卡专卖店联系... 微信游戏中心:拼三张房卡,添加微信【66336574】,进入游戏中心或相关小程序,搜索“微信拼三张房...
终于发现!创建斗牛链接房间房卡... 微信游戏中心:斗牛房卡,添加微信【71319951】,进入游戏中心或相关小程序,搜索“微信斗牛房卡”...
科普!微信里玩炸金花房卡在哪弄... 微信游戏中心:拼三张房卡,添加微信【55051770】,进入游戏中心或相关小程序,搜索“微信拼三张房...
科普!微信玩金花房卡在哪买,微... 微信游戏中心:牌九房卡,添加微信【33903369】,进入游戏中心或相关小程序,搜索“微信牌九房卡”...
科普!炸金花链接房卡如何购买,... 微信游戏中心:炸金花房卡,添加微信【8488009】,进入游戏中心或相关小程序,搜索“微信炸金花房卡...
科普!金花房卡如何购买,微信拼... 微信游戏中心:牛牛房卡,添加微信【55051770】,进入游戏中心或相关小程序,搜索“微信牛牛房卡”...
科普!微信里玩金花房卡如何买,... 微信游戏中心:牛牛房卡,添加微信【33903369】,进入游戏中心或相关小程序,搜索“微信牛牛房卡”...
科普!金花好友房卡哪里买,微信... 微信游戏中心:牌九房卡,添加微信【8488009】,进入游戏中心或相关小程序,搜索“微信牌九房卡”,...
科普!微信上打炸金花房卡怎么买... 微信游戏中心:炸金花房卡,添加微信【55051770】,进入游戏中心或相关小程序,搜索“微信炸金花房...
科普!微信炸金花房卡怎样开,牛... 微信游戏中心:炸金花房卡,添加微信【33903369】,进入游戏中心或相关小程序,搜索“微信炸金花房...