<?php
|
$UnitNameID=empty($_REQUEST['UnitNameID'])!=false ? "" : addslashes($_REQUEST['UnitNameID']);
|
|
//分页信息
|
$page=empty($_REQUEST['page'])!=false ? 1 : $_REQUEST['page'];
|
$QuantityInt = 20; //每页显示数量
|
$acc1=$page; //当前页数
|
$acc2=0; //总页数
|
$acc3=0; //总记录数
|
|
//类型列表
|
$ArrayOrdType=array();
|
$sql = "select vID,vtext from dictionary where vtitle='ServiceOrderType' order by vOrder" ;
|
$data = sqlsrv_query($conn,$sql);
|
if($data == true){
|
$i=0;
|
while($rs = sqlsrv_fetch_array( $data, SQLSRV_FETCH_ASSOC) ) {
|
$ArrayOrdType[$rs['vID']]=$rs['vtext'];
|
$i++;
|
}
|
}
|
|
//查看各分公司报表权限
|
if (isDepartment("070109")==1) {
|
$OrdClassListSql="";
|
//$UnitNameID="1";
|
If ($UnitNameID!="" and $UnitNameID!="0") {
|
$sql="select vOrder2 from dictionary where vtitle='UnitName' and vID=".$UnitNameID;
|
$data = sqlsrv_query($conn,$sql);
|
if($data == true){
|
if (sqlsrv_rows_affected($data)!=0) {
|
while($rs = sqlsrv_fetch_array($data) ) {
|
$UnitTypeID = $rs[0];
|
$sql="select vID,vtext,vOrder2 from dictionary where vID in (".$UnitTypeID.") and vtitle='OrderClass' order by vOrder";
|
$data1 = sqlsrv_query($conn,$sql);
|
if($data1 == true){
|
while($rs1 = sqlsrv_fetch_array($data1) ) {
|
$OrderClassID = $rs1['vOrder2'];
|
$OrdClassListSql .= ",".$OrderClassID;
|
}
|
}
|
$OrdClassListSql=substr($OrdClassListSql,1);
|
$OrdClassListSql=str_replace(",","','",$OrdClassListSql);
|
}
|
}
|
}
|
}
|
}
|
If (!empty($OrdClassListSql)) {
|
$OrdClassListSql=" and (CarOrdClass like '%".str_replace("','","%' or CarOrdClass like '%",$OrdClassListSql)."%') ";
|
}else{
|
$OrdClassListSql="";
|
}
|
//查询条件
|
$searchSql="";
|
$searchTXT=empty($searchTXT)!=false ? "" : $searchTXT;
|
if ($searchTXT!=""){
|
$searchSql=" and (OA_Name like '%$searchTXT%') ";
|
}else{
|
$searchSql="";
|
}
|
|
$orderby=empty($orderby)!=false ? "" : $orderby;
|
If (strrpos($orderby," desc")>1){
|
$orderbydesc="";
|
$descTXT="↓";
|
}else{
|
$orderbydesc=" desc";
|
$descTXT="↑";
|
}
|
|
If ($orderby=="") {
|
$orderby="OA_DepartmentID,OA_User_ID";
|
$descTXT="↓";
|
}
|
|
if ($OrdDateType=="0" and $OrdDateStart=="" and $OrdDateEnd=="") {$OrdDateType=4;}
|
|
//查询开始
|
$SqlOrdDateType=empty($SqlOrdDateType)!=false ? "" : $SqlOrdDateType;
|
$sql="select CarID,id,CarLicense,GPS_IMEI,GPS_datetime=convert(char,GPS_datetime,120),GPS_milestat from CarData,CarGPS_Milestat where GPS_IMEI=imei and GPS_datetime ".$SqlOrdDateType.$searchSql.$OrdClassListSql." order by imei,GPS_datetime";
|
//echo $sql;exit;
|
$data = sqlsrv_query($conn,$sql);
|
if($data == true){
|
$FormArray=array();
|
//表头
|
$FormArray[0]=array("车牌","设备imei","统计日期","GPS里程","任务单往返里程","任务单绩效里程","任务单数量","差异");
|
|
$FormArrayX=count($FormArray[0]);
|
if (sqlsrv_rows_affected($data)==0) {
|
$SystemMessageType=2;
|
$SystemMessageTXT="数据库中相关无数据!";
|
$y=0;
|
} else {
|
$i=1;
|
while($rs = sqlsrv_fetch_array( $data, SQLSRV_FETCH_ASSOC) ) {
|
//读取数据
|
$CarID = $rs['CarID'];
|
$GPSDataID = $rs['id'];
|
$CarLicense = $rs['CarLicense'];
|
$GPS_IMEI = $rs['GPS_IMEI'];
|
$GPS_datetime = $rs['GPS_datetime'];
|
$GPS_milestat = $rs['GPS_milestat'];
|
$OrdInt = 0;
|
$OrdTraMileagesum = 0;
|
$OrdTraDistance = 0;
|
$GPSDataTXT = "";
|
|
$sql="select OrdInt=count(DispatchOrdID),OrdTraMileagesum=sum(DispatchOrdTraEndMileage-DispatchOrdTraStreetMileage),OrdTraDistance=sum(convert(money,Replace(Replace(ServiceOrdTraDistance,'公里',''),'km',''))) from DispatchOrd,ServiceOrder where ServiceOrdID=ServiceOrdIDDt and DispatchOrdCarID=".$CarID." and (DispatchOrdActualDate between '".date("Y-m-d",strtotime($GPS_datetime))." 00:00:00' and '".date("Y-m-d",strtotime($GPS_datetime))." 23:59:59')";
|
$dataDt = sqlsrv_query($conn,$sql);
|
if($dataDt == true){
|
while($rsDt = sqlsrv_fetch_array( $dataDt, SQLSRV_FETCH_ASSOC) ) {
|
$OrdInt = $rsDt['OrdInt'];;
|
$OrdTraMileagesum = number_format($rsDt['OrdTraMileagesum'],0,".","");
|
$OrdTraDistance = number_format($rsDt['OrdTraDistance'],0,".","");
|
}
|
}
|
//读取数据--End
|
|
//写入数组
|
$FormArray[$i][0]=$CarLicense;
|
$FormArray[$i][1]=$GPS_IMEI;
|
$FormArray[$i][2]=date("Y-m-d",strtotime($GPS_datetime));
|
$FormArray[$i][3]=$GPS_milestat;
|
$FormArray[$i][4]=$OrdTraMileagesum;
|
$FormArray[$i][5]=$OrdTraDistance;
|
$FormArray[$i][6]=$OrdInt;
|
|
if ($GPS_milestat>10 and ($GPS_milestat>$OrdTraMileagesum*1.2 or $GPS_milestat*1.2<$OrdTraMileagesum)){
|
$GPSDataTXT = "往返里程数据不一致";
|
}elseif ($GPS_milestat>10 and ($GPS_milestat>$OrdTraDistance*2.5 or $OrdTraDistance*2.5<$OrdTraMileagesum)){
|
$GPSDataTXT = "绩效里程数据不一致";
|
}else{
|
$GPSDataTXT = "正常";
|
}
|
$FormArray[$i][7]="<a href='/Report_MileageOrd.php?CarID=$CarID&OrdDateType=0&OrdDateStart=".date("Y-m-d",strtotime($GPS_datetime))."' target='_blank'>$GPSDataTXT</a>";
|
$i++;
|
|
}
|
|
|
}
|
}
|
|
if ($is_CSV==2) {
|
echo json_encode($FormArray);
|
}
|
//echo print_r($FormArray);
|
//exit;
|
?>
|