張迪 黃森 朱珺 朱燁
摘要:隨著各個(gè)高校信息化程度加深,與學(xué)生相關(guān)的業(yè)務(wù)逐漸由紙質(zhì)向數(shù)字化轉(zhuǎn)型,如傳統(tǒng)的第二課堂學(xué)分紙質(zhì)管理方式存在給分效率低、周期長等問題,針對(duì)此類問題,該文提出基于小程序的第二課堂學(xué)分系統(tǒng),采用SpringMVC、MyBatis技術(shù),遵循RESTful規(guī)范,具有可以在線活動(dòng)報(bào)名、第二課堂學(xué)分查看、學(xué)分明細(xì)查看、學(xué)分申請(qǐng)進(jìn)度查看、活動(dòng)簽到簽退、活動(dòng)的審核等功能,便于學(xué)生,教務(wù)處以及二級(jí)學(xué)院對(duì)學(xué)分的各項(xiàng)管理,并提高了學(xué)分認(rèn)定的效率。同時(shí)微信小程序操作簡單、跨平臺(tái)、不需要下載安裝,操作簡便,易于推廣。
關(guān)鍵詞:小程序;RESTful;第二課堂;學(xué)分
中圖分類號(hào):TN06? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ?文章編號(hào):1009-3044(2018)36-0054-04
Abstract: As the degree of informatization of various universities deepens, the business related to students gradually shifts from paper to digital. For example, the traditional second class credits paper management method has problems such as low efficiency and long cycle, etc. The second classroom credit system Based on small program is proposed. It adopts Spring MVC, My Batis technology and follows RESTful specifications. It has online activity registration, second classroom credit review, credit detail review, credit application progress review, activity check-in, and activity review. The functions are convenient for? ?students, the Academic Affairs Office and the secondary colleges to manage the credits? ?and improve the efficiency of credit recognition. At the same time, the WeChat applet is simple to operate, cross-platform, and does not require downloading and installation. It is easy to operate and easy to promote.
Key words: small program; RESTful; second class; credit
1 背景
高校第二課堂是第一課堂的補(bǔ)充,它不受時(shí)間和空間的限制,具備多種形式,成為素質(zhì)發(fā)展、創(chuàng)新意識(shí)培養(yǎng)和實(shí)踐能力提升的重要載體,正是由于第二課堂教學(xué)的靈活性和新穎性,使其越來越受到高校的重視。
第二課堂學(xué)分認(rèn)定流程各個(gè)高校雖然有差異,但學(xué)分的認(rèn)定統(tǒng)一由教務(wù)處制定規(guī)則,各個(gè)二級(jí)學(xué)院以及學(xué)生處等根據(jù)管理范圍為學(xué)生認(rèn)定。各高校對(duì)學(xué)生第二課堂學(xué)分認(rèn)定現(xiàn)狀存在以下問題:
1) 過萬學(xué)生的高校很多,學(xué)生的第二課堂事務(wù)信息量大,且涉及多個(gè)部門和人員,對(duì)各個(gè)學(xué)院、部門之間的信息交流與協(xié)同工作要求很高;
2) 很多高校目前使用人工紙質(zhì)、電子文檔方式管理學(xué)生第二課堂學(xué)分的方式存在缺陷,如工作效率低下、協(xié)作性查、產(chǎn)生大量的歷史文件和數(shù)據(jù),不便進(jìn)行歷史數(shù)據(jù)查尋,不利于數(shù)據(jù)分析和維護(hù);
3) 傳統(tǒng)紙質(zhì)管理方式無法對(duì)學(xué)生的第二課堂活動(dòng)數(shù)據(jù)進(jìn)行評(píng)價(jià)和監(jiān)督,不利于評(píng)估第二課堂活動(dòng)質(zhì)量;
4) 學(xué)生第二課堂沒有一個(gè)統(tǒng)一的管理入口,造成求助難、處理問題慢、無法了解處理流程的問題。
第二課堂學(xué)分管理系統(tǒng)滿足學(xué)生參與活動(dòng)以及學(xué)分申請(qǐng)的訴求,為校方管理者提供了管控學(xué)生第二課堂活動(dòng)以及學(xué)分認(rèn)定的平臺(tái)。
2 微信小程序簡介
微信小程序[1-6]是一種不需要下載安裝即可使用的應(yīng)用,它實(shí)現(xiàn)了應(yīng)用“觸手可及”的夢(mèng)想,用戶掃一掃或者搜一下即可打開應(yīng)用。也體現(xiàn)了“用完即走”的理念,用戶不用關(guān)心是否安裝太多應(yīng)用的問題。應(yīng)用將無處不在,隨時(shí)可用,但又無需安裝卸載。對(duì)于開發(fā)者而言,小程序開發(fā)門檻相對(duì)較低,難度不及APP,能夠滿足簡單的基礎(chǔ)應(yīng)用,適合生活服務(wù)類線下商鋪以及非剛需低頻應(yīng)用的轉(zhuǎn)換。小程序能夠?qū)崿F(xiàn)消息通知、線下掃碼、公眾號(hào)關(guān)聯(lián)等七大功能。其中,由于小程序不存在入口,通過公眾號(hào)關(guān)聯(lián),用戶可以實(shí)現(xiàn)公眾號(hào)與小程序之間相互跳轉(zhuǎn)。
3 系統(tǒng)設(shè)計(jì)
第二課堂學(xué)分管理系統(tǒng)需要實(shí)現(xiàn)學(xué)生端和教師端兩個(gè)模塊,學(xué)生端包括活動(dòng)報(bào)名、活動(dòng)預(yù)約查看、活動(dòng)簽到簽退、學(xué)分申請(qǐng)查看、學(xué)分明細(xì)查看等功能。學(xué)生端功能圖如圖1所示。
教師端主要是活動(dòng)的審核和活動(dòng)開始和結(jié)束的時(shí)候發(fā)起定位信息的功能。學(xué)生在活動(dòng)報(bào)名之后,教師可以在線審核活動(dòng),支持單個(gè)審核和批量審核,審核通過之后,在活動(dòng)開始的時(shí)候,需要教師在活動(dòng)現(xiàn)場(chǎng)發(fā)起一個(gè)定位,然后學(xué)生通過學(xué)生端進(jìn)行活動(dòng)簽到,根據(jù)教師定位的經(jīng)緯度信息和學(xué)生定位的經(jīng)緯度信息是否在一個(gè)范圍內(nèi)判斷活動(dòng)是否簽到成功。在活動(dòng)結(jié)束的時(shí)候,教師需要在教師端再次發(fā)起一次定位,根據(jù)教師定位的經(jīng)緯度信息和學(xué)生定位的經(jīng)緯度信息是否在一個(gè)范圍內(nèi)判斷活動(dòng)是否簽退成功,否則視為學(xué)生活動(dòng)未簽退。教師端功能圖如圖2所示。
4 活動(dòng)簽到簽退模塊流程
在活動(dòng)的開始需要教師在教師端發(fā)起一個(gè)活動(dòng)的簽到定位,然后學(xué)生才可以進(jìn)行簽到,學(xué)生端點(diǎn)擊簽到的時(shí)候,先判斷學(xué)生定位是否在所規(guī)定范圍之內(nèi),如果在范圍之內(nèi),進(jìn)行掃碼簽到,掃碼成功,代表簽到成功,否則簽到失敗。活動(dòng)簽退由教師在教師端發(fā)起簽退定位,學(xué)生在手機(jī)端點(diǎn)擊簽退,判斷學(xué)生定位是否在所規(guī)定范圍之內(nèi),如果在范圍之內(nèi),簽退成功,否則簽退失敗。具體流程如圖3所示。
5 數(shù)據(jù)庫表結(jié)構(gòu)的設(shè)計(jì)
數(shù)據(jù)庫設(shè)計(jì)(Database Design)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效地存儲(chǔ)數(shù)據(jù),滿足各種用戶的應(yīng)用需求(信息要求和處理要求)。
數(shù)據(jù)庫中關(guān)鍵業(yè)務(wù)數(shù)據(jù)表包含:1)接口配置表,保存接口信息;2)學(xué)分申請(qǐng)流程記錄表,記錄學(xué)生申請(qǐng)學(xué)分各個(gè)審批環(huán)節(jié)狀態(tài);3)流程審核人關(guān)聯(lián)表,保存各個(gè)流程對(duì)應(yīng)的審核人信息;4)學(xué)生活動(dòng)表,保存學(xué)生參加活動(dòng)的各項(xiàng)信息;5)學(xué)分規(guī)則表,保存滿足相應(yīng)學(xué)分的條件;6)學(xué)分項(xiàng)目配置表,保存各級(jí)別項(xiàng)目對(duì)應(yīng)的學(xué)分;7)流程歷史實(shí)例表、流程抄送表、流程歷史實(shí)例表、流程歷史任務(wù)表等,該部分表用以保存流程處理的相關(guān)信息。其中,接口配置表如表1所示,學(xué)分申請(qǐng)流程記錄表如表2所示,學(xué)生活動(dòng)表如表3所示。
6 請(qǐng)求資源實(shí)現(xiàn)
由于該系統(tǒng)采用的 RESTful[11]架構(gòu),因此所有的客戶端請(qǐng)求都屬于對(duì)資源的操作。
以登錄功能為例,當(dāng)用戶填寫完賬號(hào)、密碼點(diǎn)擊登錄后,相當(dāng)于客戶端對(duì)Server發(fā)送了請(qǐng)求,請(qǐng)求代碼如下:
wx.request({
url: `${getApp().data.url}business/login`,
method: 'POST',
data: { "params":
{"userName": this.data.username,
"password": this.data.password
} },
header: {
"Content-Type": "application/json"
},
success: function (res) {
if (res.data.resultCode == '-9999') {
console.log(‘網(wǎng)絡(luò)異常)
} else {
if (res.data.object.resultCode == '-9999') {
console.log(‘用戶名或密碼錯(cuò)誤)
} else {
console.log(‘登錄成功‘)
wx.redirectTo({
url: '../main/main',//跳轉(zhuǎn)到主頁
})
}}}
})
當(dāng)res.data.resultCode返回的為-9999的時(shí)候,代表請(qǐng)求資源失敗,res.data.object.resultCode返回的為-9999的時(shí)候,代表業(yè)務(wù)處理失敗,即‘用戶名或密碼錯(cuò)誤,否則代表業(yè)務(wù)處理成功。
7 系統(tǒng)效果
系統(tǒng)主頁,頁面由兩部分組成,一部分是一張歡迎圖和學(xué)校Logo,另一部分是展示該系統(tǒng)的所有功能,主要功能有活動(dòng)報(bào)名、活動(dòng)預(yù)約查看、活動(dòng)簽到、學(xué)分申請(qǐng)查看、學(xué)分明細(xì)查看、退出等功能,如圖4所示。
進(jìn)入系統(tǒng)主頁后點(diǎn)擊“活動(dòng)報(bào)名”進(jìn)入活動(dòng)報(bào)名頁面,該頁面展示所有的活動(dòng),會(huì)顯示針對(duì)當(dāng)前用戶可以報(bào)名參加的活動(dòng)列表,如果當(dāng)前時(shí)間不在活動(dòng)時(shí)間范圍之內(nèi),那么該活動(dòng)就不會(huì)在列表中顯示,列表顯示活動(dòng)主題、活動(dòng)時(shí)間、活動(dòng)說明和報(bào)名按鈕,點(diǎn)擊“報(bào)名”進(jìn)行活動(dòng)的報(bào)名,報(bào)名成功后會(huì)顯示已報(bào)名,如果你已經(jīng)報(bào)名,就不能進(jìn)行再次報(bào)名,系統(tǒng)會(huì)提示用戶已經(jīng)報(bào)過名,請(qǐng)勿重復(fù)報(bào)名。
當(dāng)該次活動(dòng)有變更,管理員可在后臺(tái)發(fā)布公告,學(xué)生端在活動(dòng)列表就會(huì)顯示有新的活動(dòng)通知公告,如圖5所示,點(diǎn)擊可查看更改后的內(nèi)容,顯示活動(dòng)具體的起止時(shí)間、地點(diǎn)和備注信息,如圖6所示。
點(diǎn)擊“學(xué)分明細(xì)”查看進(jìn)入學(xué)分明細(xì)查看頁面,該頁面是以列表形式展示,頂部為一個(gè)Tab切換欄,可以查看分院學(xué)分和社區(qū)學(xué)分,分院的學(xué)分就是申請(qǐng)的第二課堂學(xué)分,社區(qū)的學(xué)分主要是學(xué)生報(bào)名參加活動(dòng)后所得到的學(xué)分,列表主要展示活動(dòng)的名稱,點(diǎn)擊可展開,展開后,可以查看所獲得的學(xué)分,以及該學(xué)分所屬的模塊以及最后處理的時(shí)間,如圖7所示。
8 結(jié)束語
該系統(tǒng)采用SpringMVC、Spring[8-13]、MyBatis和微信小程序前端技術(shù)進(jìn)行開發(fā)。開發(fā)遵循RESTful API 的設(shè)計(jì),后端提供數(shù)據(jù)接口,前端采用異步的形式請(qǐng)求后端資源。學(xué)生端完成了可以查看第二課堂活動(dòng)信息、報(bào)名信息、學(xué)分等信息,還可以實(shí)現(xiàn)在線活動(dòng)申請(qǐng)、活動(dòng)預(yù)約查看等功能,教師端完成了可以查看學(xué)生參加活動(dòng)報(bào)名情況,可以對(duì)參加這些活動(dòng)的同學(xué)進(jìn)行活動(dòng)報(bào)名審核的功能。該系統(tǒng)為高校學(xué)生參加第二課堂提供了非常便捷的參與校內(nèi)活動(dòng)取得學(xué)分以及通過各項(xiàng)獲獎(jiǎng)資料申報(bào)取得學(xué)分的途徑,同時(shí)減輕了在此業(yè)務(wù)上教師的工作量。該項(xiàng)目已擁有兩萬用戶量,使用半年,系統(tǒng)運(yùn)行情況穩(wěn)定。
參考文獻(xiàn):
[1] 劉玉佳.微信“小程序”開發(fā)系統(tǒng)實(shí)現(xiàn)及前景分析[J].信息通信,2017(1):260-261.
[2] 張雪云,牟艷,張九博.基于微信小程序的電源監(jiān)測(cè)管理系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)與現(xiàn)代化,2017(12):98-102, 107.
[3] 王勛. “微信小程序開發(fā)”課程構(gòu)建與教學(xué)實(shí)踐[J].計(jì)算機(jī)時(shí)代,2017(3):46-49.
[4] 謝甜甜,謝軍.微信小程序在電子商務(wù)中的應(yīng)用分析[J].信息與電腦:理論版,2018(6):98-100.
[5] 羅杰,劉夢(mèng)彧,李健枝,等.基于微信小程序的停車位租賃平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2018(9):86-88.
[6] 戎力.探秘微信小程序電子身份證[J].計(jì)算機(jī)與網(wǎng)絡(luò),2018(1):28.
[7] 王進(jìn),黃志球.面向超媒體鏈接的RESTful服務(wù)隱私建模方法[J].計(jì)算機(jī)研究與發(fā)展,2017(4):886-905.
[8] 李杉,賈彥平,達(dá)虎.Mybatis逆向工程在JavaEE中的應(yīng)用[J].通訊世界,2017(24):342.
[9] 林珠,李海威,楊伯藹.基于云存儲(chǔ)與J2EE架構(gòu)的信息系統(tǒng)設(shè)計(jì)及應(yīng)用[J].計(jì)算機(jī)技術(shù)與發(fā)展,2017(10):177-180.
[10] 魏志軍,周肖樹,路良剛.基于JavaEE多層框架的實(shí)時(shí)監(jiān)測(cè)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電子設(shè)計(jì)工程,2018(11):77-80.
[11] Hui Xing. Study on Fracturing Technology of Polymer Flooding in the Second Class Reservoir[C].International Conference on Machinery,2017: 72-76.
[12] 陳頡.基于SSH的網(wǎng)上人才招聘系統(tǒng)的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2018(6):34-37.
[13] 張宇,王映輝,張翔南.基于Spring的MVC框架設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2017(1):260-261.
[14] Hui Xing.Study on Fracturing Technology of Polymer Flooding in the Second Class Reservoir[C].國際會(huì)議,2017: 72-76.
[15] Mccracken M, Currie D, Harrison J. Understanding graduate recruitment, development and retention for the enhancement of talent management: sharpening ‘the edge of graduate talent[J]. International Journal of Human Resource Manage, 2015, 8(6):1-26.
[16] Valdez R S, Guterbock T M, Thompson M J. Beyond traditional advertisements: leveraging Facebooks social structures for research recruitment[J]. Journal of Medical Internet Research, 2014, 16(10):243-243.
[通聯(lián)編輯:謝媛媛]