添加新流程页面:

<div>
请选择流程节点:<br /><br /> <?php
session_start();
include("../DBDA.class.php");
$db = new DBDA(); $suser ="select * from users";
$auser = $db->Query($suser); foreach($auser as $v)
{
echo "<input class='rd' type='radio' name='user' value='{$v[0]}' /> {$v[2]} &nbsp;";
} ?> </div>
<br />
<div><input type="button" value="添加节点" id="jiedian" /></div>
<br /> <div>
<?php
$attr = array();
if(!empty($_SESSION["user"]))
{
$attr = $_SESSION["user"];
} foreach($attr as $k=>$v)
{
$sname = "select name from users where uid='{$v}'";
$name = $db->StrQuery($sname); echo "<div>{$k}--{$name}--<input type='button' value='删除' bs='{$k}' class='shanchu' /></div>";
} ?>
</div>
<br />
<div>
请输入流程名称:
<input type="text" id="name" />
</div>
<br />
<input type="button" value="保存" id="xinjian" /> <script type="text/javascript">
$("#jiedian").click(function(){ //取选中的用户名
var uid ="";
var rd = $(".rd");
for(var i=0;i<rd.length;i++)
{
if(rd.eq(i).prop("checked"))
{
uid = rd.eq(i).val();
}
} $.ajax({
url:"chuli.php",
data:{uid:uid,type:0},
type:"POST",
dataType:"TEXT",
success: function(data){
window.location.href="add.php";
}
}); }) $(".shanchu").click(function(){
var sy = $(this).attr("bs");
$.ajax({
url:"chuli.php",
data:{sy:sy,type:1},
type:"POST",
dataType:"TEXT",
success: function(data){
window.location.href="add.php";
}
});
})
$("#xinjian").click(function(){
var name = $("#name").val();
$.ajax({
url:"chuli.php",
data:{name:name,type:2},
type:"POST",
dataType:"TEXT",
success: function(data){
window.location.href="add.php";
}
});
})
</script>

添加新流程(及其他)处理页面:

<?php
session_start();
include("../DBDA.class.php");
$db = new DBDA(); $type = $_POST["type"]; switch($type)
{
case 0:
$uid = $_POST["uid"];
if(empty($_SESSION["user"]))
{
$_SESSION["user"] = array($uid);
}
else
{
$attr = $_SESSION["user"];
$attr[] = $uid;
$_SESSION["user"] = $attr;
}
break;
case 1:
$sy = $_POST["sy"];
$attr = $_SESSION["user"];
unset($attr[$sy]);
$attr = array_values($attr);
$_SESSION["user"] = $attr;
break;
case 2:
$name = $_POST["name"];
$code = time();
$slc = "insert into liucheng values('{$code}','{$name}')"; //liucheng 名字 代号
$db->Query($slc,0); $attr = array();
if(!empty($_SESSION["user"]))
{
$attr = $_SESSION["user"];
} foreach($attr as $k=>$v)
{
$sfp = "insert into flowpath values('','{$code}','{$v}','{$k}')"; //flowpath 流程具体经过哪些人
$db->Query($sfp,0);
} break;
case 3:
$code = $_POST["code"];
$nr = $_POST["nr"];
$uid = $_SESSION["uid"];
$rq = time();
$sql = "insert into userflow values('','{$code}','{$uid}','{$nr}',0,'{$rq}',0)"; //userflow 流程具体内容,名字,发起人
$db->Query($sql,0); //,内容,是否通过,事件,进行到哪一步
break;
}

登录后主页面:

<a href="faqi.php">发起流程</a>

