<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
|
<%Session.CodePage=65001%>
|
<!--#include virtual="/inc/chkadmin.gds"-->
|
<!--#include virtual="/inc/function.gds"-->
|
<%'On Error Resume next
|
searchTXT=SafeRequest(trim(Request("searchTXT")))
|
searchTXTMore=SafeRequest(Request("searchTXTMore"))
|
If InStr(searchTXT,",")>0 Then
|
searchTXTMore=searchTXT
|
searchTXT=""
|
End If
|
OrdState=SafeRequest(Request("OrdState"))
|
OrdClassList=SafeRequest(Request("OrdClassList"))
|
OrdDateType=SafeRequest(Request("OrdDateType"))
|
OrdDateStart=SafeRequest(Request("OrdDateStart"))
|
OrdDateEnd=SafeRequest(Request("OrdDateEnd"))
|
UnitNameID=SafeRequest(Request("UnitNameID"))
|
CoopUnitID=SafeRequest(Request("CoopUnitID"))
|
|
OrdType=Request("OrdType")
|
|
If isDepartment("020115")=1 And (Mid(searchTXT,1,4)<>"out|" And Mid(searchTXT,1,3)<>"in|" And Mid(searchTXT,1,5)<>"hosp|") Then '只显示个人相关服务单
|
OAHospsql=" and (ServiceOrdID in (select ServiceOrdIDDt from ServiceOrd_Message where MessageState=1 and MessageOAid="&session("adminID")&") or ServiceOrd_Sale_ID="&session("adminID")&") "
|
OAHospTXT="(个人)"
|
|
ElseIf isDepartment("070107")=1 Then '只显示个人分管医院
|
OAHospsql=" and (ServiceOrdPtOutHospID in (select HospID from HospData where HospOAID='"&session("adminID")&"' or HospOAID like '%,"&session("adminID")&",%') or ServiceOrdPtInHospID in (select HospID from HospData where HospOAID='"&session("adminID")&"' or HospOAID like '%,"&session("adminID")&",%')) and FromHQ_is=1 "
|
|
ElseIf isDepartment("0301")=0 Then '没显示列表权
|
Response.Redirect "/"
|
Response.End()
|
|
End If
|
|
Set rs = Server.CreateObject("ADODB.Recordset")
|
Set rsDt = Server.CreateObject("ADODB.Recordset")
|
'默认显示字段
|
UnitClass=SafeRequest(Request("UnitClass"))
|
If UnitClass<>"" And UnitNameID="" Then
|
sql="select vID from dictionary where vtitle='UnitName' and ','+vOrder2+',' like '%,'+(select top 1 convert(varchar(3),vID) from dictionary where vtitle='OrderClass' and vOrder2='"&UnitClass&"')+',%'"
|
rs.open Sql,objConn,1,1
|
If not rs.Eof Then
|
UnitNameID=CStr(rs("vID"))
|
End If
|
rs.close()
|
End If
|
If OrdState="" Then OrdState=0
|
If OrdState="Visit" Then
|
Set rsVisit = Server.CreateObject("ADODB.Recordset")
|
If OrdClassList="" Or OrdClassList="-1" Or OrdClassList="-2" Then OrdClassList="0"
|
If OrdClassList="0" then
|
OrdClassName = "全部回访"
|
ElseIf OrdClassList="1" then
|
OrdClassName = "已回访"
|
Else
|
OrdClassName = "未回访"
|
End If
|
ElseIf OrdState="Image" Then
|
Set rsImage = Server.CreateObject("ADODB.Recordset")
|
If OrdClassList="" Then OrdClassList="0"
|
If OrdClassList="1" then
|
OrdClassName = "已审核"
|
Else
|
OrdClassName = "未审核"
|
End If
|
Else
|
If (isDepartment("070109")=1 Or UnitNameID="1" Or UnitNameID="6" Or UnitNameID="15") And OrdClassList="" Then
|
OrdClassList="-1"
|
OrdClassName = "仅正常单"
|
Else
|
OrdClassName = "全部"
|
End If
|
End if
|
If OrdDateType="" And Request.Cookies("CAME")("OrdDateType")<>"" Then
|
OrdDateType=Request.Cookies("CAME")("OrdDateType")
|
OrdDateTop=" top 20 "
|
ElseIf OrdDateType="" Then
|
OrdDateType=13
|
OrdDateTop=" top 20 "
|
End If
|
Response.Cookies("CAME")("OrdDateType")=OrdDateType
|
|
'公司列表
|
If UnitNameID<>"" Then
|
Response.Cookies("CAME")("UnitNameID")=UnitNameID
|
ElseIf UnitNameID="" And Request.Cookies("CAME")("UnitNameID")<>"" Then
|
UnitNameID=Request.Cookies("CAME")("UnitNameID")
|
End If
|
if isDepartment("070109")=0 And OrdClassInt>1 Then
|
UnitSql=" and replace(replace(vtext,'公司',''),'分','') in (select replace(vtext,'调度单','') from dictionary where vType in (1,2) and vtitle='OrderClass' and vtext like '%调度单' and vOrder2 in ('"&OrdClassListSql&"')) "
|
End If
|
UnitNameName=""
|
UnitNames = ""
|
sql="select vID,vtext,vType from dictionary where vType>=0 and vtitle='UnitName'"&UnitSql&" order by vType desc,vOrder"
|
rs.open Sql,objConn,1,1
|
u=0
|
do while not rs.Eof
|
u=u+1
|
UnitName=rs("vtext")
|
UnitNameID_temp=rs("vID")
|
If rs("vType")=0 Then UnitName=UnitName&"(停用)"
|
UnitNames = UnitNames & rs("vID") &","& UnitName & "|"
|
If UnitNameID=CStr(rs("vID")) Then UnitNameName = UnitName
|
rs.movenext
|
Loop
|
rs.close()
|
If u>1 Then
|
UnitNames = "0,全部|"&UnitNames
|
If UnitNameName="" And Len(UnitNameID)>=3 Then
|
UnitNameName=UBOUND(SPLIT(UnitNameID,","))+1&"家"
|
ElseIf UnitNameName="" Then
|
UnitNameName="全部"
|
End If
|
Else
|
UnitNameID=UnitNameID_temp
|
UnitNameName=UnitName
|
End If
|
UnitNames = left(UnitNames,len(UnitNames)-1)
|
UnitNamesPS = SPLIT(UnitNames,"|")
|
|
'时间参数
|
If OrdDateType="0" then
|
If OrdDateStart="" And OrdDateEnd="" Then
|
OrdDateStart=Date()
|
OrdDateEnd=Date()&" 23:59:59"
|
ElseIf OrdDateStart<>"" And OrdDateEnd="" Then
|
OrdDateEnd=OrdDateStart
|
ElseIf OrdDateStart="" And OrdDateEnd<>"" Then
|
OrdDateStart=OrdDateEnd
|
End If
|
If Cdate(OrdDateStart)>Cdate(OrdDateEnd) Then
|
OrdDateStart1=OrdDateStart
|
OrdDateStart=OrdDateEnd
|
OrdDateEnd=OrdDateStart1
|
End If
|
If dateDiff("d",OrdDateStart,OrdDateEnd)>93 Then
|
Response.Redirect "?SystemMessageType=4&SMT=9&OrdDateType=1"
|
Response.End()
|
End If
|
If OrdDateStart=OrdDateEnd Then
|
OrdDateStart=FORMATDATETIME(OrdDateStart,vbShortDate)
|
OrdDateTypeName=OrdDateStart
|
OrdDateTypeName1=OrdDateTypeName
|
OrdDateEnd=FORMATDATETIME(OrdDateEnd,vbShortDate)
|
Else
|
OrdDateTypeName=OrdDateStart&" 至 "&OrdDateEnd
|
OrdDateTypeName1="时间段"
|
End If
|
If InStr(OrdDateEnd," ")>1 Then
|
SqlOrdDateType="between '"&OrdDateStart&"' and '"&OrdDateEnd&"'"
|
Else
|
SqlOrdDateType="between '"&OrdDateStart&"' and '"&OrdDateEnd&" 23:59:59'"
|
End If
|
|
Else
|
sql="select vID,vtext,vOrder2 from dictionary where vType>=1 and vtitle='OrdDateType' and vID="&OrdDateType
|
rs.open Sql,objConn,1,1
|
If not rs.Eof Then
|
OrdDateTypeName = rs("vtext")
|
OrdDateTypeName1=OrdDateTypeName
|
SqlOrdDateType = rs("vOrder2")
|
Else
|
OrdDateType=4
|
OrdDateTypeName="本月"
|
OrdDateTypeName1=OrdDateTypeName
|
SqlOrdDateType="between DATEADD(mm,DATEDIFF(mm,0,getdate()),0) and dateadd(ms,-3,DATEADD(mm,DATEDIFF(m,0,getdate())+1,0))"
|
End If
|
rs.close()
|
End If
|
|
|
'高级搜索
|
If searchTXTMore<>"" Then
|
If Right(searchTXTMore,1)="," Then searchTXTMore=searchTXTMore&" "
|
searchTXTMorePS = SPLIT(searchTXTMore,", ")
|
searchTXTMoreUBOUND=UBOUND(searchTXTMorePS)
|
If searchTXTMoreUBOUND>=0 Then searchTXTMore0=searchTXTMorePS(0) '成交价范围-低
|
If searchTXTMoreUBOUND>=1 Then searchTXTMore1=searchTXTMorePS(1) '成交价范围-高
|
If searchTXTMoreUBOUND>=2 Then searchTXTMore2=searchTXTMorePS(2) '联系人姓名
|
If searchTXTMoreUBOUND>=3 Then searchTXTMore3=searchTXTMorePS(3) '联系电话
|
If searchTXTMoreUBOUND>=4 Then searchTXTMore4=searchTXTMorePS(4) '患者姓名
|
If searchTXTMoreUBOUND>=5 Then searchTXTMore5=searchTXTMorePS(5) '转出医院
|
If searchTXTMoreUBOUND>=6 Then searchTXTMore6=searchTXTMorePS(6) '转入医院
|
If searchTXTMoreUBOUND>=7 Then searchTXTMore7=searchTXTMorePS(7) '销售*
|
If searchTXTMoreUBOUND>=8 Then searchTXTMore8=searchTXTMorePS(8) '介绍人
|
If searchTXTMoreUBOUND>=9 Then searchTXTMore9=searchTXTMorePS(9) '客服*
|
If searchTXTMoreUBOUND>=10 Then searchTXTMore10=searchTXTMorePS(10) '调度*
|
If searchTXTMoreUBOUND>=11 Then searchTXTMore11=searchTXTMorePS(11) '来源*
|
searchTXTMoreSql=""
|
If searchTXTMore0<>"" And IsNumeric(searchTXTMore0) Then
|
searchTXTMoreSql=searchTXTMoreSql&" and ServiceOrdTraTxnPrice>="&searchTXTMore0&" "
|
End If
|
If searchTXTMore1<>"" Then
|
searchTXTMoreSql=searchTXTMoreSql&" and ServiceOrdTraTxnPrice<="&searchTXTMore1&" "
|
End If
|
If searchTXTMore2<>"" Then
|
searchTXTMoreSql=searchTXTMoreSql&" and ServiceOrdCoName like '%"&searchTXTMore2&"%' "
|
End If
|
If searchTXTMore3<>"" Then
|
searchTXTMoreSql=searchTXTMoreSql&" and ServiceOrdCoPhone like '%"&searchTXTMore3&"%' "
|
End If
|
If searchTXTMore4<>"" Then
|
searchTXTMoreSql=searchTXTMoreSql&" and ServiceOrdPtName like '%"&searchTXTMore4&"%' "
|
End If
|
If searchTXTMore5<>"" Then
|
searchTXTMoreSql=searchTXTMoreSql&" and (ServiceOrdPtOutHospID in (select HospID from HospData where HospName like '%"&searchTXTMore5&"%') or DispatchOrdTraVia like '%"&searchTXTMore5&"%') "
|
End If
|
If searchTXTMore6<>"" Then
|
searchTXTMoreSql=searchTXTMoreSql&" and (ServiceOrdPtInHospID in (select HospID from HospData where HospName like '%"&searchTXTMore6&"%') or DispatchOrdTraEnd like '%"&searchTXTMore6&"%') "
|
End If
|
If searchTXTMore7<>"" Then
|
searchTXTMoreSql=searchTXTMoreSql&" and ServiceOrd_Sale_ID in (select OA_User_ID from OA_User where OA_Name like '%"&searchTXTMore7&"%') "
|
End If
|
If searchTXTMore8<>"" Then
|
searchTXTMoreSql=searchTXTMoreSql&" and ServiceOrdIntroducer in (select IntroducerID from IntroducerData where IntroducerName like '%"&searchTXTMore8&"%') "
|
End If
|
If searchTXTMore9<>"" Then
|
searchTXTMoreSql=searchTXTMoreSql&" and ServiceOrd_CC_ID in (select OA_User_ID from OA_User where OA_Name like '%"&searchTXTMore9&"%') "
|
End If
|
If searchTXTMore10<>"" Then
|
searchTXTMoreSql=searchTXTMoreSql&" and ServiceOrdID in (select ServiceOrdIDDt from DispatchOrd where DispatchOrd_NS_ID in (select OA_User_ID from OA_User where OA_Name like '%"&searchTXTMore10&"%')) "
|
End If
|
If searchTXTMore11<>"" Then
|
searchTXTMoreSql=searchTXTMoreSql&" and ServiceOrdSource in (select vID from dictionary where vtitle in ('OrdSource') and vtext like '%"&searchTXTMore11&"%') "
|
End If
|
If searchTXTMoreSql<>"" Then
|
searchTXTMoreSql= Mid(searchTXTMoreSql,5)
|
searchTXT=searchTXTMore
|
End If
|
End If
|
|
If searchTXTMoreSql<>"" Then
|
searchSql=searchTXTMoreSql&" and DispatchOrd_NS_Time "&SqlOrdDateType
|
elseif searchTXT<>"" Then
|
searchSql=""
|
If Len(searchTXT)=11 And Left(searchTXT,2)="20" And IsNumeric(searchTXT) Then
|
searchSql=" CONVERT(VARCHAR(10),DispatchOrd_NS_Time,120)=CONVERT(VARCHAR(10),'"&Mid(searchTXT,1,4)&"-"&Mid(searchTXT,5,2)&"-"&Mid(searchTXT,7,2)&"',120) and Right('00'+convert(varchar(3),DispatchOrdNo),3)='"&Right(searchTXT,3)&"' "
|
ElseIf Len(searchTXT)=9 And Left(searchTXT,1)="2" And IsNumeric(searchTXT) Then
|
searchSql=" CONVERT(VARCHAR(10),DispatchOrd_NS_Time,120)=CONVERT(VARCHAR(10),'20"&Mid(searchTXT,1,2)&"-"&Mid(searchTXT,3,2)&"-"&Mid(searchTXT,5,2)&"',120) and Right('00'+convert(varchar(3),DispatchOrdNo),3)='"&Right(searchTXT,3)&"' "
|
ElseIf Len(searchTXT)=7 And (Left(searchTXT,1)="1" Or Left(searchTXT,1)="0") And IsNumeric(searchTXT) Then
|
searchSql=" CONVERT(VARCHAR(10),DispatchOrd_NS_Time,120)=CONVERT(VARCHAR(10),'"&Year(now())&"-"&Mid(searchTXT,1,2)&"-"&Mid(searchTXT,3,2)&"',120) and Right('00'+convert(varchar(3),DispatchOrdNo),3)='"&Right(searchTXT,3)&"' "
|
ElseIf Len(searchTXT)=5 And IsNumeric(searchTXT) Then
|
searchSql=" CONVERT(VARCHAR(10),DispatchOrd_NS_Time,120)=CONVERT(VARCHAR(10),'"&Year(now())&"-"&Right("0"&Month(now()),2)&"-"&Mid(searchTXT,1,2)&"',120) and Right('00'+convert(varchar(3),DispatchOrdNo),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=" DispatchOrdClass='"&Left(searchTXT,2)&"' and CONVERT(VARCHAR(10),DispatchOrd_NS_Time,120)=CONVERT(VARCHAR(10),'"&Mid(searchTXT,3,4)&"-"&Mid(searchTXT,7,2)&"-"&Mid(searchTXT,9,2)&"',120) and Right('00'+convert(varchar(3),DispatchOrdNo),3)='"&Right(searchTXT,3)&"' "
|
ElseIf Len(searchTXT)=10 And IsNumeric(searchTXT) Then
|
searchSql=" DispatchOrdID="&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 DispatchOrdState<>10 and DispatchOrd_NS_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 DispatchOrdState<>10 and DispatchOrd_NS_Time "&SqlOrdDateType
|
ElseIf Mid(searchTXT,1,5)="hosp|" Then
|
searchSql=" (ServiceOrdPtOutHosp in (select vid from dictionary where vType=1 and vtitle='HospName' and vtext='"&Mid(searchTXT,6)&"') or ServiceOrdPtInHosp in (select vid from dictionary where vType=1 and vtitle='HospName' and vtext='"&Mid(searchTXT,6)&"')) and DispatchOrdState<>10 and DispatchOrd_NS_Time "&SqlOrdDateType
|
ElseIf Mid(searchTXT,1,6)="staff|" Then
|
searchSql=" (DispatchOrdID in (select DispatchOrdIDDt from DispatchOrd_Entourage where EntourageState<>4 and EntourageOAid="&Mid(searchTXT,7)&")) and DispatchOrd_NS_Time "&SqlOrdDateType
|
ElseIf Mid(searchTXT,1,7)="staff1|" Then
|
searchSql=" (DispatchOrdID in (select DispatchOrdIDDt from DispatchOrd_Entourage where EntourageState=3 and EntourageOAid="&Mid(searchTXT,8)&")) and DispatchOrdState in (8,9) and DispatchOrd_NS_Time "&SqlOrdDateType
|
ElseIf Mid(searchTXT,1,8)="OrdType|" Then
|
If searchTXT="OrdType|特殊单" Then
|
searchSql=" (ServiceOrdIDDt in (select ServiceOrdID from ServiceOrder where ServiceOrdState=3 and ServiceOrdType in (select vID from dictionary where vtitle='ServiceOrderType' and vType=2))) and DispatchOrdState not in (10) and DispatchOrd_NS_Time "&SqlOrdDateType
|
Else
|
searchSql=" (ServiceOrdIDDt in (select ServiceOrdID from ServiceOrder where ServiceOrdState=3 and ServiceOrdType="&Mid(searchTXT,9)&")) and DispatchOrdState not in (10) and DispatchOrd_NS_Time "&SqlOrdDateType
|
End If
|
ElseIf Mid(searchTXT,1,12)="OrdAreaType|" Then
|
searchSql=" (ServiceOrdIDDt in (select ServiceOrdID from ServiceOrder where ServiceOrdState=3 and ServiceOrdAreaType="&Mid(searchTXT,13)&")) and DispatchOrdState not in (10) and DispatchOrd_NS_Time "&SqlOrdDateType
|
ElseIf Mid(searchTXT,1,10)="FrontLine|" Then
|
sql="select vID,vtext,vOrder2 from dictionary where vType=1 and vtitle='Report_FrontLine' and vID="&Mid(searchTXT,11)
|
rs.open sql,objConn,1,1
|
If not rs.Eof Then
|
FrontSql=rs("vOrder2")
|
End If
|
rs.close()
|
searchSql=" DispatchOrdState not in (0,1,2,3,9,10) and DispatchOrd_NS_Time "&SqlOrdDateType&" "&FrontSql
|
ElseIf Mid(searchTXT,1,12)="StaffScore0|" Then
|
StaffScore=Split(Mid(searchTXT,13),"|")
|
searchSql=" (ServiceOrdIDDt in (select ServiceOrdID VisitSum from ServiceOrder,DispatchOrd_Entourage,DispatchOrd where ServiceOrdClass='"&StaffScore(1)&"' and EntourageState<>4 and DispatchOrdIDDt=DispatchOrdID and ServiceOrdID=ServiceOrdIDDt and DispatchOrdState not in (10,9) and (RV_PointE like '%1%' or RV_PointE like '%2%' or Guest_PointE like '%1%' or Guest_PointE like '%2%') and (ServiceOrdVisit_time "&SqlOrdDateType&" or Guest_Time "&SqlOrdDateType&") )) "
|
ElseIf Mid(searchTXT,1,12)="StaffScore1|" Then
|
StaffScore=Split(Mid(searchTXT,13),"|")
|
searchSql=" (ServiceOrdIDDt in (select ServiceOrdID from ServiceOrder where ServiceOrdVisit like '%"&StaffScore(0)&"%' and ServiceOrdClass='"&StaffScore(1)&"' and ServiceOrdVisit_time "&SqlOrdDateType&")) "
|
ElseIf Mid(searchTXT,1,12)="StaffScore2|" Then
|
StaffScore=Split(Mid(searchTXT,13),"|")
|
If StaffScore(0)="其他(手写)" Then
|
ReturnChannelSql=" and ServiceOrdReturnChannel not in ('医生护士推荐','护工保安推荐','亲朋好友推荐','小程序或公众号','名片或广告','百度搜索','老用户') "
|
Else
|
ReturnChannelSql=" and ServiceOrdReturnChannel='"&StaffScore(0)&"' "
|
End If
|
searchSql=" (ServiceOrdIDDt in (select ServiceOrdID from ServiceOrder where ServiceOrdVisit_time "&SqlOrdDateType&" "&ReturnChannelSql&" and ServiceOrdClass='"&StaffScore(1)&"')) "
|
Else
|
searchSql=" (ServiceOrdCoName like '%"&searchTXT&"%' or ServiceOrdCoPhone like '%"&searchTXT&"%' or ServiceOrdPtName like '%"&searchTXT&"%' or ServiceOrdTraStreet like '%"&searchTXT&"%' or ServiceOrdTraEnd like '%"&searchTXT&"%' or ServiceOrdPtOutHosp in (select vid from dictionary where vType=1 and vtitle='HospName' and vtext like '%"&searchTXT&"%')) "
|
End If
|
searchSumSql=searchSql
|
searchSumSql1="DispatchOrd_NS_Time "&SqlOrdDateType
|
else
|
searchSql=" DispatchOrd_NS_Time "&SqlOrdDateType&" "
|
If isDepartment("010401")=1 then
|
'演示功能 不显示价格
|
searchSql=searchSql&" and DispatchOrdState not in (9,10,14) "
|
End If
|
|
'单据状态
|
If OrdState="0" Then
|
searchSql=searchSql&""
|
ElseIf OrdState="1" Then '新调度单(未下发)
|
searchSql=searchSql&" and DispatchOrdState in (0) "
|
ElseIf OrdState="2" Then '等待确认订单(已下发)
|
searchSql=searchSql&" and DispatchOrdState in (1,2) "
|
ElseIf OrdState="4" Then '服务中
|
searchSql=" DispatchOrdState in (4,5,6,7) "
|
ElseIf OrdState="4_4" Then '4-已出车(去接)
|
searchSql=" DispatchOrdState in (4) "
|
ElseIf OrdState="4_5" Then '5-已出车(等待)
|
searchSql=" DispatchOrdState in (5) "
|
ElseIf OrdState="4_6" Then '6-已出车(已接 )
|
searchSql=" DispatchOrdState in (6) "
|
ElseIf OrdState="4_7" Then '7-已送达(回程中)
|
searchSql=" DispatchOrdState in (7) "
|
ElseIf OrdState="8_0" Then'已返回(未审核)
|
searchSql=" DispatchOrdState in (8,9) and DispatchOrd_AP_Check=0 and DispatchOrd_NS_Time "&SqlOrdDateType
|
ElseIf OrdState="8_2" Then'已返回(未提交)
|
searchSql=" DispatchOrdState in (8,9) and DispatchOrdIsEnd=0 and DispatchOrd_NS_Time "&SqlOrdDateType
|
ElseIf OrdState="8_1" Then'已返回(审核)
|
searchSql=" DispatchOrdState in (8,9) and DispatchOrd_AP_Check>0 and DispatchOrd_AP_Check<=3 and DispatchOrd_NS_Time "&SqlOrdDateType
|
ElseIf OrdState="8_5" Then'已返回(等待财务审核)
|
searchSql=" DispatchOrdState in (8,9) and DispatchOrd_AP_Check=1 and DispatchOrdClass='SA' and DispatchOrd_NS_Time "&SqlOrdDateType
|
ElseIf OrdState="8_4" Then'已返回(审核不通过)
|
searchSql=" DispatchOrdState in (8,9) and DispatchOrdIsEnd=-1 and DispatchOrd_NS_Time "&SqlOrdDateType
|
ElseIf OrdState="8_3" Then'所有订单
|
|
ElseIf OrdState="9" Then '跑空单
|
searchSql=searchSql&" and DispatchOrdState in (9) "
|
ElseIf OrdState="Visit" And OrdClassList="1" Then
|
searchSql=searchSql&" and DispatchOrdState in (8,9) and ServiceOrdVisit_ID is not null and ServiceOrdType in (select vID from dictionary where vType=1 and vtitle='ServiceOrderType' and vID not in (7))"
|
ElseIf OrdState="Visit" And OrdClassList="2" Then
|
searchSql=searchSql&" and DispatchOrdState in (8,9) and ServiceOrdVisit_ID is null and ServiceOrdType in (select vID from dictionary where vType=1 and vtitle='ServiceOrderType' and vtitle='ServiceOrderType' and vID not in (7))"
|
ElseIf OrdState="Visit" Then
|
searchSql=searchSql&" and DispatchOrdState in (8,9) and ServiceOrdType in (select vID from dictionary where vType=1 and vtitle='ServiceOrderType' and vtitle='ServiceOrderType' and vID not in (7))"
|
ElseIf OrdState="Image" Then
|
If OrdClassList="1" Then
|
searchSql=searchSql&" and DispatchOrdState in (2,3,4,5,6,7,8,9) and (DispatchOrdID in (select DOrdIDDt from ImageData where isAP=1) and DispatchOrdID not in (select DOrdIDDt from ImageData where isAP=0)) and ServiceOrdType in (select vID from dictionary where vType=1 and vtitle='ServiceOrderType') "
|
Else
|
searchSql=searchSql&" and DispatchOrdState in (2,3,4,5,6,7,8,9) and (DispatchOrdID in (select DOrdIDDt from ImageData where isAP=0) or DispatchOrdID not in (select DOrdIDDt from ImageData where isAP=1)) and ServiceOrdType in (select vID from dictionary where vType=1 and vtitle='ServiceOrderType') "
|
End If
|
Else
|
searchSql=searchSql&" and DispatchOrdState in ("&OrdState&") "
|
End If
|
|
'单据类型
|
If OrdClassList="-1" And OrdState<>"Visit" And OrdState<>"Image" Then
|
searchSumSql1=searchSql
|
searchSql=searchSql&" and ServiceOrdType in (select vID from dictionary where vType=1 and vtitle='ServiceOrderType') "
|
searchSumSql=searchSql
|
ElseIf OrdClassList="-2" And OrdState<>"Visit" And OrdState<>"Image" Then
|
searchSumSql1=searchSql
|
searchSql=searchSql&" and ServiceOrdType in (select vID from dictionary where vType=2 and vtitle='ServiceOrderType') "
|
searchSumSql=searchSql
|
ElseIf OrdClassList="-3" And OrdState<>"Visit" And OrdState<>"Image" Then
|
searchSumSql1=searchSql
|
searchSql=searchSql&" and ServiceOrdID in (select ServiceOrdTMID from ServiceOrd_TransferMode where TransferModeID=7) "
|
searchSumSql=searchSql
|
ElseIf OrdClassList<>"" And OrdClassList<>"0" And OrdState<>"Visit" And OrdState<>"Image" Then
|
searchSumSql1=searchSql&" and ServiceOrdType in ("&OrdClassList&") "
|
searchSql=searchSql&" and ServiceOrdType in ("&OrdClassList&") "
|
searchSumSql=searchSql&" and ServiceOrdType in ("&OrdClassList&") "
|
Else
|
searchSumSql=searchSql
|
searchSumSql1=searchSql
|
End If
|
|
end If
|
|
'查看合作公司
|
If CoopUnitID<>"" And CoopUnitID<>"0" Then
|
If Left(CoopUnitID,2)="0," Then CoopUnitID=Mid(CoopUnitID,3)
|
CoopUnitSql=" And (ServiceOrdUnitID in ("&CoopUnitID&")"
|
sql="select HospID,HospIntroducerDate from HospData,IntroducerData where HospIntroducerID=IntroducerID and IntroducerUnitID in ("&CoopUnitID&") GROUP BY HospID,HospIntroducerDate order by HospIntroducerDate"
|
rs.open sql,objConn,1,1
|
If not rs.Eof Then
|
UnitHospDateOld=""
|
do while not rs.Eof
|
If UnitHospDateOld<>rs(1) then
|
UnitHospDate=UnitHospDate&"|"&rs(1)
|
UnitHospID=UnitHospID&"|"
|
UnitHospDateOld=rs(1)
|
End If
|
UnitHospID=UnitHospID&","&rs(0)
|
rs.movenext
|
Loop
|
UnitHospDateSP = SPLIT(UnitHospDate,"|")
|
UnitHospIDSP = SPLIT(UnitHospID,"|")
|
for i=1 to ubound(UnitHospDateSP)
|
CoopUnitSql=CoopUnitSql&" or (ServiceOrdPtOutHospID in ("&Mid(UnitHospIDSP(i),2)&") and ServiceOrd_CC_Time>='"&UnitHospDateSP(i)&"')"
|
Next
|
End If
|
rs.close()
|
CoopUnitSql=CoopUnitSql&")"
|
Else
|
CoopUnitSql=""
|
End If
|
|
'查看A级单权限
|
'If isDepartment("020111")=0 Then
|
' CoopUnitSql=CoopUnitSql&" and OrderLevel<>1"
|
'End If
|
|
'查看各分公司报表权限
|
if (isDepartment("070109")=1 Or OrdClassInt>1) And UnitNameID<>"" then
|
If UnitNameID<>"" And UnitNameID<>"0" Then
|
OrdClassListSql=""
|
sql="select vOrder2 from dictionary where vtitle='UnitName' and vID in ("&UnitNameID&")"
|
rs.open sql,objConn,1,1
|
do while not rs.Eof
|
UnitTypeID = UnitTypeID&","&rs(0)
|
rs.movenext
|
Loop
|
rs.close()
|
If UnitTypeID<>"" Then
|
UnitTypeID=Mid(UnitTypeID,2)
|
sql="select vID,vtext,vOrder2 from dictionary where vID in ("&UnitTypeID&") and vtitle='OrderClass' order by vOrder"
|
rs.open sql,objConn,1,1
|
do while not rs.Eof
|
OrderClassID = rs("vOrder2")
|
OrdClassListSql = OrdClassListSql&","&OrderClassID
|
rs.movenext
|
Loop
|
OrdClassListSql=Mid(OrdClassListSql,2)
|
OrdClassListSql=Replace(OrdClassListSql,",","','")
|
End If
|
rs.close()
|
|
ElseIf isDepartment("070109")=1 Then
|
OrdClassListSql=""
|
sql="select vID,vtext,vOrder2 from dictionary where vType in (1,2) and vtitle='OrderClass' order by vOrder"
|
rs.open sql,objConn,1,1
|
do while not rs.Eof
|
OrderClassID = rs("vOrder2")
|
OrdClassListSql = OrdClassListSql&","&OrderClassID
|
rs.movenext
|
loop
|
rs.close()
|
OrdClassListSql=Mid(OrdClassListSql,2)
|
OrdClassListSql=Replace(OrdClassListSql,",","','")
|
End If
|
end If
|
|
If OrdType="DispatchOrder_List" And OrdState<>"Image" And OrdState<>"Visit" Then
|
If OrdDateType="6" Then
|
Response.Write "--"
|
Else
|
page=clng(request("page"))
|
if page=empty then page=clng(1)
|
If page=1 Or session("DispatchOrderSun")="" Then
|
'当前查询统计 OrdClassListSql
|
sql="select Sum_OrdInt=isnull(SUM(Sum_OrdInt),0),Sum_TraTxnPrice=isnull(SUM(Sum_TraTxnPrice),0) from (select Sum_OrdInt=COUNT(DispatchOrdID),case when isnull(SUM(ServiceOrdTraTxnPrice+StretcherMoney),0)=0 or DispatchOrdPerfomance=0 then 0 else SUM(ServiceOrdTraTxnPrice+StretcherMoney)/((select SUM(DispatchOrdPerfomance) from DispatchOrd where ServiceOrdIDDt=ServiceOrdID and DispatchOrdState not in (10))/DispatchOrdPerfomance) END as Sum_TraTxnPrice from DispatchOrd LEFT JOIN ServiceOrder on ServiceOrdIDDt=ServiceOrdID where "&searchSumSql&CoopUnitSql&OAHospsql&" and (ServiceOrdClass in ('"&OrdClassListSql&"') or DispatchOrdClass in ('"&OrdClassListSql&"')) and DispatchOrdState not in (10) GROUP BY DispatchOrdPerfomance,ServiceOrdID) as aa"
|
sql=Replace(sql," where and "," where ")
|
'Response.Write sql
|
rs.open sql,objConn,1,1
|
Sum_OrdInt = rs("Sum_OrdInt")
|
Sum_TraTxnPrice = MoneyCheck(rs("Sum_TraTxnPrice"),1)
|
rs.close()
|
DispatchOrderSun="当前查询统计 单据数量: "&Sum_OrdInt&" 费用合计: "&Sum_TraTxnPrice
|
|
If (InStr(OrdClassListSql,"SA")>0 Or InStr(OrdClassListSql,"BF")>0) Then
|
DispatchOrderSun = DispatchOrderSun&"<span style='float: right;'>"
|
'当天查询统计
|
sql="select Sum_OrdInt=isnull(SUM(Sum_OrdInt),0),Sum_TraTxnPrice=isnull(SUM(Sum_TraTxnPrice),0) from (select Sum_OrdInt=COUNT(DispatchOrdID),case when isnull(SUM(ServiceOrdTraTxnPrice+StretcherMoney),0)=0 or DispatchOrdPerfomance=0 then 0 else SUM(ServiceOrdTraTxnPrice+StretcherMoney)/((select SUM(DispatchOrdPerfomance) from DispatchOrd where ServiceOrdIDDt=ServiceOrdID and DispatchOrdState not in (10))/DispatchOrdPerfomance) END as Sum_TraTxnPrice from DispatchOrd LEFT JOIN ServiceOrder on ServiceOrdIDDt=ServiceOrdID where "&searchSumSql1&CoopUnitSql&OAHospsql&" and (ServiceOrdClass in ('BF') or DispatchOrdClass in ('SA')) and DispatchOrdState not in (10) GROUP BY DispatchOrdPerfomance,ServiceOrdID) as aa"
|
sql=replace(sql,"DispatchOrd_NS_Time "&SqlOrdDateType,"DispatchOrd_NS_Time between DATEADD(dd,DATEDIFF(dd,0,getdate()),0) and DATEADD(ss,-1,DATEADD(dd,DATEDIFF(dd,0,getdate()),1)) ")
|
sql=Replace(sql," where and "," where ")
|
'Response.Write sql
|
rs.open sql,objConn,1,1
|
Sum_OrdInt = rs("Sum_OrdInt")
|
Sum_TraTxnPrice = MoneyCheck(rs("Sum_TraTxnPrice"),1)
|
rs.close()
|
DispatchOrderSun = DispatchOrderSun&"今天单据数量: "&Sum_OrdInt&" 费用合计: "&Sum_TraTxnPrice
|
|
'当天分部支援统计 -暂时取消(2022-4-26)
|
'sql="select Sum_OrdInt=isnull(SUM(Sum_OrdInt),0),Sum_TraTxnPrice=isnull(SUM(Sum_TraTxnPrice),0) from (select Sum_OrdInt=COUNT(ServiceOrdID),case when DispatchOrdPerfomance IS null then ServiceOrdTraTxnPrice when isnull(SUM(ServiceOrdTraTxnPrice+StretcherMoney),0)=0 or DispatchOrdPerfomance=0 then 0 else SUM(ServiceOrdTraTxnPrice+StretcherMoney)/((select SUM(DispatchOrdPerfomance) from DispatchOrd where ServiceOrdIDDt=ServiceOrdID and DispatchOrdState not in (10))/DispatchOrdPerfomance) END as Sum_TraTxnPrice from ServiceOrder LEFT JOIN DispatchOrd on ServiceOrdIDDt=ServiceOrdID and DispatchOrdState not in (10) where "&searchSumSql1&CoopUnitSql&OAHospsql&" and FromHQ2_is=1 and ServiceOrdState not in (4) GROUP BY DispatchOrdPerfomance,ServiceOrdID,ServiceOrdTraTxnPrice) as aa"
|
'sql=replace(sql,"DispatchOrd_NS_Time "&SqlOrdDateType,"(ServiceOrd_CC_Time between DATEADD(dd,DATEDIFF(dd,0,getdate()),0) and DATEADD(ss,-1,DATEADD(dd,DATEDIFF(dd,0,getdate()),1)) or DispatchOrd_NS_Time between DATEADD(dd,DATEDIFF(dd,0,getdate()),0) and DATEADD(ss,-1,DATEADD(dd,DATEDIFF(dd,0,getdate()),1))) ")
|
'sql=Replace(sql," where and "," where ")
|
'rs.open sql,objConn,1,1
|
'Sum_OrdInt = rs("Sum_OrdInt")
|
'Sum_TraTxnPrice = Int(rs("Sum_TraTxnPrice"))
|
'rs.close()
|
'DispatchOrderSun = DispatchOrderSun&" 分部支援服务单数量: "&Sum_OrdInt&" 费用合计: "&Sum_TraTxnPrice&"元"
|
|
'本周查询统计
|
sql="select Sum_OrdInt=isnull(SUM(Sum_OrdInt),0),Sum_TraTxnPrice=isnull(SUM(Sum_TraTxnPrice),0) from (select Sum_OrdInt=COUNT(DispatchOrdID),case when isnull(SUM(ServiceOrdTraTxnPrice+StretcherMoney),0)=0 or DispatchOrdPerfomance=0 then 0 else SUM(ServiceOrdTraTxnPrice+StretcherMoney)/((select SUM(DispatchOrdPerfomance) from DispatchOrd where ServiceOrdIDDt=ServiceOrdID and DispatchOrdState not in (10))/DispatchOrdPerfomance) END as Sum_TraTxnPrice from DispatchOrd LEFT JOIN ServiceOrder on ServiceOrdIDDt=ServiceOrdID where "&searchSumSql1&CoopUnitSql&OAHospsql&" and (ServiceOrdClass in ('BF') or DispatchOrdClass in ('SA')) and DispatchOrdState not in (10) GROUP BY DispatchOrdPerfomance,ServiceOrdID) as aa"
|
sql=replace(sql,"DispatchOrd_NS_Time "&SqlOrdDateType,"DispatchOrd_NS_Time between DATEADD(wk,DATEDIFF(wk,0,getdate()),0)-1 and DATEADD(ss,-1,DATEADD(wk,DATEDIFF(wk,0,getdate()),0)+6) ")
|
sql=Replace(sql," where and "," where ")
|
'Response.Write sql
|
rs.open sql,objConn,1,1
|
Sum_OrdInt = rs("Sum_OrdInt")
|
Sum_TraTxnPrice = MoneyCheck(rs("Sum_TraTxnPrice"),1)
|
rs.close()
|
DispatchOrderSun = DispatchOrderSun&" 本周单据数量: "&Sum_OrdInt&" 费用合计: "&Sum_TraTxnPrice
|
|
DispatchOrderSun = DispatchOrderSun&" [只统计广州地区数据](包括特殊任务,不包括取消)</span>"
|
session("DispatchOrderSun")=DispatchOrderSun
|
End If
|
session("DispatchOrderSun") = DispatchOrderSun
|
Else
|
DispatchOrderSun = session("DispatchOrderSun")
|
End If
|
Response.Write DispatchOrderSun
|
End If
|
End If
|
%>
|