API/v1/web.config111 | 补丁 | 查看 | 原始文档 | blame | 历史 | |
DispatchOrder.gds | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
Report_DispatchDetailed_Data.php | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ServiceOrder.gds | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
admin_save.gds | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
web.config | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
API/v1/web.config111
DispatchOrder.gds
@@ -876,289 +876,7 @@ </div> <div class="field"> <!-- 开单人 --> <% EntourageID_OpenUser = "-8" departmentID_OpenUser = "9" OpenUserID = "" OpenUserName = "" OpenUserRatio = "" OpenerAndFollowerEnableModify = False if isDepartment("020140")=1 then OpenerAndFollowerEnableModify=True End If If DispatchOrdID<>"" Then openSql="select * from ServiceOrderCommissionDetails where ServiceOrderID="&DispatchOrdID&" and PersonType='Opener'" rs.open openSql,objConn,1,1 If not rs.Eof Then OpenUserID = rs("PersonID") OpenUserName = rs("PersonName") OpenUserRatio = rs("CommissionRatio") End If rs.close() End If %> <div class="label" style="float: left;margin-left: 0px;"><label for="input-small">开单人:</label></div> <div class="input" style="float:left;margin-left: 70px;"> <input id="Entourage_<%=EntourageID_OpenUser%>" name="OpenUserID" type="hidden" value="<%=OpenUserID%>"> <input type="text" id="EntourageName_<%=EntourageID_OpenUser%>" name="OpenUserName" <% if OpenerAndFollowerEnableModify=False Then%> disabled <% end If%> class="small" <%If OpenUserID="" Or OpenerAndFollowerEnableModify=True Then%>onclick="javascript:JS_EntourageOpen('<%=EntourageID_OpenUser%>','-<%=departmentID_OpenUser%>');"<%End If%> style="width:138px;" value="<%=OpenUserName%>" readonly="true"> </div> <% followerCount = 0 showFollower = False If DispatchOrdID<>"" Then followerSqlCount="select count(1) from ServiceOrderCommissionDetails where ServiceOrderID="&DispatchOrdID&" and PersonType='Follower'" rs.open followerSqlCount,objConn,1,1 If Not rs.EOF Then ' 获取查询结果 followerCount = rs.Fields(0).Value if followerCount>0 then showFollower = True else showFollower = False end if Else ' 如果记录集为空,将结果设为 0 followerCount = 0 showFollower = False End If rs.close() End If EditFollower=True showTopFollowerAdd=True if showFollower=True then showTopFollowerAdd=False End If if OpenerAndFollowerEnableModify=False Then EditFollower=False showTopFollowerAdd=False End If %> <div class="label" style="float: left;margin-left: 226px;"><label for="input-small">提成比例(%):</label></div> <div class="input" style="float:left;margin-left: 86px;"> <input type="text" id="OpenUserRatio" name="OpenUserRatio" <% if EditFollower=False Then%> disabled <% end If%> value="<%=OpenUserRatio%>" class="small" style="width:50px;"> </div> <div class="input" style="float:left;margin-left: 10px;"> <button class="ui-state-default" <% If showTopFollowerAdd=False then %> style='display:none' <% End If%> id="inputTopAddFollower" onclick="return showFollower();">添加跟单人</button> </div> </div> <div class="field" id="followerDiv" <% If showFollower<>True then %> style="display:none;" <% end if%>> <!-- 跟单人 --> <input type="hidden" id="hidFollowerCount" name="FollowersCount" value="<%=followerCount%>"/> <div class="label" style="float: left;margin-left: 10px;"><label for="input-small">跟单人:</label></div> <div class="input" style="float:left;margin-left: 70px;"> <div id="FollowersList"> <% FollowerCount = 1 EntourageID_Follower = "-9" departmentID_Follower = "9" if DispatchOrdID<>"" then followerSql="select * from ServiceOrderCommissionDetails where ServiceOrderID="&DispatchOrdID&" and PersonType='Follower'" rs.open followerSql,objConn,1,1 FollowerIndex=1 do while not rs.Eof FollowerID = rs("PersonID") FollowerName = rs("PersonName") FollowerRatio = rs("CommissionRatio") %> <div class="follower-item"> <input name="FollowerID_<%=FollowerIndex%>" id="FollowerId_<%=FollowerIndex%>" type="hidden" value="<%=FollowerID%>"> <input type="text" name="FollowerName_<%=FollowerIndex%>" <% if EditFollower=False Then %> disabled <% End If%> id="FollowerName_<%=FollowerIndex%>" class="small" <%If FollowerID="" Or isDepartment("020140")=1 Then%>onclick="javascript:JS_EntourageOpen('<%=EntourageID_Follower%>_<%=FollowerCount%>','-<%=departmentID_Follower%>');"<%End If%> style="width:138px;" value="<%=FollowerName%>" readonly="true"> <div class="label" style="float: left;margin-left: 226px;"><label for="input-small">提成比例(%):</label></div> <div class="input" style="float:left;margin-left: 87px;"> <input type="text" id="FollowerRatio_<%=FollowerIndex%>" <% if EditFollower=False Then %> disabled <% End If%> name="FollowerRatio_<%=FollowerIndex%>" class="small" style="width:50px;" value="<%=FollowerRatio%>" /> </div> <div class="input" style="float:left;margin-left: 10px;"> <button <% if EditFollower=False Then %> style="display:none" <% End If%> onclick="return removeFollower();">删除</button> </div> </div> <% FollowerIndex=FollowerIndex+1 rs.movenext loop rs.close() End If %> </div> <button <% if EditFollower=False Then %> style="display:none" <% End If%> class="ui-state-default" onclick="return addFollower()">添加跟单人</button> </div> </div> <style> /* 其他已有样式... */ .follower-item { margin-bottom: 10px; /* 每个跟单人项之间的间距 */ clear: both; /* 清除浮动 */ overflow: hidden; /* 处理浮动元素 */ } .follower-item input { margin-right: 10px; /* 输入框之间的间距 */ } </style> <script LANGUAGE="javascript"> function showFollower(){ document.getElementById("followerDiv").style.display=""; document.getElementById("inputTopAddFollower").style.display="none"; addFollower() return false; } function checkOpenerAndFollower(){ // 获取开单人信息 var openerNameInput = document.getElementById("EntourageName_<%=EntourageID_OpenUser%>"); var openerName = openerNameInput.value; var openerRatioInput = document.getElementById("OpenUserRatio"); var openerRatio = openerRatioInput.value; // 检测开单人姓名是否为空 //if (openerName === "") { // alert("开单人姓名不能为空"); // return false; //} // 检测开单人提成比例是否为空 if (openerName !="" && openerRatio === "") { alert("开单人提成比例不能为空"); return false; } // 存储跟单人姓名和提成比例 var followerNames = []; var followerRatios = []; var followersList = document.getElementById('FollowersList'); var followerItems = followersList.getElementsByClassName('follower-item'); // 遍历跟单人,收集姓名和提成比例并进行检测 for (var i = 0; i < followerItems.length; i++) { var followerNameInput = followerItems[i].querySelector('input[name^="FollowerName_"]'); var followerName = followerNameInput.value; var followerRatioInput = followerItems[i].querySelector('input[name^="FollowerRatio_"]'); var followerRatio = followerRatioInput.value; // 检测跟单人姓名是否为空 if (followerName === "") { alert("跟单人姓名不能为空"); return false; } // 检测跟单人提成比例是否为空 if (followerRatio === "") { alert("跟单人提成比例不能为空"); return false; } followerNames.push(followerName); followerRatios.push(parseFloat(followerRatio)); } // 将开单人提成比例转换为浮点数 openerRatio = parseFloat(openerRatio); // 检测逻辑 1: 开单人与跟单人比例加起不能超过 100 var totalRatio = openerRatio; for (var j = 0; j < followerRatios.length; j++) { totalRatio += followerRatios[j]; } if (totalRatio > 100) { alert("开单人与跟单人提成比例总和不能超过 100%"); return false; } // 检测逻辑 2: 开单人与跟单人不要出现重复 if (followerNames.includes(openerName)) { alert("开单人与跟单人不能重复"); return false; } // 检测逻辑 3: 多个跟单人之间也不要出现重复 var uniqueFollowerNames = []; for (var k = 0; k < followerNames.length; k++) { if (uniqueFollowerNames.includes(followerNames[k])) { alert("跟单人之间不能重复"); return false; } uniqueFollowerNames.push(followerNames[k]); } return true; } function addFollower() { var followersList = document.getElementById('FollowersList'); var newFollower = document.createElement('div'); newFollower.className = 'follower-item'; var followerCount = followersList.children.length + 1; newFollower.innerHTML = ` <input id="Entourage_<%=EntourageID_Follower%>_${followerCount}" name="FollowerID_${followerCount}" type="hidden" value=""> <input type="text" id="EntourageName_<%=EntourageID_Follower%>_${followerCount}" name="FollowerName_${followerCount}" class="small" onclick="javascript:JS_EntourageOpen('<%=EntourageID_Follower%>_${followerCount}','-<%=departmentID_Follower%>');" style="width:138px;" value="" readonly="true"> <div class="label" style="float: left;margin-left: 226px;"><label for="input-small">提成比例(%):</label></div> <div class="input" style="float:left;margin-left: 87px;"> <input type="text" id="FollowerRatio_${followerCount}" name="FollowerRatio_${followerCount}" class="small" style="width:50px;"> </div> <div class="input" style="float:left;margin-left: 10px;"> <button onclick="return removeFollower();">删除</button> </div> `; followersList.appendChild(newFollower); addFollowerCount(1); return false; } function removeFollower(index){ var followersList = document.getElementById('FollowersList'); var followerItems = followersList.getElementsByClassName('follower-item'); // 如果传入了 index 参数,删除指定索引的元素;否则删除最后一个元素 var elementToRemove = index !== undefined ? followerItems[index] : followersList.lastElementChild; if (elementToRemove) { elementToRemove.remove(); } followersList = document.getElementById('FollowersList'); let len=followersList.children.length; // 更新剩余元素的 name 属性和索引 var newFollowerCount = 1; for (var i = 0; i < len; i++) { var item = followerItems[i]; var followerIdInput = item.querySelector('input[name^="FollowerID_"]'); var followerNameInput = item.querySelector('input[name^="FollowerName_"]'); var followerRatioInput = item.querySelector('input[name^="FollowerRatio_"]'); if (followerIdInput) { followerIdInput.name = `FollowerID_${newFollowerCount}`; followerIdInput.id = `FollowerId_${newFollowerCount}`; } if (followerNameInput) { followerNameInput.name = `FollowerName_${newFollowerCount}`; followerNameInput.id = `FollowerName_${newFollowerCount}`; } if (followerRatioInput) { followerRatioInput.name = `FollowerRatio_${newFollowerCount}`; followerRatioInput.id = `FollowerRatio_${newFollowerCount}`; } newFollowerCount++; } if(followersList.children.length==0){ document.getElementById("followerDiv").style.display="none"; document.getElementById("inputTopAddFollower").style.display=""; } addFollowerCount(-1); return false; } function addFollowerCount(val){ var hid=document.getElementById("hidFollowerCount"); var oldv=hid.value; hid.value=parseInt(oldv)+val; } </script> <%If isDepartment("070127")=1 Then%> <div class="field"> <%'主要企微客服 @@ -1585,10 +1303,7 @@ <script LANGUAGE="javascript"> //保存调度单(新增) function form1_submit24_1(){ let checkResult=checkOpenerAndFollower(); if(!checkResult){ return; } DispatchOrdPerfomance=document.getElementById('DispatchOrdPerfomance').value; //绩效计价 ServiceOrdTraTxnPrice=document.getElementById('ServiceOrdTraTxnPrice').value; //成交价 //if ((DispatchOrdPerfomance=='0' || DispatchOrdPerfomance=='') && ServiceOrdTraTxnPrice!='0') @@ -1609,10 +1324,7 @@ } //保存调度单(修改) function form1_submit25_1(){ let checkResult=checkOpenerAndFollower(); if(!checkResult){ return; } DispatchOrdPerfomance=document.getElementById('DispatchOrdPerfomance').value; //绩效计价 ServiceOrdTraTxnPrice=document.getElementById('ServiceOrdTraTxnPrice').value; //成交价 if(document.getElementById("RV_PointE_TXT")!=null){ @@ -1641,10 +1353,7 @@ } //下发调度单(新增) function form1_submit24_2(){ let checkResult=checkOpenerAndFollower(); if(!checkResult){ return; } DispatchOrdPerfomance=document.getElementById('DispatchOrdPerfomance').value; //绩效计价 ServiceOrdTraTxnPrice=document.getElementById('ServiceOrdTraTxnPrice').value; //成交价 //if ((DispatchOrdPerfomance=='0' || DispatchOrdPerfomance=='') && ServiceOrdTraTxnPrice!='0') @@ -1665,10 +1374,7 @@ } //下发调度单(修改) function form1_submit25_2(){ let checkResult=checkOpenerAndFollower(); if(!checkResult){ return; } DispatchOrdPerfomance=document.getElementById('DispatchOrdPerfomance').value; //绩效计价 ServiceOrdTraTxnPrice=document.getElementById('ServiceOrdTraTxnPrice').value; //成交价 //if ((DispatchOrdPerfomance=='0' || DispatchOrdPerfomance=='') && ServiceOrdTraTxnPrice!='0') @@ -1689,10 +1395,7 @@ } //审核通过调度单(修改) function form1_submit28_1(){ let checkResult=checkOpenerAndFollower(); if(!checkResult){ return; } DispatchOrdPerfomance=document.getElementById('DispatchOrdPerfomance').value; //绩效计价 ServiceOrdTraTxnPrice=document.getElementById('ServiceOrdTraTxnPrice').value; //成交价 //if ((DispatchOrdPerfomance=='0' || DispatchOrdPerfomance=='') && ServiceOrdTraTxnPrice!='0') @@ -1716,10 +1419,7 @@ } //审核不通过调度单(修改) function form1_submit28_2(){ let checkResult=checkOpenerAndFollower(); if(!checkResult){ return; } if(confirm("确定审核不通过调度单?")) { document.getElementById("MessageContents_form1").value=document.getElementById("MessageContents").value; Report_DispatchDetailed_Data.php
@@ -327,15 +327,15 @@ /** * 根据 DispatchOrdID 查找开单人及跟单人列表 * * @param int $DispatchOrdID 调度单 ID * @param int $ServiceOrdID 调度单 ID * @param object $conn 数据库连接对象 * @return array 包含开单人及跟单人信息的数组 */ function getDispatchOrderStaff($DispatchOrdID, $conn) { function getDispatchOrderStaff($ServiceOrdID, $conn) { $staffList = []; // 查询开单人信息 $sqlDispatcher = "select PersonName,CommissionRatio from ServiceOrderCommissionDetails where ServiceOrderID='$DispatchOrdID' and PersonType='Opener'"; $sqlDispatcher = "select PersonName,CommissionRatio from ServiceOrderCommissionDetails where ServiceOrderID='$ServiceOrdID' and PersonType='Opener'"; $dataDispatcher = sqlsrv_query($conn, $sqlDispatcher); if ($dataDispatcher && sqlsrv_has_rows($dataDispatcher)) { @@ -345,7 +345,7 @@ } // 查询跟单人列表 $sqlEntourage = "select PersonName,CommissionRatio from ServiceOrderCommissionDetails where ServiceOrderID='$DispatchOrdID' and PersonType='Follower'"; $sqlEntourage = "select PersonName,CommissionRatio from ServiceOrderCommissionDetails where ServiceOrderID='$ServiceOrdID' and PersonType='Follower'"; $dataEntourage = sqlsrv_query($conn, $sqlEntourage); if ($dataEntourage) { $entourageList = []; @@ -381,7 +381,7 @@ 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) { @@ -401,11 +401,11 @@ $isRespirator="是"; } //读取数据--End $ServiceOrdID=$rs['ServiceOrdID']; //写入数组 $FormArray[$i][0]=$i+(($page-1)*$page_size); If ($OrdType=="2") { $FormArray[$i][1]="<a href='ServiceOrder.gds?ServiceOrdID=".$rs['ServiceOrdID']."&OrdDateType=4&OrdClassList=&h_menu1_1=1' target='_blank'>".$rs['ServiceOrdNo']."</a>"; $FormArray[$i][1]="<a href='ServiceOrder.gds?ServiceOrdID=".$ServiceOrdID."&OrdDateType=4&OrdClassList=&h_menu1_1=1' target='_blank'>".$rs['ServiceOrdNo']."</a>"; if (!empty($rs['DispatchOrdNo'])) { $FormArray[$i][2]="<a href='DispatchOrder.gds?DispatchOrdID=".$rs['DispatchOrdID']."&OrdDateType=4&OrdClassList=&h_menu1_1=1' target='_blank'>".$rs['DispatchOrdNo']."</a>"; }else{ @@ -522,7 +522,7 @@ $FormArray[$i][48]=$rs['EntourageName']; $FormArray[$i][49]=$rs['EntouragePost']; $FormArray[$i][50]=$rs['Stime2']; $rs2=getDispatchOrderStaff($rs['DispatchOrdID'], $conn); $rs2=getDispatchOrderStaff($ServiceOrdID, $conn); //如果 $rs2 为空,设置默认值 if (empty($rs2)) { $FormArray[$i][51]='--'; @@ -541,9 +541,9 @@ $FormArray[$i][54+$j]=$value['FollowerRatio']; $j++; } if($count<3){ //补足3个 while($j<3){ if($count<4){ //补足4个 while($j<4){ $FormArray[$i][53+$j*2]='--'; $FormArray[$i][54+$j*2]=''; $j++; @@ -556,8 +556,10 @@ $FormArray[$i][56]=''; $FormArray[$i][57]='--'; $FormArray[$i][58]=''; $FormArray[$i][59]='--'; $FormArray[$i][60]=''; } if ($is_CSV==1){$FormArray[$i][59]=$rs['ServiceOrdTaskRemarks'];} if ($is_CSV==1){$FormArray[$i][61]=$rs['ServiceOrdTaskRemarks'];} $i++; //写入数组--End ServiceOrder.gds
@@ -1181,6 +1181,289 @@ </div> </div> <div class="field"> <!-- 开单人 --> <% EntourageID_OpenUser = "-8" departmentID_OpenUser = "9" OpenUserID = "" OpenUserName = "" OpenUserRatio = "" OpenerAndFollowerEnableModify = False if isDepartment("020140")=1 then OpenerAndFollowerEnableModify=True End If If ServiceOrdID<>"" Then openSql="select * from ServiceOrderCommissionDetails where ServiceOrderID="&ServiceOrdID&" and PersonType='Opener'" rs.open openSql,objConn,1,1 If not rs.Eof Then OpenUserID = rs("PersonID") OpenUserName = rs("PersonName") OpenUserRatio = rs("CommissionRatio") End If rs.close() End If %> <div class="label" style="float: left;margin-left: 0px;"><label for="input-small">开单人:</label></div> <div class="input" style="float:left;margin-left: 70px;"> <input id="Entourage_<%=EntourageID_OpenUser%>" name="OpenUserID" type="hidden" value="<%=OpenUserID%>"> <input type="text" id="EntourageName_<%=EntourageID_OpenUser%>" name="OpenUserName" <% if OpenerAndFollowerEnableModify=False Then%> disabled <% end If%> class="small" <%If OpenUserID="" Or OpenerAndFollowerEnableModify=True Then%>onclick="javascript:JS_EntourageOpen('<%=EntourageID_OpenUser%>','-<%=departmentID_OpenUser%>');"<%End If%> style="width:138px;" value="<%=OpenUserName%>" readonly="true"> </div> <% followerCount = 0 showFollower = False If ServiceOrdID<>"" Then followerSqlCount="select count(1) from ServiceOrderCommissionDetails where ServiceOrderID="&ServiceOrdID&" and PersonType='Follower'" rs.open followerSqlCount,objConn,1,1 If Not rs.EOF Then ' 获取查询结果 followerCount = rs.Fields(0).Value if followerCount>0 then showFollower = True else showFollower = False end if Else ' 如果记录集为空,将结果设为 0 followerCount = 0 showFollower = False End If rs.close() End If EditFollower=True showTopFollowerAdd=True if showFollower=True then showTopFollowerAdd=False End If if OpenerAndFollowerEnableModify=False Then EditFollower=False showTopFollowerAdd=False End If %> <div class="label" style="float: left;margin-left: 226px;"><label for="input-small">提成比例(%):</label></div> <div class="input" style="float:left;margin-left: 86px;"> <input type="text" id="OpenUserRatio" name="OpenUserRatio" <% if EditFollower=False Then%> disabled <% end If%> value="<%=OpenUserRatio%>" class="small" style="width:50px;"> </div> <div class="input" style="float:left;margin-left: 10px;"> <button class="ui-state-default" <% If showTopFollowerAdd=False then %> style='display:none' <% End If%> id="inputTopAddFollower" onclick="return showFollower();">添加跟单人</button> </div> </div> <div class="field" id="followerDiv" <% If showFollower<>True then %> style="display:none;" <% end if%>> <!-- 跟单人 --> <input type="hidden" id="hidFollowerCount" name="FollowersCount" value="<%=followerCount%>"/> <div class="label" style="float: left;margin-left: 10px;"><label for="input-small">跟单人:</label></div> <div class="input" style="float:left;margin-left: 70px;"> <div id="FollowersList"> <% FollowerCount = 1 EntourageID_Follower = "-9" departmentID_Follower = "9" if ServiceOrdID<>"" then followerSql="select * from ServiceOrderCommissionDetails where ServiceOrderID="&ServiceOrdID&" and PersonType='Follower'" rs.open followerSql,objConn,1,1 FollowerIndex=1 do while not rs.Eof FollowerID = rs("PersonID") FollowerName = rs("PersonName") FollowerRatio = rs("CommissionRatio") %> <div class="follower-item"> <input name="FollowerID_<%=FollowerIndex%>" id="FollowerId_<%=FollowerIndex%>" type="hidden" value="<%=FollowerID%>"> <input type="text" name="FollowerName_<%=FollowerIndex%>" <% if EditFollower=False Then %> disabled <% End If%> id="FollowerName_<%=FollowerIndex%>" class="small" <%If FollowerID="" Or isDepartment("020140")=1 Then%>onclick="javascript:JS_EntourageOpen('<%=EntourageID_Follower%>_<%=FollowerCount%>','-<%=departmentID_Follower%>');"<%End If%> style="width:138px;" value="<%=FollowerName%>" readonly="true"> <div class="label" style="float: left;margin-left: 226px;"><label for="input-small">提成比例(%):</label></div> <div class="input" style="float:left;margin-left: 87px;"> <input type="text" id="FollowerRatio_<%=FollowerIndex%>" <% if EditFollower=False Then %> disabled <% End If%> name="FollowerRatio_<%=FollowerIndex%>" class="small" style="width:50px;" value="<%=FollowerRatio%>" /> </div> <div class="input" style="float:left;margin-left: 10px;"> <button <% if EditFollower=False Then %> style="display:none" <% End If%> onclick="return removeFollower();">删除</button> </div> </div> <% FollowerIndex=FollowerIndex+1 rs.movenext loop rs.close() End If %> </div> <button <% if EditFollower=False Then %> style="display:none" <% End If%> class="ui-state-default" onclick="return addFollower()">添加跟单人</button> </div> </div> <style> /* 其他已有样式... */ .follower-item { margin-bottom: 10px; /* 每个跟单人项之间的间距 */ clear: both; /* 清除浮动 */ overflow: hidden; /* 处理浮动元素 */ } .follower-item input { margin-right: 10px; /* 输入框之间的间距 */ } </style> <script LANGUAGE="javascript"> function showFollower(){ document.getElementById("followerDiv").style.display=""; document.getElementById("inputTopAddFollower").style.display="none"; addFollower() return false; } function checkOpenerAndFollower(){ // 获取开单人信息 var openerNameInput = document.getElementById("EntourageName_<%=EntourageID_OpenUser%>"); var openerName = openerNameInput.value; var openerRatioInput = document.getElementById("OpenUserRatio"); var openerRatio = openerRatioInput.value; // 检测开单人姓名是否为空 //if (openerName === "") { // alert("开单人姓名不能为空"); // return false; //} // 检测开单人提成比例是否为空 if (openerName !="" && openerRatio === "") { alert("开单人提成比例不能为空"); return false; } // 存储跟单人姓名和提成比例 var followerNames = []; var followerRatios = []; var followersList = document.getElementById('FollowersList'); var followerItems = followersList.getElementsByClassName('follower-item'); // 遍历跟单人,收集姓名和提成比例并进行检测 for (var i = 0; i < followerItems.length; i++) { var followerNameInput = followerItems[i].querySelector('input[name^="FollowerName_"]'); var followerName = followerNameInput.value; var followerRatioInput = followerItems[i].querySelector('input[name^="FollowerRatio_"]'); var followerRatio = followerRatioInput.value; // 检测跟单人姓名是否为空 if (followerName === "") { alert("跟单人姓名不能为空"); return false; } // 检测跟单人提成比例是否为空 if (followerRatio === "") { alert("跟单人提成比例不能为空"); return false; } followerNames.push(followerName); followerRatios.push(parseFloat(followerRatio)); } // 将开单人提成比例转换为浮点数 openerRatio = parseFloat(openerRatio); // 检测逻辑 1: 开单人与跟单人比例加起不能超过 100 var totalRatio = openerRatio; for (var j = 0; j < followerRatios.length; j++) { totalRatio += followerRatios[j]; } if (totalRatio > 100) { alert("开单人与跟单人提成比例总和不能超过 100%"); return false; } // 检测逻辑 2: 开单人与跟单人不要出现重复 if (followerNames.includes(openerName)) { alert("开单人与跟单人不能重复"); return false; } // 检测逻辑 3: 多个跟单人之间也不要出现重复 var uniqueFollowerNames = []; for (var k = 0; k < followerNames.length; k++) { if (uniqueFollowerNames.includes(followerNames[k])) { alert("跟单人之间不能重复"); return false; } uniqueFollowerNames.push(followerNames[k]); } return true; } function addFollower() { var followersList = document.getElementById('FollowersList'); var newFollower = document.createElement('div'); newFollower.className = 'follower-item'; var followerCount = followersList.children.length + 1; newFollower.innerHTML = ` <input id="Entourage_<%=EntourageID_Follower%>_${followerCount}" name="FollowerID_${followerCount}" type="hidden" value=""> <input type="text" id="EntourageName_<%=EntourageID_Follower%>_${followerCount}" name="FollowerName_${followerCount}" class="small" onclick="javascript:JS_EntourageOpen('<%=EntourageID_Follower%>_${followerCount}','-<%=departmentID_Follower%>');" style="width:138px;" value="" readonly="true"> <div class="label" style="float: left;margin-left: 226px;"><label for="input-small">提成比例(%):</label></div> <div class="input" style="float:left;margin-left: 87px;"> <input type="text" id="FollowerRatio_${followerCount}" name="FollowerRatio_${followerCount}" class="small" style="width:50px;"> </div> <div class="input" style="float:left;margin-left: 10px;"> <button onclick="return removeFollower();">删除</button> </div> `; followersList.appendChild(newFollower); addFollowerCount(1); return false; } function removeFollower(index){ var followersList = document.getElementById('FollowersList'); var followerItems = followersList.getElementsByClassName('follower-item'); // 如果传入了 index 参数,删除指定索引的元素;否则删除最后一个元素 var elementToRemove = index !== undefined ? followerItems[index] : followersList.lastElementChild; if (elementToRemove) { elementToRemove.remove(); } followersList = document.getElementById('FollowersList'); let len=followersList.children.length; // 更新剩余元素的 name 属性和索引 var newFollowerCount = 1; for (var i = 0; i < len; i++) { var item = followerItems[i]; var followerIdInput = item.querySelector('input[name^="FollowerID_"]'); var followerNameInput = item.querySelector('input[name^="FollowerName_"]'); var followerRatioInput = item.querySelector('input[name^="FollowerRatio_"]'); if (followerIdInput) { followerIdInput.name = `FollowerID_${newFollowerCount}`; followerIdInput.id = `FollowerId_${newFollowerCount}`; } if (followerNameInput) { followerNameInput.name = `FollowerName_${newFollowerCount}`; followerNameInput.id = `FollowerName_${newFollowerCount}`; } if (followerRatioInput) { followerRatioInput.name = `FollowerRatio_${newFollowerCount}`; followerRatioInput.id = `FollowerRatio_${newFollowerCount}`; } newFollowerCount++; } if(followersList.children.length==0){ document.getElementById("followerDiv").style.display="none"; document.getElementById("inputTopAddFollower").style.display=""; } addFollowerCount(-1); return false; } function addFollowerCount(val){ var hid=document.getElementById("hidFollowerCount"); var oldv=hid.value; hid.value=parseInt(oldv)+val; } </script> <%If isDepartment("070127")=1 Then%> <div class="field"> <%'主要企微客服 @@ -1483,22 +1766,30 @@ <script LANGUAGE="javascript"> //生成咨询单(新增) function form1_submit19_1(){ document.form1.action = "admin_save.gds"; document.form1.admin_save.value = "19"; document.form1.NEWOrder.value = ""; document.form1.ServiceOrdState.value = "1"; document.getElementById("zhezhao").style.display="block"; document.getElementById("login").style.display="block"; form1.submit(); let checkResult=checkOpenerAndFollower(); if(!checkResult){ return; } document.form1.action = "admin_save.gds"; document.form1.admin_save.value = "19"; document.form1.NEWOrder.value = ""; document.form1.ServiceOrdState.value = "1"; document.getElementById("zhezhao").style.display="block"; document.getElementById("login").style.display="block"; form1.submit(); } //生成服务单(新增) function form1_submit19_2(){ document.form1.action = "admin_save.gds"; document.form1.admin_save.value = "19"; document.form1.ServiceOrdState.value = "2"; document.getElementById("zhezhao").style.display="block"; document.getElementById("login").style.display="block"; form1.submit(); let checkResult=checkOpenerAndFollower(); if(!checkResult){ return; } document.form1.action = "admin_save.gds"; document.form1.admin_save.value = "19"; document.form1.ServiceOrdState.value = "2"; document.getElementById("zhezhao").style.display="block"; document.getElementById("login").style.display="block"; form1.submit(); } //生成无效电话(新增) function form1_submit19_4(){ @@ -1527,6 +1818,10 @@ } //生成/保存服务单(修改) function form1_submit20_2(){ let checkResult=checkOpenerAndFollower(); if(!checkResult){ return; } document.getElementById("MessageContents_form1").value=document.getElementById("MessageContents").value; document.form1.action = "admin_save.gds"; document.form1.admin_save.value = "20"; admin_save.gds
@@ -1050,8 +1050,9 @@ rs.close() ServiceOrdNo = ServiceOrdClass& year(now())&Right("0"&month(now()),2)&Right("0"&day(now()),2) & "-"&Right("00"&ServiceOrdNo,3) '保存开单人及提成比例的函数 SaveOpenerCommission ServiceOrdID SaveFollowers ServiceOrdID '咨询单转为服务单('自动审核) If ServiceOrdState="2" then sql="update ServiceOrder set ServiceOrd_NS_ID="&session("adminID")&",ServiceOrd_NS_Time=getdate(),ServiceOrd_AP_Check=1,ServiceOrd_AP_Time=getdate(),ServiceOrd_AP_ID="&session("adminID")&" where ServiceOrdID="&ServiceOrdID @@ -1314,7 +1315,9 @@ ServiceOrd_Check = SafeRequest(Request.form("ServiceOrd_Check")) '当前审核操作 EditDataForm = SafeRequest(Request.form("EditDataForm")) '当前修改项目 '保存开单人及提成比例的函数 SaveOpenerCommission ServiceOrdID SaveFollowers ServiceOrdID Call RequestForm(Origin) session("Origin")=Origin @@ -1836,6 +1839,7 @@ End If End If Response.Redirect ReturnURL&"&SystemMessageType=3&SMT="&SMT Response.End%> @@ -2063,8 +2067,6 @@ sql="update DispatchOrd set DispatchOrdTraSDTime='"&DispatchOrdTraSDTime&"' where DispatchOrdID="&DispatchOrdID objConn.Execute sql End If SaveOpenerCommission DispatchOrdID SaveFollowers DispatchOrdID '写入附加项目费用 If AddMoneyType<>"" And AddMoneyType<>"0" And AddMoney>0 And StretcherMoney>0 Then @@ -2409,8 +2411,7 @@ ServiceOrdTraEnd = SafeRequest(Request.form("ServiceOrdTraEnd")) '转入地址 EditDataForm = SafeRequest(Request.form("EditDataForm")) '当前修改项目 SaveOpenerCommission DispatchOrdID SaveFollowers DispatchOrdID If ServiceOrdTraStreet<>"" Then DispatchOrdTraStreet=ServiceOrdTraStreet If ServiceOrdTraVia<>"" Then DispatchOrdTraVia=ServiceOrdTraVia web.config
@@ -17,7 +17,7 @@ <remove name="FastCGI" /> <add name="gds" path="*.gds" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\System32\inetsrv\asp.dll" resourceType="File" preCondition="bitness64" /> <add name="FastCGI" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="D:\project\急救转运\code\php\php-cgi.exe" resourceType="File" requireAccess="Script" /> <add name="php" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="C:\php\php-cgi.exe" resourceType="File" requireAccess="Script" /> </handlers> <httpErrors errorMode="DetailedLocalOnly" />