<table width="100%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td>发起者</td>
<td>发起时间</td>
<td>流程名称</td>
<td>流程内容</td>
<td>是否结束</td>
<td>操作</td>
</tr>
<?php
session_start();
include("../DBDA.class.php");
$db = new DBDA(); $uid = $_SESSION["uid"]; $sql = "select * from userflow";
$attr = $db->Query($sql); foreach($attr as $v)
{
$v[1];//流程代号
$v[6]; //流程走到哪了 //根据流程代号和当前登录者用户名查orders
$szai="select count(*) from flowpath where code='{$v[1]}' and uids='{$uid}'";
$n = $db->StrQuery($szai); //该人员在该流程下
if($n>0)
{
$sorder = "select orders from flowpath where code='{$v[1]}' and uids='{$uid}'";
$order = $db->StrQuery($sorder); if($v[6]>=$order)
{
$str = "";
if($v[6]==$order)
{
$str = "<a href='tongguo.php?ids={$v[0]}'>通过</a>";
}
else
{
$str = "<span style='color:green'>已处理</span>";
}
echo "<tr><td>{$v[2]}</td>
<td>{$v[5]}</td>
<td>{$v[1]}</td>
<td>{$v[3]}</td>
<td>{$v[4]}</td>
<td>{$str}</td></tr>";
}
}
} ?> </table>

发起流程页面:

<h1>发起流程</h1>
<div>
请选择要发起的流程:
<select id="sel">
<?php
include("../DBDA.class.php");
$db = new DBDA();
$sql = "select * from liucheng";
$attr = $db->Query($sql);
foreach($attr as $v)
{
echo "<option value='{$v[0]}'>{$v[1]}</option>";
}
?>
</select>
</div> <br />
<div>
请输入流程的详情:
<textarea id="xq"></textarea> </div> <br />
<input type="button" value="发起" id="btn" /> <script type="text/javascript">
$("#btn").click(function(){
var code = $("#sel").val();
var nr = $("#xq").val();
$.ajax({
url:"chuli.php",
data:{code:code,nr:nr,type:3},
type:"POST",
dataType:"TEXT",
success: function(data){
window.location.href="main.php";
}
});
})
</script>

判断发起的流程是否通过页面:

<?php
session_start();
include("../DBDA.class.php");
$db = new DBDA(); $ids = $_GET["ids"]; $sql = "update userflow set towhere = towhere+1 where ids='{$ids}'"; $db->Query($sql,0); $stw = "select code,towhere from userflow where ids='{$ids}'";
$atw = $db->Query($stw); $lcdaihao = $atw[0][0];
$towhere = $atw[0][1]; $jiedian = "select count(*) from flowpath where code='{$lcdaihao}'";
$shuliang = $db->StrQuery($jiedian); if($towhere>=$shuliang)
{
$su = "update userflow set isok =1 where ids='{$ids}' ";
$db->Query($su,0);
} header("location:main.php");

PHP 流程管理的更多相关文章

  1. 熊乐:H3 BPM为加速企业流程管理提供源动力

    近日,在北京·金隅喜来登酒店,H3 BPM以"让天下没有难用的流程"为主题,正式发布H3 BPM10.0版本.全新的业务流程管理系统在易用性方面大大提升,并且全面支持Java与.N ...

  2. 从国内流程管理软件市场份额看中国BPM行业发展

    随着互联网+.中国制造2025.工业4.0等国家战略的支持与引导,企业在数字经济时代的信息化表现惊人,越来越多企业认识到,对于企业的发展来说,信息自动化远远还不够,企业的战略.业务和IT之间需保持高度 ...

  3. 制造行业流程管理的“IPO”思维

    流程管理是企业从流程角度出发,关注流程是否增值的一套管理体系.从认识流程.到建立流程.到管理流程.再到优化流程,企业管理人员要去除不增值和低价值的流程,减少员工犯错误的机会,建立一套卓越的流程体系. ...

  4. jquery miniui , 普加甘特图,流程管理

    http://www.miniui.com/docs/quickstart/index.html 普加 甘特图 流程管理 http://www.plusgantt.com/project/demo/P ...

  5. JBPM4入门——4.封装流程管理的工具类(JbpmUtil)

    本博文只是简要对JBPM4进行介绍,如需更详细内容请自行google 链接: JBPM入门系列文章: JBPM4入门——1.jbpm简要介绍 JBPM4入门——2.在eclipse中安装绘制jbpm流 ...

  6. php之 有点复杂的 流程管理

    1.流程管理的用法是什么样的? 2.怎么发起想要的流程? 3.审批的人要是怎么审批通过? 4.流程审核是不是要挨个走过? 一.还是要有数据库的内容的 肯定会有表的,首先就是用户表了,然后就是流程表,用 ...

  7. php流程管理练习

    今天我们做一个流程管理: 1.流程管理的用法是什么样的? 2.怎么发起想要的流程? 3.审批的人要是怎么审批通过? 4.流程审核是不是要挨个走过? 一. 做这个流程管理肯定要有数据库: 二.数据库结束 ...

  8. PHP流程管理,堪比小小程序

    这个流程管理是从用户登录界面开始,然后提交申请,页面逐级审核通过.这个做起来其实挺简单,只是在某些逻辑方面需要 好好考虑一下. 登录页面就不再多说了,如果要存session的话,我们可以建一个假的登录 ...

  9. 05、NetCore2.0依赖注入(DI)之Web应用启动流程管理

    05.NetCore2.0依赖注入(DI)之Web应用启动流程管理 在一个Asp.net core 2.0 Web应用程序中,启动过程都做了些什么?NetCore2.0的依赖注入(DI)框架是如何管理 ...

  10. PHP实现流程管理功能

    核心逻辑:流程管理,在各种系统中扮演很重要的地位,可以把设定好的流程放入系统中,规定好几个节点,只要所有节点都通过,就可以通过. 建立四张数据库表: 1.我们首先做一个新建流程页面 flow.php, ...

