📄 flow_report.php
字号:
<?php
include_once( "inc/auth.php" );
include_once( "inc/utility_html.php" );
include_once( "inc/utility_all.php" );
include_once( "../prcs_role.php" );
$query = "SELECT * from FLOW_TYPE WHERE FLOW_ID=".$FLOW_ID;
$cursor1 = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor1 ) )
{
$FLOW_NAME = $ROW['FLOW_NAME'];
$FORM_ID = $ROW['FORM_ID'];
$FLOW_NAME = $ROW['FLOW_NAME'];
$MANAGE_USER = $ROW['MANAGE_USER'];
$QUERY_USER = $ROW['QUERY_USER'];
}
$query = "SELECT * from FLOW_FORM_TYPE WHERE FORM_ID=".$FORM_ID;
$cursor1 = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor1 ) )
{
$FORM_NAME = $ROW['FORM_NAME'];
$PRINT_MODEL = $ROW['PRINT_MODEL'];
$ELEMENT_ARRAY = html_element( $PRINT_MODEL );
}
$HTML_NAME = $FLOW_NAME;
$LETTER_STR = "\\,/,:,*,?,\",<,>,|";
$MY_ARRAY = explode( ",", $LETTER_STR );
$ARRAY_COUNT = sizeof( $MY_ARRAY );
if ( $MY_ARRAY[$ARRAY_COUNT - 1] == "" )
{
--$ARRAY_COUNT;
}
$I = 0;
for ( ; $I < $ARRAY_COUNT; ++$I )
{
$HTML_NAME = str_replace( $MY_ARRAY[$I], "", $HTML_NAME );
}
if ( $OP == 1 )
{
echo "<html>\r\n<head>\r\n<title>工作流分组统计报表 - ";
echo $HTML_NAME;
echo "</title>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">\r\n<body topmargin=\"5\">\r\n";
}
else
{
ob_end_clean( );
header( "Cache-control: private" );
header( "Content-type: application/vnd.ms-excel" );
header( "Content-Disposition: attachment; filename= 工作流分组统计报表 - ".$HTML_NAME.".xls" );
echo "\r\n<html xmlns:o=\"urn:schemas-microsoft-com:office:office\"\r\nxmlns:x=\"urn:schemas-microsoft-com:office:excel\"\r\nxmlns=\"http://www.w3.org/TR/REC-html40\">\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">\r\n";
}
$query = "SELECT FLOW_RUN.RUN_ID,RUN_NAME,END_TIME,PRCS_TIME,FLOW_TYPE.FLOW_ID,FLOW_NAME,FLOW_TYPE,MANAGE_USER,QUERY_USER,ATTACHMENT_ID,ATTACHMENT_NAME from FLOW_TYPE,FLOW_RUN,FLOW_RUN_PRCS WHERE FLOW_TYPE.FLOW_ID=FLOW_RUN.FLOW_ID and FLOW_RUN.RUN_ID=FLOW_RUN_PRCS.RUN_ID and FLOW_TYPE.FLOW_ID='".$FLOW_ID."' AND FLOW_RUN.DEL_FLAG=0";
if ( $RUN_ID != "" )
{
$query .= " and FLOW_RUN.RUN_ID='".$RUN_ID."'";
}
if ( $RUN_NAME != "" )
{
$FIELDVALUE = $RUN_NAME;
$WHERE_STR = " and RUN_NAME";
switch ( $RUN_NAME_RELATION )
{
case 1 :
$WHERE_STR .= "='".$FIELDVALUE."'";
break;
case 2 :
$WHERE_STR .= ">'".$FIELDVALUE."'";
break;
case 3 :
$WHERE_STR .= "<'".$FIELDVALUE."'";
break;
case 4 :
$WHERE_STR .= ">='".$FIELDVALUE."'";
break;
case 5 :
$WHERE_STR .= "<='".$FIELDVALUE."'";
break;
case 6 :
$WHERE_STR .= "!='".$FIELDVALUE."'";
break;
case 7 :
$WHERE_STR .= " like '".$FIELDVALUE."%'";
break;
case 8 :
$WHERE_STR .= " like '%".$FIELDVALUE."%'";
break;
case 9 :
$WHERE_STR .= " like '%".$FIELDVALUE."'";
}
$query .= $WHERE_STR;
}
if ( $ATTACHMENT_NAME != "" )
{
$query .= " and ATTACHMENT_NAME like '%".$ATTACHMENT_NAME."%'";
}
if ( $PRCS_DATE1 != "" )
{
$query .= " and BEGIN_TIME>='".$PRCS_DATE1." 00:00:00'";
}
if ( $PRCS_DATE2 != "" )
{
$query .= " and BEGIN_TIME<='".$PRCS_DATE2." 23:59:59'";
}
$query_global = $query;
if ( $FLOW_QUERY_TYPE == "ALL" && $LOGIN_USER_PRIV != 1 )
{
$MY_RUN_ID = getmyrun( );
$query .= " and (FLOW_RUN.RUN_ID in (".$MY_RUN_ID.") or MANAGE_USER like '%,{$LOGIN_USER_ID},%' or MANAGE_USER like '{$LOGIN_USER_ID},%' or QUERY_USER like '%,{$LOGIN_USER_ID},%' or QUERY_USER like '{$LOGIN_USER_ID},%')";
}
else if ( $FLOW_QUERY_TYPE == "1" )
{
$query .= " and USER_ID='".$LOGIN_USER_ID."'";
}
else if ( $FLOW_QUERY_TYPE == "2" )
{
$MY_RUN_ID = getmyrun( );
$query .= " and FLOW_RUN.RUN_ID in (".$MY_RUN_ID.")";
}
else if ( $FLOW_QUERY_TYPE == "3" && $LOGIN_USER_PRIV != 1 )
{
$query .= " and (MANAGE_USER like '%,".$LOGIN_USER_ID.",%' or MANAGE_USER like '{$LOGIN_USER_ID},%' or QUERY_USER like '%,{$LOGIN_USER_ID},%' or QUERY_USER like '{$LOGIN_USER_ID},%')";
}
if ( $FLOW_STATUS != "ALL" )
{
if ( $FLOW_STATUS == "0" )
{
$query .= " and FLOW_RUN.END_TIME is null";
}
else
{
$query .= " and FLOW_RUN.END_TIME is not null";
}
}
if ( $TO_ID != "" )
{
$query .= " and USER_ID='".$TO_ID."'";
}
$query .= " and PRCS_ID=1 order by FLOW_RUN.RUN_ID desc";
$cursor = exequery( $connection, $query );
$RUN_COUNT = 0;
while ( $ROW = mysql_fetch_array( $cursor ) )
{
$RUN_ID = $ROW['RUN_ID'];
$RUN_NAME = $ROW['RUN_NAME'];
$ATTACHMENT_ID = $ROW['ATTACHMENT_ID'];
$ATTACHMENT_NAME = $ROW['ATTACHMENT_NAME'];
$END_TIME = $ROW['END_TIME'];
$DATA_ARRAY[$RUN_COUNT][0] = $RUN_ID;
$DATA_ARRAY[$RUN_COUNT][1] = $RUN_NAME;
$PRCS_TIME = $ROW['PRCS_TIME'];
$PRCS_DATE = strtok( $PRCS_TIME, " " );
$DATA_ARRAY[$RUN_COUNT][3] = $PRCS_DATE;
$DATA_ARRAY[$RUN_COUNT][4] = $PRCS_TIME;
$NOT_FOUND = 0;
$I = 1;
for ( ; $I <= $ITEM_ID_MAX; ++$I )
{
$STR = "DATA_".$I;
$FIELDVALUE = $$STR;
if ( !( $FIELDVALUE != "" ) && !( $FIELDVALUE != "SELECT_ALL_VALUE" ) )
{
continue;
}
$STR = "RELATION_".$I;
$RELATION = $$STR;
if ( $FIELDVALUE == "CHECKBOX_ON" )
{
$FIELDVALUE = "on";
}
else if ( $FIELDVALUE == "CHECKBOX_OFF" )
{
$FIELDVALUE = "";
}
$WHERE_STR = " where RUN_ID='".$RUN_ID."' and ITEM_ID={$I} and ITEM_DATA";
switch ( $RELATION )
{
case 1 :
$WHERE_STR .= "='".$FIELDVALUE."'";
break;
case 2 :
if ( is_numeric( $FIELDVALUE ) )
{
$WHERE_STR .= ">".$FIELDVALUE."";
}
else
{
$WHERE_STR .= ">'".$FIELDVALUE."'";
}
break;
case 3 :
if ( is_numeric( $FIELDVALUE ) )
{
$WHERE_STR .= "<".$FIELDVALUE."";
}
else
{
$WHERE_STR .= "<'".$FIELDVALUE."'";
}
break;
case 4 :
if ( is_numeric( $FIELDVALUE ) )
{
$WHERE_STR .= ">=".$FIELDVALUE."";
}
else
{
$WHERE_STR .= ">='".$FIELDVALUE."'";
}
break;
case 5 :
if ( is_numeric( $FIELDVALUE ) )
{
$WHERE_STR .= "<=".$FIELDVALUE."";
}
else
{
$WHERE_STR .= "<='".$FIELDVALUE."'";
}
break;
case 6 :
$WHERE_STR .= "!='".$FIELDVALUE."'";
break;
case 7 :
$WHERE_STR .= " like '".$FIELDVALUE."%'";
break;
case 8 :
$WHERE_STR .= " like '%".$FIELDVALUE."%'";
break;
case 9 :
$WHERE_STR .= " like '%".$FIELDVALUE."'";
}
$query1 = "select 1 from FLOW_RUN_DATA".$WHERE_STR." limit 1";
$cursor1 = exequery( $connection, $query1 );
if ( $ROW = mysql_fetch_array( $cursor1 ) )
{
continue;
}
$NOT_FOUND = 1;
break;
}
if ( !( $NOT_FOUND == 1 ) )
{
if ( $FLOW_STATUS == "ALL" )
{
if ( $END_TIME == "" )
{
$STATUS = "<font color=red>执行中</font>";
}
else
{
$STATUS = "已结束";
}
}
else if ( $FLOW_STATUS == "0" )
{
$STATUS = "<font color=red>执行中</font>";
}
else
{
$STATUS = "已结束";
}
$DATA_ARRAY[$RUN_COUNT][2] = $STATUS;
$query1 = "SELECT * from FLOW_RUN_DATA where RUN_ID=".$RUN_ID." order by ITEM_ID";
$cursor1 = exequery( $connection, $query1 );
while ( $ROW = mysql_fetch_array( $cursor1 ) )
{
$ITEM_ID = $ROW['ITEM_ID'];
$ITEM_DATA = $ROW['ITEM_DATA'];
$STR = "DATA_LIST_".$ITEM_ID;
$$STR = $ITEM_DATA;
}
$query1 = "select HIDDEN_ITEM from FLOW_PROCESS,FLOW_RUN_PRCS where FLOW_PROCESS.FLOW_ID=".$FLOW_ID." and FLOW_RUN_PRCS.RUN_ID={$RUN_ID} and FLOW_RUN_PRCS.USER_ID='{$LOGIN_USER_ID}' and FLOW_PROCESS.PRCS_ID=FLOW_RUN_PRCS.PRCS_ID";
$cursor1 = exequery( $connection, $query1 );
$HIDDEN_STR = "";
while ( $ROW = mysql_fetch_array( $cursor1 ) )
{
$HIDDEN_STR .= $ROW['HIDDEN_ITEM'];
}
$ITEM_ID = 0;
$ITEM_ID1 = 0;
$J = 0;
for ( ; $J < $ITEM_ID_MAX; ++$J )
{
$ELEMENT = $ELEMENT_ARRAY[$J];
$ENAME = get_attr( $ELEMENT, "NAME" );
$ETITLE = get_attr( $ELEMENT, "TITLE" );
$EVALUE = get_attr( $ELEMENT, "VALUE" );
$ECLASS = get_attr( $ELEMENT, "CLASS" );
if ( !( $ECLASS == "DATE" ) )
{
if ( $ECLASS == "USER" )
{
break;
}
}
else
{
continue;
}
++$ITEM_ID1;
if ( $ECLASS == "SIGN" )
{
++$ITEM_ID;
$DATA_ARRAY[$RUN_COUNT][$ITEM_ID + 4] = "";
}
else if ( !find_id( $DISP_FLD, $ITEM_ID1 + 4 ) )
{
}
else
{
++$ITEM_ID;
$STR = "DATA_LIST_".$ITEM_ID1;
$ITEM_VALUE = $$STR;
if ( find_id( $HIDDEN_STR, $ETITLE ) )
{
$ITEM_VALUE = "";
}
if ( $RUN_COUNT == 0 && find_id( $SUM_FLD, $ITEM_ID1 + 4 ) )
{
$SUM_FLD1 .= ( $ITEM_ID + 4 ).",";
}
if ( $ECLASS != "LIST_VIEW" )
{
$ITEM_DATA = str_replace( chr( 10 ), " ", $ITEM_DATA );
$ITEM_DATA = str_replace( chr( 13 ), " ", $ITEM_DATA );
}
if ( $ECLASS == "AUTO" && $ENAME == "SELECT" && $ITEM_VALUE != "" )
{
$EDATAFLD = get_attr( $ELEMENT, "DATAFLD" );
switch ( $EDATAFLD )
{
case "SYS_LIST_DEPT" :
$query_auto = "SELECT DEPT_NAME from DEPARTMENT where DEPT_ID='".$ITEM_VALUE."'";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -