📄 view_graph.php
字号:
<?php
include_once( "inc/auth.php" );
include_once( "inc/utility_all.php" );
include_once( "../../prcs_role.php" );
setcookie( "flow_view", 0, time( ) + 86400000, "/" );
if ( !run_role( $RUN_ID, 0 ) )
{
exit( );
}
$query = "SELECT * from FLOW_RUN WHERE RUN_ID=".$RUN_ID;
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$RUN_NAME = $ROW['RUN_NAME'];
$FLOW_ID = $ROW['FLOW_ID'];
$DEL_FLAG = $ROW['DEL_FLAG'];
}
$query = "SELECT * from FLOW_TYPE where FLOW_ID=".$FLOW_ID;
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$FLOW_NAME = $ROW['FLOW_NAME'];
$FLOW_TYPE = $ROW['FLOW_TYPE'];
}
$TITLE = "流程图 - ".$FLOW_NAME.( " - (".$RUN_ID.")" ).$RUN_NAME;
echo "\r\n<HTML xmlns:vml=\"urn:schemas-microsoft-com:vml\">\r\n<HEAD>\r\n<title>";
echo $TITLE;
echo "</title>\r\n<OBJECT id=\"vmlRender\" classid=\"CLSID:10072CEC-8CC1-11D1-986E-00A0C955B42E\" VIEWASTEXT></OBJECT>\r\n<style>\r\nvml\\:* { FONT-SIZE: 12px; BEHAVIOR: url(#VMLRender) }\r\n#tooltip {z-index:65535;position:absolute;border:1px solid #333;background:#f7f5d1;padding:2px 5px;color:#333;display:none;}\r\n</style>\r\n<script language=\"javascript\" src=\"/inc/js/jquery/jquery.js\"></script>\r\n<script language=\"javascript\" src=\"/inc/js/jquery/utility.js\"></script>\r\n<script language=\"javascript\" src=\"set_main.js\"></script>\r\n<script>\r\njQuery(document).ready(function(){\r\n\ttooltip();\r\n\tjQuery(\"roundrect\").each(function(){\r\n\t\tvar flowType=jQuery(this).attr(\"flowType\");\r\n\t\tif(flowType!='' && flowType!='timeout')\r\n\t\t jQuery(this).dblclick(function(){\r\n\t\t \tvar myleft=(screen.availWidth-800)/2;\r\n\t\t \twindow.open(\"index.php?RUN_ID=\"+flowType,flowType,\"status=0,toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes,width=800,height=400,left=\"+myleft+\",top=100\")})\r\n\t\t});\r\n});\r\nfunction view_graph()\r\n{\r\n myleft=(screen.availWidth-800)/2;\r\n window.open(\"view_graph?FLOW_ID=";
echo $FLOW_ID;
echo "\",\"graph_view\",\"status=0,toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes,width=800,height=500,left=\"+myleft+\",top=50\");\r\n}\r\nfocus();\r\n</script>\r\n</head>\r\n<body class=\"bodycolor\" topmargin=\"5\">\r\n\r\n<table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"3\" class=\"small\">\r\n <tr>\r\n <td class=\"Big\"><img src=\"/images/menu/workflow.gif\" align=\"absmiddle\"><span class=\"big3\"> ";
echo $RUN_NAME;
echo " 流水号:";
echo $RUN_ID;
echo "</span> \r\n </td>\r\n </tr>\r\n</table>\r\n<div>\r\n颜色标识说明:<span style=\"color:#FFBC18;\">■</span>未接收\r\n <span style=\"color:#50C625;\">■</span>办理中\r\n <span style=\"color:#F4A8BD;\">■</span>办理完毕\r\n <span style=\"color:#D7D7D7;\">■</span>预设步骤\r\n <span style=\"color:#70A0DD;\">■</span>子流程\r\n 注:子流程可双击步骤查看流程图 \r\n";
$query = "SELECT PARENT_RUN from FLOW_RUN where RUN_ID=".$RUN_ID;
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$PARENT_RUN = $ROW['PARENT_RUN'];
}
if ( $PARENT_RUN != 0 )
{
echo "<input type=\"button\" class=\"SmallButton\" value=\"查看父流程\" onclick=window.open(\"index.php?RUN_ID=".$PARENT_RUN."\",".$PARENT_RUN.",\"status=0,toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes,width=800,height=500,left=100,top=50\") >";
}
$query = "SELECT MAX(PRCS_ID) from FLOW_RUN_PRCS where RUN_ID=".$RUN_ID;
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$PRCS_ID = $ROW[0];
}
$query = "SELECT MAX(PRCS_ID) from FLOW_RUN_PRCS where RUN_ID=".$RUN_ID." and PRCS_FLAG<>'5'";
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$PRCS_ID_NOW = $ROW[0];
}
$TOP_AUTO = 50;
$LEFT_AUTO = 10;
$PRCS_ID_I = 1;
for ( ; $PRCS_ID_I <= $PRCS_ID; ++$PRCS_ID_I )
{
$query = "SELECT * from FLOW_RUN_PRCS where RUN_ID=".$RUN_ID." and PRCS_ID={$PRCS_ID_I} group by FLOW_PRCS";
$cursor = exequery( $connection, $query );
$NUM_ROWS = mysql_num_rows( $cursor );
$FLOW_PRCS_COUNT = 0;
$LAST_FLOW_PRCS = "";
while ( $ROW = mysql_fetch_array( $cursor ) )
{
$FLOW_PRCS = $ROW['FLOW_PRCS'];
$PARENT = $ROW['PARENT'];
if ( $LAST_FLOW_PRCS != $FLOW_PRCS )
{
$LAST_FLOW_PRCS = $FLOW_PRCS;
}
if ( $FLOW_TYPE == 1 )
{
$query2 = "SELECT PRCS_NAME,TIME_OUT,SIGNLOOK from FLOW_PROCESS WHERE FLOW_ID=".$FLOW_ID." AND PRCS_ID={$FLOW_PRCS}";
$cursor2 = exequery( $connection, $query2 );
if ( $ROW = mysql_fetch_array( $cursor2 ) )
{
$PRCS_NAME = $ROW['PRCS_NAME'];
$TIME_OUT = $ROW['TIME_OUT'];
$SIGNLOOK = $ROW['SIGNLOOK'];
}
else
{
$PRCS_NAME = "<font color=red>流程步骤已删除</font>";
}
}
$OP_USER_NAME = "";
$OP_PRCS_FLAG = "";
$query1 = "SELECT * from FLOW_RUN_PRCS where RUN_ID=".$RUN_ID." and PRCS_ID={$PRCS_ID_I} and FLOW_PRCS='{$FLOW_PRCS}' order by OP_FLAG,PRCS_FLAG DESC,PRCS_TIME";
$cursor1 = exequery( $connection, $query1 );
$PRCS_FLAG_DESC = "";
while ( $ROW = mysql_fetch_array( $cursor1 ) )
{
$PRCS_USER = $ROW['USER_ID'];
$PRCS_TIME = $ROW['PRCS_TIME'];
$DELIVER_TIME = $ROW['DELIVER_TIME'];
$PRCS_FLAG = $ROW['PRCS_FLAG'];
$OP_FLAG = $ROW['OP_FLAG'];
$CHILD_RUN = $ROW['CHILD_RUN'];
$TOP_FLAG = $ROW['TOP_FLAG'];
$PRCS_USER_NAME = "";
$query2 = "SELECT USER_NAME,DEPT_ID from USER where USER_ID='".$PRCS_USER."'";
$cursor2 = exequery( $connection, $query2 );
if ( $ROW = mysql_fetch_array( $cursor2 ) )
{
$PRCS_USER_NAME = $ROW['USER_NAME'];
$PRCS_USER_NAME1 = $PRCS_USER_NAME;
$DEPT_ID = $ROW['DEPT_ID'];
$DEPT_NAME = dept_long_name( $DEPT_ID );
}
else
{
$PRCS_USER_NAME = $PRCS_USER;
}
if ( $OP_FLAG == 1 )
{
$OP_PRCS_FLAG = $PRCS_FLAG;
$OP_USER_NAME = $PRCS_USER_NAME;
}
if ( $TOP_FLAG == 2 )
{
$OP_USER_NAME = "无主办人会签";
if ( $OP_PRCS_FLAG == "" )
{
$OP_PRCS_FLAG = $PRCS_FLAG;
}
else if ( $PRCS_FLAG < $OP_PRCS_FLAG )
{
$OP_PRCS_FLAG = $PRCS_FLAG;
}
}
if ( $PRCS_FLAG == 1 )
{
$TIME_USED = 0;
}
else if ( $PRCS_FLAG == 2 )
{
$TIME_USED = time( ) - strtotime( $PRCS_TIME );
}
else
{
$TIME_USED = strtotime( $DELIVER_TIME ) - strtotime( $PRCS_TIME );
if ( $DELIVER_TIME == "" )
{
$TIME_USED = 0;
}
}
if ( $PRCS_TIME == "" )
{
$TIME_USED = 0;
}
$DAY = floor( $TIME_USED / 86400 );
$HOUR = floor( $TIME_USED % 86400 / 3600 );
$MIN = floor( $TIME_USED % 3600 / 60 );
$SEC = floor( $TIME_USED % 60 );
$TIME_STR = "";
if ( 0 < $DAY )
{
$TIME_STR .= $DAY."天";
}
if ( 0 < $HOUR )
{
$TIME_STR .= $HOUR."时";
}
if ( 0 < $MIN )
{
$TIME_STR .= $MIN."分";
}
if ( 0 < $SEC )
{
$TIME_STR .= $SEC."秒";
}
$TIME_OUT_FLAG = 0;
if ( $PRCS_FLAG == "2" && $PRCS_TIME != "" && $TIME_OUT != "" && $TIME_OUT * 3600 < $TIME_USED )
{
$TIME_OUT_FLAG = 1;
if ( $OP_FLAG )
{
$OP_TIME_OUT_FLAG = 1;
}
$TIME_USED -= $TIME_OUT * 3600;
$DAY = floor( $TIME_USED / 86400 );
$HOUR = floor( $TIME_USED % 86400 / 3600 );
$MIN = floor( $TIME_USED % 3600 / 60 );
$SEC = floor( $TIME_USED % 60 );
$TIME_USED = "";
if ( 0 < $DAY )
{
$TIME_USED .= $DAY."天";
}
if ( 0 < $HOUR )
{
$TIME_USED .= $HOUR."时";
}
if ( 0 < $MIN )
{
$TIME_USED .= $MIN."分";
}
if ( 0 < $SEC )
{
$TIME_USED .= $SEC."秒";
}
}
if ( $PRCS_FLAG == 1 || $TIME_OUT_FLAG == 1 )
{
$TIME_TO_ID .= $PRCS_USER.",";
$TIME_TO_NAME .= $PRCS_USER_NAME1.",";
}
if ( $OP_FLAG == 1 )
{
$PRCS_USER_NAME = "<span style=\"text-decoration:underline;font-weight:bold;color:red\">".$PRCS_USER_NAME." 主办</span>";
}
else
{
$PRCS_USER_NAME = "<span style=\"text-decoration:underline;font-weight:bold\">".$PRCS_USER_NAME."</span>";
}
if ( $PRCS_FLAG == 1 )
{
$PRCS_FLAG_DESC .= "<img src=\"/images/email_close.gif\" align=\"absmiddle\"> ".$PRCS_USER_NAME."[<font color=green>未接收办理</font>]";
}
else if ( $PRCS_FLAG == 2 )
{
$PRCS_FLAG_DESC .= "<img src=\"/images/email_open.gif\" align=\"absmiddle\"> ".$PRCS_USER_NAME."[<font color=green>办理中,已用时:";
$PRCS_FLAG_DESC .= $TIME_STR."</font>]";
if ( $TIME_OUT_FLAG )
{
$PRCS_FLAG_DESC .= "<br> <span style=\"color:red\">限时".$TIME_OUT."小时,超时".$TIME_USED."</span>";
}
$PRCS_FLAG_DESC .= "<br> 开始于:".$PRCS_TIME;
}
else if ( $PRCS_FLAG == 3 )
{
$PRCS_FLAG_DESC .= "<img src=\"/images/flow_next.gif\" align=\"absmiddle\"> ".$PRCS_USER_NAME."[<font color=green>已转交下步,用时:";
$PRCS_FLAG_DESC .= $TIME_STR."</font>]";
$PRCS_FLAG_DESC .= "<br> 开始于:".$PRCS_TIME;
if ( $DELIVER_TIME != "NULL" )
{
$PRCS_FLAG_DESC .= "<br> 结束于:".$DELIVER_TIME;
}
}
else if ( $PRCS_FLAG == 4 )
{
$PRCS_FLAG_DESC .= "<img src=\"/images/flow_next.gif\" align=\"absmiddle\"> ".$PRCS_USER_NAME."[<font color=green>已办结,用时:";
$PRCS_FLAG_DESC .= $TIME_STR."</font>]";
$PRCS_FLAG_DESC .= "<br> 开始于:".$PRCS_TIME;
if ( $DELIVER_TIME != "NULL" )
{
$PRCS_FLAG_DESC .= "<br> 结束于:".$DELIVER_TIME;
}
}
else if ( $PRCS_FLAG == 5 )
{
$PRCS_FLAG_DESC .= $PRCS_USER_NAME."[预设经办人]";
}
$PRCS_FLAG_DESC .= "<br><br>";
}
$PRCS_TITLE = "第".$PRCS_ID_I."步.".$PRCS_NAME."(".$OP_USER_NAME.")";
switch ( $OP_PRCS_FLAG )
{
case 1 :
$FILLCOLOR = "#FFBC18";
break;
case 2 :
$FILLCOLOR = "#50C625";
break;
case 3 :
$FILLCOLOR = "#F4A8BD";
break;
case 4 :
$FILLCOLOR = "#F4A8BD";
break;
case 5 :
$FILLCOLOR = "#D7D7D7";
}
$FLOWTYPE = "";
if ( $CHILD_RUN != 0 )
{
$FLOWTYPE = $CHILD_RUN;
$FILLCOLOR = "#70A0DD";
}
if ( $PRCS_ID_I != 1 )
{
if ( $PARENT != "" && $PARENT != 0 )
{
$PARENT_ARRAY = explode( ",", $PARENT );
$ARRAY_COUNT = count( $PARENT_ARRAY );
$J = 0;
for ( ; do
{
$J < $ARRAY_COUNT; ++$J )
{
if ( !( $PARENT_ARRAY[$J] == "" ) )
{
echo " \t\t <vml:line mfrID='";
echo $PRCS_ID_I."_".$FLOW_PRCS;
echo "' title='' source='";
echo ( $PRCS_ID_I - 1 )."_".$PARENT_ARRAY[$J];
echo "' object='";
echo $PRCS_ID_I."_".$FLOW_PRCS;
echo "' from='0,0' to='0,0' style='position:absolute;display:none;z-index:2' arcsize='4321f' coordsize='21600,21600'>\r\n \t\t <vml:stroke endarrow='block'></vml:stroke>\r\n \t\t <vml:shadow on='T' type='single' color='#b3b3b3' offset='1px,1px'/>\r\n \t\t </vml:line>\r\n ";
}
break;
}
} while ( 1 );
}
else
{
echo " \t\t <vml:line mfrID='";
echo $PRCS_ID_I."_".$FLOW_PRCS;
echo "' title='' source='";
echo ( $PRCS_ID_I - 1 )."_".$FLOW_RPCS_LAST;
echo "' object='";
echo $PRCS_ID_I."_".$FLOW_PRCS;
echo "' from='0,0' to='0,0' style='position:absolute;display:none;z-index:2' arcsize='4321f' coordsize='21600,21600'>\r\n \t\t <vml:stroke endarrow='block'></vml:stroke>\r\n \t\t <vml:shadow on='T' type='single' color='#b3b3b3' offset='1px,1px'/>\r\n \t\t </vml:line>\r\n";
}
}
echo " <vml:roundrect inset='2pt,2pt,2pt,2pt' id='";
echo $PRCS_ID_I."_".$FLOW_PRCS;
echo "' table_id='";
echo $ID;
echo "' flowType='";
echo $FLOWTYPE;
echo "' passCount='0' flowTitle='";
echo $PRCS_TITLE;
echo "' flowFlag='0' readOnly='0' receiverID='' receiverName='' fillcolor='";
echo $FILLCOLOR;
echo "' style='LEFT: ";
echo $LEFT_AUTO;
echo "; TOP:";
echo $TOP_AUTO;
echo "; WIDTH: 100; POSITION: absolute; HEIGHT: 50;vertical-align:middle;CURSOR:hand;TEXT-ALIGN:center;z-index:1' arcsize='4321f' coordsize='21600,21600'\r\n\t\t title='";
if ( $FLOW_TYPE == 1 )
{
echo "<b>";
echo $PRCS_NAME;
echo "</b><br><br>";
}
echo $PRCS_FLAG_DESC;
echo "'>\r\n\t\t <vml:shadow on='T' type='single' color='#b3b3b3' offset='3px,3px'/>\r\n\t\t <vml:textbox inset='1pt,2pt,1pt,1pt' onselectstart='return false;'>";
echo $PRCS_TITLE;
echo "</vml:textbox>\r\n\t\t </vml:roundrect>\r\n";
if ( $LAST_FLOW_PRCS == $FLOW_PRCS )
{
$TOP_AUTO += 100;
}
++$FLOW_PRCS_COUNT;
}
$LEFT_AUTO += 150;
$TOP_AUTO = 50;
$FLOW_RPCS_LAST = $FLOW_PRCS;
}
echo "<input type=\"hidden\" value=\"";
echo urlencode( $TIME_TO_ID );
echo "\" id=\"time_to_id\">\r\n</table>\r\n</body>\r\n</html>";
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -