• 流程


    建立新的流程

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <script src="../jquery-1.11.2.min.js"></script>
    </head>
    
    <body>
    <?php
    session_start();
    include("../DBDA.php");
    $db=new DBDA();
    $sql="select * from users";
    $zhi=$db->Query($sql);
    ?>
    <h1>新建流程</h1>
    <br />
    <div>
      <div>请选择审批人员</div>
      <br />
      <div>
      <?php
       foreach($zhi as $v)
       {
    	   echo"<input type='radio' class='ry' name='ry' value='{$v[0]}' />$v[2]";
       }
      ?>
      </div>
      <br />
      <div><input type="button" value="添加审批人员" id="add" /></div>
      
      <br />
      <div id="xianshi">
      <!--显示审批人员 -->
      <?php
      if(!empty($_SESSION["shenren"]))
      {
    	  $shuzu=$_SESSION["shenren"];
    	  foreach($shuzu as $k=> $v)
    	  {
    		  $rensql="select Name from users where uid='{$v}'";
    		  $name=$db->StrQuery($rensql);
    		  
    		  echo"<div>{$k}<=>{$name}<=><input type='button' value='删除' class='shanchu' br='{$k}' /></div>";
    	  }
      }
      ?>
      </div>
      
      <br />
      <div>输入流程名称</div>
      <br />
      <div><input type="text" id="name" /></div>
      <br />
      <input type="button" value="新建" class="xinjian" />
    </div>
    
    </body>
    <script type="text/javascript">
    $(document).ready(function(e) {
        
    	$("#add").click(function(){
    		//取出选中按钮的用户名
    		var uid="";
    		var ren=$(".ry");
    		for(var i=0;i<ren.length;i++)
    		{
    			if(ren.eq(i).prop("checked"))
    			{
    				uid=ren.eq(i).val();
    			}
    		}
    	
    	     //调用ajax把选中单选按钮的用户名添加到SESSION中
    		 $.ajax({
    			 url:"chuli.php",
    			 data:{uid:uid,type:0},
    			 type:"POST",
    			 dataType:"TEXT",
    			 success: function(data){
    				 window.location="Untitled-1.php";
    				 }
    			 });
    			 
    		})
    		//删除审批人员
    		$(".shanchu").click(function(){
    			//取出存的索引值
    			var k=$(this).attr("br")
    			//调用ajax删除
    			$.ajax({
    				 url:"chuli.php",
    			     data:{k:k,type:1},
    			     type:"POST",
    			     dataType:"TEXT",
    			     success: function(data){
    				 window.location="Untitled-1.php";
    				 }
    				});
    			
    			})
    	  //新建 (添加信息)
    	  $(".xinjian").click(function(){
    		  //取到用户输入的流程名称
    		  var name=$("#name").val();
    		  //调用ajax
    		  $.ajax({
    			     url:"chuli.php",
    			     data:{name:name,type:2},
    			     type:"POST",
    			     dataType:"TEXT",
    			     success: function(data){
    				 window.location="Untitled-1.php";
    				 }
    			  });
    		  
    		  })
    });
    
    
    </script>
    </html>
    

      页面显示

    处理页面

    <?php
    session_start();
    include("../DBDA.php");
    $db=new DBDA();
    //先取出传过来的type值
    $type=$_POST["type"];
    
    //用switch..case来判断是哪一个ajax调用
    switch($type)
    {
    	//把选中的用户名添加到session中
       case 0:
       $uid=$_POST["uid"];
       if(empty($_SESSION["shenren"]))
       {
    	   if($uid!="")
    	   {
    	   $shuzu=array($uid);
    	   $_SESSION["shenren"]=$shuzu;
    	   }
    	}
    	else
    	{
    		if($uid!="")
    		{
    		$shuzu=$_SESSION["shenren"];
    		$shuzu[]=$uid;
    		$_SESSION["shenren"]=$shuzu;
    		}
    	}
       break;
       //删除session中的值,并重新排序
       case 1:
       $k=$_POST["k"];//取出传过来的k
       $shuzu=$_SESSION["shenren"];//取出session中的数组
       unset($shuzu[$k]);    //删除
       $shuzu=array_values($shuzu); //重新排序
       $_SESSION["shenren"]=$shuzu;
       break;
       
       //新建添加流程
       case 2:
       $name=$_POST["name"];
       $code=date("YmdHis");
       @$shuzu=$_SESSION["shenren"];
       //添加liucheng表
       $stianjia1="insert into liucheng values('{$code}','{$name}')";
       $db->Query($stianjia1,0);
       //添加flowpath表
       foreach($shuzu as $k=>$v)
       {
          $stianjia2="insert into flowpath values('','{$code}','{$v}','{$k}')";
    	  $db->Query($stianjia2,0);
       }
       break;
    }
    

      

    登录页面

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    </head>
    
    <body>
    <h1>登录页面</h1>
    <form action="dlchuli.php" method="post">
    <div>用户名:<input type="text" name="uid" /></div>
    <div>密码:<input type="password" name="pwd" /></div>
    <input type="submit" value="登录" />
    </form>
    
    </body>
    </html>
    

      页面显示

    登录处理页面

    <?php
    session_start();
    include("../DBDA.php");
    $db=new DBDA();
    $uid=$_POST["uid"];
    $pwd=$_POST["pwd"];
    
    $sql="select pwd from users where uid='{$uid}'";
    $mima=$db->StrQuery($sql);
    if($pwd=$mima&&$uid!=""&&$pwd!="")
    {
    	$_SESSION["uid"]=$uid;
    	header("location:faqi.php");
    }
    else
    {
       echo"登录失败,请查看后登陆";	
    }
    

      

    由登录人发起流程

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    </head>
    
    <body>
    <?php
    session_start();
    include("../DBDA.php");
    $db=new DBDA();
    
    if(empty($_SESSION["uid"]))
    {
        header("location:denglu.php");
    	exit;//退出程序	
    }
    $uid=$_SESSION["uid"];
    $slc="select * from liucheng";
    $lczhi=$db->Query($slc);
    ?>
    <h1>用户发起流程</h1>
    
    <form action="faqichuli.php" method="post">
    <div>请选择一个流程:
        <select name="fqlc">
        <?php
    	foreach($lczhi as $v)
    	{
    		echo"<option value='{$v[0]}'>{$v[1]}</option>";
    	}
    	?>
        </select>
    </div>
    <br />
    
    <div>要发起的内容:
    <textarea name="fqnr" style="150px; height:70px"></textarea>
    </div>
    <input type="submit" value="发起" />
    </form>
    <br /><br />
    <a href="shenhe.php">审核页面</a>
    </body>
    </html>
    

      页面显示

    发起处理页面

    <?php
    session_start();
    include("../DBDA.php");
    $db=new DBDA();
    
    $code=$_POST["fqlc"];
    $uid=$_SESSION["uid"];
    $neirong=$_POST["fqnr"];
    $riqi=date("Y-m-d H:i:s");
    
    $sql="insert into userflow values('','{$code}','{$uid}','{$neirong}',0,'{$riqi}',0)";
    if($db->Query($sql,0))
    {
    	header("location:faqi.php");
    }
    

      流程走到谁,谁登录显示

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    </head>
    
    <body>
    <?php
    session_start();
    include("../DBDA.php");
    $db=new DBDA();
    
    if(empty($_SESSION["uid"]))
    {
        header("location:denglu.php");	
    }
    $uid=$_SESSION["uid"];
    //查发起流程的所有信息
    $alllc="select * from userflow order by riqi desc";
    $allxx=$db->Query($alllc);
    ?>
    <h1>审核流程</h1>
    <table width="100%" border="1" cellpadding="0" cellspacing="0">
    	<tr>
        	<td>流程名称</td>
            <td>发起者</td>
            <td>流程内容</td>
            <td>是否结束</td>
            <td>发起时间</td>
            <td>操作</td>
        </tr>
        <?php
    	  foreach($allxx as $v)
    	  {
    		  $lccode=$v[1];//取出流程代号
    		  $zdn=$v[6];  //流程走到哪
    		  //找该用户在本流程中的序号
    		  $sxuhao="select  orders from flowpath where code='{$lccode}' and uids='{$uid}'";
    		  $axuhao=$db->StrQuery($sxuhao);
    		  //用户在本流程中的序号是不是等于流程走到哪
    		  if($zdn==$axuhao && $axuhao!="")
    		  {
    			//处理流程名称
    			$slcname = "select name from liucheng where code='{$lccode}'";
    			$alcname = $db->StrQuery($slcname); //流程名称
    			//处理发起者名称
    			$susername = "select name from users where uid='{$v[2]}'";
    			$username = $db->StrQuery($susername); //发起者姓名
    			
    			//处理是否结束
    			$jieshu = $v[4]?"<span style='background-color:red'>已结束</span>":"<span          
    			style='background-color:green'>进行中</span>";
    			
    			echo "<tr>
        	    <td>{$alcname}</td>
                <td>{$username}</td>
                <td>{$v[3]}</td>
                <td>{$jieshu}</td>
                <td>{$v[5]}</td>
                <td><a href='tongguo.php?code={$v[0]}'>通过</a></td>
                </tr>";  
    		  }
    	  }
    	?>
     </table>
    </body>
    </html>
    

      

    所有流程人员走完 “进行中”改为结束

    <?php
    include("../DBDA.php");
    $db = new DBDA();
    
    $code = $_GET["code"];
    
    $sql = "update userflow set towhere = towhere+1 where ids='{$code}'";
    
    if($db->Query($sql,0))
    {
    	//判断流程是否结束
    	$slccode = "select * from userflow where ids='{$code}'";
    	$alc = $db->Query($slccode);
    	
    	$lccode = $alc[0][1]; //流程代号
    	$zdn = $alc[0][6]; //走到哪了
    	
    	//根据流程代号查询该流程下人员的个数
    	$sgeshu = "select count(*) from flowpath where code='{$lccode}'";
    	$ageshu = $db->StrQuery($sgeshu); //人员个数
    	
    	if($zdn>=$ageshu)
    	{
    		$sok = "update userflow set isok=true where ids='{$code}'";
    		$db->Query($sok,0);
    	}
    	
    	
    	header("location:shenhe.php");
    }
    

      

  • 相关阅读:
    使用ACEGI搭建权限系统:第三部分
    分支在版本树中的应用(使用subversion)
    acegi安全框架使用:第二部分
    错误数据导致java.lang.IllegalArgumentException:Unsupported configuration attributes
    移动中间件和wap网关的比较
    3年后,又回到了.net阵营
    android中listView的几点总结
    oracle相关分布式数据解决方案
    ajax实现用户名存在校验
    使用template method模式简化android列表页面
  • 原文地址:https://www.cnblogs.com/wcc731546227/p/5659280.html
Copyright © 2020-2023  润新知