通达oa2015
在MYOA\webroot\general\mytable (路径根据跟人情况而定)添加一个 名叫 “办公用品.php”的文件
进入oa系统进入 系统管理 -》界面管理-》桌面模块设置找到“办公用品.php”然后编辑,显示属性 “用户必须”就会在桌面显示了
当一个部门中的员工申领物品时候(这是我这边办公用品申领流程)一、该部门经理审批二、综合部审批 (审批人:hao)三、综合部汇总审批 (注意二,三步是同一个人审批)四、综合部经理汇总审批五、综合部发放物品
这里是源码:$MODULE_FUNC_ID = '';$MODULE_DESC = _('办公用品');$MODULE_BODY = $MODULE_OP = '';$MODULE_HEAD_CLASS = 'workflow_office';//根据办公用品库管理员用户名用户所属角色获取所管理的库下的所有物品id function get_transhistory($username){ $str=''; $sql='SELECT id from office_type where TYPE_DEPOSITORY in(SELECT id from office_depository where FIND_IN_SET('{$username}',MANAGER) or FIND_IN_SET('{$_SESSION['LOGIN_USER_PRIV']}',PRIV_ID))'; $cursor = exequery(TD::conn(),$sql); while($ROW = mysql_fetch_array($cursor)){ $str.=$ROW['id'].','; } $num = substr($str,0,-1); if(empty($num)){return 0;} $sql = 'select pro_id from office_products where office_protype in ({$num}) or PRO_AUDITER = '{$username}''; $cursor = exequery(TD::conn(),$sql); $str=''; while($ROW = mysql_fetch_array($cursor)){ $str.=$ROW['pro_id'].','; $str.=$ROW['pro_id'].','; } return substr($str,0,-1);}if($MODULE_FUNC_ID=='' || find_id($USER_FUNC_ID_STR, $MODULE_FUNC_ID)){ $COUNT=0; $MODULE_BODY.= '
- '; //第一步审批 //办公用品采购申请 $num= get_transhistory($_SESSION['LOGIN_USER_ID']); if(empty($num)){ $query = 'SELECT distinct(BORROWER),TRANS_DATE,DEPT_MANAGER,DEPT_STATUS,CYCLE_NO FROM office_transhistory WHERE dept_status=0 and FIND_IN_SET('{$_SESSION['LOGIN_USER_ID']}',dept_manager) and trans_state in (0) order by TRANS_ID desc'; }else{ $query = 'SELECT distinct(BORROWER),TRANS_DATE,DEPT_MANAGER,DEPT_STATUS,CYCLE_NO FROM office_transhistory WHERE (TRANS_FLAG in(1,2,3) and pro_id in ({$num}) and trans_state=0 and dept_status=1) or (dept_status=0 and FIND_IN_SET('{$_SESSION['LOGIN_USER_ID']}',DEPT_MANAGER)) or (trans_state=1 and dept_status=1 and TRANS_FLAG=2 and GRANT_STATUS=1 and RETURN_STATUS=0 and RETURN_DATE!='0000-00-00') order by TRANS_ID desc'; } $cursor = exequery(TD::conn(),$query); while($ROW=mysql_fetch_assoc($cursor)){ $sqls='SELECT MANAGER,COLLECT_MANAGER FROM office_depository'; $COLLECT_MANAGER = exequery(TD::conn(), $sqls); $MANAGER=mysql_fetch_assoc($COLLECT_MANAGER); $SQL='SELECT USER_NAME FROM `user` WHERE USER_ID=''.$ROW['BORROWER'].'''; $BORROWER=exequery(TD::conn(), $SQL); $NAME=mysql_fetch_assoc($BORROWER); if(strstr($MANAGER['MANAGER'],$_SESSION['LOGIN_USER_ID'])) $MODULE_BODY.='
- [办公用品申领] '.$NAME['USER_NAME'].' 办公用品采购申请('.$ROW['TRANS_DATE'].') '; if(strstr($MANAGER['COLLECT_MANAGER'],$_SESSION['LOGIN_USER_ID'])) $MODULE_BODY.='
- [办公用品申领] '.$NAME['USER_NAME'].' 办公用品采购申请('.$ROW['TRANS_DATE'].') '.$STATUS.' '; //办公用品申领第一步 判断第一步审批人 if($ROW['DEPT_MANAGER']==$_SESSION['LOGIN_USER_ID']) $MODULE_BODY.='
- [办公用品申领] '.$NAME['USER_NAME'].' 办公用品采购申请('.$ROW['TRANS_DATE'].') '.$STATUS.' '; } //第二步汇总审批: $sqls='SELECT PRO_KEEPER,COLLECT_MANAGER FROM office_depository'; $PRO_KEEPER = exequery(TD::conn(), $sqls); $KEEPER=mysql_fetch_assoc($PRO_KEEPER); if(strstr($KEEPER['PRO_KEEPER'],$_SESSION['LOGIN_USER_ID'])){ $sqlw='SELECT distinct(CYCLE_NO),BORROWER,TRANS_DATE FROM `office_transhistory` WHERE `CYCLE`='1' and `TRANS_STATE`='5''; $NMB = exequery(TD::conn(), $sqlw); if (mysql_num_rows($NMB) == 0) { //$MODULE_BODY.='
- 没有待综合部审批汇总 '; }else{ while($rows=mysql_fetch_assoc($NMB)){ $BOR='SELECT USER_NAME FROM `user` WHERE USER_ID=''.$rows['BORROWER'].'''; $user=exequery(TD::conn(), $BOR); $username=mysql_fetch_assoc($user); $MODULE_BODY.='
- [办公用品申领] 待综合部审批汇总:'.$username['USER_NAME'].' 办公用品采购申请 ('.$rows['TRANS_DATE'].') '; } } } $sqls='SELECT COLLECT_MANAGER FROM office_depository'; $COLLECT_MANAGER = exequery(TD::conn(), $sqls); $MANAGER=mysql_fetch_assoc($COLLECT_MANAGER); if(strstr($MANAGER['COLLECT_MANAGER'],$_SESSION['LOGIN_USER_ID'])){ $queryc = 'SELECT distinct(COLLECID),COLLECTREMARK,COLLECTAPPROVEDATE,BORROWER,TRANS_DATE FROM `office_transhistory` WHERE `CYCLE`='1' and `TRANS_STATE`='6' order by TRANS_ID desc'; $collectnum = exequery(TD::conn(), $queryc); if (mysql_num_rows($collectnum) == 0) { $MODULE_BODY.='
- 没有待审批汇总 '; }else{ while($rows=mysql_fetch_assoc($collectnum)){ $BOR='SELECT USER_NAME FROM `user` WHERE USER_ID=''.$rows['BORROWER'].'''; $user=exequery(TD::conn(), $BOR); $username=mysql_fetch_assoc($user); $MODULE_BODY.='
- [办公用品申领] 待审批汇总:'.$username['USER_NAME'].' 办公用品采购申请 ('.$rows['TRANS_DATE'].') '; } } } //第三步通过待发放 $sqls='SELECT PRO_KEEPER FROM office_depository'; $PRO_KEEPER = exequery(TD::conn(), $sqls); $KEEPER=mysql_fetch_assoc($PRO_KEEPER); if(strstr($KEEPER['PRO_KEEPER'],$_SESSION['LOGIN_USER_ID'])){ $queryc = 'SELECT distinct(COLLECID),COLLECTREMARK,COLLECTAPPROVEDATE,BORROWER,TRANS_DATE FROM `office_transhistory` WHERE `CYCLE`='1' and `TRANS_STATE`='1' and GRANT_STATUS='0' order by TRANS_ID desc'; $collectnum = exequery(TD::conn(), $queryc); if (mysql_num_rows($collectnum) == 0) { //$MODULE_BODY.='
- 没有待发放 '; }else{ while($rows=mysql_fetch_assoc($collectnum)){ $BOR='SELECT USER_NAME FROM `user` WHERE USER_ID=''.$rows['BORROWER'].'''; $user=exequery(TD::conn(), $BOR); $username=mysql_fetch_assoc($user); $MODULE_BODY.='
- [办公用品申领] 待发放:'.$username['USER_NAME'].' 办公用品采购申请 ('.$rows['TRANS_DATE'].') '; } } } //第四部审批结果 //办公用品审批通过 //$sql='select distinct BORROWER,COLLECID,TRANS_DATE from office_transhistory order by COLLECID desc'; $sql='SELECT distinct(COLLECID),COLLECTREMARK,COLLECTAPPROVEDATE,TRANS_DATE FROM `office_transhistory` WHERE `CYCLE`='1' and `TRANS_STATE`='1' and GRANT_STATUS='1' order by TRANS_ID desc'; $cursor =exequery ( TD::conn (), $sql); while ( $ROW = mysql_fetch_assoc($cursor)){ $sqlm='select distinct(BORROWER),CYCLE_NO from office_transhistory join `user` on office_transhistory.borrower=`user`.user_id where COLLECID = '.$ROW['COLLECID']; $cursorm =exequery ( TD::conn (), $sqlm ); $ROWM = mysql_fetch_assoc($cursorm); if($ROWM['BORROWER']===$_SESSION['LOGIN_USER_ID']){ $BOR='SELECT USER_NAME FROM `user` WHERE USER_ID=''.$_SESSION['LOGIN_USER_ID'].'''; $user=exequery(TD::conn(), $BOR); $username=mysql_fetch_assoc($user); $MODULE_BODY.='
- [办公用品申领] '.$username['USER_NAME'].' 办公用品审批通过,请领取。('.$ROW['TRANS_DATE'].') '; //$MODULE_BODY.='
- [办公用品申领] '.$username['USER_NAME'].' 办公用品审批通过,请领取。('.$ROW['TRANS_DATE'].') '; $COUNT++; if($COUNT=1){break;} } } //办公用品审批未通过 $Q='SELECT distinct(BORROWER),REASON,COLLECTVIEW,TRANS_STATE,TRANS_DATE,CYCLE_NO FROM office_transhistory WHERE BORROWER=''.$_SESSION['LOGIN_USER_ID'].'' ORDER BY TRANS_DATE DESC LIMIT 0,'.$MAX_COUNT; $RES =exequery ( TD::conn (), $Q ); while($BOR=mysql_fetch_assoc ( $RES )){ if($BOR['BORROWER']===$_SESSION['LOGIN_USER_ID']){ $q1='SELECT USER_NAME FROM `user` WHERE USER_ID=''.$_SESSION['LOGIN_USER_ID'].'''; $RES1 =exequery ( TD::conn (), $q1 ); $user_name=mysql_fetch_assoc($RES1); if($BOR['TRANS_STATE']==2 || $BOR['TRANS_STATE']==7 || !empty($BOR['REASON']) || !empty($BOR['COLLECTVIEW'])){ $MODULE_BODY.='
- [办公用品申领] '.$user_name['USER_NAME'].' 办公用品审批未通过。('.$BOR['TRANS_DATE'].') '; //$MODULE_BODY.='
- [办公用品申领] '.$user_name['USER_NAME'].' 办公用品审批未通过。('.$BOR['TRANS_DATE'].') '; //$COUNT++; //if($COUNT=2){break;} } } } if($COUNT==0) //$MODULE_BODY.= '
- '._('暂无审批').' '; $MODULE_BODY.= '
最后贴的代码不能保证是否可行,本人测试正常。按照本人设计的申领流程走的