2023年8月1日发(作者:)
SpringBoot+Activiti6+JPA+Vue+ElementUi--完整⼩案例--2⽂章⽬录1.简介在案例1的基础上进⾏完善,。2. 案例22.1 对⽐案例1,增加的内容(后台IDEA)查看当前流程图,当前任务节点标红,返回到前台进⾏展⽰。ShowCurrentViewpackage ller;import del;import sEngine;import toryService;import eService;import rvice;import sDefinition;import sInstance;import ;import s;import ping;import riable;import tMapping;import ntroller;import ce;import rvletResponse;import tream;import Stream;import ist;import ;/** * @author liangjie@ * @version 1.0 * @date 2020/8/7 */@RestController@RequestMapping("/showCurrentView")public class ShowCurrentView { @Resource private TaskService taskService; @Resource private RepositoryService repositoryService; @Resource private RuntimeService runtimeService; @Resource private ProcessEngine processEngine; @GetMapping("/{id}") public void showCurrentView(@PathVariable("id") String taskId, HttpServletResponse response){ Task task = TaskQuery() .taskId(taskId) //根据任务id查询 .singleResult(); //获取流程实例id String processInstanceId = cessInstanceId(); String processInstanceId = cessInstanceId(); //
查询流程实例 ProcessInstance pi = ProcessInstanceQuery() .processInstanceId(processInstanceId).singleResult(); //
查询流程实例 ProcessDefinition pd = ProcessDefinitionQuery() .processDefinitionId(cessDefinitionId()).singleResult(); //
获取BPMN模型对象 BpmnModel model = nModel(()); //
定义使⽤宋体 String fontName = "宋体"; //
获取流程实实例当前点的节点,需要⾼亮显⽰ List currentActs = iveActivityIds(()); // BPMN模型对象、图⽚类型、显⽰的节点 InputStream is = processEngine .getProcessEngineConfiguration() .getProcessDiagramGenerator() .generateDiagram(model, "png", currentActs, new ArrayList(), fontName, fontName, fontName, null, 1.0); OutputStream out = null; try { tentType("multipart/form-data;charset=utf8"); tentType("image/png"); out = putStream(); (Array(is)); (); } catch (Exception e) { tackTrace(); }finally { try { (); } catch (Exception e) { } } }}增加了在审批时查看任务信息ApprovalServiceImpl/** *
查询当前⽤户待办任务+回显需要审批的任务信息 * @param name * @return */ @Override public BaseResult searchApprovalByName(String name) { List
审批-多⼈审批 * @param approval * @return */ @Override public BaseResult Approval(Approval approval) { List
responseType: 'arraybuffer' //这⾥是声明期望返回的数据类型 }).then(response => { //这⾥的第⼀次处理后台返回来的⼆进制留数据
转化为base64 //这⾥的data数据是后台返回来的,这⾥的key是params中的键值(byte) return 'data:image/png;base64,' + btoa( new Uint8Array().reduce((data, key) => data + arCode(key), '') ) }).then( data =>{ //这⼀次箭头函数是依赖于第⼀次.then函数处理的data值 (data) =data }) },展⽰:增加审批时回显任务信息效果增加了审批通过时更改申请⼈审批状态,效果:说明:相对,案例2,增加了查看流程图,审批通过更改申请⼈状态,不同的⼈登录查看不同的信息,例如:员⼯登录可以查看请假的申请状态,项⽬经理登录不但可以看到⾃⼰的请假信息,还可以做⾃⼰应有的待办任务。
发布者:admin,转转请注明出处:http://www.yc00.com/news/1690876537a452762.html
评论列表(0条)