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

📄 cart.asp

📁 正版创力4.1SQL商业版!!!ASP版。
💻 ASP
📖 第 1 页 / 共 2 页
字号:
<!--#include file="../Conn.asp"-->
<!--#include file="../Inc/Cl_Const.asp"-->
<!--#include file="../Inc/Cl_Function_Public.asp"-->
<%
Const ChannelID=0
Dim Action,sDisabled
PageSize = 20
Action = Lcase(Trim(request("Action")))
CurrentPath = Cl.Language.selectSingleNode("//CurrentPath").text & "<a href='" & Cl.Web_info(4) & "'>" & Cl.Web_info(0) & "</a>"
If CLng(Cl.Product_Setting(2))=0 Then
	if Cl.UserID=0 Then
		Response.redirect "Login.asp"
	end if
End if
Select Case Action
Case "chk"
	ModifyCart
Case "clear"
	Session("UserCart") = Empty
	Call Cl.OutMsg(0,"成功清空了购物车内所选的商品!","?")
Case "buy"
	ProductBuy
Case "preview"
	Preview
Case "order"
	SaveOrder
Case Else
	MyCart
End Select

Response.write Template.ReplaceAllFlag(TempStr)

CloseAllObj

Sub SaveOrder()
	Cl.Path=CurrentPath & " &gt;&gt; 提交订单"
	Cl.Title="提交订单--" & Cl.Title

	Dim ConSignee, Address, ZipCode, Phone, Email
	Dim PaymentType, DeliverType, NeedInvoice, InvoiceHead, Remark
	Dim DeliverCharge, TaxCharge, IsPayed, OrderID
	Dim UserCart,TmpSQL,TmpCarts,sInfoID,Tmpnum
	Dim TruePrice,ProductType
	Dim TmpOrderNum
	UserCart		= Session("UserCart")
	If UserCart="" then
		Call Cl.OutMsg(0,"对不起!您目前好像还没有选购商品。","Cart.asp")
	End If
	TmpOrderNum		= Cl.Product_Setting(0)&Cl.Format_Time(now(),8)
	IsPayed			= False
	ConSignee		= Trim(Request.Form("ConSignee"))
	Address			= Trim(Request.Form("Address"))
	ZipCode			= Trim(Request.Form("ZipCode"))
	Phone			= Trim(Request.Form("Phone"))
	Email			= Trim(Request.Form("Email"))
	PaymentType		= Cl.GetClng(Request.Form("PaymentType"))
	DeliverType		= Cl.GetClng(Request.Form("DeliverType"))
	NeedInvoice		= Trim(Request.Form("NeedInvoice"))
	InvoiceHead		= Cl.ChkBadWords(Request.Form("InvoiceHead"))
	Remark			= Cl.ChkBadWords(Request.Form("Remark"))
	MoneySum		= Trim(Request.Form("MoneySum"))
	PresentExp		= Cl.GetClng(Request.Form("PresentExp"))
	MoneyTotal		= Trim(Request.Form("MoneyTotal"))
	DeliverCharge	= Trim(Request.Form("DeliverCharge"))
	TaxCharge		= Trim(Request.Form("TaxCharge"))
	if Lcase(NeedInvoice)="yes" then
		NeedInvoice=True
	Else
		NeedInvoice=False
	End if
	Dim RsAdd
	Dim MaxTID
	MaxTID=Cl.Execute("select max(OrderID) from Cl_Order")(0)
	if isnull(MaxTID) or Not IsNumeric(MaxTID) then MaxTID=0
	OrderID=MaxTID+1
	Set RsAdd=Server.CreateObject("Adodb.RecordSet")
	SQL="select * from Cl_Order where OrderNum='"&TmpOrderNum&"' "
	OpenConn : RsAdd.open sql,Conn,1,3
	if not RsAdd.eof then
		RsAdd.close : set RsAdd=nothing
		Call Cl.OutMsg(0,"当前订购商品的人数过多,请稍候再尝试订购!","Cart.asp?Action=Buy")
	End if
	RsAdd.AddNew
	RsAdd("OrderID")	= OrderID
	RsAdd("UserID")		= Cl.UserID
	RsAdd("UserName")	= Cl.MemberName
	RsAdd("OrderNum")	= TmpOrderNum
	RsAdd("ConSignee")	= ConSignee
	RsAdd("Address")	= Address
	RsAdd("ZipCode")	= ZipCode
	RsAdd("Phone")		= Phone
	RsAdd("Email")		= Email
	RsAdd("PaymentType")= PaymentType
	RsAdd("DeliverType")= DeliverType
	RsAdd("InvoiceHead")= InvoiceHead
	RsAdd("NeedInvoice")= NeedInvoice
	RsAdd("Remark")		= Remark
	RsAdd("MoneyTotal")	= MoneyTotal'订单总金额
	RsAdd("MoneySum")	= MoneySum'购买商品合计金额
	RsAdd("BeginDate")	= Cl.Format_Time(now(),3)'开始服务日期
	RsAdd("AddTime")	= Now()'录入时间
	RsAdd("PresentExp")	= PresentExp'得到的积分
	RsAdd("TaxRate")	= Clng(Cl.Product_Setting(9))
	RsAdd("TaxCharge")	= TaxCharge
	RsAdd("DeliverCharge")=DeliverCharge'运费
	if Cl.UserID>0 and Cl.UserGroupID<>5 Then
		Dim UserMoney,rsUser
		Set rsUser = Cl.Execute_U("Select "&Db.UserMoney&" From "&Db.UserTable&" where "&Db.UserID&"="&Clng(Cl.UserID)&"")
		UserMoney = rsUser(0)
		rsUser.Close : Set rsUser = Nothing
		If Clng(UserMoney) >= Clng(MoneyTotal) then
			RsAdd("Status")=2
			RsAdd("MoneyReceipt")=MoneyTotal
			Cl.Execute_U("Update "&Db.UserTable&" Set "&Db.UserMoney&"="&Db.UserMoney&"-"&Clng(MoneyTotal)&",TotalExp=TotalExp+"&PresentExp&" where "&Db.UserID&"="&Clng(Cl.UserID)&"")
			Rem 金币支付,不计入收入,只记录消费记录
			'Cl.Execute("insert into Cl_BankrollItem (UserID,UserName,PayMoney,TrueMoney,PayType,CurrencyType,BankName,ItemType,OrderID,PaymentID,Remark,AddTime) " & _
			'"values ("&Cl.UserID&",'"&Cl.MemberName&"',"&MoneyTotal&","&MoneyTotal&",0,0,'金币支付',0,"&OrderID&",0,'',"&SQLNowString&")")
			
			Cl.GetCacheUserInfo
			IsPayed = True
		else
			RsAdd("Status")	=0
		end if
	Else
		RsAdd("Status")	=0
	End if
	RsAdd.Update
	RsAdd.close : set RsAdd=nothing
	TmpSQL	=""
	TmpCarts=split(UserCart,"|")
	for i=0 to ubound(TmpCarts) 
		if TmpSQL="" then
			TmpSQL=left(TmpCarts(i),Instr(TmpCarts(i),":")-1)
		else
			TmpSQL=TmpSQL & "," & Left(TmpCarts(i),Instr(TmpCarts(i),":")-1)
		end if
	next
	if TmpSQL<>"" then
		SQL="Select InfoID,ChannelID,ProductName,MarketPrice,MemberPrice,TruePrice,Discount,PresentExp from Cl_Product where Status=1 And InfoID in("&TmpSQL&")"
		Set rs=Cl.Execute(SQL)
		if Not Rs.eof then
		SQL = Rs.GetRows(-1)
		Dim sItemID
		For i=0 to Ubound(SQL,2)
			sInfoID	= SQL(0,i)
			TmpNum		= Cart_Get_Num(sInfoID)'购物单品的数量
			if Cl.UserGroupID=5 then
				TruePrice= SQL(3,i) '游客享受当前零售价
			else
				if SQL(5,i)>0 then
					TruePrice = SQL(5,i)'指定会员价
				else
					TruePrice = SQL(4,i) * (SQL(6,i)/10)'当前零售价×会员折扣率
				end if
			end if
			sItemID=Cl.Execute("select max(ItemID) from Cl_OrderItem")(0)
			if Isnull(sItemID) or Not IsNumeric(sItemID) then sItemID=0
			sItemID=sItemID+1
			Cl.Execute("insert into Cl_OrderItem (ItemID,OrderID,InfoID,MarketPrice,MemberPrice,TruePrice,BuyNum,TotalPrice,BeginDate,ServiceTerm,Remark,PresentExp) " & _
			"values ("&sItemID&","&OrderID&","&sInfoID&","&SQL(3,i)&","&SQL(4,i)&","&TruePrice&","&TmpNum&","&TruePrice*TmpNum&","&SQLNowString&",0,'',"&SQL(7,i)&")")
			Cl.Execute_L("Insert Into Cl_ConsumeLog (ChannelID,InfoID,Title,Url,UserID,UserName,ConsumePoint,ConsumeMoney,ConsumeNums,ConsumeTime) values ("&SQL(1,i)&","&sInfoID&",'"&SQL(2,i)&"','"&Request.ServerVariables("PATH_INFO")&"',"&Cl.UserID&",'"&Cl.MemberName&"',0,"&TruePrice&",0,'"&Now()&"')")
		Next
		End if
		Rs.close : Set Rs=Nothing
	End if
	Session("UserCart")=Empty
	Call Template.Load(-2,17)
	TempStr			= Template.Html
	if IsPayed then
	TempStr		= Replace(TempStr,"{$succeedmsg}",Cl.Language.selectSingleNode("//OrderIsPay").text)
	else
	TempStr		= Replace(TempStr,"{$succeedmsg}",Cl.Language.selectSingleNode("//OrderWaitPay").text)
	end if
	TempStr		= Replace(TempStr,"{$orderid}",OrderID)
	TempStr		= Replace(TempStr,"{$ordernum}",TmpOrderNum)
	TempStr		= Replace(TempStr,"{$moneytotal}",MoneyTotal)
