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