From b8349bc19da36ab153c5466db7d089888a89f955 Mon Sep 17 00:00:00 2001
From: wanglizhong <wlz>
Date: 星期一, 21 四月 2025 21:35:34 +0800
Subject: [PATCH] feat: 更新开单人、跟单人及比例

---
 Report_DispatchDetailed_Data.php |   76 ++++++++++++++++++++++++++++++++++++-
 1 files changed, 73 insertions(+), 3 deletions(-)

diff --git a/Report_DispatchDetailed_Data.php b/Report_DispatchDetailed_Data.php
index d0e35f7..c44f2d0 100644
--- a/Report_DispatchDetailed_Data.php
+++ b/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("搴忓彿","鏈嶅姟鍗曞彿","璋冨害鍗曞彿","绾у埆","鍒嗗尯","棰勭害绫诲瀷","璋冨害鍗曠姸鎬�","鏃ユ湡","鏃堕棿","鐝","鑱旂郴浜�","鑱旂郴鐢佃瘽","鎮h�呭鍚�","閿�鍞�","浠嬬粛浜�","瀹㈡湇","璋冨害","鏉ユ簮","鏄惁浼佸井鎴愪氦","涓昏浼佸井瀹㈡湇","鍏朵粬浼佸井瀹㈡湇","鎯呮櫙缂栧彿","浼佸井缁╂晥","鎬婚儴涓嬪彂","鏀彺鎬婚儴","鎵垮寘缁�","鍖哄煙","绫诲瀷","鍑哄彂鐪佷唤","鍑哄彂甯�","鍑哄彂鍖�","杞嚭鍖婚櫌","杞嚭绉戝","杞嚭搴婁綅","杞叆鐪佷唤","杞叆甯�","杞叆鍖�","杞叆鍖婚櫌","杞叆绉戝","鎬绘垚浜や环","绯荤粺鎶ヤ环鍙傝��","绛夊緟璐�","鎷呮灦璐�","灞呭ICU璐�","璺濈(鍏噷)","鏀粯鏂瑰紡","浣跨敤鍛煎惛鏈�","杞︾墝","鍑鸿溅鎴愬憳","鍑鸿溅宀椾綅","鍖绘姢鍑鸿溅鏃堕棿(鍒嗛挓)");
+	$FormArray[0]=array("搴忓彿","鏈嶅姟鍗曞彿","璋冨害鍗曞彿","绾у埆","鍒嗗尯","棰勭害绫诲瀷","璋冨害鍗曠姸鎬�","鏃ユ湡","鏃堕棿","鐝","鑱旂郴浜�","鑱旂郴鐢佃瘽","鎮h�呭鍚�","閿�鍞�","浠嬬粛浜�","瀹㈡湇","璋冨害","鏉ユ簮","鏄惁浼佸井鎴愪氦","涓昏浼佸井瀹㈡湇","鍏朵粬浼佸井瀹㈡湇","鎯呮櫙缂栧彿","浼佸井缁╂晥","鎬婚儴涓嬪彂","鏀彺鎬婚儴","鎵垮寘缁�","鍖哄煙","绫诲瀷","鍑哄彂鐪佷唤","鍑哄彂甯�","鍑哄彂鍖�","杞嚭鍖婚櫌","杞嚭绉戝","杞嚭搴婁綅","杞叆鐪佷唤","杞叆甯�","杞叆鍖�","杞叆鍖婚櫌","杞叆绉戝","鎬绘垚浜や环","绯荤粺鎶ヤ环鍙傝��","绛夊緟璐�","鎷呮灦璐�","灞呭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

--
Gitblit v1.9.1