張遠平
(東莞市經濟貿易學校,廣東東莞 523000)
班費管理是班級日常管理的重要組成部分。傳統的班費管理通常由生活委員負責,涉及收款、支出、報銷、統計和公示等業務,主要采取記賬本方式操作。但傳統的賬目管理方式或多或少存在一些不足,如班費收支不透明、管理責任不到位、賬目公示滯后等,這些問題易引起師生、家校之間不信任,有些地方還引發一系列矛盾[1]。究其原因,主要是傳統的記賬方式落后,賬目難于保管,記賬信息容易丟失并存在被刪改的風險。隨著信息技術和網絡技術的發展,采用信息化手段進行班費管理成為趨勢。特別是隨著智能手機的普及,通過APP 管理班費成為一種科學、高效、便捷的手段[2]。
本文針對目前班費管理實際需求,基于Android 快速開發工具開發了班費管理APP,實現班費的收支申請、審核、公示、投訴等功能。使班費管理流程更加清晰,班費流向更加透明,管理責任到人,信息實時公開,解決了傳統班費管理存在的一系列問題。
WeX5 是一款開源的基于H5 的APP 應用開發框架,它具有可擴展性高、開發速度快等特點[3]。該平臺采用H5+CSS3+JS 標準技術,封裝了豐富的組件體系,其混合應用開發模式能輕松調用手機設備如相機、地圖、通訊錄等,讓開發者輕松應對各類復雜數據應用[4]。在開發環境方面,WeX5 的IDE 基于Eclipse,提供一個完全可視化、組件化、拖拽式的開發環境,完全實現所見即所得;通過使用向導化和模板化等工具,能快速生成常見的應用場景界面[4]。
APP 消息推送(Push)指運營人員通過自己的產品或第三方工具對用戶移動設備主動進行消息推送。通過信息推送技術,用戶可在移動設備屏幕和通知欄上看到Push 消息通知。極光推送是目前流行的第三方云推送平臺,它面向普通開發者提供免費的第三方消息推送服務,開發者只需在客戶端集成極光推送SDK 即可輕松地將Push 功能添加到APP 中[5]。
班費管理APP 用戶包括班主任、生活委員(或其他班干部)和普通學生(或家長)。主要功能包括班費明細賬目查詢、班費收支申報、班費收支審核、班費投訴等功能。根據實際需求,生活委員和班主任用例如圖1 所示,整個應用包括下列模塊:
(1)系統登錄模塊。為班主任和生活委員提供登錄界面,登錄成功后按權限自動跳轉到相應頁面。首次登錄成功后實現自動登錄功能,減少每次運行都要輸入賬號和密碼的繁瑣操作。
(2)班費申報模塊。生活委員需要登記班費收支項目時,錄入賬目信息,如支出項目、金額、經手人、證明人和收據圖片等,并把信息推送到班主任手機APP 上,提醒班主任查閱和審核。
(3)班費審核模塊。班主任查看待審核的收支項目,如情況屬實即給予申報,否則駁回申報。申報成功的項目屬于可公示賬目,會自動同步到賬目表中。
(4)班費明細賬目查詢模塊。采用賬目式表格顯示班費的使用情況,使學生和家長能通過此模塊了解每一筆班費的使用情況。
3、秧苗素質,絲核菌和鐮刀菌等水稻立枯病病源菌廣泛存在于土壤中,均為弱寄生菌,一般能在水中或土壤內營腐生生活。這類病菌致病性不強,它們一般不宜侵染健壯的幼苗,只有當天氣不良和管理不當,致使秧苗生長弱、抗性降低后,各種弱寄生菌才得以乘虛而入并傳播蔓延。因此,秧苗素質差、生長弱、抗病抗逆力差是發生立枯病的直接原因。
(5)投訴模塊。為確保班費使用公開公正,減少糾紛,為家長或學生提供投訴頁面。

Fig.1 A use case diagram圖1 用例圖
APP 采用mysql 數據庫,設計表格包括用戶表(user)、學生表(student)、投訴信息表(advice)、賬目申報表(preac?count)、賬目表(account)、班級配置表(class)等。其中,與業務流程密切相關的是賬目申報表和賬目表,如表1、表2所示。
系統登錄功能主要包括用戶賬號驗證和登錄信息保存。賬號驗證使用BaasData 組件的SetFilter 實現,如果通過驗證則根據登錄用戶角色激活父級頁面Contents 的子頁面進行跳轉。保存登錄信息的目的是為了實現用戶的自動登錄,在HTML5 中,localstorage 對象能有效實現該功能。系統登錄功能關鍵代碼如下:

Table 1 Account declaration表1 賬目申報

Table 2 Accounts表2 賬目

4.2.1 使用attachementsimple 組件實現班費收據附件上傳
票據附件上傳功能實現采用attachmentsimple 組件,該組件用于實現圖片的上傳和下載功能。在應用中必須綁定一個data 組件,對應的data 組件最少有兩個字段,一個是ID 列,另一個是attachmentSimple 需要綁定的字段,上傳的圖片文件名保存在第2 個字段中。使用attachmen?tsimpe 組件實現圖片上傳需要解決兩個問題:
(1)限制圖片上傳張數。在班費管理APP 中,為節約帶寬、提高效率,票據上傳限制只能上傳一張圖片,實現方法是在attachmentsimple 組件中把添加按鈕的data-bind 屬性設置為:

