廖培淇,龔 萍
(攀枝花學院數學與計算機學院,四川 攀枝花 617000)
在新時代的路上,發展與穩定成為社會的主旋律。為了方便廣大教師,充分發揮學生的主觀能動性,開發了該教學輔助系統用以輔助教師完成疫情期間的線上教學。本系統基于微信小程序平臺,使用Js語言完成邏輯代碼的設計和實現,Wxml和Wxss語言進行前端頁面的設計,使用Json數據格式完成數據的傳輸。此外,本系統還使用了微信官方提供的云服務以及Api函數和外部的Js文件共同完成代碼的編寫。針對數據和文件的存儲,本系統使用了Mysql數據庫、微信云數據庫和微信云存儲共同完成數據和文件的存儲和讀取。本系統適合輔助完成個人以及小型團體的部分教學任務。
本系統將用戶角色分為學生、教師、管理員三類用戶,按照角色進行功能劃分,系統功能如下:
①登錄:管理員直接將學生教師信息導入到系統當中,無須注冊即可進行登錄,既保證了系統安全性,也免去了注冊的步驟。
②留言板:所有登錄用戶均可在留言板上進行留言,也能進行回復,管理員用戶相比于普通用戶,多了刪除留言以及回復的功能。
③作業考試:教師用戶可以進行作業的布置、作業考試成績的查看和導出,學生用戶僅能完成作業和考試且只能查看自己的分數,管理員用戶能夠發布考試并進行考試的管理。
④班級管理:教師用戶可以創建并管理自己的教學班級,同時能夠導入班級的學生名單。
⑤用戶管理:管理員用戶可以進行用戶的管理包括用戶信息的更新、導入、刪除。
⑥學院管理:管理員用戶可以進行學院管理,包括添加管理學院,導入、更新、刪除教師名單。⑦課程管理:管理員用戶能夠安排教師進行某門課的教育教學,并能更新其信息。
系統將用戶角色分為管理員、教師、學生三個角色,管理員用戶負責對系統用戶、學院專業、考試發布以及留言信息的管理,教師負責建立班級并對學生進行作業管理和成績的導出,系統的基本業務流程為:
①管理員建立學院以及專業并添加教師、學生名單。
②教師進行系統登錄并建立班級導入班級學生名單。
③教師布置作業、管理員發布考試。
④學生登錄,完成相關試題。
⑤學生和教師在留言板發布留言。
⑥管理員對留言內容進行管理。
本系統將程序分為邏輯層與視圖層,采用Js來完成邏輯層的任務,Wxml、Wxss、Json完成視圖層的實現。此外,本系統采用了微信團隊提供的Api接口和第三方的js來實現某些功能。為了方便地實現數據在各個用戶角色之間進行流通,本系統采用了微信云存儲、云數據庫以及本地的Mysql數據庫相結合的方式進行數據存儲。為了減少代碼的冗余量,也使用了微信云函數進行一些數據的處理。
在用戶登錄之后,用戶的基本信息將會寫入手機緩存當中,當手機當中無緩存內容,用戶不能對系統進行除登錄之外的任何操作。在進入留言板模塊時,使用wx.getStorageSync()接口函數讀取用戶存儲在緩存當中的學校信息,系統用戶只能查看本校的留言信息。另外,留言信息涉及圖片的存儲,本系統將圖片存儲于云存儲上,本地Mysql存儲著留言圖片在云存儲中的地址,僅需獲取到圖片的云存儲地址,系統即可將圖片顯示在前端。
云函數調用代碼如下:

由于微信小程序的云函數調用中使用的wx.cloud.callFunction()是異步函數,若需要獲取執行云函數后的結果,需要在then()函數當中進行數據的處理。
學生在教師或者管理員發布作業或者考試之后,能夠進入試題界面進行作業和考試的完成,在考試界面擁有倒計時功能,在倒計時結束后,將會自動交卷。本系統使用了第三方day.js進行關于時間的操作。但在數據庫時間和當前時間的讀取操作上,會有時區變換的問題,為了解決該問題,依照不同時區的變換規律,在原有的時間上加8小時即可解決系統時間顯示在前端頁面時帶來的失去變換問題。

對于excel文件的讀取和生成,使用了第三方的nodexlsx.js進行excel文件的解析,讀取選中的excel文件到系統變量當中。由于微信小程序本身的限制,微信小程序不能直接下載除圖片外的其他文件。因此,把生成的excel文件存儲到云存儲上,接著使用微信小程序官方提供的wx.OpenDocument()函數進行excel文件的打開。


本系統基于微信小程序平臺,解決了教師在教育教學中的有關考試作業部分的部分問題,操作簡便,學習成本低,僅需微信掃碼即可進入系統,進行操作。系統頁面簡潔明了,適合年齡較大的教師進行使用,但仍然有部分問題需要解決。例如:系統ui不夠美觀,太過簡潔、系統功能還不夠健全,后期可以考慮增加資料閱讀功能,學生可以閱讀教師上傳的資料、還可以在學生成績導出頁面增添統計圖,更能夠直觀地顯示學生的成績以及其分布情況等等。在后續的學習和生活當中,系統還需要進一步優化。