1){
$orderbydesc="";
$descTXT="↓";
}else{
$orderbydesc=" desc";
$descTXT="↑";
}
If ($orderby=="") {
$orderby="EntourageOA_DepartmentName,EntourageOAid";
$descTXT="↓";
}
if ($OrdDateType=="0" and $OrdDateStart=="" and $OrdDateEnd=="") {$OrdDateType=4;}
//查询开始
$SqlOrdDateType=empty($SqlOrdDateType)!=false ? "" : $SqlOrdDateType;
$OAOccupationSQL=empty($OAOccupation)!=false ? "" : " and EntourageID in (".$OAOccupation.") ";
$sql="select EntourageOAid,EntourageOA_Name=case when EntourageOA_Name is not null then EntourageOA_Name else convert(nvarchar(10),EntourageOAid) end,EntourageP1,DispatchOrdID,ServiceOrdID,DispatchOrdNo=DispatchOrdClass+convert(nvarchar(10),year(DispatchOrd_NS_Time))+right('0'+convert(nvarchar(10),month(DispatchOrd_NS_Time)),2)+right('0'+convert(nvarchar(10),day(DispatchOrd_NS_Time)),2)+'-'+right('00'+convert(nvarchar(10),DispatchOrdNo),3)
,DispatchOrdActualDate=convert(char,DispatchOrdActualDate,120),DispatchOrdReturnDate=convert(char,DispatchOrdReturnDate,120),DispatchOrdTraStreetMileage,DispatchOrdTraEndMileage,DispatchOrdMileage
,OrdDistance=case when PATINDEX('%[^0-9|.|-|+]%',Replace(Replace(ServiceOrdTraDistance,'公里',''),'km',''))=0 then convert(money,Replace(Replace(ServiceOrdTraDistance,'公里',''),'km','')) else 0 end
,ServiceOrdAreaType,ServiceOrdType,DispatchOrd_NS_Time=convert(char,DispatchOrd_NS_Time,120),TimeLength_Program,TimeLength_ICU,TimeLength_Wait,EntourageOT_is,EntourageBetimesHH,EntourageState_Time
,EntourageOA_DepartmentName,EntourageOutHosp,EntourageInHosp
,ConversionDistance,EntourageOT_Money,Stretcher_Money,EntourageMileageFactor,Condition_Money
,ServiceOrdPtOutHosp,ServiceOrdTraVia,ServiceOrdPtInHosp,ServiceOrdTraEnd
from DispatchOrd_Entourage,DispatchOrd,ServiceOrder
where ServiceOrdID=ServiceOrdIDDt and DispatchOrdID=DispatchOrdIDDt and DispatchOrdState in (8,9) and EntourageState<>4".$OAOccupationSQL." and DispatchOrd_NS_Time ".$SqlOrdDateType.$searchSql." and ServiceOrdClass in ('".$OrdClassListSql."') order by EntourageOAid,DispatchOrd_NS_Time";
//echo $sql;exit;
$data = sqlsrv_query($conn,$sql);
if($data == true){
$FormArray=array();
//表头
$FormArray[0]=array("员工姓名","所属部门","日期","单号","区域","类型","转出医院","转出地址","转入医院","转入地址","出车时间","收车时间","出车里程","收车里程","实际公里","预估距离","活动保障","居家ICU","等待","系数","折算公里数","岗位里程价格
元/公里","提前出车","是否加班","加班费","担架费","特殊技能");
$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) ) {
//读取数据
$EntourageOAid = $rs['EntourageOAid'];
$EntourageOA_Name = $rs['EntourageOA_Name'];
$DispatchOrdID = $rs['DispatchOrdID'];
$ServiceOrdID = $rs['ServiceOrdID'];
$DispatchOrdNo = $rs['DispatchOrdNo'];
$ServiceOrdAreaType = $rs['ServiceOrdAreaType'];
$ServiceOrdType = $rs['ServiceOrdType'];
$DispatchOrdActualDate= $rs['DispatchOrdActualDate']; //出车时间
$DispatchOrdReturnDate= $rs['DispatchOrdReturnDate']; //收车时间
$DispatchOrdTraStreetMileage = $rs['DispatchOrdTraStreetMileage']; //出车
$DispatchOrdTraEndMileage = $rs['DispatchOrdTraEndMileage']; //收车
$DispatchOrdMileage = $rs['DispatchOrdMileage']; //实际公里
$OrdDistance = $rs['OrdDistance']; //预估距离
$TimeLength_Program = $rs['TimeLength_Program'];
$TimeLength_ICU = $rs['TimeLength_ICU'];
$TimeLength_Wait = $rs['TimeLength_Wait'];
$DispatchOrd_NS_Time = $rs['DispatchOrd_NS_Time'];
//$DispatchOrdPerfomance = $rs['DispatchOrdPerfomance'];
$EntourageOT_is = $rs['EntourageOT_is'];
//$EntourageLong_is = $rs['EntourageLong_is'];
$EntourageBetimesHH = $rs['EntourageBetimesHH'];
//$ServiceOrdPtOutHosp = $rs['ServiceOrdPtOutHosp'];
$ServiceOrdTraVia = str_replace(array("\n","\r"),"",$rs['ServiceOrdTraVia']);
//$ServiceOrdPtInHosp = $rs['ServiceOrdPtInHosp'];
$ServiceOrdTraEnd = str_replace(array("\n","\r"),"",$rs['ServiceOrdTraEnd']);
//$Post_MoneyP = $rs['Post_MoneyP']; //岗位工资 P
$DepartmentName = $rs['EntourageOA_DepartmentName'];//所属部门
$EntourageOutHosp = $rs['EntourageOutHosp']; //转出医院
$EntourageInHosp = $rs['EntourageInHosp']; //转出医院
$EntourageP1 = $rs['EntourageP1']; //岗位里程价格 P1
$ConversionDistance = $rs['ConversionDistance'];//折算公里数 L
$EntourageMileageFactor = $rs['EntourageMileageFactor']; //折算公里数 L
$EntourageOT_Money = $rs['EntourageOT_Money']; //加班费
$Stretcher_Money = $rs['Stretcher_Money']; //担架费
$Condition_Money = $rs['Condition_Money']; //特殊技能
$EntourageDKP_Money = $ConversionDistance*$EntourageMileageFactor+$EntourageOT_Money+$Stretcher_Money; //提成金额
If ($DispatchOrdMileage==0 And $DispatchOrdTraStreetMileage!=0 And $DispatchOrdTraEndMileage!=0) {$DispatchOrdMileage=$DispatchOrdTraEndMileage-$DispatchOrdTraStreetMileage;}
//读取数据--End
//计算个人系数
//$DepartmentName=OAUser($EntourageOAid,"DepartmentName");
//if ($DepartmentName=="车管中心" and $EntourageMileageFactor==1.2 and $ConversionDistance>250) {$EntourageMileageFactor=1.5;}
//$ConversionDistance = $ConversionDistance*$EntourageMileageFactor;
//写入数组
$FormArray[$i][0]=$EntourageOA_Name;
$FormArray[$i][1]=$DepartmentName;
$FormArray[$i][2]=date("Y-m-d",strtotime($DispatchOrd_NS_Time));
$FormArray[$i][3]="".$DispatchOrdNo."";
$FormArray[$i][4]=$ArrayOrdAreaType[$ServiceOrdAreaType];
$FormArray[$i][5]=$ArrayOrdType[$ServiceOrdType];
$FormArray[$i][6]=$EntourageOutHosp;
$FormArray[$i][7]=$ServiceOrdTraVia;
$FormArray[$i][8]=$EntourageInHosp;
$FormArray[$i][9]=$ServiceOrdTraEnd;
$FormArray[$i][10]=$DispatchOrdActualDate;
$FormArray[$i][11]=$DispatchOrdReturnDate;
$FormArray[$i][12]=floatval(number_format($DispatchOrdTraStreetMileage,2,".",""));
$FormArray[$i][13]=floatval(number_format($DispatchOrdTraEndMileage,2,".",""));
$FormArray[$i][14]=floatval(number_format($DispatchOrdMileage,2,".",""));
$FormArray[$i][15]=floatval(number_format($OrdDistance,2,".",""));
$FormArray[$i][16]=floatval(number_format($TimeLength_Program,2,".",""));
$FormArray[$i][17]=floatval(number_format($TimeLength_ICU,2,".",""));
$FormArray[$i][18]=floatval(number_format($TimeLength_Wait,2,".",""));
$FormArray[$i][19]=floatval(number_format($EntourageMileageFactor,2,".",""));
$FormArray[$i][20]=floatval(number_format($ConversionDistance,2,".",""));
$FormArray[$i][21]=floatval(number_format($EntourageP1,2,".",""));
$FormArray[$i][22]=$EntourageBetimesHH;
$FormArray[$i][23]=$EntourageOT_is;
$FormArray[$i][24]=floatval(number_format($EntourageOT_Money,2,".",""));
$FormArray[$i][25]=floatval(number_format($Stretcher_Money,2,".",""));;
$FormArray[$i][26]=floatval(number_format($Condition_Money,2,".",""));;
//$FormArray[$i][16]=floatval(number_format($EntourageDKP_Money,2,".",""));
$i++;
}
}
}
if ($is_CSV==2) {
echo json_encode($FormArray);
}
//echo print_r($FormArray);
//exit;
?>