(2)設定圖片上傳位置。attachmentsimple 控件上傳圖片有兩種方式,一種是通過baas,一種是通過UIServer。如果生成Apk 文件時選擇模式1,必須使用baas 方式。由于baas 方式下圖片上傳目錄為在WeX 的data 目錄,因此需要修改baasjustep 下的simpleFileStore.java 文件的目錄變量,使圖片能上傳到APP 工程目錄,以方便審核頁面調用image 顯示該圖片。在simpleFileStore.java 中修改圖片上傳目錄的語句為:

該語句使圖片上傳路徑變為與工程對應的WeX5modelUI2classfundpic 目錄。
4.2.2 班費收支賬目申報
該功能將收支申報頁面錄入的信息填入到申報表中,注意填入信息后申報表該筆賬目的狀態(state 字段)被設置為0,收據圖片附件的文件名來自通過attachmentsimple組件得到的文件名變量uploadstorefile。其主要代碼如下:

班費收支項目提交成功后,屏幕下方的“審批”標題會自動顯示當前待審批的項目個數,該功能主要通過組件的綁定操作實現。實現方法是增加一個Data 組件statusDa?ta,添加一個表示申報賬目數量的字段declarecount。為該字段編輯規則:($model.comp(‘preaccountData’)。count()>0)?‘審核(’+$model.comp(‘preaccountData’)。count()+‘)’:‘審核’,然后在審核按鈕的bind-text 屬性里綁定$model.statusData.ref(+“declarecount”)??梢?,組件屬性的綁定操作無需輸入大量代碼就可實現數字的自動更新。
4.2.3 使用極光推送插件實現通知推送
消息精確推送實現方法是調用極光推送插件。首先,要在極光推送官網注冊應用。然后,在WeX5 自帶的JPush 服務中配置好相關參數,使班費管理APP 能調用極光推送的SDK。同時,使用WeX5 外賣案例中的jpush.js文件建立極光推送實例變量,修改JPush.java 文件中的部分代碼,實現消息推送功能。主要代碼如下:


班主任審批班費收支賬目,首先瀏覽待審批賬目表,然后打開需要審批的項目,查看項目的完整信息,包括詳細說明、證明人、票據附件等。如果班費使用情況屬實則點擊同意申報按鈕,使申報表的對應項目寫入班費賬目表,同時對余額進行統計登記。如果班費使用不合理或存在其它問題,班主任有權在APP 中駁回班費收支申報。關鍵技術包括:
(1)讀取賬目收據附件。在該頁面中需要使用image顯示賬目中的收據圖片。可以自定義一個函數,通過讀取收支審批表的stuPic 字段生成圖片的URL。該函數定義為:

為使圖片正常顯示,圖片的bind-attr-src 屬性設置為$model.getPicUrl($model.preaccountData.val(“stupic”))。同時,使用一個output 組件來提示附件信息。該output 組件的bind-text 屬性設置為$model.preaccountData.val(“picUrl”)==null:“該筆賬目無附件”:“該筆賬目包含單據圖片如下:”。
(2)審批班費收支流程。在班費申報環節,班干部提交的申報數據保存在preaccount 數據表中,并設置字段state 的值為0。審批頁面根據state 的狀態生成待審核賬目列表。審核通過后,把待審批賬目表的state 值設置為1,同時取account 數據表的最后一條數據進行計算,統計出當前余額,最后在account 數據表中插入當前賬目信息,生成最新的賬目表。其實現流程如圖2 所示。
班費明細賬目在首頁顯示,主要是呈現班費賬目表信息。顯示組件為dataTable,該組件能方便地顯示數據表內容。由于手機屏幕尺寸有限,APP 僅顯示上期余額、收支金額、目前余額、項目、經手人和日期等信息。這里主要解決兩個問題:①日期縮寫為月日格式,實現方法是把日期列的format 屬性設置為MM-DD;②支出金額用紅色字體顯示,其代碼如下:

在用戶執行收支申報或審核操作后,后臺數據發生了更改,但各個功能頁面不會自動同步更新數據。Contents組件包含一個ActvieChange 事件,該事件在頁面激活時產生,刷新對應的windowContainer 可以解決頁面跳轉后數據不更新問題,主要代碼如下:

完成APP 的前端頁面和后端服務開發后,可使用WeX5 的打包功能生成APP,使之能在手機上運行[7]。為實現通過互聯網訪問班費管理APP,需把有關資源部署到云服務器上,上傳資源包括數據庫腳本、后端服務、UI 資源等。應用運行效果如圖3-圖5 所示。
WeX5 開發工具提供的可視化組件及第三方插件縮短了開發周期,節約了開發成本,大大提高了手機APP 開發效率。為方便推廣,班費管理APP 被命名為“班費掌上通(安卓版)”,寓意通過手機就可輕松管理和查詢班費。實踐證明,作為校園信息化創新應用的一個案例,該APP 操作完全符合班費管理場景,滿足班費管理的日常需要,它使班費管理過程完全數字化,用戶能隨時隨地查詢班費收支情況。班費掌上通時效性強,結合推送技術,使信息公開及時、全面,提高了班費管理效率。該案例開發與應用融合了“互聯網+教育”的思維方式,是教育信息化融合創新的有效實踐,提升了用戶體驗,推進了技術創新。

Fig.3 Declaration page圖3 申報頁面

Fig.4 Pages of examination and approval圖4 審批頁面

Fig.5 Publicity of accounts圖5 賬目表公示