Merge branch 'apps_dev' of https://e.coding.net/yilidev/yilipalkaifa/apps into apps_dev

This commit is contained in:
Mr-wang 2022-09-28 21:20:57 +08:00
commit a720cd0418
189 changed files with 4254 additions and 2019 deletions

View File

@ -490,537 +490,6 @@ Schema.addShape({name:"method_service_node4", title:"人工任务", text:"人工
{lineStyle:{lineWidth:2, lineStyle:"dashed"}, fillStyle:{type:"none"}, actions:{ref:"roundRectangle"}}
]});
Schema.addGlobalCommand("method_script_task", [
{action:"move", x:"100*0.15- 100*0.05", y:"60*0.24- 60*0.1"},
{action:"line", x:"100*0.15 + 100*0.05", y:"60*0.24 - 60*0.1"},
{action:"curve", x1:"100*0.15 + 100*0.02", y1:"60*0.24 - 60*0.1", x2:"100*0.15 + 100*0.02", y2:"60*0.24", x:"100*0.15 + 100*0.04", y:"60*0.24"},
{action:"curve", x1:"100*0.15 + 100*0.06", y1:"60*0.24", x2:"100*0.15 + 100*0.06", y2:"60*0.24 + 60*0.1", x:"100*0.15 + 100*0.03", y:"60*0.24 + 60*0.1"},
{action:"line", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.1"},
{action:"curve", x1:"100*0.15 - 100*0.05", y1:"60*0.24 + 60*0.1", x2:"100*0.15 - 100*0.05", y2:"60*0.24", x:"100*0.15 - 100*0.07", y:"60*0.24"},
{action:"curve", x1:"100*0.15 - 100*0.09", y1:"60*0.24", x2:"100*0.15 - 100*0.09", y2:"60*0.24 - 60*0.1", x:"100*0.15 - 100*0.05", y:"60*0.24 - 60*0.1"},
{action:"close"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 - 60*0.05"},
{action:"line", x:"100*0.15 + 100*0.025", y:"60*0.24 - 60*0.05"},
{action:"move", x:"100*0.15 - 100*0.07", y:"60*0.24 - 0"},
{action:"line", x:"100*0.15 + 100*0.04", y:"60*0.24 - 0"},
{action:"move", x:"100*0.15 - 100*0.055", y:"60*0.24 + 60*0.06"},
{action:"line", x:"100*0.15 + 100*0.05", y:"60*0.24 + 60*0.06"}
]);
Schema.addCategory({name:"process_flowchart", text:"流程图", dataAttributes:[
{name:"No.", type:"number", value:"", category:"default"},
{name:"Name", type:"string", value:"", category:"default"},
{name:"Owner", type:"string", value:"", category:"default"},
{name:"Link", type:"link", value:"", category:"default"},
{name:"Memo", type:"string", value:"", category:"default"},
{name:"Cost", type:"number", value:"", category:"default"},
{name:"Time", type:"number", value:"", category:"default"},
{name:"Manner", type:"list", value:"", category:"default"},
{name:"Department", type:"string", value:"", category:"default"},
{name:"Input", type:"string", value:"", category:"default"},
{name:"Output", type:"string", value:"", category:"default"},
{name:"Risk", type:"string", value:"", category:"default"},
{name:"Remarks", type:"string", value:"", category:"default"}
]});
Schema.addGlobalCommand("method_user_task", [
{action:"move", x:"100*0.05+ 100/11*2*0.5-100/11*2*0.2", y:"60*0.1+ 60/55*16*0.3"},
{action:"curve", x1:"100*0.05+ 100/11*2*0.30", y1:"60*0.1+ 60/55*16*0.3 - 60/55*16*0.4*2/3", x2:"100*0.05+ 100/11*2*0.5+100/11*2*0.2", y2:"60*0.1+ 60/55*16*0.3 - 60/55*16*0.4*2/3", x:"100*0.05+ 100/11*2*0.5+100/11*2*0.2", y:"60*0.1+ 60/55*16*0.3"},
{action:"line", x:"100*0.05+ 100/11*2*0.5-100/11*2*0.2", y:"60*0.1+ 60/55*16*0.3"},
{action:"close"},
{action:"move", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.1", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.96"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.1", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.68"},
{action:"quadraticCurve", x1:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.1", y1:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.45", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.35", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.45"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.35", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.58"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.60", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.58"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.60", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.45"},
{action:"quadraticCurve", x1:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.95", y1:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.45", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.95", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.68"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.95", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.96"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.77", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.96"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.77", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.77"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.77", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.96"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.23", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.96"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.23", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.77"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.23", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.96"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.05", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.96"},
{action:"close"},
{action:"move", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.35", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.45"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.38", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.42"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.35", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.40"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.32", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.35"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.32", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.27"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.43", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.27"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.46", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.24"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.68", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.24"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.68", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.35"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.60", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.40"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.62", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.42"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.60", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.45"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.60", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.58"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.35", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.58"},
{action:"line", x:"100*0.05+ 100/11*2*0.0 + 100/11*2*0.35", y:"60*0.1+ 60/55*16*0.0 + 60/55*16*0.45"},
{action:"close"}
]);
Schema.addGlobalCommand("method_service_task", [
{action:"move", x:"100*0.09 -100*0.26 *0.16", y:"60*0.14 + 60/5*8 *0.16 *0.16"},
{action:"line", x:"100*0.09 -100*0.28 *0.16", y:"60*0.14 + 60/5*8 *0.11 *0.16"},
{action:"line", x:"100*0.09 - 100*0.26 *0.16", y:"60*0.14 + 60/5*8 *0.05 *0.16"},
{action:"line", x:"100*0.09 -100*0.17 *0.16", y:"60*0.14 + 60/5*8 *0.05 *0.16"},
{action:"line", x:"100*0.09 -100*0.12 *0.16", y:"60*0.14 -60/5*8 *0.02 *0.16"},
{action:"line", x:"100*0.09 -100*0.21 *0.16", y:"60*0.14 -60/5*8 *0.13 *0.16"},
{action:"line", x:"100*0.09 -100*0.18 *0.16", y:"60*0.14 -60/5*8 *0.17 *0.16"},
{action:"line", x:"100*0.09 -100*0.13 *0.16", y:"60*0.14 -60/5*8 *0.19 *0.16"},
{action:"line", x:"100*0.09 -100*0.05 *0.16", y:"60*0.14 -60/5*8 *0.11 *0.16"},
{action:"line", x:"100*0.09 +100*0.03 *0.16", y:"60*0.14 -60/5*8 *0.15 *0.16"},
{action:"line", x:"100*0.09 + 100*0.04 *0.16", y:"60*0.14 -60/5*8 *0.25 *0.16"},
{action:"line", x:"100*0.09 + 100*0.10 *0.16", y:"60*0.14 -60/5*8 *0.27 *0.16"},
{action:"line", x:"100*0.09 + 100*0.15 *0.16", y:"60*0.14 -60/5*8 *0.25 *0.16"},
{action:"line", x:"100*0.09 + 100*0.15 *0.16", y:"60*0.14 -60/5*8 *0.15 *0.16"},
{action:"line", x:"100*0.09 + 100*0.23 *0.16", y:"60*0.14 -60/5*8 *0.12 *0.16"},
{action:"line", x:"100*0.09 + 100*0.30 *0.16", y:"60*0.14 -60/5*8 *0.19 *0.16"},
{action:"line", x:"100*0.09 + 100*0.35 *0.16", y:"60*0.14 -60/5*8 *0.16 *0.16"},
{action:"line", x:"100*0.09 + 100*0.38 *0.16", y:"60*0.14 -60/5*8 *0.12 *0.16"},
{action:"line", x:"100*0.09 + 100*0.32 *0.16", y:"60*0.14 -60/5*8 *0.05 *0.16"},
{action:"line", x:"100*0.09 + 100*0.37 *0.16", y:"60*0.14 + 60/5*8 *0.05 *0.16"},
{action:"line", x:"100*0.09 + 100*0.46 *0.16", y:"60*0.14 + 60/5*8 *0.05 *0.16"},
{action:"line", x:"100*0.09 + 100*0.48 *0.16", y:"60*0.14 + 60/5*8 *0.10 *0.16"},
{action:"line", x:"100*0.09 + 100*0.46 *0.16", y:"60*0.14 + 60/5*8 *0.16 *0.16"},
{action:"line", x:"100*0.09 + 100*0.37 *0.16", y:"60*0.14 + 60/5*8 *0.16 *0.16"},
{action:"line", x:"100*0.09 + 100*0.33 *0.16", y:"60*0.14 + 60/5*8 *0.25 *0.16"},
{action:"line", x:"100*0.09 + 100*0.38 *0.16", y:"60*0.14 + 60/5*8 *0.31 *0.16"},
{action:"line", x:"100*0.09 + 100*0.36 *0.16", y:"60*0.14 + 60/5*8 *0.37 *0.16"},
{action:"line", x:"100*0.09 + 100*0.29 *0.16", y:"60*0.14 + 60/5*8 *0.39 *0.16"},
{action:"line", x:"100*0.09 + 100*0.25 *0.16", y:"60*0.14 + 60/5*8 *0.35 *0.16"},
{action:"line", x:"100*0.09 + 100*0.16 *0.16", y:"60*0.14 + 60/5*8 *0.37 *0.16"},
{action:"line", x:"100*0.09 + 100*0.16 *0.16", y:"60*0.14 + 60/5*8 *0.46 *0.16"},
{action:"line", x:"100*0.09 + 100*0.10 *0.16", y:"60*0.14 + 60/5*8 *0.48 *0.16"},
{action:"line", x:"100*0.09 + 100*0.04 *0.16", y:"60*0.14 + 60/5*8 *0.46 *0.16"},
{action:"line", x:"100*0.09 + 100*0.04 *0.16", y:"60*0.14 + 60/5*8 *0.37 *0.16"},
{action:"line", x:"100*0.09 -100*0.04 *0.16", y:"60*0.14 + 60/5*8 *0.33 *0.16"},
{action:"line", x:"100*0.09 -100*0.12 *0.16", y:"60*0.14 + 60/5*8 *0.38 *0.16"},
{action:"line", x:"100*0.09 -100*0.18 *0.16", y:"60*0.14 + 60/5*8 *0.37 *0.16"},
{action:"line", x:"100*0.09 -100*0.21 *0.16", y:"60*0.14 + 60/5*8 *0.33 *0.16"},
{action:"line", x:"100*0.09 -100*0.14 *0.16", y:"60*0.14 + 60/5*8 *0.25 *0.16"},
{action:"line", x:"100*0.09 -100*0.16 *0.16", y:"60*0.14 + 60/5*8 *0.16 *0.16"},
{action:"line", x:"100*0.09 -100*0.26 *0.16", y:"60*0.14 + 60/5*8 *0.16 *0.16"},
{action:"close"},
{action:"move", x:"100*0.09 -100*0.01 *0.16", y:"60*0.14 + 60/5*8 *0.01 *0.16"},
{action:"line", x:"100*0.09 +100*0.01 *0.16", y:"60*0.14 - 60*0.01 /5*8 *0.16"},
{action:"line", x:"100*0.09 +100*0.04 *0.16", y:"60*0.14 + 60*0.01 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.08 *0.16", y:"60*0.14 + 60*0.01 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.08 *0.16", y:"60*0.14 - 60*0.03 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.12 *0.16", y:"60*0.14 - 60*0.03 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.12 *0.16", y:"60*0.14 - 60*0.0 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.15 *0.16", y:"60*0.14 + 60*0.02 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.18 *0.16", y:"60*0.14 -60*0.01 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.22 *0.16", y:"60*0.14 + 60*0.01 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.18 *0.16", y:"60*0.14 + 60*0.04 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.20 *0.16", y:"60*0.14 + 60*0.08 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.25 *0.16", y:"60*0.14 + 60*0.08 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.25 *0.16", y:"60*0.14 + 60*0.12 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.20 *0.16", y:"60*0.14 + 60*0.12 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.18 *0.16", y:"60*0.14 + 60*0.16 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.21 *0.16", y:"60*0.14 + 60*0.19 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.18 *0.16", y:"60*0.14 + 60*0.22 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.15 *0.16", y:"60*0.14 + 60*0.19 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.12 *0.16", y:"60*0.14 + 60*0.21 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.12 *0.16", y:"60*0.14 + 60*0.25 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.08 *0.16", y:"60*0.14 + 60*0.26 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.08 *0.16", y:"60*0.14 + 60*0.21 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.05 *0.16", y:"60*0.14 + 60*0.18 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.01 *0.16", y:"60*0.14 + 60*0.22 /5*8 *0.16"},
{action:"line", x:"100*0.09 - 100*0.02 *0.16", y:"60*0.14 + 60*0.19 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.0 *0.16", y:"60*0.14 + 60*0.16 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.0 *0.16", y:"60*0.14 + 60*0.12 /5*8 *0.16"},
{action:"line", x:"100*0.09 -100*0.04 *0.16", y:"60*0.14 + 60*0.12 /5*8 *0.16"},
{action:"line", x:"100*0.09 -100*0.04 *0.16", y:"60*0.14 + 60*0.08 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0. *0.16", y:"60*0.14 + 60*0.08 /5*8 *0.16"},
{action:"line", x:"100*0.09 + 100*0.01 *0.16", y:"60*0.14 + 60*0.05 /5*8 *0.16"},
{action:"line", x:"100*0.09 -100*0.01 *0.16", y:"60*0.14 + 60*0.01 /5*8 *0.16"},
{action:"close"},
{action:"move", x:"100*0.15 -100*0.26 *0.16", y:"60*0.24 + 60/5*8 *0.16 *0.16"},
{action:"line", x:"100*0.15 -100*0.28 *0.16", y:"60*0.24 + 60/5*8 *0.11 *0.16"},
{action:"line", x:"100*0.15 -100*0.26 *0.16", y:"60*0.24 + 60/5*8 *0.05 *0.16"},
{action:"line", x:"100*0.15 -100*0.17 *0.16", y:"60*0.24 + 60/5*8 *0.05 *0.16"},
{action:"line", x:"100*0.15 -100*0.12 *0.16", y:"60*0.24 -60/5*8 *0.02 *0.16"},
{action:"line", x:"100*0.15 -100*0.21 *0.16", y:"60*0.24 -60/5*8 *0.13 *0.16"},
{action:"line", x:"100*0.15 -100*0.18 *0.16", y:"60*0.24 -60/5*8 *0.17 *0.16"},
{action:"line", x:"100*0.15 -100*0.13 *0.16", y:"60*0.24 -60/5*8 *0.19 *0.16"},
{action:"line", x:"100*0.15 -100*0.05 *0.16", y:"60*0.24 -60/5*8 *0.11 *0.16"},
{action:"line", x:"100*0.15 + 100*0.03 *0.16", y:"60*0.24 -60/5*8 *0.15 *0.16"},
{action:"line", x:"100*0.15 + 100*0.04 *0.16", y:"60*0.24 -60/5*8 *0.25 *0.16"},
{action:"line", x:"100*0.15 + 100*0.10 *0.16", y:"60*0.24 -60/5*8 *0.27 *0.16"},
{action:"line", x:"100*0.15 + 100*0.15 *0.16", y:"60*0.24 -60/5*8 *0.25 *0.16"},
{action:"line", x:"100*0.15 + 100*0.15 *0.16", y:"60*0.24 -60/5*8 *0.15 *0.16"},
{action:"line", x:"100*0.15 + 100*0.23 *0.16", y:"60*0.24 -60/5*8 *0.12 *0.16"},
{action:"line", x:"100*0.15 + 100*0.30 *0.16", y:"60*0.24 -60/5*8 *0.19 *0.16"},
{action:"line", x:"100*0.15 + 100*0.35 *0.16", y:"60*0.24 -60/5*8 *0.16 *0.16"},
{action:"line", x:"100*0.15 + 100*0.38 *0.16", y:"60*0.24 -60/5*8 *0.12 *0.16"},
{action:"line", x:"100*0.15 + 100*0.32 *0.16", y:"60*0.24 -60/5*8 *0.05 *0.16"},
{action:"line", x:"100*0.15 + 100*0.37 *0.16", y:"60*0.24 +60/5*8 *0.05 *0.16"},
{action:"line", x:"100*0.15 + 100*0.46 *0.16", y:"60*0.24 +60/5*8 *0.05 *0.16"},
{action:"line", x:"100*0.15 + 100*0.48 *0.16", y:"60*0.24 +60/5*8 *0.10 *0.16"},
{action:"line", x:"100*0.15 + 100*0.46 *0.16", y:"60*0.24 +60/5*8 *0.16 *0.16"},
{action:"line", x:"100*0.15 + 100*0.37 *0.16", y:"60*0.24 +60/5*8 *0.16 *0.16"},
{action:"line", x:"100*0.15 + 100*0.33 *0.16", y:"60*0.24 +60/5*8 *0.25 *0.16"},
{action:"line", x:"100*0.15 + 100*0.38 *0.16", y:"60*0.24 +60/5*8 *0.31 *0.16"},
{action:"line", x:"100*0.15 + 100*0.36 *0.16", y:"60*0.24 +60/5*8 *0.37 *0.16"},
{action:"line", x:"100*0.15 + 100*0.29 *0.16", y:"60*0.24 +60/5*8 *0.39 *0.16"},
{action:"line", x:"100*0.15 + 100*0.25 *0.16", y:"60*0.24 +60/5*8 *0.35 *0.16"},
{action:"line", x:"100*0.15 + 100*0.16 *0.16", y:"60*0.24 +60/5*8 *0.37 *0.16"},
{action:"line", x:"100*0.15 + 100*0.16 *0.16", y:"60*0.24 +60/5*8 *0.46 *0.16"},
{action:"line", x:"100*0.15 + 100*0.10 *0.16", y:"60*0.24 +60/5*8 *0.48 *0.16"},
{action:"line", x:"100*0.15 + 100*0.04 *0.16", y:"60*0.24 +60/5*8 *0.46 *0.16"},
{action:"line", x:"100*0.15 + 100*0.04 *0.16", y:"60*0.24 +60/5*8 *0.37 *0.16"},
{action:"line", x:"100*0.15 -100*0.04 *0.16", y:"60*0.24 +60/5*8 *0.33 *0.16"},
{action:"line", x:"100*0.15 -100*0.12 *0.16", y:"60*0.24 +60/5*8 *0.38 *0.16"},
{action:"line", x:"100*0.15 -100*0.18 *0.16", y:"60*0.24 +60/5*8 *0.37 *0.16"},
{action:"line", x:"100*0.15 -100*0.21 *0.16", y:"60*0.24 +60/5*8 *0.33 *0.16"},
{action:"line", x:"100*0.15 -100*0.14 *0.16", y:"60*0.24 +60/5*8 *0.25 *0.16"},
{action:"line", x:"100*0.15 -100*0.16 *0.16", y:"60*0.24 +60/5*8 *0.16 *0.16"},
{action:"line", x:"100*0.15 -100*0.26 *0.16", y:"60*0.24 +60/5*8 *0.16 *0.16"},
{action:"close"},
{action:"move", x:"100*0.15 -100*0.01 *0.16", y:"60*0.24 +60/5*8 *0.01 *0.16"},
{action:"line", x:"100*0.15 + 100*0.01 *0.16", y:"60*0.24 - 60*0.01 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.04 *0.16", y:"60*0.24 + 60*0.01 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.08 *0.16", y:"60*0.24 + 60*0.01 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.08 *0.16", y:"60*0.24 - 60*0.03 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.12 *0.16", y:"60*0.24 - 60*0.03 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.12 *0.16", y:"60*0.24 - 60*0.0 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.15 *0.16", y:"60*0.24 + 60*0.02 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.18 *0.16", y:"60*0.24 -60*0.01 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.22 *0.16", y:"60*0.24 + 60*0.01 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.18 *0.16", y:"60*0.24 + 60*0.04 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.20 *0.16", y:"60*0.24 + 60*0.08 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.25 *0.16", y:"60*0.24 + 60*0.08 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.25 *0.16", y:"60*0.24 + 60*0.12 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.20 *0.16", y:"60*0.24 + 60*0.12 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.18 *0.16", y:"60*0.24 + 60*0.16 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.21 *0.16", y:"60*0.24 + 60*0.19 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.18 *0.16", y:"60*0.24 + 60*0.22 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.15 *0.16", y:"60*0.24 + 60*0.19 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.12 *0.16", y:"60*0.24 + 60*0.21 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.12 *0.16", y:"60*0.24 + 60*0.25 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.08 *0.16", y:"60*0.24 + 60*0.26 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.08 *0.16", y:"60*0.24 + 60*0.21 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.05 *0.16", y:"60*0.24 + 60*0.18 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.01 *0.16", y:"60*0.24 + 60*0.22 /5*8 *0.16"},
{action:"line", x:"100*0.15 - 100*0.02 *0.16", y:"60*0.24 + 60*0.19 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.0 *0.16", y:"60*0.24 + 60*0.16 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.0 *0.16", y:"60*0.24 + 60*0.12 /5*8 *0.16"},
{action:"line", x:"100*0.15 -100*0.04 *0.16", y:"60*0.24 + 60*0.12 /5*8 *0.16"},
{action:"line", x:"100*0.15 -100*0.04 *0.16", y:"60*0.24 + 60*0.08 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0 *0.16", y:"60*0.24 + 60*0.08 /5*8 *0.16"},
{action:"line", x:"100*0.15 + 100*0.01 *0.16", y:"60*0.24 + 60*0.05 /5*8 *0.16"},
{action:"line", x:"100*0.15 -100*0.01 *0.16", y:"60*0.24 + 60*0.01 /5*8 *0.16"},
{action:"close"}
]);
Schema.addGlobalCommand("method_business_rule", [
{action:"move", x:"100*0.15- 100*0.08", y:"60*0.24- 60*0.1"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24- 60*0.1"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 + 60*0.1"},
{action:"line", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.1"},
{action:"close"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 - 60*0.05"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 - 60*0.05"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.0"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 + 60*0.0"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.05"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 + 60*0.05"},
{action:"move", x:"100*0.15 - 100*0.04", y:"60*0.24 - 60*0.1"},
{action:"line", x:"100*0.15 - 100*0.04", y:"60*0.24 + 60*0.1"}
]);
Schema.addGlobalCommand("method_script_task", [
{action:"move", x:"100*0.15- 100*0.05", y:"60*0.24- 60*0.1"},
{action:"line", x:"100*0.15 + 100*0.05", y:"60*0.24 - 60*0.1"},
{action:"curve", x1:"100*0.15 + 100*0.02", y1:"60*0.24 - 60*0.1", x2:"100*0.15 + 100*0.02", y2:"60*0.24", x:"100*0.15 + 100*0.04", y:"60*0.24"},
{action:"curve", x1:"100*0.15 + 100*0.06", y1:"60*0.24", x2:"100*0.15 + 100*0.06", y2:"60*0.24 + 60*0.1", x:"100*0.15 + 100*0.03", y:"60*0.24 + 60*0.1"},
{action:"line", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.1"},
{action:"curve", x1:"100*0.15 - 100*0.05", y1:"60*0.24 + 60*0.1", x2:"100*0.15 - 100*0.05", y2:"60*0.24", x:"100*0.15 - 100*0.07", y:"60*0.24"},
{action:"curve", x1:"100*0.15 - 100*0.09", y1:"60*0.24", x2:"100*0.15 - 100*0.09", y2:"60*0.24 - 60*0.1", x:"100*0.15 - 100*0.05", y:"60*0.24 - 60*0.1"},
{action:"close"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 - 60*0.05"},
{action:"line", x:"100*0.15 + 100*0.025", y:"60*0.24 - 60*0.05"},
{action:"move", x:"100*0.15 - 100*0.07", y:"60*0.24 - 0"},
{action:"line", x:"100*0.15 + 100*0.04", y:"60*0.24 - 0"},
{action:"move", x:"100*0.15 - 100*0.055", y:"60*0.24 + 60*0.06"},
{action:"line", x:"100*0.15 + 100*0.05", y:"60*0.24 + 60*0.06"}
]);
/***胶囊型Terminator*/Schema.addShape({name:"terminator", title:"开始/结束", text:"开始/结束", category:"process_flowchart", props:{w:150, h:66},lineStyle:{lineColor:"137,188,255"}, path:[
{actions:[
{action:"move", x:"Math.min(w,h)/3", y:"0"},
{action:"line", x:"w-Math.min(w,h)/3", y:"0"},
{action:"curve", x1:"w+Math.min(w,h)/3/3", y1:"0", x2:"w+Math.min(w,h)/3/3", y2:"h", x:"w-Math.min(w,h)/3", y:"h"},
{action:"line", x:"Math.min(w,h)/3", y:"h"},
{action:"curve", x1:"-Math.min(w,h)/3/3", y1:"h", x2:"-Math.min(w,h)/3/3", y2:"0", x:"Math.min(w,h)/3", y:"0"},
{action:"close"}
]}
]});
/***Method*/Schema.addShape({name:"method_approval_node", title:"线上审批", text:"线上审批",groupName:"features", category:"process_flowchart", props:{w:150, h:66}, lineStyle:{lineWidth:1, lineColor:"137,188,255"}, fillStyle:{type:"gradient", gradientType:"linear", beginColor:"245,250,255", endColor:"232,242,255", angle:Math.PI * 0.5}, path:[
{actions:[
{action:"move", x:"w*0", y:"5"},
{action:"quadraticCurve", x1:"0", y1:"0", x:"5", y:"0"},
{action:"line", x:"w-5", y:"0"},
{action:"quadraticCurve", x1:"w", y1:"0", x:"w", y:"5"},
{action:"line", x:"w", y:"h-5"},
{action:"quadraticCurve", x1:"w", y1:"h", x:"w-5", y:"h"},
{action:"line", x:"5", y:"h"},
{action:"quadraticCurve", x1:"0", y1:"h", x:"0", y:"h-5"},
{action:"line", x:"0", y:"5"},
{action:"close"}
]},
{lineStyle:{lineStyle:"solid"}, actions:{ref:"roundRectangle"}},
{lineStyle:{lineWidth:1, lineColor:"137,188,255", lineStyle:"solid"}, fillStyle:{type:"solid", color:"255,255,255"}, actions:{ref:"method_script_task"}},
{lineStyle:{lineWidth:0}, fillStyle:{type:"none"}, actions:{ref:"roundRectangle"}}
]});
Schema.addGlobalCommand("business_rule", [
{action:"move", x:"100*0.15- 100*0.08", y:"60*0.24- 60*0.1"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24- 60*0.1"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 + 60*0.1"},
{action:"line", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.1"},
{action:"close"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 - 60*0.05"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 - 60*0.05"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.0"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 + 60*0.0"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.05"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 + 60*0.05"},
{action:"move", x:"100*0.15 - 100*0.04", y:"60*0.24 - 60*0.1"},
{action:"line", x:"100*0.15 - 100*0.04", y:"60*0.24 + 60*0.1"}
]);
Schema.addShape({name:"method_service_node", title:"线下审批", text:"线下审批",groupName:"features", category:"process_flowchart", props:{w:150, h:66}, lineStyle:{lineWidth:1, lineColor:"137,188,255"}, fillStyle:{type:"gradient", gradientType:"linear", beginColor:"245,250,255", endColor:"232,242,255", angle:Math.PI * 0.5}, path:[
{actions:[
{action:"move", x:"w*0", y:"5"},
{action:"quadraticCurve", x1:"0", y1:"0", x:"5", y:"0"},
{action:"line", x:"w-5", y:"0"},
{action:"quadraticCurve", x1:"w", y1:"0", x:"w", y:"5"},
{action:"line", x:"w", y:"h-5"},
{action:"quadraticCurve", x1:"w", y1:"h", x:"w-5", y:"h"},
{action:"line", x:"5", y:"h"},
{action:"quadraticCurve", x1:"0", y1:"h", x:"0", y:"h-5"},
{action:"line", x:"0", y:"5"},
{action:"close"}
]},
{lineStyle:{lineStyle:"solid"}, actions:{ref:"roundRectangle"}},
{lineStyle:{lineWidth:1, lineColor:"137,188,255", lineStyle:"solid"}, fillStyle:{type:"solid"}, actions:{ref:"business_rule"}},
{lineStyle:{lineWidth:0}, fillStyle:{type:"none"}, actions:{ref:"roundRectangle"}}
]});
/***Method*/Schema.addShape({name:"method_approval_node3", title:"系统任务", text:"系统任务",groupName:"features3", category:"process_flowchart", props:{w:150, h:66}, lineStyle:{lineWidth:1, lineColor:"137,188,255"}, fillStyle:{type:"gradient", gradientType:"linear", beginColor:"245,250,255", endColor:"232,242,255", angle:Math.PI * 0.5}, path:[
{actions:[
{action:"move", x:"w*0", y:"5"},
{action:"quadraticCurve", x1:"0", y1:"0", x:"5", y:"0"},
{action:"line", x:"w-5", y:"0"},
{action:"quadraticCurve", x1:"w", y1:"0", x:"w", y:"5"},
{action:"line", x:"w", y:"h-5"},
{action:"quadraticCurve", x1:"w", y1:"h", x:"w-5", y:"h"},
{action:"line", x:"5", y:"h"},
{action:"quadraticCurve", x1:"0", y1:"h", x:"0", y:"h-5"},
{action:"line", x:"0", y:"5"},
{action:"close"}
]},
{lineStyle:{lineStyle:"solid"}, actions:{ref:"roundRectangle"}},
{lineStyle:{lineWidth:1, lineColor:"137,188,255", lineStyle:"solid"}, fillStyle:{type:"solid", color:"255,255,255"}, actions:{ref:"method_service_task"}},
{lineStyle:{lineWidth:0}, fillStyle:{type:"none"}, actions:{ref:"roundRectangle"}}
]});
Schema.addGlobalCommand("business_rule", [
{action:"move", x:"100*0.15- 100*0.08", y:"60*0.24- 60*0.1"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24- 60*0.1"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 + 60*0.1"},
{action:"line", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.1"},
{action:"close"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 - 60*0.05"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 - 60*0.05"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.0"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 + 60*0.0"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.05"},
{action:"line", x:"100*0.15 + 100*0.08", y:"60*0.24 + 60*0.05"},
{action:"move", x:"100*0.15 - 100*0.04", y:"60*0.24 - 60*0.1"},
{action:"line", x:"100*0.15 - 100*0.04", y:"60*0.24 + 60*0.1"}
]);
Schema.addShape({name:"method_service_node4", title:"人工任务", text:"人工任务",groupName:"features3", category:"process_flowchart", props:{w:150, h:66}, lineStyle:{lineWidth:1, lineColor:"137,188,255"}, fillStyle:{type:"gradient", gradientType:"linear", beginColor:"245,250,255", endColor:"232,242,255", angle:Math.PI * 0.5}, path:[
{actions:[
{action:"move", x:"w*0", y:"5"},
{action:"quadraticCurve", x1:"0", y1:"0", x:"5", y:"0"},
{action:"line", x:"w-5", y:"0"},
{action:"quadraticCurve", x1:"w", y1:"0", x:"w", y:"5"},
{action:"line", x:"w", y:"h-5"},
{action:"quadraticCurve", x1:"w", y1:"h", x:"w-5", y:"h"},
{action:"line", x:"5", y:"h"},
{action:"quadraticCurve", x1:"0", y1:"h", x:"0", y:"h-5"},
{action:"line", x:"0", y:"5"},
{action:"close"}
]},
{lineStyle:{lineStyle:"solid"}, actions:{ref:"roundRectangle"}},
{lineStyle:{lineWidth:1, lineColor:"137,188,255", lineStyle:"solid"}, fillStyle:{type:"solid"}, actions:{ref:"method_user_task"}},
{lineStyle:{lineWidth:0}, fillStyle:{type:"none"}, actions:{ref:"roundRectangle"}}
]});
/***Procedure*/Schema.addShape({name:"procedure", title:"流程接口", text:"流程接口", category:"process_flowchart", props:{w:150, h:66}, lineStyle:{lineWidth:1, lineColor:"197,197,197"}, fillStyle:{type:"gradient", gradientType:"linear", beginColor:"255,255,255", endColor:"237,237,237", angle:Math.PI * 0.5}, textBlock:{x:"0", y:"0", w:"w*0.8", h:"h*0.8"},textBlockFinal:{x:"w/2-60", y:"h", w:"120", h:"30"}, path:[
{actions:[
{action:"move", x:"0", y:"4*0.8"},
{action:"quadraticCurve", x1:"0", y1:"0", x:"4*0.8", y:"0"},
{action:"line", x:"(w-4)*0.8", y:"0"},
{action:"quadraticCurve", x1:"w*0.8", y1:"0", x:"w*0.8", y:"4*0.8"},
{action:"line", x:"w*0.8", y:"(h-4)*0.8"},
{action:"quadraticCurve", x1:"w*0.8", y1:"h*0.8", x:"(w-4)*0.8", y:"h*0.8"},
{action:"line", x:"4*0.8", y:"h*0.8"},
{action:"quadraticCurve", x1:"0", y1:"h*0.8", x:"0", y:"(h-4)*0.8"},
{action:"line", x:"0", y:"4*0.8"},
{action:"move", x:"w*0.8", y:"6"},
{action:"line", x:"w", y:"h*0.5"},
{action:"line", x:"(w-4)*0.8", y:"h"},
{action:"line", x:"w*3/8", y:"h"},
{action:"line", x:"w/4", y:"h*0.8"},
{action:"line", x:"(w-4)*0.8", y:"h*0.8"},
{action:"quadraticCurve", x1:"w*0.8", y1:"h*0.8", x:"w*0.8", y:"(h-4)*0.8"}
]}
]});
/***菱形Decision*/Schema.addShape({name:"decision", title:"判定", text:"判定", category:"process_flowchart", props:{w:150, h:66},fillStyle:{color:"175,210,255"}, path:[
{actions:[
{action:"move", x:"0", y:"h/2"},
{action:"line", x:"w/2", y:"0"},
{action:"line", x:"w", y:"h/2"},
{action:"line", x:"w/2", y:"h"},
{action:"line", x:"0", y:"h/2"},
{action:"close"}
]}
]});
/***下边波浪矩形Document*/Schema.addShape({name:"document", title:"文档", text:"文档", category:"process_flowchart", props:{w:150, h:66}, anchors:[
{x:"w*0.5", y:"0"},
{x:"w", y:"h*0.5"},
{x:"w*0.5", y:"h-Math.min(h/8,w/12)"},
{x:"0", y:"h*0.5"}
],fillStyle:{type: "gradient",gradientType: "linear",beginColor: "255,255,255",endColor: "237,237,237",angle: Math.PI*0.5}, textBlock:{x:"0", y:"0", w:"w", h:"h*0.9"},textBlockFinal:{x:"w/2-60", y:"h", w:"120", h:"30"}, path:[
{lineStyle:{lineWidth:1,lineColor:"197,197,197"},actions:[
{action:"move", x:"0", y:"h-Math.min(h/8,w/12)"},
{action:"line", x:"0", y:"0"},
{action:"line", x:"w", y:"0"},
{action:"line", x:"w", y:"h-Math.min(h/8,w/12)"},
{action:"quadraticCurve", x1:"w*0.75", y1:"h-3*Math.min(h/8,w/12)", x:"w*0.5", y:"h-Math.min(h/8,w/12)"},
{action:"quadraticCurve", x1:"w*0.25", y1:"h+Math.min(h/8,w/12)", x:"0", y:"h-Math.min(h/8,w/12)"},
{action:"close"}
]}
]});
/***平行四边形Data*/Schema.addShape({name:"data", title:"数据", text:"数据", category:"process_flowchart", props:{w:150, h:66}, anchors:[
{x:"w*0.5", y:"0"},
{x:"w-Math.min(h/3,w/3)/2", y:"h*0.5"},
{x:"w*0.5", y:"h"},
{x:"Math.min(h/3,w/3)/2", y:"h*0.5"}
], textBlock:{x:"w*0.15", y:"0", w:"w*0.7", h:"h"},textBlockFinal:{x:"w/2-60", y:"h", w:"150", h:"66"}, path:[
{actions:[
{action:"move", x:"Math.min(h/3,w/3)", y:"0"},
{action:"line", x:"w", y:"0"},
{action:"line", x:"w-Math.min(h/3,w/3)", y:"h"},
{action:"line", x:"0", y:"h"},
{action:"line", x:"Math.min(h/3,w/3)", y:"0"},
{action:"close"}
]}
]});
/***两条水平线Parallelmode*/Schema.addShape({name:"parallelMode", title:"并行模式", text:"并行模式", category:"process_flowchart", props:{w:150, h:66}, anchors:[
{x:"w*0.5", y:"0"},
{x:"w*0.5", y:"0"},
{x:"w*0.5", y:"h"},
{x:"w*0.5", y:"h"}
], path:[
{actions:[
{action:"move", x:"0", y:"0"},
{action:"line", x:"w", y:"0"},
{action:"line", x:"0", y:"0"},
{action:"move", x:"0", y:"h"},
{action:"line", x:"w", y:"h"},
{action:"line", x:"0", y:"h"},
{action:"close"}
]},
{fillStyle:{type:"none"}, lineStyle:{lineWidth:0}, actions:[
{action:"move", x:"0", y:"0"},
{action:"line", x:"w", y:"0"},
{action:"line", x:"w", y:"h"},
{action:"line", x:"0", y:"h"},
{action:"line", x:"0", y:"0"},
{action:"close"}
]}
]});
/***圆形On-pagereference*/Schema.addShape({name:"onPageReference", title:"页面内引用", text:"页面内引用", category:"process_flowchart", props:{w:66, h:66}, fontStyle:{size:8}, path:[
{actions:{ref:"round"}}
]});
/***特殊线矩形Annotation*/Schema.addShape({name:"annotation", title:"注释", text:"注释", category:"process_flowchart", props:{w:150, h:66}, anchors:[
{x:"0", y:"h*0.5"},
{x:"0", y:"h*0.5"},
{x:"0", y:"h*0.5"},
{x:"0", y:"h*0.5"}
], path:[
{fillStyle:{type:"none"}, lineStyle:{lineWidth:0}, actions:[
{action:"move", x:"0", y:"0"},
{action:"line", x:"w", y:"0"},
{action:"line", x:"w", y:"h"},
{action:"line", x:"0", y:"h"},
{action:"line", x:"0", y:"0"},
{action:"close"}
]},
{fillStyle:{type:"none"}, actions:[
{action:"move", x:"w/6", y:"0"},
{action:"line", x:"0", y:"0"},
{action:"line", x:"0", y:"h"},
{action:"line", x:"w/6", y:"h"}
]},
{fillStyle:{type:"none"}, lineStyle:{lineWidth:0}, actions:[
{action:"move", x:"0", y:"0"},
{action:"line", x:"w", y:"0"},
{action:"line", x:"w", y:"h"},
{action:"line", x:"0", y:"h"},
{action:"close"}
]}
]});
/***组Group*/Schema.addShape({name:"group", title:"组", text:"组", category:"process_flowchart", attribute:{container:true,editable:true}, props:{w:150, h:66}, textBlock:{x:"10", y:"0", w:"w-20", h:"h"},textBlockFinal:{x:5, y:0, w:"w-10", h:"h"}, fontStyle:{textAlign:"top", vAlign:"left"}, path:[
{lineStyle:{lineWidth:2, lineStyle:"dashed"}, fillStyle:{type:"none"}, actions:{ref:"roundRectangle"}}
]});
Schema.addGlobalCommand("method_script_task", [
{action:"move", x:"100*0.15- 100*0.05", y:"60*0.24- 60*0.1"},
{action:"line", x:"100*0.15 + 100*0.05", y:"60*0.24 - 60*0.1"},
{action:"curve", x1:"100*0.15 + 100*0.02", y1:"60*0.24 - 60*0.1", x2:"100*0.15 + 100*0.02", y2:"60*0.24", x:"100*0.15 + 100*0.04", y:"60*0.24"},
{action:"curve", x1:"100*0.15 + 100*0.06", y1:"60*0.24", x2:"100*0.15 + 100*0.06", y2:"60*0.24 + 60*0.1", x:"100*0.15 + 100*0.03", y:"60*0.24 + 60*0.1"},
{action:"line", x:"100*0.15 - 100*0.08", y:"60*0.24 + 60*0.1"},
{action:"curve", x1:"100*0.15 - 100*0.05", y1:"60*0.24 + 60*0.1", x2:"100*0.15 - 100*0.05", y2:"60*0.24", x:"100*0.15 - 100*0.07", y:"60*0.24"},
{action:"curve", x1:"100*0.15 - 100*0.09", y1:"60*0.24", x2:"100*0.15 - 100*0.09", y2:"60*0.24 - 60*0.1", x:"100*0.15 - 100*0.05", y:"60*0.24 - 60*0.1"},
{action:"close"},
{action:"move", x:"100*0.15 - 100*0.08", y:"60*0.24 - 60*0.05"},
{action:"line", x:"100*0.15 + 100*0.025", y:"60*0.24 - 60*0.05"},
{action:"move", x:"100*0.15 - 100*0.07", y:"60*0.24 - 0"},
{action:"line", x:"100*0.15 + 100*0.04", y:"60*0.24 - 0"},
{action:"move", x:"100*0.15 - 100*0.055", y:"60*0.24 + 60*0.06"},
{action:"line", x:"100*0.15 + 100*0.05", y:"60*0.24 + 60*0.06"}
]);
/*泳池/泳道分组*/
Schema.addCategory({name:"lane", text:"泳池/泳道"});

View File

@ -247,7 +247,7 @@ public class POIUtil {
if (org.apache.poi.ss.usermodel.DateUtil.isCellDateFormatted(cell)) {// 判断是否为日期类型
Date date = cell.getDateCellValue();
DateFormat formater = new SimpleDateFormat(
"yyyy-MM-dd HH:mm");
"yyyy-MM-dd");
cellValue = formater.format(date);
} else {
cellValue = cell.getNumericCellValue() + "";

View File

@ -1,11 +1,6 @@
package com.actionsoft.apps.coe.pal.batch.web.create.process.valid.impl.type;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.*;
import com.actionsoft.apps.AppsConst;
import com.actionsoft.apps.coe.pal.batch.util.BatchUtil;
@ -78,81 +73,43 @@ public class ValidRelation implements ValidCell {
isOk = false;
msg = "单选属性不支持多个值";
} else {
for (String path : valueSet) {
String [] pathArr = path.split("/");
boolean flag = true;
List<String> tmpList = new ArrayList<String>();
for (int j = 0; j < pathArr.length; j++) {
if (UtilString.isEmpty(pathArr[j])) {
isOk = false;
msg = "路径[" + path + "]不存在";
flag = false;
break;
}
if (j == 0) {// 寻找流程大类是否存在
if (!pathArr[j].equals(I18nRes.findValue(CoEConstant.APP_ID, category))) {
isOk = false;
msg = "路径[" + path + "]不存在";
flag = false;
break;
}
tmpList.add(category);
} else {
// 获取子节点
List<String> tmpList2 = new ArrayList<String>();
for (String pid : tmpList) {
List<PALRepositoryModel> list = PALRepositoryCache.getAllSubModelsByPid(wsId, pid);
for (PALRepositoryModel model : list) {
if (model.isUse() && model.getName().equals(pathArr[j])) {
if (j == pathArr.length - 1) {
if ("default".equals(model.getMethodId())) {
isOk = false;
msg = "路径[" + path + "]末级流程不允许是文件夹";
flag = false;
break;
} else if (!model.getMethodId().contains(method)) {
isOk = false;
msg = "路径[" + path + "]末级流程不符合属性范围要求";
} else {
tmpList2.add(model.getId());
}
} else {
tmpList2.add(model.getId());
}
}
}
if (!flag) {
break;
}
}
if (flag && tmpList2.size() == 0) {
isOk = false;
msg = "路径[" + path + "]不存在";
flag = false;
break;
}
tmpList = tmpList2;
Iterator<PALRepositoryModel> iterator = PALRepositoryCache.getByWsId(wsId);
Map<String, String> map = new HashMap<>();
while (iterator.hasNext()) {
PALRepositoryModel model = iterator.next();
if (model.isUse()) {
map.put(model.getId(), model.getName().trim());
}
}
for (String name : valueSet) {
List<String> ids = new ArrayList<>();
for (Map.Entry<String, String> entry : map.entrySet()) {
if (name.equals(entry.getValue())) {
ids.add(entry.getKey());
}
}
if (flag) {
if (tmpList.size() == 0) {
if (ids.size() == 0) {
isOk = false;
msg = "[" + name + "]不存在";
break;
} if (ids.size() > 1) {
isOk = false;
msg = "[" + name + "]出现多个匹配";
break;
} else {
PALRepositoryModel model = PALRepositoryCache.getCache().get(ids.get(0));
if ("default".equals(model.getMethodId())) {
isOk = false;
msg = "路径[" + path + "]不存在";
msg = "[" + name + "]不允许是文件夹";
break;
} else if (tmpList.size() > 1) {
} else if (!model.getMethodId().contains(method)) {
isOk = false;
msg = "路径[" + path + "]存在多个,无法匹配";
break;
} else if (tmpList.get(0).length() < 36) {
isOk = false;
msg = "路径[" + path + "]不存在";
msg = "[" + name + "]不符合属性范围要求";
break;
} else {
isOk = true;
repositoryIds.add(tmpList.get(0));
repositoryIds.add(model.getId());
}
} else {
break;
}
}
}
@ -169,7 +126,7 @@ public class ValidRelation implements ValidCell {
}
}
attr.put("relations", result);
} else {// 关联的是形状
} else if ("shape".equals(type)) {// 关联的是形状
Set<String> fileShapeIds = new HashSet<>();
String [] valueArr = value.split(",");
// 过滤掉空值
@ -183,108 +140,70 @@ public class ValidRelation implements ValidCell {
isOk = false;
msg = "单选属性不支持多个值";
} else {
for (String path : valueSet) {
String [] pathArr = path.split("/");
boolean flag = true;
List<String> tmpList = new ArrayList<String>();
for (int j = 0; j < pathArr.length; j++) {
if (UtilString.isEmpty(pathArr[j])) {
isOk = false;
msg = "路径[" + path + "]不存在";
flag = false;
break;
}
if (j == 0) {// 寻找流程大类是否存在
if (!pathArr[j].equals(I18nRes.findValue(CoEConstant.APP_ID, category))) {
isOk = false;
msg = "大类路径[" + path + "]不存在";
flag = false;
break;
}
tmpList.add(category);
} else {
// 获取子节点
List<String> tmpList2 = new ArrayList<String>();
for (String pid : tmpList) {
List<PALRepositoryModel> list = PALRepositoryCache.getAllSubModelsByPid(wsId, pid);
String repositoryName = null;
String shapeName = null;
if (j == pathArr.length - 1) {
// 拆分名称为名称+节点名称
String [] namePath = pathArr[j].split(":");
if (namePath.length == 2 && !UtilString.isEmpty(namePath[0]) && !UtilString.isEmpty(namePath[1])) {
repositoryName = namePath[0];
shapeName = namePath[1];
} else {
isOk = false;
msg = "路径[" + path + "]末级流程与节点信息错误";
flag = false;
break;
}
}
if (j == pathArr.length - 1) {// 最后一个层级
for (PALRepositoryModel model : list) {
if (model.isUse() && model.getName().equals(repositoryName)) {
if ("default".equals(model.getMethodId())) {
isOk = false;
msg = "路径[" + path + "]末级流程不允许是文件夹";
flag = false;
break;
} else if (!model.getMethodId().contains(method)) {
isOk = false;
msg = "路径[" + path + "]末级流程不符合属性范围要求";
} else {
// 获取节点数据
String definition = PALRepositoryQueryAPIManager.getInstance().getProcessDefinition(null, model.getId());
List<JSONObject> shapes = ShapeUtil.getShapeJsonToJsonObject(definition);
for (JSONObject shape : shapes) {
if (shapeName.equals(shape.getString("text"))) {
// 获取匹配的节点数据
tmpList2.add(model.getId() + ":" + shape.getString("id") + ":" + shape.getString("text"));
}
}
}
}
}
} else {
for (PALRepositoryModel model : list) {
if (model.isUse() && model.getName().equals(pathArr[j])) {
tmpList2.add(model.getId());
}
}
}
if (!flag) {
break;
}
}
if (flag && tmpList2.size() == 0) {
isOk = false;
msg = "路径[" + path + "]不存在";
flag = false;
break;
}
tmpList = tmpList2;
Iterator<PALRepositoryModel> iterator = PALRepositoryCache.getByWsId(wsId);
Map<String, String> map = new HashMap<>();
while (iterator.hasNext()) {
PALRepositoryModel model = iterator.next();
if (model.isUse()) {
map.put(model.getId(), model.getName().trim());
}
}
for (String nameArr : valueSet) {
// 拆分名称为名称+节点名称
String name = null;
String shapeName = null;
String [] namePath = nameArr.split(":");
if (namePath.length == 2 && !UtilString.isEmpty(namePath[0]) && !UtilString.isEmpty(namePath[1])) {
name = namePath[0];
shapeName = namePath[1];
} else {
isOk = false;
msg = "[" + nameArr + "]末级模型与节点信息错误";
break;
}
List<String> ids = new ArrayList<>();
for (Map.Entry<String, String> entry : map.entrySet()) {
if (name.equals(entry.getValue())) {
ids.add(entry.getKey());
}
}
if (flag) {
if (tmpList.size() == 0) {
if (ids.size() == 0) {
isOk = false;
msg = "[" + name + "]不存在";
break;
} if (ids.size() > 1) {
isOk = false;
msg = "[" + name + "]出现多个匹配";
break;
} else {
PALRepositoryModel model = PALRepositoryCache.getCache().get(ids.get(0));
if ("default".equals(model.getMethodId())) {
isOk = false;
msg = "路径[" + path + "]不存在";
msg = "[" + name + "]不允许是文件夹";
break;
} else if (tmpList.size() > 1) {
} else if (!model.getMethodId().contains(method)) {
isOk = false;
msg = "路径[" + path + "]存在多个,无法匹配";
break;
} else if (tmpList.get(0).length() < 36) {
isOk = false;
msg = "路径[" + path + "]不存在";
msg = "[" + name + "]不符合属性范围要求";
break;
} else {
String result = null;
// 获取节点数据
String definition = PALRepositoryQueryAPIManager.getInstance().getProcessDefinition(null, model.getId());
List<JSONObject> shapes = ShapeUtil.getShapeJsonToJsonObject(definition);
for (JSONObject shape : shapes) {
if (shapeName.equals(shape.getString("text"))) {
// 获取匹配的节点数据
result = model.getId() + ":" + shape.getString("id") + ":" + shape.getString("text");
}
}
if (result == null) {
isOk = false;
msg = "[" + shapeName + "]不存在";
break;
}
isOk = true;
fileShapeIds.add(tmpList.get(0));
fileShapeIds.add(result);
}
} else {
break;
}
}
}
@ -300,6 +219,8 @@ public class ValidRelation implements ValidCell {
shapes.add(object);
}
attr.put("relations", shapes);
} else {
msg = "不支持形状和模型同时选择的类型";
}
JSONObject result = new JSONObject();
result.put("name", title);

View File

@ -1,14 +1,11 @@
package com.actionsoft.apps.coe.pal.batch.web.create.shape.valid.impl.type;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.*;
import com.actionsoft.apps.AppsConst;
import com.actionsoft.apps.coe.pal.batch.util.BatchUtil;
import com.actionsoft.apps.coe.pal.batch.web.create.process.ProcessConst;
import com.actionsoft.apps.coe.pal.batch.web.create.process.valid.ValidCell;
import com.actionsoft.apps.coe.pal.batch.web.create.shape.ShapeConst;
import com.actionsoft.apps.coe.pal.batch.web.create.shape.valid.ValidShapeCell;
import com.actionsoft.apps.coe.pal.constant.CoEConstant;
@ -22,9 +19,13 @@ import com.actionsoft.i18n.I18nRes;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
/**
* 校验关联PAL模型和形状类型
* @author sunlh
*
*/
public class ValidShapeRelation implements ValidShapeCell {
private String getCategoryId(String categoryName) {
Map<String, String> result = new HashMap<>();
String [] methodArray = PALMethodCache.getPALMethodList(true).toArray(new String[0]);
@ -36,7 +37,7 @@ public class ValidShapeRelation implements ValidShapeCell {
}
return null;
}
@Override
public Object validTableCell(Object param) {
JSONObject paramObj = JSONObject.parseObject(param.toString());
@ -74,81 +75,43 @@ public class ValidShapeRelation implements ValidShapeCell {
isOk = false;
msg = "单选属性不支持多个值";
} else {
for (String path : valueSet) {
String [] pathArr = path.split("/");
boolean flag = true;
List<String> tmpList = new ArrayList<String>();
for (int j = 0; j < pathArr.length; j++) {
if (UtilString.isEmpty(pathArr[j])) {
isOk = false;
msg = "路径[" + path + "]不存在";
flag = false;
break;
}
if (j == 0) {// 寻找流程大类是否存在
if (!pathArr[j].equals(I18nRes.findValue(CoEConstant.APP_ID, category))) {
isOk = false;
msg = "路径[" + path + "]不存在";
flag = false;
break;
}
tmpList.add(category);
} else {
// 获取子节点
List<String> tmpList2 = new ArrayList<String>();
for (String pid : tmpList) {
List<PALRepositoryModel> list = PALRepositoryCache.getAllSubModelsByPid(wsId, pid);
for (PALRepositoryModel model : list) {
if (model.isUse() && model.getName().equals(pathArr[j])) {
if (j == pathArr.length - 1) {
if ("default".equals(model.getMethodId())) {
isOk = false;
msg = "路径[" + path + "]末级流程不允许是文件夹";
flag = false;
break;
} else if (!model.getMethodId().contains(method)) {
isOk = false;
msg = "路径[" + path + "]末级流程不符合属性范围要求";
} else {
tmpList2.add(model.getId());
}
} else {
tmpList2.add(model.getId());
}
}
}
if (!flag) {
break;
}
}
if (flag && tmpList2.size() == 0) {
isOk = false;
msg = "路径[" + path + "]不存在";
flag = false;
break;
}
tmpList = tmpList2;
Iterator<PALRepositoryModel> iterator = PALRepositoryCache.getByWsId(wsId);
Map<String, String> map = new HashMap<>();
while (iterator.hasNext()) {
PALRepositoryModel model = iterator.next();
if (model.isUse()) {
map.put(model.getId(), model.getName().trim());
}
}
for (String name : valueSet) {
List<String> ids = new ArrayList<>();
for (Map.Entry<String, String> entry : map.entrySet()) {
if (name.equals(entry.getValue())) {
ids.add(entry.getKey());
}
}
if (flag) {
if (tmpList.size() == 0) {
if (ids.size() == 0) {
isOk = false;
msg = "[" + name + "]不存在";
break;
} if (ids.size() > 1) {
isOk = false;
msg = "[" + name + "]出现多个匹配";
break;
} else {
PALRepositoryModel model = PALRepositoryCache.getCache().get(ids.get(0));
if ("default".equals(model.getMethodId())) {
isOk = false;
msg = "路径[" + path + "]不存在";
msg = "[" + name + "]不允许是文件夹";
break;
} else if (tmpList.size() > 1) {
} else if (!model.getMethodId().contains(method)) {
isOk = false;
msg = "路径[" + path + "]存在多个,无法匹配";
break;
} else if (tmpList.get(0).length() < 36) {
isOk = false;
msg = "路径[" + path + "]不存在";
msg = "[" + name + "]不符合属性范围要求";
break;
} else {
isOk = true;
repositoryIds.add(tmpList.get(0));
repositoryIds.add(model.getId());
}
} else {
break;
}
}
}
@ -165,7 +128,7 @@ public class ValidShapeRelation implements ValidShapeCell {
}
}
attr.put("relations", result);
} else {// 关联的是形状
} else if ("shape".equals(type)) {// 关联的是形状
Set<String> fileShapeIds = new HashSet<>();
String [] valueArr = value.split(",");
// 过滤掉空值
@ -179,113 +142,75 @@ public class ValidShapeRelation implements ValidShapeCell {
isOk = false;
msg = "单选属性不支持多个值";
} else {
for (String path : valueSet) {
String [] pathArr = path.split("/");
boolean flag = true;
List<String> tmpList = new ArrayList<String>();
for (int j = 0; j < pathArr.length; j++) {
if (UtilString.isEmpty(pathArr[j])) {
isOk = false;
msg = "路径[" + path + "]不存在";
flag = false;
break;
}
if (j == 0) {// 寻找流程大类是否存在
if (!pathArr[j].equals(I18nRes.findValue(CoEConstant.APP_ID, category))) {
isOk = false;
msg = "大类路径[" + path + "]不存在";
flag = false;
break;
}
tmpList.add(category);
} else {
// 获取子节点
List<String> tmpList2 = new ArrayList<String>();
for (String pid : tmpList) {
List<PALRepositoryModel> list = PALRepositoryCache.getAllSubModelsByPid(wsId, pid);
String repositoryName = null;
String shapeName = null;
if (j == pathArr.length - 1) {
// 拆分名称为名称+节点名称
String [] namePath = pathArr[j].split(":");
if (namePath.length == 2 && !UtilString.isEmpty(namePath[0]) && !UtilString.isEmpty(namePath[1])) {
repositoryName = namePath[0];
shapeName = namePath[1];
} else {
isOk = false;
msg = "路径[" + path + "]末级流程与节点信息错误";
flag = false;
break;
}
}
if (j == pathArr.length - 1) {// 最后一个层级
for (PALRepositoryModel model : list) {
if (model.isUse() && model.getName().equals(repositoryName)) {
if ("default".equals(model.getMethodId())) {
isOk = false;
msg = "路径[" + path + "]末级流程不允许是文件夹";
flag = false;
break;
} else if (!model.getMethodId().contains(method)) {
isOk = false;
msg = "路径[" + path + "]末级流程不符合属性范围要求";
} else {
// 获取节点数据
String definition = PALRepositoryQueryAPIManager.getInstance().getProcessDefinition(null, model.getId());
List<JSONObject> shapes = ShapeUtil.getShapeJsonToJsonObject(definition);
for (JSONObject shape : shapes) {
if (shapeName.equals(shape.getString("text"))) {
// 获取匹配的节点数据
tmpList2.add(model.getId() + ":" + shape.getString("id") + ":" + shape.getString("text"));
}
}
}
}
}
} else {
for (PALRepositoryModel model : list) {
if (model.isUse() && model.getName().equals(pathArr[j])) {
tmpList2.add(model.getId());
}
}
}
if (!flag) {
break;
}
}
if (flag && tmpList2.size() == 0) {
isOk = false;
msg = "路径[" + path + "]不存在";
flag = false;
break;
}
tmpList = tmpList2;
Iterator<PALRepositoryModel> iterator = PALRepositoryCache.getByWsId(wsId);
Map<String, String> map = new HashMap<>();
while (iterator.hasNext()) {
PALRepositoryModel model = iterator.next();
if (model.isUse()) {
map.put(model.getId(), model.getName().trim());
}
}
for (String nameArr : valueSet) {
// 拆分名称为名称+节点名称
String name = null;
String shapeName = null;
String [] namePath = nameArr.split(":");
if (namePath.length == 2 && !UtilString.isEmpty(namePath[0]) && !UtilString.isEmpty(namePath[1])) {
name = namePath[0];
shapeName = namePath[1];
} else {
isOk = false;
msg = "[" + nameArr + "]末级模型与节点信息错误";
break;
}
List<String> ids = new ArrayList<>();
for (Map.Entry<String, String> entry : map.entrySet()) {
if (name.equals(entry.getValue())) {
ids.add(entry.getKey());
}
}
if (flag) {
if (tmpList.size() == 0) {
if (ids.size() == 0) {
isOk = false;
msg = "[" + name + "]不存在";
break;
} if (ids.size() > 1) {
isOk = false;
msg = "[" + name + "]出现多个匹配";
break;
} else {
PALRepositoryModel model = PALRepositoryCache.getCache().get(ids.get(0));
if ("default".equals(model.getMethodId())) {
isOk = false;
msg = "路径[" + path + "]不存在";
msg = "[" + name + "]不允许是文件夹";
break;
} else if (tmpList.size() > 1) {
} else if (!model.getMethodId().contains(method)) {
isOk = false;
msg = "路径[" + path + "]存在多个,无法匹配";
break;
} else if (tmpList.get(0).length() < 36) {
isOk = false;
msg = "路径[" + path + "]不存在";
msg = "[" + name + "]不符合属性范围要求";
break;
} else {
String result = null;
// 获取节点数据
String definition = PALRepositoryQueryAPIManager.getInstance().getProcessDefinition(null, model.getId());
List<JSONObject> shapes = ShapeUtil.getShapeJsonToJsonObject(definition);
for (JSONObject shape : shapes) {
if (shapeName.equals(shape.getString("text"))) {
// 获取匹配的节点数据
result = model.getId() + ":" + shape.getString("id") + ":" + shape.getString("text");
}
}
if (result == null) {
isOk = false;
msg = "[" + shapeName + "]不存在";
break;
}
isOk = true;
fileShapeIds.add(tmpList.get(0));
fileShapeIds.add(result);
}
} else {
break;
}
}
}
JSONArray shapes = new JSONArray();
for (String fileShape : fileShapeIds) {
String [] fileArr = fileShape.split(":");
@ -296,6 +221,8 @@ public class ValidShapeRelation implements ValidShapeCell {
shapes.add(object);
}
attr.put("relations", shapes);
} else {
msg = "不支持形状和模型同时选择的类型";
}
JSONObject result = new JSONObject();
result.put("name", title);

View File

@ -11,4 +11,4 @@
var shapeFileValue = '<#shapeFileValue>';
var palId = '<#palId>';// 流程id不为空则为设计器内单只流程形状属性替换
var wHref = "./w";
var jdHref = "./jd";</script><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/chunk-062a9284.fd6e87ab.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/chunk-d674f310.832a3f23.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/chunk-e2e1fe08.2aef31d9.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-062a9284.f8611bdb.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-2d224ef1.72ef0fa8.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-3a9b7577.a1c1d3f9.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-d674f310.89c934c7.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-e2e1fe08.cb098f41.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/app.f3fd84ae.css rel=preload as=style><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/chunk-vendors.53f73f21.css rel=preload as=style><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/app.ca59be3f.js rel=preload as=script><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-vendors.e5375faa.js rel=preload as=script><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/chunk-vendors.53f73f21.css rel=stylesheet><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/app.f3fd84ae.css rel=stylesheet></head><body style=margin:0;><div id=app></div><script src=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-vendors.e5375faa.js></script><script src=../apps/com.actionsoft.apps.coe.pal.batch/main/js/app.ca59be3f.js></script></body></html>
var jdHref = "./jd";</script><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/chunk-71ad93f4.88655c5d.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/chunk-d674f310.832a3f23.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/chunk-e2e1fe08.2aef31d9.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-2d224ef1.72ef0fa8.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-3a9b7577.a1c1d3f9.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-71ad93f4.7eee428d.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-d674f310.89c934c7.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-e2e1fe08.cb098f41.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/app.f3fd84ae.css rel=preload as=style><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/chunk-vendors.53f73f21.css rel=preload as=style><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/app.2ecbeb68.js rel=preload as=script><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-vendors.e5375faa.js rel=preload as=script><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/chunk-vendors.53f73f21.css rel=stylesheet><link href=../apps/com.actionsoft.apps.coe.pal.batch/main/css/app.f3fd84ae.css rel=stylesheet></head><body style=margin:0;><div id=app></div><script src=../apps/com.actionsoft.apps.coe.pal.batch/main/js/chunk-vendors.e5375faa.js></script><script src=../apps/com.actionsoft.apps.coe.pal.batch/main/js/app.2ecbeb68.js></script></body></html>

View File

@ -1 +1 @@
#mycode[data-v-64ad3307] .CodeMirror-lines{background-color:#2c2c2c;color:#58a0f0}#mycode[data-v-64ad3307] .CodeMirror{height:auto!important}#header[data-v-5277ba26] .el-step__title{font-size:14px}
#mycode[data-v-64ad3307] .CodeMirror-lines{background-color:#2c2c2c;color:#58a0f0}#mycode[data-v-64ad3307] .CodeMirror{height:auto!important}#header[data-v-ffb3d99a] .el-step__title{font-size:14px}

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><link rel=icon href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/favicon.ico><title>com.actionsoft.apps.coe.pal.cooperation</title><script src=../commons/awsui/js/icon.array.js></script><script>const settingParam = <#settingParam>;
const axiosBaseUrl = "./";
const production = true;</script><script>var mainPage = "<#mainPage>";
var isManage = <#isManage>;</script><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/css/chunk-1d20f052.edcf9729.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/css/chunk-1e6eef21.91078ea1.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/css/chunk-3dabd524.8c979cf0.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-1d20f052.952d95d4.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-1e6eef21.3c5f4488.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-2d224ef1.8759ad5d.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-3dabd524.52ca62e7.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-bf7921b8.4102364d.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/css/app.a647ef2c.css rel=preload as=style><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/app.3af5e4b2.js rel=preload as=script><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-vendors.c262f4c0.js rel=preload as=script><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/css/app.a647ef2c.css rel=stylesheet></head><body style=margin:0;><div id=app></div><script src=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-vendors.c262f4c0.js></script><script src=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/app.3af5e4b2.js></script></body></html>
var isManage = <#isManage>;</script><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/css/chunk-1e4c4730.ba9d65b0.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/css/chunk-36a984ec.edcf9729.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/css/chunk-3fc8dcbc.8c979cf0.css rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-1e4c4730.521a4c62.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-2d224ef1.8731a978.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-36a984ec.81b74d6b.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-3a9b7577.811ef878.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-3fc8dcbc.a04e783e.js rel=prefetch><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/css/app.57e8682f.css rel=preload as=style><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/app.693035c0.js rel=preload as=script><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-vendors.8ccaacad.js rel=preload as=script><link href=../apps/com.actionsoft.apps.coe.pal.cooperation/main/css/app.57e8682f.css rel=stylesheet></head><body style=margin:0;><div id=app></div><script src=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/chunk-vendors.8ccaacad.js></script><script src=../apps/com.actionsoft.apps.coe.pal.cooperation/main/js/app.693035c0.js></script></body></html>

View File

@ -1 +1 @@
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d224ef1"],{e1f5:function(e,s,t){"use strict";t.r(s);var n=function(){var e=this,s=e._self._c;return s("div",{staticClass:"devGetSession"},[e._v(" 正在获取session ")])},a=[],d=t("a18c"),i=t("0f08"),o=t("4360");i["a"].post({url:"jd",data:{userid:devUserInfo.userid,pwd:devUserInfo.pwd,lang:"cn",cmd:"com.actionsoft.apps.getsession.get",deviceType:"pc"}}).then((function(e){"error"==e.result?alert("获取session错误"+e.msg):(o["a"].commit("edit",{sessionId:e.data.sid}),d["a"].replace("/"+mainPage))}));var r={data(){return{dwList:[]}},methods:{},mounted(){}},c=r,u=t("0b56"),l=Object(u["a"])(c,n,a,!1,null,null,null);s["default"]=l.exports}}]);
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d224ef1"],{e1f5:function(e,s,t){"use strict";t.r(s);var n=function(){var e=this,s=e._self._c;return s("div",{staticClass:"devGetSession"},[e._v(" 正在获取session ")])},a=[],d=t("a18c"),i=t("0f08"),o=t("4360");i["a"].post({url:"jd",data:{userid:devUserInfo.userid,pwd:devUserInfo.pwd,lang:"cn",cmd:"com.actionsoft.apps.getsession.get",deviceType:"pc"}}).then((function(e){"error"==e.result?alert("获取session错误"+e.msg):(o["a"].commit("edit",{sessionId:e.data.sid}),d["a"].replace("/"+mainPage))}));var r={data(){return{dwList:[]}},methods:{},mounted(){}},c=r,u=t("2877"),l=Object(u["a"])(c,n,a,!1,null,null,null);s["default"]=l.exports}}]);

View File

@ -121,7 +121,7 @@ public class DataMigrationController {
public void run() {
String[] fileNameArr = fileName.split(",");
for(String name : fileNameArr){
new ReadTable().getTableInfo(me,wsId,groupValue,fileValue,fileName);
new ReadTable().formDataFile_import(me,wsId,groupValue,fileValue,name);
}
}
});

View File

@ -39,11 +39,13 @@ import com.actionsoft.apps.coe.pal.pal.repository.upfile.model.UpfileModel;
import com.actionsoft.apps.coe.pal.pal.repository.web.CoeProcessLevelWeb;
import com.actionsoft.apps.resource.plugin.profile.DCPluginProfile;
import com.actionsoft.bpms.bo.engine.BO;
import com.actionsoft.bpms.commons.mvc.view.ResponseObject;
import com.actionsoft.bpms.server.UserContext;
import com.actionsoft.bpms.server.fs.DCContext;
import com.actionsoft.bpms.server.fs.dc.DCProfileManager;
import com.actionsoft.bpms.util.DBSql;
import com.actionsoft.bpms.util.UUIDGener;
import com.actionsoft.bpms.util.UtilString;
import com.actionsoft.sdk.local.SDK;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
@ -142,11 +144,93 @@ public class ReadTable {
}finally {
SDK.getBOAPI().createDataBO("BO_ACT_DATAMIGRATION_LOG_T", new BO().setAll(logMaps), userContext);
}
}
//导入表单附件
public void formDataFile_import(UserContext userContext, String wsId, String groupValue, String fileValue, String fileName) {
HashMap<String,Object> logMaps = new HashMap<String,Object>();
logMaps.put("FILENAME", fileName);
try {
String name = fileName.substring(0,fileName.lastIndexOf("."));
PALRepositoryModel palRepositoryModel = ReadWordUtil.getRepositoryByName(wsId, name);
if(null==palRepositoryModel) {
logMaps.put("UPFILESTATE", "文件没有匹配到表单模型!");
}else {
String shpId = "";
String id = palRepositoryModel.getId();
logMaps.put("PALID",id);
//查询对应绩效模型中数据模型进行填充数据
BaseModel defineModel = CoeDesignerAPIManager.getInstance().getDefinition(id, 0);
if(null==defineModel) {
shpId = createOneMap2(wsId, name, userContext);
if("".equals(shpId)) {
logMaps.put("UPFILESTATE", "表单图形创建失败!");
}
}else {
String define = defineModel.getDefinition();
JSONObject definition = JSONObject.parseObject(define);
JSONObject elements = definition.getJSONObject("elements");
for (String key : elements.keySet()) {
JSONObject shape1 = elements.getJSONObject(key);
if("form".equals(shape1.getString("name"))) {
shpId = key;
break;
}
}
}
if("".equals(shpId)) {
//画一个图形 并返回图形ID
shpId = createOneMap2(wsId, name, userContext);
if("".equals(shpId)) {
logMaps.put("UPFILESTATE", "表单图形创建失败!");
}
}
String fileName_shap = "";
UpFileDao upFileDao = new UpFileDao();
StringBuilder sqlWhere = new StringBuilder();
sqlWhere.append(" and PALREPOSITORYID ='").append(id).append("'");
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
if (fileList != null && fileList.size() > 0)
for (UpfileModel upfileModel : fileList) {
if ("s".equals(upfileModel.getType())) {
String fileName_shaps= upfileModel.getFileName();
if(UtilString.isNotEmpty(fileName_shaps)) {
fileName_shap = fileName_shaps.substring(0,fileName_shaps.lastIndexOf("."));
}
}
}
if(name.equals(fileName_shap)) {
logMaps.put("UPFILESTATE", "此文件已存在,已忽略!");
}else {
DCPluginProfile dcProfilepdfdoc = DCProfileManager.getDCProfile("com.actionsoft.apps.coe.pal.datamigration", "migration");
//将文件挂载到附件里面
DCContext dcContextorigin = new DCContext(userContext, dcProfilepdfdoc, "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, fileName);
InputStream originfile = SDK.getDCAPI().read(dcContextorigin);
try {
boolean writeFileTodisk = new ReadWordUtil().writeFileTodisk(userContext, shpId, fileName, originfile, id, "s");
if(writeFileTodisk) {
logMaps.put("UPFILESTATE", "上传成功!");
}else {
logMaps.put("UPFILESTATE", "上传失败!");
}
} catch (FileNotFoundException e1) {
e1.printStackTrace();
}
}
}
} catch (Exception e) {
// TODO: handle exception
}finally {
SDK.getBOAPI().createDataBO("BO_ACT_FORMDATDFILE_LOG_F", new BO().setAll(logMaps), userContext);
}
}
//导入表单属性及附件
public void getTableInfo(UserContext userContext, String wsId, String groupValue, String fileValue, String fileName) {
DCPluginProfile dcProfilepdf = DCProfileManager.getDCProfile("com.actionsoft.apps.coe.pal.datamigration", "migration");
DCContext dcContextpdf = new DCContext(userContext, dcProfilepdf, "com.actionsoft.apps.coe.pal.datamigration", groupValue, fileValue, fileName);
@ -251,7 +335,57 @@ public class ReadTable {
}
});
}
/**
* 创建表单图形,用于挂附件
*
* @param plId
* @param name
* @return
*/
public String createOneMap2(String plId, String name, UserContext userContext) {
PALRepositoryModel palRepositoryModel = ReadWordUtil.getRepositoryByName(plId, name);
if (palRepositoryModel == null) {
return "";
}
BaseModel defineModel = CoeDesignerAPIManager.getInstance().getDefinition(palRepositoryModel.getId(), 0);
if (defineModel == null) {
defineModel = CoeDesignerUtil.createModel(palRepositoryModel.getId(), 0);
defineModel.setCreateHistory(false);
}
String define = defineModel.getDefinition();
JSONObject definition = JSONObject.parseObject(define);
JSONObject elements = definition.getJSONObject("elements");
if (StringUtils.isNotEmpty(definition.getString("commonShapeConfig"))) {
definition.remove("commonShapeConfig");
}
//增加一个表单图形
JSONObject shapeze = ShapeUtil.getProcessShapeDefinitionByName("data.form", "form");
String shapeIdz = UUIDGener.getObjectId();
shapeze.put("text", name);//不生效
shapeze.put("level", 0);
JSONObject props1 = shapeze.getJSONObject("props");// 位置大小
shapeze.put("id", shapeIdz);
props1.put("x", 200);
props1.put("y", 173);
props1.put("w", 150);
props1.put("h", 66);
props1.put("zindex", 0);
elements.put(shapeIdz, shapeze);
// Map<String, Map<String, JSONObject>> methodAttrsMap = new HashMap<>();
//handleShapeDefaultAttr("", palRepositoryModel, elements, methodAttrsMap, docfile);
// 设置画布大小
defineModel.setDefinition(definition.toString());
// 保存文件
CoeDesignerAPIManager.getInstance().storeDefinition(defineModel);// dao操作
return shapeIdz;
}
/**
* 创建表单图形
*
@ -287,10 +421,10 @@ public class ReadTable {
shapeze.put("level", 0);
JSONObject props1 = shapeze.getJSONObject("props");// 位置大小
shapeze.put("id", shapeIdz);
props1.put("x", 100);
props1.put("y", 277);
props1.put("w", 110);
props1.put("h", 50);
props1.put("x", 200);
props1.put("y", 173);
props1.put("w", 150);
props1.put("h", 66);
props1.put("zindex", 0);
elements.put(shapeIdz, shapeze);

View File

@ -19,6 +19,7 @@ public class TransferModelConvert implements ASLP {
"name:'repositoryId',required:true,allowEmpty:false,desc:'被转换的模型ID'",
"name:'sourceMethod',required:true,allowEmpty:false,desc:'被转换类型'",
"name:'targetMethod',required:true,allowEmpty:false,desc:'目标转换类型'",
"name:'duplicateName',required:true,allowEmpty:false,desc:'如果重名是否生成副本'",
"name:'sid',required:true,allowEmpty:false,desc:'会话ID'"
})
public ResponseObject call(Map<String, Object> map) {
@ -38,6 +39,10 @@ public class TransferModelConvert implements ASLP {
if (UtilString.isEmpty(targetMethod)){
return ResponseObject.newErrResponse("目标转换类型不能为空");
}
String duplicateName = (String) map.get("duplicateName");
if (UtilString.isEmpty(duplicateName)){
return ResponseObject.newErrResponse("参数[duplicateName]不能为空");
}
String sid = (String) map.get("sid");
if (UtilString.isEmpty(sid)){
return ResponseObject.newErrResponse("会话ID不能为空");

View File

@ -0,0 +1,29 @@
package com.actionsoft.apps.coe.pal.modelconvert.cache;
import java.util.HashMap;
import java.util.Map;
public class ConvertShapeIdMapping {
private ConvertShapeIdMapping(){}
private static ConvertShapeIdMapping convertShapeIdMapping = new ConvertShapeIdMapping();
// 存储被转换文件图形ID与转换后的文件图形ID的映射关系
private static Map<String,String> shapeIdMapping = new HashMap<>();
public static ConvertShapeIdMapping getInstance(){
return convertShapeIdMapping;
}
public void load(String sourceShapeId,String targetShapeId){
shapeIdMapping.put(sourceShapeId,targetShapeId);
}
public void clear(){
shapeIdMapping.clear();
}
public String getTargetShapeId(String sourceShapeId){
return shapeIdMapping.get(sourceShapeId);
}
}

View File

@ -0,0 +1,33 @@
package com.actionsoft.apps.coe.pal.modelconvert.cache;
import java.util.HashMap;
import java.util.Map;
public class ConvertShapeNameMapping {
private ConvertShapeNameMapping(){}
private static ConvertShapeNameMapping shapeNameMapping = new ConvertShapeNameMapping();
private static Map<String, String> map = new HashMap<>();
static {
map.put("and","decision"); // -> 判定
map.put("or","decision"); // -> 判定
map.put("xor","decision"); // 异或 -> 判定
map.put("procedure","procedure"); // 流程接口
map.put("method_approval_node","method_approval_node"); // 线上审批
map.put("method_service_node","method_service_node"); // 线下审批
map.put("method_approval_node3","method_approval_node3"); // 系统任务
map.put("method_service_node4","method_service_node4"); // 人工任务
}
public static ConvertShapeNameMapping getInstance(){
return shapeNameMapping;
}
public String getShapeName(String key){
if (map.containsKey(key)){
return map.get(key);
}
return "";
}
}

View File

@ -0,0 +1,9 @@
package com.actionsoft.apps.coe.pal.modelconvert.constant;
public class ShapeConstant {
// 判定图形的初始宽
public static final double DECISION_NODE_WIDTH = 90;
// 判定图形的初始高
public static final double DECISION_NODE_HEIGHT = 46;
}

View File

@ -0,0 +1,88 @@
package com.actionsoft.apps.coe.pal.modelconvert.model;
public class DecisionNode {
private String id;
private String logicNodeId;
private String shapeName;
private Position position; // 中心点
private double x;
private double y;
private double w;
private double h;
public DecisionNode(String id, String logicNodeId, String shapeName, Position position, double x, double y, double w, double h) {
this.id = id;
this.logicNodeId = logicNodeId;
this.shapeName = shapeName;
this.position = position;
this.x = x;
this.y = y;
this.w = w;
this.h = h;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getLogicNodeId() {
return logicNodeId;
}
public void setLogicNodeId(String logicNodeId) {
this.logicNodeId = logicNodeId;
}
public String getShapeName() {
return shapeName;
}
public void setShapeName(String shapeName) {
this.shapeName = shapeName;
}
public Position getPosition() {
return position;
}
public void setPosition(Position position) {
this.position = position;
}
public double getX() {
return x;
}
public void setX(double x) {
this.x = x;
}
public double getY() {
return y;
}
public void setY(double y) {
this.y = y;
}
public double getW() {
return w;
}
public void setW(double w) {
this.w = w;
}
public double getH() {
return h;
}
public void setH(double h) {
this.h = h;
}
}

View File

@ -0,0 +1,38 @@
package com.actionsoft.apps.coe.pal.modelconvert.model;
public class LogicNode {
private String id; // 标识ID
private String shapeName; // and or xor
private Position position; // 节点中心坐标
public LogicNode(String id, String shapeName, Position position) {
this.id = id;
this.shapeName = shapeName;
this.position = position;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getShapeName() {
return shapeName;
}
public void setShapeName(String shapeName) {
this.shapeName = shapeName;
}
public Position getPosition() {
return position;
}
public void setPosition(Position position) {
this.position = position;
}
}

View File

@ -0,0 +1,90 @@
package com.actionsoft.apps.coe.pal.modelconvert.model;
import com.actionsoft.bpms.commons.mvc.model.ModelBean;
public class RelationAttributeModel extends ModelBean {
private String fileId; // 当前资产库文件Id
private String shapeId; // 当前图形Id
private String shapeText; // 当前图形文本
private String attrId; // 建模属性的标识
private String relationFileId; // 关联文件Id
private String relationShapeId; // 关联图形的Id
private String relationShapeText; // 关联类型type为file时 该字段存储文件名 关联类型type为shape时 该字段存储图形的文本
private String groupPath;
public RelationAttributeModel(String fileId, String shapeId, String shapeText, String attrId, String relationFileId, String relationShapeId, String relationShapeText, String groupPath) {
this.fileId = fileId;
this.shapeId = shapeId;
this.shapeText = shapeText;
this.attrId = attrId;
this.relationFileId = relationFileId;
this.relationShapeId = relationShapeId;
this.relationShapeText = relationShapeText;
this.groupPath = groupPath;
}
public String getFileId() {
return fileId;
}
public void setFileId(String fileId) {
this.fileId = fileId;
}
public String getShapeId() {
return shapeId;
}
public void setShapeId(String shapeId) {
this.shapeId = shapeId;
}
public String getShapeText() {
return shapeText;
}
public void setShapeText(String shapeText) {
this.shapeText = shapeText;
}
public String getAttrId() {
return attrId;
}
public void setAttrId(String attrId) {
this.attrId = attrId;
}
public String getRelationFileId() {
return relationFileId;
}
public void setRelationFileId(String relationFileId) {
this.relationFileId = relationFileId;
}
public String getRelationShapeId() {
return relationShapeId;
}
public void setRelationShapeId(String relationShapeId) {
this.relationShapeId = relationShapeId;
}
public String getRelationShapeText() {
return relationShapeText;
}
public void setRelationShapeText(String relationShapeText) {
this.relationShapeText = relationShapeText;
}
public String getGroupPath() {
return groupPath;
}
public void setGroupPath(String groupPath) {
this.groupPath = groupPath;
}
}

View File

@ -1,6 +1,7 @@
package com.actionsoft.apps.coe.pal.modelconvert.strategy;
import com.actionsoft.apps.coe.pal.modelconvert.constant.ConvertType;
import com.actionsoft.apps.coe.pal.modelconvert.strategy.impl.EpcToFlowChart;
import java.util.HashMap;
import java.util.Map;
@ -12,7 +13,7 @@ public class ModelConvertContext {
private static Map<ConvertType,ModelConvertStrategy> map = new HashMap<>(3);
static {
map.put(ConvertType.EPC_FLOWCHART,null);
map.put(ConvertType.EPC_FLOWCHART,new EpcToFlowChart());
}
public static ModelConvertContext getInstance(){

View File

@ -0,0 +1,34 @@
package com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute;
import com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute.impl.AwsOrgTypeAttrHandle;
import com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute.impl.RelationTypeAttrHandle;
import com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute.impl.TextTypeAttrHandle;
import java.util.HashMap;
import java.util.Map;
public class DataAttributeContext {
private DataAttributeContext(){}
private static DataAttributeContext dataAttributeContext = new DataAttributeContext();
private static Map<String, DataAttributeStrategy> map = new HashMap<>();
static {
map.put("number",new TextTypeAttrHandle());
map.put("string",new TextTypeAttrHandle());
map.put("textarea",new TextTypeAttrHandle());
map.put("link",new TextTypeAttrHandle());
map.put("DateTimePicker",new TextTypeAttrHandle());
map.put("table",new TextTypeAttrHandle());
map.put("relation",new RelationTypeAttrHandle());
map.put("awsorg",new AwsOrgTypeAttrHandle());
}
public static DataAttributeContext getInstance(){
return dataAttributeContext;
}
public DataAttributeStrategy dataAttributeStrategy(String type){
return map.get(type);
}
}

View File

@ -0,0 +1,12 @@
package com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute;
import java.util.Map;
public interface DataAttributeStrategy {
// 文件属性处理
void fileAttrHandle(Map<String,Object> param);
// 图形属性处理
void shapeAttrHandle(Map<String,Object> param);
}

View File

@ -0,0 +1,176 @@
package com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute.impl;
import com.actionsoft.apps.coe.pal.modelconvert.cache.ConvertShapeIdMapping;
import com.actionsoft.apps.coe.pal.modelconvert.model.RelationAttributeModel;
import com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute.DataAttributeStrategy;
import com.actionsoft.apps.coe.pal.pal.repository.dao.PALRepositoryPropertyDao;
import com.actionsoft.apps.coe.pal.pal.repository.designer.manage.CoeDesignerAPIManager;
import com.actionsoft.apps.coe.pal.pal.repository.designer.model.BaseModel;
import com.actionsoft.apps.coe.pal.pal.repository.designer.relation.dao.DesignerShapeRelationDao;
import com.actionsoft.apps.coe.pal.pal.repository.designer.relation.model.DesignerShapeRelationModel;
import com.actionsoft.apps.coe.pal.pal.repository.designer.util.CoeDesignerUtil;
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryPropertyModel;
import com.actionsoft.bpms.util.UUIDGener;
import com.actionsoft.bpms.util.UtilString;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class AwsOrgTypeAttrHandle implements DataAttributeStrategy {
@Override
public void fileAttrHandle(Map<String, Object> param) {
String sourceRepositoryId = (String) param.get("sourceRepositoryId");
String targetRepositoryId = (String) param.get("targetRepositoryId");
String attrId = (String) param.get("attrId");
// 1.处理 _prop表
PALRepositoryPropertyDao propertyDao = new PALRepositoryPropertyDao();
List<PALRepositoryPropertyModel> propertyModels = propertyDao.getPropertysByPlid(sourceRepositoryId, attrId);
List<PALRepositoryPropertyModel> batchList = new ArrayList<>();
for (PALRepositoryPropertyModel propertyModel : propertyModels) {
PALRepositoryPropertyModel model = new PALRepositoryPropertyModel();
model.setId(UUIDGener.getUUID());
model.setPlId(targetRepositoryId);
model.setPropertyId(propertyModel.getPropertyId());
model.setPropertyName(propertyModel.getPropertyName());
model.setPropertyValue(propertyModel.getPropertyValue());
model.setOrderIndex(0);
batchList.add(model);
}
propertyDao.batchInsert(batchList);
// 2.处理 _shape_rlat表
DesignerShapeRelationDao shapeRelationDao = new DesignerShapeRelationDao();
List<DesignerShapeRelationModel> sourceRelationModelList = shapeRelationDao.getModelListByFileId(sourceRepositoryId);
// 关联类型的文件属性 关联表中 shapeId shapeText 字段是空值
sourceRelationModelList = sourceRelationModelList.stream()
.filter(model -> UtilString.isEmpty(model.getShapeId()) && UtilString.isEmpty(model.getShapeText()))
.filter(model -> attrId.equals(model.getAttrId()))
.filter(model -> "00000000-0000-0000-0000-000000000000".equals(model.getRelationFileId()) && "00000000-0000-0000-0000-000000000000".equals(model.getRelationShapeId()))
.collect(Collectors.toList());
List<DesignerShapeRelationModel> result = new ArrayList<>();
for (DesignerShapeRelationModel relationModel : sourceRelationModelList) {
DesignerShapeRelationModel targetRelationModel = new DesignerShapeRelationModel();
targetRelationModel.setId(UUIDGener.getUUID());
targetRelationModel.setFileId(targetRepositoryId);
targetRelationModel.setShapeId(relationModel.getShapeId());
targetRelationModel.setShapeText(relationModel.getShapeText());
targetRelationModel.setAttrId(relationModel.getAttrId());
targetRelationModel.setRelationFileId(relationModel.getRelationFileId());
targetRelationModel.setRelationShapeId(relationModel.getRelationShapeId());
targetRelationModel.setRelationShapeText(relationModel.getRelationShapeText());
result.add(targetRelationModel);
}
shapeRelationDao.barchInsert(result);
}
@Override
public void shapeAttrHandle(Map<String, Object> param) {
String sourceRepositoryId = (String) param.get("sourceRepositoryId");
String targetRepositoryId = (String) param.get("targetRepositoryId");
String attrId = (String) param.get("attrId");
String beforeShapeName = (String) param.get("beforeShapeName");
// 1. definition 做处理
BaseModel baseModel = CoeDesignerAPIManager.getInstance().getDefinition(sourceRepositoryId, 0);
String definition = baseModel.getDefinition();
JSONObject defineJsonObj = JSONObject.parseObject(definition);
JSONObject sourceElements = defineJsonObj.getJSONObject("elements");
sourceElements.keySet().stream()
.filter(key -> !sourceElements.getJSONObject(key).getString("name").equals("linker"))
.filter(key -> !sourceElements.getJSONObject(key).getString("name").equals("event")) // 事件的属性直接跳过了 因为转换后 事件图形变成连线了
.filter(key -> sourceElements.getJSONObject(key).getString("name").equals(beforeShapeName))
.forEach(key -> {
// 当前被转换的节点图形
JSONObject sourceShape = sourceElements.getJSONObject(key);
if (sourceShape.containsKey("dataAttributes") && sourceShape.getJSONArray("dataAttributes") != null){
JSONArray dataAttributes = sourceShape.getJSONArray("dataAttributes");
if (dataAttributes.size() > 0){
for (int i = 0; i < dataAttributes.size(); i++) {
JSONObject item = dataAttributes.getJSONObject(i);
if (item.containsKey("attributesJsonArray")){
JSONArray attributesJsonArray = item.getJSONArray("attributesJsonArray");
for (int j = 0; j < attributesJsonArray.size(); j++) {
JSONObject object = attributesJsonArray.getJSONObject(j);
if (object == null) continue;
if (object.getString("id").equals(attrId) && "awsorg".equals(object.getString("type"))){
// 将当前的属性存入到转换后的文件中
String targetDefinition = CoeDesignerAPIManager.getInstance().getDefinition(targetRepositoryId, 0).getDefinition();
JSONObject targetDefineJsonObj = JSONObject.parseObject(targetDefinition);
JSONObject targetElements = targetDefineJsonObj.getJSONObject("elements");
JSONObject targetShape = targetElements.getJSONObject(ConvertShapeIdMapping.getInstance().getTargetShapeId(key));
if (targetShape.containsKey("dataAttributes") && targetShape.getJSONArray("dataAttributes") != null){
JSONArray targetDataAttributes = targetShape.getJSONArray("dataAttributes");
for (int k = 0; k < targetDataAttributes.size(); k++) {
JSONObject targetItem = targetDataAttributes.getJSONObject(k);
if (targetItem.containsKey("attributesJsonArray")){
JSONArray targetItemJSONArray = targetItem.getJSONArray("attributesJsonArray");
for (int l = 0; l < targetItemJSONArray.size(); l++) {
JSONObject targetObj = targetItemJSONArray.getJSONObject(l);
if (targetObj == null) continue;
if (targetObj.getString("id").equals(attrId) && "awsorg".equals(targetObj.getString("type"))) targetItemJSONArray.remove(l);
}
JSONObject tempObj = new JSONObject();
tempObj.put("isRequired",object.getBooleanValue("isRequired"));
tempObj.put("ref",object.getString("ref"));
tempObj.put("readonly",object.getBooleanValue("readonly"));
tempObj.put("scope",object.getString("scope"));
tempObj.put("name",object.getString("name"));
tempObj.put("icon",object.getString("icon"));
tempObj.put("id",object.getString("id"));
tempObj.put("type",object.getString("type"));
tempObj.put("value",object.getJSONArray("value"));
tempObj.put("groupPath",object.getString("groupPath"));
tempObj.put("key",object.getString("key"));
targetItemJSONArray.add(tempObj);
break;
}
}
}
targetElements.put(ConvertShapeIdMapping.getInstance().getTargetShapeId(key),targetShape);
targetDefineJsonObj.put("elements",targetElements);
BaseModel model = CoeDesignerAPIManager.getInstance().getDefinition(targetRepositoryId, 0);
if (model == null) {
model = CoeDesignerUtil.createModel(targetRepositoryId, 0);
}
model.setDefinition(JSONObject.toJSONString(targetDefineJsonObj));
CoeDesignerAPIManager.getInstance().storeDefinition(model);
break;
}
}
break;
}
}
}
}
});
// 2. _shape_rlat 表做处理
DesignerShapeRelationDao shapeRelationDao = new DesignerShapeRelationDao();
List<DesignerShapeRelationModel> shapeRelationModelList = shapeRelationDao.getModelListByFileId(sourceRepositoryId);
shapeRelationModelList = shapeRelationModelList.stream()
.filter(model -> attrId.equals(model.getAttrId()))
.filter(model -> UtilString.isNotEmpty(model.getShapeId()) && UtilString.isNotEmpty(model.getShapeText()))
.filter(model -> "00000000-0000-0000-0000-000000000000".equals(model.getRelationFileId()) && "00000000-0000-0000-0000-000000000000".equals(model.getRelationShapeId()))
.collect(Collectors.toList());
List<DesignerShapeRelationModel> result = new ArrayList<>();
for (DesignerShapeRelationModel relationModel : shapeRelationModelList) {
if (UtilString.isEmpty(ConvertShapeIdMapping.getInstance().getTargetShapeId(relationModel.getShapeId()))) { // 如果转换前为 事件 图形 直接跳过
continue;
}
relationModel.setId(UUIDGener.getUUID());
relationModel.setFileId(targetRepositoryId);
relationModel.setShapeId(ConvertShapeIdMapping.getInstance().getTargetShapeId(relationModel.getShapeId()));
relationModel.setShapeText(relationModel.getShapeText());
relationModel.setAttrId(relationModel.getAttrId());
relationModel.setRelationFileId(relationModel.getRelationFileId());
relationModel.setRelationShapeId(relationModel.getRelationShapeId());
relationModel.setRelationShapeText(relationModel.getRelationShapeText());
result.add(relationModel);
}
shapeRelationDao.barchInsert(result);
}
}

View File

@ -0,0 +1,180 @@
package com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute.impl;
import com.actionsoft.apps.coe.pal.modelconvert.cache.ConvertShapeIdMapping;
import com.actionsoft.apps.coe.pal.modelconvert.model.RelationAttributeModel;
import com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute.DataAttributeStrategy;
import com.actionsoft.apps.coe.pal.pal.repository.dao.PALRepositoryPropertyDao;
import com.actionsoft.apps.coe.pal.pal.repository.designer.manage.CoeDesignerAPIManager;
import com.actionsoft.apps.coe.pal.pal.repository.designer.model.BaseModel;
import com.actionsoft.apps.coe.pal.pal.repository.designer.relation.dao.DesignerShapeRelationDao;
import com.actionsoft.apps.coe.pal.pal.repository.designer.relation.model.DesignerShapeRelationModel;
import com.actionsoft.apps.coe.pal.pal.repository.designer.util.CoeDesignerUtil;
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryPropertyModel;
import com.actionsoft.bpms.util.UUIDGener;
import com.actionsoft.bpms.util.UtilString;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class RelationTypeAttrHandle implements DataAttributeStrategy {
@Override
public void fileAttrHandle(Map<String, Object> param) {
String sourceRepositoryId = (String) param.get("sourceRepositoryId");
String targetRepositoryId = (String) param.get("targetRepositoryId");
String attrId = (String) param.get("attrId");
// 1.处理 _prop表
PALRepositoryPropertyDao propertyDao = new PALRepositoryPropertyDao();
List<PALRepositoryPropertyModel> propertyModels = propertyDao.getPropertysByPlid(sourceRepositoryId, attrId);
List<PALRepositoryPropertyModel> batchList = new ArrayList<>();
for (PALRepositoryPropertyModel propertyModel : propertyModels) {
PALRepositoryPropertyModel model = new PALRepositoryPropertyModel();
model.setId(UUIDGener.getUUID());
model.setPlId(targetRepositoryId);
model.setPropertyId(propertyModel.getPropertyId());
model.setPropertyName(propertyModel.getPropertyName());
JSONObject relationObj = JSONObject.parseObject(propertyModel.getPropertyValue());
RelationAttributeModel relationAttributeModel = new RelationAttributeModel(targetRepositoryId, relationObj.getString("shapeId"),
relationObj.getString("shapeText"), relationObj.getString("attrId"), relationObj.getString("relationFileId"),
relationObj.getString("relationShapeId"), relationObj.getString("relationShapeText"),
relationObj.getString("groupPath"));
model.setPropertyValue(relationAttributeModel.toJSONObject().toJSONString());
model.setOrderIndex(0);
batchList.add(model);
}
propertyDao.batchInsert(batchList);
// 2.处理 _shape_rlat表
DesignerShapeRelationDao shapeRelationDao = new DesignerShapeRelationDao();
List<DesignerShapeRelationModel> sourceRelationModelList = shapeRelationDao.getModelListByFileId(sourceRepositoryId);
// 关联类型的文件属性 关联表中 shapeId shapeText 字段是空值
sourceRelationModelList = sourceRelationModelList.stream()
.filter(model -> UtilString.isEmpty(model.getShapeId()) && UtilString.isEmpty(model.getShapeText()))
.filter(model -> attrId.equals(model.getAttrId()))
.filter(model -> !"00000000-0000-0000-0000-000000000000".equals(model.getRelationFileId()) && !"00000000-0000-0000-0000-000000000000".equals(model.getRelationShapeId()))
.collect(Collectors.toList());
List<DesignerShapeRelationModel> result = new ArrayList<>();
for (DesignerShapeRelationModel relationModel : sourceRelationModelList) {
DesignerShapeRelationModel targetRelationModel = new DesignerShapeRelationModel();
targetRelationModel.setId(UUIDGener.getUUID());
targetRelationModel.setFileId(targetRepositoryId);
targetRelationModel.setShapeId(relationModel.getShapeId());
targetRelationModel.setShapeText(relationModel.getShapeText());
targetRelationModel.setAttrId(relationModel.getAttrId());
targetRelationModel.setRelationFileId(relationModel.getRelationFileId());
targetRelationModel.setRelationShapeId(relationModel.getRelationShapeId());
targetRelationModel.setRelationShapeText(relationModel.getRelationShapeText());
result.add(targetRelationModel);
}
shapeRelationDao.barchInsert(result);
}
@Override
public void shapeAttrHandle(Map<String, Object> param) {
String sourceRepositoryId = (String) param.get("sourceRepositoryId");
String targetRepositoryId = (String) param.get("targetRepositoryId");
String attrId = (String) param.get("attrId");
String beforeShapeName = (String) param.get("beforeShapeName");
// 1. definition 做处理
BaseModel baseModel = CoeDesignerAPIManager.getInstance().getDefinition(sourceRepositoryId, 0);
String definition = baseModel.getDefinition();
JSONObject defineJsonObj = JSONObject.parseObject(definition);
JSONObject sourceElements = defineJsonObj.getJSONObject("elements");
sourceElements.keySet().stream()
.filter(key -> !sourceElements.getJSONObject(key).getString("name").equals("linker"))
.filter(key -> !sourceElements.getJSONObject(key).getString("name").equals("event")) // 事件的属性直接跳过了 因为转换后 事件图形变成连线了
.filter(key -> sourceElements.getJSONObject(key).getString("name").equals(beforeShapeName))
.forEach(key -> {
// 当前被转换的节点图形
JSONObject sourceShape = sourceElements.getJSONObject(key);
if (sourceShape.containsKey("dataAttributes") && sourceShape.getJSONArray("dataAttributes") != null){
JSONArray dataAttributes = sourceShape.getJSONArray("dataAttributes");
if (dataAttributes.size() > 0){
for (int i = 0; i < dataAttributes.size(); i++) {
JSONObject item = dataAttributes.getJSONObject(i);
if (item.containsKey("attributesJsonArray")){
JSONArray attributesJsonArray = item.getJSONArray("attributesJsonArray");
for (int j = 0; j < attributesJsonArray.size(); j++) {
JSONObject object = attributesJsonArray.getJSONObject(j);
if (object == null) continue;
if (object.getString("id").equals(attrId) && "relation".equals(object.getString("type"))){
// 将当前的属性存入到转换后的文件中
String targetDefinition = CoeDesignerAPIManager.getInstance().getDefinition(targetRepositoryId, 0).getDefinition();
JSONObject targetDefineJsonObj = JSONObject.parseObject(targetDefinition);
JSONObject targetElements = targetDefineJsonObj.getJSONObject("elements");
JSONObject targetShape = targetElements.getJSONObject(ConvertShapeIdMapping.getInstance().getTargetShapeId(key));
if (targetShape.containsKey("dataAttributes") && targetShape.getJSONArray("dataAttributes") != null){
JSONArray targetDataAttributes = targetShape.getJSONArray("dataAttributes");
for (int k = 0; k < targetDataAttributes.size(); k++) {
JSONObject targetItem = targetDataAttributes.getJSONObject(k);
if (targetItem.containsKey("attributesJsonArray")){
JSONArray targetItemJSONArray = targetItem.getJSONArray("attributesJsonArray");
for (int l = 0; l < targetItemJSONArray.size(); l++) {
JSONObject targetObj = targetItemJSONArray.getJSONObject(l);
if (targetObj == null) continue;
if (targetObj.getString("id").equals(attrId) && "relation".equals(targetObj.getString("type"))) targetItemJSONArray.remove(l);
}
JSONObject tempObj = new JSONObject();
tempObj.put("isRequired",object.getBooleanValue("isRequired"));
tempObj.put("ref",object.getString("ref"));
tempObj.put("readonly",object.getBooleanValue("readonly"));
tempObj.put("scope",object.getString("scope"));
tempObj.put("name",object.getString("name"));
tempObj.put("icon",object.getString("icon"));
tempObj.put("id",object.getString("id"));
tempObj.put("type",object.getString("type"));
tempObj.put("value",object.getString("value"));
tempObj.put("groupPath",object.getString("groupPath"));
tempObj.put("key",object.getString("key"));
targetItemJSONArray.add(tempObj);
break;
}
}
}
targetElements.put(ConvertShapeIdMapping.getInstance().getTargetShapeId(key),targetShape);
targetDefineJsonObj.put("elements",targetElements);
BaseModel model = CoeDesignerAPIManager.getInstance().getDefinition(targetRepositoryId, 0);
if (model == null) {
model = CoeDesignerUtil.createModel(targetRepositoryId, 0);
}
model.setDefinition(JSONObject.toJSONString(targetDefineJsonObj));
CoeDesignerAPIManager.getInstance().storeDefinition(model);
break;
}
}
break;
}
}
}
}
});
// 2. _shape_rlat 表做处理
DesignerShapeRelationDao shapeRelationDao = new DesignerShapeRelationDao();
List<DesignerShapeRelationModel> shapeRelationModelList = shapeRelationDao.getModelListByFileId(sourceRepositoryId);
shapeRelationModelList = shapeRelationModelList.stream()
.filter(model -> attrId.equals(model.getAttrId()))
.filter(model -> UtilString.isNotEmpty(model.getShapeId()) && UtilString.isNotEmpty(model.getShapeText()))
.filter(model -> !"00000000-0000-0000-0000-000000000000".equals(model.getRelationFileId()) && !"00000000-0000-0000-0000-000000000000".equals(model.getRelationShapeId()))
.collect(Collectors.toList());
List<DesignerShapeRelationModel> result = new ArrayList<>();
for (DesignerShapeRelationModel relationModel : shapeRelationModelList) {
if (UtilString.isEmpty(ConvertShapeIdMapping.getInstance().getTargetShapeId(relationModel.getShapeId()))) { // 如果转换前为 事件 图形 直接跳过
continue;
}
relationModel.setId(UUIDGener.getUUID());
relationModel.setFileId(targetRepositoryId);
relationModel.setShapeId(ConvertShapeIdMapping.getInstance().getTargetShapeId(relationModel.getShapeId()));
relationModel.setShapeText(relationModel.getShapeText());
relationModel.setAttrId(relationModel.getAttrId());
relationModel.setRelationFileId(relationModel.getRelationFileId());
relationModel.setRelationShapeId(relationModel.getRelationShapeId());
relationModel.setRelationShapeText(relationModel.getRelationShapeText());
result.add(relationModel);
}
shapeRelationDao.barchInsert(result);
}
}

View File

@ -0,0 +1,131 @@
package com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute.impl;
import com.actionsoft.apps.coe.pal.modelconvert.cache.ConvertShapeIdMapping;
import com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute.DataAttributeStrategy;
import com.actionsoft.apps.coe.pal.pal.repository.dao.PALRepositoryPropertyDao;
import com.actionsoft.apps.coe.pal.pal.repository.designer.manage.CoeDesignerAPIManager;
import com.actionsoft.apps.coe.pal.pal.repository.designer.model.BaseModel;
import com.actionsoft.apps.coe.pal.pal.repository.designer.util.CoeDesignerUtil;
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryPropertyModel;
import com.actionsoft.bpms.util.UUIDGener;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* 文本类型 包含 单行 多行文本 日期 链接 表格 数字等类型
* 文件属性以及图形属性的处理
*/
public class TextTypeAttrHandle implements DataAttributeStrategy {
@Override
public void fileAttrHandle(Map<String, Object> param) {
// 直接处理 _prop表
String sourceRepositoryId = (String) param.get("sourceRepositoryId");
String targetRepositoryId = (String) param.get("targetRepositoryId");
String sourcePropertyId = (String) param.get("attrId");
PALRepositoryPropertyDao propertyDao = new PALRepositoryPropertyDao();
List<PALRepositoryPropertyModel> propertyList = propertyDao.getPropertysByPlid(sourceRepositoryId, sourcePropertyId);
List<PALRepositoryPropertyModel> result = new ArrayList<>();
for (PALRepositoryPropertyModel sourcePropertyModel : propertyList) {
PALRepositoryPropertyModel propertyModel = new PALRepositoryPropertyModel();
propertyModel.setId(UUIDGener.getUUID());
propertyModel.setPlId(targetRepositoryId);
propertyModel.setPropertyId(sourcePropertyModel.getPropertyId());
propertyModel.setPropertyName(sourcePropertyModel.getPropertyName());
propertyModel.setPropertyValue(sourcePropertyModel.getPropertyValue());
propertyModel.setOrderIndex(0);
result.add(propertyModel);
}
propertyDao.batchInsert(result);
}
@Override
public void shapeAttrHandle(Map<String, Object> param) {
// 直接处理 definition
String sourceRepositoryId = (String) param.get("sourceRepositoryId");
String targetRepositoryId = (String) param.get("targetRepositoryId");
String attrId = (String) param.get("attrId");
String beforeShapeName = (String) param.get("beforeShapeName");
String afterShapeName = (String) param.get("afterShapeName");
BaseModel baseModel = CoeDesignerAPIManager.getInstance().getDefinition(sourceRepositoryId, 0);
String definition = baseModel.getDefinition();
JSONObject defineJsonObj = JSONObject.parseObject(definition);
JSONObject sourceElements = defineJsonObj.getJSONObject("elements");
sourceElements.keySet().stream()
.filter(key -> !sourceElements.getJSONObject(key).getString("name").equals("linker"))
.filter(key -> !sourceElements.getJSONObject(key).getString("name").equals("event")) // 事件的属性直接跳过了 因为转换后 事件图形变成连线了
.filter(key -> sourceElements.getJSONObject(key).getString("name").equals(beforeShapeName))
.forEach(key -> {
// 当前被转换的节点图形
JSONObject sourceShape = sourceElements.getJSONObject(key);
if (sourceShape.containsKey("dataAttributes") && sourceShape.getJSONArray("dataAttributes") != null){
JSONArray dataAttributes = sourceShape.getJSONArray("dataAttributes");
if (dataAttributes.size() > 0){
for (int i = 0; i < dataAttributes.size(); i++) {
JSONObject item = dataAttributes.getJSONObject(i);
if (item.containsKey("attributesJsonArray")){
JSONArray attributesJsonArray = item.getJSONArray("attributesJsonArray");
for (int j = 0; j < attributesJsonArray.size(); j++) {
JSONObject object = attributesJsonArray.getJSONObject(j);
if (object == null) continue;
if (object.getString("id").equals(attrId)){
// 将当前的属性存入到转换后的文件中
String targetDefinition = CoeDesignerAPIManager.getInstance().getDefinition(targetRepositoryId, 0).getDefinition();
JSONObject targetDefineJsonObj = JSONObject.parseObject(targetDefinition);
JSONObject targetElements = targetDefineJsonObj.getJSONObject("elements");
JSONObject targetShape = targetElements.getJSONObject(ConvertShapeIdMapping.getInstance().getTargetShapeId(key));
if (targetShape.containsKey("dataAttributes") && targetShape.getJSONArray("dataAttributes") != null){
JSONArray targetDataAttributes = targetShape.getJSONArray("dataAttributes");
for (int k = 0; k < targetDataAttributes.size(); k++) {
JSONObject targetItem = targetDataAttributes.getJSONObject(k);
if (targetItem.containsKey("attributesJsonArray")){
JSONArray targetItemJSONArray = targetItem.getJSONArray("attributesJsonArray");
for (int l = 0; l < targetItemJSONArray.size(); l++) {
JSONObject targetObj = targetItemJSONArray.getJSONObject(l);
if (targetObj == null) continue;
if (targetObj.getString("id").equals(attrId)) targetItemJSONArray.remove(l);
}
JSONObject tempObj = new JSONObject();
tempObj.put("isRequired",object.getBooleanValue("isRequired"));
tempObj.put("ref",object.getString("ref"));
tempObj.put("readonly",object.getBooleanValue("readonly"));
tempObj.put("scope",object.getString("scope"));
tempObj.put("name",object.getString("name"));
tempObj.put("icon",object.getString("icon"));
tempObj.put("id",object.getString("id"));
tempObj.put("type",object.getString("type"));
if ("table".equals(object.getString("type"))){
tempObj.put("value",object.getJSONObject("value"));
}else {
tempObj.put("value",object.getString("value"));
}
tempObj.put("groupPath",object.getString("groupPath"));
tempObj.put("key",object.getString("key"));
targetItemJSONArray.add(tempObj);
break;
}
}
}
targetElements.put(ConvertShapeIdMapping.getInstance().getTargetShapeId(key),targetShape);
targetDefineJsonObj.put("elements",targetElements);
BaseModel model = CoeDesignerAPIManager.getInstance().getDefinition(targetRepositoryId, 0);
if (model == null) {
model = CoeDesignerUtil.createModel(targetRepositoryId, 0);
}
model.setDefinition(JSONObject.toJSONString(targetDefineJsonObj));
CoeDesignerAPIManager.getInstance().storeDefinition(model);
break;
}
}
break;
}
}
}
}
});
}
}

View File

@ -1,22 +1,27 @@
package com.actionsoft.apps.coe.pal.modelconvert.strategy.impl;
import com.actionsoft.apps.coe.pal.modelconvert.cache.ConvertShapeIdMapping;
import com.actionsoft.apps.coe.pal.modelconvert.cache.ConvertShapeNameMapping;
import com.actionsoft.apps.coe.pal.modelconvert.cache.RepositoryModelCache;
import com.actionsoft.apps.coe.pal.modelconvert.constant.LinkerDefConstant;
import com.actionsoft.apps.coe.pal.modelconvert.model.EventNode;
import com.actionsoft.apps.coe.pal.modelconvert.model.LinkerAdapter;
import com.actionsoft.apps.coe.pal.modelconvert.model.Position;
import com.actionsoft.apps.coe.pal.modelconvert.constant.ShapeConstant;
import com.actionsoft.apps.coe.pal.modelconvert.model.*;
import com.actionsoft.apps.coe.pal.modelconvert.strategy.ModelConvertStrategy;
import com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute.DataAttributeContext;
import com.actionsoft.apps.coe.pal.modelconvert.strategy.attribute.DataAttributeStrategy;
import com.actionsoft.apps.coe.pal.modelconvert.util.ConvertUtil;
import com.actionsoft.apps.coe.pal.pal.repository.dao.CoeProcessLevelDaoFacotory;
import com.actionsoft.apps.coe.pal.pal.repository.dao.PALRepository;
import com.actionsoft.apps.coe.pal.pal.repository.dao.*;
import com.actionsoft.apps.coe.pal.pal.repository.designer.manage.CoeDesignerAPIManager;
import com.actionsoft.apps.coe.pal.pal.repository.designer.model.BaseModel;
import com.actionsoft.apps.coe.pal.pal.repository.designer.util.CoeDesignerUtil;
import com.actionsoft.apps.coe.pal.pal.repository.designer.util.ShapeUtil;
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryAttributeModel;
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryShapeAttributeModel;
import com.actionsoft.apps.coe.pal.pal.repository.model.impl.PALRepositoryModelImpl;
import com.actionsoft.apps.coe.pal.pal.repository.util.CoeProcessLevelUtil;
import com.actionsoft.bpms.server.UserContext;
import com.actionsoft.bpms.util.UUIDGener;
import com.actionsoft.bpms.util.UtilString;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
@ -38,6 +43,7 @@ public class EpcToFlowChart implements ModelConvertStrategy {
String repositoryId = (String) param.get("repositoryId");
String sourceMethod = (String)param.get("sourceMethod");
String targetMethod = (String)param.get("targetMethod");
boolean duplicateName = Boolean.parseBoolean((String) param.get("duplicateName"));
PALRepository repository = CoeProcessLevelDaoFacotory.createCoeProcessLevel();
PALRepositoryModelImpl epcRepositoryModel = (PALRepositoryModelImpl)repository.getInstance(repositoryId);
@ -52,7 +58,11 @@ public class EpcToFlowChart implements ModelConvertStrategy {
String methodCategory = targetMethod.substring(0,targetMethod.indexOf("."));
int orderIndex = repository.getChildrenMaxOrderIndexByPidAndWsId(parentId, wsId) + 1;
Timestamp nowTime = new Timestamp(System.currentTimeMillis());
PALRepositoryModelImpl repositoryModel = CoeProcessLevelUtil.createPALRepositoryModel(newRepositoryId, plRid, wsId, epcRepositoryModel.getName(), "", orderIndex, parentId,
String repositoryName = epcRepositoryModel.getName();
if (duplicateName) {
repositoryName += "副本";
}
PALRepositoryModelImpl repositoryModel = CoeProcessLevelUtil.createPALRepositoryModel(newRepositoryId, plRid, wsId, repositoryName, "", orderIndex, parentId,
methodCategory, true, 1, newRepositoryId, false, targetMethod, "0", epcRepositoryModel.getLevel(), null, null,
uc.getUID(), uc.getUID(), nowTime, null, null, null, null, null, null, null, null, null,epcRepositoryModel.getSecurityLevel());
repository.insert(repositoryModel);
@ -60,6 +70,11 @@ public class EpcToFlowChart implements ModelConvertStrategy {
this.handleEPCToFlowChart(uc,repositoryId,newRepositoryId,targetMethod);
// 4.放入缓存同时放入历史记录表中
// 6处理转换后的flowchart模型的文件属性 节点属性 形状显示规则
this.handleDataAttribute(repositoryId,newRepositoryId,wsId,sourceMethod,targetMethod);
// 7. 处理附件
// 8. 小组权限问题
return null;
}
@ -85,6 +100,9 @@ public class EpcToFlowChart implements ModelConvertStrategy {
private void handleEPCToFlowChart(UserContext _uc,String repositoryId,String newRepositoryId,String targetMethodId){
// 每次转换前将存储的图形ID的映射关系清空
ConvertShapeIdMapping.getInstance().clear();
// 3根据当前EPC的define生成flowChart的define
BaseModel baseModel = CoeDesignerAPIManager.getInstance().getDefinition(repositoryId, 0);
String definition = baseModel.getDefinition();
@ -92,9 +110,14 @@ public class EpcToFlowChart implements ModelConvertStrategy {
JSONObject defineJsonObj = JSONObject.parseObject(definition);
JSONObject page = defineJsonObj.getJSONObject("page");
JSONObject elements = defineJsonObj.getJSONObject("elements");
// 存储事件节点
Map<String, EventNode> eventNodeMap = new HashMap<>();
// 存储逻辑与 异或节点
Map<String, LogicNode> logicNodeMap = new HashMap<>();
Map<String, DecisionNode> decisionNodeMap = new HashMap<>();
Map<String,Map<String,List<LinkerAdapter>>> linkerAdapterMap = new HashMap<>();
Set<String> toBeDeletes = new HashSet<>();
Map<String,JSONObject> decisionMap = new HashMap<>();
// 保存图形y坐标的最大值
double[] maxShapeY = {0.0};
elements.keySet().stream().forEach(key -> {
@ -108,12 +131,54 @@ public class EpcToFlowChart implements ModelConvertStrategy {
EventNode eventNode = new EventNode(key,props.getDoubleValue("x"),props.getDoubleValue("y"),props.getDoubleValue("w"),props.getDoubleValue("h"));
eventNodeMap.put(key,eventNode);
}
if ("and".equals(shapeName) || "or".equals(shapeName) || "xor".equals(shapeName)){
double x = props.getDoubleValue("x");
double y = props.getDoubleValue("y");
double w = props.getDoubleValue("w");
double h = props.getDoubleValue("h");
Position position = new Position(x + (w / 2), y + (h / 2));
// LogicNode logicNode = new LogicNode(key, shapeName, position);
// logicNodeMap.put(key,logicNode);
// 用判定图源代替与 异或
String _id = UUIDGener.getObjectId();
double _x = position.getX() - (ShapeConstant.DECISION_NODE_WIDTH / 2);
double _y = position.getY() - (ShapeConstant.DECISION_NODE_HEIGHT / 2);
DecisionNode decisionNode = new DecisionNode(_id,key, shapeName,position, _x, _y, ShapeConstant.DECISION_NODE_WIDTH, ShapeConstant.DECISION_NODE_HEIGHT);
decisionNodeMap.put(key,decisionNode);
JSONObject decision = ShapeUtil.getProcessShapeDefinition("process.flowchart", "判定");
decision.put("id",_id);
JSONObject decisionProps = decision.getJSONObject("props");
decisionProps.put("x",_x);
decisionProps.put("y",_y);
decisionProps.put("w",ShapeConstant.DECISION_NODE_WIDTH);
decisionProps.put("h",ShapeConstant.DECISION_NODE_HEIGHT);
decision.put("props",decisionProps);
String text = "and".equals(shapeName) ? "" : "or".equals(shapeName) ? "" : "异或";
decision.put("text",text);
decisionMap.put(_id,decision);
// 记录待删除的逻辑图形的key值
toBeDeletes.add(key);
// 存储一下转换前与转换后图形ID的映射关系
ConvertShapeIdMapping.getInstance().load(key,_id);
}
if (!"linker".equals(shapeName)) {
element.put("category",targetMethodId);
double y = props.getDoubleValue("y");
if (y > maxShapeY[0]) maxShapeY[0] = y;
// 除判断条件中的图形外 其他图形的ID转换前与转换后是一致的 因为总体上是在转换前的 definition 上进行改造
if (!("and".equals(shapeName) || "or".equals(shapeName) || "xor".equals(shapeName) || "event".equals(shapeName))){
ConvertShapeIdMapping.getInstance().load(key,key);
}
}
});
// epc的逻辑节点 替换为 flowchart的判定节点
decisionMap.keySet().stream().forEach(key -> {
JSONObject decision = decisionMap.get(key);
elements.put(key,decision);
});
// 处理事件节点
eventNodeMap.keySet().stream().forEach(key -> {
EventNode eventNode = eventNodeMap.get(key);
elements.keySet().stream()
@ -181,7 +246,8 @@ public class EpcToFlowChart implements ModelConvertStrategy {
// 记录下待删除图形的key
toBeDeletes.add(key);
});
// 3.2 根据封装的LinkerAdapter生成新的linker
// 3.2 根据封装的LinkerAdapter生成新的linker 生成事件线
linkerAdapterMap.keySet().stream().forEach(key -> {
EventNode eventNode = eventNodeMap.get(key);
Position centerShapePosi = eventNode.getCenterShapePosi();
@ -278,7 +344,56 @@ public class EpcToFlowChart implements ModelConvertStrategy {
}
}
});
// 3.3 增加开始与结束节点
// 3.3 处理与 异或 节点的连线
decisionNodeMap.keySet().stream().forEach(key -> {
DecisionNode decisionNode = decisionNodeMap.get(key);
elements.keySet().stream()
.filter(k -> "linker".equals(elements.getJSONObject(k).getString("name")))
.forEach(k -> {
JSONObject linkerObj = elements.getJSONObject(k);
JSONObject fromObj = linkerObj.getJSONObject("from");
JSONObject toObj = linkerObj.getJSONObject("to");
if (decisionNode.getLogicNodeId().equals(fromObj.getString("id"))){
double x = fromObj.getDoubleValue("x");
double y = fromObj.getDoubleValue("y");
if (x == decisionNode.getPosition().getX()) {
if (y < decisionNode.getPosition().getY()){
fromObj.put("y",decisionNode.getPosition().getY() - (decisionNode.getH() / 2));
}else if (y > decisionNode.getPosition().getY()){
fromObj.put("y",decisionNode.getPosition().getY() + (decisionNode.getH() / 2));
}
fromObj.put("id",decisionNode.getId());
}else if (y == decisionNode.getPosition().getY()){
if (x < decisionNode.getPosition().getX()){
fromObj.put("x",decisionNode.getPosition().getX() - (decisionNode.getW() / 2));
}else if (x > decisionNode.getPosition().getX()){
fromObj.put("x",decisionNode.getPosition().getX() + (decisionNode.getW() / 2));
}
fromObj.put("id",decisionNode.getId());
}
}else if (decisionNode.getLogicNodeId().equals(toObj.getString("id"))){
double x = toObj.getDoubleValue("x");
double y = toObj.getDoubleValue("y");
if (x == decisionNode.getPosition().getX()){
if (y < decisionNode.getPosition().getY()){
toObj.put("y",decisionNode.getPosition().getY() - (decisionNode.getH() / 2));
}else if (y > decisionNode.getPosition().getY()){
toObj.put("y",decisionNode.getPosition().getY() + (decisionNode.getH() / 2));
}
toObj.put("id",decisionNode.getId());
}else if (y == decisionNode.getPosition().getY()){
if (x < decisionNode.getPosition().getX()){
toObj.put("x",decisionNode.getPosition().getX() - (decisionNode.getW() / 2));
}else if (x > decisionNode.getPosition().getX()){
toObj.put("x",decisionNode.getPosition().getX() + (decisionNode.getW() / 2));
}
toObj.put("id",decisionNode.getId());
}
}
});
});
// 3.4 增加开始与结束节点
JSONObject startNode = ShapeUtil.getProcessShapeDefinition("process.flowchart", "开始/结束");
String startNodeId = UUIDGener.getObjectId();
startNode.put("id",startNodeId);
@ -314,7 +429,58 @@ public class EpcToFlowChart implements ModelConvertStrategy {
}
model.setDefinition(JSONObject.toJSONString(defineJsonObj));
CoeDesignerAPIManager.getInstance().storeDefinition(model);
// 6处理转换后的flowchart模型的文件属性 节点属性 形状显示规则
}
/**
* 处理文件属性 数据属性 形状显示规则
* EPC中有的属性配置 Flowchart没有的话 暂时不予导入
*/
private void handleDataAttribute(String sourceRepositoryId,String targetRepositoryId,String wsId,String sourceMethod,String targetMethod){
// 文件属性配置
PALRepositoryAttributeDao fileAttrDao = new PALRepositoryAttributeDao();
List<PALRepositoryAttributeModel> sourceFileAttrList = fileAttrDao.getFileAttrConfigList(wsId, sourceMethod);
List<PALRepositoryAttributeModel> targetFileAttrList = fileAttrDao.getFileAttrConfigList(wsId, targetMethod);
sourceFileAttrList.stream().forEach(sourceFileAttr -> {
boolean targetFileAttrIsExist = targetFileAttrList.stream()
.anyMatch(targetFileAttr -> sourceFileAttr.getAttrId().equals(targetFileAttr.getAttrId())
&& sourceFileAttr.getType().equals(targetFileAttr.getType()));
if (targetFileAttrIsExist){ // 如果转换后的文件的建模属性中也有该属性配置 则将被转换的属性值导入过来
// 文件属性值的处理
DataAttributeStrategy attributeStrategy = DataAttributeContext.getInstance().dataAttributeStrategy(sourceFileAttr.getType());
Map<String, Object> param = new HashMap<>();
param.put("sourceRepositoryId",sourceRepositoryId);
param.put("targetRepositoryId",targetRepositoryId);
param.put("attrId",sourceFileAttr.getAttrId());
attributeStrategy.fileAttrHandle(param);
}
});
// 图形属性配置
PALRepositoryShapeAttributeDao shapeAttrDao = new PALRepositoryShapeAttributeDao();
List<PALRepositoryShapeAttributeModel> sourceShapeAttrList = shapeAttrDao.getShapeAttrConfigList(wsId, sourceMethod,"");
List<PALRepositoryShapeAttributeModel> targetShapeAttrList = shapeAttrDao.getShapeAttrConfigList(wsId, targetMethod,"");
sourceShapeAttrList.stream()
.filter(shapeAttr -> !"event".equals(shapeAttr.getShapeName())) // 事件图形 直接跳过
.filter(sourceShapeAttr -> UtilString.isNotEmpty(ConvertShapeNameMapping.getInstance().getShapeName(sourceShapeAttr.getShapeName()))) // 表中可能会存在一些历史脏数据
.forEach(sourceShapeAttr -> {
boolean targetShapeAttrIsExist = targetShapeAttrList.stream()
.anyMatch(targetFileAttr -> sourceShapeAttr.getAttrId().equals(targetFileAttr.getAttrId())
&& sourceShapeAttr.getType().equals(targetFileAttr.getType())
&& ConvertShapeNameMapping.getInstance().getShapeName(sourceShapeAttr.getShapeName()).equals(targetFileAttr.getShapeName()));
if (targetShapeAttrIsExist){ // 如果转换后的文件的图形建模属性中也有该属性配置 则将被转换的属性值导入过来
// 图形属性值的处理
DataAttributeStrategy attributeStrategy = DataAttributeContext.getInstance().dataAttributeStrategy(sourceShapeAttr.getType());
Map<String, Object> param = new HashMap<>();
param.put("sourceRepositoryId",sourceRepositoryId);
param.put("targetRepositoryId",targetRepositoryId);
param.put("beforeShapeName",sourceShapeAttr.getShapeName());
param.put("afterShapeName",ConvertShapeNameMapping.getInstance().getShapeName(sourceShapeAttr.getShapeName()));
param.put("attrId",sourceShapeAttr.getAttrId());
attributeStrategy.shapeAttrHandle(param);
}
});
// 形状显示规则
}
}

View File

@ -1,7 +1,13 @@
package com.actionsoft.apps.coe.pal.modelconvert.web;
import com.actionsoft.apps.coe.pal.pal.modelconvert.constant.ModelConvertConst;
import com.actionsoft.bpms.commons.htmlframework.HtmlPageTemplate;
import com.actionsoft.bpms.commons.mvc.view.ActionWeb;
import com.actionsoft.bpms.server.UserContext;
import com.alibaba.fastjson.JSON;
import java.util.HashMap;
import java.util.Map;
public class ModelConvertWeb extends ActionWeb {
@ -17,11 +23,18 @@ public class ModelConvertWeb extends ActionWeb {
public String mainPage(UserContext context, String wsId, String teamId) {
_uc = context;
return page(wsId, teamId);
return getHomePage(context,wsId, teamId);
}
public String page(String wsId,String teamId){
return "";
public String getHomePage(UserContext userContext,String wsId,String teamId){
Map<String, Object> macroLibraries = new HashMap<String, Object>();
macroLibraries.put("sessionId", userContext.getSessionId());
macroLibraries.put("wsId", wsId);
macroLibraries.put("teamId", teamId);
macroLibraries.put("settingParam", JSON.toJSON(macroLibraries));
return HtmlPageTemplate.merge(ModelConvertConst.APP_ID,"main.htm",macroLibraries);
}

View File

@ -0,0 +1,33 @@
<!DOCTYPE html>
<html lang="en">
<head>
<script>
if(window.navigator.userAgent.indexOf('MSIE') > -1 || window.navigator.userAgent.indexOf('Trident') > -1){
window.location.replace("../not_support_vue.htm");
}
</script>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="../apps/com.actionsoft.apps.coe.pal.modelconvert/main/favicon.ico" />
<title></title>
<link type='text/css' rel='stylesheet' href='../commons/css/font/iconfont.css'/>
<!--
其它的js或css引用方式示例<%= htmlWebpackPlugin.options.awsjsandcsspath%>
<link rel="stylesheet" type="text/css" href="<%= htmlWebpackPlugin.options.awsjsandcsspath%>apps/_bpm.platform/css/model/console.m.dw.design.css"/>
-->
<script>
const settingParam = <#settingParam>;
const axiosBaseUrl = "./";
const production = true;
const devUserInfo = {};
</script>
<script type="module" crossorigin src="../apps/com.actionsoft.apps.coe.pal.modelconvert/main/js/entry-index-a5f3846f.js"></script>
<link rel="stylesheet" href="../apps/com.actionsoft.apps.coe.pal.modelconvert/main/assets/asset-style-a4265554.css">
</head>
<body style="margin:0;">
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@ -0,0 +1 @@
import{_,d as v,r as w,f as E,h as f,a as d,c as y,b as o,t as B,e as u,w as r,F as A,o as N,g as P,p as T,i as g,j as M}from"./entry-index-a5f3846f.js";const k=v({name:"history",setup(){const{proxy:e}=P(),a=[{id:"",wsId:"",number:1,convertType:"EPC\u8F6CFlowChart",operator:"liuqun",operatorName:"\u5218\u7FA4",operationTime:"2022-09-10 00:00:00",convertCount:15,processNames:"1.0\u6218\u7565\u89C4\u5212\u6D41\u7A0B\u30012.0\u51B7\u996E\u4E8B\u4E1A\u6D41\u7A0B\u30013.0\u6D4B\u8BD5\u6D4B\u8BD5\u6D41\u7A0B"},{id:"",wsId:"",number:2,convertType:"EPC\u8F6CBPMN",operator:"gaoyang",operatorName:"\u9AD8\u626C",operationTime:"2022-09-10 00:00:00",convertCount:15,processNames:"1.0\u6218\u7565\u89C4\u5212\u6D41\u7A0B\u30012.0\u51B7\u996E\u4E8B\u4E1A\u6D41\u7A0B\u30013.0\u6D4B\u8BD5\u6D4B\u8BD5\u6D41\u7A0B"}],C=[{text:"EPC\u8F6CFlowChart",sourceMethod:"EPC",targetMethod:"FlowChart",value:"EPC\u8F6CFlowChart"},{text:"EPC\u8F6CBPMN",sourceMethod:"EPC",targetMethod:"BPMN",value:"EPC\u8F6CBPMN"},{text:"FlowChart\u8F6CBPMN",sourceMethod:"FlowChart",targetMethod:"BPMN",value:"FlowChart\u8F6CBPMN"}],F=w(""),p=w([]),m=E({visible:!1,title:"\u6D41\u7A0B\u6E05\u5355",direction:"rtl",headerRowStyle:{paddingTop:"10px"},processList:[{number:1,processName:"1.0\u6218\u7565\u89C4\u5212\u6D41\u7A0B(v1.0)",processId:""},{number:2,processName:"2.0\u4EA7\u54C1\u6280\u672F\u4E0E\u7814\u53D1(v1.0)",processId:""}]}),n=()=>{p.value=[]},s=(t,i)=>{console.log("\u67E5\u770B\u6D41\u7A0B\u6E05\u5355"),m.visible=!0},l=(t,i,b)=>{const D=b.property;return i[D]===t},h=()=>{e.$router.push("/")};return f(()=>{n()}),{tableData:a,searchText:F,historyList:p,loadHistoryFn:n,openProcessListFn:s,convertTypeFilters:C,filterHandlerFn:l,backToHomeFn:h,drawer:m}}}),c=e=>(T("data-v-344d8a88"),e=e(),g(),e),$={class:"header-container"},I=c(()=>o("span",null,[o("i",{class:"awsui-iconfont"},"\uE6FA")],-1)),V=c(()=>o("span",null,"\u8FD4\u56DE",-1)),H=[I,V],L={class:"search-container"},S=c(()=>o("i",{class:"awsui-iconfont"},"\uE6E9",-1)),R={class:"main-container"},U=["onClick"],j={class:"drawer-body-container"},q={class:"drawer-body-header"},x=c(()=>o("span",null,[o("i",{class:"awsui-iconfont",style:{color:"#0d84ff"}},"\uE635"),M(" \u603B\u8BA1: ")],-1)),z={class:"drawer-body-main"},G=["onClick"];function J(e,a,C,F,p,m){const n=d("el-input"),s=d("el-table-column"),l=d("el-table"),h=d("el-drawer");return N(),y(A,null,[o("div",$,[o("div",{class:"back-to-home",onClick:a[0]||(a[0]=(...t)=>e.backToHomeFn&&e.backToHomeFn(...t))},H),o("div",L,[o("span",null," \u5171\u6709"+B(e.tableData.length)+"\u6761\u8BB0\u5F55 ",1),o("span",null,[u(n,{modelValue:e.searchText,"onUpdate:modelValue":a[1]||(a[1]=t=>e.searchText=t),placeholder:"\u8BF7\u8F93\u5165\u6D41\u7A0B\u540D\u79F0\u8FDB\u884C\u641C\u7D22"},{prefix:r(()=>[S]),_:1},8,["modelValue"])])])]),o("div",R,[u(l,{ref:"tableRef",data:e.tableData,style:{width:"100%",padding:"0 20px"}},{default:r(()=>[u(s,{prop:"number",label:"\u5E8F\u53F7","min-width":"180"}),u(s,{prop:"convertType",label:"\u7C7B\u578B","min-width":"180","column-key":"convertType",filters:e.convertTypeFilters,"filter-method":e.filterHandlerFn},null,8,["filters","filter-method"]),u(s,{prop:"operatorName",label:"\u64CD\u4F5C\u4EBA","min-width":"180"}),u(s,{prop:"operationTime",label:"\u64CD\u4F5C\u65F6\u95F4","min-width":"180"}),u(s,{prop:"convertCount",label:"\u8F6C\u6362\u6570\u91CF","min-width":"180"}),u(s,{prop:"processNames",label:"\u8F6C\u6362\u6D41\u7A0B","min-width":"400"}),u(s,{label:"\u64CD\u4F5C","min-width":"180"},{default:r(t=>[o("span",{style:{color:"rgb(80,168,246)",cursor:"pointer"},onClick:i=>e.openProcessListFn(t.$index,t.row)},"\u67E5\u770B\u6D41\u7A0B\u6E05\u5355",8,U)]),_:1})]),_:1},8,["data"]),u(h,{"custom-class":"history-detail-drawer",modelValue:e.drawer.visible,"onUpdate:modelValue":a[2]||(a[2]=t=>e.drawer.visible=t),title:e.drawer.title,direction:e.drawer.direction,"close-on-click-modal":!1,"close-on-press-escape":!1,size:"45%"},{default:r(()=>[o("div",j,[o("div",q,[x,o("span",null,B(e.drawer.processList.length)+"\u652F\u6D41\u7A0B ",1)]),o("div",z,[u(l,{data:e.drawer.processList,style:{width:"100%"},"header-row-style":e.drawer.headerRowStyle},{default:r(()=>[u(s,{prop:"number",label:"\u5E8F\u53F7","min-width":"180"}),u(s,{prop:"processName",label:"\u6D41\u7A0B\u540D\u79F0","min-width":"180"}),u(s,{label:"\u64CD\u4F5C"},{default:r(t=>[o("span",{style:{color:"rgb(80,168,246)",cursor:"pointer"},onClick:i=>e.openProcessListFn(t.$index,t.row)},"\u6253\u5F00\u6587\u4EF6",8,G)]),_:1})]),_:1},8,["data","header-row-style"])])])]),_:1},8,["modelValue","title","direction"])])],64)}var O=_(k,[["render",J],["__scopeId","data-v-344d8a88"]]);export{O as default};

View File

@ -60,7 +60,7 @@ public class Report1Gener {
private UserContext userContext = null;
GenerLogExd log = new GenerLogExd();
//word换行符
private final String WRAPSTRING = "</w:t></w:r></w:p><w:p><w:pPr><w:keepNext w:val=\"off\"/><w:keepLines w:val=\"off\"/><w:pageBreakBefore w:val=\"off\"/><w:widowControl/><w:kinsoku/><w:wordWrap/><w:overflowPunct/><w:topLinePunct w:val=\"off\"/><w:autoSpaceDE/><w:autoSpaceDN/><w:adjustRightInd/><w:snapToGrid/><w:spacing w:line=\"240\" w:line-rule=\"auto\"/><w:ind w:left=\"56\" w:right=\"0\" w:right-chars=\"0\" w:first-line=\"0\" w:first-line-chars=\"0\"/><w:jc w:val=\"both\"/><w:textAlignment w:val=\"auto\"/><w:outlineLvl w:val=\"9\"/><w:rPr><w:rFonts w:ascii=\"宋体\" w:h-ansi=\"宋体\" w:fareast=\"宋体\" w:cs=\"宋体\" w:hint=\"fareast\"/><w:color w:val=\"auto\"/><w:sz w:val=\"21\"/><w:sz-cs w:val=\"21\"/><w:lang w:val=\"EN-US\"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii=\"宋体\" w:h-ansi=\"宋体\" w:fareast=\"宋体\" w:cs=\"宋体\" w:hint=\"fareast\"/><w:color w:val=\"auto\"/><w:sz w:val=\"21\"/><w:sz-cs w:val=\"21\"/><w:lang w:val=\"EN-US\"/></w:rPr><w:t>";
private final String WRAPSTRING = "</w:t></w:r></w:p><w:p><w:pPr><w:keepNext w:val=\"off\"/><w:keepLines w:val=\"off\"/><w:pageBreakBefore w:val=\"off\"/><w:widowControl/><w:kinsoku/><w:wordWrap/><w:overflowPunct/><w:topLinePunct w:val=\"off\"/><w:autoSpaceDE/><w:autoSpaceDN/><w:adjustRightInd/><w:snapToGrid/><w:spacing w:line=\"240\" w:line-rule=\"auto\"/><w:ind w:left=\"0\" w:right=\"0\" w:right-chars=\"0\" w:first-line=\"0\" w:first-line-chars=\"0\"/><w:jc w:val=\"both\"/><w:textAlignment w:val=\"auto\"/><w:outlineLvl w:val=\"9\"/><w:rPr><w:rFonts w:ascii=\"宋体\" w:h-ansi=\"宋体\" w:fareast=\"宋体\" w:cs=\"宋体\" w:hint=\"fareast\"/><w:color w:val=\"auto\"/><w:sz w:val=\"21\"/><w:sz-cs w:val=\"21\"/><w:lang w:val=\"EN-US\"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii=\"宋体\" w:h-ansi=\"宋体\" w:fareast=\"宋体\" w:cs=\"宋体\" w:hint=\"fareast\"/><w:color w:val=\"auto\"/><w:sz w:val=\"21\"/><w:sz-cs w:val=\"21\"/><w:lang w:val=\"EN-US\"/></w:rPr><w:t>";
public Report1Gener() {
}
@ -511,6 +511,26 @@ public class Report1Gener {
// 修订记录
dataMap.put("version_history_table", getVersionHistoryTable(repositoryModel));
// 附则处理
List<String> T_supplementary_articles_table = new ArrayList<>();
String [] tmp = dataMap.getString("pl_T_supplementary_articles").split("\n");
for (int i = 0; i < tmp.length; i++) {
if (UtilString.isNotEmpty(tmp[i])) {
T_supplementary_articles_table.add(tmp[i]);
}
}
dataMap.put("T_supplementary_articles_table", T_supplementary_articles_table);// 换行
// 目的处理
List<String> goal_table = new ArrayList<>();
String [] tmp2 = dataMap.getString("pl_goal").split("\n");
for (int i = 0; i < tmp2.length; i++) {
if (UtilString.isNotEmpty(tmp2[i])) {
goal_table.add(tmp2[i]);
}
}
dataMap.put("goal_table", goal_table);
//术语
dataMap.put("term_table", termTable);//table4
dataMap.put("term_table_count", termTable.size());//table4

View File

@ -58,7 +58,7 @@ public class Report2Gener {
private UserContext userContext = null;
GenerLogExd log = new GenerLogExd();
//word换行符
private final String WRAPSTRING = "</w:t></w:r></w:p><w:p><w:pPr><w:keepNext w:val=\"off\"/><w:keepLines w:val=\"off\"/><w:pageBreakBefore w:val=\"off\"/><w:widowControl/><w:kinsoku/><w:wordWrap/><w:overflowPunct/><w:topLinePunct w:val=\"off\"/><w:autoSpaceDE/><w:autoSpaceDN/><w:adjustRightInd/><w:snapToGrid/><w:spacing w:line=\"240\" w:line-rule=\"auto\"/><w:ind w:left=\"56\" w:right=\"0\" w:right-chars=\"0\" w:first-line=\"0\" w:first-line-chars=\"0\"/><w:jc w:val=\"both\"/><w:textAlignment w:val=\"auto\"/><w:outlineLvl w:val=\"9\"/><w:rPr><w:rFonts w:ascii=\"宋体\" w:h-ansi=\"宋体\" w:fareast=\"宋体\" w:cs=\"宋体\" w:hint=\"fareast\"/><w:color w:val=\"auto\"/><w:sz w:val=\"21\"/><w:sz-cs w:val=\"21\"/><w:lang w:val=\"EN-US\"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii=\"宋体\" w:h-ansi=\"宋体\" w:fareast=\"宋体\" w:cs=\"宋体\" w:hint=\"fareast\"/><w:color w:val=\"auto\"/><w:sz w:val=\"21\"/><w:sz-cs w:val=\"21\"/><w:lang w:val=\"EN-US\"/></w:rPr><w:t>";
private final String WRAPSTRING = "</w:t></w:r></w:p><w:p><w:pPr><w:keepNext w:val=\"off\"/><w:keepLines w:val=\"off\"/><w:pageBreakBefore w:val=\"off\"/><w:widowControl/><w:kinsoku/><w:wordWrap/><w:overflowPunct/><w:topLinePunct w:val=\"off\"/><w:autoSpaceDE/><w:autoSpaceDN/><w:adjustRightInd/><w:snapToGrid/><w:spacing w:line=\"240\" w:line-rule=\"auto\"/><w:ind w:left=\"0\" w:right=\"0\" w:right-chars=\"0\" w:first-line=\"0\" w:first-line-chars=\"0\"/><w:jc w:val=\"both\"/><w:textAlignment w:val=\"auto\"/><w:outlineLvl w:val=\"9\"/><w:rPr><w:rFonts w:ascii=\"宋体\" w:h-ansi=\"宋体\" w:fareast=\"宋体\" w:cs=\"宋体\" w:hint=\"fareast\"/><w:color w:val=\"auto\"/><w:sz w:val=\"21\"/><w:sz-cs w:val=\"21\"/><w:lang w:val=\"EN-US\"/></w:rPr></w:pPr><w:r><w:rPr><w:rFonts w:ascii=\"宋体\" w:h-ansi=\"宋体\" w:fareast=\"宋体\" w:cs=\"宋体\" w:hint=\"fareast\"/><w:color w:val=\"auto\"/><w:sz w:val=\"21\"/><w:sz-cs w:val=\"21\"/><w:lang w:val=\"EN-US\"/></w:rPr><w:t>";
public Report2Gener() {
}
@ -490,6 +490,26 @@ public class Report2Gener {
// 修订记录
dataMap.put("version_history_table", getVersionHistoryTable(repositoryModel));
// 附则处理
List<String> T_supplementary_articles_table = new ArrayList<>();
String [] tmp = dataMap.getString("pl_T_supplementary_articles").split("\n");
for (int i = 0; i < tmp.length; i++) {
if (UtilString.isNotEmpty(tmp[i])) {
T_supplementary_articles_table.add(tmp[i]);
}
}
dataMap.put("T_supplementary_articles_table", T_supplementary_articles_table);// 换行
// 目的处理
List<String> goal_table = new ArrayList<>();
String [] tmp2 = dataMap.getString("pl_goal").split("\n");
for (int i = 0; i < tmp2.length; i++) {
if (UtilString.isNotEmpty(tmp2[i])) {
goal_table.add(tmp2[i]);
}
}
dataMap.put("goal_table", goal_table);
//术语
dataMap.put("term_table", termTable);//table4
dataMap.put("term_table_count", termTable.size());//table4

View File

@ -328,7 +328,7 @@ public class PrReportComment {
int width = sourceImg.getWidth();
int height = sourceImg.getHeight();
// 如果宽高比大于最大值的宽高比说明图形较宽需判断宽度是否大于最大值
if (width / height > OutputWordUtil.PL_DIAGRAM_MAX_WIDTH / maxHeight) {
/*if (width / height > OutputWordUtil.PL_DIAGRAM_MAX_WIDTH / maxHeight) {
if (width > OutputWordUtil.PL_DIAGRAM_MAX_WIDTH) {
newWidth = OutputWordUtil.PL_DIAGRAM_MAX_WIDTH;
newHeight = height * OutputWordUtil.PL_DIAGRAM_MAX_WIDTH / width;
@ -338,12 +338,27 @@ public class PrReportComment {
}
} else {// 如果宽高比小于最大值的宽高比说明图形较高需判断高度是否大于最大值
if (height > maxHeight) {
newWidth = width * maxHeight / height;
newWidth = width * maxHeight / height - 80;
newHeight = maxHeight;
} else {
newWidth = width;
newHeight = height;
}
}*/
//按照宽高超宽最大比例缩小width与height
if (width> OutputWordUtil.PL_DIAGRAM_MAX_WIDTH || height>maxHeight){
double heightRate = (double) height / maxHeight;
double widthRate = (double) width / OutputWordUtil.PL_DIAGRAM_MAX_WIDTH;
if (widthRate>heightRate){
newWidth = (int) (width/widthRate);
newHeight = (int) (height/widthRate);
}else {
newWidth = (int) (width/heightRate);
newHeight = (int) (height/heightRate);
}
}else {
newWidth = width;
newHeight = height;
}
} catch (FileNotFoundException e) {
e.printStackTrace();

View File

@ -4250,6 +4250,7 @@ y7fdOgAAAABJRU5ErkJggk==
</w:r>
<aml:annotation aml:id="0" w:type="Word.Bookmark.End"/>
</w:p>
<#list goal_table as table1>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00696C8C" wsp:rsidRDefault="00696C8C" wsp:rsidP="00783EFF">
<w:pPr>
<w:pStyle w:val="IDSTYLECONTEXTINDENT"/>
@ -4263,9 +4264,10 @@ y7fdOgAAAABJRU5ErkJggk==
<w:rPr>
<w:rFonts w:hint="fareast"/>
</w:rPr>
<w:t>${pl_goal}</w:t>
<w:t>${table1}</w:t>
</w:r>
</w:p>
</#list>
</wx:sub-section>
<wx:sub-section>
<w:p wsp:rsidR="00AC2941" wsp:rsidRDefault="00AC2941">
@ -5483,7 +5485,7 @@ y7fdOgAAAABJRU5ErkJggk==
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
<w:t>${table2.shape_activity_description}</w:t>
<w:t>${table2.shape_name}</w:t>
</w:r>
</w:p>
</w:tc>
@ -7155,8 +7157,10 @@ y7fdOgAAAABJRU5ErkJggk==
</w:r>
<aml:annotation aml:id="8" w:type="Word.Bookmark.End"/>
</w:p>
<w:p wsp:rsidR="00546297" wsp:rsidRPr="00783EFF" wsp:rsidRDefault="00140F58" wsp:rsidP="00783EFF">
<#list T_supplementary_articles_table as table1>
<w:p wsp:rsidR="00546297" wsp:rsidRPr="00783EFF" wsp:rsidRDefault="00140F58" wsp:rsidP="003B260F">
<w:pPr>
<w:spacing w:line="360" w:line-rule="auto"/>
<w:ind w:first-line-chars="200" w:first-line="480"/>
<w:rPr>
<w:rFonts w:ascii="宋体" w:h-ansi="宋体"/>
@ -7168,9 +7172,10 @@ y7fdOgAAAABJRU5ErkJggk==
<w:rFonts w:ascii="宋体" w:h-ansi="宋体"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>${pl_T_supplementary_articles}</w:t>
<w:t>${table1}</w:t>
</w:r>
</w:p>
</#list>
<w:p wsp:rsidR="00140F58" wsp:rsidRPr="00783EFF" wsp:rsidRDefault="00140F58">
<w:pPr>
<w:rPr>

View File

@ -4311,6 +4311,7 @@ y7fdOgAAAABJRU5ErkJggk==
</w:r>
<aml:annotation aml:id="0" w:type="Word.Bookmark.End"/>
</w:p>
<#list goal_table as table1>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00696C8C" wsp:rsidRDefault="00696C8C" wsp:rsidP="00BA58C7">
<w:pPr>
<w:pStyle w:val="IDSTYLECONTEXTINDENT"/>
@ -4324,9 +4325,10 @@ y7fdOgAAAABJRU5ErkJggk==
<w:rPr>
<w:rFonts w:hint="fareast"/>
</w:rPr>
<w:t>${pl_goal}</w:t>
<w:t>${table1}</w:t>
</w:r>
</w:p>
</#list>
</wx:sub-section>
<wx:sub-section>
<w:p wsp:rsidR="00AC2941" wsp:rsidRDefault="00AC2941">
@ -6926,6 +6928,7 @@ y7fdOgAAAABJRU5ErkJggk==
</w:r>
<aml:annotation aml:id="8" w:type="Word.Bookmark.End"/>
</w:p>
<#list T_supplementary_articles_table as table1>
<w:p wsp:rsidR="00546297" wsp:rsidRPr="000D3488" wsp:rsidRDefault="00140F58" wsp:rsidP="00C14A28">
<w:pPr>
<w:spacing w:line="360" w:line-rule="auto"/>
@ -6940,9 +6943,10 @@ y7fdOgAAAABJRU5ErkJggk==
<w:rFonts w:ascii="宋体" w:h-ansi="宋体"/>
<wx:font wx:val="宋体"/>
</w:rPr>
<w:t>${pl_T_supplementary_articles}</w:t>
<w:t>${table1}</w:t>
</w:r>
</w:p>
</#list>
<w:p wsp:rsidR="00140F58" wsp:rsidRPr="00543C89" wsp:rsidRDefault="00140F58" wsp:rsidP="00C14A28">
<w:pPr>
<w:spacing w:line="360" w:line-rule="auto"/>

View File

@ -1029,20 +1029,21 @@ public class PALRepositoryListWeb extends ActionWeb {
// 合并列的信息
Map columMap = new HashMap();
int count = 0;
HSSFCellStyle styleData = wb.createCellStyle();
styleData.setBorderBottom(BorderStyle.THIN);
styleData.setBottomBorderColor(HSSFColor.BLACK.index);
styleData.setBorderLeft(BorderStyle.THIN);
styleData.setLeftBorderColor(HSSFColor.BLACK.index);
styleData.setBorderRight(BorderStyle.THIN);
styleData.setRightBorderColor(HSSFColor.BLACK.index);
styleData.setBorderTop(BorderStyle.THIN);
styleData.setTopBorderColor(HSSFColor.BLACK.index);
for (int i = 0; i < palList.size(); i++) {
PALRepositoryModel model = palList.get(i);
rowIndex++;
row = sheet.createRow(rowIndex);
// 数据记录
HSSFCellStyle styleData = wb.createCellStyle();
styleData.setBorderBottom(BorderStyle.THIN);
styleData.setBottomBorderColor(HSSFColor.BLACK.index);
styleData.setBorderLeft(BorderStyle.THIN);
styleData.setLeftBorderColor(HSSFColor.BLACK.index);
styleData.setBorderRight(BorderStyle.THIN);
styleData.setRightBorderColor(HSSFColor.BLACK.index);
styleData.setBorderTop(BorderStyle.THIN);
styleData.setTopBorderColor(HSSFColor.BLACK.index);
short col = getExcelColor(model.getColor());
if (col > 0) {
styleData.setFillPattern(FillPatternType.SOLID_FOREGROUND);

View File

@ -1,12 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<definitions targetNamespace="http://www.omg.org/spec/BPMN/20100524/MODEL" aws:signature="tGOmxiTgjT/77UoYpSlq8Vc+hHPRoJWHdZexXc7zEpYuMNdhvSICeJnlc/RzRHGr3OfezxSgxEQHIkvKTq5mOwJFmiUVbR0nD6FV9hHlBhrd8+8+Bsdm9xFLYYggrWg2" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:aws="http://www.actionsoft.com.cn/bpmn" xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL">
<collaboration id="obj_583fad7990a5429c9c5f28a986c4b80e">
<participant aws:poolType="verticalPool" id="obj_c9fc680997d0000145b7c7801c10a4f0" name="MA绩效发布审批流程" processRef="obj_06b3e1343f1e426aba2fc5fee1251c0d"/>
</collaboration>
<process id="obj_06b3e1343f1e426aba2fc5fee1251c0d" name="MA绩效发布审批流程" isClosed="false" processType="None" isExecutable="true">
<documentation/>
<extensionElements>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-14 20:19:42" historyMaxVersion="12" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-21 10:08:55" historyMaxVersion="13" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterCompleteEvent" event="PROCESS_AFTER_COMPLETE"/>
</aws:extendProcess>
</extensionElements>
<laneSet id="obj_f6063fbe7fff4e94b24119d7f948f282">
<lane id="obj_c9fc680a59d0000182df1f30d224ef40" name=" 发起/结束">
<flowNodeRef>obj_c9f7a43470900001b39c193716e0fbf0</flowNodeRef>
<flowNodeRef>obj_c91707a884604e36bd9e765c36465108</flowNodeRef>
<flowNodeRef>obj_7ceddacd0fcd4950a876a2082cf0336e</flowNodeRef>
</lane>
</laneSet>
<sequenceFlow id="obj_c9f7a4341230000175b616d7129016a0" sourceRef="obj_7ceddacd0fcd4950a876a2082cf0336e" targetRef="obj_c9f7a43470900001b39c193716e0fbf0">
<extensionElements>
<aws:extendSequenceFlow orderIndex="2" compensateSQL=""/>
@ -113,7 +123,7 @@
<bpmndi:BPMNPlane id="AWS_obj_06b3e1343f1e426aba2fc5fee1251c0d" bpmnElement="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<bpmndi:BPMNEdge id="AWS_obj_c9f7a4341230000175b616d7129016a0" bpmnElement="obj_c9f7a4341230000175b616d7129016a0">
<di:extension>
<aws:linkerExtension from="{&quot;x&quot;:340,&quot;y&quot;:298,&quot;angle&quot;:3.141592653589793,&quot;id&quot;:&quot;obj_7ceddacd0fcd4950a876a2082cf0336e&quot;}" to="{&quot;x&quot;:475,&quot;y&quot;:298,&quot;angle&quot;:0,&quot;id&quot;:&quot;obj_c9f7a43470900001b39c193716e0fbf0&quot;}" linkerType="broken" points="[{&quot;x&quot;:407.5,&quot;y&quot;:298},{&quot;x&quot;:407.5,&quot;y&quot;:298}]" parent="" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<aws:linkerExtension from="{&quot;x&quot;:546,&quot;y&quot;:307,&quot;angle&quot;:3.141592653589793,&quot;id&quot;:&quot;obj_7ceddacd0fcd4950a876a2082cf0336e&quot;}" to="{&quot;x&quot;:681,&quot;y&quot;:307,&quot;angle&quot;:0,&quot;id&quot;:&quot;obj_c9f7a43470900001b39c193716e0fbf0&quot;}" linkerType="broken" points="[{&quot;x&quot;:613.5,&quot;y&quot;:307},{&quot;x&quot;:613.5,&quot;y&quot;:307}]" parent="" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<aws:elementNodeType>
<aws:nodeType>linker</aws:nodeType>
<aws:name/>
@ -126,12 +136,32 @@
<aws:dataAttributes>[{"name":"AWSProperties","type":"string","category":"default","value":""}]</aws:dataAttributes>
</aws:elementSchema>
</di:extension>
<di:waypoint x="340.0" y="298.0"/>
<di:waypoint x="475.0" y="298.0"/>
<di:waypoint x="546.0" y="307.0"/>
<di:waypoint x="681.0" y="307.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds x="0.0" y="0.0" width="0.0" height="0.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="AWS_obj_c9fc680997d0000145b7c7801c10a4f0" bpmnElement="obj_c9fc680997d0000145b7c7801c10a4f0" isHorizontal="false" isMarkerVisible="false">
<di:extension>
<aws:nodeExtension anchors="[]" attribute="{&quot;container&quot;:true,&quot;rotatable&quot;:false,&quot;visible&quot;:true,&quot;editable&quot;:true,&quot;linkable&quot;:false,&quot;markerOffset&quot;:5}" category="lane" children="[&quot;obj_c9fc680a59d0000182df1f30d224ef40&quot;]" fillStyle="{&quot;color&quot;:&quot;255,255,255&quot;,&quot;type&quot;:&quot;solid&quot;}" groupName="" link="" parent="" path="[{&quot;lineStyle&quot;:{&quot;lineStyle&quot;:&quot;solid&quot;},&quot;fillStyle&quot;:{&quot;type&quot;:&quot;none&quot;},&quot;actions&quot;:[{&quot;x&quot;:&quot;0&quot;,&quot;action&quot;:&quot;move&quot;,&quot;y&quot;:&quot;0&quot;},{&quot;x&quot;:&quot;w&quot;,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:&quot;0&quot;},{&quot;x&quot;:&quot;w&quot;,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:&quot;h&quot;},{&quot;x&quot;:&quot;0&quot;,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:&quot;h&quot;},{&quot;action&quot;:&quot;close&quot;}]},{&quot;lineStyle&quot;:{&quot;lineStyle&quot;:&quot;solid&quot;},&quot;fillStyle&quot;:{&quot;type&quot;:&quot;none&quot;},&quot;actions&quot;:[{&quot;x&quot;:0,&quot;action&quot;:&quot;move&quot;,&quot;y&quot;:0},{&quot;x&quot;:&quot;w&quot;,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:0},{&quot;x&quot;:&quot;w&quot;,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:40},{&quot;x&quot;:0,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:40},{&quot;action&quot;:&quot;close&quot;}]}]" resizeDir="[&quot;l&quot;,&quot;b&quot;,&quot;r&quot;]" textBlock="{&quot;w&quot;:742,&quot;x&quot;:10,&quot;h&quot;:40,&quot;y&quot;:0}" shapeStyle="{&quot;alpha&quot;:1}" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<aws:elementNodeType>
<aws:nodeType>verticalPool</aws:nodeType>
<aws:name/>
<aws:group/>
</aws:elementNodeType>
</aws:nodeExtension>
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:6,&quot;w&quot;:762,&quot;x&quot;:109,&quot;h&quot;:540,&quot;y&quot;:65,&quot;angle&quot;:0}" orderIndex="0" defaultLine="" bpmnName="verticalPool" text="MA绩效发布审批流程" title="MA绩效发布审批流程" name="verticalPool">
<aws:fontStyle>{"orientation":"vertical","fontFamily":"Arial","size":16,"color":"50,50,50","underline":false,"textAlign":"center","bold":false,"italic":false,"vAlign":"middle"}</aws:fontStyle>
<aws:lineStyle>{"lineStyle":"solid","lineColor":"50,50,50","lineWidth":2}</aws:lineStyle>
<aws:dataAttributes>[]</aws:dataAttributes>
</aws:elementSchema>
</di:extension>
<dc:Bounds x="109.0" y="65.0" width="762.0" height="540.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds x="109.0" y="65.0" width="742.0" height="40.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="AWS_obj_c9f7a43470900001b39c193716e0fbf0" bpmnElement="obj_c9f7a43470900001b39c193716e0fbf0" isHorizontal="false" isMarkerVisible="false">
<di:extension>
<aws:nodeExtension anchors="[{&quot;x&quot;:&quot;w/2&quot;,&quot;y&quot;:&quot;0&quot;},{&quot;x&quot;:&quot;w/2&quot;,&quot;y&quot;:&quot;h&quot;},{&quot;x&quot;:&quot;0&quot;,&quot;y&quot;:&quot;h/2&quot;},{&quot;x&quot;:&quot;w&quot;,&quot;y&quot;:&quot;h/2&quot;}]" attribute="{&quot;container&quot;:false,&quot;rotatable&quot;:false,&quot;visible&quot;:true,&quot;editable&quot;:true,&quot;linkable&quot;:true,&quot;markerOffset&quot;:5}" category="bpmn" children="[]" fillStyle="{&quot;color&quot;:&quot;255,255,255&quot;,&quot;endColor&quot;:&quot;160,0,0&quot;,&quot;beginColor&quot;:&quot;255,0,0&quot;,&quot;angle&quot;:0,&quot;gradientType&quot;:&quot;linear&quot;,&quot;type&quot;:&quot;gradient&quot;}" groupName="endEvent" link="" parent="" path="[{&quot;lineStyle&quot;:{&quot;lineStyle&quot;:&quot;solid&quot;,&quot;lineWidth&quot;:&quot;lineWidth + 2&quot;},&quot;actions&quot;:[{&quot;x&quot;:&quot;0&quot;,&quot;action&quot;:&quot;move&quot;,&quot;y&quot;:&quot;h/2&quot;},{&quot;y1&quot;:&quot;-h/6&quot;,&quot;x&quot;:&quot;w&quot;,&quot;action&quot;:&quot;curve&quot;,&quot;x1&quot;:&quot;0&quot;,&quot;y2&quot;:&quot;-h/6&quot;,&quot;y&quot;:&quot;h/2&quot;,&quot;x2&quot;:&quot;w&quot;},{&quot;y1&quot;:&quot;h+h/6&quot;,&quot;x&quot;:&quot;0&quot;,&quot;action&quot;:&quot;curve&quot;,&quot;x1&quot;:&quot;w&quot;,&quot;y2&quot;:&quot;h+h/6&quot;,&quot;y&quot;:&quot;h/2&quot;,&quot;x2&quot;:&quot;0&quot;},{&quot;action&quot;:&quot;close&quot;}]}]" resizeDir="[&quot;tl&quot;,&quot;tr&quot;,&quot;br&quot;,&quot;bl&quot;]" textBlock="{&quot;w&quot;:120,&quot;x&quot;:-40,&quot;h&quot;:30,&quot;y&quot;:40}" shapeStyle="{&quot;alpha&quot;:1}" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
@ -141,20 +171,20 @@
<aws:group/>
</aws:elementNodeType>
</aws:nodeExtension>
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:5,&quot;w&quot;:40,&quot;x&quot;:475,&quot;h&quot;:40,&quot;y&quot;:278,&quot;angle&quot;:0}" orderIndex="0" defaultLine="" bpmnName="endEvent" text="结束事件" title="结束事件" name="endEvent">
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:5,&quot;w&quot;:40,&quot;x&quot;:681,&quot;h&quot;:40,&quot;y&quot;:287,&quot;angle&quot;:0}" orderIndex="0" defaultLine="" bpmnName="endEvent" text="结束事件" title="结束事件" name="endEvent">
<aws:fontStyle>{"orientation":"vertical","fontFamily":"Arial","size":13,"color":"50,50,50","underline":false,"textAlign":"center","bold":false,"italic":false,"vAlign":"middle"}</aws:fontStyle>
<aws:lineStyle>{"lineStyle":"solid","lineColor":"100,0,0","lineWidth":2}</aws:lineStyle>
<aws:dataAttributes>[{"name":"Name","id":"obj_c9f7a4347090000155e010d0112c9790","type":"string","category":"default","value":""},{"name":"documentation","id":"obj_c9f7a4347090000170e6c567701015de","type":"string","category":"default","value":""},{"name":"AWSProperties","id":"obj_c9f7a43470900001268d231016c01f14","type":"string","category":"default","value":""}]</aws:dataAttributes>
</aws:elementSchema>
</di:extension>
<dc:Bounds x="475.0" y="278.0" width="40.0" height="40.0"/>
<dc:Bounds x="681.0" y="287.0" width="40.0" height="40.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds x="475.0" y="278.0" width="120.0" height="30.0"/>
<dc:Bounds x="681.0" y="287.0" width="120.0" height="30.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="AWS_obj_88d7c4f11bc34e27b339725dae89d4f2" bpmnElement="obj_88d7c4f11bc34e27b339725dae89d4f2">
<di:extension>
<aws:linkerExtension from="{&quot;x&quot;:154,&quot;y&quot;:298,&quot;angle&quot;:3.141592653589793,&quot;id&quot;:&quot;obj_c91707a884604e36bd9e765c36465108&quot;}" to="{&quot;x&quot;:240,&quot;y&quot;:298,&quot;angle&quot;:0,&quot;id&quot;:&quot;obj_7ceddacd0fcd4950a876a2082cf0336e&quot;}" linkerType="broken" points="[{&quot;x&quot;:197,&quot;y&quot;:298},{&quot;x&quot;:197,&quot;y&quot;:298}]" parent="" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<aws:linkerExtension from="{&quot;x&quot;:276,&quot;y&quot;:307,&quot;angle&quot;:3.141592653589793,&quot;id&quot;:&quot;obj_c91707a884604e36bd9e765c36465108&quot;}" to="{&quot;x&quot;:446,&quot;y&quot;:307,&quot;angle&quot;:0,&quot;id&quot;:&quot;obj_7ceddacd0fcd4950a876a2082cf0336e&quot;}" linkerType="broken" points="[{&quot;x&quot;:361,&quot;y&quot;:307},{&quot;x&quot;:361,&quot;y&quot;:307}]" parent="" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<aws:elementNodeType>
<aws:nodeType>linker</aws:nodeType>
<aws:name/>
@ -167,8 +197,8 @@
<aws:dataAttributes>[{"name":"AWSProperties","type":"string","category":"default","value":""}]</aws:dataAttributes>
</aws:elementSchema>
</di:extension>
<di:waypoint x="154.0" y="298.0"/>
<di:waypoint x="240.0" y="298.0"/>
<di:waypoint x="276.0" y="307.0"/>
<di:waypoint x="446.0" y="307.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds x="0.0" y="0.0" width="0.0" height="0.0"/>
</bpmndi:BPMNLabel>
@ -182,15 +212,15 @@
<aws:group/>
</aws:elementNodeType>
</aws:nodeExtension>
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:1,&quot;w&quot;:40,&quot;x&quot;:114,&quot;h&quot;:40,&quot;y&quot;:278,&quot;angle&quot;:0}" orderIndex="0" defaultLine="" bpmnName="startEvent" text="开始事件" title="开始事件" name="startEvent">
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:1,&quot;w&quot;:40,&quot;x&quot;:236,&quot;h&quot;:40,&quot;y&quot;:287,&quot;angle&quot;:0}" orderIndex="0" defaultLine="" bpmnName="startEvent" text="开始事件" title="开始事件" name="startEvent">
<aws:fontStyle>{"orientation":"vertical","fontFamily":"Arial","size":13,"color":"50,50,50","underline":false,"textAlign":"center","bold":false,"italic":false,"vAlign":"middle"}</aws:fontStyle>
<aws:lineStyle>{"lineStyle":"solid","lineColor":"0,100,0","lineWidth":2}</aws:lineStyle>
<aws:dataAttributes>[{"name":"Name","id":"obj_c9e5a2d184600001fe401a00122018f6","type":"string","category":"default","value":""},{"name":"documentation","id":"obj_c9e5a2d184600001c6881ee01462b880","type":"string","category":"default","value":""},{"name":"AWSProperties","id":"obj_c9e5a2d1846000013910d33e8a031cd5","type":"string","category":"default","value":""}]</aws:dataAttributes>
</aws:elementSchema>
</di:extension>
<dc:Bounds x="114.0" y="278.0" width="40.0" height="40.0"/>
<dc:Bounds x="236.0" y="287.0" width="40.0" height="40.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds x="114.0" y="278.0" width="120.0" height="30.0"/>
<dc:Bounds x="236.0" y="287.0" width="120.0" height="30.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="AWS_obj_7ceddacd0fcd4950a876a2082cf0336e" bpmnElement="obj_7ceddacd0fcd4950a876a2082cf0336e" isHorizontal="false" isMarkerVisible="false">
@ -202,15 +232,35 @@
<aws:group/>
</aws:elementNodeType>
</aws:nodeExtension>
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:3,&quot;w&quot;:100,&quot;x&quot;:240,&quot;h&quot;:70,&quot;y&quot;:263,&quot;angle&quot;:0}" orderIndex="1" defaultLine="" bpmnName="userTask" text="发起人" title="发起人" name="userTask">
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:3,&quot;w&quot;:100,&quot;x&quot;:446,&quot;h&quot;:70,&quot;y&quot;:272,&quot;angle&quot;:0}" orderIndex="1" defaultLine="" bpmnName="userTask" text="发起人" title="发起人" name="userTask">
<aws:fontStyle>{"orientation":"vertical","fontFamily":"Arial","size":13,"color":"50,50,50","underline":false,"textAlign":"center","bold":false,"italic":false,"vAlign":"middle"}</aws:fontStyle>
<aws:lineStyle>{"lineStyle":"solid","lineColor":"0,100,0","lineWidth":2}</aws:lineStyle>
<aws:dataAttributes>[{"name":"Name","id":"obj_c9e5a2e257f00001bff1672025311529","type":"string","category":"default","value":""},{"name":"documentation","id":"obj_c9e5a2e257f00001645718e03d6a179b","type":"string","category":"default","value":""},{"name":"AWSProperties","id":"obj_c9e5a2e257f0000134bcea701aa29cc0","type":"string","category":"default","value":""},{"listItems":["","StandardLoopCharacteristics","MultipleLoopCharacteristics"],"name":"loopCharacteristics","id":"obj_c9e5a2e257f0000115171e874b111f82","type":"list","category":"default","value":""},{"name":"isSequantial","id":"obj_c9e5a2e257f0000154f81636114ee630","type":"boolean","category":"default","value":"false"},{"name":"isForCompensation","id":"obj_c9e5a2e257f00001438c1e901a9aa110","type":"boolean","category":"default","value":"false"},{"name":"renderings","id":"obj_c9e5a2e257f00001254318bb1340a5a0","type":"string","category":"default","value":""},{"name":"implementation","id":"obj_c9e5a2e257f00001339c172012301c31","type":"string","category":"default","value":""},{"name":"resources","id":"obj_c9e5a2e257f00001243e1850d469113f","type":"string","category":"default","value":""},{"name":"ioSpecification","id":"obj_c9e5a2e257f00001eec5147012208190","type":"string","category":"default","value":""},{"name":"dataInputAssociations","id":"obj_c9e5a2e257f000015a751170503be6e0","type":"string","category":"default","value":""},{"name":"dataOutputAssociations","id":"obj_c9e5a2e257f00001e41684dd19508740","type":"string","category":"default","value":""}]</aws:dataAttributes>
</aws:elementSchema>
</di:extension>
<dc:Bounds x="240.0" y="263.0" width="100.0" height="70.0"/>
<dc:Bounds x="446.0" y="272.0" width="100.0" height="70.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds x="240.0" y="263.0" width="80.0" height="70.0"/>
<dc:Bounds x="446.0" y="272.0" width="80.0" height="70.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="AWS_obj_c9fc680a59d0000182df1f30d224ef40" bpmnElement="obj_c9fc680a59d0000182df1f30d224ef40" isHorizontal="false" isMarkerVisible="false">
<di:extension>
<aws:nodeExtension anchors="[]" attribute="{&quot;container&quot;:true,&quot;rotatable&quot;:false,&quot;visible&quot;:true,&quot;editable&quot;:true,&quot;linkable&quot;:false,&quot;markerOffset&quot;:5}" category="lane" children="[]" fillStyle="{&quot;color&quot;:&quot;255,255,255&quot;,&quot;type&quot;:&quot;solid&quot;}" groupName="" link="" parent="obj_c9fc680997d0000145b7c7801c10a4f0" path="[{&quot;lineStyle&quot;:{&quot;lineStyle&quot;:&quot;solid&quot;},&quot;fillStyle&quot;:{&quot;type&quot;:&quot;none&quot;},&quot;actions&quot;:[{&quot;x&quot;:&quot;0&quot;,&quot;action&quot;:&quot;move&quot;,&quot;y&quot;:&quot;0&quot;},{&quot;x&quot;:&quot;w&quot;,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:&quot;0&quot;},{&quot;x&quot;:&quot;w&quot;,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:&quot;h&quot;},{&quot;x&quot;:&quot;0&quot;,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:&quot;h&quot;},{&quot;action&quot;:&quot;close&quot;}]},{&quot;lineStyle&quot;:{&quot;lineStyle&quot;:&quot;solid&quot;},&quot;fillStyle&quot;:{&quot;type&quot;:&quot;none&quot;},&quot;actions&quot;:[{&quot;x&quot;:0,&quot;action&quot;:&quot;move&quot;,&quot;y&quot;:0},{&quot;x&quot;:&quot;w&quot;,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:0},{&quot;x&quot;:&quot;w&quot;,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:30},{&quot;x&quot;:0,&quot;action&quot;:&quot;line&quot;,&quot;y&quot;:30},{&quot;action&quot;:&quot;close&quot;}]}]" resizeDir="[&quot;l&quot;,&quot;b&quot;,&quot;r&quot;]" textBlock="{&quot;w&quot;:742,&quot;x&quot;:10,&quot;h&quot;:30,&quot;y&quot;:0}" shapeStyle="{&quot;alpha&quot;:1}" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<aws:elementNodeType>
<aws:nodeType>verticalLane</aws:nodeType>
<aws:name/>
<aws:group/>
</aws:elementNodeType>
</aws:nodeExtension>
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:7,&quot;w&quot;:762,&quot;x&quot;:109,&quot;h&quot;:500,&quot;y&quot;:105,&quot;angle&quot;:0}" orderIndex="0" defaultLine="" bpmnName="verticalLane" text=" 发起/结束" title=" 发起/结束" name="verticalLane">
<aws:fontStyle>{"orientation":"vertical","fontFamily":"Arial","size":13,"color":"50,50,50","underline":false,"textAlign":"center","bold":false,"italic":false,"vAlign":"middle"}</aws:fontStyle>
<aws:lineStyle>{"lineStyle":"solid","lineColor":"50,50,50","lineWidth":2}</aws:lineStyle>
<aws:dataAttributes>[]</aws:dataAttributes>
</aws:elementSchema>
</di:extension>
<dc:Bounds x="109.0" y="105.0" width="762.0" height="500.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds x="109.0" y="105.0" width="742.0" height="30.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
</bpmndi:BPMNPlane>

View File

@ -1 +1 @@
{"CheckOutTime":"2022-09-18 17:49:40","CheckOutIP":"0:0:0:0:0:0:0:1","CheckOutUser":"admin","CheckOutState":"CHECKOUT"}
{"CheckOutTime":"2022-09-21 10:08:56","CheckOutIP":"0:0:0:0:0:0:0:1","CheckOutUser":"admin","CheckOutState":"CHECKOUT"}

View File

@ -3,7 +3,7 @@
<process id="obj_06b3e1343f1e426aba2fc5fee1251c0d" name="MA绩效发布审批流程" isClosed="false" processType="None" isExecutable="true">
<documentation/>
<extensionElements>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-14 20:19:11" historyMaxVersion="11" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-14 20:19:42" historyMaxVersion="12" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterCompleteEvent" event="PROCESS_AFTER_COMPLETE"/>
</aws:extendProcess>
</extensionElements>

View File

@ -3,7 +3,7 @@
<process id="obj_06b3e1343f1e426aba2fc5fee1251c0d" name="MA绩效发布审批流程" isClosed="false" processType="None" isExecutable="true">
<documentation/>
<extensionElements>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-06 14:51:34" historyMaxVersion="2" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-06 14:51:42" historyMaxVersion="3" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterDeleteListener" event="PROCESS_AFTER_DELETE"/>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishExecuteListenerInterfaceImpl" event="PROCESS_AFTER_COMPLETE"/>
</aws:extendProcess>
@ -111,7 +111,7 @@
<bpmndi:BPMNPlane id="AWS_obj_06b3e1343f1e426aba2fc5fee1251c0d" bpmnElement="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<bpmndi:BPMNEdge id="AWS_obj_c9f7a4341230000175b616d7129016a0" bpmnElement="obj_c9f7a4341230000175b616d7129016a0">
<di:extension>
<aws:linkerExtension from="{&quot;x&quot;:299,&quot;y&quot;:298,&quot;angle&quot;:3.141592653589793,&quot;id&quot;:&quot;obj_7ceddacd0fcd4950a876a2082cf0336e&quot;}" to="{&quot;x&quot;:475,&quot;y&quot;:298,&quot;angle&quot;:0,&quot;id&quot;:&quot;obj_c9f7a43470900001b39c193716e0fbf0&quot;}" linkerType="broken" points="[{&quot;x&quot;:387,&quot;y&quot;:298},{&quot;x&quot;:387,&quot;y&quot;:298}]" parent="" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<aws:linkerExtension from="{&quot;x&quot;:340,&quot;y&quot;:298,&quot;angle&quot;:3.141592653589793,&quot;id&quot;:&quot;obj_7ceddacd0fcd4950a876a2082cf0336e&quot;}" to="{&quot;x&quot;:475,&quot;y&quot;:298,&quot;angle&quot;:0,&quot;id&quot;:&quot;obj_c9f7a43470900001b39c193716e0fbf0&quot;}" linkerType="broken" points="[{&quot;x&quot;:407.5,&quot;y&quot;:298},{&quot;x&quot;:407.5,&quot;y&quot;:298}]" parent="" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<aws:elementNodeType>
<aws:nodeType>linker</aws:nodeType>
<aws:name/>
@ -124,33 +124,12 @@
<aws:dataAttributes>[{"name":"AWSProperties","type":"string","category":"default","value":""}]</aws:dataAttributes>
</aws:elementSchema>
</di:extension>
<di:waypoint x="299.0" y="298.0"/>
<di:waypoint x="340.0" y="298.0"/>
<di:waypoint x="475.0" y="298.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds x="0.0" y="0.0" width="0.0" height="0.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="AWS_obj_88d7c4f11bc34e27b339725dae89d4f2" bpmnElement="obj_88d7c4f11bc34e27b339725dae89d4f2">
<di:extension>
<aws:linkerExtension from="{&quot;x&quot;:154,&quot;y&quot;:298,&quot;angle&quot;:3.141592653589793,&quot;id&quot;:&quot;obj_c91707a884604e36bd9e765c36465108&quot;}" to="{&quot;x&quot;:199,&quot;y&quot;:298,&quot;angle&quot;:0,&quot;id&quot;:&quot;obj_7ceddacd0fcd4950a876a2082cf0336e&quot;}" linkerType="broken" points="[{&quot;x&quot;:176.5,&quot;y&quot;:298},{&quot;x&quot;:176.5,&quot;y&quot;:298}]" parent="" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<aws:elementNodeType>
<aws:nodeType>linker</aws:nodeType>
<aws:name/>
<aws:group/>
</aws:elementNodeType>
</aws:linkerExtension>
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:2}" orderIndex="1" defaultLine="" bpmnName="linker" text="" title="" name="linker">
<aws:fontStyle>{"fontFamily":"Arial","size":13,"color":"50,50,50","underline":false,"textAlign":"center","bold":false,"italic":false}</aws:fontStyle>
<aws:lineStyle>{"lineStyle":"solid","lineColor":"50,50,50","beginArrowStyle":"none","endArrowStyle":"solidArrow","lineWidth":2}</aws:lineStyle>
<aws:dataAttributes>[{"name":"AWSProperties","type":"string","category":"default","value":""}]</aws:dataAttributes>
</aws:elementSchema>
</di:extension>
<di:waypoint x="154.0" y="298.0"/>
<di:waypoint x="199.0" y="298.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds x="0.0" y="0.0" width="0.0" height="0.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="AWS_obj_c9f7a43470900001b39c193716e0fbf0" bpmnElement="obj_c9f7a43470900001b39c193716e0fbf0" isHorizontal="false" isMarkerVisible="false">
<di:extension>
<aws:nodeExtension anchors="[{&quot;x&quot;:&quot;w/2&quot;,&quot;y&quot;:&quot;0&quot;},{&quot;x&quot;:&quot;w/2&quot;,&quot;y&quot;:&quot;h&quot;},{&quot;x&quot;:&quot;0&quot;,&quot;y&quot;:&quot;h/2&quot;},{&quot;x&quot;:&quot;w&quot;,&quot;y&quot;:&quot;h/2&quot;}]" attribute="{&quot;container&quot;:false,&quot;rotatable&quot;:false,&quot;visible&quot;:true,&quot;editable&quot;:true,&quot;linkable&quot;:true,&quot;markerOffset&quot;:5}" category="bpmn" children="[]" fillStyle="{&quot;color&quot;:&quot;255,255,255&quot;,&quot;endColor&quot;:&quot;160,0,0&quot;,&quot;beginColor&quot;:&quot;255,0,0&quot;,&quot;angle&quot;:0,&quot;gradientType&quot;:&quot;linear&quot;,&quot;type&quot;:&quot;gradient&quot;}" groupName="endEvent" link="" parent="" path="[{&quot;lineStyle&quot;:{&quot;lineStyle&quot;:&quot;solid&quot;,&quot;lineWidth&quot;:&quot;lineWidth + 2&quot;},&quot;actions&quot;:[{&quot;x&quot;:&quot;0&quot;,&quot;action&quot;:&quot;move&quot;,&quot;y&quot;:&quot;h/2&quot;},{&quot;y1&quot;:&quot;-h/6&quot;,&quot;x&quot;:&quot;w&quot;,&quot;action&quot;:&quot;curve&quot;,&quot;x1&quot;:&quot;0&quot;,&quot;y2&quot;:&quot;-h/6&quot;,&quot;y&quot;:&quot;h/2&quot;,&quot;x2&quot;:&quot;w&quot;},{&quot;y1&quot;:&quot;h+h/6&quot;,&quot;x&quot;:&quot;0&quot;,&quot;action&quot;:&quot;curve&quot;,&quot;x1&quot;:&quot;w&quot;,&quot;y2&quot;:&quot;h+h/6&quot;,&quot;y&quot;:&quot;h/2&quot;,&quot;x2&quot;:&quot;0&quot;},{&quot;action&quot;:&quot;close&quot;}]}]" resizeDir="[&quot;tl&quot;,&quot;tr&quot;,&quot;br&quot;,&quot;bl&quot;]" textBlock="{&quot;w&quot;:120,&quot;x&quot;:-40,&quot;h&quot;:30,&quot;y&quot;:40}" shapeStyle="{&quot;alpha&quot;:1}" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
@ -171,6 +150,27 @@
<dc:Bounds x="475.0" y="278.0" width="120.0" height="30.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="AWS_obj_88d7c4f11bc34e27b339725dae89d4f2" bpmnElement="obj_88d7c4f11bc34e27b339725dae89d4f2">
<di:extension>
<aws:linkerExtension from="{&quot;x&quot;:154,&quot;y&quot;:298,&quot;angle&quot;:3.141592653589793,&quot;id&quot;:&quot;obj_c91707a884604e36bd9e765c36465108&quot;}" to="{&quot;x&quot;:240,&quot;y&quot;:298,&quot;angle&quot;:0,&quot;id&quot;:&quot;obj_7ceddacd0fcd4950a876a2082cf0336e&quot;}" linkerType="broken" points="[{&quot;x&quot;:197,&quot;y&quot;:298},{&quot;x&quot;:197,&quot;y&quot;:298}]" parent="" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
<aws:elementNodeType>
<aws:nodeType>linker</aws:nodeType>
<aws:name/>
<aws:group/>
</aws:elementNodeType>
</aws:linkerExtension>
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:2}" orderIndex="1" defaultLine="" bpmnName="linker" text="" title="" name="linker">
<aws:fontStyle>{"fontFamily":"Arial","size":13,"color":"50,50,50","underline":false,"textAlign":"center","bold":false,"italic":false}</aws:fontStyle>
<aws:lineStyle>{"lineStyle":"solid","lineColor":"50,50,50","beginArrowStyle":"none","endArrowStyle":"solidArrow","lineWidth":2}</aws:lineStyle>
<aws:dataAttributes>[{"name":"AWSProperties","type":"string","category":"default","value":""}]</aws:dataAttributes>
</aws:elementSchema>
</di:extension>
<di:waypoint x="154.0" y="298.0"/>
<di:waypoint x="240.0" y="298.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds x="0.0" y="0.0" width="0.0" height="0.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNShape id="AWS_obj_c91707a884604e36bd9e765c36465108" bpmnElement="obj_c91707a884604e36bd9e765c36465108" isHorizontal="false" isMarkerVisible="false">
<di:extension>
<aws:nodeExtension anchors="[{&quot;x&quot;:&quot;w/2&quot;,&quot;y&quot;:&quot;0&quot;},{&quot;x&quot;:&quot;w/2&quot;,&quot;y&quot;:&quot;h&quot;},{&quot;x&quot;:&quot;0&quot;,&quot;y&quot;:&quot;h/2&quot;},{&quot;x&quot;:&quot;w&quot;,&quot;y&quot;:&quot;h/2&quot;}]" attribute="{&quot;container&quot;:false,&quot;rotatable&quot;:false,&quot;visible&quot;:true,&quot;editable&quot;:true,&quot;linkable&quot;:true,&quot;markerOffset&quot;:5}" category="bpmn" children="[]" fillStyle="{&quot;color&quot;:&quot;255,255,255&quot;,&quot;endColor&quot;:&quot;0,180,0&quot;,&quot;beginColor&quot;:&quot;0,255,0&quot;,&quot;angle&quot;:0,&quot;gradientType&quot;:&quot;linear&quot;,&quot;type&quot;:&quot;gradient&quot;}" groupName="startEvent" link="" parent="" path="[{&quot;lineStyle&quot;:{&quot;lineStyle&quot;:&quot;solid&quot;},&quot;actions&quot;:[{&quot;x&quot;:&quot;0&quot;,&quot;action&quot;:&quot;move&quot;,&quot;y&quot;:&quot;h/2&quot;},{&quot;y1&quot;:&quot;-h/6&quot;,&quot;x&quot;:&quot;w&quot;,&quot;action&quot;:&quot;curve&quot;,&quot;x1&quot;:&quot;0&quot;,&quot;y2&quot;:&quot;-h/6&quot;,&quot;y&quot;:&quot;h/2&quot;,&quot;x2&quot;:&quot;w&quot;},{&quot;y1&quot;:&quot;h+h/6&quot;,&quot;x&quot;:&quot;0&quot;,&quot;action&quot;:&quot;curve&quot;,&quot;x1&quot;:&quot;w&quot;,&quot;y2&quot;:&quot;h+h/6&quot;,&quot;y&quot;:&quot;h/2&quot;,&quot;x2&quot;:&quot;0&quot;},{&quot;action&quot;:&quot;close&quot;}]}]" resizeDir="[&quot;tl&quot;,&quot;tr&quot;,&quot;br&quot;,&quot;bl&quot;]" textBlock="{&quot;w&quot;:120,&quot;x&quot;:-40,&quot;h&quot;:30,&quot;y&quot;:40}" shapeStyle="{&quot;alpha&quot;:1}" childrenElement="[]" parentId="obj_06b3e1343f1e426aba2fc5fee1251c0d">
@ -200,15 +200,15 @@
<aws:group/>
</aws:elementNodeType>
</aws:nodeExtension>
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:3,&quot;w&quot;:100,&quot;x&quot;:199,&quot;h&quot;:70,&quot;y&quot;:263,&quot;angle&quot;:0}" orderIndex="1" defaultLine="" bpmnName="userTask" text="发起人" title="发起人" name="userTask">
<aws:elementSchema locked="false" group="" props="{&quot;zindex&quot;:3,&quot;w&quot;:100,&quot;x&quot;:240,&quot;h&quot;:70,&quot;y&quot;:263,&quot;angle&quot;:0}" orderIndex="1" defaultLine="" bpmnName="userTask" text="发起人" title="发起人" name="userTask">
<aws:fontStyle>{"orientation":"vertical","fontFamily":"Arial","size":13,"color":"50,50,50","underline":false,"textAlign":"center","bold":false,"italic":false,"vAlign":"middle"}</aws:fontStyle>
<aws:lineStyle>{"lineStyle":"solid","lineColor":"0,100,0","lineWidth":2}</aws:lineStyle>
<aws:dataAttributes>[{"name":"Name","id":"obj_c9e5a2e257f00001bff1672025311529","type":"string","category":"default","value":""},{"name":"documentation","id":"obj_c9e5a2e257f00001645718e03d6a179b","type":"string","category":"default","value":""},{"name":"AWSProperties","id":"obj_c9e5a2e257f0000134bcea701aa29cc0","type":"string","category":"default","value":""},{"listItems":["","StandardLoopCharacteristics","MultipleLoopCharacteristics"],"name":"loopCharacteristics","id":"obj_c9e5a2e257f0000115171e874b111f82","type":"list","category":"default","value":""},{"name":"isSequantial","id":"obj_c9e5a2e257f0000154f81636114ee630","type":"boolean","category":"default","value":"false"},{"name":"isForCompensation","id":"obj_c9e5a2e257f00001438c1e901a9aa110","type":"boolean","category":"default","value":"false"},{"name":"renderings","id":"obj_c9e5a2e257f00001254318bb1340a5a0","type":"string","category":"default","value":""},{"name":"implementation","id":"obj_c9e5a2e257f00001339c172012301c31","type":"string","category":"default","value":""},{"name":"resources","id":"obj_c9e5a2e257f00001243e1850d469113f","type":"string","category":"default","value":""},{"name":"ioSpecification","id":"obj_c9e5a2e257f00001eec5147012208190","type":"string","category":"default","value":""},{"name":"dataInputAssociations","id":"obj_c9e5a2e257f000015a751170503be6e0","type":"string","category":"default","value":""},{"name":"dataOutputAssociations","id":"obj_c9e5a2e257f00001e41684dd19508740","type":"string","category":"default","value":""}]</aws:dataAttributes>
</aws:elementSchema>
</di:extension>
<dc:Bounds x="199.0" y="263.0" width="100.0" height="70.0"/>
<dc:Bounds x="240.0" y="263.0" width="100.0" height="70.0"/>
<bpmndi:BPMNLabel>
<dc:Bounds x="199.0" y="263.0" width="80.0" height="70.0"/>
<dc:Bounds x="240.0" y="263.0" width="80.0" height="70.0"/>
</bpmndi:BPMNLabel>
</bpmndi:BPMNShape>
</bpmndi:BPMNPlane>

View File

@ -1 +1 @@
{"versionId":3,"chartId":"obj_06b3e1343f1e426aba2fc5fee1251c0d","userIds":["admin"],"messages":[],"userNames":"管理员","remark":"","updateTime":"2022-09-06 14:51:35","definitionId":"obj_06b3e1343f1e426aba2fc5fee1251c0d"}
{"versionId":4,"chartId":"obj_06b3e1343f1e426aba2fc5fee1251c0d","userIds":["admin"],"messages":[],"userNames":"管理员","remark":"","updateTime":"2022-09-06 14:51:43","definitionId":"obj_06b3e1343f1e426aba2fc5fee1251c0d"}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -3,7 +3,7 @@
<process id="obj_06b3e1343f1e426aba2fc5fee1251c0d" name="MA绩效发布审批流程" isClosed="false" processType="None" isExecutable="true">
<documentation/>
<extensionElements>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-14 20:17:05" historyMaxVersion="10" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-14 20:19:11" historyMaxVersion="11" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterCompleteEvent" event="PROCESS_AFTER_COMPLETE"/>
</aws:extendProcess>
</extensionElements>
@ -94,7 +94,6 @@
<aws:boProperty id="obj_06714f7c91fb4dada5ac00d5233b1646" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="PUBLISH_NUMBER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_f27d442b74104093ab6c3ff018cd7aa4" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="FILETYPE" isDisplay="true" isModify="true" isACSetting="false"/>
</aws:formSet>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishMALoadBefore" event="FORM_BEFORE_LOAD"/>
<aws:routeTxt>{"isSupportMap":true,"customRuleVal":"","ignoreOptionVal":"auto","isHistoryRoute":true,"ignoreOptions":"","multiSelectDisabledCheckBox":false,"includeSelf":true,"isUp":true,"addressSetting":{},"routeType":"com.actionsoft.bpms.commons.performer.impl.user.ProcessCreater","userOrderPolicy":"none","option":"target","multiSelect":true}</aws:routeTxt>
</aws:extendUserTask>
</extensionElements>

View File

@ -3,7 +3,7 @@
<process id="obj_06b3e1343f1e426aba2fc5fee1251c0d" name="MA绩效发布审批流程" isClosed="false" processType="None" isExecutable="true">
<documentation/>
<extensionElements>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-14 18:11:50" historyMaxVersion="9" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-14 20:17:05" historyMaxVersion="10" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterCompleteEvent" event="PROCESS_AFTER_COMPLETE"/>
</aws:extendProcess>
</extensionElements>
@ -94,6 +94,7 @@
<aws:boProperty id="obj_06714f7c91fb4dada5ac00d5233b1646" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="PUBLISH_NUMBER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_f27d442b74104093ab6c3ff018cd7aa4" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="FILETYPE" isDisplay="true" isModify="true" isACSetting="false"/>
</aws:formSet>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishMALoadBefore" event="FORM_BEFORE_LOAD"/>
<aws:routeTxt>{"isSupportMap":true,"customRuleVal":"","ignoreOptionVal":"auto","isHistoryRoute":true,"ignoreOptions":"","multiSelectDisabledCheckBox":false,"includeSelf":true,"isUp":true,"addressSetting":{},"routeType":"com.actionsoft.bpms.commons.performer.impl.user.ProcessCreater","userOrderPolicy":"none","option":"target","multiSelect":true}</aws:routeTxt>
</aws:extendUserTask>
</extensionElements>

View File

@ -3,7 +3,7 @@
<process id="obj_06b3e1343f1e426aba2fc5fee1251c0d" name="MA绩效发布审批流程" isClosed="false" processType="None" isExecutable="true">
<documentation/>
<extensionElements>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-14 16:36:34" historyMaxVersion="8" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-14 18:11:50" historyMaxVersion="9" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterCompleteEvent" event="PROCESS_AFTER_COMPLETE"/>
</aws:extendProcess>
</extensionElements>
@ -94,7 +94,6 @@
<aws:boProperty id="obj_06714f7c91fb4dada5ac00d5233b1646" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="PUBLISH_NUMBER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_f27d442b74104093ab6c3ff018cd7aa4" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="FILETYPE" isDisplay="true" isModify="true" isACSetting="false"/>
</aws:formSet>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishLoadBefore" event="FORM_BEFORE_LOAD"/>
<aws:routeTxt>{"isSupportMap":true,"customRuleVal":"","ignoreOptionVal":"auto","isHistoryRoute":true,"ignoreOptions":"","multiSelectDisabledCheckBox":false,"includeSelf":true,"isUp":true,"addressSetting":{},"routeType":"com.actionsoft.bpms.commons.performer.impl.user.ProcessCreater","userOrderPolicy":"none","option":"target","multiSelect":true}</aws:routeTxt>
</aws:extendUserTask>
</extensionElements>

View File

@ -3,7 +3,7 @@
<process id="obj_06b3e1343f1e426aba2fc5fee1251c0d" name="MA绩效发布审批流程" isClosed="false" processType="None" isExecutable="true">
<documentation/>
<extensionElements>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-08 09:34:14" historyMaxVersion="7" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-14 16:36:34" historyMaxVersion="8" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterCompleteEvent" event="PROCESS_AFTER_COMPLETE"/>
</aws:extendProcess>
</extensionElements>
@ -94,6 +94,7 @@
<aws:boProperty id="obj_06714f7c91fb4dada5ac00d5233b1646" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="PUBLISH_NUMBER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_f27d442b74104093ab6c3ff018cd7aa4" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="FILETYPE" isDisplay="true" isModify="true" isACSetting="false"/>
</aws:formSet>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishLoadBefore" event="FORM_BEFORE_LOAD"/>
<aws:routeTxt>{"isSupportMap":true,"customRuleVal":"","ignoreOptionVal":"auto","isHistoryRoute":true,"ignoreOptions":"","multiSelectDisabledCheckBox":false,"includeSelf":true,"isUp":true,"addressSetting":{},"routeType":"com.actionsoft.bpms.commons.performer.impl.user.ProcessCreater","userOrderPolicy":"none","option":"target","multiSelect":true}</aws:routeTxt>
</aws:extendUserTask>
</extensionElements>

View File

@ -3,7 +3,7 @@
<process id="obj_06b3e1343f1e426aba2fc5fee1251c0d" name="MA绩效发布审批流程" isClosed="false" processType="None" isExecutable="true">
<documentation/>
<extensionElements>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-08 09:33:56" historyMaxVersion="6" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-08 09:34:14" historyMaxVersion="7" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterCompleteEvent" event="PROCESS_AFTER_COMPLETE"/>
</aws:extendProcess>
</extensionElements>

View File

@ -1 +1 @@
{"versionId":7,"chartId":"obj_06b3e1343f1e426aba2fc5fee1251c0d","userIds":["admin"],"messages":[],"userNames":"管理员","remark":"","updateTime":"2022-09-08 09:33:56","definitionId":"obj_06b3e1343f1e426aba2fc5fee1251c0d"}
{"versionId":8,"chartId":"obj_06b3e1343f1e426aba2fc5fee1251c0d","userIds":["admin"],"messages":[],"userNames":"管理员","remark":"","updateTime":"2022-09-08 09:34:14","definitionId":"obj_06b3e1343f1e426aba2fc5fee1251c0d"}

View File

@ -3,7 +3,7 @@
<process id="obj_06b3e1343f1e426aba2fc5fee1251c0d" name="MA绩效发布审批流程" isClosed="false" processType="None" isExecutable="true">
<documentation/>
<extensionElements>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-06 14:55:20" historyMaxVersion="5" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-08 09:33:56" historyMaxVersion="6" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterCompleteEvent" event="PROCESS_AFTER_COMPLETE"/>
</aws:extendProcess>
</extensionElements>
@ -29,62 +29,70 @@
</endEvent>
<userTask id="obj_7ceddacd0fcd4950a876a2082cf0336e" name="发起人" implementation="" isForCompensation="false">
<extensionElements>
<aws:extendUserTask opinionOption="0" commentPosition="2" isBatchComplete="false" rendering="" isCCTask="false" ccTaskButtonLabel="传阅" isClaimTask="false" completeButtonLabel="办理" isDelegateTask="false" delegateTaskButtonLabel="转办" dynamicBehaviorType="" isDynamicJump="false" isDynamicTask="true" emailNotifyTemplate="" emailNotifyType="0" isCommentsLib="false" commentsLibFilter="" commentsCycleCoverRule="" commentsStyle="" operatingAuthorization="[{&quot;6b805e17-9053-47dc-90f3-02e431e3ebac&quot;:{&quot;isFormDataSnapshot&quot;:false,&quot;isFormDataModify&quot;:true,&quot;isFormDataSnapshotList&quot;:false,&quot;isEditSecurity&quot;:false,&quot;isSaveRequired&quot;:true},&quot;mainFormID&quot;:&quot;6b805e17-9053-47dc-90f3-02e431e3ebac&quot;}]" addressConfig="eyJmaWx0ZXIiOnsicmVhZG9ubHkiOmZhbHNlLCJhZGRyZXNzU2V0dGluZyI6eyJyb290RGV0cElkIjoiIiwibGF5ZXJGcm9tIjoiIiwibGF5ZXJUbyI6IiIsImlzRGlzcGxheU1hcCI6ZmFsc2UsImlzRGlzcGxheU90aGVyTWFwIjpmYWxzZSwicmFuZ2UiOiJkZXBhcnRtZW50fHJvbGV8dGVhbSIsImZpbHRlckNsYXNzIjoiIiwic291cmNlRGF0YUNsYXNzIjoiIn19LCJmb3JSYW5nZSI6ImFkcl9jY3xhZHJfZGVsfGFkcl9zaWdufGFkcl90ZWFtIn0=" formToKMSOption="{&quot;cardName&quot;:&quot;&quot;,&quot;cardCreateUser&quot;:&quot;@uid&quot;,&quot;dimensionIdJsonArray&quot;:[],&quot;option&quot;:&quot;none&quot;}" isHiddenFormToolbar="false" isIgnoreTask="false" no="1" isPrintForm="false" printFormMaxTimes="-1" printConfig="{&quot;printCommentControl&quot;:&quot;&quot;,&quot;printTemplateFormDefId&quot;:&quot;&quot;,&quot;optionName&quot;:&quot;不指定&quot;,&quot;printPageSize&quot;:&quot;&quot;}" isSupplyComment="true" isShareOpinion="true" isShortMessageNotify="false" isSupplyUnusualTransfer="false" timeDuration="0" timeDurationText="" isTraceOpinion="true" transferRestriction="" transferRestrictionType="0" dwAppSchemaPolicy="" wariningTimeDuration="0" dynamicJumpNums="" wariningTimeDurationText="" extendProperty="" customUniqueId="" notifyMessageTpl="" notifyConfig="{&quot;taskReceived&quot;:[],&quot;taskCC&quot;:[{&quot;notifyType&quot;:&quot;enterpriseWechat&quot;},{&quot;notifyType&quot;:&quot;dingTalk&quot;}]}" IOBD="" IOR="" IOS="" IOC="" addUser="false" removeUser="false" incomingGatewayType="Parallel" branchGatewayType="Parallel">
<aws:extendUserTask opinionOption="0" commentPosition="2" isBatchComplete="false" rendering="" isCCTask="false" ccTaskButtonLabel="传阅" isClaimTask="false" completeButtonLabel="办理" isDelegateTask="false" delegateTaskButtonLabel="转办" dynamicBehaviorType="" isDynamicJump="false" isDynamicTask="true" emailNotifyTemplate="" emailNotifyType="0" isCommentsLib="false" commentsLibFilter="" commentsCycleCoverRule="" commentsStyle="" operatingAuthorization="[{&quot;f502ed49-375f-493e-bd8e-d800bd89f88f&quot;:{&quot;isFIRefBtn&quot;:false,&quot;isFormDataRemove&quot;:true,&quot;isFISaveMainWhenAdded&quot;:false,&quot;isFormDataAdd&quot;:true},&quot;35f172ed-b32c-4195-90dc-ad2557e7c58f&quot;:{&quot;isFormDataSnapshot&quot;:false,&quot;isFormDataRemove&quot;:true,&quot;isFormDataModify&quot;:true,&quot;isFormDataSnapshotList&quot;:false,&quot;isFormDataAdd&quot;:true,&quot;isEditSecurity&quot;:false,&quot;isSaveRequired&quot;:true},&quot;mainFormID&quot;:&quot;35f172ed-b32c-4195-90dc-ad2557e7c58f&quot;}]" addressConfig="eyJmaWx0ZXIiOnsicmVhZG9ubHkiOmZhbHNlLCJhZGRyZXNzU2V0dGluZyI6eyJyb290RGV0cElkIjoiIiwibGF5ZXJGcm9tIjoiIiwibGF5ZXJUbyI6IiIsImlzRGlzcGxheU1hcCI6ZmFsc2UsImlzRGlzcGxheU90aGVyTWFwIjpmYWxzZSwicmFuZ2UiOiJkZXBhcnRtZW50fHJvbGV8dGVhbSIsImZpbHRlckNsYXNzIjoiIiwic291cmNlRGF0YUNsYXNzIjoiIn19LCJmb3JSYW5nZSI6ImFkcl9jY3xhZHJfZGVsfGFkcl9zaWdufGFkcl90ZWFtIn0=" formToKMSOption="{&quot;cardName&quot;:&quot;&quot;,&quot;cardCreateUser&quot;:&quot;@uid&quot;,&quot;dimensionIdJsonArray&quot;:[],&quot;option&quot;:&quot;none&quot;}" isHiddenFormToolbar="false" isIgnoreTask="false" no="1" isPrintForm="false" printFormMaxTimes="-1" printConfig="{&quot;printCommentControl&quot;:&quot;&quot;,&quot;printTemplateFormDefId&quot;:&quot;&quot;,&quot;optionName&quot;:&quot;不指定&quot;,&quot;printPageSize&quot;:&quot;&quot;}" isSupplyComment="true" isShareOpinion="true" isShortMessageNotify="false" isSupplyUnusualTransfer="false" timeDuration="0" timeDurationText="" isTraceOpinion="true" transferRestriction="" transferRestrictionType="0" dwAppSchemaPolicy="" wariningTimeDuration="0" dynamicJumpNums="" wariningTimeDurationText="" extendProperty="" customUniqueId="" notifyMessageTpl="" notifyConfig="{&quot;taskReceived&quot;:[],&quot;taskCC&quot;:[{&quot;notifyType&quot;:&quot;enterpriseWechat&quot;},{&quot;notifyType&quot;:&quot;dingTalk&quot;}]}" IOBD="" IOR="" IOS="" IOC="" addUser="false" removeUser="false" incomingGatewayType="Parallel" branchGatewayType="Parallel">
<aws:comment actionName="提交" isDefault="true" orderIndex="1" id="obj_4e8a337e6ab4401a9e64e13a139bb394" actionType="" isBack="false" targetDefId="" remindType="" remindClazz="" isValidateForm="true" isBackToAll="false" compensateSQL="" defaultMsg="" msgRequired="-1"/>
<aws:comment actionName="作废" isDefault="false" orderIndex="2" id="obj_286175f6878a4918a336a1bf2f7bc6e4" actionType="END_EVENT" isBack="false" targetDefId="" remindType="" remindClazz="" isValidateForm="true" isBackToAll="false" compensateSQL="" defaultMsg="" msgRequired="-1"/>
<aws:formSet id="obj_f2c69a01a04b407aab015c4471dab5d8" formId="6b805e17-9053-47dc-90f3-02e431e3ebac" copyConfig="" orderIndex="0" historyConfig="" shareLinkConfig="">
<aws:boProperty id="obj_c423bd849432454fadda9e3618d5bc91" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PUBLISHID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_10029cf1ace24f67ab8d34fa85a8dd02" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="TEAMID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_e104de39206c4533add1530ad9db304b" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="TEAMNAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_80b20117224346cdbe75c1c8dc29b94f" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYUSERID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_ecaa8c3f83b5404c8394202d9b8a35a3" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYUSERNAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_3c577c3543854a2bbd90f6953a46b620" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYDEPTID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_863b554bbb274c6bbc4c10ddc01270a9" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYDEPTNAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_be07a20ada844a7aa8fca4152274ab43" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYDATE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_327cc85ae4ad4d3188ea20cccba6ee7e" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PUBLISHDESC" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_d0c8cd799f7f4620b0b09257079d41e9" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="AUDITOR1" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_9b607f496caf4d348822313844a2214b" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="AUDITOR2" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_65034c6ff1154d5693098a96ef8d08a3" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="AUDITOR3" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_873951dcd1754ce899b4cfc7e086aa43" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYSTATUS" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_fe77740ab58b4f319b794838cec6ee28" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="WSID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_77044a85ca4e435dbc0cd37869ed5b7f" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="OPTIONTYPE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_c68e4b8b49ab4e7599962430a6a0454d" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="ATTACHMENT" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_3de3b19c959e4fdb884889963427b932" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SAVESTATUS" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_76576236c4e8480d915b89722381c669" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="LEVEL_1_PROCESS_NAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_ee6753fb394a4349b36fbbaa66f2159f" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="LEVEL_2_PROCESS_NAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_cf11ac8085004a168fba403f8237d149" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="LEVEL_3_PROCESS_NAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_8e4af4ac702946b4b340d829a4603788" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="ADAPT_NAME_THE_COMPANY" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_bf67f5b0b8c84ea2abe6198a4f7d145f" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="ADAPT_NAME_THE_COMPANY_NO" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_2ba684b8fc8b439fa531f771b7659d5d" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROFESSIONAL_REVIEW_REQUIRED" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_64f5b72322dc44749a44e2663b1f750c" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="ADAPT_REGION_NAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_5e8c229b94484739a48722bfbde463bd" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLICABLE_PRODUCT" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_4de77197ef054fb8bacf3d1a43288df6" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="RELEASE_THE_TITLE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_1f17a2cfca4b48c08b7e4e2eaf541187" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="CONTACT_WAY" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_502949002b58431f8cca9c1b17ec0d29" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="IS_THE_UNIT" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_d87033702c894efab747b297fcf1b3f6" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="RELEASE_INSTRUCTIONS" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_3df9a71b0664435e8d26236655bc5955" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="ACCESSORY" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_221b99b98fbb49f69faec3e7f51b068d" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="DEPARTMENT_PROOFREADER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_8ff9dfa62d094242805739410450b772" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="INTERNAL_AUDITOR" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_9232712e6e7849b4947f04c390512511" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="JOINT_TRIAL_REQUIRED" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_7d4049ea8d8d4ad8a15e8813e5a58448" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PERSON_THREE_LEVEL_PROCESS" isDisplay="true" isModify="false" isACSetting="false"/>
<aws:boProperty id="obj_62bf1ddfe9364c318fae21164d5dadb4" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="LEVEL_AUDIT_REQUIRED" isDisplay="true" isModify="false" isACSetting="false"/>
<aws:boProperty id="obj_69b1d155e7f74d9ca1a87f05d7e27a8e" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROCESS_RESPONSIBLE_PERSON" isDisplay="true" isModify="false" isACSetting="false"/>
<aws:boProperty id="obj_34de0f05b5e849e0ac27d04aa55e2f7e" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SECONDARY_AUDIT_REQUIRED" isDisplay="true" isModify="false" isACSetting="false"/>
<aws:boProperty id="obj_64265db3ee7740c0aeeca39e554a71a3" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="RESPONSIBLE_PERSON1" isDisplay="true" isModify="false" isACSetting="false"/>
<aws:boProperty id="obj_2fe8ef6f27b44aa9a1b7ab518cab9ed3" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="LEVEL_1_AUDIT_REQUIRED" isDisplay="true" isModify="false" isACSetting="false"/>
<aws:boProperty id="obj_e4058b5f542b4ef3a82f047dff653233" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SEND_SCOPE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_7a5cab09a12f4f8fa2bc5d71297c389e" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROFESSIONAL_REVIEWER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_bec05bbe24394227b04a56eebdb6785b" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="JOINT_REVIEWER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_0fb95e2b467c45d1bc16ce0cfd4ac840" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROCESS_MANAGER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_c959899e6c084a6ea2c460715cc2411c" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="CEO_APPROVE" isDisplay="true" isModify="false" isACSetting="false"/>
<aws:boProperty id="obj_fa01651250b74256a975881b0ca7dd5b" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SEND_SCOPE_ORG" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_f4889e260a7042e3b38ef231d2d07bde" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SEND_SCOPE_POST" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_8dbcf28344484ea8aeab1ca411107519" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SEND_SCOPE_LEVEL" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_253c0131507b4bb2bbcd25ada4a77284" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SEND_SCOP" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_ac9e05bc85104e81ba1768df7b1bcf72" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PERSON_THREE_LEVEL_PROCESS_NO" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_0cf3d39a477c42ac9cf99c4841e764a1" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROCESS_RESPONSIBLE_PERSON_NO" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_5febea872b754c7ab41d5ae0549d5a36" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="RESPONSIBLE_PERSON1_NO" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_bf830da2c85a408a89ae8abd16bf2cc8" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROCESS_TITLE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:formSet id="obj_6e9d715645f14e3495ce46b74ca6ba73" formId="35f172ed-b32c-4195-90dc-ad2557e7c58f" copyConfig="" orderIndex="0" historyConfig="" shareLinkConfig="">
<aws:boProperty id="obj_8f6cf594aa8042bea2f13e8518720d73" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PUBLISHID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_44cdbb12ee144e6e9d09f81a5a379626" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="TEAMID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_b8446d6be20941a08ae4813d331fc3d0" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="TEAMNAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_127cbfe8065f4bf5a94fa17d5b4224b5" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYUSERID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_d74d467f8bcd4dd88566b610cac8665c" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYUSERNAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_0e3f5f14d6374480ab0af2112846d069" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYDEPTID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_9abb61fc7475405bb4111483c1be549b" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYDEPTNAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_bf1bac6fc5d448a6aaf0c9d472145318" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYDATE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_5bcb04d18b584246bab9ebbe55e9d033" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PUBLISHDESC" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_6298e4b7f31b4b5d8ce4d7f1fa17fd0f" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="AUDITOR1" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_35f003e590ee44119a3e092e350f8e8c" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="AUDITOR2" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_c5474a040406403ab86199b92a036dfc" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="AUDITOR3" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_ce8933be7c82457aa4c9c23a46b57820" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLYSTATUS" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_06a120bdca4942b895c23447be24d951" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="WSID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_dc70a6bd200540809f3a659dedb32617" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="OPTIONTYPE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_7c7399ca49714c7287bd1648084c18af" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="ATTACHMENT" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_72f0b575600448bb8cf286a274270e25" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SAVESTATUS" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_db9bf577ae42447cb9c4dd8c09c64e27" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="LEVEL_1_PROCESS_NAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_9c6a033245864cc79db3ef2a914af341" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="LEVEL_2_PROCESS_NAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_3b71f2e0c90540dfab3401dd1ed084bc" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="LEVEL_3_PROCESS_NAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_b9a87f375e9b458da2b3792c7cb14588" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="ADAPT_NAME_THE_COMPANY" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_af75bf3255db4ee59d8085d16c7b6d57" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="ADAPT_NAME_THE_COMPANY_NO" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_83272db4c8044257b7275eeff820882c" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROFESSIONAL_REVIEW_REQUIRED" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_259cf993433145d785a267b94bc00f79" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="ADAPT_REGION_NAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_8a05a29dc0b84aae888df8524609f5c4" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="APPLICABLE_PRODUCT" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_3215098a718143a5b3a4b48b2372f12a" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="RELEASE_THE_TITLE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_e6c28d2a80a54f69899687d7a94ce8a9" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="CONTACT_WAY" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_adcf0a3198ce4263a0d5eef7db6d5160" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="IS_THE_UNIT" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_0f0cae6fdde74cd6afc77ed4ea26ee87" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="RELEASE_INSTRUCTIONS" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_5973697ed887429c97c1b107d62176e8" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="ACCESSORY" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_2aff2ae4263848ddb375eb945e0166a6" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="DEPARTMENT_PROOFREADER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_bc4371eab82c4b7eaf72290d87c77294" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="INTERNAL_AUDITOR" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_14d40068b6eb4d40b1be7d19ca2666af" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="JOINT_TRIAL_REQUIRED" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_5d9b1f3c79ac4135917413223a4bae74" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PERSON_THREE_LEVEL_PROCESS" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_997ab144309749a7b931c2a156371890" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="LEVEL_AUDIT_REQUIRED" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_e71b809365ba427d8a63a67617c6ec85" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROCESS_RESPONSIBLE_PERSON" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_c87d413999d343ae8b359c68b890a82b" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SECONDARY_AUDIT_REQUIRED" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_ba8154d5100b4acd81e1624e401bc88c" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="RESPONSIBLE_PERSON1" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_cff1140f28e1491fa1b4112a817c570b" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="LEVEL_1_AUDIT_REQUIRED" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_877bb5987f9b4030855f131cc80daaa7" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SEND_SCOPE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_5506ba9ee3364ebdae2f3f28f9898117" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROFESSIONAL_REVIEWER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_accd041fa906429eb5f0a4d4000b86cf" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="JOINT_REVIEWER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_9c2a7654ff254605b810c560ac5813b8" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROCESS_MANAGER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_8d7e35cbd6b044d182a741b34c5f47b2" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="CEO_APPROVE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_a715aea61f234a90be9f63d3187f30d7" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SEND_SCOPE_ORG" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_a3d8cccabf9e4e5797c4b873e56eefe8" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SEND_SCOPE_POST" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_112c6c89ebb74505bf62a29e43e65415" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SEND_SCOPE_LEVEL" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_ac039de8117549789eb9230b693fef37" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="SEND_SCOP" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_363cab486d0a4c28abdd3f4bfa158024" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PERSON_THREE_LEVEL_PROCESS_NO" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_bf9b3d26e1d241d8aadebf712aa14f01" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROCESS_RESPONSIBLE_PERSON_NO" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_7631e36596494790ab3d274ccaaa0ce0" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="RESPONSIBLE_PERSON1_NO" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_d344b0712ee542b193f207aa7d578e99" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROCESS_TITLE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_da9335a9fe0d42849d5a56e83a752267" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="DATAID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_e4d1a392a417424e9076c0eef27862ad" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="PUBLISTHTYPE" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_5adbb1192e6f4fe786cbb9433352b413" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="PUBLISHFILENAME" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_1d4f26cca0954f11b9262966056225f6" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="PUBLISHDESC" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_b4db814a23dc4e58ab25f87376036c8e" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="PUBLISHFILEID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_eaa7964ac85c44dcb89c53a0756f9f69" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="TASKID" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_06714f7c91fb4dada5ac00d5233b1646" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="PUBLISH_NUMBER" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_f27d442b74104093ab6c3ff018cd7aa4" boId="9cb982ab-52d9-4b38-808a-dbe8484cc534" fieldName="FILETYPE" isDisplay="true" isModify="true" isACSetting="false"/>
</aws:formSet>
<aws:routeTxt>{"isSupportMap":true,"customRuleVal":"","ignoreOptionVal":"auto","isHistoryRoute":true,"ignoreOptions":"","multiSelectDisabledCheckBox":false,"includeSelf":true,"isUp":true,"addressSetting":{},"routeType":"com.actionsoft.bpms.commons.performer.impl.user.ProcessCreater","userOrderPolicy":"none","option":"target","multiSelect":true}</aws:routeTxt>
</aws:extendUserTask>

View File

@ -1 +1 @@
{"versionId":6,"chartId":"obj_06b3e1343f1e426aba2fc5fee1251c0d","userIds":["admin"],"messages":[],"userNames":"管理员","remark":"","updateTime":"2022-09-06 14:55:20","definitionId":"obj_06b3e1343f1e426aba2fc5fee1251c0d"}
{"versionId":7,"chartId":"obj_06b3e1343f1e426aba2fc5fee1251c0d","userIds":["admin"],"messages":[],"userNames":"管理员","remark":"","updateTime":"2022-09-08 09:33:56","definitionId":"obj_06b3e1343f1e426aba2fc5fee1251c0d"}

View File

@ -3,9 +3,8 @@
<process id="obj_06b3e1343f1e426aba2fc5fee1251c0d" name="MA绩效发布审批流程" isClosed="false" processType="None" isExecutable="true">
<documentation/>
<extensionElements>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-06 14:52:43" historyMaxVersion="4" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterDeleteListener" event="PROCESS_AFTER_DELETE"/>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishExecuteListenerInterfaceImpl" event="PROCESS_AFTER_COMPLETE"/>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-06 14:55:20" historyMaxVersion="5" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterCompleteEvent" event="PROCESS_AFTER_COMPLETE"/>
</aws:extendProcess>
</extensionElements>
<sequenceFlow id="obj_c9f7a4341230000175b616d7129016a0" sourceRef="obj_7ceddacd0fcd4950a876a2082cf0336e" targetRef="obj_c9f7a43470900001b39c193716e0fbf0">

View File

@ -3,7 +3,7 @@
<process id="obj_06b3e1343f1e426aba2fc5fee1251c0d" name="MA绩效发布审批流程" isClosed="false" processType="None" isExecutable="true">
<documentation/>
<extensionElements>
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-06 14:51:42" historyMaxVersion="3" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:extendProcess accessSecurityType="0" archivesId="0" cancelProcessExclusiveActivities="" cancelProcessExclusiveRule="1" defaultInstanceTitle="@form(BO_ACT_COE_PUBLISH,PROCESS_TITLE)-@form(BO_ACT_COE_PUBLISH,APPLYUSERNAME)-@form(BO_ACT_COE_PUBLISH,APPLYDATE)" extendProperty="" IOBD="" IOR="" IOS="" IOC="" description="发布流程制度表单类文件" iconFontColor="#3383da" iconFontCode="" processLevelType="0" shortMessageNotifyTemplate="" mailNotifyTemplate="" timeDuration="0" timeDurationText="" trackDiagramType="0" taskOpenType="_blank" wariningTimeDuration="0" wariningTimeDurationText="0Days,0Hours,0Minutes,0Seconds,0Milliseconds" isFormSummary="false" formSummary="" dataTrigger="[]" isAutoArchives="false" isCancelProcess="true" isCancelTask="false" isDataShare="false" isDraftRemove="true" isMobileStart="true" isQuickStart="true" isSecurityLayer="false" isTrackForm="true" isWorklistPopMini="true" isTransferPriority="false" isMatrixDistributed="false" isResetLostHistory="false" isTpl="false" tplSource="" tplUpdateLog="" tplLockedInfo="W10=" processAccessPerm="" notifyConfig="{&quot;taskReminder&quot;:[]}" initSecurityLayer="-1" versionId="obj_06b3e1343f1e426aba2fc5fee1251c0d" processGroupId="obj_df0537b88fca417ea529d5d9f70696ac" processGroupName="MA绩效发布审批流程" categoryName="发布流程" engineType="0" processVer="1" versionStatus="0" processAdministrator="admin" createUser="admin" createTime="2022-09-06 14:49:51" updateUser="admin" updateTime="2022-09-06 14:52:43" historyMaxVersion="4" releaseUser="" releaseTime="" messageDigest="" isManaged="false" isIgnoreMapRoleSelect="true" isMapRoleSelectAtStart="false">
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishProcessAfterDeleteListener" event="PROCESS_AFTER_DELETE"/>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishExecuteListenerInterfaceImpl" event="PROCESS_AFTER_COMPLETE"/>
</aws:extendProcess>
@ -87,11 +87,6 @@
<aws:boProperty id="obj_5febea872b754c7ab41d5ae0549d5a36" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="RESPONSIBLE_PERSON1_NO" isDisplay="true" isModify="true" isACSetting="false"/>
<aws:boProperty id="obj_bf830da2c85a408a89ae8abd16bf2cc8" boId="c493accc-61ba-4316-bc35-cee75b4db827" fieldName="PROCESS_TITLE" isDisplay="true" isModify="true" isACSetting="false"/>
</aws:formSet>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.ApplyTasAfterkComplete" event="TASK_AFTER_COMPLETE"/>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishLoadBefore" event="FORM_BEFORE_LOAD"/>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.ApplyTaskAfterCreated" event="TASK_AFTER_CREATED"/>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.PublishFormBeforeSaveEvent" event="FORM_BEFORE_SAVE"/>
<aws:listener clazz="com.actionsoft.apps.coe.pal.publisher.event.SubFormAfterSave" event="FORM_AFTER_SAVE"/>
<aws:routeTxt>{"isSupportMap":true,"customRuleVal":"","ignoreOptionVal":"auto","isHistoryRoute":true,"ignoreOptions":"","multiSelectDisabledCheckBox":false,"includeSelf":true,"isUp":true,"addressSetting":{},"routeType":"com.actionsoft.bpms.commons.performer.impl.user.ProcessCreater","userOrderPolicy":"none","option":"target","multiSelect":true}</aws:routeTxt>
</aws:extendUserTask>
</extensionElements>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -41,7 +41,9 @@ public class ProcesNumberUtil {
String updateSql = "update BO_ACT_PROCESSNUMBER set PROCESS_NUMBERS=%s where ID='%s'";
DBSql.update(String.format(updateSql, nowNum + 1, result.getString("ID")));
if (nowNum < 10) {
return "0" + nowNum;
return "00" + nowNum;
}else if(nowNum >=10&&nowNum < 100){
return "0" + nowNum;
}
} else if (plcategory.contains("control")) {
@ -59,7 +61,9 @@ public class ProcesNumberUtil {
String updateSql = "update BO_ACT_PROCESSNUMBER set SYSTEM_NUMBERS=%s where ID='%s'";
DBSql.update(String.format(updateSql, nowNum + 1, result.getString("ID")));
if (nowNum < 10) {
return "0" + nowNum;
return "00" + nowNum;
}else if(nowNum >=10&&nowNum < 100){
return "0" + nowNum;
}
} else if (plcategory.contains("form")) {
@ -77,7 +81,9 @@ public class ProcesNumberUtil {
String updateSql = "update BO_ACT_PROCESSNUMBER set FORM_NUMBERS=%s where ID='%s'";
DBSql.update(String.format(updateSql, nowNum + 1, result.getString("ID")));
if (nowNum < 10) {
return "0" + nowNum;
return "00" + nowNum;
}else if(nowNum >=10&&nowNum < 100){
return "0" + nowNum;
}
@ -177,22 +183,22 @@ public class ProcesNumberUtil {
String updateSql = "update BO_ACT_COE_PUBLISH_C set CHANGE_NUMBER = '%s' where ID = '%s'";
rowMap = DBSql.getMap("SELECT PLVER,PLMETHODID FROM APP_ACT_COE_PAL_REPOSITORY WHERE ID='"
+ changAfterFileId + "' AND" + " ISUSE = 1 ");
String name = "18R18";
String name = "";
String fileName = "file_number";
String plver = "2.0";
if (rowMap != null) {
String plcategory = rowMap.getString("PLMETHODID");
String plvers = rowMap.getString("PLVER");
String number = getProcessNum(levelnum, orgCode,plcategory);
System.err.println("=======number======="+number);
number = "19";
System.err.println("number======="+number);
if (plcategory.contains("process")) {
name = number + "/P" + number;
name = "/P" + number;
} else if (plcategory.contains("control")) {
name = "00" + "/R" + number;
name = "/R" + number;
} else if (plcategory.contains("form")) {
fileName = "form_number";
name = number + "/T" + number;
name = "/T" + number;
}
if (!"".equals(plvers)) {
if (plvers.length() > 1) {
@ -204,7 +210,7 @@ public class ProcesNumberUtil {
}
}
String processNum = levelnum + "." + name + "V" + plver +"-"+ orgCode + regionCode + productCode;
String processNum = levelnum + name + "V" + plver +"-"+ orgCode + regionCode + productCode;
String s = changData.getId();
int update = DBSql.update(String.format(updateSql, processNum, s.toLowerCase()));
System.out.println("更新表单文件编号回填:" + update + "--->" + processNum+" 文件id"+s);
@ -262,13 +268,14 @@ public class ProcesNumberUtil {
String plcategory = rowMap.getString("PLMETHODID");
String plvers = rowMap.getString("PLVER");
String number = getProcessNum(levelnum, orgCode,plcategory);
if (plcategory.contains("process")) {
name = number + "/P" + number;
name = "/P" + number;
} else if (plcategory.contains("control")) {
name = number + "/R" + number;
name = "/R" + number;
} else if (plcategory.contains("form")) {
fileName = "form_number";
name = number + "/T" + number;
name = "/T" + number;
}
if (!"".equals(plvers)) {
if (plvers.length() > 1) {
@ -280,7 +287,7 @@ public class ProcesNumberUtil {
}
}
String processNum = levelnum + "." + name + "V" + plver +"-"+orgCode + regionCode + productCode;
String processNum = levelnum + name + "V" + plver +"-"+orgCode + regionCode + productCode;
String s = nowData.getId();
int update = DBSql.update(String.format(updateSql, processNum, s.toLowerCase()));
System.out.println("表单文件编号回填:" + update + "--->" + processNum);

View File

@ -604,7 +604,6 @@ public class ProcessPublishWeb extends ActionWeb {
public String savePublishInstance(String title, String teamId, String teamName, String wsId) {
Date date=new Date();//此时date为当前的时间
SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置当前时间的格式为年--
System.out.println(dateFormat.format(date));
String titled ="流程发布-"+ _uc.getUserName()+"-"+dateFormat.format(date);
AppAPI appApi = SDK.getAppAPI();
String processDefId = "";
@ -1748,6 +1747,7 @@ public class ProcessPublishWeb extends ActionWeb {
if (shapeList != null && shapeList.size() > 0)
for (Map<String, Object> map : shapeList)
shapeIds.add((String) map.get("id"));
/******************** 附件 ************************/
// 文件或节点自身附件
JSONArray js = new JSONArray();
@ -1764,7 +1764,7 @@ public class ProcessPublishWeb extends ActionWeb {
jb.put("upfileId", upfileId);
jb.put("upFileName", upFileName);
String openUrl = "";
ResponseObject ros = getUrl(jb, id, upFileName);
ResponseObject ros = getUrl("f",jb,upfileModel);
JSONObject parseObject = JSON.parseObject(JSON.toJSONString(ros.getData()));
String url = parseObject.get("url").toString();
if(url.contains(".xls"))
@ -1841,7 +1841,7 @@ public class ProcessPublishWeb extends ActionWeb {
jb.put("upfileId", upfileId);
jb.put("upFileName", upFileName);
String openUrl = "";
ResponseObject ros = getUrl(jb, model.getId(), upFileName);
ResponseObject ros = getUrl("f",jb,upfileModel);
JSONObject parseObject = JSON.parseObject(JSON.toJSONString(ros.getData()));
String url = parseObject.get("url").toString();
if(url.contains(".xls"))
@ -2649,11 +2649,22 @@ public class ProcessPublishWeb extends ActionWeb {
}
public ResponseObject getUrl(JSONObject jb, String id ,String upFileName) {
public ResponseObject getUrl(String type, JSONObject jb, UpfileModel upfileModel) {
String id = upfileModel.getPl_uuid();
String upFileName = upfileModel.getFileName();
String shape_uuid = upfileModel.getShape_uuid();
String sourceAppId = "com.actionsoft.apps.coe.pal";
DCContext sourceDc = new DCContext(_uc,
DCProfileManager.getDCProfile(sourceAppId, "COE_Upfile"), sourceAppId,
"file", id, upFileName);
DCContext sourceDc = null;
if("f".equals(type)) {
sourceDc = new DCContext(_uc,
DCProfileManager.getDCProfile(sourceAppId, "COE_Upfile"), sourceAppId,
"file", id, upFileName);
}else {
sourceDc = new DCContext(_uc,
DCProfileManager.getDCProfile(sourceAppId, "COE_Upfile"), sourceAppId,
id,shape_uuid, upFileName);
}
String downUrl = SDK.getConfAPI().getPortalUrl() + "/r/"
+ sourceDc.getDownloadURL().replace("./", "");
jb.put("downUrl", downUrl);
@ -2694,7 +2705,7 @@ public class ProcessPublishWeb extends ActionWeb {
/************ 批量流程发布 *****************/
/************ 批量流程发布 *****************/
/**
* 查询流程发布子表数据
@ -2744,6 +2755,7 @@ public class ProcessPublishWeb extends ActionWeb {
if (model != null) {
String id = model.getId();
String methodCategory = model.getMethodCategory();
String methodId = model.getMethodId();
obj.put("fileVersion", VersionUtil.getVersionStr(model.getVersion()));
obj.put("methodId", model.getMethodId());
obj.put("category", methodCategory);
@ -2763,42 +2775,46 @@ public class ProcessPublishWeb extends ActionWeb {
sqlWhere.append(" and PALREPOSITORYID ='").append(publishId).append("'");
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
if (fileList != null && fileList.size() > 0)
for (UpfileModel upfileModel : fileList)
if("data".equals(methodCategory)) {
if ("s".equals(upfileModel.getType())) {
JSONObject jb = new JSONObject();
String upfileId = upfileModel.getUuid();
String upFileName = upfileModel.getFileName();
jb.put("upfileId", upfileId);
jb.put("upFileName", upFileName);
String openUrl = "";
ResponseObject ros = getUrl(jb, id, upFileName);
JSONObject parseObject = JSON.parseObject(JSON.toJSONString(ros.getData()));
String url = parseObject.get("url").toString();
if(url.contains(".xls"))
openUrl= url;
else
openUrl = SDK.getConfAPI().getPortalUrl() + "/r/" + url.replace("./", "");
jb.put("openUrl",openUrl);
js.add(jb.toJSONString());
}
} else if ("f".equals(upfileModel.getType())) {
for (UpfileModel upfileModel : fileList)
if (methodId.contains("data")) {
if ("s".equals(upfileModel.getType())) {
JSONObject jb = new JSONObject();
String upfileId = upfileModel.getUuid();
String shape_uuid = upfileModel.getShape_uuid();
String upFileName = upfileModel.getFileName();
jb.put("upfileId", upfileId);
jb.put("upFileName", upFileName);
String openUrl = "";
ResponseObject ros = getUrl("s",jb, upfileModel);
JSONObject parseObject = JSON.parseObject(JSON.toJSONString(ros.getData()));
String url = parseObject.get("url").toString();
if (url.contains(".xls"))
openUrl = url;
else
openUrl = SDK.getConfAPI().getPortalUrl() + "/r/" + url.replace("./", "");
jb.put("openUrl", openUrl);
js.add(jb.toJSONString());
}
} else {
if ("f".equals(upfileModel.getType())) {
JSONObject jb = new JSONObject();
String upfileId = upfileModel.getUuid();
String upFileName = upfileModel.getFileName();
jb.put("upfileId", upfileId);
jb.put("upFileName", upFileName);
String openUrl = "";
ResponseObject ros = getUrl(jb, id, upFileName);
ResponseObject ros = getUrl("f",jb,upfileModel);
JSONObject parseObject = JSON.parseObject(JSON.toJSONString(ros.getData()));
String url = parseObject.get("url").toString();
if(url.contains(".xls"))
openUrl= url;
if (url.contains(".xls"))
openUrl = url;
else
openUrl = SDK.getConfAPI().getPortalUrl() + "/r/" + url.replace("./", "");
jb.put("openUrl",openUrl);
jb.put("openUrl", openUrl);
js.add(jb.toJSONString());
}
}
obj.put("upfileId", js);
} else {
obj.put("fileVersion", "1.0");
@ -2848,10 +2864,11 @@ public class ProcessPublishWeb extends ActionWeb {
}
String changeId = changeBo.getString("CHANGEDFILEIDNEW");
PALRepositoryModel model3 = PALRepositoryCache.getCache().get(changeId);
if(null!= model3) {
if (null != model3) {
String id = model3.getId();
List<String> shapeIds = new ArrayList<>();
String methodCategory = model3.getMethodCategory();
String methodId = model3.getMethodId();
List<Map<String, Object>> shapeList = CoeDesignerUtil.getShapeMessageJson2(changeId);// 获取所有节点
if (shapeList != null && shapeList.size() > 0)
for (Map<String, Object> map : shapeList)
@ -2865,7 +2882,7 @@ public class ProcessPublishWeb extends ActionWeb {
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
if (fileList != null && fileList.size() > 0)
for (UpfileModel upfileModel : fileList)
if("data".equals(methodCategory)) {
if (methodId.contains("data")) {
if ("s".equals(upfileModel.getType())) {
JSONObject jb = new JSONObject();
String upfileId = upfileModel.getUuid();
@ -2873,35 +2890,43 @@ public class ProcessPublishWeb extends ActionWeb {
jb.put("upfileId", upfileId);
jb.put("upFileName", upFileName);
String openUrl = "";
ResponseObject ros = getUrl(jb, id, upFileName);
JSONObject parseObject = JSON.parseObject(JSON.toJSONString(ros.getData()));
ResponseObject ros = getUrl("s",jb,upfileModel);
JSONObject parseObject = JSON
.parseObject(JSON.toJSONString(ros.getData()));
String url = parseObject.get("url").toString();
if(url.contains(".xls"))
openUrl= url;
if (url.contains(".xls"))
openUrl = url;
else
openUrl = SDK.getConfAPI().getPortalUrl() + "/r/" + url.replace("./", "");
jb.put("openUrl",openUrl);
openUrl = SDK.getConfAPI().getPortalUrl() + "/r/"
+ url.replace("./", "");
jb.put("openUrl", openUrl);
js.add(jb.toJSONString());
}
} else if ("f".equals(upfileModel.getType())) {
JSONObject jb = new JSONObject();
String upfileId = upfileModel.getUuid();
String upFileName = upfileModel.getFileName();
jb.put("upfileId", upfileId);
jb.put("upFileName", upFileName);
String openUrl = "";
ResponseObject ros = getUrl(jb, id, upFileName);
JSONObject parseObject = JSON.parseObject(JSON.toJSONString(ros.getData()));
String url = parseObject.get("url").toString();
if(url.contains(".xls"))
openUrl= url;
else
openUrl = SDK.getConfAPI().getPortalUrl() + "/r/" + url.replace("./", "");
jb.put("openUrl",openUrl);
js.add(jb.toJSONString());
} else {
if ("f".equals(upfileModel.getType())) {
JSONObject jb = new JSONObject();
String upfileId = upfileModel.getUuid();
String upFileName = upfileModel.getFileName();
jb.put("upfileId", upfileId);
jb.put("upFileName", upFileName);
String openUrl = "";
ResponseObject ros = getUrl("f",jb,upfileModel);
JSONObject parseObject = JSON
.parseObject(JSON.toJSONString(ros.getData()));
String url = parseObject.get("url").toString();
if (url.contains(".xls"))
openUrl = url;
else
openUrl = SDK.getConfAPI().getPortalUrl() + "/r/"
+ url.replace("./", "");
jb.put("openUrl", openUrl);
js.add(jb.toJSONString());
}
}
obj.put("upfileId", js);
}
} else {
@ -3382,78 +3407,100 @@ public class ProcessPublishWeb extends ActionWeb {
return ro.toString();
}
/**
* 校验发布相关数据是否在其它未办理完成的表单中存在
* 只要有相同versionId的流程存在未办理情况即校验不通过
*/
private void validPublisData(HashSet<String> set, String processInstId, String wsId, JSONArray array) {
if (set.isEmpty()) return;
Set<String> filter = new HashSet<>();
List<BO> list = SDK.getBOAPI().query("BO_ACT_COE_PUBLISH").addQuery("ISEND =", 0).list();
if (list != null && list.size() > 0)
/**
* 校验发布相关数据是否在其它未办理完成的表单中存在 只要有相同versionId的流程存在未办理情况即校验不通过
*/
private void validPublisData(HashSet<String> set, String processInstId, String wsId, JSONArray array) {
if (set.isEmpty())
return;
Set<String> filter = new HashSet<>();
List<BO> list = SDK.getBOAPI().query("BO_ACT_COE_PUBLISH").addQuery("ISEND =", 0).list();
if (list != null && list.size() > 0)
for (BO bo : list) {
if (bo.getBindId().equals(processInstId))
ProcessInstance instanceById = SDK.getProcessAPI().getInstanceById(bo.getBindId());
System.err.println("--------instanceById-------"+instanceById);
if (instanceById != null) {
if ("terminate".equals(instanceById.getControlState())) {
continue;
}
TaskInstance instance = SDK.getTaskAPI().getInstanceById(instanceById.getStartTaskInstId());
if (instance != null) {
String controlState = instance.getControlState();
if (!"complete".equals(controlState))
continue;
}
}else {
continue;
// 获取三个子表
{// 发布表
BO newBo = SDK.getBOAPI().query("BO_ACT_COE_PUBLISH_N").detailByBindId(bo.getBindId());
if (newBo != null) {
PALRepositoryModel temp1 = PALRepositoryCache.getCache().get(newBo.getString("PUBLISHFILEID"));
if (temp1 != null) {
List<PALRepositoryModel> list1 = PALRepositoryCache.getByVersionId(wsId, temp1.getVersionId());
for (PALRepositoryModel model : list1)
}
if (bo.getBindId().equals(processInstId))
continue;
// 获取三个子表
{// 发布表
BO newBo = SDK.getBOAPI().query("BO_ACT_COE_PUBLISH_N").detailByBindId(bo.getBindId());
if (newBo != null) {
PALRepositoryModel temp1 = PALRepositoryCache.getCache().get(newBo.getString("PUBLISHFILEID"));
if (temp1 != null) {
List<PALRepositoryModel> list1 = PALRepositoryCache.getByVersionId(wsId,
temp1.getVersionId());
for (PALRepositoryModel model : list1)
if (set.contains(model.getId()) && !filter.contains(model.getId())) {
// 存在未办理完成的表单
JSONObject obj = new JSONObject();
obj.put("type", "new");
obj.put("id", model.getId());
obj.put("name", model.getName());
obj.put("version", VersionUtil.getVersionStr(model.getVersion()));
array.add(obj);
}
}
}
}
{// 变更表
BO changeBo = SDK.getBOAPI().query("BO_ACT_COE_PUBLISH_C").detailByBindId(bo.getBindId());
if (changeBo != null) {
PALRepositoryModel temp2 = PALRepositoryCache.getCache().get(changeBo.getString("CHANGEFILEID"));
if (temp2 != null) {
List<PALRepositoryModel> list1 = PALRepositoryCache.getByVersionId(wsId, temp2.getVersionId());
for (PALRepositoryModel model : list1)
// 存在未办理完成的表单
JSONObject obj = new JSONObject();
obj.put("type", "new");
obj.put("id", model.getId());
obj.put("name", model.getName());
obj.put("version", VersionUtil.getVersionStr(model.getVersion()));
array.add(obj);
}
}
}
}
{// 变更表
BO changeBo = SDK.getBOAPI().query("BO_ACT_COE_PUBLISH_C").detailByBindId(bo.getBindId());
if (changeBo != null) {
PALRepositoryModel temp2 = PALRepositoryCache.getCache()
.get(changeBo.getString("CHANGEFILEID"));
if (temp2 != null) {
List<PALRepositoryModel> list1 = PALRepositoryCache.getByVersionId(wsId,
temp2.getVersionId());
for (PALRepositoryModel model : list1)
if (set.contains(model.getId()) && !filter.contains(model.getId())) {
// 存在未办理完成的表单
JSONObject obj = new JSONObject();
obj.put("type", "change");
obj.put("id", model.getId());
obj.put("name", model.getName());
obj.put("version", VersionUtil.getVersionStr(model.getVersion()));
array.add(obj);
}
}
}
}
{// 停用表
BO stopBo = SDK.getBOAPI().query("BO_ACT_COE_PUBLISH_S").detailByBindId(bo.getBindId());
if (stopBo != null) {
PALRepositoryModel temp3 = PALRepositoryCache.getCache().get(stopBo.getString("STOPFILEID"));
if (temp3 != null) {
List<PALRepositoryModel> list1 = PALRepositoryCache.getByVersionId(wsId, temp3.getVersionId());
for (PALRepositoryModel model : list1)
// 存在未办理完成的表单
JSONObject obj = new JSONObject();
obj.put("type", "change");
obj.put("id", model.getId());
obj.put("name", model.getName());
obj.put("version", VersionUtil.getVersionStr(model.getVersion()));
array.add(obj);
}
}
}
}
{// 停用表
BO stopBo = SDK.getBOAPI().query("BO_ACT_COE_PUBLISH_S").detailByBindId(bo.getBindId());
if (stopBo != null) {
PALRepositoryModel temp3 = PALRepositoryCache.getCache().get(stopBo.getString("STOPFILEID"));
if (temp3 != null) {
List<PALRepositoryModel> list1 = PALRepositoryCache.getByVersionId(wsId,
temp3.getVersionId());
for (PALRepositoryModel model : list1)
if (set.contains(model.getId()) && !filter.contains(model.getId())) {
// 存在未办理完成的表单
JSONObject obj = new JSONObject();
obj.put("type", "stop");
obj.put("id", model.getId());
obj.put("name", model.getName());
obj.put("version", VersionUtil.getVersionStr(model.getVersion()));
array.add(obj);
}
}
}
}
}
}
// 存在未办理完成的表单
JSONObject obj = new JSONObject();
obj.put("type", "stop");
obj.put("id", model.getId());
obj.put("name", model.getName());
obj.put("version", VersionUtil.getVersionStr(model.getVersion()));
array.add(obj);
}
}
}
}
}
}
/**
* 表单保存/办理前执行批量

View File

@ -15,7 +15,9 @@ public class ApplyTaskAfterCreated extends ExecuteListener implements ExecuteLis
@Override
public void execute(ProcessExecutionContext ctx) throws Exception {
SDK.getLogAPI().consoleInfo("[任务创建]任务创建,涉及流程状态取消审批中状态,退回原有状态" + ctx.getTaskInstance().getTitle());
ProcessStatusAPIManager.getInstance().batchUpdateApprovalStatus(ctx.getTaskInstance().getProcessInstId(), false);
if(null!=ctx.getTaskInstance()&&!"00000000-0000-0000-0000-000000000000".equals(ctx.getTaskInstance().getParentTaskInstId())) {
SDK.getLogAPI().consoleInfo("[任务创建]任务创建,涉及流程状态取消审批中状态,退回原有状态" + ctx.getTaskInstance().getTitle());
ProcessStatusAPIManager.getInstance().batchUpdateApprovalStatus(ctx.getTaskInstance().getProcessInstId(), false);
}
}
}

View File

@ -503,25 +503,29 @@ public class PublishExecuteListenerInterfaceImpl extends ExecuteListener impleme
* 发布明细如果关联角色绩效图不显示在发布界面在流程结束后同步发布
*/
public void updateRoleAndPerformance(String publishFileId,Timestamp publishDate,String type){
List roleList=new ArrayList();
roleList.add(0,"org.role");
roleList.add(1,publishFileId);
PALRepository repositoryDao = new PALRepository();
RowMap rolerowMap=DBSql.getMap("SELECT ID FROM APP_ACT_COE_PAL_REPOSITORY WHERE EXT2=?",roleList.toString());
try {
List roleList = new ArrayList();
roleList.add(0, "org.role");
roleList.add(1, publishFileId);
PALRepository repositoryDao = new PALRepository();
RowMap rolerowMap = DBSql.getMap("SELECT ID FROM APP_ACT_COE_PAL_REPOSITORY WHERE EXT2=?", roleList.toString());
if(rolerowMap!=null){
//修改流程文件的发布属性
repositoryDao.updatePublishStatusAndDate(type, rolerowMap.getString("ID"), null, publishDate);
}
List performanceList=new ArrayList();
performanceList.add(0,"control.kpi");
performanceList.add(1,publishFileId);
if (rolerowMap != null) {
//修改流程文件的发布属性
repositoryDao.updatePublishStatusAndDate(type, rolerowMap.getString("ID"), null, publishDate);
}
List performanceList = new ArrayList();
performanceList.add(0, "control.kpi");
performanceList.add(1, publishFileId);
RowMap performrowMap=DBSql.getMap("SELECT ID FROM APP_ACT_COE_PAL_REPOSITORY WHERE EXT2=?",performanceList.toString());
RowMap performrowMap = DBSql.getMap("SELECT ID FROM APP_ACT_COE_PAL_REPOSITORY WHERE EXT2=?", performanceList.toString());
if(performrowMap!=null){
//修改流程文件的发布属性
repositoryDao.updatePublishStatusAndDate(type, performrowMap.getString("ID"), null, publishDate);
if (performrowMap != null) {
//修改流程文件的发布属性
repositoryDao.updatePublishStatusAndDate(type, performrowMap.getString("ID"), null, publishDate);
}
} catch (AWSDataAccessException e) {
e.printStackTrace();
}
}

View File

@ -1,8 +1,16 @@
package com.actionsoft.apps.coe.pal.publisher.event;
import com.actionsoft.apps.coe.pal.pal.method.model.PALMethodAttributeModel;
import com.actionsoft.apps.coe.pal.pal.repository.PALRepositoryAPIManager;
import com.actionsoft.apps.coe.pal.pal.repository.PALRepositoryQueryAPIManager;
import com.actionsoft.apps.coe.pal.pal.repository.cache.PALRepositoryCache;
import com.actionsoft.apps.coe.pal.pal.repository.dao.CoeProcessLevelDaoFacotory;
import com.actionsoft.apps.coe.pal.pal.repository.dao.PALRepositoryPropertyDao;
import com.actionsoft.apps.coe.pal.pal.repository.designer.CoeDesignerShapeAPIManager;
import com.actionsoft.apps.coe.pal.pal.repository.designer.relation.cache.DesignerShapeRelationCache;
import com.actionsoft.apps.coe.pal.pal.repository.designer.relation.model.DesignerShapeRelationModel;
import com.actionsoft.apps.coe.pal.pal.repository.designer.util.CoeDesignerUtil;
import com.actionsoft.apps.coe.pal.pal.repository.designer.util.ShapeUtil;
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryModel;
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryPropertyModel;
import com.actionsoft.apps.coe.pal.pal.repository.upfile.dao.UpFileDao;
@ -23,6 +31,8 @@ import com.actionsoft.sdk.local.SDK;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -40,166 +50,329 @@ public class PublishFormBeforeSaveEvent extends InterruptListener implements Int
}
/**
*
* @param param
* @return
* @throws Exception
*/
@Override
public boolean execute(ProcessExecutionContext param) throws Exception {
List<BO> gridNData=SDK.getBOAPI().query(PublisherConstant.BOSUBTABLE_N).bindId(param.getProcessInstance().getId()).list();
String bindid=param.getProcessInstance().getId();
StringBuilder sb = new StringBuilder();
StringBuilder sb1 = new StringBuilder();
StringBuffer sb=new StringBuffer();
StringBuffer sb1=new StringBuffer();
if (gridNData.size() > 0) {
for (BO rowData : gridNData) {
//下面一行示例代码可以获取Ajax子表的每行记录的新建状态
String publishfileid = String.valueOf(rowData.getString("PUBLISHFILEID"));//注意isCreate并不是BO的一个字段该字段是有接口上层赋值的
// 校验
PALRepositoryModel model = PALRepositoryCache.getCache().get(publishfileid);
if (model == null) {
throw new AWSException("没有找到文件:" + publishfileid);
}
PALRepositoryPropertyDao repositoryPropertyDao = new PALRepositoryPropertyDao();
List<PALRepositoryPropertyModel> oldPropertyList = repositoryPropertyDao.getPropertysByPlid(publishfileid, "");
if (oldPropertyList != null && oldPropertyList.size() > 0) {
for (PALRepositoryPropertyModel propertyModel : oldPropertyList) {
//获取文件属性中支持文件
if(propertyModel.getPropertyId().equals("support_files")){
String relationFileId=JSONObject.parseObject(propertyModel.getPropertyValue()).getString("relationFileId");
String[] splitRelationFileId = new String[0];
//获取关联表单模型id
List<Map<String, Object>> fileElements;
if(UtilString.isNotEmpty(relationFileId)){
RowMap rerowMap= DBSql.getMap("SELECT * FROM APP_ACT_COE_PAL_REPOSITORY WHERE ID=?",relationFileId);
if(relationFileId.contains(",")){
splitRelationFileId=relationFileId.split(",");
fileElements = CoeDesignerUtil.getShapeMessageJson4(splitRelationFileId[0]);
RowMap rowMap=DBSql.getMap("SELECT T1.* FROM BO_ACT_COE_PUBLISH_N T1 LEFT JOIN APP_ACT_COE_PAL_REPOSITORY T2 on T1.PUBLISHFILEID=T2.ID WHERE T1.BINDID=? AND T1.PUBLISHFILEID=? AND T2.ISPUBLISH=0",bindid,splitRelationFileId[0]);
if(rowMap==null) {
sb.append("模型名称:").append(model.getName()).append("关联文件模型名称:").append(rerowMap.getString("PLNAME")).append("需进行选择发布!").append("</br>");
}
}else{
fileElements = CoeDesignerUtil.getShapeMessageJson4(relationFileId);
RowMap rowMap=DBSql.getMap("SELECT T1.* FROM BO_ACT_COE_PUBLISH_N T1 LEFT JOIN APP_ACT_COE_PAL_REPOSITORY T2 on T1.PUBLISHFILEID=T2.ID WHERE T1.BINDID=? AND T1.PUBLISHFILEID=? AND T2.ISPUBLISH=0",bindid,relationFileId);
if(rowMap==null) {
sb.append("模型名称:").append(model.getName()).append("关联文件模型名称:").append(rerowMap.getString("PLNAME")).append("需进行选择发布!").append("</br>");
}
}
for (Map<String, Object> shape : fileElements) {
String tempShapeId = shape.get("id").toString();
UpFileDao dao = new UpFileDao();
// 文件根据relationFileId 文件类型 查询
List<UpfileModel> list2;
if(relationFileId.contains(",")){
list2= dao.search(splitRelationFileId[0], tempShapeId, "s");
}else{
list2= dao.search(relationFileId, tempShapeId, "s");
}
if(list2.size()==0){
sb.append(rowData.getString("PUBLISHFILENAME")).append("关联模型名称:").append("").append(shape.get("plName")).append("").append("节点名称:").append(""+shape.get("name")+"").append("未上传附件,请检查!!!").append(",");
}
}
}
}
}
}
if (sb.length() > 0) {
sb1 = sb.deleteCharAt(sb.length() - 1);
throw new BPMNError("0313", sb1.toString());
}
verifyPublish(publishfileid,rowData,bindid,sb,sb1,"1");
}
}
//发布变更
List<BO> gridCData=SDK.getBOAPI().query(PublisherConstant.BOSUBTABLE_C).bindId(param.getProcessInstance().getId()).list();
StringBuilder sb2 = new StringBuilder();
StringBuilder sb3 = new StringBuilder();
if (gridCData.size() > 0) {
for (BO rowData : gridCData) {
//下面一行示例代码可以获取Ajax子表的每行记录的新建状态
String publishfileid = String.valueOf(rowData.getString("CHANGEDFILEIDNEW"));//注意isCreate并不是BO的一个字段该字段是有接口上层赋值的
// 校验
PALRepositoryModel model = PALRepositoryCache.getCache().get(publishfileid);
if (model == null) {
throw new AWSException("没有找到文件:" + publishfileid);
}
PALRepositoryPropertyDao repositoryPropertyDao = new PALRepositoryPropertyDao();
List<PALRepositoryPropertyModel> oldPropertyList = repositoryPropertyDao.getPropertysByPlid(publishfileid, "");
if (oldPropertyList != null && oldPropertyList.size() > 0) {
for (PALRepositoryPropertyModel propertyModel : oldPropertyList) {
//获取文件属性中支持文件
if(propertyModel.getPropertyId().equals("support_files")){
String relationFileId=JSONObject.parseObject(propertyModel.getPropertyValue()).getString("relationFileId");
String[] splitRelationFileId = new String[0];
//获取关联表单模型id
List<Map<String, Object>> fileElements;
if(UtilString.isNotEmpty(relationFileId)){
RowMap rerowMap= DBSql.getMap("SELECT * FROM APP_ACT_COE_PAL_REPOSITORY WHERE ID=?",relationFileId);
if(relationFileId.contains(",")){
splitRelationFileId=relationFileId.split(",");
fileElements = CoeDesignerUtil.getShapeMessageJson4(splitRelationFileId[0]);
RowMap rowMap=DBSql.getMap("SELECT T1.* FROM BO_ACT_COE_PUBLISH_C T1 LEFT JOIN APP_ACT_COE_PAL_REPOSITORY T2 on T1.CHANGEDFILEIDNEW=T2.ID WHERE T1.BINDID=? AND T1.CHANGEDFILEIDNEW=? AND T2.ISPUBLISH=0",bindid,splitRelationFileId[0]);
if(rowMap==null) {
sb2.append("模型名称:").append(model.getName()).append("关联文件模型名称:").append(rerowMap.getString("PLNAME")).append("需进行选择发布!").append("</br>");
}
}else{
fileElements = CoeDesignerUtil.getShapeMessageJson4(relationFileId);
RowMap rowMap=DBSql.getMap("SELECT T1.* FROM BO_ACT_COE_PUBLISH_C T1 LEFT JOIN APP_ACT_COE_PAL_REPOSITORY T2 on T1.CHANGEDFILEIDNEW=T2.ID WHERE T1.BINDID=? AND T1.CHANGEDFILEIDNEW=? AND T2.ISPUBLISH=0",bindid,relationFileId);
if(rowMap==null) {
sb2.append("模型名称:").append(model.getName()).append("关联文件模型名称:").append(rerowMap.getString("PLNAME")).append("需进行选择发布!").append("</br>");
}
}
for (Map<String, Object> shape : fileElements) {
String tempShapeId = shape.get("id").toString();
UpFileDao dao = new UpFileDao();
// 文件根据relationFileId 文件类型 查询
List<UpfileModel> list2;
if(relationFileId.contains(",")){
list2= dao.search(splitRelationFileId[0], tempShapeId, "s");
}else{
list2= dao.search(relationFileId, tempShapeId, "s");
}
if(list2.size()==0){
sb2.append(rowData.getString("PUBLISHFILENAME")).append("关联模型名称:").append("").append(shape.get("plName")).append("").append("节点名称:").append(""+shape.get("name")+"").append("未上传附件,请检查!!!").append(",");
}
}
}
}
}
}
if (sb2.length() > 0) {
sb3 = sb2.deleteCharAt(sb2.length() - 1);
throw new BPMNError("0313", sb3.toString());
}
verifyPublish(publishfileid,rowData,bindid,sb,sb1,"2");
}
}
}
return true;
}
public void verifyPublish(String publishfileid,BO rowData,String bindid,StringBuffer sb,StringBuffer sb1,String type){
defineQualityCheck(publishfileid);
// 校验
PALRepositoryModel model = PALRepositoryCache.getCache().get(publishfileid);
if (model == null) {
throw new AWSException("没有找到文件:" + publishfileid);
}
PALRepositoryPropertyDao repositoryPropertyDao = new PALRepositoryPropertyDao();
List<PALRepositoryPropertyModel> oldPropertyList = repositoryPropertyDao.getPropertysByPlid(publishfileid, "");
if (oldPropertyList != null && oldPropertyList.size() > 0) {
for (PALRepositoryPropertyModel propertyModel : oldPropertyList) {
//获取文件属性中支持文件
if(propertyModel.getPropertyId().equals("support_files")){
//获取关联模型id
String relationFileId=JSONObject.parseObject(propertyModel.getPropertyValue()).getString("relationFileId");
//获取关联表单模型id
List<Map<String, Object>> fileElements;
if(UtilString.isNotEmpty(relationFileId)){
int len=relationFileId.split(",").length;
String[] splitRelationFileId=relationFileId.split(",");
//如果当前使用中并且已发布给与通过
if(splitRelationFileId.length>0){
for(int i=0;i<splitRelationFileId.length;i++) {
fileElements = CoeDesignerUtil.getShapeMessageJson4(splitRelationFileId[i]);
PALRepositoryModel onemodel = PALRepositoryCache.getCache().get(splitRelationFileId[i]);
if(onemodel!=null) {
boolean isUse = onemodel.isUse();
boolean publish = onemodel.isPublish();
//如果状态是未发布
if (isUse == true && publish == false) {
fileElements = CoeDesignerUtil.getShapeMessageJson4(onemodel.getId());
RowMap publishNrowMap = DBSql.getMap("SELECT T1.* FROM BO_ACT_COE_PUBLISH_N T1 LEFT JOIN APP_ACT_COE_PAL_REPOSITORY T2 on T1.PUBLISHFILEID=T2.ID WHERE T1.BINDID=? AND T1.PUBLISHFILEID=? AND T2.ISPUBLISH=0", bindid, splitRelationFileId[i]);
RowMap publishCrowMap = DBSql.getMap("SELECT T1.* FROM BO_ACT_COE_PUBLISH_C T1 LEFT JOIN APP_ACT_COE_PAL_REPOSITORY T2 on T1.CHANGEDFILEIDNEW=T2.ID WHERE T1.BINDID=? AND T1.CHANGEDFILEIDNEW=? AND T2.ISPUBLISH=0", bindid, splitRelationFileId[i]);
if (publishNrowMap == null && publishCrowMap == null) {
sb.append("模型名称:").append(model.getName()).append("关联文件模型名称:").append(onemodel.getName()).append("需进行选择发布!").append("</br>");
}
//如果当前不是使用中查找使用中版本
}else if(isUse==false && publish==true){
List<PALRepositoryModel> versions = PALRepositoryCache.getByVersionId(model.getVersionId());
if(versions.size()>0) {
for(int k=0;k<versions.size();k++) {
boolean isUseV=versions.get(k).isUse();
boolean isPublishV=versions.get(k).isPublish();
if(isUseV==true && isPublishV==false) {
fileElements = CoeDesignerUtil.getShapeMessageJson4(onemodel.getId());
RowMap publishCrowMap = DBSql.getMap("SELECT T1.* FROM BO_ACT_COE_PUBLISH_C T1 LEFT JOIN APP_ACT_COE_PAL_REPOSITORY T2 on T1.CHANGEDFILEIDNEW=T2.ID WHERE T1.BINDID=? AND T1.CHANGEDFILEIDNEW=? AND T2.ISPUBLISH=0", bindid, splitRelationFileId[0]);
RowMap publishNrowMap = DBSql.getMap("SELECT T1.* FROM BO_ACT_COE_PUBLISH_N T1 LEFT JOIN APP_ACT_COE_PAL_REPOSITORY T2 on T1.PUBLISHFILEID=T2.ID WHERE T1.BINDID=? AND T1.PUBLISHFILEID=? AND T2.ISPUBLISH=0", bindid, splitRelationFileId[0]);
if (publishNrowMap == null && publishCrowMap == null) {
sb.append("模型名称:").append(model.getName()).append("关联文件模型名称:").append(onemodel.getName()).append("需进行选择发布!").append("</br>");
}
}
}
}
}else if(isUse==false && publish==false) {
List<PALRepositoryModel> versions = PALRepositoryCache.getByVersionId(model.getVersionId());
if(versions.size()>0) {
for(int k=0;k<versions.size();k++) {
boolean isUseV=versions.get(k).isUse();
boolean isPublishV=versions.get(k).isPublish();
if(isUseV==true && isPublishV==false) {
fileElements = CoeDesignerUtil.getShapeMessageJson4(onemodel.getId());
RowMap publishCrowMap = DBSql.getMap("SELECT T1.* FROM BO_ACT_COE_PUBLISH_C T1 LEFT JOIN APP_ACT_COE_PAL_REPOSITORY T2 on T1.CHANGEDFILEIDNEW=T2.ID WHERE T1.BINDID=? AND T1.CHANGEDFILEIDNEW=? AND T2.ISPUBLISH=0", bindid, splitRelationFileId[0]);
RowMap publishNrowMap = DBSql.getMap("SELECT T1.* FROM BO_ACT_COE_PUBLISH_N T1 LEFT JOIN APP_ACT_COE_PAL_REPOSITORY T2 on T1.PUBLISHFILEID=T2.ID WHERE T1.BINDID=? AND T1.PUBLISHFILEID=? AND T2.ISPUBLISH=0", bindid, splitRelationFileId[0]);
if (publishNrowMap == null && publishCrowMap == null) {
sb.append("模型名称:").append(model.getName()).append("关联文件模型名称:").append(onemodel.getName()).append("需进行选择发布!").append("</br>");
}
}
}
}
}
for (Map<String, Object> shape : fileElements) {
String tempShapeId = shape.get("id").toString();
UpFileDao dao = new UpFileDao();
// 文件根据relationFileId 文件类型 查询
List<UpfileModel> list2;
if(relationFileId.contains(",")){
list2= dao.search(splitRelationFileId[0], tempShapeId, "s");
}else{
list2= dao.search(relationFileId, tempShapeId, "s");
}
if(list2.size()==0){
String name="";
if (type == "1") {
name=rowData.getString("PUBLISHFILENAME");
} else {
name=rowData.getString("CHANGEFILENAME");
}
sb.append(name).append("关联模型名称:").append("</br>").append("").append(shape.get("plName")).append("").append("节点名称:").append(""+shape.get("name")+"").append("未上传附件,请检查!!!").append("</br>").append(",");
}
}
}
}
}
}
}
}
}
if (sb.length() > 0) {
sb1 = sb.deleteCharAt(sb.length() - 1);
throw new BPMNError("0313", sb1.toString());
}
}
/**
* 判断文件属性数据属性校验
* @param sid
* @param uuid
* @param obj
* @return
*/
public void defineQualityCheck(String uuid){
PALRepositoryModel model = PALRepositoryCache.getCache().get(uuid);
/************************************文件属性校验************************************/
ResponseObject ro = ResponseObject.newOkResponse();
PALRepositoryModel m = CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);
// 获取所有文件属性
List<PALMethodAttributeModel> methodAttrModels = PALRepositoryAPIManager.getInstance().getValidAttributeModels(m.getWsId(), m.getMethodId());
Map<String, PALMethodAttributeModel> attributeModelMap = new HashMap<>();
Map<String, Integer> sortAttrMap = new HashMap<>();
if (methodAttrModels != null) {
int index = 0;
for (PALMethodAttributeModel attr : methodAttrModels) {
attributeModelMap.put(attr.getKey(), attr);
sortAttrMap.put(attr.getKey(), ++index);
}
}
PALRepositoryPropertyDao dao = new PALRepositoryPropertyDao();
List<PALRepositoryPropertyModel> propertys = dao.getPropertysByPlid(uuid, null);
Boolean flag1=true;
Boolean flag2=true;
StringBuffer sb = new StringBuffer();
StringBuffer sb1=new StringBuffer();
StringBuffer sb2=new StringBuffer();
StringBuffer sb3=new StringBuffer();
StringBuffer sb4 = new StringBuffer();;
sb.append("<span>质量校验<span><br/>");
/***************************************************文件属性校验*************************************************/
for (PALRepositoryPropertyModel property : propertys) {
String id = property.getPropertyId();
if (!attributeModelMap.containsKey(id) || !attributeModelMap.get(id).getUse()) {
continue;
}
PALMethodAttributeModel attributeModel = attributeModelMap.get(id);
if (!attributeModel.getIsRequired()) {
continue;
}
if ("relation".equals(attributeModel.getType()) || "awsorg".equals(attributeModel.getType())) {
List<DesignerShapeRelationModel> list = DesignerShapeRelationCache.getListByAttrId(uuid, "", attributeModel.getKey());
if (list == null || list.isEmpty()) {
flag1 = false;
}
} else {
flag1 = UtilString.isNotEmpty(property.getPropertyValue());
}
if (!flag1) {// 校验不通过
sb1.append("''"+attributeModel.getTitle()+"''").append(",");
flag1 = false;
}
}
if(sb1.length()>0){
sb.append("<span>文件属性:<span><br/>");
sb.append(sb1.substring(0, sb1.length()-1));
sb.append("未填写,请检查!").append("</br>");
}
/***************************************************数据属性校验*************************************************/
// 获取文件
String prevDefinition = PALRepositoryQueryAPIManager.getInstance().getProcessDefinition(null, uuid);
Map<String, PALMethodAttributeModel> methodAttributeModelMap = new HashMap<>();
// 校验形状
List<JSONObject> elements = ShapeUtil.getShapeJsonToJsonObject(prevDefinition);
List<JSONObject> resultList = new ArrayList<>();
for (JSONObject o : elements) {
String shapeId = o.getString("id");
String shapeName = o.getString("name");
String text = UtilString.isEmpty(o.getString("text")) ? o.getString("title") : o.getString("text");
String shapeCategory = o.getString("category");
JSONObject dataAttributes = o.getJSONObject("dataAttributes");
JSONArray attributesJsonArray = dataAttributes.getJSONArray("attributesJsonArray");
for (int i = 0; i < attributesJsonArray.size(); i++) {
JSONObject attr = attributesJsonArray.getJSONObject(i);
String attrId = attr.getString("id");
String value = attr.getString("value");
if (!methodAttributeModelMap.containsKey(shapeName + "-" + attrId)) {
List<PALMethodAttributeModel> methodAttributeModels = CoeDesignerShapeAPIManager.getInstance().getValidAndUseAttributeModels(model.getWsId(), shapeCategory.replace("_", "."), shapeName, model.getMethodId());
for (PALMethodAttributeModel attributeModel : methodAttributeModels) {
if (!methodAttributeModelMap.containsKey(shapeName + "-" + attributeModel.getKey())) {
methodAttributeModelMap.put(shapeName + "-" + attributeModel.getKey(), attributeModel);
}
}
}
if (!methodAttributeModelMap.containsKey(shapeName + "-" + attrId)) {
continue;// 没有配置到形状的属性不处理
}
PALMethodAttributeModel attrModel = methodAttributeModelMap.get(shapeName + "-" + attrId);
if (attrModel.getIsRequired()) {// 筛选必填
String attrType = attrModel.getType();
if ("relation".equals(attrType) || "awsorg".equals(attrType)) {
List<DesignerShapeRelationModel> list = DesignerShapeRelationCache.getListByAttrId(model.getId(), shapeId, attrId);
if (list == null || list.isEmpty()) {
flag2 = false;
}
} else {
flag2 = UtilString.isNotEmpty(value);
}
if (!flag2) {
sb2.append("<span>节点名称:<span>"+""+text+"").append("''"+attrModel.getNewTitle()+"''").append("</br>");
}
}
}
}
if(sb2.length()>0){
sb.append("<span>数据属性:<span><br/>");
sb.append(sb2.substring(0, sb2.length()-1));
sb.append("未填写,请检查!");
}
int index=sb.indexOf("未填写");
if(index!=-1){
ro.put("result","error");
sb1 = sb.deleteCharAt(sb.length() - 1);
throw new BPMNError("0313", sb1.toString());
}
}
}

View File

@ -1,7 +1,10 @@
package com.actionsoft.apps.coe.pal.publisher.event;
import java.sql.Connection;
import java.text.SimpleDateFormat;
import java.util.Date;
import com.actionsoft.apps.coe.pal.publisher.constant.PublisherConstant;
import com.actionsoft.bpms.bo.engine.BO;
import com.actionsoft.bpms.bpmn.engine.core.delegate.ProcessExecutionContext;
import com.actionsoft.bpms.bpmn.engine.listener.ExecuteListener;
@ -9,6 +12,8 @@ import com.actionsoft.bpms.bpmn.engine.listener.ListenerConst;
import com.actionsoft.bpms.commons.database.RowMap;
import com.actionsoft.bpms.server.UserContext;
import com.actionsoft.bpms.util.DBSql;
import com.actionsoft.bpms.util.UUIDGener;
import com.actionsoft.exception.AWSException;
import com.actionsoft.sdk.local.SDK;
/**
@ -22,11 +27,29 @@ public class PublishLoadBefore extends ExecuteListener {
}
public void execute(ProcessExecutionContext ctx) throws Exception {
UserContext userContext = ctx.getUserContext();
Date date=new Date();//此时date为当前的时间
SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置当前时间的格式为年--
String titled ="流程发布-"+ userContext.getUserName()+"-"+dateFormat.format(date);
String boId = ctx.getParameterOfString(ListenerConst.FORM_EVENT_PARAM_BOID);
//BO表记录注意该记录的数据如果被修改将会体现到表单上修改后不会直接持久化到数据库中
BO boData = (BO) ctx.getParameter(ListenerConst.FORM_EVENT_PARAM_BODATA);
//如果有值就不再去计算了
if(null!=boData) {
BO bo = new BO();
if(null==boData) {
bo.set("TEAMID", "");
bo.set("TEAMNAME", "");
bo.set("WSID", "");
bo.set("PUBLISHID", UUIDGener.getUUID());
bo.set("APPLYUSERID", userContext.getUID());
bo.set("APPLYUSERNAME", userContext.getUserName());
String deptId = userContext.getUserModel().getDepartmentId();
bo.set("APPLYDEPTID", deptId);
bo.set("APPLYDEPTNAME", SDK.getORGAPI().getDepartmentById(deptId).getName());
bo.set("APPLYDATE", new Date());
bo.set("SAVESTATUS", 1);//流程实例状态
}else {
//如果有值就不再去计算了
if(boData.getString("DEPARTMENT_PROOFREADER") != null && !boData.getString("DEPARTMENT_PROOFREADER").isEmpty()){
return;
}
@ -44,13 +67,21 @@ public class PublishLoadBefore extends ExecuteListener {
// 可以为boData中的字段进行赋值
Connection open = DBSql.open();
RowMap data = DBSql.getMap(open,"select DEAPRTMNUM,PROCESSMNUMBER from BO_ACT_PROCESSMANAGER where ORGDEPART in ("+substring+")");
if(null==data) {
throw new AWSException("请配置联系管理员流程经理和流程校对人!");
}
open.close();
// RowMap data = DBSql.getMap(String.format("select DEAPRTMNUM,PROCESSMNUMBER from BO_ACT_PROCESSMANAGER where ORGNAME like'%s' and ORGDEPART like'%s'", allpath, allpath));
if(data != null){
if(data != null&&null!=boData){
boData.set("DEPARTMENT_PROOFREADER", data.getString("DEAPRTMNUM"));
boData.set("PROCESS_MANAGER", data.getString("PROCESSMNUMBER"));
}else {
bo.set("DEPARTMENT_PROOFREADER", data.getString("DEAPRTMNUM"));
bo.set("PROCESS_MANAGER", data.getString("PROCESSMNUMBER"));
SDK.getBOAPI().create(PublisherConstant.BOTABLENAME, bo, ctx.getProcessInstance(), userContext);
}
// 如果需要展示在表单上需要调用如下代码注意此操作不会更新数据库中的数据
// ctx.setParameter(ListenerConst.FORM_EVENT_PARAM_BODATA, boData);
ctx.setParameter(ListenerConst.FORM_EVENT_PARAM_BODATA, boData);
}
}

View File

@ -1,5 +1,6 @@
package com.actionsoft.apps.coe.pal.publisher.event;
import com.actionsoft.apps.coe.pal.pal.manage.publish.model.PublishHistoryModel;
import com.actionsoft.apps.coe.pal.pal.manage.publish.model.PublishListHistoryModel;
import com.actionsoft.apps.coe.pal.pal.repository.cache.PALRepositoryCache;
import com.actionsoft.apps.coe.pal.pal.repository.dao.PALRepository;
@ -38,6 +39,7 @@ public class PublishProcessAfterCompleteEvent extends ExecuteListener implements
@Override
public void execute(ProcessExecutionContext param) throws Exception {
PublishHistoryModel model = new PublishHistoryModel();
String processInstId = param.getProcessInstance().getId();
BO bo = SDK.getBOAPI().query(PublisherConstant.BOTABLENAME).detailByBindId(processInstId);
List<BO> bolistN = SDK.getBOAPI().query(PublisherConstant.BOSUBTABLE_N).bindId(processInstId).list();
@ -55,6 +57,13 @@ public class PublishProcessAfterCompleteEvent extends ExecuteListener implements
}
}
if (bolistC != null) {
for (BO boC : bolistC) {
//修改流程文件的发布属性
repositoryDao.updatePublishStatusAndDate("C", boC.get("CHANGEDFILEIDNEW").toString(), boC.get("CHANGEFILEID").toString(), model.getPublishDate());
}
}
}
@ -121,8 +130,7 @@ public class PublishProcessAfterCompleteEvent extends ExecuteListener implements
//回填绩效编号操作
if (getid.equals("Process_performance_indicator_Number")) {
//获取当前MP绩效最新排序数值
//获取当前MA绩效最新排序数值
BO performanceNumberBO = SDK.getBOAPI().query("BO_EU_PERFORMANCE_NUMBER").addQuery("PERFORMANCE_TYPE=", "control.ma").addQuery("PROCESS_NUMBER=", value).detail();
if (performanceNumberBO != null) {
@ -149,15 +157,6 @@ public class PublishProcessAfterCompleteEvent extends ExecuteListener implements
}
//插入绩效指标库操作
if (getid.equals("Process_Architecture_L1")) {//L1
recordBO.set("PROCESS_ARCHITECTURE_L1", value);
}
if (getid.equals("Process_Architecture_L2")) {//L2
recordBO.set("PROCESS_ARCHITECTURE_L2", value);
}
if (getid.equals("Process_Architecture_L3")) {//L3
recordBO.set("PROCESS_ARCHITECTURE_L3", value);
}
if (getid.equals("Number_of_the_associated_flow_file")) {//关联流程文件编号
recordBO.set("NUMBER_OF_THE_ASSO_FLOW_FILE", value);
}

View File

@ -49,7 +49,7 @@ $(document).ready(function(){
initPagination();// 初始化页码
initOptButton();
// listenCloseEvent();// 关闭窗口执行,关闭窗口/刷新都会造成流程实例被删除,注释掉
listenCloseEvent();// 关闭窗口执行,关闭窗口/刷新都会造成流程实例被删除,注释掉
})
@ -306,9 +306,9 @@ function initHtml() {
changeHtml += '<tr>';
changeHtml += '<th style="background-color:#fff;" class="width_2"><input name="checkAll" id="change_check_all" type="checkbox" class="awsui-checkbox"></th>';
changeHtml += '<th style="background-color:#fff;" class="width_2">序号</th>';
changeHtml += '<th style="background-color:#fff;" class="width_20">流程制度模型</th>';
changeHtml += '<th style="background-color:#fff;" class="width_20">变更后流程制度模型</th>';
changeHtml += '<th style="background-color:#fff;" class="width_35">文件预览</th>';
changeHtml += '<th style="background-color:#fff;" class="width_17">流程制度模型</th>';
changeHtml += '<th style="background-color:#fff;" class="width_17">变更后流程制度模型</th>';
changeHtml += '<th style="background-color:#fff;" class="width_30">文件预览</th>';
changeHtml += '<th style="background-color:#fff;" class="width_20">文件编号</th>';
changeHtml += '</tr>';
changeHtml += '</thead>';
@ -568,8 +568,8 @@ function showlist(data, type, pageNumber, start){
var outputName = getOutputName(curr.category, curr.methodId);
var reportName = '<a href="javascript:void(0);" onclick="openReportFile(\'' + curr.taskId + '\')">' + fileName + "-" + outputName + '</a><span id="download_output_' + curr.publishFileId + '" style="cursor: pointer;" onclick="downloadReport(\'' + curr.publishFileId + '\',\'' + curr.taskId + '\')"><i class="awsui-iconfont" style="font-size: 12px;">&#xe653;</i></span>';
var quickCreate = "<a href='javascript:void(0);' onclick='quickCreateReport(" + JSON.stringify(curr) + ", $(this), \"new\")'>立即创建</a>";
var processNumber = '';
if(curr.processNumber != undefined){
var processNumber = '提交后生成文件编号';
if(curr.processNumber != undefined&&curr.processNumber != ''){
processNumber = curr.processNumber;
}
reportName = (curr.taskId == undefined || curr.taskId == '') ? '无' : curr.taskId == 'submit_create' ? quickCreate : reportName;
@ -583,7 +583,11 @@ function showlist(data, type, pageNumber, start){
html += '<td ' + tableTdCss + '><input name="check" ' + checkboxPerm + ' class="awsui-checkbox" data-id="' + curr.publishFileId + '" type="checkbox" type="awsui-checkbox"></td>';
html += '<td ' + tableTdCss + '>' + s + '</td>';
html += '<td ' + tableTdCss + '><a href="javascript:void(0);" onclick="openPortalPage(\'' + curr.publishFileId + '\', \'' + curr.taskId + '\')">' + fileName + '</a></td>';
html += '<td ' + tableTdCss + '></p>' + reportName + fName+'</td>';
if(fName!=''){
html += '<td ' + tableTdCss + '></p>' + reportName + fName+'</td>';
}else{
html += '<td ' + tableTdCss + '>' + reportName +'</td>';
}
//html += '<td ' + tableTdCss + '>' + fName + '</td>';
//html += '<td style="padding:1px;"><textarea onblur="changeDesc(\'new\',\'' + curr.publishFileId + '\', this)" style="width:100%;height:30px;" ' + textareaPerm + ' class="awsui-input">' + curr.publishDesc + '</textarea></td>';
html += '<td style="padding:1px;"><span>'+ processNumber +'</span></td>';
@ -608,6 +612,10 @@ function showlist(data, type, pageNumber, start){
var fName = '';
var upFileId = curr.upfileId;
var changNumer = '提交后生成文件编号';
if(curr.changedNumber != undefined&&curr.changedNumber != ''){
changNumer = curr.changedNumber;
}
if(upFileId!=''&&upFileId!=undefined){
for(var i = 0; i < upFileId.length; i++){
var upFileJson = upFileId[i]
@ -653,11 +661,16 @@ function showlist(data, type, pageNumber, start){
html += '<td ' + tableTdCss + '>' + sourceFileName + '</td>';
var selectPerm = editPerm ? '<select id="change_' + curr.changeFileId + '"></select>' : '<a href="javascript:void(0);" onclick="openPortalPage(\'' + targetId + '\', \'' + curr.taskId + '\')">' + targetFileName + '</a>';
html += '<td ' + tableTdCss + '>' + selectPerm + '</td>';
html += '<td ' + tableTdCss + '></p>' + reportName + fName +'</td>';
if(fName!=''){
html += '<td ' + tableTdCss + '></p>' + reportName + fName +'</td>';
}else{
html += '<td ' + tableTdCss + '>' + reportName +'</td>';
}
//html += '<td ' + tableTdCss + '></p>' + reportName + fName +'</td>';
//html += '<td ' + tableTdCss + ' id="report_' + curr.changeFileId + '">' + reportName + '</td>';
//html += '<td ' + tableTdCss + '>' + fName + '</td>';
html += '<td ' + tableTdCss + '>' + curr.changedNumber + '</td>';
//html += '<td style="padding:1px;"><textarea onblur="changeDesc(\'change\',\'' + curr.changeFileId + '\', this)" style="width:100%;height:30px;" ' + textareaPerm + ' class="awsui-input">' + curr.changedDesc + '</textarea></td>';
html += '<td ' + tableTdCss + '>' + changNumer +'</td>';
html += '</tr>';
// select2下拉框处理
var opt1 = {
@ -1997,6 +2010,8 @@ function dealPublishCheck(isCheck, type) {
// 单独保存子表操作
function saveFormData(type) {
alert(1111111)
debugger
$.simpleAlert('正在保存', 'loading');
var saveData = [];
if (type == 'new') {
@ -2036,6 +2051,7 @@ function saveFormData(type) {
}
});
$.simpleAlert('close');
debugger
if (flag) {
var msg = '以下文件已经在其他未办理完成的表单中,不允许保存/办理';
if (tempData.length > 0) {
@ -2426,7 +2442,7 @@ function listenCloseEvent() {
awsui.ajax.request({
type: "POST",
url: "./jd",
async: false,
/*async: false,*/
data: {
sid: sid,
cmd: "com.actionsoft.apps.coe.pal.publisher_save_status_query",
@ -2448,7 +2464,7 @@ function listenCloseEvent() {
awsui.ajax.request({
type: "POST",
url: "./jd",
async: false,
/*async: false,*/
data: {
sid: sid,
cmd: "com.actionsoft.apps.coe.pal.publisher_save_status_query",
@ -2461,7 +2477,7 @@ function listenCloseEvent() {
awsui.ajax.request({
type: "POST",
url: "./jd",
async: false,
/*async: false,*/
data: {
sid: sid,
cmd: "com.actionsoft.apps.coe.pal.publisher_remove",

View File

@ -4,24 +4,14 @@ var newTemp;
var changeTemp;
var stopTemp;
/**
* 获取地址参数
* @param name
* @returns {*}
* @constructor
*/
function GetQueryString(name) {
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null)return unescape(r[2]); return null;
}
/**
* 初始移动端明细数据
*/
function initMobileData() {
getWsId();
/**
* 获取访问地址得到参数判断
* @type {*}
@ -32,11 +22,26 @@ function initMobileData() {
if(openState=="11"){
$("#BTN_ADHOC_TASK_OK").text("批准");
$("#BTN_ADHOC_TASK").text("加签");
$("#saveButtons").children()[0].remove();
$("#saveButtons").children()[0].remove();
$("#saveButtons").children()[1].remove();
$("#saveButtons").children()[2].remove();
$("#saveButtons").append("<div class='mui-tab-item'><button type='button' class='mobile-button' id='BTN_ADHOC_TASK' name='BTN_ADHOC_TASK'>加签</button></div>");
}
}
/**
* 获取地址参数
* @param name
* @returns {*}
* @constructor
*/
function GetQueryString(name) {
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null)return unescape(r[2]); return null;
}
$("table[id^='AWS-MobileGrid-Zone']").empty();
$("table[id^='AWS-MobileGrid-Zone']").html('<div id="contentDiv1" style="display: none;" border="0"></div><div id="contentDiv2" style="display: none;" border="0"></div><div id="contentDiv3" style="display: none;" border="0"></div>');
@ -49,9 +54,8 @@ function initMobileData() {
newHtml +='<table border="0" cellspacing="0" cellpadding="0" heightType="auto" widthType="fixed" style="width:100%;">';
newHtml +='<tbody>';
newHtml +='<tr class="form-grid-mobile-common-toolbar">';
newHtml +='<td>';
newHtml +='<div class="form-grid-mobile-common-toolbar"></div>';
newHtml +='</div>';
newHtml +='<td class="awsui-ux-title" colspan="2">';
newHtml +='<span style="white-space: nowrap;">待发布文件</span>';
newHtml +='</td>';
newHtml +='</tr>';
newHtml +='<tr>';
@ -69,9 +73,8 @@ function initMobileData() {
changeHtml +='<table border="0" cellspacing="0" cellpadding="0" heightType="auto" widthType="fixed" style="width:100%;">';
changeHtml +='<tbody>';
changeHtml +='<tr class="form-grid-mobile-common-toolbar">';
changeHtml +='<td>';
changeHtml +='<div class="form-grid-mobile-common-toolbar"></div>';
changeHtml +='</div>';
changeHtml +='<td class="awsui-ux-title" colspan="2">';
changeHtml +='<span style="white-space: nowrap;">版本变更文件</span>';
changeHtml +='</td>';
changeHtml +='</tr>';
changeHtml +='<tr>';
@ -90,9 +93,8 @@ function initMobileData() {
stopHtml +='<table border="0" cellspacing="0" cellpadding="0" heightType="auto" widthType="fixed" style="width:100%;">';
stopHtml +='<tbody>';
stopHtml +='<tr class="form-grid-mobile-common-toolbar">';
stopHtml +='<td>';
stopHtml +='<div class="form-grid-mobile-common-toolbar"></div>';
stopHtml +='</div>';
stopHtml +='<td class="awsui-ux-title" colspan="2">';
stopHtml +='<span style="white-space: nowrap;">版本变更文件</span>';
stopHtml +='</td>';
stopHtml +='</tr>';
stopHtml +='<tr>';
@ -106,6 +108,28 @@ function initMobileData() {
}
//获取wsid
function getWsId() {
var param = {
sid : $("#sid").val(),
cmd : "com.actionsoft.apps.coe.pal.publisher_publish_getWsId"
}
$.ajax({
url : "./jd",
type : "POST",
dataType : "JSON",
data : param,
async: false,
success : function(r) {
if (r.result == 'ok') {
var wsId=$("#WSID").val();
if(wsId==""){
$("#WSID").val(r.data.wsId);
}
}
}
});
}
// 主体内容显示与隐藏
@ -206,18 +230,41 @@ function showlist(data, type, pageNumber, start){
for (var i = 0, s = start; i < pageLimit; i++, s++) {
var curr;
if ((curr = data[s - 1]) != undefined) {
var fileName = curr.publishFileName + ' V' + curr.fileVersion;
var outputName = getOutputName(curr.category, curr.methodId);
html +='<tr>';
html +='<td class="form-grid-mobile-common-row" width=100%>';
html +='<span class="form-grid-mobile-common-tap" onclick="openReportFile(\'' + curr.taskId +'\');return false" >' + fileName + "-" + outputName + '</span>';
html +='<span class="form-grid-mobile-common-tap" onclick="openReportFile(\'' + curr.taskId +'\');return false" >' +'文件预览: '+ fileName + "-" + outputName + '</span>';
html +='</td>';
html +='</tr>';
html +='<tr>';
html +='<td class="form-grid-mobile-common-row" width=100%>';
html +='<span class="form-grid-mobile-common-tap" onclick="openPortalPage(\'' + curr.publishFileId + '\', \'' + curr.taskId + '\')">' + fileName+'</span>';
html +='<span class="form-grid-mobile-common-tap" onclick="openPortalPage(\'' + curr.publishFileId + '\', \'' + curr.taskId + '\')">' +'模型预览: '+ fileName+'</span>';
html +='</td>';
html +='</tr>';
//获取文件属性附件
var upFileId = curr.upfileId;
if(upFileId!=''&&upFileId!=undefined){
for(var i = 0; i < upFileId.length; i++){
var upFileJson = upFileId[i]
var json=JSON.parse(upFileJson);
var upName = json.upFileName;
var openUrl = json.openUrl;
html +='<td class="form-grid-mobile-common-row" width=100%>';
html +='<span class="form-grid-mobile-common-tap" onclick="openUrl(\'' + openUrl + '\')">' +'关联附件: '+ upName+'</span>';
html +='</td>';
}
}
}
}
$("#appendNewBody").empty().html(html);
@ -244,14 +291,31 @@ function showlist(data, type, pageNumber, start){
html += '<tr>';
html += '<td class="form-grid-mobile-common-row" width=100%>';
html += '<span class="form-grid-mobile-common-tap" onclick="openReportFile(\'' + curr.taskId + '\');return false" >' + targetFileName + "-" + outputName + '</span>';
html += '<span class="form-grid-mobile-common-tap" onclick="openReportFile(\'' + curr.taskId + '\');return false" >' +'文件预览: '+ targetFileName + "-" + outputName + '</span>';
html += '</td>';
html +='<tr>';
html +='<td class="form-grid-mobile-common-row" width=100%>';
html +='<span class="form-grid-mobile-common-tap" onclick="openPortalPage(\'' + targetId + '\', \'' + curr.taskId + '\')">' + targetFileName+'</span>';
html +='<span class="form-grid-mobile-common-tap" onclick="openPortalPage(\'' + targetId + '\', \'' + curr.taskId + '\')">' +'模型预览: '+ targetFileName+'</span>';
html +='</td>';
html +='</tr>';
var upFileId = curr.upfileId;
if(upFileId!=''&&upFileId!=undefined){
for(var i = 0; i < upFileId.length; i++){
var upFileJson = upFileId[i]
var json=JSON.parse(upFileJson);
var upName = json.upFileName;
var openUrl = json.openUrl;
html +='<tr>';
html +='<td class="form-grid-mobile-common-row" width=100%>';
html +='<span class="form-grid-mobile-common-tap" onclick="openUrl(\'' + openUrl + '\')">' +'关联附件: '+ upName+'</span>';
html +='</td>';
html +='</tr>';
}
}
}
}
$("#appendChangeBody").empty().html(html);
@ -282,7 +346,12 @@ function showlist(data, type, pageNumber, start){
}
//预览下载附件
function openUrl(url) {
//$.simpleAlert("文件正在处理", "loading");
var url = url;
window.location.href = url;
}
// 打开流程手册
function openReportFile(taskId,appendid) {

Some files were not shown because too many files have changed in this diff Show More