⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 classhotel.asp

📁 依蓝旅游网站管理系统Elan2008.SP2
💻 ASP
📖 第 1 页 / 共 5 页
字号:
			ReturnString = ""
			Dim ItemHTML
		    For i = 1 To RowCount
			   ItemHTML = MatchString
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_HotelID}", rsSearch("HotelID"))
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_Province}", EL_Common.HTMLEncode(rsSearch("Province")))
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_City}", EL_Common.HTMLEncode(rsSearch("City")))
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_Area}", EL_Common.HTMLEncode(rsSearch("Area")))
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_HotelName}", EL_Common.HTMLEncode(rsSearch("HotelName")))
			   If rsSearch("Commended") Then
			      ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_Commend}", "<img src='"& InstallDir & EL_Channel.ChannelDir &"/Images/Commend.gif' border=0>")
			   Else
			      ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_Commend}", "")
			   End If			   
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_MinPrice}", Search_GetHotelMinPrice(rsSearch("HotelID"), ArrHotelMinPrice))
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_LevelPictrue}", "<img src='"& rsSearch("LevelPictrue") &"' border=0 alt='"& EL_Common.ServerHTMLEncode(rsSearch("LevelName")) &"'>")
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_LevelName}", EL_Common.ServerHTMLEncode(rsSearch("LevelName")))
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_Address}", rsSearch("Address"))
			   If Trim(rsSearch("DefaultPictrue")) = "" Then
			      ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_DefaultPictrue}", "")
			   Else
			      ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_DefaultPictrue}", "<img src='"& EL_Common.PictrueURL(rsSearch("DefaultPictrue"), EL_Channel.FilePath) &"' width=110 height=80 border=0>")
			   End If
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_Content}", EL_Common.GetTopic(EL_Common.RemoveHTML(rsSearch("Content")), EL_Common.Lang("Hotel.ContentLen", 250)))
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_AroundSight}", AroundInfoURL(rsSearch("AroundSight")))
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_AroundHotel}", AroundInfoURL(rsSearch("AroundHotel")))	
			   ItemHTML = EL_Common.RegExpStaticLabel(ItemHTML, "{$Arr_RoomList}", Search_RoomList(rsSearch("HotelID")))			   
			   ReturnString = ReturnString & ItemHTML
			   If i<RowCount Then rsSearch.MoveNext
		    Next
			HTML = Replace(HTML, Match.Value, ReturnString)	    
		 Next
		 rsSearch.Close()
		 
		 Dim PageHTML
		 PageHTML = EL_Common.Lang("BaseConfig.ShowPage", "")
		 PageHTML = EL_Common.ReplaceText(PageHTML, "\{\$PageList\}", EL_Common.ShowPage(URLParameters, CurrentPage, PageSizes, PageCounts, TotalRowCount, EL_Channel.ItemName, EL_Channel.ItemUnit))
		 HTML = EL_Common.RegExpStaticLabel(HTML, "{$ShowPage}", PageHTML)
	  End If
	  
	  HTML = Label_GetHotelList(HTML)
	  HTML = Label_GetHotelPhoto(HTML)
	  
	  Set Matches = Nothing   
	  Set rsSearch = Nothing
	  Set SearchCmd = Nothing
	  Session("EL_LastSearchDateTime") = Now()
	  Response.Write HTML
   End Sub 
   
   Private Function Search_RoomList(ByVal HotelID)
      Dim RoomCmd, rsRoom, RowCount, i
	  Dim PriceCmd, rsPrice, PriceCount, k, j
	  Dim CheckInDate, CheckOutDate, DayNum, This_CheckOutDate
	  Dim ListHTML, Rowspan, wi, ArrWeek(7), PriceIcon, NullPrice, ObjectPrice, BookButtonText
	  
	  CheckInDate = CDate(Hotel_CheckInDate)
	  CheckOutDate = CDate(Hotel_CheckOutDate)
	  DayNum = DateDiff("d", CheckInDate, CheckOutDate)
	  This_CheckOutDate = DateAdd("d", -1, CheckOutDate)
	  
	  PriceIcon = EL_Common.Lang("BaseConfig.PriceIcon", "&#xFFE5;")
	  NullPrice = EL_Common.Lang("BaseConfig.NullPrice", "<span style='color:#CC0000'>×</span>")
	  BookButtonText = EL_Common.Lang("BaseConfig.BookButtonText", "预订")
	  wi = EL_Common.Lang("Hotel.Week.wi", "第{$WeekIndex}周")
	  ArrWeek(1) = EL_Common.Lang("Hotel.Week.w1", "周日")
	  ArrWeek(2) = EL_Common.Lang("Hotel.Week.w2", "周一")
	  ArrWeek(3) = EL_Common.Lang("Hotel.Week.w3", "周二")
	  ArrWeek(4) = EL_Common.Lang("Hotel.Week.w4", "周三")
	  ArrWeek(5) = EL_Common.Lang("Hotel.Week.w5", "周四")
	  ArrWeek(6) = EL_Common.Lang("Hotel.Week.w6", "周五")
	  ArrWeek(7) = EL_Common.Lang("Hotel.Week.w7", "周六")
	  
	  Call EL_Common.InitCommonCmd(RoomCmd, rsRoom, "EL_HotelRoom", "TOP 2 RoomID,RoomName,MarketPrice,Breakfast", "HotelID="& HotelID &" AND ChannelID="& ChannelID)
	  rsRoom.Close()
	  RowCount = RoomCmd(0)
	  
	  ListHTML = "<table width='100%' border='0' cellspacing='1' cellpadding='0' class='search_room_table'>"
	  ListHTML = ListHTML &"<tr class='search_room_title'>"
	  ListHTML = ListHTML &"<td>"& EL_Common.Lang("Hotel.RoomTypeName", "房型") &"</td>"
	  ListHTML = ListHTML &"<td width='60'>"& EL_Common.Lang("Hotel.Breakfast", "早餐") &"</td>"
	  ListHTML = ListHTML &"<td width='60'>"& EL_Common.Lang("BaseConfig.MarketPrice", "门市价") &"</td>"
	  If DayNum > 7 Then ListHTML = ListHTML &"<td width='45'></td>"
	  For i = 0 To DayNum-1
	     If i>6 Then Exit For
		 ListHTML = ListHTML &"<td width='55'>"& ArrWeek(WeekDay(DateAdd("d", i, Hotel_CheckInDate))) &"</td>"
	  Next
	  ListHTML = ListHTML &"<td width='70'></td>"
	  ListHTML = ListHTML &"</tr>"
	  
	  If DayNum > 7 then
	     Rowspan = Int(DayNum / 7)
	     If (DayNum Mod 7) > 0 Then Rowspan = Rowspan + 1
	  Else
	     Rowspan = 0
	  End If
	  
	  Set ObjectPrice = Server.CreateObject ("Scripting.Dictionary")	
	  ObjectPrice.CompareMode = 1
	  rsRoom.Open()
	  For i = 1 To RowCount
	     ListHTML = ListHTML &"<tr>"		 
		 If Rowspan > 0 Then '合并行
		    ListHTML = ListHTML &"<td rowspan='"& Rowspan &"' class='search_room_items'>"& EL_Common.ServerHTMLEncode(rsRoom("RoomName")) &"</td>"
			ListHTML = ListHTML &"<td rowspan='"& Rowspan &"' class='search_room_breakfast'>"& EL_Common.ServerHTMLEncode(rsRoom("Breakfast")) &"</td>"	
			ListHTML = ListHTML &"<td rowspan='"& Rowspan &"' class='search_room_marketprice'>"& PriceIcon & rsRoom("MarketPrice") &"</td>"	
		 Else
		    ListHTML = ListHTML &"<td class='search_room_items'>"& EL_Common.ServerHTMLEncode(rsRoom("RoomName")) &"</td>"
			ListHTML = ListHTML &"<td class='search_room_breakfast'>"& EL_Common.ServerHTMLEncode(rsRoom("Breakfast")) &"</td>"
			ListHTML = ListHTML &"<td class='search_room_marketprice'>"& PriceIcon & rsRoom("MarketPrice") &"</td>"	
		 End If
		  
		 '价格
		 Call EL_Common.InitCommand(PriceCmd, "EL_SP_GetHotelRoomPrice")
		 With PriceCmd
		    .Parameters.Append .CreateParameter("RETURN", 2, 4)
			.Parameters.Append .CreateParameter("@RoomID", 3, 1, 4, rsRoom("RoomID"))
			.Parameters.Append .CreateParameter("@HotelID", 3, 1, 4, HotelID)
			.Parameters.Append .CreateParameter("@ChannelID", 3, 1, 4, ChannelID)
			.Parameters.Append .CreateParameter("@BeginDate", 135, 1, 8, CheckInDate)
			.Parameters.Append .CreateParameter("@EndDate", 135, 1, 8, CheckOutDate)
			Set rsPrice = .Execute()
		 End With
		 rsPrice.Close()
		 PriceCount = PriceCmd(0)		 
		 If PriceCount > 0 Then		    
			Dim TempBeginDate, TempEndDate, TempPrice
			rsPrice.Open()
			For k = 1 To PriceCount
		       TempPrice = rsPrice(1)
			   TempBeginDate = rsPrice(2)
			   TempEndDate = rsPrice(3)
			   For j = TempBeginDate To TempEndDate
			      If j >= CheckInDate And j < CheckOutDate Then ObjectPrice.Add j, PriceIcon & TempPrice
			   Next
		       If k<PriceCount Then rsPrice.MoveNext
			Next
			rsPrice.Close()
			If TempEndDate < CheckOutDate Then
		       For k = DateAdd("d", 1, TempEndDate) To This_CheckOutDate
			      ObjectPrice.Add k, NullPrice
			   Next
			End If
		 Else
		    For k = CheckInDate To CheckOutDate
		       ObjectPrice.Add k, NullPrice
		    Next
		 End If
		 Set rsPrice = Nothing
		 Set PriceCmd = Nothing
		 
		 Dim WeekIndex
		 WeekIndex = 1
		 j = 1
		 For k = CheckInDate To This_CheckOutDate
		    If DayNum > 7 And (j Mod 7) = 1 Then 
			   ListHTML = ListHTML &"<td class='search_room_week'>"& EL_Common.ReplaceText(wi, "\{\$WeekIndex\}", WeekIndex) &"</td>"
			Else
			End If
			ListHTML = ListHTML &"<td class='search_room_bookprice' title='"& k &"'>"& ObjectPrice.Item(k) &"</td>"			
			If WeekIndex = 1 And (j Mod 7) = 0 Or (k = This_CheckOutDate And DayNum<7) Then
			   If Rowspan > 0 Then '合并行
			      ListHTML = ListHTML &"<td rowspan='"& Rowspan &"' class='search_room_items'>"
				  ListHTML = ListHTML &"<form name='bookform_"& HotelID &"_"& rsRoom("RoomID") &"' action='Confirm.asp' method='post'>"
				  ListHTML = ListHTML &"<input type='hidden' id='HotelID' name='HotelID' value='"& HotelID &"'>"
				  ListHTML = ListHTML &"<input type='hidden' id='RoomID' name='RoomID' value='"& rsRoom("RoomID") &"'>"
				  ListHTML = ListHTML &"<input type='hidden' id='CheckInDate' name='CheckInDate' value='"& EL_Common.ServerHTMLEncode(Hotel_CheckInDate) &"'>"
				  ListHTML = ListHTML &"<input type='hidden' id='CheckOutDate' name='CheckOutDate' value='"& EL_Common.ServerHTMLEncode(Hotel_CheckOutDate) &"'>"
				  ListHTML = ListHTML &"<input type='hidden' id='Person' name='Person' value='"& Hotel_Person &"'>"
				  ListHTML = ListHTML &"<input type='hidden' id='Rooms' name='Rooms' value='"& Hotel_Rooms &"'>"
				  ListHTML = ListHTML &"<input type='submit' value='"& BookButtonText &"' class='bookbutton'/>"
				  ListHTML = ListHTML &"</form></td>"
			   Else
			      ListHTML = ListHTML &"<td class='search_room_items'>"
				  ListHTML = ListHTML &"<form name='bookform_"& HotelID &"_"& rsRoom("RoomID") &"' action='Confirm.asp' method='post'>"
				  ListHTML = ListHTML &"<input type='hidden' id='HotelID' name='HotelID' value='"& HotelID &"'>"
				  ListHTML = ListHTML &"<input type='hidden' id='RoomID' name='RoomID' value='"& rsRoom("RoomID") &"'>"
				  ListHTML = ListHTML &"<input type='hidden' id='CheckInDate' name='CheckInDate' value='"& EL_Common.ServerHTMLEncode(Hotel_CheckInDate) &"'>"
				  ListHTML = ListHTML &"<input type='hidden' id='CheckOutDate' name='CheckOutDate' value='"& EL_Common.ServerHTMLEncode(Hotel_CheckOutDate) &"'>"
				  ListHTML = ListHTML &"<input type='hidden' id='Person' name='Person' value='"& Hotel_Person &"'>"
				  ListHTML = ListHTML &"<input type='hidden' id='Rooms' name='Rooms' value='"& Hotel_Rooms &"'>"
				  ListHTML = ListHTML &"<input type='submit' value='"& BookButtonText &"' class='bookbutton'/>"
				  ListHTML = ListHTML &"</form></td>"
			   End If
			End If
			If (j Mod 7) = 0 And j < DayNum Then
			   WeekIndex = WeekIndex + 1
			   ListHTML = ListHTML &"</tr><tr>"
		    End If
			j = j + 1
		 Next
		 If DayNum>7 And ((j-1) Mod 7)>0 Then
	        For k = 1 To 7-((j-1) Mod 7)
	           ListHTML = ListHTML &"<td class='search_room_bookprice'></td>"
	        Next
	     End If	
		 	 
		 ListHTML = ListHTML &"</tr>"
		 ObjectPrice.RemoveAll()
		 		 
		 If i < RowCount Then rsRoom.MoveNext
	  Next	  
	  rsRoom.Close()
	  Set ObjectPrice = Nothing
	  Set rsRoom = Nothing
	  Set RoomCmd = Nothing
	  ListHTML = ListHTML &"</table>"
	  Search_RoomList = ListHTML
   End Function
   
   Private Function RoomPrice()
      
   End Function
   
   Private Function Search_GetHotelMinPrice(ByVal HotelID, ByVal PriceList)
      Dim ArrPrice, i, TempPrice, arr, TempPrice2
	  ArrPrice = Split(PriceList, "$")
	  TempPrice = 99999
	  For i = 0 To UBound(ArrPrice)
	     arr = Split(ArrPrice(i), "|")
		 If Trim(arr(0)) = Trim(HotelID) Then
		    TempPrice2 =  EL_Common.ELClng(arr(1))
			
		    If TempPrice2<TempPrice Then
			   TempPrice = TempPrice2
			End If
		 End If
	  Next
	  Search_GetHotelMinPrice = TempPrice
   End Function
   
   Private Function GetBookNumber()
      Dim RndN, DtNow, Prefix_Hotel
	  Prefix_Hotel = EL_Common.GetFieldValue("Prefix_Hotel", "EL_Config", "1=1")
	  Randomize
	  DtNow = Now()
	  RndN = Cint(9999*rnd)+1000
	  GetBookNumber = year(DtNow) & right("0" & month(DtNow),2) & right("0" & day(DtNow),2) & right("0" & hour(DtNow),2) & right("0" & minute(DtNow),2) & right("0" & second(DtNow),2) & RndN
	  If Len(GetBookNumber)>18 Then GetBookNumber = Left(GetBookNumber, 18)
	  GetBookNumber = Prefix_Hotel & GetBookNumber
   End Function
   
   Private Function GetBookPriceInfo(ByVal RoomID, ByVal HotelID)
      Dim PriceCmd, rsPrice, RowCount, i, j
	  Dim CheckInDate, CheckOutDate, BookPriceInfo
	  
	  CheckInDate = CDate(Hotel_CheckInDate)
	  CheckOutDate = CDate(Hotel_CheckOutDate)
	  
	  Call EL_Common.InitCommand(PriceCmd, "EL_SP_GetHotelRoomPrice")
	  With PriceCmd
	    .Parameters.Append .CreateParameter("RETURN", 2, 4)
		.Parameters.Append .CreateParameter("@RoomID", 3, 1, 4, RoomID)
		.Parameters.Append .CreateParameter("@HotelID", 3, 1, 4, HotelID)
		.Parameters.Append .CreateParameter("@ChannelID", 3, 1, 4, ChannelID)
		.Parameters.Append .CreateParameter("@BeginDate", 135, 1, 8, CheckInDate)
		.Parameters.Append .CreateParameter("@EndDate", 135, 1, 8, CheckOutDate)
		Set rsPrice = .Execute()
	  End With
	  rsPrice.Close()
	  RowCount = PriceCmd(0)
	  If RowCount = 0 Then	
	     EL_Common.ShowErrorMsg(EL_Common.Lang("Hotel.Error9", "房价数据不全,请缩小预订日期范围"))
		 Call ApplicationTerminate()
		 Set rsPrice = Nothing
		 Set PriceCmd = Nothing
		 Exit Function
	  End If
	  rsPrice.Open()
	  Dim TempPrice, TempIndex, UsePrice, TempBeginDate, TempEndDate, TempPrevDate

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -