⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 flow_report.php

📁 1、激活企业硬件投资
💻 PHP
📖 第 1 页 / 共 2 页
字号:
<?
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--;
for($I=0;$I<$ARRAY_COUNT;$I++)
  $HTML_NAME=str_replace($MY_ARRAY[$I],"",$HTML_NAME);

if($OP==1)
{
?>
<html>
<head>
<title>工作流分组统计报表 - <?=$HTML_NAME?></title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<body topmargin="5">
<?
}
else
{
  ob_end_clean();
  Header("Cache-control: private");
  Header("Content-type: application/vnd.ms-excel");
  Header("Content-Disposition: attachment; filename= 工作流分组统计报表 - $HTML_NAME.xls");
?>

<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns="http://www.w3.org/TR/REC-html40">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<?
}

 //-------------------------------------------- 数据查询 -----------------------------------------
 $query = "SELECT FLOW_RUN.RUN_ID,RUN_NAME,PRCS_TIME,FLOW_TYPE.FLOW_ID,FLOW_NAME,FLOW_TYPE,MANAGE_USER,QUERY_USER,QUERY_FLAG,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 DELETE_FLAG='0'";

 //--- 流水号条件 ---
 if($RUN_ID!="")
    $query.=" and FLOW_RUN.RUN_ID='$RUN_ID'";

 //--- 文号条件 ---
 if($RUN_NAME!="")
 {
	$EXPLODE=explode('|',$RUN_NAME);

	$EXPLODE_COUNT=count($EXPLODE);

	for($I=0;$I<$EXPLODE_COUNT;$I++)
	{
		$FIELDVALUE=$EXPLODE[$I];
	   $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."'";
				 break;
		 default:
				 $WHERE_STR.=" like '%".$FIELDVALUE."%'";
				 break;
	   }

	   $query.=$WHERE_STR;
	}

 }

 //--- 公共附件条件 ---
 if($ATTACHMENT_NAME!="")
 {
	$EXPLODE=explode('|',$ATTACHMENT_NAME);

	$EXPLODE_COUNT=count($EXPLODE);

	for($I=0;$I<$EXPLODE_COUNT;$I++)
	{
		$FIELDVALUE=$EXPLODE[$I];
	    $WHERE_STR=" and ATTACHMENT_NAME like '%".$FIELDVALUE."%'";
	    $query.=$WHERE_STR;
	}
 }

 //--- 日期范围 ---
 if($PRCS_DATE1!="")
    $query.=" and PRCS_TIME>='$PRCS_DATE1 00:00:00'";

 if($PRCS_DATE2!="")
    $query.=" and PRCS_TIME<='$PRCS_DATE2 23:59:59'";
 $query_global=$query;

 //--- 查询我经办的 RUN_ID 列表 ---
 if(($FLOW_QUERY_TYPE=="ALL" && $LOGIN_USER_PRIV!=1)||$FLOW_QUERY_TYPE=="2")
 {
    $query_my=$query." and USER_ID='$LOGIN_USER_ID'";
    $cursor = exequery($connection,$query_my);
    while($ROW=mysql_fetch_array($cursor))
      $MY_RUN_ID.=$ROW["RUN_ID"].",";

    if($MY_RUN_ID!="")
       $MY_RUN_ID=substr($MY_RUN_ID,0,-1);
    else
       $MY_RUN_ID="0";
 }

 //--- 查询范围 ---
 if($FLOW_QUERY_TYPE=="ALL" && $LOGIN_USER_PRIV!=1)
    $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,%')";
 elseif($FLOW_QUERY_TYPE=="1")
    $query.=" and USER_ID='$LOGIN_USER_ID'";
 elseif($FLOW_QUERY_TYPE=="2")
    $query.=" and FLOW_RUN.RUN_ID in ($MY_RUN_ID)";
 elseif($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,%')";

 //--- 流程状态条件检查 ---
 $query_run = $query_global." and PRCS_FLAG<>'4'";
 $cursor= exequery($connection,$query_run);
 while($ROW=mysql_fetch_array($cursor))
       $STATUS_RUN.=$ROW["RUN_ID"].",";

 if($STATUS_RUN!="")
    $STATUS_RUN=substr($STATUS_RUN,0,-1);
 else
    $STATUS_RUN=0;

 if($FLOW_STATUS!="ALL")
 {
    if($FLOW_STATUS==0)
       $query.=" and FLOW_RUN.RUN_ID in ($STATUS_RUN)";
    else
       $query.=" and FLOW_RUN.RUN_ID not in ($STATUS_RUN)";
 }


 if($TO_ID!="")
    $query.=" and USER_ID='$TO_ID'";

 //--- 开始进行查询 ---
 $query.=" and PRCS_ID=1 order by FLOW_RUN.RUN_ID desc";
 //echo $query;
 $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"];
    $QUERY_USER = $ROW["QUERY_USER"];
    $QUERY_FLAG = $ROW["QUERY_FLAG"];

		 $query = "SELECT USER_ID,FLOW_PRCS,PRCS_ID from FLOW_RUN_PRCS,FLOW_RUN WHERE FLOW_RUN_PRCS.RUN_ID=FLOW_RUN.RUN_ID and PRCS_FLAG in('1','2','4')and OP_FLAG=1";
		 if($FLOW_ID!="ALL")
		    $query.= " and FLOW_ID='$FLOW_ID'";
		 if($RUN_ID!="")
		    $query.= " and FLOW_RUN.RUN_ID='$RUN_ID'";
		 $query.= " group by FLOW_RUN_PRCS.RUN_ID,PRCS_ID order by PRCS_TIME DESC";
		 $cursor1 = exequery($connection,$query);
     if($ROW=mysql_fetch_array($cursor1))
     {
       $USER_ID=$ROW["USER_ID"];
       $FLOW_PRCS=$ROW["FLOW_PRCS"];
       $PRCS_ID=$ROW["PRCS_ID"];
      }

    $query = "SELECT DEPT_ID FROM USER WHERE USER_ID='$USER_ID'";
    $cursor2= exequery($connection,$query);
    if($ROW2=mysql_fetch_array($cursor2))
   		$DEPT_ID=$ROW2["DEPT_ID"];
   		
    if($QUERY_FLAG==1 && $LOGIN_DEPT_ID!=$DEPT_ID)
        continue;

    $DATA_ARRAY[$RUN_COUNT][0]=$RUN_NAME;

    $PRCS_TIME=$ROW["PRCS_TIME"];
    $PRCS_DATE=strtok($PRCS_TIME," ");

    $DATA_ARRAY[$RUN_COUNT][2]=$PRCS_DATE;
    $DATA_ARRAY[$RUN_COUNT][3]=$PRCS_TIME;

    //--- 数据条件检查 ---
    $NOT_FOUND=0;
    for($I=1;$I<=$ITEM_ID_MAX;$I++)
    {
      $STR="DATA_".$I;
      $FIELDVALUE=$$STR;

      if($FIELDVALUE!="" && $FIELDVALUE!="SELECT_ALL_VALUE")
      {
      	$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."'";
                  break;
        }

        $query1="select 1 from FLOW_RUN_DATA".$WHERE_STR." limit 1";
        $cursor1= exequery($connection,$query1);
        if(!$ROW=mysql_fetch_array($cursor1))
        {
           $NOT_FOUND=1;
           break;
        }

		*/
		$EXPLODE=explode('|',$FIELDVALUE);

		$EXPLODE_COUNT=count($EXPLODE);

		$WHERE_STR1='';
		for($J=0;$J<$EXPLODE_COUNT;$J++)
		{
           $FIELDVALUE1=$EXPLODE[$J];
		   $WHERE_STR=" and ITEM_DATA";
			switch($RELATION)
			{
			  case 1: $WHERE_STR.="='".$FIELDVALUE1."'";
					  break;
			  case 2:
					  if(is_numeric($FIELDVALUE1))
						 $WHERE_STR.=">".$FIELDVALUE1."";
					  else
						 $WHERE_STR.=">'".$FIELDVALUE1."'";
					  break;
			  case 3:
					  if(is_numeric($FIELDVALUE1))
						 $WHERE_STR.="<".$FIELDVALUE1."";
					  else
						 $WHERE_STR.="<'".$FIELDVALUE1."'";
					  break;
			  case 4:
					  if(is_numeric($FIELDVALUE1))
						 $WHERE_STR.=">=".$FIELDVALUE1."";
					  else
						 $WHERE_STR.=">='".$FIELDVALUE1."'";
					  break;
			  case 5:
					  if(is_numeric($FIELDVALUE1))
						 $WHERE_STR.="<=".$FIELDVALUE1."";
					  else
						 $WHERE_STR.="<='".$FIELDVALUE1."'";
					  break;
			  case 6: $WHERE_STR.="!='".$FIELDVALUE1."'";
					  break;
			  case 7: $WHERE_STR.=" like '".$FIELDVALUE1."%'";
					  break;
			  case 8: $WHERE_STR.=" like '%".$FIELDVALUE1."%'";
					  break;
			  case 9: $WHERE_STR.=" like '%".$FIELDVALUE1."'";
					  break;
			}
		   $WHERE_STR1.=$WHERE_STR;
		}
        $query1="select * from FLOW_RUN_DATA where RUN_ID='$RUN_ID' and ITEM_ID=$I ".$WHERE_STR1;
        $cursor1= exequery($connection,$query1);
       if(!$ROW=mysql_fetch_array($cursor1))
        {
           $NOT_FOUND=1;
           break;
        }


      }//if($FIELDVALUE!="")
    }//for

    if($NOT_FOUND==1) //数据部份未查询到
       continue;

    //--- 数据条件检查2 ---
    $NOT_FOUND=0;
    for($I=1;$I<=$ITEM_ID_MAX;$I++)
    {
      $STR="DATA_".$I."_2";
      $FIELDVALUE=$$STR;

      if($FIELDVALUE!="" && $FIELDVALUE!="SELECT_ALL_VALUE")
      {
      	$STR="RELATION_".$I."_2";
      	$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: $WHERE_STR.=">'".$FIELDVALUE."'";
                  break;
          case 3: $WHERE_STR.="<'".$FIELDVALUE."'";
                  break;
          case 4: $WHERE_STR.=">='".$FIELDVALUE."'";

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -