You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

123 lines
3.7 KiB

<?php
error_reporting(0);
include 'DB.php';
try {
$conn=new DB();
if($conn){
$baoyangsql="select DISTINCT(name) from target where type = '新梯' ";
$baoresult=$conn->getAll($baoyangsql);
for ($x=0; $x<sizeof($baoresult);$x++){
$name=$baoresult[$x]['name'];
//查询累计台数
$sqllei="select sum(tai_count) as leijicount from ranking where name='$name' and sign_type = '新梯'";
$reslei=$conn->getRow($sqllei);
if($reslei['leijicount']==null){
$leijicount=0;
}
else{
$leijicount=$reslei['leijicount'];
}
$baoresult[$x]['leijicount']=$leijicount;
//当月台数
$date = date('Y-m-d'); //当前时间
$firstday = date('Y-m-01', strtotime($date));
$sqldang="select sum(tai_count) as dangyuecount from ranking where name='$name' and sign_date>'$firstday'";
$resdang=$conn->getRow($sqldang);
if($resdang['dangyuecount']==null){
$dangyuecount=0;
}
else{
$dangyuecount=$resdang['dangyuecount'];
}
$baoresult[$x]['dangyuecount']=$dangyuecount;
//查询目标台数
$sqltarget="select sum(tai) as mubiaocount from target where name='$name' and type = '新梯'";
$restarget=$conn->getRow($sqltarget);
if($restarget['mubiaocount']==null){
$mubiaocount=0;
$baoresult[$x]['mubiaocount']= $mubiaocount;
$baoresult[$x]['leijidachenglv']= 100;
$baoresult[$x]['mubiaolv']= 3;
if($leijicount==0){
$baoresult[$x]['leijilv']= 3;
}else{
$baoresult[$x]['leijilv']= 100;
}
}
else{
$mubiaocount=$restarget['mubiaocount'];
$baoresult[$x]['mubiaocount']= $mubiaocount;
$baoresult[$x]['leijidachenglv']= intval($leijicount/$mubiaocount*100);
if($leijicount>$mubiaocount){
$leijilv=100;
$mubiaolv=intval($mubiaocount/$leijicount*100);
}else{
$mubiaolv=100;
$leijilv=intval($leijicount/$mubiaocount*100);
if($leijilv==0){
$leijilv=3;
}
}
if ($mubiaolv == 0){
$mubiaolv = 3;
}
if ($leijilv == 0){
$leijilv = 3;
}
$baoresult[$x]['mubiaolv']= $mubiaolv;
$baoresult[$x]['leijilv']= $leijilv;
}
// //查询员工入职是否三个月内
$sqljoindate="select joindate from target where name='$name'";
$resjoindate=$conn->getRow($sqljoindate);
if($resjoindate){
$threemonth=strtotime("-0 year -3 month -0 day");
$joindate=strtotime($resjoindate['joindate']);
if($threemonth-$joindate<0){
$baoresult[$x]['isnew']= 1;
}else{
$baoresult[$x]['isnew']= 0;
}
}
//查询详细数据
$sqldang="select * from ranking where name='$name' order by id desc ";
$detail=$conn->getAll($sqldang);
$baoresult[$x]['detail']= $detail;
}
//按照累计达成率排序
$sort=array_column($baoresult,'leijidachenglv');
array_multisort($sort,SORT_DESC,$baoresult);
$page=$_REQUEST['page'];
if(empty($page)){
$page=1;
$offset=0;
}else{
$offset=($page-1)*5;
}
$choosearray=array_slice($baoresult,$offset,5);
$result['list']=$choosearray;
//查询总数
$baoyangsqlcount="select DISTINCT(name) from target where type = '新梯'";
$baoresultcount=$conn->getAll($baoyangsqlcount);
$result['currenpage']=$page;
$result['total']=sizeof($baoresultcount);
$result['page']=ceil(sizeof($baoresultcount)/5);
//}
echo json_encode($result);
}
}catch (Exception $e) {
die($e->getMessage());
}
?>