隨著CAD/CAM技術(shù)的推廣與應(yīng)用,目前國內(nèi)大多數(shù)制造企業(yè)已經(jīng)實現(xiàn)了產(chǎn)品設(shè)計的數(shù)字化,計算機(jī)出圖率達(dá)到了100%,機(jī)械圖文檔成了制造企業(yè)生產(chǎn)活動的重要技術(shù)資料。但很多企業(yè)的信息化程度還比較低,對于大量的圖文檔和數(shù)據(jù)資料,沒有進(jìn)行有效的集中控制和管理,造成了文檔查詢不便、共享度低、保密性差、文檔易流失等問題,間接的影響了企業(yè)的效益。因此,開發(fā)機(jī)械圖文檔管理系統(tǒng),有效地組織管理產(chǎn)品項目過程中所產(chǎn)生的各類圖文檔與數(shù)據(jù),是加強(qiáng)產(chǎn)品設(shè)計制造流程控制提高產(chǎn)品開發(fā)效率的重要途徑。
傳統(tǒng)的圖文檔管理軟件主要偏重于與CAD系統(tǒng)的集成,因而大多數(shù)采用C/S架構(gòu)。由于C/S架構(gòu)模式的軟件存在系統(tǒng)訪問不夠方便、維護(hù)成本高等問題,隨著Web技術(shù)的發(fā)展,采用B/S架構(gòu)開發(fā)圖文檔管理系統(tǒng)正日益成為研究熱點和企業(yè)的首選。
1 系統(tǒng)架構(gòu)
本文采用J2EE技術(shù)架構(gòu)作為系統(tǒng)開發(fā)的技術(shù)標(biāo)準(zhǔn)。J2EE是美國Sun公司推出的一種Web應(yīng)用程序模型,它提供了一種基于組件的方法對企業(yè)級應(yīng)用系統(tǒng)進(jìn)行設(shè)計、開發(fā)、裝配和部署。本系統(tǒng)采用J2EE的多層Web應(yīng)用程序結(jié)構(gòu),如圖1所示,并結(jié)合MVC模式,將表示邏輯、控制邏輯與業(yè)務(wù)邏輯分離。
圖1 多層Web應(yīng)用程序結(jié)構(gòu)
2 系統(tǒng)分析設(shè)計
2.1 系統(tǒng)功能需求分析
機(jī)械圖文檔管理系統(tǒng)的用戶有三類:系統(tǒng)管理員、項目經(jīng)理、項目成員。系統(tǒng)管理員維護(hù)整個系統(tǒng)信息,進(jìn)行系統(tǒng)初始化、項目經(jīng)理帳號分配、日常數(shù)據(jù)備份等。項目經(jīng)理負(fù)責(zé)項目信息和成員的配置,并創(chuàng)建項目流程和進(jìn)行任務(wù)分配。項目成員通過與系統(tǒng)的交互,根據(jù)項目經(jīng)理或流程上一步操作者分配或傳達(dá)的任務(wù)進(jìn)行工作,創(chuàng)建、修訂或?qū)徍讼鄳?yīng)的圖文檔。
項目流程每個環(huán)節(jié)的處理及文檔的操作都受帳號權(quán)限的控制,項目成員只能查詢和操作自己任務(wù)所涉及的圖文檔。項目經(jīng)理具有訪問其項目所有文檔和數(shù)據(jù)信息的權(quán)限,此外,還可以創(chuàng)建、刪除、修改、查詢、關(guān)閉項目、配置項目成員及對圖文檔的操作進(jìn)行授權(quán)。項目一旦完成被關(guān)閉,其所有的圖文檔也一起被關(guān)閉,項目成員不能再創(chuàng)建和修改該項目的圖文檔,但項目經(jīng)理可以訪問并可以授權(quán)成員訪問,以便文檔資源的重用共享。
2.2 系統(tǒng)設(shè)計
2.2.1 代碼方案設(shè)計
代碼是表征客觀存在的實體或?qū)傩缘囊粋計算機(jī)可識別和處理的符號。本系統(tǒng)涉及的對象有項目、用戶、流程、流程節(jié)點、任務(wù)、圖文檔等。數(shù)據(jù)具有分類多并量大等特點,為了能在計算機(jī)系統(tǒng)中有效的標(biāo)識和管理它們,好的代碼設(shè)計方案是系統(tǒng)實現(xiàn)的關(guān)鍵。根據(jù)代碼設(shè)計的唯一化、規(guī)范化、系統(tǒng)化等原則,同時,考慮數(shù)據(jù)查詢效率及編程方便,設(shè)計了項目、用戶、流程、流程節(jié)點、任務(wù)、圖文檔等對象的代碼。以圖文檔代碼為例,其采用區(qū)間碼,設(shè)計如下:
圖文檔代碼=所屬項目編號+圖文檔類型+順序碼+版本號。如P0001D020001A,表示P0001項目下,文件類型為02(.dwg文件)的第0001文檔,版本號為A,其中,版本號=[A1B1CI…1Z]。
2.2.2 系統(tǒng)模塊結(jié)構(gòu)設(shè)計
根據(jù)系統(tǒng)功能需求,將系統(tǒng)模塊結(jié)構(gòu)組織為:系統(tǒng)管理、項目管理、項目成員管理、流程管理、任務(wù)管理和圖文檔管理。其中,系統(tǒng)管理包括系統(tǒng)初始化、項目經(jīng)理帳號配置、數(shù)據(jù)備份、系統(tǒng)登錄模塊。項目管理包括項目創(chuàng)建、查詢、修改和關(guān)閉模塊。項目成員管理包括成員創(chuàng)建、配置、刪除、角色配置、授權(quán)模塊。流程管理實現(xiàn)項目工作流配置和控制,包括流程創(chuàng)建、節(jié)點配置、啟動、變更、關(guān)閉等模塊。任務(wù)管理實現(xiàn)項目工作流程上各環(huán)節(jié)任務(wù)的分配和控制,以個人任務(wù)箱的方式實現(xiàn),包括任務(wù)配置、通知、狀態(tài)查看、提醒、提交等模塊。圖文檔管理包括文檔的上傳、下載、修改、刪除、查詢及訪問控制等模塊。
2.2.3 數(shù)據(jù)庫結(jié)構(gòu)設(shè)計
本系統(tǒng)設(shè)計的關(guān)系模式符合3NF規(guī)范,合理的存儲了系統(tǒng)涉及的數(shù)據(jù)信息。包括:User(帳號信息)、Role(角色信息)、Project(項目信息)、Flow(流程信息)、FlowNode(流程節(jié)點信息)、Document(文檔信息)、Assignment(任務(wù)信息)。
3 系統(tǒng)實現(xiàn)
系統(tǒng)采用J2EE的多層Web應(yīng)用程序結(jié)構(gòu),表示邏輯和控制邏輯實現(xiàn)于JSP頁面,業(yè)務(wù)邏輯封裝成JavaBean組件,實現(xiàn)邏輯的分離,便于系統(tǒng)的開發(fā)和維護(hù)。系統(tǒng)用Dreamweaver、Photoshop進(jìn)行Web頁面的界面設(shè)計和圖像處理,實現(xiàn)表示邏輯,用Sun公司的NetBeans集成開發(fā)工具進(jìn)行負(fù)責(zé)控制邏輯的JSP程序編寫和JavaBean組件開發(fā),將頁面和組件部署到Tomcat服務(wù)器中,數(shù)據(jù)庫服務(wù)器使用SQL Server。用戶在客戶端使用瀏覽器訪問系統(tǒng)。
3.1 表示邏輯層實現(xiàn)
表示邏輯層實現(xiàn)了用戶界面及用戶與系統(tǒng)的交互,本系統(tǒng)的表示邏輯體現(xiàn)為Web頁面,如輸入表單的顯示,動態(tài)內(nèi)容的輸出,頁面靜態(tài)信息的顯示等。對于一些輸入判斷,如登錄密碼長度,日期格式,必選項是否已選等,使用JavaScript進(jìn)行客戶端編程實現(xiàn)。
3.2 控制邏輯層實現(xiàn)
系統(tǒng)的控制邏輯主要由JSP程序?qū)崿F(xiàn),負(fù)責(zé)表示邏輯層和業(yè)務(wù)邏輯層之間的控制關(guān)系。它接收表示邏輯層的客戶請求或處理要求,調(diào)用業(yè)務(wù)邏輯層的JavaBean完成具體的事務(wù)處理,將結(jié)果反饋給客戶。以下以配置項目成員為例,闡述其控制邏輯的實現(xiàn)。
項目經(jīng)理即用戶登錄,從自己所負(fù)責(zé)的項目列表中選擇要配置成員的項目,進(jìn)入項目成員配置ProMemberconfig.jsp頁面,如圖2所示。該頁面的控制邏輯利用request.getParameter(“Pid”)方法獲取上一頁面中用戶所選擇的項目信息,調(diào)用名為Project的JavaBean的MemberQuery方法,從數(shù)據(jù)庫中查詢得到該項目已有的成員信息,輸出到頁面的“現(xiàn)有項目成員”列表框中。并調(diào)用名為User的JavaBean的Querr方法,獲取整個系統(tǒng)所有的用戶信息,剔除當(dāng)前已加入該項目的用戶,將這些用戶信息輸出到頁面的“可供添加人員”列表框中。如果系統(tǒng)沒有建立要配置的用戶信息,則用戶可點擊“添加項目成員”進(jìn)入UserAdd.jsp頁面,創(chuàng)建新用戶。用戶從該頁面列表框中添加或刪除項目成員,由頁面的JavaScript程序在客戶端實現(xiàn)。用戶選擇好成員后,點擊確定按鈕,由ProMemberConfigRsp.jsp進(jìn)行相應(yīng)處理,調(diào)用名為Project的JavaBean的MemberAdd方法,將項目成員信息存儲到數(shù)據(jù)庫,并使用respons.sendRedirect(“ProMemberConfig.jsp”)重定向到項目成員配置頁面,顯示當(dāng)前項目成員信息。
圖2 項目成員配置頁面
3.3 業(yè)務(wù)邏輯層實現(xiàn)
采用面向?qū)ο蟮姆椒ǎ瑢⑾到y(tǒng)問題域中的對象抽象成類,設(shè)計成JavaBean,將對象的操作和服務(wù)封裝在JavaBean中,為控制邏輯層調(diào)用。本系統(tǒng)從問題域?qū)ο蟮慕嵌瘸橄笤O(shè)計的JavaBean有User、Project、Flow、FlowNode、Document、Assignment。此外,還增加了封裝數(shù)據(jù)庫操作的DataBase JavaBean,以及下載和重用了第三方提供的一些開源JavaBean,如實現(xiàn)加密算法的md5組件,和實現(xiàn)文件上傳的SmartUplOAd組件。
4 結(jié)束語
本系統(tǒng)采用J2EE的多層Web應(yīng)用程序結(jié)構(gòu),將表示邏輯、控制邏輯和業(yè)務(wù)邏輯分離,有利于系統(tǒng)的開發(fā)、維護(hù)及代碼的共享重用。該系統(tǒng)對中小制造業(yè)企業(yè)普遍適用,企業(yè)能根據(jù)自身產(chǎn)品開發(fā)的特點定制項目流程和流程節(jié)點,對項目過程的圖文檔和數(shù)據(jù)進(jìn)行管理。使用該系統(tǒng)有利于提高企業(yè)產(chǎn)品圖文檔及數(shù)據(jù)管理效率,對產(chǎn)品項目開發(fā)過程進(jìn)行全面控制與管理,為產(chǎn)品開發(fā)人員提供初步的協(xié)同設(shè)計環(huán)境。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標(biāo)題:基于J2EE的機(jī)械圖文檔管理系統(tǒng)的研究與實現(xiàn)