楊繼元,王萌娟,姜水軍,張建華
(1.國(guó)能神東煤炭集團(tuán)有限責(zé)任公司,陜西 神木 719315;2.西安科技大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,陜西 西安 710600)
在科學(xué)技術(shù)日新月異的今天,企業(yè)信息化管理滲透到煤炭企業(yè)的各個(gè)方面[1]。國(guó)內(nèi)煤業(yè)集團(tuán)注重煤炭質(zhì)量過(guò)程管理,從現(xiàn)場(chǎng)采掘面出發(fā),加大日常檢查和考核力度,制定了相關(guān)管控措施,有效降低了水分、灰分、雜物及鐵器對(duì)煤質(zhì)的影響;針對(duì)工作面過(guò)斷層、沖刷等特殊時(shí)期,及時(shí)制定相應(yīng)的煤質(zhì)保證措施,并嚴(yán)格按照措施監(jiān)督檢查,穩(wěn)定特殊時(shí)期的煤炭質(zhì)量;在煤質(zhì)指標(biāo)欠量時(shí),及時(shí)分析總結(jié)、查找影響煤質(zhì)的原因,為煤質(zhì)改善提供可靠依據(jù)。
煤炭從形成產(chǎn)品到運(yùn)至用戶(hù)手中,整個(gè)生產(chǎn)鏈包括:巷道掘進(jìn)、工作面布置、毛煤開(kāi)采到洗選加工、質(zhì)檢審核、商品出售等諸多單元環(huán)節(jié);煤質(zhì)管理貫穿整個(gè)煤炭生產(chǎn)鏈,包括煤炭生產(chǎn)鏈上的各個(gè)單元中煤質(zhì)指標(biāo)及相關(guān)信息的采集、整理、統(tǒng)計(jì)、分析、處理、反饋、整理與歸檔。煤質(zhì)及相關(guān)信息流轉(zhuǎn)牽扯生產(chǎn)礦井、洗選中心、開(kāi)拓準(zhǔn)備中心、檢測(cè)中心等部門(mén);數(shù)據(jù)統(tǒng)計(jì)包含煤質(zhì)相關(guān)的原始數(shù)據(jù)、臺(tái)賬、報(bào)表、圖形等多種形式。這些都客觀的形成了龐大并且繁雜的煤質(zhì)數(shù)據(jù)及其關(guān)聯(lián)關(guān)系[2]。
有機(jī)整合煤炭生產(chǎn)鏈上的各個(gè)單元區(qū)域中煤質(zhì)指標(biāo)及煤質(zhì)相關(guān)信息,建立統(tǒng)一的煤質(zhì)字典、統(tǒng)一數(shù)據(jù)格式,運(yùn)用計(jì)算機(jī)網(wǎng)絡(luò)管理整條生產(chǎn)鏈中的煤質(zhì)信息,在集團(tuán)內(nèi)部實(shí)現(xiàn)煤質(zhì)信息共享最大化,為集團(tuán)管理工作提供有力的支持,為提質(zhì)增效奠定更加堅(jiān)實(shí)的基礎(chǔ)。
在競(jìng)爭(zhēng)日趨激烈的煤炭行業(yè)中,加強(qiáng)煤炭生產(chǎn)過(guò)程中對(duì)煤炭質(zhì)量的管理與把控是提高煤炭企業(yè)效益的關(guān)鍵所在,也是煤炭企業(yè)在市場(chǎng)競(jìng)爭(zhēng)中處于不敗之地的有力保障[3]。目前神東集團(tuán)煤質(zhì)管理信息化缺少統(tǒng)一的平臺(tái),煤炭經(jīng)銷(xiāo)中心提出以現(xiàn)有預(yù)測(cè)方法為基礎(chǔ),建設(shè)“煤質(zhì)預(yù)測(cè)現(xiàn)場(chǎng)管理信息系統(tǒng)”。為此,在目前神東集團(tuán)煤質(zhì)管理現(xiàn)狀及工作流程基礎(chǔ)上,針對(duì)神東煤質(zhì)管理的特點(diǎn),分析煤質(zhì)預(yù)測(cè)現(xiàn)場(chǎng)管理系統(tǒng)功能配置的設(shè)計(jì)思路。
神東集團(tuán)下轄煤炭企業(yè)包括若干生產(chǎn)礦井、洗煤廠、運(yùn)銷(xiāo)部門(mén)等等,各生產(chǎn)單位下又有很多部門(mén)。各生產(chǎn)單位的煤質(zhì)管理過(guò)程也存在不同之處,如各煤礦煤質(zhì)管理中的煤種有所差別,所以其采樣點(diǎn)也存在著區(qū)別,化驗(yàn)數(shù)據(jù)也有所差異;并且還有新的開(kāi)采礦井、洗煤廠正在籌建中[4]。因此針對(duì)各單位的差異,系統(tǒng)應(yīng)可以根據(jù)需要進(jìn)行配置;從集團(tuán)發(fā)展的角度考慮,煤質(zhì)管理系統(tǒng)在應(yīng)對(duì)新增單位或部門(mén)時(shí)應(yīng)能以較低的成本將其納入現(xiàn)有系統(tǒng)[5]。由于新技術(shù)不斷出現(xiàn),系統(tǒng)可能需要基于現(xiàn)有的功能模塊有一定程度的可擴(kuò)展性,基于上述原因,為了使集團(tuán)煤質(zhì)信息化管理更加規(guī)范和統(tǒng)一,并且能夠滿(mǎn)足各生產(chǎn)單位的內(nèi)部管理特點(diǎn),同時(shí)又要考慮到未來(lái)新增單位需要與煤質(zhì)預(yù)測(cè)現(xiàn)場(chǎng)管理系統(tǒng)進(jìn)行搭接,在設(shè)計(jì)時(shí)采用了基于差異的、按模板的子系統(tǒng)功能配置的設(shè)計(jì)思想。按行業(yè)中的已有業(yè)務(wù)分類(lèi)方法,抽取出5類(lèi)子系統(tǒng)功能模板:集團(tuán)功能模板、洗煤廠功能模板、礦井功能模板、運(yùn)銷(xiāo)公司功能模板、質(zhì)檢站功能模板[6]。每一類(lèi)功能模板下配有這一模板的所有功能,如圖1所示。
圖1 系統(tǒng)模板化設(shè)計(jì)思路Fig.1 System template design ideas
在5類(lèi)子系統(tǒng)功能模板中,每類(lèi)功能模板中都包含了這類(lèi)系統(tǒng)現(xiàn)有的所有功能,這樣每一類(lèi)模板就形成一棵功能樹(shù)[7]。同類(lèi)型單位的功能都“大同小異”。
首先,利用“大同”特征,當(dāng)新增某個(gè)類(lèi)型的單位時(shí),通過(guò)外鍵關(guān)聯(lián)該單位與其所屬類(lèi)型模板,就可以得到此類(lèi)模板功能樹(shù)中的全部功能。因?yàn)閱挝恢皇桥c某類(lèi)型的模板號(hào)進(jìn)行了關(guān)聯(lián),詳細(xì)單位與詳細(xì)功能沒(méi)有進(jìn)行直接的綁定,所以單位與功能為松耦合。此時(shí),功能樹(shù)即可進(jìn)行單獨(dú)變化,而不用考慮單位,則可靈活地在功能樹(shù)中增加新的功能。
其次,“小異”則可以通過(guò)對(duì)模板進(jìn)行“砍樹(shù)”得以實(shí)現(xiàn)。每個(gè)類(lèi)別的功能模板為一棵大的功能樹(shù),相同類(lèi)別單位只需要根據(jù)其實(shí)際需要過(guò)濾掉功能樹(shù)中不相關(guān)的功能分枝,便可構(gòu)成適合自己的功能樹(shù)[8]。在實(shí)現(xiàn)時(shí),僅需將不需要的部分功能保存在數(shù)據(jù)庫(kù)中。此時(shí),當(dāng)?shù)卿涍M(jìn)某個(gè)單位的煤質(zhì)管理系統(tǒng)時(shí),系統(tǒng)會(huì)首先獲取其所屬類(lèi)型的功能模板樹(shù),其次再獲取存儲(chǔ)在數(shù)據(jù)庫(kù)中的不需要的功能信息。通過(guò)將二者進(jìn)行求差之后則可得到該單位的功能樹(shù)。這種存“小異”的設(shè)計(jì)思想很大程度上節(jié)省了數(shù)據(jù)存儲(chǔ)空間。同樣,因?yàn)檫^(guò)濾信息與單位之間的關(guān)聯(lián)方式相似于外鍵的方式,因此,不同單位也可以靈活地按照需要制定所需功能。
最后,將“大同”放入模板,而將“小異”按單位在數(shù)據(jù)庫(kù)進(jìn)行存儲(chǔ),實(shí)現(xiàn)了第1層次的系統(tǒng)功能設(shè)置。這樣,可以區(qū)分相同類(lèi)型的不同單位之間的功能差異。在實(shí)踐應(yīng)用時(shí),同一單位的不同人員因其業(yè)務(wù)分工不同,在登入系統(tǒng)后所能執(zhí)行的操作也是不同的。這樣就出現(xiàn)了同一單位不同人員角色劃分的問(wèn)題。在這方面,系統(tǒng)的設(shè)計(jì)也借鑒了不同單位之間的差別處理方式,就是通過(guò)“砍樹(shù)”的方法,將該單位的功能樹(shù)按不同角色的需求再進(jìn)行過(guò)濾。對(duì)擔(dān)任同一角色的不同用戶(hù)之間的差異也通過(guò)過(guò)濾進(jìn)行區(qū)分。
信息管理系統(tǒng)中功能配置系統(tǒng)涉及到單位、用戶(hù)、角色、功能以及他們相互之間的關(guān)聯(lián)關(guān)系,為此設(shè)計(jì)的數(shù)據(jù)表包含單位基本信息表、功能模板表、用戶(hù)基本信息表、角色表、單位功能表、用戶(hù)權(quán)限表、角色權(quán)限表[9]。數(shù)據(jù)表的核心字段及關(guān)系設(shè)計(jì)如圖2所示。單位基本信息表、功能模板表、用戶(hù)基本信息表、角色表。單位功能表是在單位基本表和功能模板表之間通過(guò)ID建立對(duì)應(yīng)關(guān)系,依據(jù)單位模板配置單位的功能。用戶(hù)權(quán)限表在用戶(hù)和功能之間建立關(guān)系,形成用戶(hù)的功能列表。角色權(quán)限表是在角色和功能之間建立關(guān)聯(lián)關(guān)系,形成角色的功能列表。
圖2 數(shù)據(jù)表的核心字段及關(guān)系設(shè)計(jì)Fig.2 The design of core field and relation of data table
功能模板表是功能配置中的核心,用這個(gè)表來(lái)實(shí)現(xiàn)功能列表的樹(shù)形結(jié)構(gòu),見(jiàn)表1。這里主要介紹功能模板表的設(shè)計(jì),包含6個(gè)字段:功能號(hào)、模板/功能名稱(chēng)、資源地址、所屬模板、結(jié)點(diǎn)類(lèi)型、備注信息字段。
表1 功能模板數(shù)據(jù)Table 1 Function template data
表2為礦井功能模板的一部分。ID設(shè)置為5位整數(shù),第1位是模板號(hào),1—礦井模板;2—洗煤廠模板;3—質(zhì)監(jiān)站模板;4—運(yùn)銷(xiāo)公司模板;5—集團(tuán)模板。第2~5位是子系統(tǒng)的分支結(jié)點(diǎn)或者是功能結(jié)點(diǎn)。功能模板數(shù)據(jù)表在邏輯上通過(guò)所屬模塊構(gòu)建起樹(shù)形功能列表,所屬模塊的作用是指向該結(jié)點(diǎn)的父結(jié)點(diǎn)的ID,如果該結(jié)點(diǎn)的所屬模塊號(hào)是“00000”,則為根結(jié)點(diǎn)。結(jié)點(diǎn)類(lèi)型取值為0或1,0表示是分支結(jié)點(diǎn),1表示是功能結(jié)點(diǎn),功能結(jié)點(diǎn)的資源地址填寫(xiě)的是該模塊的入口URL。
表2 礦井功能模板Table 2 Mine function template
系統(tǒng)的功能模塊包含:?jiǎn)挝还芾怼⒂脩?hù)管理、功能管理、角色管理,單位功能配置、用戶(hù)權(quán)限設(shè)置、角色權(quán)限設(shè)置[10]。單位管理、用戶(hù)管理、功能管理、角色管理模塊實(shí)現(xiàn)了單位、用戶(hù)、功能、角色的增刪改查功能。單位功能配置、用戶(hù)權(quán)限設(shè)置、角色權(quán)限設(shè)置3個(gè)模塊通過(guò)前面所述的“大同小異”的模式實(shí)現(xiàn)了功能配置。
在實(shí)行中,系統(tǒng)最基本的對(duì)象是單位,需要先構(gòu)建單位,在“單位管理”中進(jìn)行單位的增刪改等操作,構(gòu)建單位后為單位配置功能。功能分兩類(lèi),一是模板,二是功能。模板就像文件夾,功能就像文件。模板之間可以嵌套。在“功能管理”中有功能增刪等相關(guān)界面。有了功能就得有角色,“角色管理”中有角色管理相關(guān)界面。此時(shí)就可以創(chuàng)建用戶(hù)了,在“用戶(hù)管理”中創(chuàng)建、刪除修改,之后就可以為用戶(hù)的角色分配權(quán)限。系統(tǒng)功能配置的整體邏輯,如圖3所示。
圖3 功能配置序列Fig.3 Function configuration sequence
首先,系統(tǒng)管理員按照不同單位、同一單位不同角色、同一角色不同用戶(hù)的實(shí)際業(yè)務(wù)需求從而對(duì)功能模板樹(shù)進(jìn)行配置。然后,當(dāng)單位用戶(hù)再次登錄到系統(tǒng)后,后臺(tái)模塊會(huì)按照管理員所設(shè)置的情況將該用戶(hù)可見(jiàn)的部分呈現(xiàn)給登錄用戶(hù)。
本系統(tǒng)計(jì)劃采用Vue.js框架實(shí)現(xiàn)管理系統(tǒng)的前端模塊,后臺(tái)采用SpringBoot+SSM框架實(shí)現(xiàn)后端模塊的開(kāi)發(fā)。Vue.js是一個(gè)漸進(jìn)式的JavaScript開(kāi)發(fā)框架,通過(guò)組件的開(kāi)發(fā),最后進(jìn)行組件的組合,合并組件形成頁(yè)面[11]。與其它大型框架不同的是,Vue被設(shè)計(jì)為可以自底向上逐層應(yīng)用[12]。Vue是一個(gè)輕量級(jí)框架,只關(guān)注視圖層,是一個(gè)構(gòu)建數(shù)據(jù)的視圖集合,簡(jiǎn)單易用,在容易上手的同時(shí),也易于結(jié)合第三方庫(kù)。SpringBoot是一個(gè)簡(jiǎn)化Spring的應(yīng)用開(kāi)發(fā)框架,集成了大量常用的第三方庫(kù)配置。SpringBoot通過(guò)“習(xí)慣優(yōu)于配置”的思想從而實(shí)現(xiàn) Web項(xiàng)目的快速搭建,從而避免開(kāi)發(fā)人員定義樣板化的配置[13]。
(1)“大同小異”的基于模板的功能配置系統(tǒng),通過(guò)“大同”制定功能模板,通過(guò)“小異”配置權(quán)限,使用過(guò)濾方法實(shí)現(xiàn)了功能的3個(gè)不同層次配置:?jiǎn)挝还δ芘渲谩⒂脩?hù)功能設(shè)置、角色功能設(shè)置,一方面實(shí)現(xiàn)了系統(tǒng)的可擴(kuò)展性、靈活性以及低成本的新單位增加,另一方面大大降低了系統(tǒng)的開(kāi)發(fā)難度。從而使系統(tǒng)的產(chǎn)品化成為可能。
(2)基于模板的功能配置系統(tǒng)雖然是針對(duì)“煤質(zhì)預(yù)測(cè)現(xiàn)場(chǎng)管理信息系統(tǒng)”設(shè)計(jì)的,但是這種設(shè)計(jì)思想可以推廣應(yīng)用于其他管理信息系統(tǒng),具有一定的參考和借鑒意義。