倉庫管理系統(tǒng) 畢業(yè)設(shè)計
《倉庫管理系統(tǒng) 畢業(yè)設(shè)計》由會員分享,可在線閱讀,更多相關(guān)《倉庫管理系統(tǒng) 畢業(yè)設(shè)計(44頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 計算機(jī)與通信學(xué)院 本科生畢業(yè)設(shè)計說明書 倉庫管理系統(tǒng)倉庫管理系統(tǒng) 前前 言言隨著科學(xué)技術(shù)的不斷發(fā)展,我們的社會已經(jīng)進(jìn)入了一個信息化的社會,人們每天都要接收大量的信息和處理大量的數(shù)據(jù),僅靠傳統(tǒng)的紙和筆已不能適應(yīng)這個時代的要求,人們必須采取新的手段,于是信息技術(shù)進(jìn)入我們的生活,計算機(jī)不再是簡單的計算工具,它已成為我們生活中處理大量信息的不可或缺的手段。在當(dāng)今產(chǎn)業(yè)競爭越來越激烈的信息時代,企業(yè)經(jīng)營除了降低成本,提高品質(zhì)外,更需要以先進(jìn)的管理理念來整合企業(yè)內(nèi)部與外部資源。倉庫管理系統(tǒng)正是在這個背景下產(chǎn)生的。本系統(tǒng)正是針對倉庫部門的貨物信息管理,通過對倉庫基本信息出入庫信息等的系統(tǒng)界面設(shè)計,將會給管理
2、者帶來極大的方便,具有手工管理無法比擬的優(yōu)點(diǎn),例如檢索速度快、查找方便、可靠性高、存儲量大、使用時間長等。用計算機(jī)管理取代傳統(tǒng)的手工操作,大大減少了管理人員的工作量,提高了工作效率,為獲取詳細(xì)的管理信息提供了保證,方便各類人員的查詢和信息保證,增強(qiáng)了管理工作的時效和人員主動性。倉庫管理主要擺闊兩方面:一是倉庫的基本信息,涉及人員信息、庫房信息、供貨商信息、客戶信息;另一項是倉庫業(yè)務(wù)管理,包括入庫管理、在庫管理、出庫管理、報表管理。在本系統(tǒng)中側(cè)重實(shí)現(xiàn)倉庫的基本信息管理。摘摘 要要倉庫管理系統(tǒng)是為了實(shí)現(xiàn)企業(yè)產(chǎn)品管理的系統(tǒng)化、規(guī)范化和自動化,從而提高企業(yè)管理效率而設(shè)計的。它完全取代了原來一直用人工管
3、理的工作方式,避免了由于管理人員的工作疏忽以及管理質(zhì)量問題所造成的各種錯誤,為及時、準(zhǔn)確、高效的完成倉庫管理提供了強(qiáng)有力的工具和管理手段。倉庫管理系統(tǒng)是一個中小型數(shù)據(jù)庫管理系統(tǒng),它界面美觀、操作簡單、安全性高,基本滿足了倉庫管理的要求。整個系統(tǒng)由基本信息、單據(jù)中心、查詢統(tǒng)計、報表打印、維護(hù)設(shè)置、幫助等模塊組成。本系統(tǒng)是在以 MySql 作為后臺數(shù)據(jù)庫,以 J2EE 為編程語言來開發(fā)的。倉庫管理系統(tǒng)在運(yùn)行階段,效果好,數(shù)據(jù)準(zhǔn)確性高,提高了工作效率,同時也實(shí)現(xiàn)了倉庫管理計算機(jī)化。關(guān)鍵詞關(guān)鍵詞: 倉庫; 管理系統(tǒng); 數(shù)據(jù)庫AbstractThe administrative system of th
4、e warehouse is designed for realizing the systematization, standardization and automization of enterprises products management and improving efficiency of enterprises management. It completely replaces the working way of artificial management originally, prevents from various kinds of mistakes becau
5、se of administrative staff neglect and the quality problem of management and offeres powerful tool and management way to complet storehouse management for prompt , accurate , high-efficient . The administrative system of the warehouse is a medium and small-scale database management system,it has not
6、 only beautiful interface, but also the high security and the simply operation , and meet the demand for storehouse management basically. Whole system is made up by basic information, document in the center, inquire statistics , report form type ,set up to maintain and module of helping etc.The Ware
7、house administrative system is designed with regarding MySql as the backstage database and regarding J2EE as programming language . The administrative system is effectual, the high data accuracy during the course of operating , improves working efficiency and realizes computerization for storehouse
8、management at the same time .Key word: The Warehouse ; Administrative System; The Database目目 錄錄摘 要.IABSTRACT .II第 1 章 緒論.1第 2 章 需求分析.22.1 倉庫管理系統(tǒng)概述.22.2 系統(tǒng)流程圖.22.3 數(shù)據(jù)流程圖.32.4 倉庫管理系統(tǒng)的角色定義.5第 3 章 總體設(shè)計.63.1 總體用例圖.63.2 用例說明.63.2.1 用戶從瀏覽器登錄.72.2.2 供貨商信息查詢用例概述.82.2.3 供貨商信息修改用例概述.92.2.4 供貨商信息添加用例概述.103.3 功能
9、模塊圖.11第 4 章 詳細(xì)設(shè)計.144.1ER 圖.144.2 數(shù)據(jù)庫設(shè)計.154.2.1 數(shù)據(jù)庫的邏輯設(shè)計.164.3 運(yùn)行環(huán)境.20第 5 章 編碼.215.1 登陸的實(shí)現(xiàn).215.1.1 登陸 action.215.1.2 登陸過濾器.225.1.3 登陸 DAO.235.2 供貨商的實(shí)現(xiàn).235.2.1 供貨商查詢 Action.235.2.2 供貨商修改 Action.255.2.2 供貨商添加 Action.255.2.3 供貨商 DAO.26第 6 章 測試.306.1 登陸測試方案.306.2 數(shù)據(jù)錄入測試.306.3 查詢測試.306.4 測試結(jié)論.30第 7 章 使用說明
10、.317.1 系統(tǒng)功能簡介.317.2 運(yùn)行環(huán)境簡介.317.3 系統(tǒng)運(yùn)行與操作指南.327.4 操作演示.327.5 特色介紹.35第 8 章 總結(jié).36參考文獻(xiàn).37致 謝.381第第 1 章章 緒論緒論倉庫管理系統(tǒng)是現(xiàn)代倉儲企業(yè)進(jìn)行貨物管理和處理的業(yè)務(wù)操作系統(tǒng)。它可以實(shí)現(xiàn)本地一個或幾個倉庫的精細(xì)化管理,也可實(shí)現(xiàn)制造企業(yè)、物流企業(yè)、連鎖業(yè)在全國范圍內(nèi)、異地多點(diǎn)倉庫的管理;它可以對貨物存儲和出貨等進(jìn)行動態(tài)安排,可以對倉儲作業(yè)流程的全過程進(jìn)行電子化操作;可以與客服中心建立數(shù)據(jù)接口使客戶通過互聯(lián)網(wǎng)實(shí)現(xiàn)遠(yuǎn)程貨物管理,可以與企業(yè)的ERP系統(tǒng)實(shí)現(xiàn)無縫連接。在現(xiàn)代企業(yè)中,倉庫管理是一項繁瑣復(fù)雜的工作,每
11、天要處理大量的單據(jù)數(shù)據(jù)。為及時結(jié)清每筆業(yè)務(wù),盤點(diǎn)庫存和貨物流動情況,保證企業(yè)生產(chǎn)用料以及貨物安全,庫管人員要花費(fèi)大量人力物力和時間來作數(shù)據(jù)記錄統(tǒng)計工作。眾所周知,倉庫管理是一種既麻煩又單調(diào)的工作,每天都是重復(fù)記錄一些貨物的存入與取出,而且貨物的種類繁多,存取有很大的隨機(jī)性,這樣為工作人員帶來了很大的不便,在操作過程中,由于人為的計算出錯率很高,一旦出錯改正也很困難,這樣簡單繁重的工作要很多人來做,為經(jīng)營者增加了很多成本。所以開發(fā)一個可行的倉庫管理系統(tǒng)是十分必要的。本系統(tǒng)以MySQL作為后臺數(shù)據(jù)庫,以java語言來開發(fā)的,不僅實(shí)現(xiàn)了倉庫管理的自動化,同時也提高了工作效率。本系統(tǒng)由以下幾個模塊組成
12、:基本信息管理、入庫管理、在庫管理、出庫管理、報表管理。2第第 2 章章 需求分析需求分析2.1 倉庫管理系統(tǒng)概述倉庫管理系統(tǒng)概述本系統(tǒng)是為物流管理而設(shè)計的高效管理系統(tǒng),系統(tǒng)功能強(qiáng)大,同時操作又比較簡單,而管理人員大多受到過系統(tǒng)的培訓(xùn),并能夠操作電腦,所以只要花很少的時間,就能夠讓他們熟悉本系統(tǒng)。系統(tǒng)開發(fā)的總體任務(wù)是實(shí)現(xiàn)各種信息的系統(tǒng)化、規(guī)范化和自動化。系統(tǒng)功能分析是在系統(tǒng)開發(fā)的總體任務(wù)的基礎(chǔ)上完成。本倉庫管理系統(tǒng)需要完成功能主要有:倉庫管理各種信息的輸入,包括貨物、供應(yīng)商、客戶、倉庫信息的輸入等。倉庫管理各種信息的查詢、統(tǒng)計、修改和維護(hù),包括貨物、單據(jù)查詢,貨物出入、職員操作統(tǒng)計,各種信息的
13、修改和維護(hù)等。打印報表的生成。在貨物管理中加入最高儲備和最低儲備字段,對倉庫中的產(chǎn)品實(shí)現(xiàn)監(jiān)控和報警。操作日志的管理。倉庫管核對貨物清單程序入庫單庫存數(shù)據(jù)庫出庫單打印程序出庫單庫存查詢程序庫存分析程序查詢庫存信息庫存?zhèn)浞莩绦驇齑鎮(zhèn)浞輬髶p計劃表理系統(tǒng)的使用幫助。2.2 系統(tǒng)流程圖系統(tǒng)流程圖出庫單3圖 2-2 系統(tǒng)流程圖2.3 數(shù)據(jù)流程圖數(shù)據(jù)流程圖數(shù)據(jù)流圖是描述系統(tǒng)的邏輯模型的,圖中沒有任何具體的物理元素,只是描述信息在系統(tǒng)中流動和處理的情況,它比口頭與文字的描述更直觀地顯示出來系統(tǒng)中數(shù)據(jù)的使用。數(shù)據(jù)流圖簡稱 DFD 圖,數(shù)據(jù)流圖有四種成分:源點(diǎn)或終點(diǎn)、處理、數(shù)據(jù)存儲表和數(shù)據(jù)流。圖中沒有任何具體的物
14、理元素,只是描述信息在系統(tǒng)中的流動和處理情況,即使不是專業(yè)的計算機(jī)技術(shù)人員也容易理解,是極好的理解工具。它能精確的描述系統(tǒng)的邏輯模型,描述數(shù)據(jù)在 MIS 中有輸入經(jīng)過存儲、加工處理最后輸出的全過程,是設(shè)計者和用戶交流的很好的工具。仔細(xì)分析調(diào)查有關(guān)倉庫管理信息需求的基礎(chǔ)上,得到如圖 41 所示的本系統(tǒng)所處理的數(shù)據(jù)流程。4圖 2-3 倉庫管理系統(tǒng)數(shù)據(jù)流程圖通過對企業(yè)倉庫管理的內(nèi)容和數(shù)據(jù)流程分析,設(shè)計數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)如下:貨物信息,包括的數(shù)據(jù)項有編號、貨物名稱、貨物類別、貨物規(guī)格、計量單位、最高限量、最低限量、備注等。倉庫信息,包括的數(shù)據(jù)項有編號、倉庫名稱、倉庫地點(diǎn)、保管員編號、備注等。庫存狀況信息
15、,包括的數(shù)據(jù)項有編號、貨物編號、庫存數(shù)量、倉庫編號等。入庫單信息,包括的數(shù)據(jù)項有編號、貨物編號、經(jīng)辦人編號、入庫時間、入庫單價、入庫數(shù)量、供應(yīng)商編號、倉庫編號、定單狀況、其它金額、備注等。出庫單信息,包括的數(shù)據(jù)項有編號、貨物編號、經(jīng)辦人編號、出庫時間、出庫單價、出庫數(shù)量、客戶編號、倉庫編號、定單狀況、其它金額、備注等。進(jìn)行月盤點(diǎn)信息,包括的數(shù)據(jù)項有編號、倉庫編號、盤點(diǎn)時間、經(jīng)辦人編號、盤點(diǎn)數(shù)據(jù)等。系統(tǒng)日志信息,包括的數(shù)據(jù)項有用戶名、操作時間、操作內(nèi)容等。用戶管理信息,包括的數(shù)據(jù)項有用戶名、用戶密碼、用戶權(quán)限等。另外,還有借入單、借出單、報損單、調(diào)撥單信息等。它們與入庫單、出庫單信息基本類似,這
16、里不再一一例舉。52.4 倉庫管理系統(tǒng)的角色定義倉庫管理系統(tǒng)的角色定義本系統(tǒng)角色包括兩種,倉管部管理人員和管理部主管,其中,管理部主管擁有整個系統(tǒng)的最高權(quán)限。倉管部管理人員:負(fù)責(zé)倉庫的出入庫管理,可以根據(jù)流向單實(shí)現(xiàn)出/入庫操作。具體權(quán)限有:庫存信息管理庫檢信息維護(hù)入庫單信息維護(hù)出庫單信息維護(hù)報表信息管理進(jìn)行密碼修改、清除表信息等系統(tǒng)設(shè)置客戶、供應(yīng)商、庫房等基本信息的查詢?yōu)g覽等倉管部主管:負(fù)責(zé)整個山口倉管部門的日常運(yùn)作和管理工作,主要包括:部門信息維護(hù)人員信息管理審批報表信息管理進(jìn)行密碼修改、備份數(shù)據(jù)庫等系統(tǒng)設(shè)置6第第 3 章章 總體設(shè)計總體設(shè)計3.1 總體用例圖總體用例圖用例圖是一個系統(tǒng)建模的
17、啟始點(diǎn),可以使用用例圖對將要開發(fā)系統(tǒng)的實(shí)際工作流程進(jìn)行業(yè)務(wù)建模,從業(yè)務(wù)模型的基礎(chǔ)上過度到系統(tǒng)建模的開始,可以通過用例圖來搜集用戶的需求,明確和系統(tǒng)相關(guān)的用戶和其他系統(tǒng),同時確定系統(tǒng)將會提供什么功能,以及各個功能間的關(guān)系。圖 3-1 總體用例圖3.2 用例說明用例說明根據(jù)上述用例圖,對登陸和人員信息管理模塊做了如下用例說明:73.2.1 用戶從瀏覽器登錄用戶從瀏覽器登錄用例概述用例名稱用例名稱 用戶登陸主題領(lǐng)域主題領(lǐng)域用例定義用例定義 用戶登錄到系統(tǒng),獲得相應(yīng)的界面和使用權(quán)限角色角色 倉管員或主管業(yè)務(wù)觸發(fā)業(yè)務(wù)觸發(fā)事件事件用戶準(zhǔn)備開始使用系統(tǒng)進(jìn)行業(yè)務(wù)處理或系統(tǒng)管理前置條件前置條件 系統(tǒng)中已為該用戶
18、建立系統(tǒng)用戶,并分配了相應(yīng)權(quán)限結(jié)束條件結(jié)束條件 成功條件用戶登錄系統(tǒng),并獲得相應(yīng)權(quán)限失敗條件1)系統(tǒng)中沒有該用戶;2)用戶名、密碼錯誤相關(guān)用例相關(guān)用例輸入概述輸入概述 用戶名、密碼、角色輸出概述輸出概述 與用戶權(quán)限相應(yīng)的界面使用性備使用性備注注 本用例使用頻繁用例備注用例備注主事件流步驟步驟角色角色/系統(tǒng)系統(tǒng)描述描述數(shù)據(jù)項數(shù)據(jù)項備注備注1.角色啟動登錄程序2.系統(tǒng)顯示登錄界面;提示輸入用戶標(biāo)識和保密字3.角色輸入用戶標(biāo)識和保密字,登錄系統(tǒng)用戶名,密碼,角色4.系統(tǒng)驗(yàn)證用戶是否合法用戶、保密字是否正確;返回用戶相應(yīng)的界面、菜單如果不是合法用戶、或保密字不正確轉(zhuǎn)到A1。5.分支事件流編編號號主事件
19、流主事件流步驟號步驟號角色角色/系統(tǒng)系統(tǒng)條件條件描述描述數(shù)據(jù)項數(shù)據(jù)項轉(zhuǎn)去主轉(zhuǎn)去主事件流事件流步驟號步驟號備注備注A14系統(tǒng)不是合法用戶,用戶名、密碼錯誤,用戶名和密碼與角色不對應(yīng)返回登錄失敗信息登錄失敗信息282.2.2 供貨商信息查詢用例概述供貨商信息查詢用例概述用例名稱用例名稱 供貨商信息查詢主題領(lǐng)域主題領(lǐng)域 供貨商信息查詢用例包用例定義用例定義 供貨商信息查詢角色角色 倉庫管理人員業(yè)務(wù)觸發(fā)事件業(yè)務(wù)觸發(fā)事件 進(jìn)行供貨商信息查詢前置條件前置條件 有需要查詢的供貨商信息記錄結(jié)束條件結(jié)束條件 成功條件查詢到需要查詢的供貨商信息失敗條件未查詢到需要查詢的供貨商信息相關(guān)用例相關(guān)用例輸入概述輸入概述
20、所需查詢的供貨商信息輸出概述輸出概述 查詢結(jié)果使用性備注使用性備注用例備注用例備注主事件流主事件流步驟步驟角色角色/系統(tǒng)系統(tǒng)描述描述數(shù)據(jù)項數(shù)據(jù)項備注備注6.角色進(jìn)入查詢界面7.系統(tǒng)顯示查詢界面8.角色輸入所需查詢的供貨商信息9.系統(tǒng)查詢是否成功查詢成功如果查詢成功轉(zhuǎn)到 A1如果查詢不成功轉(zhuǎn)到 A2分支事件流分支事件流編編號號主事件流主事件流步驟號步驟號角色角色/系統(tǒng)系統(tǒng)條件條件描述描述數(shù)據(jù)項數(shù)據(jù)項轉(zhuǎn)去主轉(zhuǎn)去主事件流事件流步驟號步驟號備注備注A14系統(tǒng)完成供貨商信息查詢返回成功信息查詢的供貨商信息2A24系統(tǒng)沒有完成供貨商信息查詢返回失敗信息查詢失敗的信息提示292.2.3 供貨商信息修改用例概
21、述供貨商信息修改用例概述用例名稱用例名稱 供貨商信息修改主題領(lǐng)域主題領(lǐng)域 供貨商信息修改用例包用例定義用例定義 供貨商信息修改角色角色 倉庫管理人員業(yè)務(wù)觸發(fā)事件業(yè)務(wù)觸發(fā)事件 進(jìn)行供貨商信息修改前置條件前置條件 有需要修改的供貨商信息記錄結(jié)束條件結(jié)束條件 成功條件查詢到需要修改的供貨商信息失敗條件未查詢到需要修改的供貨商信息相關(guān)用例相關(guān)用例輸入概述輸入概述 所需修改的供貨商信息輸出概述輸出概述 修改結(jié)果使用性備注使用性備注用例備注用例備注主事件流主事件流步驟步驟角色角色/系統(tǒng)系統(tǒng)描述描述數(shù)據(jù)項數(shù)據(jù)項備注備注10.角色進(jìn)入修改界面11.系統(tǒng)顯示修改界面12.角色輸入所需修改的供貨商信息13.系統(tǒng)修
22、改是否成功修改成功如果修改成功轉(zhuǎn)到 A1如果修改不成功轉(zhuǎn)到 A2分支事件流分支事件流編編號號主事件流主事件流步驟號步驟號角色角色/系統(tǒng)系統(tǒng)條件條件描述描述數(shù)據(jù)項數(shù)據(jù)項轉(zhuǎn)去主轉(zhuǎn)去主事件流事件流步驟號步驟號備注備注A14系統(tǒng)完成供貨商信息修改返回成功信息修改的供貨商信息2A24系統(tǒng)沒有完成供貨商信息修改返回失敗信息修改失敗的信息提示2102.2.4 供貨商信息添加用例概述供貨商信息添加用例概述用例名稱用例名稱 供貨商信息添加主題領(lǐng)域主題領(lǐng)域 供貨商信息添加用例包用例定義用例定義 供貨商信息角色角色 倉庫管理人員業(yè)務(wù)觸發(fā)事件業(yè)務(wù)觸發(fā)事件 進(jìn)行供貨商信息添加前置條件前置條件 有需要添加的供貨商信息記錄
23、結(jié)束條件結(jié)束條件 成功條件查詢到需要添加的供貨商信息失敗條件未查詢到需要添加的供貨商信息相關(guān)用例相關(guān)用例輸入概述輸入概述 所需添加的供貨商信息輸出概述輸出概述 添加結(jié)果使用性備注使用性備注用例備注用例備注主事件流主事件流步驟步驟角色角色/系統(tǒng)系統(tǒng)描述描述數(shù)據(jù)項數(shù)據(jù)項備注備注14.角色進(jìn)入添加界面15.系統(tǒng)顯示添加界面16.角色輸入所需添加的供貨商信息17.系統(tǒng)添加是否成功添加成功如果添加成功轉(zhuǎn)到 A1如果添加不成功轉(zhuǎn)到 A2分支事件流分支事件流編編號號主事件流主事件流步驟號步驟號角色角色/系統(tǒng)系統(tǒng)條件條件描述描述數(shù)據(jù)項數(shù)據(jù)項轉(zhuǎn)去主轉(zhuǎn)去主事件流事件流步驟號步驟號備注備注A14系統(tǒng)完成供貨商信息添
24、加返回成功信息添加的供貨商信息2A24系統(tǒng)沒有完成供貨商信息添加返回失敗信息添加失敗的信息提示2113.3 功能模塊圖功能模塊圖功能模塊:山口電腦倉庫管理系統(tǒng)包括倉管部信息管理、業(yè)務(wù)管理、系統(tǒng)維護(hù)等幾個功能模塊。倉管部信息管理倉管部業(yè)務(wù)管理山口電腦倉庫管理系統(tǒng)系統(tǒng)維護(hù)圖 3-3 總功能模塊圖1、倉管部信息管理模塊:為倉管部主管提供對倉管部信息的管理維護(hù)的功能。12 倉管部信息管理基本信息管理出庫信息維護(hù)入庫信息維護(hù)庫檢信息維護(hù)報表信息管理系統(tǒng)設(shè)置客戶信息維護(hù)供貨商信息維護(hù)庫房信息維護(hù)短線貨品信息維護(hù)部件、禮品信息維護(hù)修改密碼成品品信息維護(hù)庫存信息維護(hù)在庫信息管理倉管人員信息維護(hù)圖 3-3-1
25、倉管部模塊圖一、一、倉管部信息管理模塊,如圖所示,包括以下功能模塊:1.基本信息管理模塊:為管理員提供實(shí)現(xiàn)對客戶信息、供貨商信息、庫房信息和倉管人員信息的管理維護(hù),包括對信息查詢、添加、修改和刪除等操作。2.在庫信息管理模塊:a、庫存信息管理模塊:為管理員提供實(shí)現(xiàn)對短線貨物、貨物信息的管理維護(hù),包括對信息查詢、添加、修改和刪除等操作。b、庫檢信息管理模塊:為管理員提供實(shí)現(xiàn)對產(chǎn)品庫檢信息、部件庫檢信息、禮品庫檢信息的管理維護(hù),包括對信息查詢、添加、修改和刪除等操作。3.出庫信息管理模塊:為管理員提供查詢、添加、修改和刪除出庫流向單(包括:產(chǎn)品出庫單、部件出庫單、禮品出庫單)的操作,其中添加和刪除
26、操作后的出庫貨檢單要交由管理部審核。4.入庫信息管理模塊:為管理員提供查詢、添加、修改和刪除入庫流向單(包括:部件入庫單、產(chǎn)品入庫單、禮品入庫單)的操作、其中添加和刪除操作后的入庫貨檢單要交由管理部審核。5.報表信息管理模塊:為管理員提供實(shí)現(xiàn)對報表信息的管理維護(hù),包括對報表信息查詢、瀏覽和上交等操作。136.系統(tǒng)設(shè)置模塊:為管理員提供實(shí)現(xiàn)對密碼修改、清除表信息的功能管理部信息管理倉管部人員管理倉庫報表管理倉庫貨檢信息管理基本信息管理系統(tǒng)設(shè)置 修改密碼 備份數(shù)據(jù)庫恢復(fù)數(shù)據(jù)庫、圖 3-3-2 管理部模塊圖二、二、管理部信息管理模塊,如圖所示,包括以下功能模塊:1、倉管部人員管理模塊:為管理員提供實(shí)
27、現(xiàn)對倉庫部門信息的管理維護(hù),包括對部門信息查詢、添加、修改和刪除等操作。2、倉庫報表管理模塊:為管理員提供實(shí)現(xiàn)對報表信息的管理維護(hù),包括對報表的查詢、瀏覽和刪除等操作。3、倉庫貨檢信息管理模塊:為管理員提供實(shí)現(xiàn)對貨檢信息的管理維護(hù),包括對在庫貨檢信息、入庫貨檢信息和出庫貨檢信息的審核操作。4、基本信息管理模塊:為管理員提供實(shí)現(xiàn)對基本信息進(jìn)行添加、刪除、查詢和瀏覽功能、5、系統(tǒng)設(shè)置模塊:為管理員提供實(shí)現(xiàn)修改密碼、備份數(shù)據(jù)庫和恢復(fù)數(shù)據(jù)庫的功能14第第 4 章章 詳細(xì)設(shè)計詳細(xì)設(shè)計4.1ER 圖圖ER 圖就是實(shí)體關(guān)系圖,主要完成了對系統(tǒng)中數(shù)據(jù)部分設(shè)計。E-R 圖為實(shí)體-聯(lián)系圖,提供了表示實(shí)體型、屬性和
28、聯(lián)系的方法,用來描述現(xiàn)實(shí)世界的概念模型。構(gòu)成 E-R 圖的基本要素是實(shí)體型、屬性和聯(lián)系。以下是系統(tǒng)的整個 ER 圖:圖 4-1 ER 圖154.2 數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計(Database Design)是指根據(jù)用戶的需求,在某一具體的數(shù)據(jù)庫管理系統(tǒng)上,設(shè)計數(shù)據(jù)庫的結(jié)構(gòu)和建立數(shù)據(jù)庫的過程。一般,數(shù)據(jù)庫的設(shè)計過程大致可分?jǐn)?shù)據(jù)庫設(shè)計為 5個步驟:需求分析;調(diào)查和分析用戶的業(yè)務(wù)活動和數(shù)據(jù)的使用情況,弄清所用數(shù)據(jù)的種類、范圍、數(shù)量以及它們在業(yè)務(wù)活動中交流的情況,確定用戶對數(shù)據(jù)庫系統(tǒng)的使用要求和各種約束條件等,形成用戶需求規(guī)約。概念設(shè)計;對用戶要求描述的現(xiàn)實(shí)世界(可能是一個工廠、一個商場或者一個
29、學(xué)校等),通過對其中住處的分類、聚集和概括,建立抽象的概念數(shù)據(jù)模型。這個概念模型應(yīng)反映現(xiàn)實(shí)世界各部門的信息結(jié)構(gòu)、信息流動情況、信息間的互相制約關(guān)系以及各部門對信息儲存、查詢和加工的要求等。所建立的模型應(yīng)避開數(shù)據(jù)庫在計算機(jī)上的具體實(shí)現(xiàn)細(xì)節(jié),用一種抽象的形式表示出來。以擴(kuò)充的實(shí)體(E-R 模型)聯(lián)系模型方法為例,第一步先明確現(xiàn)實(shí)世界各部門所含的各種實(shí)體及其屬性、實(shí)體間的聯(lián)系以及對信息的制約條件等,從而給出各部門內(nèi)所用信息的局部描述(在數(shù)據(jù)庫中稱為用戶的局部視圖)。第二步再將前面得到的多個用戶的局部視圖集成為一個全局視圖,即用戶要描述的現(xiàn)實(shí)世界的概念數(shù)據(jù)模型。邏輯設(shè)計;主要工作是將現(xiàn)實(shí)世界的概念數(shù)據(jù)
30、模型設(shè)計成數(shù)據(jù)庫的一種邏輯模式,即適應(yīng)于某種特定數(shù)據(jù)庫管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。與此同時,可能還需為各種數(shù)據(jù)處理應(yīng)用領(lǐng)域產(chǎn)生相應(yīng)的邏輯子模式。這一步設(shè)計的結(jié)果就是所謂“邏輯數(shù)據(jù)庫” 。物理設(shè)計;根據(jù)特定數(shù)據(jù)庫管理系統(tǒng)所提供的多種存儲結(jié)構(gòu)和存取方法等依賴于具體計算機(jī)結(jié)構(gòu)的各項物理設(shè)計措施,對具體的應(yīng)用任務(wù)選定最合適的物理存儲結(jié)構(gòu)(包括文件類型、索引結(jié)構(gòu)和數(shù)據(jù)的存放次序與位邏輯等)、存取方法和存取路徑等。這一步設(shè)計的結(jié)果就是所謂“物理數(shù)據(jù)庫” 。驗(yàn)證設(shè)計;在上述設(shè)計的基礎(chǔ)上,收集數(shù)據(jù)并具體建立一個數(shù)據(jù)庫,運(yùn)行一些典型的應(yīng)用任務(wù)來驗(yàn)證數(shù)據(jù)庫設(shè)計的正確性和合理性。一般,一個大型數(shù)據(jù)庫的設(shè)計過程往往
31、需要經(jīng)過多次循環(huán)反復(fù)。當(dāng)設(shè)計的某步發(fā)現(xiàn)問題時,可能就需要返回到前面去進(jìn)行修改。因此,在做上述數(shù)據(jù)庫設(shè)計時就應(yīng)考慮到今后修改設(shè)計的可能性和方便性。數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確性和有效性,是為防止數(shù)據(jù)庫中存在不符合語義規(guī)定的數(shù)據(jù)和防止因錯誤信息的輸入輸出造成無效操作或錯誤信息而提出的。數(shù)據(jù)庫的完整性包括:實(shí)體完整性、參照完整性和用戶定義完整性。實(shí)體完整性(Entity Integrity) :現(xiàn)實(shí)世界的實(shí)體是可區(qū)分的,即它們具有某種唯一性標(biāo)識。相應(yīng)地,關(guān)系模型中主鍵應(yīng)作為唯一性標(biāo)識。因此實(shí)體完整性規(guī)則規(guī)定基本關(guān)系的所有主鍵(Primary Key)都不能取空值(NULL)。參照完整性(Refere
32、ntial Integrity):參照完整性維護(hù)表與表之間的相關(guān)性,通常用“主鍵(Primary Key)/外鍵(Foreign Key)”保證,其中 Foreign Key 可以取 NULL 值,或取其參照表中 Primary Key 的取值。用戶定義的完整性(User_defined Integrity ):針對某一具體數(shù)據(jù)的約束條件,由應(yīng)用環(huán)境決定。數(shù)據(jù)庫完整性約束能夠防止合法用戶使用數(shù)據(jù)庫時向16數(shù)據(jù)庫中添加不合語義的數(shù)據(jù)。4.2.1數(shù)據(jù)庫的邏輯設(shè)計數(shù)據(jù)庫的邏輯設(shè)計倉庫管理系統(tǒng)所用的數(shù)據(jù)庫是 MySQL,如下是表在數(shù)據(jù)庫的邏輯表示:表 assembly 的結(jié)構(gòu)字段名注釋類型長度是否主鍵
33、是否不為空id編號INTEGER11Inbill_id入庫單編號VARCHAR20Supplier_id供貨商編號VARCHAR20Depot_id庫房編號VARCHAR20Number數(shù)量INTEGER11Sumof_bad不合格數(shù)量INTEGER11Atcheck_date在庫貨檢日期DATE11In_date入庫日期DATE11Employee_id貨檢員編號char5表 product 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空id編號INTEGER11Makebill_id組裝單編號VARCHAR20Depot_id庫房編號VARCHAR20Check_id貨檢編號VARCHAR20
34、Number數(shù)量INTEGER11Sumof_bad不合格數(shù)量INTEGER11Make_date組裝日期DATE11Check_date貨檢日期DATE11表 assembly_product 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空id編號INTEGER11Assembly_id部件編號VARCHAR20Product_id成品編號VARCHAR20表 customer 的結(jié)構(gòu)17字段名注釋類型長度是否主鍵是否不為空Customer_id客戶編號VARCHAR20name姓名VARCHAR20sex性別VARCHAR20credit信譽(yù)度INTEGER11phone電話號碼VARCHAR
35、20address地址VARCHAR20remark備注VARCHAR20表 depot 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空Depot_id庫房編號VARCHAR20Employee_id責(zé)任人編號VARCHAR20phone電話號碼VARCHAR20address地址VARCHAR20remark備注VARCHAR20表 employee 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空Employee_id人員編號VARCHAR20Inbill_id入庫單編號VARCHAR20Supplier_id供貨商編號VARCHAR20Depot_id庫房編號VARCHAR20Number數(shù)量IN
36、TEGER11Sumof_bad不合格數(shù)量INTEGER11Atcheck_date在庫貨檢日期DATE11In_date入庫日期DATE11Employee_id貨檢員編號VARCHAR518表 supplier 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空Supplier_id供貨商編號VARCHAR20name姓名VARCHAR20sex性別VARCHAR20credit信譽(yù)度INTEGER11phone電話號碼VARCHAR20address地址VARCHAR20remark備注VARCHAR20表 inbill 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空In_id入庫單編號VARCHA
37、R20Depot_id庫房編號VARCHAR20Refer_date入庫日期DATE11Wh_id提交人編號VARCHAR20Check_date貨檢日期DATE11Ch_id貨檢人編號VARCHAR20Audit_date審核日期DATE11M_id主管編號VARCHAR20In_state入庫單狀態(tài)VARCHAR20表 inlist 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空id編號INTEGER11In_id入庫單編號VARCHAR20Assembly_id部件編號VARCHAR20Supplier_id供貨商編號VARCHAR20Number數(shù)量INTEGER11Badnumber不合
38、格數(shù)量INTEGER11Good_rate合格率VARCHAR2019表 makebill 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空Makebill_id組裝單編號VARCHAR20Depot_id庫房編號VARCHAR20Product_id成品編號VARCHAR20Number數(shù)量INTEGER11Atcheck_date在庫貨檢日期DATE11Make_date組裝日期DATE11Manager_id主管編號VARCHAR20表 outbill 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空Outbill_id出庫單編號VARCHAR20Depot_id庫房編號VARCHAR20Refer
39、_date供貨商編號VARCHAR20Refer_id提交人編號VARCHAR20Audit_date審核日期DATE11Out_state出庫單狀態(tài)VARCHAR11Audit_id審核人編號VARCHAR20Customer_id客戶編號VARCHAR20表 outlist 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空id編號INTEGER11Outbill_id出庫單編號VARCHAR20Product_id成品編號VARCHAR20Number數(shù)量INTEGER1120表 report 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空Reportid報表編號VARCHAR20Reporttyp
40、e報表類型VARCHAR20Depotid庫房編號VARCHAR20beginDate起始日期DATE11endDate結(jié)束日期DATE11createTime創(chuàng)建日期DATE11referId提交人編號VARCHAR20checkState審核狀態(tài)VARCHAR20checkDate審核日期DATE11AuditId審核人編號VARCHAR20表 report_detail 的結(jié)構(gòu)字段名注釋類型長度是否主鍵是否不為空id編號INTEGER11reportId報表編號VARCHAR20Depotid庫房編號VARCHAR20goodsName貨物名稱VARCHAR40goodsType貨物類型
41、VARCHAR30allNumber總數(shù)量INTEGER11badNumber不合格數(shù)量INTEGER11checkId審核人編號VARCHAR204.3 運(yùn)行環(huán)境運(yùn)行環(huán)境1.開發(fā)工具:Eclipse,2.軟件環(huán)境:Tomcat6.0,JDK5.0 以上,3.硬件環(huán)境:cpu:P3 2.0GHZ 以上Memory:512M 以上21第第 5 章章 編碼編碼5.1 登陸的實(shí)現(xiàn)登陸的實(shí)現(xiàn) 5.1.1 登陸登陸 actionimport javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletRespons
42、e;import javax.servlet.http.HttpSession;import org.apache.struts.action.Action;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import com.javateam3.struts.form.LoginForm;import mon.dao.LoginService;/* * MyEclipse
43、Struts * Creation date: 05-30-2009 * * XDoclet definition: * struts.action path=/login name=loginForm input=/webpage/login.jsp scope=request validate=true */public class LoginAction extends Action public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpSer
44、vletResponse response) LoginForm loginForm = (LoginForm) form;try String userName=loginForm.getUser_name().trim(); String psw=loginForm.getPsw().trim(); LoginService loginService=new LoginService(); HttpSession session = request.getSession(true); if(loginService.login(userName, psw) session.setAttri
45、bute(username,userName); /如果登錄成功把登錄的名字放在session中以便在過濾器中判斷 return mapping.findForward(loginSuccess); /返回到登陸成功頁面 else22 session.invalidate(); request.setAttribute(loginError, 用戶或者密碼錯誤!); /返回到錯誤頁面 return mapping.findForward(loginError); catch(Exception e) e.printStackTrace(); return null;5.1.2 登陸過濾器登陸過
46、濾器import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.*;public class SecurityAndDeny implemen
47、ts Filter public void destroy() /注銷時調(diào)用 public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException HttpServletRequest request = (HttpServletRequest)req; HttpServletResponse response=(HttpServletResponse)resp; HttpSession session = request.ge
48、tSession(false); /取出來session如果沒有得到空值 if (session= null|session.getAttribute(username)= null) /判斷是否登錄過如果沒有就重定向到登陸頁面 String temp=你還沒登陸請重新登陸!; temp=.URLEncoder.encode(temp.toString(),utf-8); response.sendRedirect(http:/localhost:8080/JT03EtpLgtWebProject03/login.jsp?loginErr=+temp); return; /如果登錄了就進(jìn)入請求
49、頁面 chain.doFilter(req, resp); public void init(FilterConfig arg0) throws ServletException /初始化時調(diào)用的方法235.1.3 登陸登陸 DAOpublic Boolean login(String userName,String psw) Employee employee=new Employee(); employee.setPsw(psw) ; employee.setUserName(userName); List results=findByExample(employee); int leng
50、th=results.size(); if(length=1) return true; else return false; 5.2 供貨商的實(shí)現(xiàn)供貨商的實(shí)現(xiàn)5.2.1 供貨商查詢供貨商查詢 Actionpackage com.javateam3.whmsys.manager.basicinfo.supplyerinfo.action;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache
51、.struts.action.Action;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import mon.PageBean;import com.javateam3.whmsys.manager.basicinfo.supplyerinfo.form.QueryForm;import com.javateam3.whmsys.manager.basicinfo.sup
52、plyerinfo.service.SupplierService;import mon.pojo.Supplier;import mon.utils.Tool;24public class QueryAction extends Action public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception QueryForm queryForm = (QueryForm) f
53、orm;SupplierService ss = new SupplierService();PageBean pageBean = new PageBean();List list = null;/存放查出來的spplier對象String crrPage = request.getParameter(cp);int currentPage = pageBean.getCurrentPage();int lineSize = pageBean.getLineSize();Supplier supplier = change(queryForm);if (crrPage != null) cu
54、rrentPage = Integer.parseInt(crrPage); else int allRecorders = ss.getCount(supplier);Tool.setALLRECORDERS(allRecorders);Tool.setPAGESIZE(allRecorders + lineSize - 1) / lineSize);pageBean.setAllRecorders(allRecorders);pageBean.setPageSize(allRecorders + lineSize - 1) / lineSize);list = ss.queryByExam
55、ple(supplier, currentPage, lineSize);pageBean.setCurrentPage(currentPage);request.setAttribute(pageBean, pageBean);request.setAttribute(list, list); /把查詢出來的supplier對象放在request里return mapping.findForward(supplierResult); /把form表單里的東西轉(zhuǎn)化為supplier對象public Supplier change(QueryForm queryForm) Supplier su
56、pplier = new Supplier();if (queryForm.getSupplierId() != null& !queryForm.getSupplierId().equals()supplier.setSupplierId(queryForm.getSupplierId();if (queryForm.getAddress() != null& !queryForm.getAddress().equals()supplier.setAddress(queryForm.getAddress();if (queryForm.getName() != null & !queryFo
57、rm.getName().equals()supplier.setName(queryForm.getName();if (queryForm.getCredit() != null & !queryForm.getCredit().equals()supplier.setCredit(queryForm.getCredit();if (queryForm.getPhone() != null & !queryForm.getPhone().equals()supplier.setPhone(queryForm.getPhone();25if (queryForm.getRemark() !=
58、 null & !queryForm.getRemark().equals()supplier.setRemark(queryForm.getRemark();return supplier;5.2.2 供貨商修改供貨商修改 Actionimport javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.Action;import org.apache.struts.action.ActionForm;import o
59、rg.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import mon.pojo.Supplier;import com.javateam3.whmsys.manager.basicinfo.supplyerinfo.form.ModifyForm;import com.javateam3.whmsys.manager.basicinfo.supplyerinfo.service.SupplierService;public class ModifyAction extends
60、 Action public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) ModifyForm modifyForm = (ModifyForm) form;Supplier supplier = new Supplier();supplier.setAddress(modifyForm.getAddress();supplier.setCredit(modifyForm.getCredit();sup
61、plier.setName(modifyForm.getName();supplier.setPhone(modifyForm.getPhone();supplier.setRemark(modifyForm.getRemark();supplier.setSupplierId(modifyForm.getSupplierId();SupplierService ss = new SupplierService();try ss.upDate(supplier);return mapping.findForward(success); catch (Exception e) e.printSt
62、ackTrace();return mapping.findForward(error);5.2.2 供貨商添加供貨商添加 Actionimport javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;26import org.apache.struts.action.Action;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.
63、apache.struts.action.ActionMapping;import mon.pojo.Supplier;import com.javateam3.whmsys.manager.basicinfo.supplyerinfo.form.AddForm;import com.javateam3.whmsys.manager.basicinfo.supplyerinfo.service.SupplierService;public class AddAction extends Action public ActionForward execute(ActionMapping mapp
64、ing, ActionForm form,HttpServletRequest request, HttpServletResponse response) AddForm addForm = (AddForm) form;Supplier supplier = new Supplier();supplier.setAddress(addForm.getAddress();supplier.setCredit(addForm.getCredit();supplier.setName(addForm.getName();supplier.setPhone(addForm.getPhone();s
65、upplier.setRemark(addForm.getRemark();supplier.setSupplierId(addForm.getSupplierId();SupplierService ss = new SupplierService();try ss.insert(supplier);return mapping.findForward(success); catch (Exception e) e.printStackTrace(); /出現(xiàn)異常打印軌跡return mapping.findForward(error);5.2.3 供貨商供貨商 DAOpackage com
66、.javateam3.whmsys.manager.basicinfo.supplyerinfo.dao;import java.util.ArrayList;import java.util.List;import org.hibernate.Criteria;import org.hibernate.LockMode;import org.hibernate.Query;import org.hibernate.Session;import org.hibernate.Transaction;import org.hibernate.criterion.Example;27import mon.dao.BaseHibernateDAO;import mon.pojo.Supplier;import mon.utils.UtilGetExample;public class SupplierDAO extends BaseHibernateDAO public static final String NAME = name;public static final String ADD
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 初中生物--人體的呼吸1-人教版課件
- 社會研究方法mpa論文寫作PPT培訓(xùn)課件
- 2020高考語文專題-圖文轉(zhuǎn)換漫畫答題技巧ppt課件
- 《語言表達(dá)之補(bǔ)寫語句》ppt課件
- 肺心病診斷及治療(與“肺動脈”有關(guān)的文檔共46張)
- 中考?xì)v史一輪專題復(fù)習(xí)壟斷資本主義時代的世界課件
- 重慶市結(jié)核病防治基本DOTS細(xì)則介紹
- 鋁的化合物(教育精品)
- 軸對稱(例1)(教育精品)
- 愛之鏈chuan(教育精品)
- bs71p44(教育精品)
- bh(教育精品)
- 北師大版小學(xué)五年級語文上冊《生命與水》課件
- 13白鵝ppt(教育精品)
- 荷葉圓圓 (5)課件