php[周六代码分享]:返回调度人员…

 
<?php
 //返回调度人员或者部门审批人数组 
 // @param<string> $methoddeptverify(部门审批)、despmanage(调度员)
 // @return array
 function getvehiclemanager($method = 'deptverify') {
    $uidarr = array();
    $purvarr = array();
    if ($method != 'despmanage' && $method != 'deptverify') {
       return $purvarr;
    }
    //找出后台权限表中有调度员权限的岗位
    $sql = "SELECTpositionid FROM ".DB::table('common_position_purview')."WHERE module='vehicle' AND method='$method' AND val=1";
    $query = DB::query($sql);
    $pids_array = array(); //有调度权限的职位id
    while($row = DB::fetch($query)){
       $pids_array[] = $row['positionid'];
    }
    $pids_str = implode(',', $pids_array);
    $sql = "SELECT username,uid,realname FROM ".DB::table('common_member')."WHERE positionid IN($pids_str) AND status='0'";
    $query = DB::query($sql);
    while ($mrow = DB::fetch($query)) {
       $uidarr[] = $mrow['uid'];
       $mrow['online'] = false; //默认是下线
       $purvarr[$mrow['uid']] = $mrow;
    }
    
    $uid_str = implode(',',$uidarr);
    $sql = "SELECT uid,invisible FROM ".DB::table('common_session')."WHERE FIND_IN_SET(uid,'$uid_str')";
    $query = DB::query($sql); //查询是否上线
    while ($row = DB::fetch($query)) {
       if (!$row['invisible']) { //如果不是隐身的
           $purvarr[$row['uid']]['online'] = true;
       }
    }
    rsort($purvarr); //重排
    //在线的排在前面begin
    $onlineArray = $notlineArray = array();
    foreach($purvarr as $key => $value){
       if($value['online']){
           $onlineArray[] = $value;
       }else{
           $notlineArray[] = $value;
       }
    }
    $purvarr = array_merge($onlineArray,$notlineArray);
    //在线的排在前面end
    return $purvarr;
 }//endfunction
 ?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值