高 源
(大慶煉化公司信息中心,黑龍江 大慶 163000)
針對(duì)當(dāng)前煉油化工企業(yè)使用的電子表格臺(tái)賬管理方式存在的數(shù)據(jù)準(zhǔn)確性、一致性較差的問(wèn)題,需要建設(shè)涵蓋招標(biāo)項(xiàng)目管理大部分工作的統(tǒng)一集成平臺(tái)(招標(biāo)管理系統(tǒng)),提高查詢、數(shù)據(jù)統(tǒng)計(jì)工作的效率和數(shù)據(jù)準(zhǔn)確性。招標(biāo)管理系統(tǒng)采用微軟Asp.Net MVC 技術(shù),以SqlServer 作為數(shù)據(jù)庫(kù)系統(tǒng)進(jìn)行數(shù)據(jù)存儲(chǔ)。
(1)Asp.Net MVC 是Windows 系統(tǒng)下的Web研發(fā)框架。MVC即Model、View、Controller,是用戶界面(User Interface,UI)端分層的3層模式。
(2)Bootstrap 是美國(guó)Twitter 公司基于超文本標(biāo)記語(yǔ)言(Hyper Text Markup Language,HTML)、層疊樣式表(Cascading Style Sheets,CSS)、JavaScript 開(kāi)發(fā)的簡(jiǎn)潔、直觀、強(qiáng)悍的前端開(kāi)發(fā)框架,使Web 開(kāi)發(fā)更加快捷。另外,招標(biāo)管理系統(tǒng)還利用基于Bootstrap 框架開(kāi)發(fā)的AdminLte 自適應(yīng)開(kāi)發(fā)框架進(jìn)行界面設(shè)計(jì),可適配多種不同分辨率的顯示器,在移動(dòng)設(shè)備上也可直接應(yīng)用。
(3)Entity Framework 是微軟以ADO.NET 為基礎(chǔ)所發(fā)展出來(lái)的對(duì)象關(guān)系映射(Object Relational Mapping,O/R Mapping)解決方案。Entity Framework 提供了一個(gè)綜合的、基于模型的系統(tǒng),可以改變?yōu)樗械念I(lǐng)域模型編寫相似的數(shù)據(jù)訪問(wèn)代碼的狀態(tài),便于開(kāi)發(fā)者創(chuàng)建數(shù)據(jù)訪問(wèn)層。
招標(biāo)管理系統(tǒng)主要由招標(biāo)臺(tái)賬信息管理、招標(biāo)進(jìn)度管理、技術(shù)規(guī)格書審批、標(biāo)樣品送樣檢測(cè)委托、招標(biāo)會(huì)議室預(yù)訂、技術(shù)規(guī)格書查詢、用戶管理與權(quán)限設(shè)定7 個(gè)主要功能模塊組成,現(xiàn)就系統(tǒng)的主要功能模塊的設(shè)計(jì)與實(shí)現(xiàn)分析如下。
招標(biāo)管理系統(tǒng)利用Entity FrameWork 框架的Code First 技術(shù)進(jìn)行統(tǒng)一的數(shù)據(jù)建模工作,為系統(tǒng)數(shù)據(jù)模型的搭建提供可靠、快捷的技術(shù)支持。該技術(shù)可實(shí)現(xiàn)對(duì)數(shù)據(jù)模型新增、更改的自動(dòng)遷移,避免人工修改過(guò)程中的失誤導(dǎo)致的系統(tǒng)信息錯(cuò)誤,同時(shí),嚴(yán)格限定數(shù)據(jù)的格式和對(duì)應(yīng)關(guān)系。用戶錄入的信息與數(shù)據(jù)模型類型不匹配時(shí),系統(tǒng)自動(dòng)拒絕信息的保存,杜絕錯(cuò)誤數(shù)據(jù)進(jìn)入數(shù)據(jù)庫(kù)存儲(chǔ),為數(shù)據(jù)的準(zhǔn)確性和一致性提供可靠保障,在系統(tǒng)開(kāi)發(fā)代碼的編寫過(guò)程中,系統(tǒng)也可自動(dòng)驗(yàn)證數(shù)據(jù)格式的正確性,避免開(kāi)發(fā)過(guò)程中出現(xiàn)數(shù)據(jù)格式錯(cuò)誤。
技術(shù)規(guī)格書綜合評(píng)標(biāo)法審批需要對(duì)技術(shù)規(guī)格書、評(píng)分標(biāo)準(zhǔn)(技術(shù))、評(píng)分標(biāo)準(zhǔn)(商務(wù))3 種便攜式文檔格式(Portable Document Forma,PDF)文件進(jìn)行分別審批,其中每項(xiàng)文件的審批級(jí)別可在一級(jí)審批和二級(jí)審批之間自由選擇,每項(xiàng)文件的每級(jí)審批中可自由選擇多個(gè)人進(jìn)行審批。在每個(gè)文件的審批過(guò)程中,出現(xiàn)任意一個(gè)審批人員回退時(shí),審批流程執(zhí)行回退操作,回退需填寫說(shuō)明原因?;赝撕笥杉夹g(shù)規(guī)格書提報(bào)人員重新進(jìn)行上傳并提交審批。系統(tǒng)對(duì)整個(gè)提報(bào)、回退操作進(jìn)行全過(guò)程日志記錄,保留審核回退后的文件記錄,以實(shí)現(xiàn)不同文件版本的對(duì)比。
當(dāng)全部3 種文件的所有審批級(jí)別人員都通過(guò)后,系統(tǒng)自動(dòng)進(jìn)行判斷審批通過(guò),利用iTextsharp 工具將3 種綜合評(píng)標(biāo)法技術(shù)規(guī)格書PDF 文件自動(dòng)進(jìn)行合并操作,在合并過(guò)程中保留原始文件的格式信息,形成一份完整的技術(shù)規(guī)格書PDF文件。
具備招標(biāo)技術(shù)規(guī)格書管理權(quán)限的人員可在上傳模塊將合并后的技術(shù)規(guī)格書文件上傳至招標(biāo)技術(shù)標(biāo)準(zhǔn)查詢模塊,供全部門人員查詢。技術(shù)規(guī)格書提報(bào)人員、各級(jí)審批人員可實(shí)時(shí)查看審批進(jìn)度,監(jiān)督整個(gè)審批流程,加快審批進(jìn)度,提高招標(biāo)過(guò)程中技術(shù)規(guī)格書審批環(huán)節(jié)的效率。
招標(biāo)管理臺(tái)賬分為物資、框架、工程、服務(wù)4 種類別,并且每種類別的數(shù)據(jù)都不相同,每種臺(tái)賬包括64~68 種不同類型的數(shù)據(jù),每項(xiàng)臺(tái)賬數(shù)據(jù)中還包括“投標(biāo)人信息”“評(píng)標(biāo)委員會(huì)”“招標(biāo)文件聯(lián)審”“澄清(修改)”“異議處理”“附件文件” 6 個(gè)子表數(shù)據(jù)。
在設(shè)計(jì)招標(biāo)管理系統(tǒng)時(shí),可對(duì)子表數(shù)據(jù)進(jìn)行單個(gè)錄入和Excel 批量導(dǎo)入的方式進(jìn)行信息錄入,方便用戶快速對(duì)數(shù)據(jù)進(jìn)行增加、修改。
招標(biāo)管理系統(tǒng)可按部門對(duì)評(píng)標(biāo)人員評(píng)審費(fèi)進(jìn)行統(tǒng)計(jì)匯總,改變以往手工計(jì)算評(píng)審費(fèi)的方式,提高工作效率和準(zhǔn)確性。招標(biāo)管理系統(tǒng)可利用Apose.cell 控件實(shí)現(xiàn)對(duì)復(fù)雜的Excel 表格的導(dǎo)出,能根據(jù)用戶的查詢條件、用戶的查看范圍導(dǎo)出所有招標(biāo)臺(tái)賬、臺(tái)賬子表數(shù)據(jù),方便用戶對(duì)臺(tái)賬信息進(jìn)行存檔。
因招標(biāo)臺(tái)賬信息較多且格式復(fù)雜,在招標(biāo)臺(tái)賬管理模塊的開(kāi)發(fā)中,利用Asp.Net MVC 框架中的Partial View 技術(shù)可將表格、查詢功能模塊和部分相同的表單進(jìn)行重復(fù)利用(見(jiàn)圖1),在多個(gè)頁(yè)面共享前端、后臺(tái)代碼,既加快了開(kāi)發(fā)速度,也避免了后期修改多個(gè)頁(yè)面代碼的問(wèn)題,為軟件項(xiàng)目的維護(hù)提供了極大便利。
圖1 利用Partial View 技術(shù)進(jìn)行模塊化開(kāi)發(fā)
在系統(tǒng)開(kāi)發(fā)過(guò)程中,因招標(biāo)臺(tái)賬的數(shù)據(jù)列較多、表格較長(zhǎng),為方便業(yè)務(wù)人員使用,招標(biāo)管理系統(tǒng)利用Bootstrap Table 開(kāi)源框架進(jìn)行表格設(shè)計(jì),將“項(xiàng)目名稱”“項(xiàng)目文件編號(hào)”進(jìn)行固定列凍結(jié),解決了IE 瀏覽器對(duì)固定表格列頭不支持的技術(shù)問(wèn)題,避免業(yè)務(wù)人員在拖動(dòng)表格時(shí)無(wú)法知道具體是哪個(gè)招標(biāo)項(xiàng)目的問(wèn)題。
招標(biāo)進(jìn)度管理可分別以不同顏色設(shè)置項(xiàng)目狀態(tài)為“對(duì)接”“實(shí)施”“終止”,方便管理人員隨時(shí)掌握項(xiàng)目進(jìn)度。相關(guān)人員可根據(jù)是否完成、類型、項(xiàng)目負(fù)責(zé)人、項(xiàng)目名稱、中標(biāo)通知書發(fā)出時(shí)間對(duì)招標(biāo)進(jìn)度信息進(jìn)行檢索。
當(dāng)用戶填寫中標(biāo)通知書發(fā)出時(shí)間后,招標(biāo)管理系統(tǒng)根據(jù)當(dāng)前日期與中標(biāo)通知書之間的關(guān)系自動(dòng)判斷項(xiàng)目是否完成,并更改相應(yīng)的項(xiàng)目進(jìn)度狀態(tài),保證數(shù)據(jù)準(zhǔn)確性,方便用戶使用。
根據(jù)用戶的實(shí)際需求,招標(biāo)管理系統(tǒng)實(shí)現(xiàn)了聯(lián)審時(shí)間、招標(biāo)方案接收時(shí)間、發(fā)售招標(biāo)文件開(kāi)始、發(fā)售招標(biāo)文件截止日期、開(kāi)標(biāo)時(shí)間、備注6 項(xiàng)數(shù)據(jù)與招標(biāo)臺(tái)賬進(jìn)行雙向數(shù)據(jù)同步,避免用戶重復(fù)填寫數(shù)據(jù)。
基于招標(biāo)管理系統(tǒng)利用MVC 的權(quán)限模塊建立權(quán)限角色管理框架,通過(guò)權(quán)限可自由組合成一個(gè)角色信息,可對(duì)單個(gè)用戶賦予多個(gè)角色信息,通過(guò)這種模式,自由地將多種權(quán)限進(jìn)行組合成為一種角色。同時(shí)也可將多種角色賦予特定用戶,進(jìn)行授權(quán)后,該用戶即可獲得該角色下所有系統(tǒng)操作權(quán)限,可快速、方便地應(yīng)對(duì)用戶權(quán)限變動(dòng)的需求。建立該權(quán)限角色框架后,可應(yīng)用到今后的軟件開(kāi)發(fā)過(guò)程中,為軟件系統(tǒng)的權(quán)限建立提供統(tǒng)一的模板,不需要再重復(fù)開(kāi)發(fā)用戶權(quán)限模塊。
用戶通過(guò)招標(biāo)管理系統(tǒng)使用域賬號(hào)進(jìn)行登錄,可直接連接到總部域服務(wù)器,對(duì)賬號(hào)、密碼進(jìn)行認(rèn)證,用戶只需掌握一套域賬號(hào)密碼即可登錄多個(gè)系統(tǒng),避免管理多個(gè)密碼的問(wèn)題。
基于Asp.Net MVC 架構(gòu)開(kāi)發(fā)的招標(biāo)管理系統(tǒng)從數(shù)據(jù)模型上保證了數(shù)據(jù)的正確性,通過(guò)合理、便捷的操作可最大程度地提高工作效率,提升信息錄入的準(zhǔn)確性和及時(shí)性。整個(gè)工作審批過(guò)程透明,可縮短審批周期,申請(qǐng)人可以實(shí)時(shí)掌握審批進(jìn)度,管理者也可以監(jiān)控審批過(guò)程,有效促進(jìn)企業(yè)管理升級(jí)。