java Graphics2D根据流程xml文件画流程图(完整代码)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java Graphics2D根据流程xml文件画流程图(完整代码)相关的知识,希望对你有一定的参考价值。
1、先来一张效果图
2、java代码
package com.geoway.plan.action; import java.awt.BasicStroke; import java.awt.Color; import java.awt.Graphics2D; import java.awt.Image; import java.awt.RenderingHints; import java.awt.geom.GeneralPath; import java.awt.image.BufferedImage; import java.io.IOException; import java.net.URL; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.imageio.ImageIO; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.swing.ImageIcon; import org.apache.commons.lang3.StringUtils; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.ResponseBody; import com.geoway.plan.core.dto.GapwfWorkitem; import com.geoway.plan.core.service.IPlanTaskAndProjectService; import com.geoway.plan.core.service.IWorkFlowWithStageService; import java.awt.Font; /** * * @author * @version $Id: WorkTaskMonitorAction.java, v 0.1 2017年1月20日 下午4:44:13 Exp $ */ @Controller @RequestMapping("/work") public class WorkTaskMonitorAction { @Autowired IWorkFlowWithStageService workFlowWithStageService; @Autowired IPlanTaskAndProjectService taskAndProService; @RequestMapping(value = { "/showTaskMonitor.json" }, method = {RequestMethod.GET, RequestMethod.POST }) @ResponseBody /***根据流程xml文件画流程图*/ public void showTaskMonitor(HttpServletRequest request, HttpServletResponse response) throws IOException { String processID= request.getParameter("processID");//获取流程定义ID String procInstID = request.getParameter("procInstID");//获取任务组id //解析流程xml if(StringUtils.isEmpty(processID)){//测试数据 有值则走正常数据 processID = "1028020900000000014"; procInstID = "1028020100000000067"; } Map<String, List<Element>> eleMap = analysXml(processID); response.setContentType("image/png");//声明文件格式 //绘制图板 计算出的宽高 Map<String,Integer> whMap = countWaH(eleMap); int width=whMap.get("width"),hight=whMap.get("hight"); BufferedImage image = new BufferedImage(width,hight,BufferedImage.TYPE_INT_RGB); //获取图形上下文,graphics想象成一个画笔 Graphics2D graphics = (Graphics2D)image.getGraphics(); //消除线条锯齿 graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); graphics.setBackground(Color.WHITE); //设置背景颜色 graphics.setColor(Color.WHITE); graphics.fillRect(0, 0, width, hight); //设置文字样式 graphics.setFont(new Font("微软雅黑",Font.PLAIN,15)); //获取所有的活动节点 List<GapwfWorkitem> gws = taskAndProService.queryWorkItemById(procInstID,processID); Map<String,String> gwMap = new HashMap<String, String>(); for(GapwfWorkitem gw:gws){ gwMap.put(gw.getActivityId(), gw.getState()); } List<Element> lines = eleMap.get("lines"); for(Element line:lines){ String points = line.element("points").getText().trim();//获取连接线坐标 String [] point = points.split("\\\\s+");//分割点坐标 String point1 = point[0].trim();//获取点1坐标 String point2 = point[1].trim();//获取点2坐标 String [] point1s= point1.split(",");//分割点1坐标 int point1sx = Integer.parseInt(point1s[0].substring(0, point1s[0].indexOf(".")>0?point1s[0].indexOf("."):point1s[0].length()));//获取点1x坐标 int point1sy = Integer.parseInt(point1s[1].substring(0, point1s[1].indexOf(".")>0?point1s[1].indexOf("."):point1s[1].length()));//获取点1y坐标 String [] point2s= point2.split(",");//分割点2坐标 int point2sx = Integer.parseInt(point2s[0].substring(0, point2s[0].indexOf(".")>0?point2s[0].indexOf("."):point2s[0].length()));//获取点2x坐标 int point2sy = Integer.parseInt(point2s[1].substring(0, point2s[1].indexOf(".")>0?point1s[1].indexOf("."):point2s[1].length()));//获取点2y坐标 drawArrowLine(graphics,point1sx,point1sy,point2sx,point2sy); } /**画活动*/ List<Element> bactives = eleMap.get("bactives"); drawActive(graphics,bactives,gwMap); List<Element> sactives = eleMap.get("sactives"); drawActive(graphics,sactives,gwMap); /**画路由*/ List<Element> routes = eleMap.get("routes"); drawRoutes(graphics,routes); /**画开始结束*/ List<Element> circles = eleMap.get("circles"); drawCircles(graphics,circles); graphics.dispose();//释放此图形的上下文并释放它所使用的所有系统资源 ImageIO.write(image,"JPEG",response.getOutputStream()); } //画开始结束 private void drawCircles(Graphics2D graphics,List<Element> circles){ for(Element circle:circles){ String bounds = circle.attributeValue("bounds"); String circleName = circle.attributeValue("name"); int circlex = Integer.parseInt(bounds.split(",")[0].substring(0, bounds.split(",")[0].indexOf(".")>0?bounds.split(",")[0].indexOf("."):bounds.split(",")[0].length()));//获取点1x坐标 int circley = Integer.parseInt(bounds.split(",")[1].substring(0, bounds.split(",")[1].indexOf(".")>0?bounds.split(",")[1].indexOf("."):bounds.split(",")[1].length()));//获取点1x坐标 URL url=getClass().getResource("img/js.jpg"); if(StringUtils.equals("Circle1", circleName)){ url=getClass().getResource("img/ks.jpg"); } ImageIcon imageIcon=new ImageIcon(url); Image images=imageIcon.getImage(); graphics.drawImage(images, circlex, circley, null); } } //画路由 private void drawRoutes(Graphics2D graphics,List<Element> routes){ for(Element route:routes){ String bounds = route.attributeValue("bounds"); int routex = Integer.parseInt(bounds.split(",")[0].substring(0, bounds.split(",")[0].indexOf(".")>0?bounds.split(",")[0].indexOf("."):bounds.split(",")[0].length()));//获取点1x坐标 int routey = Integer.parseInt(bounds.split(",")[1].substring(0, bounds.split(",")[1].indexOf(".")>0?bounds.split(",")[1].indexOf("."):bounds.split(",")[1].length()));//获取点1x坐标 URL url=getClass().getResource("img/ly.jpg"); ImageIcon imageIcon=new ImageIcon(url); Image images=imageIcon.getImage(); graphics.drawImage(images, routex, routey, null); } } //画活动 private void drawActive(Graphics2D graphics,List<Element> actives,Map<String,String> gwMap){ for(Element active:actives){ String bounds = active.attributeValue("bounds"); String activeName = active.attributeValue("name"); int activex = Integer.parseInt(bounds.split(",")[0].substring(0, bounds.split(",")[0].indexOf(".")>0?bounds.split(",")[0].indexOf("."):bounds.split(",")[0].length()));//获取点1x坐标 int activey = Integer.parseInt(bounds.split(",")[1].substring(0, bounds.split(",")[1].indexOf(".")>0?bounds.split(",")[1].indexOf("."):bounds.split(",")[1].length()));//获取点1x坐标 URL url=getClass().getResource("img/hd.jpg"); ImageIcon imageIcon=new ImageIcon(url); Image images=imageIcon.getImage(); graphics.drawImage(images, activex, activey, null); String state = gwMap.get(activeName); Color color = Color.BLACK; graphics.setStroke(new BasicStroke(1.0f)); //流程状态监控 根据不同的状态显示不同颜色的边框 if("1".equals(state) || "7".equals(state) || "9".equals(state)){//待处理 color = Color.RED; graphics.setStroke(new BasicStroke(2.0f));//边框加粗 } if("2".equals(state) || "6".equals(state) || "8".equals(state)){ color = Color.GREEN; graphics.setStroke(new BasicStroke(2.0f));//边框加粗 } if("3".equals(state)){ color = Color.GRAY; graphics.setStroke(new BasicStroke(2.0f));//边框加粗 } if("4".equals(state)){ color = Color.BLUE; graphics.setStroke(new BasicStroke(2.0f));//边框加粗 } if("5".equals(state)){ color = Color.PINK; graphics.setStroke(new BasicStroke(2.0f));//边框加粗 } //画活动边框 graphics.setColor(color); graphics.drawRect(activex, activey, 77, 48); //画文字 Element ele = active.element("text"); String eleText = ele.attributeValue("text"); String elebounds = ele.attributeValue("bounds"); int eleTextx = Integer.parseInt(elebounds.split(",")[0].substring(0, elebounds.split(",")[0].indexOf(".")>0?elebounds.split(",")[0].indexOf("."):elebounds.split(",")[0].length()));//获取点1x坐标 int eleTexty = Integer.parseInt(elebounds.split(",")[1].substring(0, elebounds.split(",")[1].indexOf(".")>0?elebounds.split(",")[1].indexOf("."):elebounds.split(",")[1].length()));//获取点1x坐标 //设置文字颜色 graphics.setColor(Color.BLACK); //设置文字内容、位置 graphics.setFont(new Font("微软雅黑",Font.PLAIN,14)); //计算文字显示位置77*48 y48/2 + 14/4 x int x= (77- eleText.length()*14)/2;//活动节点定宽77px (77-文字长度)/2 int y= 48/2+14/4;//活动节点定高48px if(eleText.length()>5){//文字内容大于5展示方式 List<String> strs = new ArrayList<String>(); pstrs(eleText,strs); if(strs.size()<=2){//>5 <=10 展示方式 y=48/4+14/2; for(String str:strs){ graphics.drawString(str, eleTextx+2, eleTexty+y); y=48/4+14/2+16; } } if(strs.size()>2){// >10展示方式 y=48/4+14/4; for(int i=0;i<=2;i++){ y=48/4+14/4+16*i; if(i==2&&strs.get(i).length()>3){ String pstr = strs.get(i).substring(0, 3)+"..."; graphics.drawString(pstr, eleTextx+2, eleTexty+y-2); break; } graphics.drawString(strs.get(i), eleTextx+2, eleTexty+y-2); } } }else{ graphics.drawString(eleText, eleTextx+x, eleTexty+y); } } } /**计算活动节点中的显示字数 用于换行 省略*/ private void pstrs(String str ,List<String> strs){ if(str.length()>5){ String pstr = str.substring(0, 5); String ystr = str.substring(5,str.length()); strs.add(pstr); pstrs(ystr,strs); }else{ strs.add(str); } //return strs; } /**画箭头线bounds*/ private void drawArrowLine(Graphics2D graphics,int sx,int sy,int ex,int ey){ //int sx=120, sy = 120, ex=190, ey=160; double H = 10; // 箭头高度 double L = 5; // 底边的一半 int x3 = 0,x4=0,y3=0,y4=0; double awrad = Math.atan(L / H); // 箭头角度 double arraow_len = Math.sqrt(L * L + H * H); // 箭头的长度 double[] arrXY_1 = rotateVec(ex - sx, ey - sy, awrad, true, arraow_len); double[] arrXY_2 = rotateVec(ex - sx, ey - sy, -awrad, true, arraow_len); double x_3 = ex - arrXY_1[0]; // (x3,y3)是第一端点 double y_3 = ey - arrXY_1[1]; double x_4 = ex - arrXY_2[0]; // (x4,y4)是第二端点 double y_4 = ey - arrXY_2[1]; Double X3 = new Double(x_3); x3 = X3.intValue(); Double Y3 = new Double(y_3); y3 = Y3.intValue(); Double X4 = new Double(x_4); x4 = X4.intValue(); Double Y4 = new Double(y_4); y4 = Y4.intValue(); // 画线 graphics.setStroke(new BasicStroke(1)); graphics.setColor(new Color(91,155,213)); graphics.drawLine(sx, sy, ex, ey); // GeneralPath triangle = new GeneralPath(); triangle.moveTo(ex, ey); triangle.lineTo(x3, y3); triangle.lineTo(x4, y4); triangle.closePath(); //实心箭头 graphics.setColor(new Color(91,155,213)); graphics.fill(triangle); } /** 计算画箭头连接线坐标*/ private static double[] rotateVec(double px, double py, double ang,boolean isChLen, double newLen) { double mathstr[] = new double[2]; // 矢量旋转函数,参数含义分别是x分量、y分量、旋转角、是否改变长度、新长度 double vx = px * Math.cos(ang) - py * Math.sin(ang); double vy = px * Math.sin(ang) + py * Math.cos(ang); if (isChLen) { double d = Math.sqrt(vx * vx + vy * vy); vx = vx / d * newLen; vy = vy / d * newLen; mathstr[0] = vx; mathstr[1] = vy; } return mathstr; } /***获取流程定义*/ private String getWFXml(String id){ byte[] tblxml=workFlowWithStageService.getTbl(id); return new String(tblxml); } /***解析xml**/ private Map<String, List<Element>> analysXml(String id){ String docXml =getWFXml(id); Map<String, List<Element>> eleMap = new HashMap<String, List<Element>>(); try { Document document = DocumentHelper.parseText(docXml); Element rootElement = document.getRootElement(); Element sheetElement = rootElement.element("sheet"); //获取所有的连接线 List<Element> lines= sheetElement.elements("line"); eleMap.put("lines",lines); //获取所有的活动 List<Element> bactives= sheetElement.elements("Active"); List<Element> sactives= sheetElement.elements("active"); eleMap.put("bactives",bactives); eleMap.put("sactives",sactives); //获取所有路由 List<Element> routes= sheetElement.elements("route"); eleMap.put("routes",routes); //获取所有的开始结束 List<Element> circles= sheetElement.elements("circle"); eleMap.put("circles",circles); } catch (DocumentException e) { e.printStackTrace(); } return eleMap; } /**计算画布大小*/ private Map<String,Integer> countWaH(Map<String, List<Element>> map){ Map<String,Integer> whMap = new HashMap<String, Integer>(); List<Integer> xs = new ArrayList<Integer>(); List<Integer> ys = new ArrayList<Integer>(); try { //获取所有活动XY最大值 Map<String, Integer> map1 = getEleMaxXY(map.get("bactives")); xs.add(map1.get("mx")); ys.add(map1.get("my")); Map<String, Integer> map2 = getEleMaxXY(map.get("sactives")); xs.add(map2.get("mx")); ys.add(map2.get("my")); //获取所有路由XY最大值 Map<String, Integer> map3 = getEleMaxXY(map.get("routes")); xs.add(map3.get("mx")); ys.add(map3.get("my")); //获取所有开始结束XY最大值 Map<String, Integer> map4 = getEleMaxXY(map.get("circles")); xs.add(map4.get("mx")); ys.add(map4.get("my")); whMap.put("width", Collections.max(xs)+20); whMap.put("hight", Collections.max(ys)+20); } catch (Exception e) { e.printStackTrace(); } return whMap; } /**获取流程中最大的x坐标y坐标 用来计算画布大小*/ private Map<String, Integer> getEleMaxXY(List<Element> eles){ Map<String, Integer> map = new HashMap<String, Integer>(); try { List<Integer> xs = new ArrayList<Integer>(); List<Integer> ys = new ArrayList<Integer>(); for(Element ele:eles){ String bounds = ele.attributeValue("bounds"); int elex = Integer.parseInt(bounds.split(",")[0].substring(0, bounds.split(",")[0].indexOf(".")>0?bounds.split(",")[0].indexOf("."):bounds.split(",")[0].length()));//获取点1x坐标 int eley = Integer.parseInt(bounds.split(",")[1].substring(0, bounds.split(",")[1].indexOf(".")>0?bounds.split(",")[1].indexOf("."):bounds.split(",")[1].length()));//获取点1y坐标 int elex2 = Integer.parseInt(bounds.split(",")[2].substring(0, bounds.split(",")[2].indexOf(".")>0?bounds.split(",")[2].indexOf("."):bounds.split(",")[2].length()));//获取点2x坐标 int eley2 = Integer.parseInt(bounds.split(",")[3].substring(0, bounds.split(",")[3].indexOf(".")>0?bounds.split(",")[3].indexOf("."):bounds.split(",")[3].length()));//获取点2y坐标 xs.add(elex); xs.add(elex2); ys.add(eley); ys.add(eley2); } map.put("mx", Collections.max(xs)); map.put("my", Collections.max(ys)); } catch (Exception e) { e.printStackTrace(); } return map; } }
3、流程xml文件 有点长 用于参考
<?xml version="1.0" encoding="gb2312" ?> - <vg version="460" gridsize="8" range="0,0,1024,721" bordericons="7" borderstyle="3" scrollbars="3" windowstate="0" backcolor="$FFFFFF" frontcolor="$FFFFFF" pattern="241"> <page name="Page" bounds="0,0,827,1169" visible="false" margin="100,100,100,100" paperwidth="2100" paperheight="2969" /> - <sheet name="Sheet1" bounds="26,12,667,322.5" MyXPDL="‘ <?xml version="1.0" encoding="gb2312"?> <Package Id="" Name="" xmlns="http://www.wfmc.org/2002/XPDL1.0" xmlns:xpdl="http://www.wfmc.org/2002/XPDL1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wfmc.org/2002/XPDL1.0 http://wfmc.org/standards/docs/TC-1025_schema_10_xpdl.xsd"> <PackageHeader> <XPDLVersion>1.0</XPDLVersion> <Vendor>use</Vendor> <Created>2016/12/14 15:32:37</Created> </PackageHeader> <WorkflowProcesses> <WorkflowProcess AccessLevel="PUBLIC" Id="1028100100000000006" Name="业务协同审批类流程1.0"> <ProcessHeader DurationUnit="D"> <Created>2016/12/14 15:32:37</Created> <Limit>0</Limit> </ProcessHeader> <Activities> <Activity Id="Route1" Name = ""> <Route /> <Description /> <Performer /> <TransitionRestrictions> <TransitionRestriction> <Join Type="XOR"> <TransitionRefs> <TransitionRef Id="Line15" /> </TransitionRefs> </Join> <Split Type="XOR"> <TransitionRefs></TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> <ExtendedAttribute /> </Activity> <Activity Id="Active1" Name = "窗口收件"> <Implementation> <Tool Id="Active1" Type="APPLICATION"> <Description /> <ActualParameters> <ActualParameter>formid</ActualParameter> <ActualParameter>TheNextParticipator</ActualParameter> </ActualParameters> <ExtendedAttribute /> </Tool> </Implementation> <Description /> <Performer>Active1_par</Performer> <TransitionRestrictions> <TransitionRestriction> <Join Type="XOR"> <TransitionRefs></TransitionRefs> </Join> <Split Type="XOR"> <TransitionRefs> <TransitionRef Id="Line1" /> </TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes> </Activity> <Activity Id="Active2" Name = "发改初审"> <Implementation> <Tool Id="Active2" Type="APPLICATION"> <Description /> <ActualParameters> <ActualParameter>formid</ActualParameter> <ActualParameter>TheNextParticipator</ActualParameter> </ActualParameters> <ExtendedAttribute /> </Tool> </Implementation> <Description /> <Performer>Active2_par</Performer> <TransitionRestrictions> <TransitionRestriction> <Join Type="XOR"> <TransitionRefs> <TransitionRef Id="Line1" /> </TransitionRefs> </Join> <Split Type="XOR"> <TransitionRefs> <TransitionRef Id="Line4" /> </TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="true"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes> </Activity> <Activity Id="Active3" Name = "统一发件"> <Implementation> <Tool Id="Active3" Type="APPLICATION"> <Description /> <ActualParameters> <ActualParameter>formid</ActualParameter> <ActualParameter>TheNextParticipator</ActualParameter> </ActualParameters> <ExtendedAttribute /> </Tool> </Implementation> <Description /> <Performer>Active3_par</Performer> <TransitionRestrictions> <TransitionRestriction> <Join Type="XOR"> <TransitionRefs> <TransitionRef Id="Line4" /> </TransitionRefs> </Join> <Split Type="AND"> <TransitionRefs> <TransitionRef Id="Line5" /> <TransitionRef Id="Line6" /> <TransitionRef Id="Line7" /> <TransitionRef Id="Line8" /> </TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="true"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes> </Activity> <Activity Id="Active4" Name = "住建"> <Implementation> <Tool Id="Active4" Type="APPLICATION"> <Description /> <ActualParameters> <ActualParameter>formid</ActualParameter> <ActualParameter>TheNextParticipator</ActualParameter> </ActualParameters> <ExtendedAttribute /> </Tool> </Implementation> <Description /> <Performer>Active4_par</Performer> <TransitionRestrictions> <TransitionRestriction> <Join Type="XOR"> <TransitionRefs> <TransitionRef Id="Line5" /> </TransitionRefs> </Join> <Split Type="XOR"> <TransitionRefs> <TransitionRef Id="Line9" /> </TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes> </Activity> <Activity Id="Active5" Name = "国土"> <Implementation> <Tool Id="Active5" Type="APPLICATION"> <Description /> <ActualParameters> <ActualParameter>formid</ActualParameter> <ActualParameter>TheNextParticipator</ActualParameter> </ActualParameters> <ExtendedAttribute /> </Tool> </Implementation> <Description /> <Performer>Active5_par</Performer> <TransitionRestrictions> <TransitionRestriction> <Join Type="XOR"> <TransitionRefs> <TransitionRef Id="Line6" /> </TransitionRefs> </Join> <Split Type="XOR"> <TransitionRefs> <TransitionRef Id="Line10" /> </TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes> </Activity> <Activity Id="Active6" Name = "环保"> <Implementation> <Tool Id="Active6" Type="APPLICATION"> <Description /> <ActualParameters> <ActualParameter>formid</ActualParameter> <ActualParameter>TheNextParticipator</ActualParameter> </ActualParameters> <ExtendedAttribute /> </Tool> </Implementation> <Description /> <Performer>Active6_par</Performer> <TransitionRestrictions> <TransitionRestriction> <Join Type="XOR"> <TransitionRefs> <TransitionRef Id="Line7" /> </TransitionRefs> </Join> <Split Type="XOR"> <TransitionRefs> <TransitionRef Id="Line11" /> </TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes> </Activity> <Activity Id="Active7" Name = "林业"> <Implementation> <Tool Id="Active7" Type="APPLICATION"> <Description /> <ActualParameters> <ActualParameter>formid</ActualParameter> <ActualParameter>TheNextParticipator</ActualParameter> </ActualParameters> <ExtendedAttribute /> </Tool> </Implementation> <Description /> <Performer>Active7_par</Performer> <TransitionRestrictions> <TransitionRestriction> <Join Type="XOR"> <TransitionRefs> <TransitionRef Id="Line8" /> </TransitionRefs> </Join> <Split Type="XOR"> <TransitionRefs> <TransitionRef Id="Line12" /> </TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes> </Activity> <Activity Id="Active8" Name = "意见汇总"> <Implementation> <Tool Id="Active8" Type="APPLICATION"> <Description /> <ActualParameters> <ActualParameter>formid</ActualParameter> <ActualParameter>TheNextParticipator</ActualParameter> </ActualParameters> <ExtendedAttribute /> </Tool> </Implementation> <Description /> <Performer>Active8_par</Performer> <TransitionRestrictions> <TransitionRestriction> <Join Type="AND"> <TransitionRefs> <TransitionRef Id="Line9" /> <TransitionRef Id="Line10" /> <TransitionRef Id="Line11" /> <TransitionRef Id="Line12" /> </TransitionRefs> </Join> <Split Type="XOR"> <TransitionRefs> <TransitionRef Id="Line13" /> </TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes> </Activity> <Activity Id="Active9" Name = "项目生成意见批复"> <Implementation> <Tool Id="Active9" Type="APPLICATION"> <Description /> <ActualParameters> <ActualParameter>formid</ActualParameter> <ActualParameter>TheNextParticipator</ActualParameter> </ActualParameters> <ExtendedAttribute /> </Tool> </Implementation> <Description /> <Performer>Active9_par</Performer> <TransitionRestrictions> <TransitionRestriction> <Join Type="XOR"> <TransitionRefs> <TransitionRef Id="Line13" /> </TransitionRefs> </Join> <Split Type="XOR"> <TransitionRefs> <TransitionRef Id="Line14" /> </TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes> </Activity> <Activity Id="Active10" Name = "窗口发件"> <Implementation> <Tool Id="Active10" Type="APPLICATION"> <Description /> <ActualParameters> <ActualParameter>formid</ActualParameter> <ActualParameter>TheNextParticipator</ActualParameter> </ActualParameters> <ExtendedAttribute /> </Tool> </Implementation> <Description /> <Performer>Active10_par</Performer> <TransitionRestrictions> <TransitionRestriction> <Join Type="XOR"> <TransitionRefs> <TransitionRef Id="Line14" /> </TransitionRefs> </Join> <Split Type="XOR"> <TransitionRefs> <TransitionRef Id="Line15" /> </TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes> </Activity> </Activities> <Participants> <Participant Id="Active1_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10091" namespace=""/> <ExtendedAttributes/> </Participant> <Participant Id="Active2_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10087" namespace=""/> <ExtendedAttributes/> </Participant> <Participant Id="Active3_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10088" namespace=""/> <ExtendedAttributes/> </Participant> <Participant Id="Active4_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10094" namespace=""/> <ExtendedAttributes/> </Participant> <Participant Id="Active5_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10093" namespace=""/> <ExtendedAttributes/> </Participant> <Participant Id="Active6_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10096" namespace=""/> <ExtendedAttributes/> </Participant> <Participant Id="Active7_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10095" namespace=""/> <ExtendedAttributes/> </Participant> <Participant Id="Active8_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10088" namespace=""/> <ExtendedAttributes/> </Participant> <Participant Id="Active9_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10087" namespace=""/> <ExtendedAttributes/> </Participant> <Participant Id="Active10_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10092" namespace=""/> <ExtendedAttributes/> </Participant> </Participants> <Applications> <Application Id="Active1" Name=""> <Description /> <ExternalReference location="" xref="/jsp/formdesign/customform/fw_form.jsp" namespace="" /> <ExtendedAttributes> <ExtendedAttribute Name="ActivityType" Value="Manual" /> <ExtendedAttribute Name="AdaptorName" Value="" /> <ExtendedAttribute Name="StartActivityAction" Value="" /> <ExtendedAttribute Name="EndActivityAction" Value="" /> </ExtendedAttributes> </Application> <Application Id="Active2" Name=""> <Description /> <ExternalReference location="" xref="/jsp/formdesign/customform/fw_form.jsp" namespace="" /> <ExtendedAttributes> <ExtendedAttribute Name="ActivityType" Value="Manual" /> <ExtendedAttribute Name="AdaptorName" Value="" /> <ExtendedAttribute Name="StartActivityAction" Value="" /> <ExtendedAttribute Name="EndActivityAction" Value="" /> </ExtendedAttributes> </Application> <Application Id="Active3" Name=""> <Description /> <ExternalReference location="" xref="/jsp/formdesign/customform/fw_form.jsp" namespace="" /> <ExtendedAttributes> <ExtendedAttribute Name="ActivityType" Value="Manual" /> <ExtendedAttribute Name="AdaptorName" Value="" /> <ExtendedAttribute Name="StartActivityAction" Value="" /> <ExtendedAttribute Name="EndActivityAction" Value="" /> </ExtendedAttributes> </Application> <Application Id="Active4" Name=""> <Description /> <ExternalReference location="" xref="/jsp/formdesign/customform/fw_form.jsp" namespace="" /> <ExtendedAttributes> <ExtendedAttribute Name="ActivityType" Value="Manual" /> <ExtendedAttribute Name="AdaptorName" Value="" /> <ExtendedAttribute Name="StartActivityAction" Value="" /> <ExtendedAttribute Name="EndActivityAction" Value="" /> </ExtendedAttributes> </Application> <Application Id="Active5" Name=""> <Description /> <ExternalReference location="" xref="/jsp/formdesign/customform/fw_form.jsp" namespace="" /> <ExtendedAttributes> <ExtendedAttribute Name="ActivityType" Value="Manual" /> <ExtendedAttribute Name="AdaptorName" Value="" /> <ExtendedAttribute Name="StartActivityAction" Value="" /> <ExtendedAttribute Name="EndActivityAction" Value="" /> </ExtendedAttributes> </Application> <Application Id="Active6" Name=""> <Description /> <ExternalReference location="" xref="/jsp/formdesign/customform/fw_form.jsp" namespace="" /> <ExtendedAttributes> <ExtendedAttribute Name="ActivityType" Value="Manual" /> <ExtendedAttribute Name="AdaptorName" Value="" /> <ExtendedAttribute Name="StartActivityAction" Value="" /> <ExtendedAttribute Name="EndActivityAction" Value="" /> </ExtendedAttributes> </Application> <Application Id="Active7" Name=""> <Description /> <ExternalReference location="" xref="/jsp/formdesign/customform/fw_form.jsp" namespace="" /> <ExtendedAttributes> <ExtendedAttribute Name="ActivityType" Value="Manual" /> <ExtendedAttribute Name="AdaptorName" Value="" /> <ExtendedAttribute Name="StartActivityAction" Value="" /> <ExtendedAttribute Name="EndActivityAction" Value="" /> </ExtendedAttributes> </Application> <Application Id="Active8" Name=""> <Description /> <ExternalReference location="" xref="/jsp/formdesign/customform/fw_form.jsp" namespace="" /> <ExtendedAttributes> <ExtendedAttribute Name="ActivityType" Value="Manual" /> <ExtendedAttribute Name="AdaptorName" Value="" /> <ExtendedAttribute Name="StartActivityAction" Value="" /> <ExtendedAttribute Name="EndActivityAction" Value="" /> </ExtendedAttributes> </Application> <Application Id="Active9" Name=""> <Description /> <ExternalReference location="" xref="/jsp/formdesign/customform/fw_form.jsp" namespace="" /> <ExtendedAttributes> <ExtendedAttribute Name="ActivityType" Value="Manual" /> <ExtendedAttribute Name="AdaptorName" Value="" /> <ExtendedAttribute Name="StartActivityAction" Value="" /> <ExtendedAttribute Name="EndActivityAction" Value="" /> </ExtendedAttributes> </Application> <Application Id="Active10" Name=""> <Description /> <ExternalReference location="" xref="/jsp/formdesign/customform/fw_form.jsp" namespace="" /> <ExtendedAttributes> <ExtendedAttribute Name="ActivityType" Value="Manual" /> <ExtendedAttribute Name="AdaptorName" Value="" /> <ExtendedAttribute Name="StartActivityAction" Value="" /> <ExtendedAttribute Name="EndActivityAction" Value="" /> </ExtendedAttributes> </Application> </Applications> <ExtendedAttributes> <ExtendedAttribute Name="StartWorkflowAction" Value="" /> <ExtendedAttribute Name="EndWorkflowAction" Value="" /> <ExtendedAttribute Name="StartOfWorkflow" Value="Active1"/> <ExtendedAttribute Name="EndOfWorkflow" Value="Route1"/> <ExtendedAttribute Name="FormRef" Value=""/> </ExtendedAttributes> <DataFields> <DataField Id="formid" Name="表单索引"> <Description/> <InitialValue>0</InitialValue> <Length/> <DataType> <BasicType Type="STRING"/> </DataType> <ExtendedAttributes/> </DataField> <DataField Id="TheNextParticipator" Name="下一步参与者"> <Description/> <InitialValue></InitialValue> <Length/> <DataType> <BasicType Type="STRING"/> </DataType> <ExtendedAttributes/> </DataField> </DataFields> <FormalParameters></FormalParameters> <ActivitySets /> <Transitions> <Transition Id="Line1" Name="" From="Active1" To="Active2"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line4" Name="" From="Active2" To="Active3"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line5" Name="" From="Active3" To="Active4"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line6" Name="" From="Active3" To="Active5"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line7" Name="" From="Active3" To="Active6"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line8" Name="" From="Active3" To="Active7"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line9" Name="" From="Active4" To="Active8"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line10" Name="" From="Active5" To="Active8"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line11" Name="" From="Active6" To="Active8"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line12" Name="" From="Active7" To="Active8"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line13" Name="" From="Active8" To="Active9"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line14" Name="" From="Active9" To="Active10"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> <Transition Id="Line15" Name="" From="Active10" To="Route1"> <Description /> <Condition Type="CONDITION"></Condition> <ExtendedAttrbutes /> </Transition> </Transitions> </WorkflowProcess> </WorkflowProcesses> </Package>‘" P_id="‘1028100100000000006‘" P_name="‘业务协同审批类流程1.0‘"> - <circle name="Circle1" description="开始" bounds="26,18,102,52" origin="64,35" alpha="80" protect="252" backcolor="$FFFFE8" frontcolor="$F7F700" pattern="244"> <text name="Text1" bounds="33.103240983,25.103240983,94.896759017,44.896759017" origin="64,35" lock="true" border="$0" fontname="宋体" fontsize="12" text="开始" /> </circle> - <circle name="Circle2" description="结束" bounds="591,190.5,667,224.5" origin="629,206" alpha="80" protect="252" backcolor="$F5F5F5" frontcolor="$F0F000" pattern="252"> <text name="Text1" bounds="598.103240983,197.603240983,659.896759017,217.396759017" origin="629,207.5" lock="true" border="$0" fontname="宋体" fontsize="12" text="结束" /> </circle> - <line name="Line2" description="关联" origin="136.532019704,193" protect="16" lock="true" linetype="12" linecolor="$FF0000" frontcolor="$808080" linkmode="1"> <points>102,35.152,6 151,35.348,2</points> <link>Circle1,p0,center Active1,p1,center</link> </line> - <line name="Line3" description="关联" origin="579.950936429,366" protect="16" lock="true" linetype="12" linecolor="$FF0000" frontcolor="$808080" linkmode="1"> <points>629,277,6 629,225,2</points> <link>Route1,p0,center Circle2,p1,center</link> </line> - <line name="Line1" description="转移" origin="156,144.414590782" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>227,35.674311927,6 260,35.825688073,2</points> <link>Active1,p0,center Active2,p1,center</link> </line> - <route name="Route1" description="路由" bounds="606.136929844,276,651.863070156,321.726140312" origin="626.886929844,299"> <circle name="Circle1" bounds="606.136929844,276,651.863070156,321.726140312" origin="639.363070156,309.226140312" linecolor="$FF8000" frontcolor="$FF8000" pattern="248" /> <text name="Text1" bounds="612.136929844,283.25,645.886929844,311.75" origin="621.886929844,330.25" lock="true" backcolor="$0" frontcolor="$FFFFFF" border="$0" fontname="宋体" fontsize="12" text="结束路由" /> </route> - <active name="Active1" description="活动" bounds="151,12,227,59" origin="180,27" A_joinInType="‘XOR‘" A_joinOutType="‘XOR‘" A_name="‘窗口收件‘" A_txtactbjsp="‘‘" A_txtactejsp="‘‘" A_txtHint="‘‘" D_count="‘0‘" E_AssignStrategic="‘All‘" E_CanGetback="‘false‘" E_CanRollback="‘false‘" E_CommitStrategic="‘Anyone‘" E_CommitStrategicPercentNumber="‘0‘" E_DurationUnit="‘NO‘" E_ExecuteNode="‘‘" E_ExecuteStrategic="‘Share‘" E_ExecuteUnit="‘W‘" E_Limit="‘0-0-0-0-0‘" E_UnrestrictedRouting="‘false‘" P_data="‘‘" P_ExAtXML="‘ <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes>‘" P_person0="‘10091‘" P_person0_type="‘HUMAN‘" P_person0name="‘cksjy‘" P_personcount="‘1‘" P_personref="‘Active1_par‘" P_personXML="‘ <Participant Id="Active1_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10091" namespace=""/> <ExtendedAttributes/> </Participant>‘" P_URL="‘/jsp/formdesign/customform/fw_form.jsp‘"> <rect name="Active" description="活动" bounds="151,12,227,59" origin="198.25,38.5" corner="30" frontcolor="$FEE39E" pattern="244" /> <text name="Text1" bounds="151,12,227,59" origin="434.75,145.3" lock="true" fontname="宋体" fontsize="12" text="窗口收件" /> </active> - <Active name="Active2" description="活动" bounds="260,12.5,336,59.5" origin="298,36" A_joinInType="‘XOR‘" A_joinOutType="‘XOR‘" A_name="‘发改初审‘" A_txtactbjsp="‘‘" A_txtactejsp="‘‘" A_txtHint="‘‘" D_count="‘0‘" E_AssignStrategic="‘All‘" E_CanGetback="‘false‘" E_CanRollback="‘true‘" E_CommitStrategic="‘Anyone‘" E_CommitStrategicPercentNumber="‘0‘" E_DurationUnit="‘NO‘" E_ExecuteNode="‘‘" E_ExecuteStrategic="‘Share‘" E_ExecuteUnit="‘W‘" E_Limit="‘0-0-0-0-0‘" E_UnrestrictedRouting="‘false‘" P_data="‘‘" P_ExAtXML="‘ <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="true"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes>‘" P_person0="‘10087‘" P_person0_type="‘HUMAN‘" P_person0name="‘fgw‘" P_personcount="‘1‘" P_personref="‘Active2_par‘" P_personXML="‘ <Participant Id="Active2_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10087" namespace=""/> <ExtendedAttributes/> </Participant>‘" P_URL="‘/jsp/formdesign/customform/fw_form.jsp‘"> <rect name="Active" description="活动" bounds="260,12.5,336,59.5" origin="317.8,41.4" corner="30" frontcolor="$FEE39E" pattern="244" /> <text name="Text1" bounds="260,12.5,336,59.5" origin="317.3,42.2" lock="true" fontname="宋体" fontsize="12" borderinterval="0" text="发改初审" /> </Active> - <Active name="Active3" description="活动" bounds="260,86.5,336,133.5" origin="298,110" A_joinInType="‘XOR‘" A_joinOutType="‘AND‘" A_name="‘统一发件‘" A_txtactbjsp="‘‘" A_txtactejsp="‘‘" A_txtHint="‘‘" D_count="‘0‘" E_AssignStrategic="‘All‘" E_CanGetback="‘false‘" E_CanRollback="‘true‘" E_CommitStrategic="‘Anyone‘" E_CommitStrategicPercentNumber="‘0‘" E_DurationUnit="‘NO‘" E_ExecuteNode="‘‘" E_ExecuteStrategic="‘Share‘" E_ExecuteUnit="‘W‘" E_Limit="‘0-0-0-0-0‘" E_UnrestrictedRouting="‘false‘" P_data="‘‘" P_ExAtXML="‘ <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="true"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes>‘" P_person0="‘10088‘" P_person0_type="‘HUMAN‘" P_person0name="‘ghj‘" P_personcount="‘1‘" P_personref="‘Active3_par‘" P_personXML="‘ <Participant Id="Active3_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10088" namespace=""/> <ExtendedAttributes/> </Participant>‘" P_URL="‘/jsp/formdesign/customform/fw_form.jsp‘"> <rect name="Active" description="活动" bounds="260,86.5,336,133.5" origin="317.8,115.4" corner="30" frontcolor="$FEE39E" pattern="244" /> <text name="Text1" bounds="260,86.5,336,133.5" origin="317.3,116.2" lock="true" fontname="宋体" fontsize="12" borderinterval="0" text="统一发件" /> </Active> - <Active name="Active4" description="活动" bounds="109,182.5,185,229.5" origin="147,206" A_joinInType="‘XOR‘" A_joinOutType="‘XOR‘" A_name="‘住建‘" A_txtactbjsp="‘‘" A_txtactejsp="‘‘" A_txtHint="‘‘" D_count="‘0‘" E_AssignStrategic="‘All‘" E_CanGetback="‘false‘" E_CanRollback="‘false‘" E_CommitStrategic="‘Anyone‘" E_CommitStrategicPercentNumber="‘0‘" E_DurationUnit="‘NO‘" E_ExecuteNode="‘‘" E_ExecuteStrategic="‘Share‘" E_ExecuteUnit="‘W‘" E_Limit="‘0-0-0-0-0‘" E_UnrestrictedRouting="‘false‘" P_data="‘‘" P_ExAtXML="‘ <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes>‘" P_person0="‘10094‘" P_person0_type="‘HUMAN‘" P_person0name="‘zjbm‘" P_personcount="‘1‘" P_personref="‘Active4_par‘" P_personXML="‘ <Participant Id="Active4_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10094" namespace=""/> <ExtendedAttributes/> </Participant>‘" P_URL="‘/jsp/formdesign/customform/fw_form.jsp‘"> <rect name="Active" description="活动" bounds="109,182.5,185,229.5" origin="166.8,211.4" corner="30" frontcolor="$FEE39E" pattern="244" /> <text name="Text1" bounds="109,182.5,185,229.5" origin="166.3,212.2" lock="true" fontname="宋体" fontsize="12" borderinterval="0" text="住建" /> </Active> - <Active name="Active5" description="活动" bounds="211,180.5,287,227.5" origin="249,204" A_joinInType="‘XOR‘" A_joinOutType="‘XOR‘" A_name="‘国土‘" A_txtactbjsp="‘‘" A_txtactejsp="‘‘" A_txtHint="‘‘" D_count="‘0‘" E_AssignStrategic="‘All‘" E_CanGetback="‘false‘" E_CanRollback="‘false‘" E_CommitStrategic="‘Anyone‘" E_CommitStrategicPercentNumber="‘0‘" E_DurationUnit="‘NO‘" E_ExecuteNode="‘‘" E_ExecuteStrategic="‘Share‘" E_ExecuteUnit="‘W‘" E_Limit="‘0-0-0-0-0‘" E_UnrestrictedRouting="‘false‘" P_data="‘‘" P_ExAtXML="‘ <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes>‘" P_person0="‘10093‘" P_person0_type="‘HUMAN‘" P_person0name="‘gtbm‘" P_personcount="‘1‘" P_personref="‘Active5_par‘" P_personXML="‘ <Participant Id="Active5_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10093" namespace=""/> <ExtendedAttributes/> </Participant>‘" P_URL="‘/jsp/formdesign/customform/fw_form.jsp‘"> <rect name="Active" description="活动" bounds="211,180.5,287,227.5" origin="268.8,209.4" corner="30" frontcolor="$FEE39E" pattern="244" /> <text name="Text1" bounds="211,180.5,287,227.5" origin="268.3,210.2" lock="true" fontname="宋体" fontsize="12" borderinterval="0" text="国土" /> </Active> - <Active name="Active6" description="活动" bounds="312,180.5,388,227.5" origin="350,204" A_joinInType="‘XOR‘" A_joinOutType="‘XOR‘" A_name="‘环保‘" A_txtactbjsp="‘‘" A_txtactejsp="‘‘" A_txtHint="‘‘" D_count="‘0‘" E_AssignStrategic="‘All‘" E_CanGetback="‘false‘" E_CanRollback="‘false‘" E_CommitStrategic="‘Anyone‘" E_CommitStrategicPercentNumber="‘0‘" E_DurationUnit="‘NO‘" E_ExecuteNode="‘‘" E_ExecuteStrategic="‘Share‘" E_ExecuteUnit="‘W‘" E_Limit="‘0-0-0-0-0‘" E_UnrestrictedRouting="‘false‘" P_data="‘‘" P_ExAtXML="‘ <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes>‘" P_person0="‘10096‘" P_person0_type="‘HUMAN‘" P_person0name="‘hbbm‘" P_personcount="‘1‘" P_personref="‘Active6_par‘" P_personXML="‘ <Participant Id="Active6_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10096" namespace=""/> <ExtendedAttributes/> </Participant>‘" P_URL="‘/jsp/formdesign/customform/fw_form.jsp‘"> <rect name="Active" description="活动" bounds="312,180.5,388,227.5" origin="369.8,209.4" corner="30" frontcolor="$FEE39E" pattern="244" /> <text name="Text1" bounds="312,180.5,388,227.5" origin="369.3,210.2" lock="true" fontname="宋体" fontsize="12" borderinterval="0" text="环保" /> </Active> - <Active name="Active7" description="活动" bounds="410,179.5,486,226.5" origin="448,203" A_joinInType="‘XOR‘" A_joinOutType="‘XOR‘" A_name="‘林业‘" A_txtactbjsp="‘‘" A_txtactejsp="‘‘" A_txtHint="‘‘" D_count="‘0‘" E_AssignStrategic="‘All‘" E_CanGetback="‘false‘" E_CanRollback="‘false‘" E_CommitStrategic="‘Anyone‘" E_CommitStrategicPercentNumber="‘0‘" E_DurationUnit="‘NO‘" E_ExecuteNode="‘‘" E_ExecuteStrategic="‘Share‘" E_ExecuteUnit="‘W‘" E_Limit="‘0-0-0-0-0‘" E_UnrestrictedRouting="‘false‘" P_data="‘‘" P_ExAtXML="‘ <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes>‘" P_person0="‘10095‘" P_person0_type="‘HUMAN‘" P_person0name="‘lybm‘" P_personcount="‘1‘" P_personref="‘Active7_par‘" P_personXML="‘ <Participant Id="Active7_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10095" namespace=""/> <ExtendedAttributes/> </Participant>‘" P_URL="‘/jsp/formdesign/customform/fw_form.jsp‘"> <rect name="Active" description="活动" bounds="410,179.5,486,226.5" origin="467.8,208.4" corner="30" frontcolor="$FEE39E" pattern="244" /> <text name="Text1" bounds="410,179.5,486,226.5" origin="467.3,209.2" lock="true" fontname="宋体" fontsize="12" borderinterval="0" text="林业" /> </Active> - <Active name="Active8" description="活动" bounds="261,275.5,337,322.5" origin="299,299" A_joinInType="‘AND‘" A_joinOutType="‘XOR‘" A_name="‘意见汇总‘" A_txtactbjsp="‘‘" A_txtactejsp="‘‘" A_txtHint="‘‘" D_count="‘0‘" E_AssignStrategic="‘All‘" E_CanGetback="‘false‘" E_CanRollback="‘false‘" E_CommitStrategic="‘All‘" E_CommitStrategicPercentNumber="‘0‘" E_DurationUnit="‘NO‘" E_ExecuteNode="‘‘" E_ExecuteStrategic="‘Share‘" E_ExecuteUnit="‘W‘" E_Limit="‘0-0-0-0-0‘" E_UnrestrictedRouting="‘false‘" P_data="‘‘" P_ExAtXML="‘ <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes>‘" P_person0="‘10088‘" P_person0_type="‘HUMAN‘" P_person0name="‘ghj‘" P_personcount="‘1‘" P_personref="‘Active8_par‘" P_personXML="‘ <Participant Id="Active8_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10088" namespace=""/> <ExtendedAttributes/> </Participant>‘" P_URL="‘/jsp/formdesign/customform/fw_form.jsp‘"> <rect name="Active" description="活动" bounds="261,275.5,337,322.5" origin="318.8,304.4" corner="30" frontcolor="$FEE39E" pattern="244" /> <text name="Text1" bounds="261,275.5,337,322.5" origin="318.3,305.2" lock="true" fontname="宋体" fontsize="12" borderinterval="0" text="意见汇总" /> </Active> - <Active name="Active9" description="活动" bounds="369,275.5,445,322.5" origin="407,299" A_joinInType="‘XOR‘" A_joinOutType="‘XOR‘" A_name="‘项目生成意见批复‘" A_txtactbjsp="‘‘" A_txtactejsp="‘‘" A_txtHint="‘‘" D_count="‘0‘" E_AssignStrategic="‘All‘" E_CanGetback="‘false‘" E_CanRollback="‘false‘" E_CommitStrategic="‘Anyone‘" E_CommitStrategicPercentNumber="‘0‘" E_DurationUnit="‘NO‘" E_ExecuteNode="‘‘" E_ExecuteStrategic="‘Share‘" E_ExecuteUnit="‘W‘" E_Limit="‘0-0-0-0-0‘" E_UnrestrictedRouting="‘false‘" P_data="‘‘" P_ExAtXML="‘ <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes>‘" P_person0="‘10087‘" P_person0_type="‘HUMAN‘" P_person0name="‘fgw‘" P_personcount="‘1‘" P_personref="‘Active9_par‘" P_personXML="‘ <Participant Id="Active9_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10087" namespace=""/> <ExtendedAttributes/> </Participant>‘" P_URL="‘/jsp/formdesign/customform/fw_form.jsp‘"> <rect name="Active" description="活动" bounds="369,275.5,445,322.5" origin="426.8,304.4" corner="30" frontcolor="$FEE39E" pattern="244" /> <text name="Text1" bounds="369,275.5,445,322.5" origin="426.3,305.2" lock="true" fontname="宋体" fontsize="12" borderinterval="0" text="项目生成意见批复" /> </Active> - <Active name="Active10" description="活动" bounds="479,275.5,555,322.5" origin="517,299" A_joinInType="‘XOR‘" A_joinOutType="‘XOR‘" A_name="‘窗口发件‘" A_txtactbjsp="‘‘" A_txtactejsp="‘‘" A_txtHint="‘‘" D_count="‘0‘" E_AssignStrategic="‘All‘" E_CanGetback="‘false‘" E_CanRollback="‘false‘" E_CommitStrategic="‘Anyone‘" E_CommitStrategicPercentNumber="‘0‘" E_DurationUnit="‘NO‘" E_ExecuteNode="‘‘" E_ExecuteStrategic="‘Share‘" E_ExecuteUnit="‘W‘" E_Limit="‘0-0-0-0-0‘" E_UnrestrictedRouting="‘false‘" P_data="‘‘" P_ExAtXML="‘ <ExtendedAttributes> <ExtendedAttribute Name="AssignStrategic" Value="All"/> <ExtendedAttribute Name="ExecuteNode" Value=""/> <ExtendedAttribute Name="Limit" Value="0-0-0-0-0"/> <ExtendedAttribute Name="OvertimeHandlerType" Value="NO"/> <ExtendedAttribute Name="OvertimeHandlerTool" Value="email"/> <ExtendedAttribute Name="OvertimeHandlerRef" Value=""/> <ExtendedAttribute Name="CanRollback" Value="false"/> <ExtendedAttribute Name="CanWithdraw" Value="false"/> <ExtendedAttribute Name="UnrestrictedRouting" Value="false"/> <ExtendedAttribute Name="ExecuteUnit" Value="W"/> <ExtendedAttribute Name="CommitStrategic" Value="Anyone"/> <ExtendedAttribute Name="ExecuteStrategic" Value="Share"/> <ExtendedAttribute Name="StartActivityAction" Value=""/> <ExtendedAttribute Name="EndActivityAction" Value=""/> <ExtendedAttribute Name="CommitStrategicPercentNumber" Value="0"/> </ExtendedAttributes>‘" P_person0="‘10092‘" P_person0_type="‘HUMAN‘" P_person0name="‘ckfjy‘" P_personcount="‘1‘" P_personref="‘Active10_par‘" P_personXML="‘ <Participant Id="Active10_par" Name="aaa"> <ParticipantType Type="HUMAN"/> <ExternalReference location="" xref="10092" namespace=""/> <ExtendedAttributes/> </Participant>‘" P_URL="‘/jsp/formdesign/customform/fw_form.jsp‘"> <rect name="Active" description="活动" bounds="479,275.5,555,322.5" origin="536.8,304.4" corner="30" frontcolor="$FEE39E" pattern="244" /> <text name="Text1" bounds="479,275.5,555,322.5" origin="536.3,305.2" lock="true" fontname="宋体" fontsize="12" borderinterval="0" text="窗口发件" /> </Active> - <line name="Line4" description="转移" origin="341.115384615,74" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>298,60,6 298,87,2</points> <link>Active2,p0,center Active3,p1,center</link> </line> - <line name="Line5" description="转移" origin="332.04,145" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>260.25,134,6 183.177083333,183,2</points> <link>Active3,p0,center Active4,p1,center</link> </line> - <line name="Line6" description="转移" origin="331.823529412,145.5" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>285.489361702,134,6 260.989361702,181,2</points> <link>Active3,p0,center Active5,p1,center</link> </line> - <line name="Line7" description="转移" origin="333.076923077,146" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>311.276595745,134,6 337.276595745,181,2</points> <link>Active3,p0,center Active6,p1,center</link> </line> - <line name="Line8" description="转移" origin="340.384615385,146" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>336,133.56,6 410.903225806,180,2</points> <link>Active3,p0,center Active7,p1,center</link> </line> - <line name="Line9" description="转移" origin="189.75,242" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>185,229.25,6 261.408602151,276,2</points> <link>Active4,p0,center Active8,p1,center</link> </line> - <line name="Line10" description="转移" origin="291.132075472,242.5" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>261.631578947,228,6 286.894736842,276,2</points> <link>Active5,p0,center Active8,p1,center</link> </line> - <line name="Line11" description="转移" origin="383.75,240" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>337.115789474,228,6 311.347368421,276,2</points> <link>Active6,p0,center Active8,p1,center</link> </line> - <line name="Line12" description="转移" origin="479.810344828,245" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>410.75,227,6 334.697916667,276,2</points> <link>Active7,p0,center Active8,p1,center</link> </line> - <line name="Line13" description="转移" origin="342.66,336" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>337,299,6 369,299,2</points> <link>Active8,p0,center Active9,p1,center</link> </line> - <line name="Line14" description="转移" origin="443.428571429,338" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>445,299,6 479,299,2</points> <link>Active9,p0,center Active10,p1,center</link> </line> - <line name="Line15" description="转移" origin="556.565217391,334" linecolor="$FFAA55" endarrow="1" linkmode="1"> <points>555,298.95354166,6 607,298.88996709,2</points> <link>Active10,p0,center Route1,p1,center</link> </line> </sheet> </vg>
以上是关于java Graphics2D根据流程xml文件画流程图(完整代码)的主要内容,如果未能解决你的问题,请参考以下文章
Java Graphics2D画二次曲线,求问这两个曲线怎么画出来,画在面板??给五分 求助,关键是弯线,直线我会画