End Sub

Sub Preview()
	Cl.Path=CurrentPath & " &gt;&gt; 确认订单"
	Cl.Title="确认订单--" & Cl.Title

	Dim ConSignee, Address, ZipCode, Phone, Email
	Dim PaymentType, DeliverType, NeedInvoice, InvoiceHead, Remark
	Dim DCharge, TaxCharge
	ConSignee		= Trim(Request.Form("ConSignee"))
	Address			= Trim(Request.Form("Address"))
	ZipCode			= Trim(Request.Form("ZipCode"))
	Phone			= Trim(Request.Form("Phone"))
	Email			= Trim(Request.Form("Email"))
	'PaymentType		= Cl.GetClng(Request.Form("PaymentType"))
	DeliverType		= Cl.GetClng(Request.Form("DeliverType"))
	NeedInvoice		= Lcase(Trim(Request.Form("NeedInvoice")))
	InvoiceHead		= Cl.ChkBadWords(Request.Form("InvoiceHead"))
	Remark			= Cl.ChkBadWords(Request.Form("Remark"))
	Call Template.Load(-2,16)
	TempStr			= Template.Html
	TempStr			= Replace(TempStr,"{$cartnav}",CartNav)
	TempStr			= Replace(TempStr,"{$cartlist}",CartList(1))
	TempStr			= Replace(TempStr,"{$consignee}",ConSignee)
	TempStr			= Replace(TempStr,"{$address}",Address)
	TempStr			= Replace(TempStr,"{$zipcode}",ZipCode)
	TempStr			= Replace(TempStr,"{$phone}",Phone)
	TempStr			= Replace(TempStr,"{$email}",Email)
	Set Rs=Cl.Execute("select TypeID,TypeName,Intro,Charge from Cl_DeliverType where TypeID="&DeliverType&" order by OrderID")
	If not Rs.eof then
		TempStr		= Replace(TempStr,"{$delivertypename}",Rs(1))
		TempStr		= Replace(TempStr,"{$delivertypeintro}",Rs(2))
		TempStr		= Replace(TempStr,"{$delivertype}",Rs(0))
		DCharge		= Rs(3)
	else
		TempStr		= Replace(TempStr,"{$delivertypename}","")
		TempStr		= Replace(TempStr,"{$delivertypeintro}","")
		TempStr		= Replace(TempStr,"{$delivertype}",DeliverType)
		DCharge		= 0
	End If
	Rs.close : Set Rs=Nothing
	if NeedInvoice="yes" then
	TempStr			= Replace(TempStr,"{$invoicechecked}","checked")
	else
	TempStr			= Replace(TempStr,"{$invoicechecked}","")
	end if
	TempStr			= Replace(TempStr,"{$needinvoice}",NeedInvoice)
	if NeedInvoice<>"yes" then
	TempStr			= Replace(TempStr,"{$invoiceheadstyle}","style=""display:none;""")
	else
	TempStr			= Replace(TempStr,"{$invoiceheadstyle}","")
	end if
	TempStr			= Replace(TempStr,"{$invoicehead}",InvoiceHead)
	TempStr			= Replace(TempStr,"{$remark}",Remark)
	if NeedInvoice = "yes" and Cl.Product_Setting(8)="1" then
		TaxCharge	= MoneySum * Clng(Cl.Product_Setting(9))/100
		TempStr		= Replace(TempStr,"{$taxintro}",MoneySum & "*" & Cl.Product_Setting(9) & "%")

⌨️ 快捷键说明

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