PHP 流程管理

添加新流程页面:

<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");
时间: 2024-08-01 19:21:48

PHP 流程管理的相关文章

流程管理主页设计及为管理提供的服务

目 录 流程管理主页设计目标及展现内容 设计目标 展现内容 主页展现草图 为员工服务界面 为领导服务界面 为中层领导服务界面 我的办公桌面服务 主界面布局设计 开发目录结构 界面展现及开发技术 HTML CSS 界面框架 JS包 层次结构 菜单及权限管理 主要功能展示时序图描述 流程目录 关注流程 业务流程管理是从业务流程建立和规范.业务流程优化.业务流程再造三个层次发展起来的,目前,已经发展到业务流程再造阶段,也是本次办公业务流程系统升级改造的重点,在优化370个流程的基础上,再造流程. 本次

流程管理概要

在ERP开发应用中,经常使用到流程管理.流程管理又细分为审批流程(工作流程)和业务流程(端到端流程). 审批流程最基本的一个形式是从一种状态转换为另一种状态,审批流程操作包括保存.提交.审核.反审核等.数据状态包括创建.审核中.已审核.重新审核等.应用场景如员工的请假审批流程,一.员工申请休假,保存请假单据,单据状态为创建:二.员工提交休假流程,单据状态为审核中:三.上级主管审核通过,单据状态为已审核:四.上级主管反审核,单据状态为重新审核. 业务流程是基本的一个形式是从一张单据生成另一张下级单

当我们说流程管理时,我们在说什么?

说到流程管理,你一定听过这个定义. 流程管理,是一种以规范化的构造端到端的卓越业务流程为中心,以持续的提高组织业务绩效为目的的系统化方法.它是一个操作性的定位描述,指的是流程分析.流程定义与重定义.资源分配.时间安排.流程质量与效率测评.流程优化等. 流程管理离不开流程. 中国最早的二言诗: 断竹.续竹.飞土.逐肉 描绘了上古先民的生活场景:一个人基本负责了生产资料的采集.工具的制作.生产分配等产业链的各个环节. 随着社会的发展,分工开始出现.在农业社会,男耕女织.农贸易物开始普及.到了工业社会

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

随着互联网+.中国制造2025.工业4.0等国家战略的支持与引导,企业在数字经济时代的信息化表现惊人,越来越多企业认识到,对于企业的发展来说,信息自动化远远还不够,企业的战略.业务和IT之间需保持高度一致,在苦练IT外功的同时,强化管理内功,才能大力提升企业运营效率与质量. 如何帮助企业提高管理质量与效率,被誉为架起了企业业务部门与IT部门之间的沟通桥梁的BPM的人气似乎越来越旺.然而,虽然BPM在世界500强企业中已占据半壁江山,国内BPM的市场份额仍不容乐观. BPM到底是哪路神仙 谈到BP

BPM流程管理

BPMX 是基于JEE开源.轻量级的企业流程业务开发平台,基于代码重用.组件重用.业务逻辑重用.组装重用,结合在线流程设计器.在线业务表单设计工具及代码逻辑生成器, 将开发人员从传统的流程管理业务开发中解放出来,把更多的精力集中解决客户的业务数据处理. BPMX 能解决企业的复杂审批业务,有效梳理及简化企业的业务流程,有效提升企业运作效率.它包括流程管理.监控.优化.再造的全套IT管理工具,是集成单点登录.企业单位门户.业务流程管理.开发.整合.业务分析及重构等多重职能于一身的软件开发工具和企业

流程管理软件(BPM)功能简介

易协流程管理系统实现将人为控制的业务活动,通过信息化手段实现系统控制,降低人为控制管理的风险以及促进企业的各项决策方针的顺利实施. 系统目标: 实现管理的规范化.制度化.程序化: 帮助企业将内控制度流程化与优化和持续完善,实现流转的自动化: 避免有流程,无执行,流程与实际运做脱节: 实现流程监督.分析与统计,减少人为因素,加快业务响应速度: 加强业务过程管理并建立量化考核体系: 强化岗位职责避免相互推诿,帮助管理层考核工作质量: 强化督办预警,实现业务提醒.催办.督办的人工智能: 实现业务流程管

项目流程管理&amp;&amp;架构总结

1 项目背景 所在业务在早期没有营销费用,买家购买商品的折扣优惠是由卖家提供的,所有订单的最终价格是由卖家和业务方确定的,整个购买流程很简单. 现在此业务收受到公司重视,业务团队能申请到营销费用,业务团队能主动补贴折扣优惠.一件东西进行促销时,用户购买此物品后,由业务方出钱补贴折扣的费用,而卖家不需要考虑优惠折扣.实现这种营销需求需要和第三方的团队合作,例如商家营销团队.账务团队. 2 项目管理 团队协作 项目开始的时候,我方向这2个团体介绍业务背景,提产品需求,开头很顺利:业务边界范围的界定.

中国南车戚墅堰所 ——流程管理信息化建设

一:项目简介 1.客户介绍 中国南车戚墅堰机车车辆工艺研究所有限公司(以下简称"中国南车戚墅堰所")是中国南车股份有限公司旗下的一级子公司,始建于1959年.五十多年来,中国南车戚墅堰所始终与中国轨道交通装备事业发展同行,致力于轨道交通装备现代化.目前公司不仅服务于我国干线铁路运输和城市轨道交通,还利用轨道交通装备专有技术向延伸产业发展,已经进入了汽车零部件.工程机械.风力发电等市场领域.中国南车戚墅堰所坚持走"科研支撑产业,产业反哺科研"的良性发展道路,持续加大科

流程管理制度示例

第一章 总则 第一条 为加强某某连锁经营有限公司(以下简称"某")流程管理工作,建立和完善流程管理体系,规范流程制定程序,特制定本制度. 第二条 流程管理的原则 (一) 根据效率优先.兼顾风险的原则,让合适的人.在合适的时间.在适当的风险下做合适的事,从而更好地为公司创造价值: (二) 以部门为主体,推动部门发挥创新能力. 第三条 流程的管理模式 根据某组织结构及运营管理模式,管理流程主要实行公司级和部门级两级管理模式: (一) 跨部门间的流程由战略企划部负责组织建立和管理(该类流程以

流程管理与流程快速开发平台设计思路

1.前言 企业管理可能存在如下困惑: (1)无论如何进行分工方案的调整,依旧应对不了业务的变化,应对机制死板被动: (2)市场动态更新太快.形势复杂多变,管理漏洞百出,资源调配不合理,上下级沟通不畅影响效率: (3)流程反应速度太慢,满足不了客户需要,企业利润难以实现,流程重组乏力: (4)信息化系统烟囱林立,无法突破垂直管理壁垒: (5)没有一套适用的流程方案,难以建立优化体系,无法用有限的人力物力和时间达到最优利用 -- 咨询公司给出的方案: 企业在现代化发展中由于业务流程不合理,造成了多方