【调度系统】广东民航医疗快线调度系统源代码
wanglizhong
2025-04-21 b8349bc19da36ab153c5466db7d089888a89f955
Report_DispatchDetailed_Data.php
@@ -324,6 +324,41 @@
   ";
   //$sql=",isRespirator=(select count(id) from ServiceOrd_Condition where ConditionID=4 and ServiceOrdCoID=ServiceOrdID)"
}
/**
 * 根据 DispatchOrdID 查找开单人及跟单人列表
 *
 * @param int $DispatchOrdID 调度单 ID
 * @param object $conn 数据库连接对象
 * @return array 包含开单人及跟单人信息的数组
 */
function getDispatchOrderStaff($DispatchOrdID, $conn) {
    $staffList = [];
    // 查询开单人信息
    $sqlDispatcher = "select PersonName,CommissionRatio from ServiceOrderCommissionDetails where ServiceOrderID='$DispatchOrdID' and PersonType='Opener'";
    $dataDispatcher = sqlsrv_query($conn, $sqlDispatcher);
    if ($dataDispatcher && sqlsrv_has_rows($dataDispatcher)) {
        $rsDispatcher = sqlsrv_fetch_array($dataDispatcher);
        $staffList['Opener'] = $rsDispatcher['PersonName'];
        $staffList['OpenerCommissionRatio'] = $rsDispatcher['CommissionRatio'];
    }
    // 查询跟单人列表
    $sqlEntourage = "select PersonName,CommissionRatio from ServiceOrderCommissionDetails where ServiceOrderID='$DispatchOrdID' and PersonType='Follower'";
    $dataEntourage = sqlsrv_query($conn, $sqlEntourage);
    if ($dataEntourage) {
        $entourageList = [];
      $i=1;
        while ($rsEntourage = sqlsrv_fetch_array($dataEntourage)) {
            $entourageList[$i]["Follower"] = $rsEntourage['PersonName'];
            $entourageList[$i]["FollowerRatio"] = $rsEntourage['CommissionRatio'];
        }
        $staffList['entourage'] = $entourageList;
    }
    return $staffList;
}
//echo $total_sql;exit;
if ($is_CSV!=1){
   //计算总页数
@@ -341,12 +376,12 @@
   $sqlPage="" ;
}
$sql = "select * $Additional_sql from ($Result_sql) sqlData ".$sqlPage." order by sqlData.n" ;
//echo $sql;exit;
// echo $sql;exit;
$data = sqlsrv_query($conn,$sql);
if($data == true){
   $FormArray=array();
   //表头
   $FormArray[0]=array("序号","服务单号","调度单号","级别","分区","预约类型","调度单状态","日期","时间","班次","联系人","联系电话","患者姓名","销售","介绍人","客服","调度","来源","是否企微成交","主要企微客服","其他企微客服","情景编号","企微绩效","总部下发","支援总部","承包组","区域","类型","出发省份","出发市","出发区","转出医院","转出科室","转出床位","转入省份","转入市","转入区","转入医院","转入科室","总成交价","系统报价参考","等待费","担架费","居家ICU费","距离(公里)","支付方式","使用呼吸机","车牌","出车成员","出车岗位","医护出车时间(分钟)");
   $FormArray[0]=array("序号","服务单号","调度单号","级别","分区","预约类型","调度单状态","日期","时间","班次","联系人","联系电话","患者姓名","销售","介绍人","客服","调度","来源","是否企微成交","主要企微客服","其他企微客服","情景编号","企微绩效","总部下发","支援总部","承包组","区域","类型","出发省份","出发市","出发区","转出医院","转出科室","转出床位","转入省份","转入市","转入区","转入医院","转入科室","总成交价","系统报价参考","等待费","担架费","居家ICU费","距离(公里)","支付方式","使用呼吸机","车牌","出车成员","出车岗位","医护出车时间(分钟)","开单人","开单人提成比例","跟单人","跟单人提成比例","跟单人","跟单人提成比例","跟单人","跟单人提成比例");
   if ($is_CSV==1){array_push($FormArray[0],"任务备注");}
   $FormArrayX=count($FormArray[0]);
   if (sqlsrv_rows_affected($data)==0) {
@@ -487,7 +522,42 @@
         $FormArray[$i][48]=$rs['EntourageName'];
         $FormArray[$i][49]=$rs['EntouragePost'];
         $FormArray[$i][50]=$rs['Stime2'];
         if ($is_CSV==1){$FormArray[$i][51]=$rs['ServiceOrdTaskRemarks'];}
         $rs2=getDispatchOrderStaff($rs['DispatchOrdID'], $conn);
         //如果 $rs2 为空,设置默认值
         if (empty($rs2)) {
            $FormArray[$i][51]='--';
            $FormArray[$i][52]='';
         }else{
            $FormArray[$i][51]=isset($rs2['Opener'])?$rs2['Opener']:'--';
            $FormArray[$i][52]=isset($rs2['OpenerCommissionRatio'])?$rs2['OpenerCommissionRatio']:'';
         }
         if (!empty($rs2['entourage'])) {
            //$rs2['entourage']的长度
            $count=count($rs2['entourage']);
            $j=0;
            foreach ($rs2['entourage'] as $key => $value) {
               $FormArray[$i][53+$j]=$value['Follower'];
               $FormArray[$i][54+$j]=$value['FollowerRatio'];
               $j++;
            }
            if($count<3){
               //补足3个
               while($j<3){
                  $FormArray[$i][53+$j*2]='--';
                  $FormArray[$i][54+$j*2]='';
                  $j++;
               }
            }
         }else{
            $FormArray[$i][53]='--';
            $FormArray[$i][54]='';
            $FormArray[$i][55]='--';
            $FormArray[$i][56]='';
            $FormArray[$i][57]='--';
            $FormArray[$i][58]='';
         }
         if ($is_CSV==1){$FormArray[$i][59]=$rs['ServiceOrdTaskRemarks'];}
         $i++;
         //写入数组--End