where("placeid = '$placeid'")->order("starttime asc")->select();
//debug($place_time);
$timeobj=array();
foreach($place_time as $v){
$timeobj[$v['id']]=$v;
}
//debug($timeobj);
$statusarr1=table_fields_options("place_sign_status","status1");
$statusarr2=table_fields_options("place_sign_status","status2");
$place_sign_status=M("place_sign_status")->where("placeid = '$placeid' and date >= '$startdate' and date <='$enddate'")->select();
//debug($place_sign_status);
$nowdate=date("Y-m-d");
$nowtime=date("H:i:s");
$statusobj=array();
foreach($place_sign_status as $k => $v){
$statusobj[$v['usertype']][$v['userid']][$v['date']][$v['timeid']]=$place_sign_status[$k];
}
//debug($statusobj);
import('Extend/Class/page');
$total=sql("select count(*) from {{place_join}} where placeid = '$placeid'")->queryScalar();
$pagenum=intval(GP('pagenum'));
$pagenum=empty($pagenum)?30:$pagenum;
$current_page=(int)GP('page'); // 当前被选中的页
$current_page=$current_page==0?1:$current_page;
$sub_pages=10; // 每次显示的页数
$each_disNums=$pagenum;
$url=$_SERVER['REQUEST_URI'];
$url=preg_replace("/&page=[\d]*/","",$url);
$subPage_link="$url&page="; // 链接
$pages=new \Page($each_disNums,$total,$current_page,$sub_pages,$subPage_link);
$totalpage=$pages->pageNums;
$pages=$pages->subPageCss3();
$start=($current_page-1)*$pagenum;
$limit = "limit $start,$pagenum";
$list=sql("SELECT userid,usertype,realname,avatar,b.name as department from ( (SELECT a.*,b.realname,b.avatar,b.departmentid from yide_place_join a inner JOIN yide_user b on a.userid = b.id and a.usertype='student') union (SELECT a.*,b.realname,b.avatar,b.departmentid from yide_place_join a inner JOIN yide_user_teacher b on a.userid = b.id and a.usertype='teacher') union (SELECT a.*,b.realname,b.avatar,b.departmentid from yide_place_join a inner JOIN yide_user_staff b on a.userid = b.id and a.usertype='staff')) a left join yide_department b on a.departmentid = b.id WHERE a.placeid = '$placeid' $limit")->queryAll();
foreach($list as $k => $v){
$cqnum=0;//工作天数
$sdnum=0;//迟到次数
$ztnum=0;//早退次数
$qjnum=0;//请假次数
$signdatearr=array();
for($i=0;$i<$days;$i++){
$date=date('Y-m-d', strtotime($startdate)+(86400*$i));
foreach($place_time as $t){
$list[$k]['statusobj'][$t['id']]['num1']=0;
$list[$k]['statusobj'][$t['id']]['num2']=0;
}
foreach($place_time as $t){
$statusobjone=$statusobj[$v['usertype']][$v['userid']][$date][$t['id']];
$status1=$statusobjone['status1'];
$status2=$statusobjone['status2'];
if(trim($statusobjone['manager_status1'])!="")$status1=$statusobjone['manager_status1'];
if(trim($statusobjone['manager_status2'])!="")$status2=$statusobjone['manager_status2'];
if(!in_array($date,$signdatearr)&&!empty($statusobjone))$signdatearr[]=$date;
//if(trim($status1)!=""||trim($status2)!="")$cqnum++;
if($status1==1)$sdnum++;
if($status2==1)$ztnum++;
if($status1==2||$status2==2)$qjnum++;
if(trim($status1)!="")$list[$k]['statusobj'][$t['id']]['num1']++;
if(trim($status2)!="")$list[$k]['statusobj'][$t['id']]['num2']++;
}
}
$cqnum=count($signdatearr);
$qqnum=$days-$cqnum;//缺勤天数
$list[$k]['cqnum']=$cqnum;
$list[$k]['qqnum']=$qqnum;
$list[$k]['sdnum']=$sdnum;
$list[$k]['ztnum']=$ztnum;
$list[$k]['qjnum']=$qjnum;
}
?>
选择 | 姓名 | 部门 | 出勤天数 | 缺勤天数 | 迟到次数 | 早退次数 | 请假次数 | 次数 | 次数 |
---|---|---|---|---|---|---|---|---|---|
{$v.realname} | {$v.department} | {$v.cqnum} | {$v.qqnum} | {$v.sdnum} | {$v.ztnum} | {$v.qjnum} | {$statusobjone.num1} | {$statusobjone.num2} |