随机推荐

  1. SQL SERVER 属性OWNER不可用于数据库xxx。该对象可能没有此属性,也可能是访问权限不足而无法检索。

    今天遇到一个案例:右键单击数据库的属性时出现下面错误提示: 属性Owner不可用于数据库xxx,该对象可能没有此属性,也可能是访问权限不足而无法检索. 使用脚本查看该数据库的Owner时发现Owner ...

  2. spark standalone ha spark submit

    when you build a spark standalone ha cluster, when you submit your app,  you should send it to the l ...

  3. 电信行业的BI应用

    截至2015年年底,我国三大运营商的移动用户数达到13.1亿户,4G /3G用户累计达到8.09亿户,再次创下新高.从三大运营商的年度财报来看,在具体业务方面,三大运营商的数据流量业务带来的收入均已超 ...

  4. Android(Linux)实时监控串口数据

    之前在做WinCE车载方案时,曾做过一个小工具TraceMonitor,用于显示WinCE系统上应用程序的调试信息,特别是在实车调试时,用于监控和显示CAN盒与主机之间的串口数据.因为需要抢占市场先机 ...

  5. Java反射特性--获取其他类实例并调用其方法

    1. 代码结构 .├── com│   └── test│   └── MyTest.java└── MainCall.java 2. 代码内容 MyTest.java: package com.te ...

  6. BZOJ1588: [HNOI2002]营业额统计[BST]

    1588: [HNOI2002]营业额统计 Time Limit: 5 Sec  Memory Limit: 162 MBSubmit: 14151  Solved: 5366[Submit][Sta ...

  7. 洛谷10月月赛Round.1| P3398 仓鼠找sugar[LCA]

    题目描述 小仓鼠的和他的基(mei)友(zi)sugar住在地下洞穴中,每个节点的编号为1~n.地下洞穴是一个树形结构.这一天小仓鼠打算从从他的卧室(a)到餐厅(b),而他的基友同时要从他的卧室(c) ...

  8. python使用you-get模块下载视频

    pip install you-get # 安装先 怎么用    进入命令行: you-get url 暂停下载:ctrl + c ,继续下载重复  you-get url 官网地址:https:// ...

  9. Linux下部署docker记录(1)-Volume使用

    之前部署了Linux下部署docker记录(0)-基础环境安装,接下来看看Docker Volume的使用. Docker volume使用1)一个数据卷是一个特别指定的目录,该目录利用容器的UFS文 ...

  10. 银行卡BIN: Bank Identification Number

    What is a 'Bank Identification Number - BIN'A bank identification number (BIN) is the initial four t ...