




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1摘要對于校園內公共資源有限,學生數量增多等問題,該文設計了基于微信小程序的學生預約系統,用戶使用該小程序可以查看預約項目、及時預約并查看自己的預約情況。管理員可以在后臺進行預約項目的管理和預約記錄的查看。本系統共實現以下功能:注冊登陸、通知公告、生活繳費、預約功能、預約記錄、繳費記錄以及后臺管理。本系統的客戶端使用微信開發者工具進行開發,使用微信的標簽語言WXML和樣式語言WXSS、JavaScript等前端技術使用戶界面更加美觀;服務端則是基于SSM框架開發,將MySQL作為數據源,使得開發效率更加高效。[關鍵詞]:微信小程序;SSM框架;JavaScript;第一章緒論1.1選題研究背景國家近幾年一直在呼吁各個高校開展智慧校園的計劃。同時,現在智能手機的普及和城市網絡基礎建設的逐步覆蓋,推動了微信小程序的誕生。2017年,騰訊在微信內上線微信小程序,其自身特有的無需安裝、加載迅速、用完即走、操作簡單的優點在上線之初就廣大用戶的喜愛,結合當今的移動支付技術的發展,衍生出許多不同的預約系統,比如醫院的網上預約掛號、機場車站的網上預約,都給人們的生活帶來了極大的便利。隨著使用人數的增多,微信小程序已經由當初的開發工具演變為一個獨立的生態系統,用戶可以在此生態內體驗到各種各樣的生活服務。1.2選題目的在信息化的時代,人們對環境的碎片化使用需求愈來愈大,傳統App需要用戶自行下載,且開發周期較長,成本較高。于是輕量化的微信小程序隨之產生,其簡潔的使用方式,良好的使用體驗、豐富的使用場景讓人們的生活更加的方便快捷。本課題的目的是將微信小程序和學生預約結合起來,設計并實現一個學生預約系統,緩解校園內公共資源緊張的問題,提高資源使用率,提升管理效率。1.3選題主要內容基于目前社會大環境和人們生活發展水平,這次研究選擇的主要內容和方向為:微信小程序前端界面的設計,后端基于SSM框架的搭建,前后端數據的交互。在系統開發之前,本人做了一些相關的研究和調查:查閱相關資料、了解類似系統的設計方式、了解相關的業務流程、調查用戶的實際需求、了解目前主流的JavaWeb開發技術、查閱數據庫設計相關資料。而后確立了系統的整體需求和需求分析。本次開發遵守軟件工程的開發模式,使用敏捷軟件開發思想,實行周期性交付機制。在本系統中,核心模塊主要有:用戶在前端在已有的預約功能內實現預約;用戶在前端進行預約項目的繳費;用戶在查看自己的預約記錄;管理員在后端實現預約功能的添加、查看用戶預約記錄和繳費記錄。1.4本文組織結構第一章緒論。本章主要介紹了學生預約系統這一選題的研究背景、研究目的和主要內容。第二章相關概念和技術基礎。本章介紹了課題的相關概念,系統在前端開發過程中用到的MINA框架和后端開發中用到的SSM框架。第三章系統需求分析。本章敘述了用戶和管理員的功能需求分析;將各個功能模塊的操作流程用流程圖展示出來。第四章系統的設計。本章介紹了系統的幾個核心模塊的功能模塊設計和數據庫設計。第五章系統實現與測試。使用了軟件測試中的一種常見方法——黑盒測試,并設計了測試用例來測試系統的功能。第六章總結與展望,主要介紹了在設計結束后的個人總結與改進之處,展望以后所研究的工作。
第二章相關概念和技術基礎2.1課題的相關概念近幾年來,隨著國家的發展使得愈來愈多的學生能夠踏入大學,繼續接受深造。大學校園不僅僅是一塊用來學習的地方,逐步演變成一個多元、豐富的社區。大學校園是一個培養學生健康體魄和個性的場所,作為管理人員應當充分利用校園內已有的資源來盡最大的可能滿足大學生的需求。在中學時往往是通過老師的組織去參加學校的某項活動,但大學校園的人口數量多、校園資源有限,這時候就需要結合當今較為熱門的科學技術來解決這些問題,使用微信小程序結合SSM框架來進行相關的服務預約就是一個不錯的想法。主要的優勢在:(1)微信小程序作為當今熱度較高的技術,其用完即走、快速加載的優勢,讓廣大的用戶感受到科技帶來的便利。(2)傳統的組織形式在大學校園中顯得有點力不從心,因為班級數量和學生數量的增多使得傳統的管理模式費時又費力,所以使用數據庫和后端管理就讓管理者的效率大大提高。(3)當小程序真正帶給學生便利時,一些對新技術有著興趣的學生就會開始研究,想去開發一個屬于自己的微信小程序,這對學生個人拓展實踐能力有著一定的幫助。2.2相關技術基礎2.2.1MINA框架小程序使用的MINA框架,核心是響應數據綁定,目的是讓開發者能用簡單、高效的方式進行設計開發。整個框架由視圖層(View)和邏輯層(AppSerivce)這兩部分組成,這樣使得數據和視圖實現簡單同步。只要開發者在邏輯層內修改數據,相應的視圖層就能做出響應并及時更新。圖2-1MINA框架圖如圖2-1所示,MINA框架封裝微信客戶端提供的一些基礎功能,使用JSBridge將Native系統層與上層連接,提供JSAPI,讓開發者能通過API使用原生功能,快速搭建小程序??蚣艹绦蛲ㄟ^一個app來描述整體程序和多個page來描述頁面。一個框架程序主體由3個文件構成,放在項目的根目錄下,如表2-1所示:表2-1程序主體結構表文件是否必需意義app.js是小程序邏輯app.json是小程序公共配置app.wxss否小程序公共樣式一個框架頁面由4個文件組成,如表2-2所示:表2-2程序頁面結構表文件類型是否必需意義js是頁面邏輯wxml是頁面結構wxss否頁面樣式表json否頁面配置2.2.2SSM框架SSM框架是標準的MVC模式,經常用來開發數據源簡單的Web項目,對比之前的SSH框架更加靈活,是當今較主流的JavaWeb開發項。其框架圖,如圖2-2所示。圖2-2SSM框架圖Spring框架一種以IoC和AOP為核心的輕量級開放源代碼框架,為SpringMVC提供了集成功能;在持久層可以將MyBatis整合;在業務層可以處理事務。可以說Spring貫穿各層并將它們整合。SpringMVC框架一個實現MVC設計思想的輕量級Web框架,難度相比于Struts2更加簡單。它將控制器、模型對象、分配器這三者分開,使每一部分都更容易定制,從而靈活組合為一個系統。MyBatis框架持久層使用的MyBatis采取ORM的思想,通過封裝JDBC,使用XML或注解來配置相關文件等方式,讓開發人員更容易對數據庫進行持久化操作。2.2.3數據庫MySQL是一種關系型數據庫管理系統,它是當今數據庫管理的主流。為加快處理數據的速度,它在不同的表中有計劃地存儲數據。因為其對外開源的優點,所以開發成本低,許多中小企業及個人都會選擇MySQL。同時,MySQL還支持SQL規范數據語言形式,支持JDBC等多種數據庫連接方式,支持多種Java、Python、C等多種編程語言。第三章系統需求分析3.1系統用戶定義本系統作為一個在線預約的平臺,用戶主要被分類為兩種:學生:作為系統使用的主體,在系統中可以查看管理者發布的通知公告,可以對系統已有的預約項目進行預約,并且能夠隨時查看自己的預約記錄,對已結束、需要繳費的預約項目可以進行繳費。管理員:作為預約的管理者,可以在后端發布新的預約項目:設定數量、預約價格、預約描述;上傳相關的圖片和文字用來更新首頁公告,也可以查看已有項目的預約情況、繳費情況、用戶預約記錄。3.2系統功能模塊3.2.1學生功能模塊游客進入微信小程序預約系統后,可以瀏覽主頁內容。若要點擊主頁中的任一功能模塊時,系統提示用戶先注冊或登錄:學生注冊后,可以使用注冊時所登記的手機號碼、密碼進行登錄。注冊登錄后,可以進行通知公告的查看、進行已有預約項目的預約、預約記錄的查看、預約之后的繳費和自己的繳費記錄。圖3-1學生在系統中的用例圖1.用戶注冊功能(1)功能說明游客打開微信小程序后,當點擊任一功能時,頁面提示用戶需要注冊賬戶。填寫學生的手機號、姓名、性別、宿舍號、密碼等信息。(2)流程圖圖3-2用戶注冊流程圖2.用戶登錄功能(1)功能說明進入登錄界面,輸入用戶的手機號和密碼后,點擊登錄按鈕。驗證成功則系統會彈出“登陸成功”,驗證失敗則彈出“登錄失敗”。(2)流程圖圖3-3用戶登錄流程圖3.用戶預約功能(1)功能說明用戶點擊“校園預約”按鈕,可以查看所有的預約功能,點擊其中的預約項目,可以查看詳情、剩余數量、價格等信息。(2)流程圖圖3-4用戶預約流程圖4.用戶繳費功能(1)功能說明用戶點擊“生活繳費”,小程序跳轉到二級頁面,選擇繳費項,輸入繳費金額,再點擊“繳費”按鈕,彈出“繳費成功”即表示繳納費用成功。(2)流程圖圖3-5用戶繳費流程圖3.2.2管理員功能模塊管理員在后端使用已有的賬號、密碼登陸成功后,可以在賬戶設置里查看個人信息并修改;然后管理員可以在小程序管理中進行通知公告的管理和預約項目的管理;最后可以在小程序數據查詢中查看用戶的繳費記錄和用戶的預約記錄。圖3-6管理員在系統中的用例圖1.管理員登陸功能(1)功能說明管理員根據現有賬號登陸到后臺管理界面。(2)流程圖圖3-7管理員登錄流程圖2.管理員發布通知(1)功能說明管理員根據現有賬號登陸到后臺管理界面后。選擇通知公告管理,并點擊“增加”按鈕,填寫公告的相關信息,上傳相應的內容和圖片后。點擊“提交”按鈕,即發布了一篇新的通知公告。(2)流程圖圖3-8管理員發布通知流程圖3.管理員修改通知(1)功能說明管理員根據現有賬號登陸到后臺管理界面后,點擊通知公告管理并選擇某一通知公告,點擊“修改”按鈕,選擇指定的公告信息,就可對該項通知公告進行修改并發布。(2)流程圖圖3-9管理員修改通知流程圖4.管理員刪除通知(1)功能說明管理員根據現有賬號登陸到后臺管理界面后,點擊通知公告管理并選擇某一通知公告,點擊“刪除”按鈕,選擇指定的公告信息,就可對該項通知公告進行刪除。(2)流程圖圖3-10管理員刪除通知流程圖5.管理員發布預約(1)功能說明管理員根據現有賬號登陸到后臺管理界面后,選擇預約項目管理并點擊“添加”按鈕,填寫相應的信息,上傳相應的內容和圖片后點擊“提交”按鈕,即增加了一個新的預約項目。(2)流程圖圖3-11管理員發布預約流程圖6.管理員修改預約(1)功能說明管理員根據現有賬號登陸到后臺管理界面后,點擊預約項目管理并選擇某一預約,點擊“修改”按鈕,選擇指定的預約項目,就可對該預約項目進行修改并發布。(2)流程圖圖3-12管理員修改預約流程圖7.管理員刪除預約(1)功能說明管理員根據現有賬號登陸到后臺管理界面后,點擊預約項目管理并選擇某一預約,點擊“刪除”按鈕,選擇指定的預約項目,就可對該預約項目進行刪除。(2)流程圖圖3-13管理員刪除預約流程圖8.管理員查詢繳費(1)功能說明管理員根據現有賬號登陸到后臺管理界面后,點擊繳費查詢就可看見所有用戶的繳費項目、繳費金額、繳費時間等信息,點擊“刷新”按鈕即可刷新當前頁面數據。(2)流程圖圖3-14管理員查詢繳費流程圖9.管理員查詢預約(1)功能說明管理員根據現有賬號登陸到后臺管理界面后,點擊預約查詢就可看見所有用戶的預約項目、預約時間、預約人姓名等信息,點擊“刷新”按鈕即可刷新當前頁面數據。(2)流程圖圖3-15管理員查詢預約流程圖3.3非功能需求3.3.1響應速度要求系統能對用戶的不同操作做出快速響應,不該讓用戶等待太多的時間。3.3.2出錯處理當用戶操作不當時或系統出現錯誤時,系統能給出友好、簡明的提示并提供相應正確的指引。3.3.3用戶界面用戶界面是用戶與機器之間溝通交流的層面,好的用戶界面應該有實用、美觀、易用等特點。所以在開發過程中無論是小程序端還是后臺管理端,都應該遵循相關的設計規范,讓用戶體會到樂趣,減少因為界面問題所帶來的投訴、咨詢等不必要的麻煩,讓軟件的操作變得簡單、舒適。3.3.4性能需求并發要求:要求支持較高級的并發量,在最高負載的狀態下系統不能出現異常情況。事務并發:允許多地、多用戶、多事務并發,在系統高壓時不能響應過長的時間。數據庫操作:用戶在瀏覽器發起的每次請求所觸發的相應SQL操作不能大于4條。3.3.5硬件的限制1.支持目前普遍使用的Android、iOS系統和PC操作系統。2.支持最低手機配置:Android:Android4.0以上iPhone、iPad:iOS6.1以上CPU:1000MHzROM:1024MBRAM:1000MHz3.支持最低PC配置:處理器:1GHz32/64位雙核內存:1GB(32位)/2GB(32位)硬盤:16G顯卡:帶WDDM驅動的DirectX9圖形設備3.3.6安全性1.當數據庫數據泄露時,不該暴露用戶、管理員的賬戶和密碼。2.當后端上傳文件時,若遇到木馬和病毒問題時,系統應當拒絕進行上傳。3.當使用API調用數據時,通信應用HTTPS來確保其安全性。3.3.7可維護性系統設計結構要清楚簡明,方便開發人員在后期對系統進行維護、修復系統故障等操作。避免大段的代碼,滿足高內聚、低耦合的要求編程風格保持一致,代碼能夠清晰表達意圖,能夠讓開發人員快速看懂。3.3.8其他需求用戶操作需求,具體如下:(1)要求操作簡單明了,適用人群廣。(2)用戶可以清晰的看到系統處理后的結果。3.4本章小結本章主要介紹了預約系統的需求分析,對不同角色的功能需求進行了詳細的分析,同時結合流程圖對各個功能模塊進行了流程演示。第四章系統設計4.1總體功能設計 本系統的用戶端主要功能模塊包括:查看首頁、預約功能、查看個人中心,如圖4-1所示:圖4-1用戶端的系統功能圖管理員端的主要功能模塊包含公告管理、預訂管理、查看預約、查看賬單,如圖4-2所示:圖4-2管理員端的系統功能圖4.2系統架構設計該系統后臺的架構圖,如下圖所示:圖4-3系統架構圖4.3數據庫設計4.3.1設計簡介本系統采用是MySQL數據庫,使用NavicatforMySQL作為數據庫可視化工具,在分析用戶端的功能模塊后,確定主要實體及其屬性和關系,并使用E-R圖體現出來。本系統的實體包括大學生、管理員、預約項目、繳費情況、公告,如圖4-4到圖4-8所示。圖4-4學生實體屬性圖4-5管理員實體屬性圖4-6項目實體屬性圖4-7通知實體屬性圖4-8繳費實體屬性4.3.2數據庫E-R模型 根據實體之間的關系:(1)每個學生可預約多個項目,每個項目可以讓多個學生報名預約,二者是n:m的關系;(2)每個學生查看多個通知,每個通知可讓多個學生查看,兩者是n:m的關系??梢垣@得系統的E-R圖,如圖4-9所示:圖4-9數據庫E-R模型圖4.3.3數據表物理視圖 根據學生預約系統的功能需求并結合圖4-9的數據庫E-R模型,采用數據表的格式展現其部分關系表。1.預約項目信息表如表4-1所示,id為該表的唯一主鍵。表4-1預約項目信息表字段名稱字段含義數據類型id項目idintgoods_title項目名稱varchargoods_desc項目描述varchargoods_img相關圖片varchargoods_price金額doubletime發布時間datatime2.通知公告信息表如表4-2所示:表4-2通知公告信息表字段名稱字段含義數據類型id公告idintauthor作者varcharcontent內容varcharimg相關圖片varchartitle標題varchartime發布時間datatime4.5本章小結本章主要對學生預約系統的系統結構、數據庫進行介紹,并用E-R圖展示系統中部分實體間的關系。第五章系統實現與測試5.1系統總體框架本系統的客戶端是基于微信的MINA框架開發,使用微信標簽語言WXML、樣式語言WXSS、JavaScript和有關API實現界面設計和有關功能。在服務器端使用SSM框架開發。數據庫使用MySQL,通過本地通信即本機IP地址來實現前后端數據的交互,通過預約項目、項目繳費等業務邏輯操作,實現客戶端和服務端的數據請求和處理。5.2搭建項目框架小程序項目的目錄框架圖,如圖5-1所示:圖5-1小程序項目目錄后臺管理項目的目錄框架圖,如圖5-2所示:圖5-2后臺管理項目目錄系統數據庫的結構,如圖5-3所示:圖5-3數據庫結構圖5.3小程序端系統實現5.3.1用戶注冊實現(1)功能實現分析小程序端與管理員端的數據傳遞是通過后臺接口實現的。當小程序端需要存儲用戶信息的數據時,請求被發送到服務器端,調用UserApi接口獲取數據,然后根據返回的結果進行響應。(2)代碼實現微信小程序端觸發JS事務,JS事務觸發后調用RegisterUser方法,并傳遞參數,相關代碼如下:RegisterInfo:function(e){e.detail.value.roomId=e.detail.value.buildingNumber+e.detail.value.unitNumber+e.detail.value.roomNumberconsole.log(e.detail.value);varjson=JSON.stringify(e.detail.value)console.log("RegisterInfojson:"+json)console.log("url:"+app.getHeader()+'/SheQu/RegisterUser')wx.request({url:app.getHeader()+'/SheQu/registerUser',//拼接接口地址method:'post',data:json,contentType:'application/json',success(res){console.log('res:'+res)if(res.data=="success"){wx.showToast({title:'注冊成功',icon:'success',duration:2000})}else{wx.showToast({title:'注冊失敗',duration:1000,icon:'none'})}}})},在方法調用之后,調用服務器上的UserApi接口請求,并將請求地址拼接,根據地址調用后臺接口。request請求接口向該地址發起,服務器根據請求地址和數據做出響應,這里調用了RegisterUser方法,從而進行用戶的注冊功能,此處的請求地址為72:8080/SheQu/registerUser。服務端的相應API代碼如下:@ResponseBody@RequestMapping(value="/registerUser",method=RequestMethod.POST)publicStringRegisterUser(@RequestBodyMapmap){System.out.println(map.toString());map.put("uid",RandNum.getGUID());intn=userService.insertUser(map);if(n>0){return"success";}return"failure";}相應XML文件代碼如下:<insertid="insertUser">insertintouser(uid,name,gender,buildingNumber,unitNumber,roomNumber,phone_number,pwd,roomId) values(#{uid},#{name},#{gender},#{buildingNumber},#{unitNumber},#{roomNumber},#{phone_number},#{pwd},#{roomId})</insert>(3)運行結果注冊成功的運行結果,如圖5-4所示:圖5-4注冊運行結果圖 5.3.2用戶登陸實現(1)功能實現分析小程序端與管理員端的數據傳遞是通過后臺接口實現的,當小程序端需要驗證用戶信息時,請求被發送到服務器端,調用UserApi接口獲取數據,然后根據返回的結果進行響應。(2)代碼實現微信小程序端觸發JS事務,JS事務后調用userLogin方法,并傳遞參數,相關代碼如下:UserLogin:function(e){varjson=JSON.stringify(e.detail.value)console.log("userlogin:"+json)wx.request({url:app.getHeader()+'/SheQu/userLogin',//拼接接口地址method:'post',data:json,contentType:'application/json',success(res){console.log('res.data:'+res.data)app.globalData.uid=res.dataif(res.data!="failure"){wx.showToast({title:'登錄成功',icon:'success',duration:2000})}else{wx.showToast({title:'登錄失敗',duration:1000,icon:'none'})}}})},在方法調用后,調用服務器上的UserApi接口請求,并將請求地址拼接,根據地址調用后臺接口。request請求接口向該地址發起,服務器根據請求地址和數據做出響應,這里調用了userLogin方法,從而進行用戶的登陸功能,服務端的相應API代碼如下:@ResponseBody@RequestMapping(value="/userLogin",method=RequestMethod.POST)publicStringuserLogin(@RequestBodyMapmap){System.out.println(map.toString());Stringuid=userService.findUidByPNumAndPwd(map);if(uid!=null){returnuid;}return"failure";}相應XML文件代碼如下:<selectid="findUidByPNumAndPwd"resultType="String">selectuidfromuserwherephone_number=#{phone_number}andpwd=#{pwd}</select>(3)運行結果登錄成功的運行結果,如圖5-5所示:圖5-5登錄運行結果圖5.3.3用戶預約實現(1)功能實現分析用戶在小程序端點擊校園預約后,跳轉到二級頁面可看到所有的預約項目,點擊詳情后即可進行預約。此過程調用服務端的GoodsApi和GoodsPayApi兩個接口。(2)代碼實現微信小程序端觸發JS事務,JS事務觸發后調用findAllGoods、insertBuyGoods方法,并傳遞參數。相應代碼如下:wx.request({url:app.getHeader()+'/SheQu/findMyGoods',method:'GET',header:{'content-type':'application/json;charset=UTF-8'},data:{"uid":app.globalData.uid},success:function(res){that.setData({list:res.data,gl:app.getHeader()+'/SheQu/img'})},fail(){console.log('xxsad')}})}wx.request({url:app.getHeader()+'/SheQu/findPayByUid',method:'POST',header:{'content-type':'charset=utf-8'},data:{"uid":app.globalData.uid},success:function(res){that.setData({list:res.data})},fail(){console.log('xxsad')}})}方法調用后,調用服務器接口請求,并將請求地址拼接,根據地址調用后臺接口。request請求接口向該地址發起,服務器根據請求地址和數據做出響應,這里調用了findAllGoods方法和insertBuyGoods方法,從而進行用戶的預約功能。服務端的相應API代碼如下:@ResponseBody@RequestMapping(value="/insertBuyGoods")publicStringinsertBuyGoods(@RequestBodyMapmap){intn=goodsPayService.insertBuyGoods(map);if(n>0){return"success";}return"failure";}@ResponseBody@RequestMapping(value="/findAllGoods",produces="application/json;charset=UTF-8")publicStringfindAllGoods(){List<Goods>goods=goodsService.findAllGoods();Stringresult=JSON.toJSONString(goods);System.out.println(result);returnresult;}相應的XML文件代碼如下:<insertid="insertBuyGoods">insertintogoodspay(goods_id,uid)values(#{goods_id},#{uid})</insert><selectid="findAllGoods"resultType="com.shequ.pojo.Goods">select,g.*fromgoodsginnerjoinadminaong.publisher_id=a.account</select>(3)運行結果注冊成功的運行結果,如圖5-6所示::圖5-6預約運行結果圖5.4服務端系統實現5.3.1預約管理實現(1)功能實現分析管理員登陸后可管理小程序端中的功能模塊,如預約項目管理。(2)代碼實現 GoodController控制層:添加預約項目代碼如下:@ResponseBody@RequestMapping(value="/insertGoods")publicStringinsertGoods(@RequestBodyMapmap){Datedate=newDate();map.put("publish_time",date);Stringgoods_id=RandNum.getGUID();map.put("goods_id",goods_id);System.out.println("map:"+map.toString());intn=goodsService.insertGoods(map);if(n>0){return"success";}return"failure";}GoodService服務層:添加預約項目代碼如下:publicinterfaceGoodsService{List<Goods>findAllGoods();GoodsfindGoodsById(Stringid);List<Goods>findAllGoodsByPages(intsatrt,intpagesize);intdeleteGoodsById(Stringgoods_id);intupdateGoodsById(Mapmap);intinsertGoods(Mapmap);}GoodsServiceImpl實現層:添加預約項目代碼如下:@OverridepublicintinsertGoods(Mapmap){returngoodsMapper.insertGoods(map);} GoodsMapper映射層:添加預約項目代碼如下:<insertid="insertGoods">insertintogoods(goods_id,goods_title,goods_desc,goods_img,goods_price,publisher_id,publish_time)values(#{goods_id},#{goods_title},#{goods_desc},#{goods_img},#{goods_price},#{publisher_id},#{publish_time})</insert>(3)運行結果預約添加成功的運行結果,如圖5-7所示:圖5-7添加預約運行結果圖5.3.2查詢管理實現(1)功能實現分析管理員登陸后查看小程序端中的數據記錄,如預約查詢。(2)代碼實現 GoodPayController控制層,代碼如下:@ControllerpublicclassGoodsPayController{@AutowiredGoodsPayServicegoodsPayService;@ResponseBody@RequestMapping(value="/findAllGoodsPayByPage",produces="application/json;charset=UTF-8")publicStringfindAllGoodsPayByPage(@RequestParam("limit")Stringlimit,@RequestParam("page")Stringpage){intstart=(Integer.parseInt(page)-1)*Integer.parseInt(limit);intpageSize=Integer.parseInt(limit);List<Goods>goods=goodsPayService.findAllGoodsPayByPage(start,pageSize); List<Goods>goodsAll=goodsPayService.findAllGoodsPay();Layuil=Layui.data(goodsAll.size(),goods);Stringresult=JSON.toJSONString(l);System.out.println(result);returnresult;}} GoodPayService服務層,代碼如下:publicinterfaceGoodsPayService{publicintinsertBuyGoods(Mapmap);List<Goods>findMyGoods(Stringuid);List<Goods>findAllGoodsPay();List<Goods>findAllGoodsPayByPage(intsatrt,intpagesize);} GoodPayServiceImpl實現層,代碼如下:@ServicepublicclassGoodsPayServiceImplimplementsGoodsPayService{@AutowiredGoodsPayMappergoodsPayMapper;@OverridepublicintinsertBuyGoods(Mapmap){returngoodsPayMapper.insertBuyGoods(map);}@OverridepublicList<Goods>findMyGoods(Stringuid){returngoodsPayMapper.findMyGoods(uid);}@OverridepublicList<Goods>findAllGoodsPay(){returngoodsPayMapper.findAllGoodsPay();}GoodPayMapper映射層,代碼如下:<selectid="findAllGoodsPay"resultType="com.shequ.pojo.Goods">selectg.goods_id,g.goods_title,g.goods_desc,g.goods_img,g.goods_price,fromgoodsginnerjoingoodspaygpongp.goods_id=g.goods_idinnerjoinuseru ongp.uid=u.uid</select><selectid="findAllGoodsPayByPage"resultType="com.shequ.pojo.Goods">selectg.goods_id,g.goods_title,g.goods_desc,g.goods_img,g.goods_price,fromgoodsginnerjoingoodspaygpongp.goods_id=g.goods_id innerjoinuseru ongp.uid=u.uid limit#{arg0},#{arg1}</select>(3)運行結果查看預約的運行結果,如圖5-8所示:圖5-8查看預約運行結果圖5.5系統測試5.5.1黑盒測試本測試中,主要對系統的用戶注冊登陸、用戶預約、用戶查看預約記錄、管理員管理預約、管理員查看預約表5-1黑盒測試用例測試功能操作步驟預期目標測試結果登錄與注冊輸入正確手機號和密碼點擊登陸按鈕輸入錯誤用戶名或密碼點擊登陸按鈕輸入手機號和密碼點擊注冊按鈕第2步顯示登陸成功第4步顯示手機號或密碼
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 社區活躍度的預算與投資合同
- 全職員工離職說明
- 數據庫技術COMPUTER87課件
- 鐵路市場營銷集中性市場營銷策略課件
- 雙總線冗余供電方式盧凱霞時間年月課件
- 中醫特色護理課件
- 中醫關于水腫的課件
- 高空電力作業安全合同
- 養生保健品經銷合同范本
- 北京市東城區2024屆高三下學期一模歷史試題 含解析
- DB11-T 1390.4-2018 環衛車輛功能要求 第4部分:餐廚廢棄油脂運輸車輛
- 化工生產基礎知識習題庫
- 2024年醫療大數據分析與應用項目合同
- 2025風電機組無人機巡檢技術方案
- 大學武術知到智慧樹章節測試課后答案2024年秋浙江大學
- 2025年中移鐵通限公司公開招聘工作人員100名高頻重點提升(共500題)附帶答案詳解
- 2025年度學院學術委員會專家聘用合同3篇
- 建筑業職業危害防治措施
- IATF16949基礎知識培訓教材
- 《基于機器視覺的激光焊縫跟蹤系統研究》
- UL1059標準中文版-2020接線端子UL標準中文版
評論
0/150
提交評論