【摘" 要】 對(duì)于總務(wù)檔案管理,由于總體使用頻率不高,采用微信小程序開(kāi)發(fā)工具軟件及其云開(kāi)發(fā)附帶的數(shù)據(jù)庫(kù),設(shè)計(jì)開(kāi)發(fā)難度小,總體開(kāi)發(fā)費(fèi)用相對(duì)較低,因總務(wù)檔案管理其對(duì)服務(wù)的響應(yīng)速度沒(méi)有特別高的要求,采用云開(kāi)發(fā)可以減少很多后臺(tái)管理的工作量,更加符合檔案管理的需求。
【關(guān)鍵詞】 總務(wù)檔案;微信小程序;檔案管理
一、研究背景
自2011年騰訊推出微信以來(lái),微信用戶已經(jīng)突破了12億,微信小程序相比傳統(tǒng)手機(jī)App具有免安裝這一優(yōu)勢(shì),使用者只需在微信小程序中搜索或掃描二維碼,即可使用小程序,因此使用微信小程序提供檔案服務(wù)更容易為大眾所接受。各檔案館也開(kāi)通了微信公眾號(hào)及微信小程序用于提供檔案知識(shí)和檔案服務(wù),對(duì)總務(wù)設(shè)計(jì)微信小程序開(kāi)通檔案服務(wù)提供了現(xiàn)實(shí)指導(dǎo)意義。
微信小程序采用JavaScript語(yǔ)言作為邏輯語(yǔ)言,wxml文件編寫(xiě)文本輸出,wxss作為樣式文件,總體編寫(xiě)難度較低。本文采用云開(kāi)發(fā)作為后臺(tái)邏輯及數(shù)據(jù)庫(kù)開(kāi)發(fā)方式。
二、微信小程序優(yōu)勢(shì)
微信小程序是一種不需要下載安裝即可使用的應(yīng)用,它實(shí)現(xiàn)了應(yīng)用“觸手可及”的夢(mèng)想,用戶掃一掃或者搜一下即可打開(kāi)應(yīng)用也體現(xiàn)了“用完即走”的理念,用戶不用關(guān)心是否安裝太多應(yīng)用的問(wèn)題。
微信小程序有完善的生態(tài)系統(tǒng),完備的UI組件界面庫(kù),而且開(kāi)放了許多現(xiàn)成可以用的模塊,如語(yǔ)音識(shí)別模塊,開(kāi)發(fā)者只需編寫(xiě)好業(yè)務(wù)邏輯,無(wú)需考慮組件或模塊的底層邏輯。
因?yàn)槌绦蚴且劳杏谖⑿牛挥每紤]操作系統(tǒng)的差別,無(wú)論運(yùn)行在蘋(píng)果、安卓手機(jī)還是在電腦上,都不用單獨(dú)編寫(xiě)程序。
三、云開(kāi)發(fā)優(yōu)勢(shì)
完全可以個(gè)人開(kāi)發(fā)前后端,直接上線,不需要依賴后端。
云開(kāi)發(fā)具有專用的云函數(shù),云函數(shù)是一段運(yùn)行在云端的代碼,針對(duì)檔案管理這一需求,云開(kāi)發(fā)現(xiàn)成的云函數(shù)可以用極少的代碼完成數(shù)據(jù)庫(kù)的可查看、增加、更新、查找、刪除數(shù)據(jù)、管理索引、管理數(shù)據(jù)庫(kù)訪問(wèn)權(quán)限等操作。而且無(wú)需管理服務(wù)器,在開(kāi)發(fā)工具內(nèi)編寫(xiě)、一鍵上傳部署即可運(yùn)行后端代碼。
傳統(tǒng)后臺(tái)開(kāi)發(fā)需要使用https協(xié)議傳輸數(shù)據(jù),國(guó)內(nèi)服務(wù)器必須解析域名進(jìn)行ICP備案后,綁定SSL證書(shū),而購(gòu)買(mǎi)SSL證書(shū)是一筆不小的費(fèi)用,且需要購(gòu)買(mǎi)域名,其費(fèi)用比較高。
針對(duì)總務(wù)檔案日用戶少,本身不屬于讀取寫(xiě)入量大的應(yīng)用場(chǎng)景,采用云開(kāi)發(fā)基礎(chǔ)服務(wù)完全可以應(yīng)付日常流量需求,采用云開(kāi)發(fā)是按流量計(jì)費(fèi),按流量計(jì)費(fèi)更加符合使用需要。且免費(fèi)版就有5GB容量(免費(fèi)配額詳見(jiàn)表1),總務(wù)檔案管理流量消耗少,如果不存儲(chǔ)圖片的情況下,免費(fèi)配額一般夠用,超出部分按流量計(jì)費(fèi)即可。
四、具體需求
用戶自動(dòng)登錄:用戶只需登錄一次,申請(qǐng)成為相應(yīng)人員,下次登錄即可自動(dòng)登錄,并且自動(dòng)導(dǎo)入人員信息,開(kāi)放相應(yīng)模塊的使用權(quán)限。
人員審核:用戶掃碼申請(qǐng)成為檔案管理員或者為檔案借取人,系統(tǒng)管理員審核檔案管理員或者方案借取人,檔案管理員審核檔案借取人。
檔案錄入:檔案管理員首先建立卷名、卷號(hào),輸入文件名、科室、文件份數(shù)、是否是復(fù)印件(數(shù)據(jù)類型:bool)、文件所屬卷號(hào)、備注等信息。
檔案借取:檔案借取人發(fā)出檔案借取申請(qǐng)信息,檔案管理員利用搜索系統(tǒng)搜索出需要的文件,并選擇文件信息發(fā)送文件借取確認(rèn)單,檔案借取人選擇確認(rèn),檔案借取完成確認(rèn)。
檔案修改:檔案管理員修改檔案信息,可以修改文件名稱、文件份數(shù)等信息,必填項(xiàng)目為修改原因,且每一條修改記錄可查。
五、數(shù)據(jù)庫(kù)集合設(shè)計(jì)
文件集合:文件名、錄入時(shí)間、文件生成時(shí)間、文件編號(hào)、唯一ID號(hào)、錄入人、科室、文件份數(shù)、是否是復(fù)印件(數(shù)據(jù)類型:bool)、文件所屬卷號(hào)、所屬卷名、備注等。
文件借取信息集合:其信息主要包括:借取時(shí)間、借取份數(shù)、借取文件名、借取人、科室、是否已經(jīng)歸還(數(shù)據(jù)類型:bool)、唯一ID號(hào),備注等。
檔案修改信息集合:其主要包括修改時(shí)間、修改原因、檔案錄入唯一ID號(hào)之外的所有項(xiàng)目原信息,檔案錄入唯一ID號(hào)之外的所有項(xiàng)目修改后信息,唯一ID號(hào)。
卷集合:其信息包括卷建立日期、卷。
人員信息集合,其信息主要包括:
檔案管理員:科室、姓名、電話、申請(qǐng)時(shí)間、批準(zhǔn)時(shí)間;
檔案借取人:科室或公司、姓名、電話、申請(qǐng)時(shí)間、批準(zhǔn)時(shí)間;
超級(jí)管理員:科室、姓名、電話、申請(qǐng)時(shí)間、批準(zhǔn)時(shí)間。
六、權(quán)限介紹
首先是系統(tǒng)管理員,權(quán)限范圍最大,可以審核用戶的注冊(cè)信息,選擇是否通過(guò)其注冊(cè)信息,其權(quán)限還包括其他兩類人員的權(quán)限;然后是檔案管理員,其具有檔案信息錄入,檔案信息借取,檔案信息查詢及審核檔案借取人注冊(cè)信息的功能;最后是借取人,其權(quán)限包括申請(qǐng)為檔案借取人,提交借取檔案申請(qǐng),確認(rèn)檔案已借取等。
七、總體流程設(shè)計(jì)思路
首先用戶掃描微信小程序二維碼,判斷是否有用戶信息緩存,如果有則自動(dòng)進(jìn)入主頁(yè)面,如果沒(méi)有,需點(diǎn)擊登錄,小程序記錄當(dāng)前用戶的openid,并且在手機(jī)緩存上保存用戶信息,方便下次登錄,初次登陸不開(kāi)通任何權(quán)限,彈出對(duì)話框提示對(duì)方需要填寫(xiě)用戶信息方可進(jìn)入相應(yīng)模塊,用戶點(diǎn)擊確定,進(jìn)入信息錄入頁(yè)面,填寫(xiě)相關(guān)信息。如果點(diǎn)擊取消,則返回登錄界面。
用戶填寫(xiě)完信息后,系統(tǒng)對(duì)用戶的信息進(jìn)行判斷,如果判斷為空,則彈出提示框,請(qǐng)用戶重新填寫(xiě)信息,否則彈出對(duì)話框“您好,你的信息已經(jīng)提交,請(qǐng)耐心等待管理員審核通過(guò),請(qǐng)退出程序”,用戶點(diǎn)擊確定后退出程序。用戶下次登錄時(shí),根據(jù)其是否審核通過(guò)可以彈出不同的對(duì)話框,如果還沒(méi)有經(jīng)過(guò)審核則彈出“您好,您的信息暫未審核,請(qǐng)退出程序耐心等待”,如果通過(guò)則彈出“您好,你的信息已經(jīng)通過(guò)審核”,審核不通過(guò)則彈出“您的信息經(jīng)過(guò)審查沒(méi)有通過(guò),請(qǐng)退出程序”。
用戶信息通過(guò)審核后如果成為檔案借取人,則在小程序系統(tǒng)后臺(tái)記錄此人員信息,可以進(jìn)入檔案借取申請(qǐng)界面,為了檔案信息的安全,檔案借取人無(wú)法進(jìn)入檔案搜索界面。檔案借取人進(jìn)入檔案借取界面,提出想要的檔案名稱,并填寫(xiě)借取原因,小程序后臺(tái)記錄此信息。
用戶信息通過(guò)審核后成為檔案管理員,則可以進(jìn)入檔案借取人申請(qǐng)信息列表窗口審核檔案申請(qǐng)信息,可以選擇退回或者處理,點(diǎn)擊退回,則檔案借取人查看我的申請(qǐng)信息可以看到自己的申請(qǐng)信息狀態(tài)為已退回。如果檔案管理員點(diǎn)擊處理,則跳轉(zhuǎn)到檔案搜索界面,在檔案搜索界面,檔案管理員可以搜索文件名或者卷名,按搜索框上方的選項(xiàng)框就可以確定,搜索字段應(yīng)支持多字段模糊搜索,點(diǎn)擊搜索后,彈出等待框,如果搜索到則在下面的列表中顯示相應(yīng)的文件名或者卷名,點(diǎn)擊右側(cè)的點(diǎn)擊查看按鈕可以查看具體內(nèi)容。如果沒(méi)有查到信息,則彈出對(duì)話框“抱歉,沒(méi)有搜索的相關(guān)內(nèi)容,請(qǐng)換個(gè)關(guān)鍵字試試”。檔案管理員選擇列表中的文件,然后點(diǎn)擊借取,檔案借取人申請(qǐng)檔案信息列表界面就顯示出相應(yīng)的文件名,檔案借取人點(diǎn)擊確定已借取則完成整個(gè)檔案借取流程。之后檔案管理員將檔案交給檔案借取人,完成檔案借取。如果按卷借取檔案,檔案借取人申請(qǐng)信息列表中顯示卷中所有文件。
需要注意的是,在搜索框中進(jìn)行文件全名的搜索顯然不太現(xiàn)實(shí),用戶不可能記住文件全名,所以搜索系統(tǒng)很有必要進(jìn)行模糊搜索。模糊搜索的方式可以選擇多字段模糊搜索以提高搜索效率。首先進(jìn)行單字段搜索,用戶選擇單一關(guān)鍵詞先進(jìn)行搜索,系統(tǒng)記錄其搜索的關(guān)鍵詞,使用云開(kāi)發(fā)數(shù)據(jù)庫(kù)中的RegExp進(jìn)行搜索,具體參數(shù)采用正則查詢,不區(qū)分大小寫(xiě),在把關(guān)鍵詞上傳到云數(shù)據(jù)庫(kù)中后,使用where語(yǔ)句查到匹配的文件名,用get語(yǔ)句獲得結(jié)果并返回前端。單字段查詢和多字段查詢的區(qū)別是,多字段可以使用空格去區(qū)分多個(gè)字段,小程序通過(guò)空格斷開(kāi)多個(gè)字段,并將空格前后字段加載到程序中,如果沒(méi)有空格將單個(gè)字段加載,如果有則用多個(gè)字段搜索?;氐絾蝹€(gè)字段查詢,將查詢到的結(jié)果返回到一個(gè)臨時(shí)的數(shù)據(jù)集,將此數(shù)據(jù)集作為下個(gè)字段搜索所屬的數(shù)據(jù)庫(kù),返回的結(jié)果給到上述臨時(shí)的數(shù)據(jù)集中,當(dāng)然原先的數(shù)據(jù)集首先要清空。最后當(dāng)沒(méi)有字段后將結(jié)果返回前端再返回用戶。
當(dāng)搜索完成后,檔案管理員選擇一個(gè)或多個(gè)結(jié)果然后點(diǎn)擊領(lǐng)取,檔案借取人就可以在其消息列表的四個(gè)選項(xiàng)卡“已申請(qǐng)”“已退回”“已處理”“已完成”里的“已處理”中看到處理的結(jié)果是借取的什么文件,當(dāng)然此四個(gè)選項(xiàng)卡對(duì)應(yīng)四個(gè)相應(yīng)的數(shù)據(jù)集,顯示給借取人的是帶有其openid的數(shù)據(jù),借取人刷新界面即可看到檔案管理員的處理結(jié)果。借取人點(diǎn)擊“確認(rèn)借取”后,借取完成,數(shù)據(jù)轉(zhuǎn)移到“已完成”選項(xiàng)卡中。如果檔案管理員不同意借取,則點(diǎn)擊“退回”,借取人在“已退回”選項(xiàng)卡可以看到其退回結(jié)果。
具體如何使檔案借取人知道獲得自己的申請(qǐng)被批準(zhǔn),可使用消息推送功能,需要檔案借取人訂閱此小程序的訂閱消息,進(jìn)行用戶授權(quán)接收訂閱消息,具體是使用wx.requestSubscribeMessage接口獲取用戶授權(quán),獲得授權(quán)后,檔案借取人的數(shù)據(jù)集標(biāo)記其已授權(quán),當(dāng)檔案管理員處理檔案借取人的借取請(qǐng)求后,根據(jù)其是否授權(quán)選擇發(fā)送訂閱信息。具體訂閱功能的實(shí)現(xiàn),首先要開(kāi)通訂閱消息功能,然后配置訂閱消息模板,訂閱消息模板配置完成后記錄模板ID,推送訂閱消息在檔案管理員處理過(guò)檔案借取人的申請(qǐng)后,發(fā)送訂閱消息,首先從云數(shù)據(jù)庫(kù)中,將未被推送過(guò)的消息篩選出來(lái),然后調(diào)用微信提供的開(kāi)放接口,將消息逐條推送給對(duì)應(yīng)的用戶,發(fā)送完畢后,將pushed設(shè)置為true,后續(xù)將不再推送,最后將結(jié)果返回云數(shù)據(jù)庫(kù),這就實(shí)現(xiàn)了消息訂閱的信息推送功能。
檔案錄入模塊為檔案管理員有權(quán)限進(jìn)入的模塊,檔案管理員在相應(yīng)的文本框中輸入文件名稱,如果一次性需要錄入的檔案較多,可以按照微信小程序云開(kāi)發(fā)數(shù)據(jù)庫(kù)的字段名作為excel表的第一行,相應(yīng)的值作為一列建立表格,最后轉(zhuǎn)化為csv文件格式導(dǎo)入數(shù)據(jù)庫(kù)即可。
檔案修改模塊:檔案管理員通過(guò)搜索界面搜索到相應(yīng)文件點(diǎn)擊下方的修改按鈕進(jìn)行修改即可,其修改信息會(huì)在修改信息列表中顯示。
八、結(jié)語(yǔ)
微信小程序在企業(yè)的開(kāi)發(fā)與運(yùn)用如雨后春筍般層出不窮,是因?yàn)槠渚哂忻獍惭b的優(yōu)勢(shì),且用戶群體多,在對(duì)于一些不常用的應(yīng)用,而這個(gè)應(yīng)用是我們必須要用的,將應(yīng)用以微信小程序的方式給用戶使用就非常符合實(shí)際,而檔案借閱管理就屬于這種應(yīng)用。雖然微信小程序應(yīng)用受微信限制不能承載過(guò)多功能,但對(duì)于一般用戶的需求基本能滿足,且微信小程序開(kāi)發(fā)門(mén)檻低,開(kāi)發(fā)價(jià)格也相對(duì)于傳統(tǒng)App更低,因此選用微信小程序非常適合。
參考文獻(xiàn):
[1] 潘鐳. “小程序”——移動(dòng)互聯(lián)網(wǎng)的下一個(gè)風(fēng)口[J]. 中國(guó)金融電腦,2017(03):72-74.
[2] 劉欣. 省級(jí)檔案館微信公眾平臺(tái)用戶體驗(yàn)評(píng)價(jià)研究[D]. 南昌:南昌大學(xué),2019.
[3] 蘇君華,宋帆帆. 數(shù)據(jù)治理視域下的檔案微信公眾平臺(tái)研究[J]. 山西檔案,2017(03):41-43.
[4] 謝文杰. 基于微信公眾平臺(tái)的檔案工作模式創(chuàng)新研究[J]. 黑龍江檔案,2019(03):21-23.
[5] 王天泥. 當(dāng)圖書(shū)館遇上微信小程序[J]. 圖書(shū)與情報(bào),2016(06):83-86.
[6] 羅頻捷,溫荷. 開(kāi)放實(shí)驗(yàn)室管理信息系統(tǒng)的開(kāi)發(fā)與實(shí)現(xiàn)[J]. 實(shí)驗(yàn)技術(shù)與管理,2015(05):157-160.