版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
目錄1緒論 31.1課題背景 31.1.1課題目的 31.1.2課題現(xiàn)狀 32.1ASP.NET 52.2MVC 52.3RAZOR 53需求分析 63.1系統(tǒng)功能分析 63.2系統(tǒng)角色分析 63.2.1角色定義 63.2.2用例定義 64.1系統(tǒng)總體功能說(shuō)明 94.2功能模塊設(shè)計(jì)說(shuō)明 104.2.1登錄注冊(cè)模塊 104.2.2商品展示模塊 104.2.3個(gè)人中心模塊 114.2.4商品搜索模塊 114.2.5購(gòu)物車模塊 114.2.6賣家模塊 124.2.7管理員模塊 134.3數(shù)據(jù)庫(kù)設(shè)計(jì) 144.3.1數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì) 144.3.2數(shù)據(jù)庫(kù)物理結(jié)構(gòu)設(shè)計(jì) 165系統(tǒng)實(shí)現(xiàn) 215.1注冊(cè)功能 215.2登錄功能 225.3商品搜索功能 245.4購(gòu)物車與結(jié)算功能 255.5賣家發(fā)貨功能 285.6售后功能 285.7評(píng)價(jià)功能 305.8商品上下架功能 315.9商品審核功能 335.10訂單管理功能 345.11促銷資訊管理功能 365.12商品分類管理功能 375.13評(píng)論管理功能 375.14用戶管理功能 38總結(jié) 39致謝 41基于ASP.NET的電腦商城摘要電腦商城是基于ASP.NET的MVC框架制作,系統(tǒng)有三個(gè)角色,分別是買家,賣家和管理員,系統(tǒng)分為前臺(tái)和后臺(tái)模塊,前臺(tái)模塊包含了登錄注冊(cè)功能,商品展示功能,買家有買家個(gè)人中心,里面包含著個(gè)人資料,收貨地址,我的訂單,我的售后,我的評(píng)價(jià),購(gòu)物車這5個(gè)功能,購(gòu)物車功能是核心。后臺(tái)模塊包含了賣家和管理員頁(yè)面,賣家負(fù)責(zé)商品,在賣家中心里有商品上下架,訂單管理,售后服務(wù)這三個(gè)功能,其中商品上下架是核心。管理員管理著商城后臺(tái),主要有商品管理,訂單管理,促銷資訊管理,商品類型管理,評(píng)價(jià)管理,用戶管理這6個(gè)功能,其中商品管理是核心,負(fù)責(zé)整個(gè)商城商品的審核。系統(tǒng)開發(fā)語(yǔ)言為C#,JavaScript,jQuery。數(shù)據(jù)庫(kù)為SQLServer。關(guān)鍵字:電腦;商城
SubjectComputermallbasedonASP.NETAbstractThecomputermallsystemisbasedontheMVCframeworkofASP.NET.Thesystemhasthreeroles,namelybuyer,sellerandadministrator.Thesystemisdividedintofront-endandback-endmodules.Thefront-endmoduleincludesthefunctionofloginandregistration,andthefunctionofcommoditydisplay.Thebuyer'spersonalcentercontainsfivefunctions:personalinformation,deliveryaddress,myorder,myafter-sales,myevaluation,andshoppingcart.Theshoppingcartfunctionisthecore.Theback-endmoduleincludessellerandadministratorpages.Thesellerisresponsiblefortheproduct.Inthesellercenter,therearethreefunctions:productdrop-off,ordermanagement,andafter-salesservice.Amongthem,productdrop-offisthecore.Theadministratormanagesthebackgroundofthemall,mainlyincludingcommoditymanagement,ordermanagement,promotioninformationmanagement,commoditytypemanagement,evaluationmanagement,usermanagement,andadministratormanagement.Amongthem,commoditymanagementisthecoreandisresponsibleforthereviewoftheentiremall.ThesystemdevelopmentlanguagesareC#,JavaScript,andjQuery.ThedatabaseisSQLServer.Keywords:computermall1緒論近年來(lái),互聯(lián)網(wǎng)的運(yùn)用已經(jīng)越來(lái)越普遍,互聯(lián)網(wǎng)已成為人們收集信息的最佳工具,因此電子商務(wù)也開始流行起來(lái),越來(lái)越多的商家在線下開店的同時(shí),也在線上建起了網(wǎng)店,向消費(fèi)者展現(xiàn)出一種新的購(gòu)物理念,本文考慮的是建立個(gè)網(wǎng)上的電腦商城,出售整機(jī)以及電腦配件,讓用戶可以通過(guò)電腦商城,找到自己需要的電腦,然后下單購(gòu)買。ASP.NET是web框架,用于使用JavaScriptHTML和CSS構(gòu)建強(qiáng)大的網(wǎng)站和web應(yīng)用程序。SQLServer是一個(gè)高效的數(shù)據(jù)庫(kù)管理系統(tǒng)。因此,我使用ASP.NET框架,SQLServer數(shù)據(jù)庫(kù)制作一個(gè)網(wǎng)上電腦商城。1.1課題背景1.1.1課題目的第一臺(tái)個(gè)人電腦出現(xiàn)至今已有接近50年,電腦在人們生活中占據(jù)著越來(lái)越重要的地位,同時(shí)也因?yàn)楝F(xiàn)在的全球信息化席卷全世界各個(gè)國(guó)家,所以一大批因?yàn)殡娔X而衍生的科技產(chǎn)品,在人們生活中發(fā)揮著越來(lái)越重要的作用,已經(jīng)滲透到人們生活的角角落落[1]。隨著科技的高速發(fā)展,電腦的配置也越來(lái)越高,人們的需求也越來(lái)越多,在電商還未流行時(shí),大部分人都是在線下商店來(lái)購(gòu)買電腦,因此也出現(xiàn)了很多的問(wèn)題,對(duì)于消費(fèi)者,存在著電腦的配置不透明,低配高價(jià),濫竽充數(shù)等問(wèn)題,并且不同的消費(fèi)者需求也不同,有需要性價(jià)比,有的需要方便,有的需要好看且好用的。對(duì)于賣家,存在著店租貴,人工成本高等問(wèn)題,商家為了獲得利益,在競(jìng)爭(zhēng)時(shí)會(huì)不斷的對(duì)商品進(jìn)行價(jià)格調(diào)整,但是傳統(tǒng)的線下銷售市場(chǎng)相比于網(wǎng)上商城,在價(jià)格這一方面已經(jīng)處于劣勢(shì)。因此隨著互聯(lián)網(wǎng)的迅速發(fā)展,網(wǎng)上電腦銷售系統(tǒng)已經(jīng)存在著許多優(yōu)勢(shì),該系統(tǒng)是為了實(shí)現(xiàn)用戶通過(guò)上網(wǎng)瀏覽,根據(jù)自己的需求來(lái)挑選,訂購(gòu)自己所需要的電腦以及賣家對(duì)商品信息,訂單信息管理,管理員對(duì)商城信息,商品,買賣家管理開發(fā)的網(wǎng)站,該系統(tǒng)能夠滿足網(wǎng)上購(gòu)買電腦客戶的基本要求。1.1.2課題現(xiàn)狀電商行業(yè)發(fā)展了20年,目前已進(jìn)入全面發(fā)展階段,隨著多項(xiàng)支持電商政策出臺(tái),物流,在線支付等配套產(chǎn)業(yè)的發(fā)展、大型電商企業(yè)開始出現(xiàn),至2020年3月,我國(guó)網(wǎng)購(gòu)用戶達(dá)7.10億[2]。截至2020年12月,網(wǎng)購(gòu)用戶較2020年3月增長(zhǎng)7215萬(wàn),占網(wǎng)民整體的79.1%。我國(guó)網(wǎng)民以49歲以下的年輕群體為主,占整體的70.6%,其中30歲以下年齡段的網(wǎng)民占比較高,達(dá)17.8%,而大學(xué)生正是符合這一年齡特點(diǎn)的網(wǎng)絡(luò)人群[3]。信息化社會(huì),各個(gè)行業(yè)的發(fā)展都離不開互聯(lián)網(wǎng)的支持[4]。網(wǎng)購(gòu)可以說(shuō)是家喻戶曉,網(wǎng)上電腦商城系統(tǒng)可以為商家解決員工與客戶間的問(wèn)題,庫(kù)存問(wèn)題,等于是多了一條銷售渠道,并且還可以為商家?guī)?lái)更多的收入。對(duì)于消費(fèi)者來(lái)說(shuō),他們?cè)谌我獾牡攸c(diǎn),任何時(shí)候,挑選自己喜歡的電腦,查看電腦價(jià)格,配置等,節(jié)省了大量時(shí)間。
2相關(guān)技術(shù)概述2.1ASP.NETASP.NET是一個(gè)免費(fèi)的web框架,用于使用HTML、CSS和JavaScript構(gòu)建強(qiáng)大的網(wǎng)站和web應(yīng)用程序。本系統(tǒng)使用到了ASP.NETMVC框架。ASP.NET提供了很多服務(wù)器能認(rèn)識(shí)的標(biāo)簽庫(kù),可以將HTML與一些很難分離的可執(zhí)行代碼分離開[5]。2.2MVCMVC模式包括3個(gè)部分:模型、視圖和控制器[6]。M(Model)模型是指模型業(yè)務(wù)表示規(guī)則,V(View)視圖是指用戶看到并與用戶交互的頁(yè)面,視圖是根據(jù)模型進(jìn)行創(chuàng)建,使用HMTL+CSS+JS設(shè)計(jì)靜態(tài)頁(yè)面,使用Razor引擎顯示服務(wù)器端數(shù)據(jù)[7]。C(Controller)控制器,指控制器接受用戶的輸入同時(shí)調(diào)用模型、視圖去完成用戶的需求。這三個(gè)組件之間都有給彼此提供的接口,用以實(shí)現(xiàn)這三個(gè)組件的通信與同步[8]。2.3RAZORRazor不是編程語(yǔ)言,它只是一種允許向網(wǎng)頁(yè)中嵌套基于服務(wù)器代碼的標(biāo)記語(yǔ)法,用于方便前端工作者在HTML界面調(diào)取后臺(tái)數(shù)據(jù)[9]。Razor的特點(diǎn)是界面設(shè)計(jì)靈活,比ASPX視圖引擎更專注于WEB前端頁(yè)面的設(shè)計(jì)[10]。
3需求分析3.1系統(tǒng)功能分析電腦商城根據(jù)角色劃分,分為買家、賣家和管理員。買家就是網(wǎng)站的客戶,對(duì)電腦以及電腦配件有需求,系統(tǒng)需要提供商品搜索、查看、選擇、購(gòu)物車、售后等功能。賣家負(fù)責(zé)售賣電腦和電腦配件。管理員是對(duì)商城的商品、賣家、買家有管理權(quán)限的人員。本課題中電腦商城分為前臺(tái)和后臺(tái),前臺(tái)主要有注冊(cè)登錄、個(gè)人中心、商品搜索等功能。后臺(tái)功能分為賣家部分和管理員部分,賣家部分由賣家主頁(yè)、商品上下架、訂單、售后管理組成。管理員部分主要有訂單、商品、評(píng)價(jià)、用戶管理等功能。3.2系統(tǒng)角色分析3.2.1角色定義在電腦商城中,角色定義分為買家,賣家和管理員。買家:擁有商品搜索、商品查看、商品選擇、添加購(gòu)物車、查看訂單、結(jié)算、商品評(píng)價(jià)、售后等功能。賣家:擁有上架商品、訂單管理、售后服務(wù)功能。管理員:擁有商品、商品類型、評(píng)論、訂單、用戶管理等功能。3.2.2用例定義(1)買家用例圖網(wǎng)站前臺(tái)面向有買電腦以及電腦配件需求的客戶:買家在未登錄時(shí)可以在網(wǎng)站首頁(yè)瀏覽電腦商品,查看電腦商品信息。買家想要對(duì)商品進(jìn)行任何操作,需要注冊(cè)/登錄網(wǎng)站,在登錄網(wǎng)站后可以編輯個(gè)人資料,可以將喜歡的商品加入到購(gòu)物車并進(jìn)行結(jié)算,在訂單完成后買家能對(duì)商品進(jìn)行評(píng)價(jià),若商品有質(zhì)量問(wèn)題,可以在我的售后頁(yè)面申請(qǐng)售后。買家用例圖如圖3-1所示圖3-1買家用例圖(2)賣家用例圖賣家角色在功能設(shè)計(jì)上有賣家首頁(yè),上架商品,訂單管理,售后服務(wù)模塊,對(duì)以上功能進(jìn)行細(xì)化。賣家登錄到賣家頁(yè)面后,在商品管理頁(yè)面可以看到自己店鋪里已上架的商品,已經(jīng)上架的商品可以下架,也可以添加需要上架商品的信息,在訂單管理頁(yè)面,賣家可以看到自己店內(nèi)的所有訂單,在售后服務(wù)頁(yè)面,賣家可以處理買家的售后申請(qǐng)。賣家用例圖如圖3-2所示:圖3-2賣家用例圖(3)管理員用例圖在后臺(tái)管理員模塊里,管理員角色功能設(shè)計(jì)有商品,促銷資訊、訂單、商品分類、用戶管理功能,當(dāng)管理員登錄到后臺(tái)管理頁(yè)面后,在商品管理頁(yè)面管理員可以對(duì)賣家需要上架的商品進(jìn)行審核。訂單管理頁(yè)面管理員能看到商城的所有訂單,促銷資訊管理頁(yè)面,管理員可以管理商城首頁(yè)的輪播圖,商品分類管理頁(yè)面,管理員可以編輯商城導(dǎo)航欄的商品分類信息,用戶管理頁(yè)面,管理員可以拿查看用戶賬號(hào)信息,管理員管理頁(yè)面,管理員可以添加新的管理員賬號(hào),并對(duì)自己的賬號(hào)信息進(jìn)行編輯。管理員用例圖如圖3-3所示:圖3-3管理員用例圖
4系統(tǒng)設(shè)計(jì)4.1系統(tǒng)總體功能說(shuō)明基于ASP.NET的電腦商城網(wǎng)站由前臺(tái)和后臺(tái)兩部分組成,前臺(tái)功能分為如下幾個(gè)模塊實(shí)現(xiàn):登錄注冊(cè)、商品展示、個(gè)人中心、商品搜索、購(gòu)物車。個(gè)人中心模塊拓展出個(gè)人資料管理、訂單管理、地址管理、售后管理、評(píng)論管理功能、后臺(tái)模塊由賣家模塊和管理員模塊組成,賣家模塊由以下功能來(lái)實(shí)現(xiàn):賣家主頁(yè)、商品上下架管理、訂單管理,售后管理。管理員模塊由訂單管理、商品管理、促銷類型管理、用戶管理、評(píng)價(jià)管理功能組成。電腦商城總體功能說(shuō)明圖如圖4-1所示圖4-1系統(tǒng)總體功能說(shuō)明圖4.2功能模塊設(shè)計(jì)說(shuō)明4.2.1登錄注冊(cè)模塊在注冊(cè)頁(yè)面,用戶輸入用戶名、密碼、手機(jī)號(hào)等信息注冊(cè)。登錄頁(yè)面用戶輸入賬號(hào)密碼登錄,登錄后跳轉(zhuǎn)到商城首頁(yè)。圖4-2登錄注冊(cè)模塊流程圖4.2.2商品展示模塊網(wǎng)站首頁(yè)通過(guò)輪播圖的方式展示出促銷資訊,在輪播圖下面通過(guò)導(dǎo)航欄的分類來(lái)展示每個(gè)大類下的商品。4.2.3個(gè)人中心模塊買家個(gè)人中心頁(yè)面,有個(gè)人資料管理,訂單管理,地址管理,售后管理功能,個(gè)人資料管理頁(yè)面,可以修改自己的用戶名、密碼、郵箱、昵稱。訂單管理頁(yè)面可以查看所有的訂單狀態(tài),地址管理可以添加、刪除收貨地址。售后管理可以查看自己已經(jīng)申請(qǐng)售后的訂單狀態(tài)。評(píng)論管理可以編輯、查看、刪除自己對(duì)商品的評(píng)價(jià)。4.2.4商品搜索模塊買家可以通過(guò)電腦商城主頁(yè)右上角的搜索框,通過(guò)關(guān)鍵字搜索,也可以在主頁(yè)導(dǎo)航欄里,通過(guò)導(dǎo)航欄里的商品分類來(lái)搜索需要的商品。4.2.5購(gòu)物車模塊買家可以將自己喜歡的商品添加到購(gòu)物車,購(gòu)物車內(nèi)有商品數(shù)量等信息,買家。圖4-3用戶購(gòu)物流程圖4.2.6賣家模塊賣家登錄后可以看到賣家主頁(yè)。賣家可以在商品管理查看自己店內(nèi)所有商品狀態(tài),也可以上架新的商品。訂單管理可以看到自己店鋪內(nèi)所有的訂單的信息。售后管理功能在收到買家的售后請(qǐng)求后可以進(jìn)行退換貨。圖4-4賣家模塊售后功能流程圖圖4-5賣家模塊商品上架流程圖4.2.7管理員模塊管理員模塊的所有功能需要登錄管理員賬戶才可使用,商品管理功能可以審核賣家需要上架的商品,訂單管理可以查看商城所有的訂單明細(xì)。促銷資訊管理頁(yè)面可以編輯首頁(yè)的輪播圖。商品類型管理可以修改商城首頁(yè)導(dǎo)航欄的商品分類。評(píng)價(jià)管理可以查看商城所有的商品評(píng)價(jià)并將違規(guī)的評(píng)價(jià)刪除。用戶管理可以查看商城所有的用戶信息。圖4-6管理員管理流程圖4.3數(shù)據(jù)庫(kù)設(shè)計(jì)4.3.1數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)電腦商城中包含的實(shí)體對(duì)象有:賣家,買家,管理員,商品。圖4-7至圖4-10為各實(shí)體具體屬性:賣家:賣家編號(hào),賣家名稱,賣家賬號(hào),密碼,郵箱;圖4-7賣家實(shí)體圖買家:買家編號(hào),買家賬號(hào),密碼,電話號(hào)碼,郵箱,地址,昵稱;圖4-8買家實(shí)體圖(3)管理員:管理員編號(hào),管理員賬號(hào),密碼;圖4-9管理員實(shí)體圖商品:商品編號(hào),商品名,商品圖片,商品價(jià)格,商品庫(kù)存,商品描述,類別編號(hào)。圖4-10商品實(shí)體圖數(shù)據(jù)庫(kù)E-R圖如圖4-10所示圖4-11數(shù)據(jù)庫(kù)E-R圖關(guān)系模式:買家(用戶ID,賬號(hào),密碼,昵稱,郵箱,地址,電話號(hào)碼)主鍵:用戶ID賣家(賣家ID,店名,賬號(hào),密碼,郵箱)主鍵:賣家ID商品(商品ID,類別ID,商品名,庫(kù)存,商品圖片,價(jià)格,商品描述)主鍵:商品ID管理員(管理員ID,賬號(hào),密碼)主鍵:管理員ID4.3.2數(shù)據(jù)庫(kù)物理結(jié)構(gòu)設(shè)計(jì)本電腦商城數(shù)據(jù)庫(kù)名稱為ComputerDB,該數(shù)據(jù)庫(kù)共設(shè)計(jì)包含了13張表,分別為:管理員表AdminUser、用戶表Users、訂單表Orders、訂單詳情表OrdersDetai1、購(gòu)物車表Cart、購(gòu)物車詳情表CartItem、圖片表Photo、商品表Product、分類管理表Category、售后表AfterSa1e、收貨信息表De1ivery、促銷資訊表News、評(píng)論表Appraise。以下為每張數(shù)據(jù)庫(kù)表的具體信息:管理員表AdminUser:字段有(管理員賬號(hào),管理員編號(hào),管理員密碼)管理員表具體情況如表4-12所示:表4-12管理員表AdminUser名稱數(shù)據(jù)類型約束注釋說(shuō)明Suidint主鍵,非空管理員編號(hào)UserNamenvarchar(50)非空管理員賬號(hào)Pwdnvarchar(50)非空管理員密碼用戶表Users:字段有(用戶賬號(hào),用戶密碼,用戶編號(hào),郵箱,昵稱,地址編號(hào),身份編號(hào))。用戶表具體情況如表4-13所示:表4-13用戶表Users名稱數(shù)據(jù)類型約束注釋說(shuō)明Useridint主鍵,非空用戶編號(hào)自增長(zhǎng)UserNamenvarchar(50)非空用戶賬號(hào)Pwdnvarchar(50)非空密碼Emailnvarchar(50)非空郵箱Nicknvarchar(50)非空昵稱DeliveryIDint外鍵,非空地址編號(hào)與地址表的DeliveryId關(guān)聯(lián)RoleIdint非空身份編號(hào)Phonenvarchar(50)非空手機(jī)號(hào)訂單表Orders:字段有(用戶編號(hào),訂單編號(hào),下單時(shí)間,價(jià)格,地址編號(hào),收貨日期,訂單狀態(tài))。訂單表具體情況如表4-14所示:表4-14訂單表Orders名稱數(shù)據(jù)類型約束注釋說(shuō)明OrdersIDint主鍵,非空訂單編號(hào)Orderdatedatetime非空下單時(shí)間UserIdint外鍵,非空用戶編號(hào)Totalmoney非空價(jià)格DeliveryIDint外鍵,非空地址編號(hào)與地址表的DeliveryID關(guān)聯(lián)DeliveryDatedatetime非空收貨時(shí)間Statesint非空狀態(tài)Remarknvarchar(500)可為空備注訂單詳情表OrdersDetail:字段有(訂單編號(hào),詳情編號(hào),商品編號(hào),數(shù)量,狀態(tài))。訂單詳情表具體情況如表4-15所示:表4-15訂單詳情表OrdersDetail名稱數(shù)據(jù)類型約束注釋說(shuō)明DetailIDint主鍵,非空詳情編號(hào)OrdersIDint外鍵,非空訂單編號(hào)與訂單表的OrdersID關(guān)聯(lián)ProductIDint外鍵,非空商品編號(hào)與商品表的ProductID關(guān)聯(lián)Quantityint非空數(shù)量Statesint非空狀態(tài)0未支付,1已支付,2已發(fā)貨,3確認(rèn)收貨圖片表Photo:字段有(商品編號(hào),圖片編號(hào),圖片鏈接)。圖片表具體情況如表4-16所示:表4-16圖片表Photo名稱數(shù)據(jù)類型約束注釋說(shuō)明PhotoIDint主鍵,非空?qǐng)D片編號(hào)ProductIDInt非空商品編號(hào)PhotoUrlnvarchar(200)非空?qǐng)D片鏈接商品表Product:字段有(商品編號(hào),商品名稱,商品類別號(hào),商品原價(jià),商品現(xiàn)價(jià),商品內(nèi)容,上架時(shí)間,商品庫(kù)存,賣家編號(hào),售后批準(zhǔn),售后留言)。商品表具體情況如表4-17所示:表4-17商品表Product名稱數(shù)據(jù)類型約束注釋說(shuō)明ProductIDint主鍵,非空商品編號(hào)Titlenvarchar(100)非空商品名稱CateIDint非空商品類別號(hào)MarketPricedecimal(8,2)非空商品原價(jià)PriceDecimal(8,2)非空商品現(xiàn)價(jià)Contentnvarchar(MAX)非空商品內(nèi)容PostTimedatetime非空上架時(shí)間Stockint非空商品庫(kù)存SellerIDint非空賣家編號(hào)IsApprovedbit可為空售后批準(zhǔn)True同意,F(xiàn)alse不同意ApproveNoteNvarchar(500)可為空售后留言分類管理表Category:字段有(父類編號(hào),分類編號(hào),分類名稱)。分類管理表具體情況如表4-18所示:表4-18分類管理表Category名稱數(shù)據(jù)類型約束注釋說(shuō)明Cateidint主鍵,非空分類編號(hào)CateNamenvarchar(50)非空分類名稱ParentIDint可為空父類編號(hào)當(dāng)前分類所屬的大類編號(hào)售后表AfterSale:字段有(售后編號(hào),訂單編號(hào),詳情編號(hào),售后類型,申請(qǐng)?jiān)颍唵螤顟B(tài),售后情況,申請(qǐng)時(shí)間,最后更新時(shí)間,商家留言)。售后表具體情況如表4-19所示:表4-19售后表AfterSale名稱數(shù)據(jù)類型約束注釋說(shuō)明IDint主鍵,非空售后編號(hào)OrderIDint外鍵,非空訂單編號(hào)與訂單表的OrderID關(guān)聯(lián)Detai1IDint外鍵,非空詳情編號(hào)與訂單表的Detai1ID關(guān)聯(lián)Typenvarchar(50)非空售后類型退貨/換貨Reasonnvarchar(500)可為空申請(qǐng)?jiān)騍tatusnvarchar(50)非空訂單狀態(tài)IsApprovebit非空售后情況True同意,F(xiàn)alse不同意,默認(rèn)為FalseAddTimedatetime非空申請(qǐng)時(shí)間LastUpdateTimedatetime非空最后更新時(shí)間Se11erReasonnvarchar(500)可為空商家留言收貨信息表Delivery:字段有(地址編號(hào),用戶編號(hào),收獲人,完整地址,電話號(hào)碼)。分類管理表具體情況如表4-20所示:表4-20收貨信息表Delivery名稱數(shù)據(jù)類型約束注釋說(shuō)明De1iveryIDint主鍵,非空地址編號(hào)UserIDInt外鍵,非空用戶編號(hào)與用戶表的UserId關(guān)聯(lián)Consigneenvarchar(50)非空收貨人Completenvarchar(200)非空完整地址Phonenvarchar(12)非空電話號(hào)碼促銷資訊表News:字段有(資訊編號(hào),資訊名稱,促銷類型,促銷詳情,圖片鏈接,添加時(shí)間,狀態(tài))。分類管理表具體情況如表4-21所示:表4-21促銷資訊表News名稱數(shù)據(jù)類型約束注釋說(shuō)明NewsIDint主鍵,非空資訊編號(hào)Tit1envarchar(100)非空資訊名稱Ntypesnvarchar(10)非空促銷類型Contentnvarchar(MAX)非空促銷詳情PhotoUr1nvarchar(200)非空?qǐng)D片鏈接PushTimedatetime允許為空添加時(shí)間Statesint非空狀態(tài)0已發(fā)布,1未發(fā)布評(píng)論表Appraise:字段有(用戶編號(hào),商品編號(hào),評(píng)論編號(hào),評(píng)論內(nèi)容,評(píng)論等級(jí),評(píng)論時(shí)間)。分類管理表具體情況如表4-22所示:表4-22評(píng)論表Appraise名稱數(shù)據(jù)類型約束注釋說(shuō)明AppraiseIDint主鍵,非空評(píng)論編號(hào)UserIDint外鍵,非空用戶編號(hào)與用戶表的UserId關(guān)聯(lián)ProductIDint外鍵,非空商品編號(hào)與商品表的ProductID關(guān)聯(lián)Contentnvarchar(MAX)非空評(píng)論內(nèi)容Gradeint非空評(píng)論等級(jí)0好評(píng),1中評(píng),2差評(píng)RateTimedatetime非空評(píng)論時(shí)間購(gòu)物車表Cart:字段有(購(gòu)物車編號(hào),用戶編號(hào),總額)。購(gòu)物車表詳細(xì)信息如表4-23所示:表4-23購(gòu)物車表Cart名稱數(shù)據(jù)類型約束注釋說(shuō)明Idint主鍵,自增,非空購(gòu)物車編號(hào)UserIDint外鍵,非空用戶編號(hào)與用戶表的UserId關(guān)聯(lián)Totalmoney允許為空總額購(gòu)物車詳情表CartItems:字段有(詳情編號(hào),購(gòu)物車編號(hào),商品編號(hào),數(shù)量)。購(gòu)物車詳情表詳細(xì)信息如表4-24所示:表4-24購(gòu)物車詳情表CartItem名稱數(shù)據(jù)類型約束注釋說(shuō)明Idint主鍵,自增,非空詳情編號(hào)CartIdint外鍵,非空購(gòu)物車編號(hào)與購(gòu)物車表的用戶編號(hào)關(guān)聯(lián)ProductIdint外鍵,非空商品編號(hào)與商品表的商品編號(hào)關(guān)聯(lián)Quantityint非空數(shù)量5系統(tǒng)實(shí)現(xiàn)5.1注冊(cè)功能實(shí)現(xiàn)過(guò)程:創(chuàng)建用戶表Users,表內(nèi)分別有UserID用戶編號(hào),UserName用戶名,Pwd密碼,Email電子郵箱,Nick昵稱,DeliveryID收貨地址,RoleID身份編號(hào)這7個(gè)列,用戶輸入用戶名,密碼,郵箱,昵稱,選擇身份(買家/賣家)進(jìn)行注冊(cè),這時(shí)數(shù)據(jù)庫(kù)就是一個(gè)添加的過(guò)程,用戶選擇買家,數(shù)據(jù)庫(kù)RoleID身份編號(hào)列就為1,賣家為2,這個(gè)身份編號(hào)在后面登錄時(shí)用來(lái)判斷用戶身份,如果用戶名重復(fù),則后臺(tái)通過(guò)if語(yǔ)句判斷,未重復(fù),數(shù)據(jù)庫(kù)添加賬戶信息成功就通過(guò)Redirect重定向到登錄頁(yè)面。測(cè)試過(guò)程:如圖5-1圖5-2所示圖5-1注冊(cè)頁(yè)面圖5-2跳轉(zhuǎn)到登錄頁(yè)面5.2登錄功能實(shí)現(xiàn)過(guò)程:在有了User表后,用戶登錄輸入賬號(hào)密碼后需要對(duì)輸入的信息進(jìn)行判斷賬號(hào)密碼是否正確,同時(shí)也要判斷當(dāng)前登錄的用戶類型,根據(jù)數(shù)據(jù)庫(kù)RoleID這個(gè)鍵值進(jìn)行判斷,當(dāng)RoleID為1時(shí),用戶是買家,當(dāng)RoleID為2是賣家,判斷結(jié)算后,不同身份的用戶登錄后跳轉(zhuǎn)的頁(yè)面也不同。代碼如下:if(user.RoleId
==
2)
//賣家{MyAuthentication.SetCookie(user.UserName,
user.UserId.ToString(),
"seller");return
Redirect("/Seller/Index");}else(user.RoleId
==
1)
//買家{MyAuthentication.SetCookie(user.UserName,
user.UserId.ToString(),
"user");return
RedirectToAction("Index");}測(cè)試過(guò)程:如圖5-3至圖5-6所示圖5-3用戶登錄圖5-4用戶登錄跳轉(zhuǎn)圖5-5賣家登錄圖5-6賣家登錄跳轉(zhuǎn)5.3商品搜索功能實(shí)現(xiàn)過(guò)程:在控制器Controller里編寫,在View()里添加Where條件進(jìn)行刷選數(shù)據(jù),只能查詢到已上架的商品,商品是否上架通過(guò)商品表的IsApproved來(lái)判定,當(dāng)IsApproved=true就是商品已上架。商品分類查詢也是用相同的方法實(shí)現(xiàn)。代碼如下:{ViewBag.search
=
searchText;return
View(ProductBLL.Get(searchText).Where(c
=>
x.IsApproved
==
true).ToList());}{int
cid
=
id
??
1;ViewBag.category
=
db.Category.Find(id);return
View(db.Product.Where(b
=>
b.CateId
==
cid
&&
s.Approved
==
true).ToList());}測(cè)試過(guò)程:如圖5-7所示圖5-7搜索測(cè)試圖5.4購(gòu)物車與結(jié)算功能實(shí)現(xiàn)過(guò)程:當(dāng)用戶第一次打開自己的購(gòu)物車時(shí),數(shù)據(jù)庫(kù)的購(gòu)物車表會(huì)創(chuàng)建這個(gè)用戶的購(gòu)物車信息,購(gòu)物車編號(hào)為自增,用戶編號(hào)用戶表的UserId的外鍵。用戶將搜索到的商品添加到購(gòu)物車時(shí),系統(tǒng)會(huì)在商品表里查詢到已添加商品的商品編號(hào),將商品編號(hào)存到購(gòu)物車詳情表的ProductId列,將添加的商品數(shù)量存到購(gòu)物車詳情表的Quantity列。將購(gòu)物車表的購(gòu)物車編號(hào)存在購(gòu)物車詳情表的CartId列。用戶再打開購(gòu)物車,系統(tǒng)就能根據(jù)購(gòu)物車詳情表的購(gòu)物車編號(hào)查詢到購(gòu)物車內(nèi)的商品信息。在進(jìn)行結(jié)算時(shí),系統(tǒng)會(huì)判斷價(jià)格是否為空,判斷庫(kù)存是否充足,然后對(duì)訂單的價(jià)格進(jìn)行結(jié)算,產(chǎn)生訂單,并將訂單信息存在訂單表里,用戶支付后,賣家就會(huì)收到訂單信息。代碼如下:order=newOrders(){UserId=uid,DeliveryID=user.DeliveryID,Orderdate=DateTime.Now.Date,Users=user};car.CartItems.ToList().ForEach(x=>{OrdersDetaildetail=newOrdersDetail();detail.ProductId=x.ProductId;detail.Quantity=x.Quantity;detail.Product=x.Product;order.OrdersDetail.Add(detail);});ViewBag.Total=SumTotal();//計(jì)算總價(jià)TempData["Total"]=SumTotal();//計(jì)算總價(jià)..TempData["orderdtail"]=order.OrdersDetail.ToList();}intuserId=int.Parse(MyAuthentication.GetUserId());if(userId==0)returnnewCart();Cartcar=db.Cart.FirstOrDefault(x=>x.UserId==userId);if(car==null){car=newCart();car.UserId=userId;car.CartItems=newList<CartItems>();//保存購(gòu)物車(臨時(shí)訂單)用戶信息db.Cart.Add(car);db.SaveChanges();}測(cè)試過(guò)程如圖5-8至圖5-11所示圖5-8用戶添加商品到購(gòu)物車圖5-9用戶填寫訂單信息圖5-10用戶支付頁(yè)面圖5-11用戶支付成功后跳轉(zhuǎn)頁(yè)面5.5賣家發(fā)貨功能實(shí)現(xiàn)過(guò)程:用戶支付成功后,會(huì)生成一個(gè)未發(fā)貨的訂單,賣家在訂單管理頁(yè)面進(jìn)行發(fā)貨,進(jìn)入訂單管理頁(yè)面后,后臺(tái)會(huì)根據(jù)訂單編號(hào)在數(shù)據(jù)庫(kù)訂單表Orders里查詢與此訂單編號(hào)相對(duì)應(yīng)的訂單信息。代碼如下:Orderr=db.Order.Include("Order").Where(t=>t.OrderID==id).FirstOrDefault();returnView(r);在賣家看到訂單信息后,會(huì)進(jìn)行發(fā)貨,通過(guò)更改數(shù)據(jù)庫(kù)訂單表order里訂單狀態(tài)State的值來(lái)實(shí)現(xiàn)。代碼如下:Orderr=db.Order.Find(id);o.States=2;db.SaveChanges();returnRedirect("/Orders/SellerOrders");測(cè)試過(guò)程如圖5-12所示圖5-12賣家發(fā)貨圖5.6售后功能實(shí)現(xiàn)過(guò)程:在買家個(gè)人中心頁(yè)面,所有的訂單會(huì)根據(jù)訂單表Orders的狀態(tài)States列的數(shù)值分為未付款,已付款,已發(fā)貨這3個(gè)狀態(tài)。代碼如下:ViewBag.nopay=db.Orders.Include(t=>t.Delivery).Where(t=>t.UserId==myid&&t.States==0).OrderByDescending(t=>t.OrdersID).ToList();已付款ViewBag.nosend=db.Orders.Include(t=>t.Delivery).Where(t=>t.UserId==myid&&t.States==1).OrderByDescending(t=>t.OrdersID).ToList();//已發(fā)貨ViewBag.noconfirm=db.Orders.Include(t=>t.Delivery).Where(t=>t.UserId==myid&&t.States==2).OrderByDescending(t=>t.OrdersID).ToList();買家確認(rèn)收貨后,商品出現(xiàn)問(wèn)題可以在個(gè)人中心的售后頁(yè)面申請(qǐng)售后,在售后頁(yè)面后臺(tái)會(huì)通過(guò)多表連接查詢的方式查詢出商品的所有信息,買家填寫完申請(qǐng)信息后,發(fā)起售后請(qǐng)求,訂單表Orders的狀態(tài)States就會(huì)變?yōu)?(售后狀態(tài))代碼如下:vardetail=db.OrdersDetail.Include("Product").FirstOrDefault(t=>t.DetailID==model.DetailID);varorder=db.Orders.FirstOrDefault(t=>t.OrdersID==detail.OrdersID);model.OrderId=detail.OrdersID;model.AddTime=DateTime.Now;model.LastUpdateTime=DateTime.Now;model.Status="等待處理";detail.States=6;//售后狀態(tài)order.States=6;//售后狀態(tài)if(ModelState.IsValid){db.AfterSale.Add(model);db.SaveChanges();}賣家收到售后請(qǐng)求后點(diǎn)開賣家頁(yè)面,后臺(tái)根據(jù)訂單編號(hào)查詢出所屬訂單信息,賣家同意通過(guò)售后,售后表中的IsApproved列的值變?yōu)閠rue表示通過(guò),訂單表order中的狀態(tài)States變?yōu)?代表售后已通過(guò)狀態(tài),如果未通過(guò),則IsApproved為默認(rèn)值False,States為3未通過(guò)。代碼如下:if(model.IsApprove==true){detail.States=7;order.States=7;}else{detail.States=3;order.States=3;}db.SaveChanges()。測(cè)試過(guò)程如圖5-13至5-19所示圖5-13確認(rèn)收貨圖5-14訂單狀態(tài)變化圖5-15申請(qǐng)售后圖5-16買家售后狀態(tài)頁(yè)面圖5-17賣家售后服務(wù)頁(yè)面圖5-18賣家售后處理頁(yè)面圖5-19買家售后狀態(tài)頁(yè)面5.7評(píng)價(jià)功能實(shí)現(xiàn)過(guò)程:用戶確認(rèn)收貨后,可以在訂單信息中對(duì)商品進(jìn)行評(píng)價(jià),后臺(tái)會(huì)根據(jù)訂單里的商品編號(hào)ProductID在評(píng)論表Appraise里查詢出需要評(píng)價(jià)的商品,用戶進(jìn)行評(píng)論保存就是一個(gè)數(shù)據(jù)庫(kù)添加的過(guò)程,后臺(tái)用添加語(yǔ)句將評(píng)論框里的數(shù)據(jù)添加到評(píng)論表Appraise中。代碼如下:ViewBduct=db.Product.Include("raise").FirstOrDefault(t=>t.ProductId==appraise.ProductId);ViewBag.Error="請(qǐng)輸入評(píng)論信息";returnView();intuid=Convert.ToInt32(MyAuthentication.GetUserId());ViewBduct=db.Product.Include("raise").FirstOrDefault(t=>t.ProductId==appraise.ProductId);appraise.RateTime=DateTime.Now;appraise.UserId=uid;if(ModelState.IsValid){db.raise.Add(appraise);db.SaveChanges();}用戶在評(píng)論后可以在我的評(píng)價(jià)頁(yè)面查看自己所有的評(píng)論,并且可以對(duì)自己的評(píng)論進(jìn)行修改和編輯。測(cè)試過(guò)程:如圖5-20至5-21所示圖5-20用戶添加評(píng)論圖5-21用戶查看評(píng)論5.8商品上下架功能實(shí)現(xiàn)過(guò)程:賣家上架新商品,填寫完商品信息,需要通過(guò)后臺(tái)的管理員審核,管理員審核通過(guò)后,商品才可以上架,上架和下架功能通過(guò)更改數(shù)據(jù)庫(kù)商品表的是否在售列IsOnsale的值來(lái)實(shí)現(xiàn),true表示上架,false表示下架。代碼如下:{Productpro=db.Product.Where(n=>n.ProductId==id).FirstOrDefault();pro.IsOnsale=true;db.SaveChanges();returnContent("<script>alert('上架成功');window.location.href='/Products/SellerProduct';</script>");}{Productpro=db.Product.Where(n=>n.ProductId==id).FirstOrDefault();pro.IsOnsale=false;db.SaveChanges();returnContent("<script>alert('下架成功');window.location.href='/Products/SellerProduct';</script>");}測(cè)試過(guò)程如圖5-22至圖5-25所示圖5-22上架商品頁(yè)面圖5-23填寫上架商品信息圖5-24審核通過(guò)圖5-25審核通過(guò)后商城首頁(yè)5.9商品審核功能實(shí)現(xiàn)過(guò)程:管理員通過(guò)管理員賬號(hào)登錄后臺(tái)管理系統(tǒng),在商品管理頁(yè)面可以對(duì)賣家需要上架的商品進(jìn)行審核,管理員審核商品通過(guò)數(shù)據(jù)庫(kù)商品表Product中IsApproved列來(lái)判定,審核通過(guò)IsApproved的值為true,審核不通過(guò)為False代碼如下:Productpro=db.Product.Where(n=>n.ProductId==ProductId).FirstOrDefault();pro.IsApproved=IsApprove;pro.ApproveNote=ApproveNote;db.SaveChanges();測(cè)試過(guò)程:如圖5-26至圖5-29所示圖5-26管理員商品管理頁(yè)面圖5-27管理員審核信息頁(yè)面圖5-28管理員審核通過(guò)圖5-29商城首頁(yè)5.10訂單管理功能實(shí)現(xiàn)過(guò)程:訂單管理功能可以查看商城所有的訂單狀態(tài),包括未付款,已付款,已發(fā)貨,已收貨,售后中,已退貨/換貨,已關(guān)閉。根據(jù)商品表Product的狀態(tài)States數(shù)值分類來(lái)實(shí)現(xiàn)。測(cè)試過(guò)程如圖5-30至圖5-35所示圖5-30未付款訂單圖5-31已付款訂單圖5-32已發(fā)貨訂單圖5-33已收貨訂單圖5-34售后中訂單圖5-35已退貨/換貨訂單5.11促銷資訊管理功能實(shí)現(xiàn)過(guò)程:促銷資訊管理要先在數(shù)據(jù)庫(kù)里創(chuàng)建一個(gè)促銷資訊表News,表里分別有資訊編號(hào)NewsID,標(biāo)題Title,促銷類型Ntypes,內(nèi)容Content,圖片鏈接PhotoUrl,發(fā)布時(shí)間PushTime,狀態(tài)States這7個(gè)列,在添加促銷資訊時(shí),需要用到Add語(yǔ)句。添加成功后默認(rèn)可以在商城首頁(yè)展示,管理員也可以對(duì)所選中資訊進(jìn)行置頂處理,通過(guò)促銷資訊表News的狀態(tài)States列來(lái)判定,當(dāng)States為1時(shí),選中的資訊不置頂,為0時(shí)置頂,默認(rèn)為0。代碼如下:if(ModelState.IsValid){if(PhotoUrl!=null){news.PhotoUrl="/images/"+PhotoUrl.FileName;PhotoUrl.SaveAs(Server.MapPath(news.PhotoUrl));}news.PushTime=DateTime.Now;news.States=1;}db.News.Add(news);db.SaveChanges();測(cè)試過(guò)程:如圖5-36至5-38所示圖5-36后臺(tái)促銷資訊管理圖5-37商城首頁(yè)促銷資訊輪播圖1圖5-38商城首頁(yè)促銷資訊輪播圖25.12
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 紡絲凝固浴液配制工崗前保密考核試卷含答案
- 流體裝卸操作工崗前崗位考核試卷含答案
- 獸用中藥制劑工班組安全水平考核試卷含答案
- 2025年年樂(lè)高教育項(xiàng)目合作計(jì)劃書
- 2025年中高壓及特殊性能玻璃鋼管項(xiàng)目合作計(jì)劃書
- 班主任教師培訓(xùn)課件內(nèi)容
- 2026年柔性直流輸電項(xiàng)目營(yíng)銷方案
- 2026年年度學(xué)校辦公室主任工作總結(jié)
- 2025年人工智能綜合試題及答案
- 幼兒園校園欺凌事件強(qiáng)制報(bào)告制度規(guī)定
- 心理科治療咨詢方案模板
- (2021-2025)5年高考1年模擬物理真題分類匯編專題04 機(jī)械能守恒、動(dòng)量守恒及功能關(guān)系(廣東專用)(解析版)
- 2025年車間核算員考試題及答案
- 2026年高考作文備考之提高議論文的思辨性三大技法
- 南寧市人教版七年級(jí)上冊(cè)期末生物期末考試試卷及答案
- 項(xiàng)目安全生產(chǎn)管理辦法
- 小學(xué)美術(shù)科組匯報(bào)
- 手術(shù)室膽囊結(jié)石護(hù)理查房
- 2024年江西新能源科技職業(yè)學(xué)院公開招聘輔導(dǎo)員筆試題含答案
- 機(jī)械門鎖維修施工方案
- QGDW10384-2023輸電線路鋼管塔加工技術(shù)規(guī)程
評(píng)論
0/150
提交評(píng)論