From 1ce68427c1d414c39261a26bca710fbf4fd9a6e5 Mon Sep 17 00:00:00 2001
From: hzj <1831054011@qq.com>
Date: 星期四, 14 八月 2025 09:56:11 +0800
Subject: [PATCH] feat:新增旧单据编号搜索单据和修改福祉车价格计算
---
admin_save.gds | 5 ++
API/v3/OrderPrice.gds | 20 +++++-----
ServiceOrder.gds | 17 ++++++++
OrdSearch.gds | 19 +++++++++
ServiceOrder_List.gds | 21 ++++++----
camepay | 1
6 files changed, 63 insertions(+), 20 deletions(-)
diff --git a/API/v3/OrderPrice.gds b/API/v3/OrderPrice.gds
index b832f77..8ceb106 100644
--- a/API/v3/OrderPrice.gds
+++ b/API/v3/OrderPrice.gds
@@ -287,19 +287,19 @@
If IRid<>0 Then
'鎵嬪姩鎶ヤ环
If InStr(Address,"鐧戒簯鏈哄満")>0 Or InStr(Address,"鐧戒簯鍥介檯鏈哄満")>0 Then
- IRPrice=489
+ IRPrice=298
IRlimit1=5
IRDtPrice=6
ElseIf InStr(Address,"骞垮窞鍗楃珯")>0 Then
- IRPrice=389
+ IRPrice=298
IRlimit1=5
IRDtPrice=6
ElseIf InStr(Address,"骞垮窞鐧戒簯绔�")>0 Then
- IRPrice=389
+ IRPrice=298
IRlimit1=5
IRDtPrice=6
ElseIf InStr(Address,"骞垮窞涓滅珯")>0 Then
- IRPrice=359
+ IRPrice=298
IRlimit1=5
IRDtPrice=6
'ElseIf StartArea="鐧戒簯鍖�" Then
@@ -307,15 +307,15 @@
' IRlimit1=5
' IRDtPrice=6
elseIf StartArea="瓒婄鍖�" Or StartArea="鑽旀咕鍖�" Or StartArea="娴风彔鍖�" Or StartArea="澶╂渤鍖�" Or StartArea="榛勫煍鍖�" Or StartArea="鐧戒簯鍖�" Then
- IRPrice=169
+ IRPrice=99
IRlimit1=5
IRDtPrice=6
elseif StartArea="鐣鍖�" Then
- IRPrice=219
+ IRPrice=99
IRlimit1=5
IRDtPrice=6
ElseIf StartArea="鑺遍兘鍖�" Then
- IRPrice=169
+ IRPrice=99
IRlimit1=5
IRDtPrice=6
ElseIf StartArea="澧炲煄鍖�" And Isluxury="0" Then
@@ -338,7 +338,7 @@
IRDtPrice=6
IsOrdinary="1"
ElseIf StartArea="鍗楁矙鍖�" And Isluxury="1" Then
- IRPrice=359
+ IRPrice=99
IRlimit1=5
IRDtPrice=6
IsOrdinary="1"
@@ -390,7 +390,7 @@
OrderPriceFRM = OrderPriceFRM & "+"&WaitingInt&"*"&IRWaitingCost
OrderPriceTXT = OrderPriceTXT&"绛夊緟璐圭敤:"&WaitingInt*IRWaitingCost&"鍏僜n"
End If
- If ServiceOrdApptDate<>"" Then '闈炲伐浣滄椂闂存湇鍔¤垂鐢�20250624锛屽懆涓�~鍛ㄤ簲鏅氫笂22鐐瑰悗鑷虫棭涓�7鐐规暣鍓嶄负1.3鍊�
+ If ServiceOrdApptDate<>"" Then '闈炲伐浣滄椂闂存湇鍔¤垂鐢�20250812锛屽懆涓�~鍛ㄤ簲鏅氫笂21鐐�30鍒嗗悗鑷虫棭涓�7鐐规暣鍓嶄负1.3鍊�
sql="select SpecialRatio from SpecialDates where SpecialDates='"&formatdatetime(ServiceOrdApptDate,2)&"'"
rs.open sql,objConn,1,1
if not rs.Eof Then
@@ -398,7 +398,7 @@
OrderPriceFRM = OrderPriceFRM & OrderPrice*(SpecialRatio-1)
OrderPriceTXT = OrderPriceTXT&"鑺傚亣鏃ユ椂闂存湇鍔¤垂鐢�:"&OrderPrice*(SpecialRatio-1)&"鍏僜n"
OrderPrice=OrderPrice*SpecialRatio
- ElseIf (hour(ServiceOrdApptDate)>=22 Or hour(ServiceOrdApptDate)<7) Then
+ ElseIf (hour(ServiceOrdApptDate)>=21 And minute(ServiceOrdApptDate)>=30) Or hour(ServiceOrdApptDate)<7 Then
OrderPriceFRM = OrderPriceFRM & OrderPrice*0.3
OrderPriceTXT = OrderPriceTXT&"闈炲伐浣滄椂闂存湇鍔¤垂鐢�:"&OrderPrice*0.3&"鍏僜n"
OrderPrice=OrderPrice*1.3
diff --git a/OrdSearch.gds b/OrdSearch.gds
index 5753390..1b0db3e 100644
--- a/OrdSearch.gds
+++ b/OrdSearch.gds
@@ -45,6 +45,25 @@
searchSql=" CONVERT(VARCHAR(10),ServiceOrd_CC_Time,120)=CONVERT(VARCHAR(10),'"&Year(now())&"-"&Mid(searchTXT,1,2)&"-"&Mid(searchTXT,3,2)&"',120) and Right('00'+convert(varchar(3),ServiceOrdNo),3)='"&Right(searchTXT,3)&"' "
ElseIf OrdSearchType="1" And Len(searchTXT)=5 And IsNumeric(searchTXT) Then
searchSql=" CONVERT(VARCHAR(10),ServiceOrd_CC_Time,120)=CONVERT(VARCHAR(10),'"&Year(now())&"-"&Right("0"&Month(now()),2)&"-"&Mid(searchTXT,1,2)&"',120) and Right('00'+convert(varchar(3),ServiceOrdNo),3)='"&Right(searchTXT,3)&"' "
+ ElseIf Len(searchTXT)=14 And Mid(searchTXT,11,1)="-" Then
+ searchSql=" Old_ServiceOrdID_TXT='"&searchTXT&"' "
+ ' 濡傛灉閫氳繃Old_ServiceOrdID_TXT鎵惧埌璁板綍锛屽垯浣跨敤ServiceOrdID閲嶆柊鎼滅储
+ Set rsOld = Server.CreateObject("ADODB.Recordset")
+ rsOld.Open "select top 1 ServiceOrdID from ServiceOrder where " & searchSql, objConn, 1, 1
+ If Not rsOld.EOF Then
+ Dim foundServiceOrdID
+ foundServiceOrdID = rsOld("ServiceOrdID")
+ rsOld.Close
+ Set rsOld = Nothing
+ ' 浣跨敤鎵惧埌鐨凷erviceOrdID閲嶆柊鎼滅储
+ Response.Redirect "/ServiceOrder_List.gds?h_menu1_1=1&UnitNameID=0&OrdClassList=0&searchTXT="&foundServiceOrdID
+ Response.End()
+ Else
+ rsOld.Close
+ Set rsOld = Nothing
+ ' 鍘熸湁14浣嶇紪鍙锋媶鍒嗛�昏緫
+ searchSql=" ServiceOrdClass='"&Left(searchTXT,2)&"' and CONVERT(VARCHAR(10),ServiceOrd_CC_Time,120)=CONVERT(VARCHAR(10),'"&Mid(searchTXT,3,4)&"-"&Mid(searchTXT,7,2)&"-"&Mid(searchTXT,9,2)&"',120) and Right('00'+convert(varchar(3),ServiceOrdNo),3)='"&Right(searchTXT,3)&"' "
+ End If
ElseIf Len(searchTXT)=14 And Not IsNumeric(Left(searchTXT,2)) And IsNumeric(Mid(searchTXT,3,8)) And IsNumeric(Right(searchTXT,3)) And Mid(searchTXT,11,1)="-" Then
searchSql=" ServiceOrdClass='"&Left(searchTXT,2)&"' and CONVERT(VARCHAR(10),ServiceOrd_CC_Time,120)=CONVERT(VARCHAR(10),'"&Mid(searchTXT,3,4)&"-"&Mid(searchTXT,7,2)&"-"&Mid(searchTXT,9,2)&"',120) and Right('00'+convert(varchar(3),ServiceOrdNo),3)='"&Right(searchTXT,3)&"' "
ElseIf Len(searchTXT)=10 And IsNumeric(searchTXT) Then
diff --git a/ServiceOrder.gds b/ServiceOrder.gds
index 0d7ee52..4720add 100644
--- a/ServiceOrder.gds
+++ b/ServiceOrder.gds
@@ -125,6 +125,7 @@
OrderLevel = rs("OrderLevel") '鏌ョ湅绛夌骇
ServiceOrd_AP_Check = rs("ServiceOrd_AP_Check")
IsLocking = rs("IsLocking") '璐㈠姟閿佸畾
+ Old_ServiceOrdID_TXT = rs("Old_ServiceOrdID_TXT") '鍘熷鍗曟嵁缂栧彿
ServiceOrdNo = ServiceOrdClass& year(rs("ServiceOrd_CC_Time"))&Right("0"&month(rs("ServiceOrd_CC_Time")),2)&Right("0"&day(rs("ServiceOrd_CC_Time")),2) & "-"&Right("00"&rs("ServiceOrdNo"),3)
If InStr(session("admin_OrderClass"),ServiceOrdClass)>0 Or isDepartment("070109")=1 Then
Call OA_Running("鎵撳紑鏈嶅姟鍗�:"&ServiceOrdNo&" ID:"&ServiceOrdID)
@@ -1529,7 +1530,21 @@
<input name="ServiceOrd_work_ID" type="hidden" value="<%=ServiceOrd_work_ID%>">
<input name="ServiceOrd_work_IDs" type="hidden" value="<%=ServiceOrd_work_IDs%>">
<%End If%>
-
+ <div class="field">
+ <div class="label" style="float: left;margin-left: 0px;">
+ <label for="input-small">鍘熷鍗曟嵁缂栧彿:</label></div>
+<div class="input" style="float:left;margin-left: 84px;">
+ <input type="text" id="Old_ServiceOrdID_TXT" name="Old_ServiceOrdID_TXT"
+ class="small <% If ServiceOrdState=4 Then %>error<% Else %>valid<% End If %>"
+ style="width: 98px;"
+ value="<% If Old_ServiceOrdID_TXT <> "" Then %>
+ <%=Server.HTMLEncode(Old_ServiceOrdID_TXT)%>
+ <% Else %>
+ [鏈叧鑱擼
+ <% End If %>">
+ </div>
+ </div>
+
<%If OrderLevel<>1 Or isDepartment("020111")=1 Then%>
<!-- 鏈嶅姟鍗曟暟鎹� -->
<!--#INCLUDE FILE="ServiceOrder_Data.gds" -->
diff --git a/ServiceOrder_List.gds b/ServiceOrder_List.gds
index 692ec29..13bd567 100644
--- a/ServiceOrder_List.gds
+++ b/ServiceOrder_List.gds
@@ -759,9 +759,11 @@
searchSql=" CONVERT(VARCHAR(10),ServiceOrd_CC_Time,120)=CONVERT(VARCHAR(10),'"&Year(now())&"-"&Right("0"&Month(now()),2)&"-"&Mid(searchTXT,1,2)&"',120) and Right('00'+convert(varchar(3),ServiceOrdNo),3)='"&Right(searchTXT,3)&"' "
ElseIf Len(searchTXT)=14 And Not IsNumeric(Left(searchTXT,2)) And IsNumeric(Mid(searchTXT,3,8)) And IsNumeric(Right(searchTXT,3)) And Mid(searchTXT,11,1)="-" Then
searchSql=" ServiceOrdClass='"&Left(searchTXT,2)&"' and CONVERT(VARCHAR(10),ServiceOrd_CC_Time,120)=CONVERT(VARCHAR(10),'"&Mid(searchTXT,3,4)&"-"&Mid(searchTXT,7,2)&"-"&Mid(searchTXT,9,2)&"',120) and Right('00'+convert(varchar(3),ServiceOrdNo),3)='"&Right(searchTXT,3)&"' "
- ElseIf Len(searchTXT)=10 And IsNumeric(searchTXT) Then
- searchSql=" ServiceOrdID="&Right(searchTXT,10)&" "
- ElseIf Mid(searchTXT,1,4)="out|" Then ' and DispatchOrdState in (8)
+ ElseIf Len(searchTXT)=14 And Mid(searchTXT,11,1)="-" Then
+ searchSql=" Old_ServiceOrdID_TXT='"&searchTXT&"' "
+ ElseIf Len(searchTXT)=10 And IsNumeric(searchTXT) Then
+ searchSql=" ServiceOrdID="&Right(searchTXT,10)&" "
+ ElseIf Mid(searchTXT,1,4)="out|" Then ' and DispatchOrdState in (8)
searchSql=" (ServiceOrdPtOutHosp in (select vid from dictionary where vType=1 and vtitle='HospName' and vtext='"&Mid(searchTXT,5)&"')) and ServiceOrd_CC_Time "&SqlOrdDateType
ElseIf Mid(searchTXT,1,3)="in|" Then
searchSql=" (ServiceOrdPtInHosp in (select vid from dictionary where vType=1 and vtitle='HospName' and vtext='"&Mid(searchTXT,4)&"')) and ServiceOrd_CC_Time "&SqlOrdDateType
@@ -872,7 +874,7 @@
'缁勬垚璁$畻鎬婚〉鏁癝QL
total_sql = "select ServiceOrdID "&sqlWhere
'缁勬垚鏄剧ず缁撴灉SQL
- Result_sql = "select ServiceOrdID,ServiceOrdNo,ServiceOrdClass,ServiceOrdAreaType,ServiceOrdType,ServiceOrdState,ServiceOrdStartDate,ServiceOrdApptDate,ServiceOrdCoName,ServiceOrdCoPhone,ServiceOrdPtAge,ServiceOrdPtSex,ServiceOrdTraProvince,ServiceOrdTraCity,ServiceOrdTraStreet,ServiceOrdTraEnd,ServiceOrdTraVia,ServiceOrdTraDistance,ServiceOrdTraSDTime,ServiceOrdTraTxnPrice,ServiceOrd_CC_ID,ServiceOrd_CC_Time,ServiceOrd_NS_ID,ServiceOrd_NS_Time,ServiceOrd_AP_Check,ServiceOrd_AP_ID,ServiceOrd_AP_Time,ServiceOrdVIP,ServiceOrdUnitID,ServiceOrdUnitRemarks,ServiceOrdIntroducer,ServiceOrdOperationRemarks,ServiceOrdPtOutHospID,ServiceOrdPtOutHosp,ServiceOrdPtInHospID,ServiceOrdPtInHosp,ServiceOrdCancelReasonTXT,ServiceOrdCancelReason,FromHQ_is,ServiceOrd_Sale_ID,ServiceOrdPoints,row_number() over (order by ServiceOrdID desc) n "&sqlWhere
+ Result_sql = "select ServiceOrdID,ServiceOrdNo,ServiceOrdClass,ServiceOrdAreaType,ServiceOrdType,ServiceOrdState,ServiceOrdStartDate,ServiceOrdApptDate,ServiceOrdCoName,ServiceOrdCoPhone,ServiceOrdPtAge,ServiceOrdPtSex,ServiceOrdTraProvince,ServiceOrdTraCity,ServiceOrdTraStreet,ServiceOrdTraEnd,ServiceOrdTraVia,ServiceOrdTraDistance,ServiceOrdTraSDTime,ServiceOrdTraTxnPrice,ServiceOrd_CC_ID,ServiceOrd_CC_Time,ServiceOrd_NS_ID,ServiceOrd_NS_Time,ServiceOrd_AP_Check,ServiceOrd_AP_ID,ServiceOrd_AP_Time,ServiceOrdVIP,ServiceOrdUnitID,ServiceOrdUnitRemarks,ServiceOrdIntroducer,ServiceOrdOperationRemarks,ServiceOrdPtOutHospID,ServiceOrdPtOutHosp,ServiceOrdPtInHospID,ServiceOrdPtInHosp,ServiceOrdCancelReasonTXT,ServiceOrdCancelReason,FromHQ_is,ServiceOrd_Sale_ID,ServiceOrdPoints,Old_ServiceOrdID_TXT,row_number() over (order by ServiceOrdID desc) n "&sqlWhere
'闄勫姞缁撴灉SQL
Additional_sql = ",StretcherMoney=isnull((select sum(StretcherMoney) from DispatchOrd where ServiceOrdIDDt=ServiceOrdID),0),ContractMode_is=isnull((select COUNT(id) from ServiceOrd_TransferMode where ServiceOrdTMID=ServiceOrdID and TransferModeID=7),0),UserPointsCost=isnull((select sum(Points_Score) from UserPoints where Points_State<>4 and Points_Type=1 and ServiceOrdIDDt=ServiceOrdID),0)"
@@ -989,11 +991,12 @@
ServiceOrdCancelReason= rs("ServiceOrdCancelReason")
FromHQ_is = rs("FromHQ_is") '鏄惁鏈夎浆鍐呴儴杞彂
ContractMode_is = rs("ContractMode_is") '鏄惁鎵垮寘缁勪换鍔�
- If isDepartment("010401")=0 Then
- ServiceOrdNo = ServiceOrdClass& year(rs("ServiceOrd_CC_Time"))&Right("0"&month(rs("ServiceOrd_CC_Time")),2)&Right("0"&day(rs("ServiceOrd_CC_Time")),2) & "-"&Right("00"&rs("ServiceOrdNo"),3)
- Else
- ServiceOrdNo = ServiceOrdClass&ServiceOrdID
- End If
+ Old_ServiceOrdID_TXT = rs("Old_ServiceOrdID_TXT") '鏃ф湇鍔″崟鍙�
+ If isDepartment("010401")=0 Then
+ ServiceOrdNo = ServiceOrdClass& year(rs("ServiceOrd_CC_Time"))&Right("0"&month(rs("ServiceOrd_CC_Time")),2)&Right("0"&day(rs("ServiceOrd_CC_Time")),2) & "-"&Right("00"&rs("ServiceOrdNo"),3)
+ Else
+ ServiceOrdNo = ServiceOrdClass&ServiceOrdID
+ End If
i=i+1
diff --git a/admin_save.gds b/admin_save.gds
index e821f28..cf5812d 100644
--- a/admin_save.gds
+++ b/admin_save.gds
@@ -1053,6 +1053,11 @@
SaveOpenerCommission ServiceOrdID
SaveFollowers ServiceOrdID
+' 鏂板鏉′欢鏇存柊璇彞
+sql = "UPDATE ServiceOrder SET Old_ServiceOrdID_TXT = '" & Replace(ServiceOrdNo, "'", "''") & "' " & _
+ "WHERE ServiceOrdID = " & ServiceOrdID & " AND (Old_ServiceOrdID_TXT IS NULL OR Old_ServiceOrdID_TXT = '[鏈叧鑱擼')"
+objConn.Execute sql
+
'鍜ㄨ鍗曡浆涓烘湇鍔″崟('鑷姩瀹℃牳)
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
diff --git a/camepay b/camepay
new file mode 160000
index 0000000..9b8a715
--- /dev/null
+++ b/camepay
@@ -0,0 +1 @@
+Subproject commit 9b8a7157bb9c401de973a4107f74ff3e723ec156
--
Gitblit v1.9.1