本發(fā)明涉及移動(dòng)通信報(bào)表技術(shù)領(lǐng)域,具體地說(shuō)是一種混合式的自定義手機(jī)端報(bào)表系統(tǒng)及方法。
背景技術(shù):
隨著移動(dòng)互聯(lián)網(wǎng)的不斷發(fā)展,企業(yè)應(yīng)用系統(tǒng)的在移動(dòng)端的應(yīng)用需求越來(lái)越多,特別是在移動(dòng)辦公、流程審批、報(bào)表統(tǒng)計(jì)等在移動(dòng)端的實(shí)現(xiàn)。在移動(dòng)端軟件的開(kāi)發(fā)過(guò)程中,現(xiàn)在主流的研發(fā)技術(shù)主要是Android和IOS的原生開(kāi)發(fā),導(dǎo)致一個(gè)移動(dòng)端的應(yīng)用需要分別開(kāi)發(fā)Android和IOS兩個(gè)版本的開(kāi)發(fā),在研發(fā)工作量和后期維護(hù)上,都造成工作量的翻倍遞增。
基于以上現(xiàn)狀,本發(fā)明提出一種混合式的自定義手機(jī)端報(bào)表系統(tǒng)及方法。本發(fā)明旨在通過(guò)HTML5+Bootstrap+kendoUI技術(shù)實(shí)現(xiàn)移動(dòng)端報(bào)表混合式開(kāi)發(fā),通過(guò)配置方式,實(shí)現(xiàn)移動(dòng)端報(bào)表呈現(xiàn)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的技術(shù)任務(wù)是針對(duì)以上不足之處,提供一種混合式的自定義手機(jī)端報(bào)表系統(tǒng)及方法。
一種混合式的自定義手機(jī)端報(bào)表系統(tǒng),其結(jié)構(gòu)包括移動(dòng)端和服務(wù)端,其中,
所述服務(wù)端包括報(bào)表模型模塊、數(shù)據(jù)源配置模塊、報(bào)表數(shù)據(jù)定義模塊、報(bào)表數(shù)據(jù)接口、報(bào)表菜單定義模塊、報(bào)表菜單接口,其中報(bào)表模型模塊用于定義報(bào)表信息;數(shù)據(jù)源用于定義報(bào)表連接的數(shù)據(jù)庫(kù)連接信息;報(bào)表數(shù)據(jù)定義模塊通過(guò)編寫(xiě)SQL語(yǔ)句實(shí)現(xiàn)報(bào)表中數(shù)據(jù)的定義,并將該報(bào)表數(shù)據(jù)定義的信息生成xml文件并保存;報(bào)表數(shù)據(jù)接口用于連接移動(dòng)端;報(bào)表菜單定義模塊用于實(shí)現(xiàn)菜單與報(bào)表數(shù)據(jù)的綁定;報(bào)表菜單接口用于連接移動(dòng)端并由該移動(dòng)端調(diào)用;
移動(dòng)端則是指智能終端。
所述報(bào)表模型模塊定義的報(bào)表信息包括報(bào)表中文名、報(bào)表英文名、報(bào)表數(shù)據(jù)定義文件。
所述數(shù)據(jù)源定義的數(shù)據(jù)庫(kù)連接信息包括數(shù)據(jù)庫(kù)類(lèi)型、數(shù)據(jù)庫(kù)連接驅(qū)動(dòng)程序、連接地址、連接用戶名、連接密碼,數(shù)據(jù)源通過(guò)JDBC驅(qū)動(dòng)連接包括oracle、Mysql的數(shù)據(jù)庫(kù)。
報(bào)表數(shù)據(jù)定義模塊通過(guò)調(diào)用數(shù)據(jù)源配置模塊定義的數(shù)據(jù)庫(kù),編寫(xiě)SQL語(yǔ)句實(shí)現(xiàn)報(bào)表數(shù)據(jù)統(tǒng)計(jì),通過(guò)數(shù)據(jù)集定義,定義SQL中選擇的列信息的中文名稱、列顯示寬度、包括字符、數(shù)字、日期的顯示類(lèi)型屬性,將報(bào)表數(shù)據(jù)定義的信息生成xml文件保存在文件目錄中,最后將生成的xml文件地址與報(bào)表模型模塊中報(bào)表數(shù)據(jù)定義文件關(guān)聯(lián)。
報(bào)表數(shù)據(jù)接口調(diào)用報(bào)表模型模塊定義信息,生成報(bào)表數(shù)據(jù)接口,以JSON方式提供報(bào)表數(shù)據(jù)給移動(dòng)端調(diào)用。
報(bào)表菜單定義模塊定義報(bào)表父報(bào)表、子報(bào)表中文名、英文名、菜單顯示圖標(biāo),將菜單英文名與報(bào)表英文名關(guān)聯(lián),實(shí)現(xiàn)菜單與報(bào)表數(shù)據(jù)的綁定。
報(bào)表菜單接口根據(jù)菜單定義信息,生成報(bào)表菜單數(shù)據(jù)接口,以JSON方式提供報(bào)表數(shù)據(jù)給移動(dòng)端調(diào)用。
一種混合式的自定義手機(jī)端報(bào)表方法,其實(shí)現(xiàn)過(guò)程為,首先通過(guò)報(bào)表系統(tǒng)的服務(wù)端配置報(bào)表服務(wù)和數(shù)據(jù),然后移動(dòng)端自動(dòng)根據(jù)服務(wù)端的配置自動(dòng)生成統(tǒng)計(jì)報(bào)表。
具體實(shí)現(xiàn)過(guò)程為:基于包括移動(dòng)端和服務(wù)端的移動(dòng)端報(bào)表系統(tǒng),首先在服務(wù)端進(jìn)行報(bào)表后臺(tái)服務(wù),即對(duì)統(tǒng)計(jì)報(bào)表屬性元模型進(jìn)行可配置定義和報(bào)表數(shù)據(jù)可配置服務(wù)接口定義、對(duì)前端報(bào)表樣式進(jìn)行定義;
然后在移動(dòng)端進(jìn)行報(bào)表呈現(xiàn),使移動(dòng)端報(bào)表可以發(fā)布為安卓和IOS版本報(bào)表。
移動(dòng)端報(bào)表通過(guò)調(diào)用報(bào)表菜單接口、報(bào)表數(shù)據(jù)接口,獲取報(bào)表菜單數(shù)據(jù)和報(bào)表數(shù)據(jù),使用html5定義菜單頁(yè)面、報(bào)表頁(yè)面,樣式使用bootstrap進(jìn)行定義,報(bào)表表格顯示采用kendoUI進(jìn)行渲染展現(xiàn),最后APP通過(guò)打包工具,直接發(fā)布為安卓版和IOS版應(yīng)用。
本發(fā)明的一種混合式的自定義手機(jī)端報(bào)表系統(tǒng)及方法和現(xiàn)有技術(shù)相比,具有以下有益效果:
本發(fā)明的一種混合式的自定義手機(jī)端報(bào)表系統(tǒng)及方法,通過(guò)后臺(tái)服務(wù)自定配置定義報(bào)表數(shù)據(jù)和報(bào)表菜單,可實(shí)現(xiàn)多數(shù)據(jù)源報(bào)表配置,移動(dòng)端根據(jù)后臺(tái)接口數(shù)據(jù)自動(dòng)展現(xiàn)報(bào)表,報(bào)表開(kāi)發(fā)由傳統(tǒng)的移動(dòng)端報(bào)表單個(gè)進(jìn)行代碼開(kāi)發(fā)轉(zhuǎn)變?yōu)橥ㄟ^(guò)配置即可實(shí)現(xiàn),提高了報(bào)表的開(kāi)發(fā)效率;該發(fā)明實(shí)現(xiàn)了移動(dòng)端報(bào)表的可配置開(kāi)發(fā),實(shí)現(xiàn)了安卓、IOS版本的混合式開(kāi)發(fā),開(kāi)發(fā)一套代碼即可發(fā)布安卓、IOS版,提高了開(kāi)發(fā)效率和節(jié)約了開(kāi)發(fā)成本和后期維護(hù)成本,實(shí)用性強(qiáng),適用范圍廣泛,具有很好的推廣應(yīng)用價(jià)值。
附圖說(shuō)明
附圖1是本發(fā)明報(bào)表系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖及具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。
如附圖1所示,一種混合式的自定義手機(jī)端報(bào)表系統(tǒng),可以實(shí)現(xiàn)移動(dòng)端可配置報(bào)表,通過(guò)報(bào)表后臺(tái)元模型配置和數(shù)據(jù)配置,實(shí)現(xiàn)多數(shù)據(jù)源數(shù)據(jù)庫(kù)報(bào)表統(tǒng)計(jì),使用html5+bootstrap+kendoUI技術(shù)框架,實(shí)現(xiàn)移動(dòng)端報(bào)表的混合式實(shí)現(xiàn),可在Android和IOS進(jìn)行展現(xiàn)。
其結(jié)構(gòu)包括移動(dòng)端和服務(wù)端,其中,
所述服務(wù)端包括報(bào)表模型模塊、數(shù)據(jù)源配置模塊、報(bào)表數(shù)據(jù)定義模塊、報(bào)表數(shù)據(jù)接口、報(bào)表菜單定義模塊、報(bào)表菜單接口,其中報(bào)表模型模塊用于定義報(bào)表信息;數(shù)據(jù)源用于定義報(bào)表連接的數(shù)據(jù)庫(kù)連接信息;報(bào)表數(shù)據(jù)定義模塊通過(guò)編寫(xiě)SQL語(yǔ)句實(shí)現(xiàn)報(bào)表中數(shù)據(jù)的定義,并將該報(bào)表數(shù)據(jù)定義的信息生成xml文件并保存;報(bào)表數(shù)據(jù)接口用于連接移動(dòng)端;報(bào)表菜單定義模塊用于實(shí)現(xiàn)菜單與報(bào)表數(shù)據(jù)的綁定;報(bào)表菜單接口用于連接移動(dòng)端并由該移動(dòng)端調(diào)用;
移動(dòng)端則是指智能終端。
所述報(bào)表模型模塊定義的報(bào)表信息包括報(bào)表中文名、報(bào)表英文名、報(bào)表數(shù)據(jù)定義文件。
所述數(shù)據(jù)源定義的數(shù)據(jù)庫(kù)連接信息包括數(shù)據(jù)庫(kù)類(lèi)型、數(shù)據(jù)庫(kù)連接驅(qū)動(dòng)程序、連接地址、連接用戶名、連接密碼,數(shù)據(jù)源通過(guò)JDBC驅(qū)動(dòng)連接包括oracle、Mysql的數(shù)據(jù)庫(kù)。
報(bào)表數(shù)據(jù)定義模塊通過(guò)調(diào)用數(shù)據(jù)源配置模塊定義的數(shù)據(jù)庫(kù),編寫(xiě)SQL語(yǔ)句實(shí)現(xiàn)報(bào)表數(shù)據(jù)統(tǒng)計(jì),通過(guò)數(shù)據(jù)集定義,定義SQL中選擇的列信息的中文名稱、列顯示寬度、包括字符、數(shù)字、日期的顯示類(lèi)型屬性,將報(bào)表數(shù)據(jù)定義的信息生成xml文件保存在文件目錄中,最后將生成的xml文件地址與報(bào)表模型模塊中報(bào)表數(shù)據(jù)定義文件關(guān)聯(lián)。
報(bào)表數(shù)據(jù)接口調(diào)用報(bào)表模型模塊定義信息,生成報(bào)表數(shù)據(jù)接口,以JSON方式提供報(bào)表數(shù)據(jù)給移動(dòng)端調(diào)用。
報(bào)表菜單定義模塊定義報(bào)表父報(bào)表、子報(bào)表中文名、英文名、菜單顯示圖標(biāo),將菜單英文名與報(bào)表英文名關(guān)聯(lián),實(shí)現(xiàn)菜單與報(bào)表數(shù)據(jù)的綁定。
報(bào)表菜單接口根據(jù)菜單定義信息,生成報(bào)表菜單數(shù)據(jù)接口,以JSON方式提供報(bào)表數(shù)據(jù)給移動(dòng)端調(diào)用。
一種混合式的自定義手機(jī)端報(bào)表方法,通過(guò)上述移動(dòng)端報(bào)表系統(tǒng)的后臺(tái)服務(wù),即服務(wù)端實(shí)現(xiàn)對(duì)統(tǒng)計(jì)報(bào)表屬性元模型進(jìn)行可配置定義和報(bào)表數(shù)據(jù)可配置服務(wù)接口定意義,使用Bootstrap對(duì)前端報(bào)表樣式進(jìn)行定義,HMTL5+KendoUI對(duì)前端報(bào)表進(jìn)行展現(xiàn),使移動(dòng)端報(bào)表可以發(fā)布為安卓和IOS版本報(bào)表,實(shí)現(xiàn)跨平臺(tái)的可以配置移動(dòng)端報(bào)表的開(kāi)發(fā)。該發(fā)明實(shí)現(xiàn)了移動(dòng)端報(bào)表的可配置開(kāi)發(fā),實(shí)現(xiàn)了安卓、IOS版本的混合式開(kāi)發(fā),提高了移動(dòng)端報(bào)表開(kāi)發(fā)效率。
其實(shí)現(xiàn)過(guò)程為,首先通過(guò)報(bào)表系統(tǒng)的服務(wù)端配置報(bào)表服務(wù)和數(shù)據(jù),然后移動(dòng)端自動(dòng)根據(jù)服務(wù)端的配置自動(dòng)生成統(tǒng)計(jì)報(bào)表。
具體實(shí)現(xiàn)過(guò)程為:基于包括移動(dòng)端和服務(wù)端的移動(dòng)端報(bào)表系統(tǒng),首先在服務(wù)端進(jìn)行報(bào)表后臺(tái)服務(wù),即對(duì)統(tǒng)計(jì)報(bào)表屬性元模型進(jìn)行可配置定義和報(bào)表數(shù)據(jù)可配置服務(wù)接口定義、對(duì)前端報(bào)表樣式進(jìn)行定義;
然后在移動(dòng)端進(jìn)行報(bào)表呈現(xiàn),使移動(dòng)端報(bào)表可以發(fā)布為安卓和IOS版本報(bào)表。
移動(dòng)端報(bào)表通過(guò)調(diào)用報(bào)表菜單接口、報(bào)表數(shù)據(jù)接口,獲取報(bào)表菜單數(shù)據(jù)和報(bào)表數(shù)據(jù),使用html5定義菜單頁(yè)面、報(bào)表頁(yè)面,樣式使用bootstrap進(jìn)行定義,報(bào)表表格顯示采用kendoUI進(jìn)行渲染展現(xiàn),最后APP通過(guò)打包工具,直接發(fā)布為安卓版和IOS版應(yīng)用。
該發(fā)明通過(guò)后臺(tái)服務(wù)自定配置定義報(bào)表數(shù)據(jù)和報(bào)表菜單,可實(shí)現(xiàn)多數(shù)據(jù)源報(bào)表配置,移動(dòng)端根據(jù)后臺(tái)接口數(shù)據(jù)自動(dòng)展現(xiàn)報(bào)表,報(bào)表開(kāi)發(fā)由傳統(tǒng)的移動(dòng)端報(bào)表單個(gè)進(jìn)行代碼開(kāi)發(fā)轉(zhuǎn)變?yōu)橥ㄟ^(guò)配置即可實(shí)現(xiàn),提高了報(bào)表的開(kāi)發(fā)效率。
該發(fā)明實(shí)現(xiàn)了移動(dòng)端報(bào)表的可配置開(kāi)發(fā),實(shí)現(xiàn)了安卓、IOS版本的混合式開(kāi)發(fā),開(kāi)發(fā)一套代碼即可發(fā)布安卓、IOS版,提高了開(kāi)發(fā)效率和節(jié)約了開(kāi)發(fā)成本和后期維護(hù)成本。
通過(guò)上面具體實(shí)施方式,所述技術(shù)領(lǐng)域的技術(shù)人員可容易的實(shí)現(xiàn)本發(fā)明。但是應(yīng)當(dāng)理解,本發(fā)明并不限于上述的具體實(shí)施方式。在公開(kāi)的實(shí)施方式的基礎(chǔ)上,所述技術(shù)領(lǐng)域的技術(shù)人員可任意組合不同的技術(shù)特征,從而實(shí)現(xiàn)不同的技術(shù)方案。
除說(shuō)明書(shū)所述的技術(shù)特征外,均為本專(zhuān)業(yè)技術(shù)人員的已知技術(shù)。