基于SSH的企業(yè)進銷存信息管理系統(tǒng)的設計與實現(xiàn)(畢業(yè)論文doc)_第1頁
基于SSH的企業(yè)進銷存信息管理系統(tǒng)的設計與實現(xiàn)(畢業(yè)論文doc)_第2頁
基于SSH的企業(yè)進銷存信息管理系統(tǒng)的設計與實現(xiàn)(畢業(yè)論文doc)_第3頁
基于SSH的企業(yè)進銷存信息管理系統(tǒng)的設計與實現(xiàn)(畢業(yè)論文doc)_第4頁
基于SSH的企業(yè)進銷存信息管理系統(tǒng)的設計與實現(xiàn)(畢業(yè)論文doc)_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、精品 鄭州大學西亞斯國際學院本科畢業(yè)論文(設計)題 目 基于SSH的企業(yè)進銷存 信息管理系統(tǒng)的設計與實現(xiàn) 指導教師 職稱 講師 學生姓名 學號 專 業(yè) 軟件工程 班級 軟件工程1班 院 (系) 電子工程學院計算機科學與技術系 完成時間 年5月1日 精品基于SSH的企業(yè)進銷存信息管理系統(tǒng)的設計與實現(xiàn)摘 要在市場經(jīng)濟中,銷售是企業(yè)運作的重要環(huán)節(jié)。為了便好地推動銷售,不少企業(yè)建立分公司或代理制,通過分公司或代理把產(chǎn)品推向最終用戶。這些分公司或代理商大部分分布在不同的地理位置,跨空間、跨時間的頻繁業(yè)務信息交流是這些企業(yè)業(yè)務活動的主要特點。在這種形勢下,傳統(tǒng)的依靠管理人員人工工作傳遞信息和數(shù)據(jù)的管理方式

2、就無法滿足企業(yè)日益增長的業(yè)務需求了。本系統(tǒng)是一個基本的進銷存管理系統(tǒng),就是利用信息化手段把先進的企業(yè)管理方法引入企業(yè)的實踐,為企業(yè)的管理改革提供切實易行的途徑。系統(tǒng)對企業(yè)中常見的采購、庫存、銷售等商業(yè)活動進行管理。本系統(tǒng)采用目前流行的MyEclipse和JDK進行開發(fā),后臺數(shù)據(jù)庫使用目前流行的MYSQL。關鍵字: 進銷存,SSH,JAVA,MyEclipse7.0THE DESIGN AND RELIZATION ABOUT ENTERPRISE INFORMATION MANAGEMENT SYSTEM BASED ON SSHABSTRACTSaling is an important p

3、art of enterprise management in market economy. In order to promote sale,many of them set up sub-company or agent system.They promote produce to customers through those sub-companies or agents.Most of them lie in different places.The frequent communication of information beyond space and time is the

4、 major feature.In this case,the traditional management conveying information and data by management personnels cant satisfy the need of increasing business.Saling The system is basic in saling and accounting management.It introduces advanced management by utilizing information method.It offers pract

5、ical access to the reform of enterprises management.This system manage business activities,such as buying,storing and saling.It use MyEclipse which is very popular currently to develop.Backgroud database makes use of MYSQL,which is very popular currently.Key Words: Saling and accounting,SSH,JAVA,MyE

6、clipse7.0目 錄摘 要IABSTRACTII1 緒 論- 1 -1.1 設計背景- 1 -1.2 開發(fā)環(huán)境- 1 -1.3 系統(tǒng)涉及技術概述- 2 -1.3.1 MYSQL概述- 2 -1.3.2 MyEclipse簡介- 2 -1.3.3 Struts2.0簡介- 3 -1.3.4 Spring簡介- 3 -1.3.5 Hibernate簡介- 4 -2 系統(tǒng)可行性研究- 5 -2.1 技術可行性研究- 5 -2.2 經(jīng)濟可行性研究- 5 -3 系統(tǒng)需求分析- 6 -3.1 用戶工作流程- 6 -3.2 用戶業(yè)務需求- 6 -3.3 功能需求- 7 -3.4 性能需求- 7 -4 系

7、統(tǒng)概要設計- 9 -4.1 設計思想- 9 -4.2 設計原則- 9 -4.3系統(tǒng)功能- 10 -4.4 系統(tǒng)結構- 10 -4.5 業(yè)務流程分析- 12 -4.6 系統(tǒng)數(shù)據(jù)流分析- 13 -4.7 運行環(huán)境- 19 -5 系統(tǒng)詳細設計- 19 -5.1 用戶登錄與刪除的設計及實現(xiàn)- 19 -5.2 Spring配置文件的創(chuàng)建- 23 -5.3 Database Driver的配置- 23 -5.4 Struts配置文件的創(chuàng)建- 24 -5.4.1 struts.xml的配置- 25 -5.5 web.xml的配置- 28 -6 系統(tǒng)測試與維護- 30 -6.1 系統(tǒng)的測試- 30 -6.2

8、系統(tǒng)的維護- 31 -致 謝- 32 -參考文獻- 33 -1 緒 論1.1 設計背景在我國,很多商業(yè)企業(yè)是通過一套人工單據(jù)流轉程序,來實現(xiàn)信息流對商品流的跟蹤,通過財務庫存資金賬來控制進銷過程;通過倉庫賬來核查物流過程;通過定期盤點對賬來調(diào)整賬目和商品的損益。由此造成物流、款流、票據(jù)流分離,財務信息滯后實際業(yè)務,所以只有通過盤點才能較準確的了解經(jīng)營情況。而對各類票據(jù)、供銷單位、應收、應付款等信息查找困難,易出差錯,商品進、銷、存數(shù)量及金額記錄統(tǒng)計工作量大,不準確,各類經(jīng)營統(tǒng)計數(shù)據(jù)嚴重滯后實際業(yè)務需要?,F(xiàn)代商業(yè)的迅猛發(fā)展,對手工管理模式提出了嚴峻挑戰(zhàn)。商品品種日益豐富,流行周期越來越短,企業(yè)活

9、動節(jié)奏加快,調(diào)價、削價、移庫各種情況,信息量大、變化加快,賒銷、代銷、折讓、退換等方式頻繁應用,這些都增加經(jīng)營管理中的結算和統(tǒng)計難度,手工管理難以完全勝任。在現(xiàn)代化大工業(yè)、大生產(chǎn)的組織原則應用于流通領域,更需要用現(xiàn)代化的手段使其管理思想真正得以實現(xiàn)。近幾年來,隨著計算機的發(fā)展與完善,其在商品流通領域中的應用越來越廣泛。因而,用計算機建立一種準確、及時、高效、方便、易于掌握的商品進銷存數(shù)據(jù)管理系統(tǒng)是非常必要的。國際社會建設信息高速公路的熱潮和中國以“金”字號工程為代表的國家信息工程項目的開展,使中國企業(yè)信息化面臨新的形勢。我國信息化的主要任務,就是要實現(xiàn)計劃經(jīng)濟體制向社會主義市場經(jīng)濟體制的歷史性

10、轉變,經(jīng)濟增長方式由粗放型向集約型轉變,同時改變我國經(jīng)濟領域管理落后、技術落后、生產(chǎn)效率低下的狀況。為了實現(xiàn)這個目標,大力加強我國推進信息化的工作,特別是推進作為基礎工作的企業(yè)信息化就顯得更加迫切和突出。實現(xiàn)企業(yè)信息化管理是現(xiàn)代社會中小企業(yè)穩(wěn)步發(fā)展的必要條件,它可以提高企業(yè)的管理水平和工作效率,最大限度地減少手工操作帶來的失誤。進銷存管系統(tǒng)正是一個信息化管理軟件,可以實現(xiàn)企業(yè)的進貨、銷售、庫存管理。1.2 開發(fā)環(huán)境l Web服務器:Tomcat v 5.5l 數(shù)據(jù)庫服務器:MySQL v 5.0.22l 開發(fā)平臺:MyEclipse SDK v 7.01.3 系統(tǒng)涉及技術概述1.3.1 MYS

11、QL概述MySQL是一個小型關系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQL AB公司。在2008年1月16號被Sun公司收購。目前MySQL被廣泛地應用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。MySQL的官方網(wǎng)站的網(wǎng)址是:1.3.2 MyEclipse簡介 MyEclipse企業(yè)級工作平臺(MyEclipse Enterprise Workbench ,簡稱MyEclipse)是對Eclipse IDE的擴展,利用它我們可以在數(shù)據(jù)庫和J2EE的開發(fā)、發(fā)布,以及應用程序

12、服務器的整合方面極大的提高工作效率。它是功能豐富的J2EE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。在結構上,MyEclipse的特征可以被分為7類:1. J2EE模型2. WEB開發(fā)工具3. EJB開發(fā)工具4. 應用程序服務器的連接器5. J2EE項目部署服務6. 數(shù)據(jù)庫服務7. MyEclipse整合幫助對于以上每一種功能上的類別,在Eclipse中都有相應的功能部件,并通過一系列的插件來實現(xiàn)它們。MyEclipse結構上的這種模塊化,可以讓我們在不影響其他模塊的情況下

13、,對任一模塊進行單獨的擴展和升級。簡單而言,MyEclipse是Eclipse的插件,也是一款功能強大的J2EE集成開發(fā)環(huán)境,支持代碼編寫、配置、測試以及除錯。1.3.3 Struts2.0簡介雖然Struts2號稱是一個全新的框架,但這僅僅是相對Struts 1而言。Struts 2 與Struts 1相比,確實有很多革命性的改進,但它并不是新發(fā)布的新框架,而是在另一個赫赫有名的框架:WebWork基礎上發(fā)展起來的。從某種程度上來講,Struts2沒有繼承Struts 1的血統(tǒng),而是繼承WebWork的血統(tǒng)。或者說,WebWork衍生出了Struts2,而不是Struts 1衍生了Strut

14、s2。因為Struts2是WebWork的升級,而不是一個全新的框架,因此穩(wěn)定性、性能等各方面都有很好的保證:而且吸收了Struts 1和WebWork兩者的優(yōu)勢,因此,是一個非常值得期待的框架。Apache Struts2是一個優(yōu)雅的,可擴展的JAVA EE web框架??蚣茉O計的目標貫穿整個開發(fā)周期,從開發(fā)到發(fā)布,包括維護的整個過程。Apache Struts 2即是之前大家所熟知的WebWork 2。在經(jīng)歷了幾年的各自發(fā)展后,WebWork和Struts社區(qū)決定合二為一,也即是Struts 21.3.4 Spring簡介Spring是一個開源框架,它由Rod Johnson創(chuàng)建。它是為了

15、解決企業(yè)應用開發(fā)的復雜性而創(chuàng)建的。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于服務器端的開發(fā)。從簡單性、可測試性和松耦合的角度而言,任何Java應用都可以從Spring中受益。目的:解決企業(yè)應用開發(fā)的復雜性功能:使用基本的JavaBean代替EJB,并提供了更多的企業(yè)應用功能范圍:任何Java應用簡單來說,Spring是一個輕量級的控制反轉(IoC)和面向切面(AOP)的容器框架。輕量從大小與開銷兩方面而言Spring都是輕量的。完整的Spring框架可以在一個大小只有1MB多的JAR文件里發(fā)布。并且Spring所需的處理開銷也是微

16、不足道的。此外,Spring是非侵入式的:典型地,Spring應用中的對象不依賴于Spring的特定類。 控制反轉Spring通過一種稱作控制反轉(IoC)的技術促進了松耦合。當應用了IoC,一個對象依賴的其它對象會通過被動的方式傳遞進來,而不是這個對象自己創(chuàng)建或者查找依賴對象。你可以認為IoC與JNDI相反不是對象從容器中查找依賴,而是容器在對象初始化時不等對象請求就主動將依賴傳遞給它。面向切面Spring提供了面向切面編程的豐富支持,允許通過分離應用的業(yè)務邏輯與系統(tǒng)級服務(例如審計(auditing)和事務()管理)進行內(nèi)聚性的開發(fā)。應用對象只實現(xiàn)它們應該做的完成業(yè)務邏輯僅此而已。它們并不

17、負責(甚至是意識)其它的系統(tǒng)級關注點,例如日志或事務支持。 容器Spring包含并管理應用對象的配置和生命周期,在這個意義上它是一種容器,你可以配置你的每個bean如何被創(chuàng)建基于一個可配置原型(prototype),你的bean可以創(chuàng)建一個單獨的實例或者每次需要時都生成一個新的實例以及它們是如何相互關聯(lián)的。然而,Spring不應該被混同于傳統(tǒng)的重量級的EJB容器,它們經(jīng)常是龐大與笨重的,難以使用。 框架Spring可以將簡單的組件配置、組合成為復雜的應用。在Spring中,應用對象被聲明式地組合,典型地是在一個XML文件里。Spring也提供了很多基礎功能(事務管理、持久化框架集成等等),將應

18、用邏輯的開發(fā)留給了你。 所有Spring的這些特征使你能夠編寫更干凈、更可管理、并且更易于測試的代碼。它們也為Spring中的各種模塊提供了基礎支持。1.3.5 Hibernate簡介Hibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成數(shù)據(jù)持久化的重任。Hibernate的

19、核心接口一共有5個,分別為:Session、SessionFactory、Transaction、Query和Configuration。這5個核心接口在任何開發(fā)中都會用到。通過這些接口,不僅可以對持久化對象進行存取,還能夠進行事務控制。2 系統(tǒng)可行性研究2.1 技術可行性研究在IT行業(yè)中從業(yè)的工作人員一般都要求掌握計算機技術,具有一定的軟硬件基礎,會使用各種管理軟件,熟悉IT產(chǎn)品。因為,有的超市對員工的素質(zhì)要求比較高,從管理層到下面的銷售人員,都要求具有一定的計算機基礎,所以在新系統(tǒng)投入使用時,只要對員工進行少量的培訓,系統(tǒng)的功能和使用方法就基本上能夠是系統(tǒng)順利運行。2.2 經(jīng)濟可行性研究因

20、為通過網(wǎng)絡傳遞銷售信息可以不受距離的限制,因此可以借閱許多的人力和物力,方便管理,由此可以減少不必要的開支,同時該系統(tǒng)可以提高超市的銷售效率,即提高了超市的經(jīng)濟效益,所以從經(jīng)濟上完全是可行的。(1)超市有能力承擔系統(tǒng)開發(fā)費用開發(fā)新系統(tǒng)的工作是一項間距復雜的工作,它的投資主要是人力和物力的投資。對于本系統(tǒng)的開發(fā)者來說,其主要投資還是在人力和物力兩個方面。如果是企業(yè)自己安排人手開發(fā)系統(tǒng)的話,其主要的投資還是在人力資源上,從系統(tǒng)的業(yè)務需求調(diào)查到系統(tǒng)的分析編碼制作都是需要巨大的人力投入的。軟件企業(yè)作為一個簡短的高科技產(chǎn)業(yè),其員工要求都比一般企業(yè)的要求要高,而且對系統(tǒng)開發(fā)及軟件產(chǎn)業(yè)了解比較多,所以在自我

21、開發(fā)管理系統(tǒng)的過程中,企業(yè)自己比較容易安排人手,這樣就可以為企業(yè)借閱大部分的額外開支。同時軟件就其它產(chǎn)品來說,屬于高端行業(yè),無論是產(chǎn)品的價格還是質(zhì)量都比較高,而經(jīng)營產(chǎn)品的經(jīng)銷商或者是商家都要求有雄厚的資金支持。所以,在系統(tǒng)的開發(fā)過程中,企業(yè)完全有能力承擔開發(fā)費用。(2)新系統(tǒng)將為企業(yè)帶來經(jīng)濟效益管理系統(tǒng)是一個信息化、智能化和先進管理理念的集合體。而管理是一個動態(tài)過程,在其運行過程中要采取多項措施。所以在管理中獲得經(jīng)濟效益是一個綜合效益,要對它進行直接定量的分析是比較困難的。一般新系統(tǒng)帶來的經(jīng)濟效益是簡介的,其最主要的表現(xiàn)就是減少了企業(yè)管理費用和人力開支。而其它一些繁瑣的食物都通過新系統(tǒng)來加以分

22、析解決,不僅節(jié)省了大量的時間,還為企業(yè)的各項決策提供了寶貴的資料,為企業(yè)帶來巨大的經(jīng)濟效益。3 系統(tǒng)需求分析3.1 用戶工作流程進貨或銷售商品時,用戶要對進貨單或銷售單進行核對審查,并進行登記;用戶要獲得進貨、銷售、庫存信息時,要對進貨情況、銷售情況、庫存情況進行查詢并打印。3.2 用戶業(yè)務需求(1)該管理軟件將對庫存商品進行資料管理和統(tǒng)計,對產(chǎn)品的進貨單和產(chǎn)品的銷售單進行錄入管理和統(tǒng)計;(2)該管理軟件將根據(jù)用戶的需要對進貨、銷售、庫存情況進行查詢,并能打印詳細信息;(3)該管理軟件將為用戶提供賬號管理工具,以便用戶對賬號進行管理,具體為添加用戶、刪除用戶、修改用戶密碼;(4)該管理軟件提供

23、企業(yè)人員管理,能夠?qū)ζ髽I(yè)員工的分類管理,新員工的加入以及員工刪除,修改進本信息等功能。整個管理系統(tǒng)的業(yè)務功能結構如圖3-1所示:進銷存管理系統(tǒng)人事管理模塊進貨管理模塊銷售管理模塊庫存管理模塊圖3-1 系統(tǒng)功能結構圖該系統(tǒng)將分為四個模塊,分別為:人事管理模塊、進貨管理模塊、銷售管理模塊、庫存管理模塊。3.3 功能需求本系統(tǒng)采用自定向下方法開發(fā),其功能模塊主要有如下幾個部分:進貨管理模塊、庫存管理模塊、銷售管理模塊和員工管理模塊。具體的功能描述如下: 進貨管理:其功能是對手機供應商信息進行管理,并根據(jù)企業(yè)情況制定進貨計劃,實施產(chǎn)品采購,并進行進貨查詢。庫存管理:其功能是對采購來的產(chǎn)品進行企業(yè)內(nèi)部編

24、碼入庫,產(chǎn)品分類等活動,同時能夠根據(jù)銷售清單進行出貨管理,以及庫存統(tǒng)計。銷售管理:其功能是提供一般的銷售管理,能夠進行銷售明細查詢和打印銷售報表。人事管理:其功能是對超市的員工和供貨商信息進行管理,包括查詢,更新等。3.4 性能需求(1)數(shù)據(jù)精確度產(chǎn)品的進貨單和銷售單中,單價、金額采用浮點數(shù),保留至小數(shù)點后兩位。(2)時間特性該管理系統(tǒng)軟件從啟動到進入系統(tǒng)登錄界面的時間正常情況下應少于5秒,錄入并更新數(shù)據(jù)的時間正常情況下少于2秒。(3)適用性該管理系統(tǒng)軟件采用B/S體系結構,而且用Java語言編寫的代碼,適用于各種操作系統(tǒng)上。4 系統(tǒng)概要設計4.1 設計思想(1)系統(tǒng)分成幾個相對獨立的模塊,但

25、這些模塊都進行集中式管理。(2)分層的模塊化程序設計思想,整個系統(tǒng)采用模塊化結構設計。作為應用程序有較強的可操作性和擴展性。(3)合理的數(shù)據(jù)流設計,在應用系統(tǒng)設計中,相對獨立的模塊間以數(shù)據(jù)流相互連接,使各模塊間的耦合性較低,方便系統(tǒng)運行,提高系統(tǒng)安全性。4.2 設計原則為了使本系統(tǒng)功能齊全完備,操作簡便,最大限度的提高軟件的質(zhì)量,從而滿足用戶的實際需要,在設計開發(fā)過程中遵循了如下原則:(1)合法性原則:依據(jù)產(chǎn)品核算系統(tǒng)的工作規(guī)定以及要求,參照核算實際的工作情況,進行諸如產(chǎn)品進貨、銷售等工作。(2)實用性原則:適合產(chǎn)品信息管理工作的實際需求,并能夠處理一些特殊情況的要求,此外,盡可能預留空間,以

26、便擴充功能。(3)準確性原則:對輸入的相關資料建立檢錯機制,及時報錯,使用戶能夠及時準確的輸入合法資料(如:類型匹配,長度不超限等)。(4)易操作原則:要求設計的系統(tǒng)功能齊全,界面友好,操作方便,必要的地方進行提示。 (5)源程序可讀性原則:為了便于其他設計,維護人員讀懂代碼或以后的代碼修改,軟件升級維護,即可能做好代碼注釋工作。(6)優(yōu)化原則:為了達到優(yōu)化的目的,合理的運用窗口,菜單,對象等的繼承,自定義用戶對象,事件,函數(shù),減少不必要的重復性代碼,使程序簡介明了,也方便了將來的維護。(7)安全性原則:可以為該系統(tǒng)的用戶設置用戶權限。4.3系統(tǒng)功能本系統(tǒng)的用例圖:圖4-1 系統(tǒng)用例圖系統(tǒng)管理

27、員可以進行前臺銷售系統(tǒng)和后臺管理系統(tǒng),前臺管理系統(tǒng)管理著商品的錄入,以及進貨商品的付款;后臺管理系統(tǒng)主要進行商品的進貨、庫存以及部分的銷售(例如商品的折扣率),此外人員的管理也是由后臺管理系統(tǒng)掌管。4.4 系統(tǒng)結構系統(tǒng)總體結構進銷存管理系統(tǒng)前臺銷售系統(tǒng)后臺管理系統(tǒng)商品錄入收銀業(yè)務進貨管理銷售管理庫存管理人員管理 退出系統(tǒng)圖4-2 系統(tǒng)總體設計該系統(tǒng)分為兩大部分:前臺銷售系統(tǒng)和后臺管理系統(tǒng)。其中前臺管理系統(tǒng)又分為:商品的錄入和收銀業(yè)務。商品的錄入是銷售人員將顧客所購買的物品進行的統(tǒng)計;收銀業(yè)務是將顧客購買的物品進行統(tǒng)計并進行價格統(tǒng)計。該子系統(tǒng)還必須具有以下功能:安全性:OS登陸、退出、換班與操作

28、鎖定等權限驗證保護;斷電自動保護最大限度防止意外及惡意非法操作。 獨立作業(yè):有的斷網(wǎng)收銀即在網(wǎng)絡服務器斷開或網(wǎng)絡不通的情況下,收銀機仍能正常作業(yè)后臺管理系統(tǒng)分為:進貨管理、銷售管理、庫存管理以及人員管理。進貨管理的功能是對所需要引進的商品向供應商求購,以及更新供應商的信息等;銷售管理將查詢各種銷售明細記錄、各地收銀員收銀記錄以及交結賬情況等;庫存管理是綜合查詢庫存明細記錄,商品的庫存量、移庫出庫情況等;人員管理對人員的更換以及權限等進行管理。4.5 業(yè)務流程分析超市管理系統(tǒng)主要是是以先進的管理理念和科學的計算機技術來取代原始的手工操作。在新系統(tǒng)開發(fā)前,我們對這個超市管理系統(tǒng)業(yè)務流程進行了系統(tǒng)的

29、調(diào)查,得出了下面的業(yè)務流程圖,如圖4-3所示:新系統(tǒng)主要業(yè)務分析:(1)進貨業(yè)務進貨管理是企業(yè)生產(chǎn)經(jīng)營活動中及其重要的一環(huán),它關系到產(chǎn)品質(zhì)量能否得到保證,生產(chǎn)是否能夠順利進行,采購成本能否得到有效控制等問題。企業(yè)現(xiàn)代管理理念中對企業(yè)的進貨管理提出新的要求;企業(yè)進貨時對供貨商的選擇更見慎重,雙方不再是討價還價的買賣關系,而是一種相互依存的合作伙伴關系,并且還需要認識到企業(yè)產(chǎn)品質(zhì)量要從采購抓起,這就關系到供方的供貨、服務質(zhì)量。下面是進貨業(yè)務程序的主要內(nèi)容:供貨商的情況調(diào)查:在實施采購之前,超市首先就要對市場上各大商品供貨商進行詳細的調(diào)查,了解公司的具體情況,評定企業(yè)的信譽級別和公司的市場口碑,做到

30、準確無誤,采購順利。采購計劃的編制:超市根據(jù)自身的資金條件和銷售狀況,綜合分析市場規(guī)律,擬定采購計劃表。實施進貨計劃:根據(jù)供貨商檔案及評審結果,選定供貨商;生成訂貨單給選定的供貨商;雙方就價格、數(shù)量、質(zhì)量等方面洽談磋商,直至簽訂合同;跟蹤合同執(zhí)行,安排供貨進度和貨物運輸,做好驗收入庫工作。(2)庫存業(yè)務:庫存管理是指在上產(chǎn)經(jīng)營中為銷售和耗用而存儲的各種資產(chǎn)。企業(yè)存貨不當都會增加不必要的費用:存貨過多將導致物資的積壓、存儲費用增加、流動資金周轉不利,并且過量的庫存會掩蓋管理不善的問題。存貨不足則影響企業(yè)的正常銷售活動。庫存管理的目標是需求最佳存貨數(shù)量,使庫存的成本總額最小化。其主要業(yè)務如下:產(chǎn)品

31、入庫、出庫、盤庫等日常處理??茖W合理地確定某庫存物資的庫存控制參數(shù)。如:最佳訂貨批量、最大庫存量、最佳缺貨量、最佳訂購周期等,進行嚴格的庫存控制工作。匯總統(tǒng)計各類庫存數(shù)據(jù),反應和監(jiān)督儲備資金占用及采購資金使用情況。(3)銷售業(yè)務銷售對一個企業(yè)的生存和發(fā)展是至關重要的,它不再是傳統(tǒng)意義上的“賣東西”,它對外關系到企業(yè)產(chǎn)品、服務和企業(yè)形象等多方面因素,對內(nèi)涉及到銷售、庫存、財務等信息。此外信息化的高速發(fā)展為企業(yè)的銷售工作提出了新的挑戰(zhàn),封閉意味著落后,超市要抓住時機,引入現(xiàn)代化的銷售管理模式,實施企業(yè)的信息化、智能化銷售管理,才能使超市在激烈的市場競爭中立于不敗之地。4.6 系統(tǒng)數(shù)據(jù)流分析業(yè)務流程

32、分析可以幫助了解某項業(yè)務的具體處理過程,發(fā)現(xiàn)和處理系統(tǒng)調(diào)查工作中的錯誤和疏漏,修改和刪除原系統(tǒng)中不合理部分,在新系統(tǒng)基礎上優(yōu)化業(yè)務處理流程。采用系統(tǒng)流程圖的部分圖形工具來規(guī)范說明該系統(tǒng)的業(yè)務活動。業(yè)務流程圖中的符號說明如下圖4-4所示:系統(tǒng)內(nèi)人員 系統(tǒng)外實體 單據(jù)、報表、帳目 處理 數(shù)據(jù)流向 存儲圖4-4 業(yè)務流程圖圖例根據(jù)了解的超市的一些進貨、銷售和庫存等相關信息。我們給出了超市進銷存的頂層流層圖如圖4-5所示:供貨商進銷存管理系統(tǒng)采購訂單商品入庫單操作人員各類表單操作人員各類報表各類表單客戶全檢報告出貨單銷售訂單圖4-5 管理系統(tǒng)頂層圖客戶向進銷存管理系統(tǒng)提交銷售訂單,管理系統(tǒng)由用戶提供的

33、銷售訂單和倉庫的庫存情況生成出貨單給客戶檢查??蛻魴z查后再向管理系統(tǒng)提供一份全檢報告。管理系統(tǒng)確定無誤后交給發(fā)貨人員。由發(fā)貨人員進行發(fā)貨。推銷人員在外地推銷超市的商品,然后向管理系統(tǒng)提交各類相關的表單,這些表單由系統(tǒng)處理后,生成各種報表交給發(fā)貨人員。由發(fā)貨人員統(tǒng)籌發(fā)貨。采購人員從管理系統(tǒng)拿到采購訂單,根據(jù)采購訂單的內(nèi)容進行對商品進行采購,采購人員對采購回來的商品進行錄入,向系統(tǒng)提供商品入庫單。這樣的頂層流層圖只能描述出系統(tǒng)和外界使用者的關系,而在系統(tǒng)的內(nèi)部還要進行細分。于是該系統(tǒng)0層圖如下圖4-6所示:銷售系統(tǒng)1倉庫系統(tǒng)2采購系統(tǒng)3采購訂單盤點報表商品入庫單請購單商品進貨單商品動態(tài)出貨通知單出

34、貨單商品動態(tài)全檢報告銷售訂單出貨裝箱單報關資料單物控系統(tǒng)4財務系統(tǒng)5各類統(tǒng)計報表采購文件商品庫存文件訂單圖4-6 管理系統(tǒng)第0層圖銷售系統(tǒng):用戶向系統(tǒng)提交了銷售訂單和全檢報告后,銷售系統(tǒng)向倉庫系統(tǒng)提交出貨通知單,經(jīng)過倉庫系統(tǒng)的處理后,返回出貨單和商品動態(tài)。銷售系統(tǒng)再根據(jù)系統(tǒng)拿到的信息進行處理生成報表資料單和出貨裝箱單,由客戶確定后,銷售系統(tǒng)給銷售人員確定的信息。庫存系統(tǒng):采購人員向庫存系統(tǒng)提交了商品入庫單之后,進行處理去修改商品庫存文件。采購系統(tǒng)再根據(jù)商品入庫單和采購文件對商品進行匯總,從而生成盤點報表。采購系統(tǒng):采購人員向系統(tǒng)提供采購信息,采購系統(tǒng)生成采購文件。庫存系統(tǒng)從采購文件中取出信息處

35、理后向采購系統(tǒng)提交請購單和商品進貨單。采購系統(tǒng)根據(jù)信息產(chǎn)生采購訂單。物控系統(tǒng):它由銷售系統(tǒng)的銷售訂單和商品庫存文件的信息對商品進行匯總,統(tǒng)籌調(diào)度商品的流通。財務系統(tǒng):它根據(jù)物控系統(tǒng)的分析信息、商品庫存文件和采購文件對系統(tǒng)金額進行匯總計算,從而生成各種統(tǒng)計匯表。訂單處理系統(tǒng):它在接收到客戶發(fā)送的銷售訂單和全檢報告后,根據(jù)商品清單的信息判斷是否需要向物控系統(tǒng)發(fā)送內(nèi)部訂單,向庫存系統(tǒng)發(fā)送樣品通知單以及是否向報關系統(tǒng)發(fā)送內(nèi)部訂單消息以及向一些相關的操作人員發(fā)送消息。報關:這部分對小型的超市來說沒有必要設計,但是當超市發(fā)展到一定規(guī)模后,甚至達到了全國連鎖后,我們應該考慮到這部分的設計。在這里只做簡要說明

36、。報關系統(tǒng)根據(jù)訂單處理系統(tǒng)發(fā)送的內(nèi)部訂單以及倉庫系統(tǒng)發(fā)送的出貨通知單并根據(jù)報關資料的相關信息產(chǎn)生出貨單進行相應的操作。出貨處理:它根據(jù)出貨文件情況和商品庫存情況的信息判斷是否出貨,若可以則將出貨通知單發(fā)送到倉庫系統(tǒng)和報關系統(tǒng)。出貨處理1.3訂單處理系統(tǒng)1.1報關1.2全檢報告銷售訂單內(nèi)部訂單出貨通知單報關資料單商品清單出貨文件商品庫存情況出貨通知單出貨單出貨通知單樣品通知單內(nèi)部訂單圖4-7 庫存管理部分第1層圖商品管理系統(tǒng)進行商品的進貨、銷售以及對庫存的操作,在庫存管理中我們進行了細化管理庫存商品得到如圖4-8所示的流程圖:庫存商品管理向采購系統(tǒng)發(fā)送請購單、商品通知單和商品的動態(tài)請求進貨。庫存

37、商品管理根據(jù)供應商發(fā)送來的商品入庫單,向商品入庫文件、原庫存文件以及采購文件寫入相關信息,若要進行盤點操作則向操作員發(fā)送商品盤點報表。庫存商品管理2.1商品入庫單商品盤點報表商品動態(tài)請購單商品通知單采購文件原庫存文件商品入庫文件圖4-8 商品管理部分第2層圖我們對入庫商品再繼續(xù)進行細化,得到了如下圖4-9所示的流程圖:商品庫存文件入庫商品管理2.2商品入庫商品盤點表出貨單商品動態(tài)出貨通知單圖4-9 商品管理部分第2層圖入庫商品管理根據(jù)供應商發(fā)送的商品入庫消息進行相應的操作,對商品庫存文件進行更新,同時向銷售系統(tǒng)發(fā)出出貨單和商品的動態(tài)消息以及向報關發(fā)送出貨通知單消息,若要進行盤點操作則向操作員發(fā)

38、送商品盤點表。4.7 運行環(huán)境l Intel® Pentium® 2級以上處理器,512M以上內(nèi)存l Microsoft® Windows XP操作系統(tǒng)l 800*600或以上的屏幕分辨率5 系統(tǒng)詳細設計5.1 用戶登錄與刪除的設計及實現(xiàn)該管理系統(tǒng)用戶登錄界面如下圖5-1所示:圖5-1用戶登錄源代碼如下:public String login()tryif (this.ok.equalsIgnoreCase("登陸")List tem=this.userDAO.findByNamePw(s.getName(),s.getPw(); if (te

39、m!=null&&tem.size()!=0) return "success_main" else return "fail" else return "success"catch (RuntimeException e) throw e; 該管理系統(tǒng)用戶刪除界面如下圖5-2所示:圖5-2用戶刪除源代碼如下:public String del()tryobjUser=this.userservice.getByid(this.id);/System.out.println("-sadfasdad-"

40、;+objUser.getId()+"-");this.userservice.delUser(objUser);/System.out.print(objUser.getName();/this.userDAO.getHibernateTemplate().clear(); /this.userDAO.getHibernateTemplate().saveOrUpdate(objUser); /this.userDAO.getHibernateTemplate().delete(s);/this.userDAO.getHibernateTemplate().flush()

41、;this.users=this.userservice.getAllUsers();return "Sdel"catch(Exception e)e.printStackTrace();this.setActionMessage("fail");return "S2"public String doDelUser()tryobjUser=this.userservice.getByid(s.getId();objUser=s;this.userservice. delUser(objUser);/System.out.print(&

42、quot;-first-"+s.getId();this.setActionMessage("success!"); this.users=this.userservice.getAllUsers();return "S1"catch(Exception e)e.printStackTrace();this.setActionMessage("FAIL");return "S2"操作流程如下:一切配置完成以后,部署所建立的工程,然后編譯,成功啟動Tomcat后,在IE瀏覽器里輸入http:/localho

43、st:8080/ensshsys 將顯示系統(tǒng)登錄窗口輸入用戶名和密碼后點擊“登陸”按鈕,系統(tǒng)將自動檢驗所輸入的用戶名和密碼是否正確,若正確則進入系統(tǒng)主界面,否則顯示錯誤信息;點擊“取消”按鈕則將用戶名和密碼框中的內(nèi)容清空,等待下次輸入。登陸成功后跳轉到系統(tǒng)的主界面:圖6-25.2 Spring配置文件的創(chuàng)建Spring有分層的體系結構,這意味著能選擇使用它孤立的任何部分,它的架構仍然是內(nèi)在穩(wěn)定的。可以選擇僅僅使用Spring來簡單化JDBC的使用,或用來管理所有的業(yè)務對象,從底部編寫易于測試的代碼。通過Spring提供的IoC容器,我們可以將對象之間的依賴關系交由Spring進行控制,避免硬編

44、碼所造成的過度程序耦合。有了Spring,不必再為單實例模式類、屬性文件解析等這些很底層的需求編寫代碼,可以更專注于上層的應用。在“Web Root”à“WEB-INF”下創(chuàng)建“applicationContext.xml”文件,由于將Hibernate托管于Spring了,故在該文件里面配置與數(shù)據(jù)庫連接的Bean,其內(nèi)容如下:<bean id="dataSource" class="xool.ProxoolDataSource" destroy-method="close"

45、><property name="driver" value="com.mysql.jdbc.Driver" /><property name="driverUrl" value="jdbc:mysql:/localhost:3306/ensshsys?user=root&amp;password=&amp;" /><property name="user" value="root" /><property na

46、me="password" value="" />5.3 Database Driver的配置在MyEclipse7.0主界面的右上角選擇“MyEclipse Database Explorer perspective”,在彈出的界面中右擊“MyEclipse Derby”à“New”,新建一個Database Driver,配置如下圖5-2所示:圖5-2繼續(xù)操作下去就完成了名為“com.mysql.jdbc.Driver”的配置,打開該驅(qū)動即將數(shù)據(jù)庫連接上了。5.4 Struts配置文件的創(chuàng)建Struts2本身提供了大量的可重用的攔截器

47、,比如類型轉換攔截器,很多時候我們從頁面取得參數(shù),這個時候它是String類型的,我們需要手動的把它轉成Long型的或是Integer型的再使用,在Struts2中不必這樣做,Struts2中已經(jīng)幫你做了這些事情了。同時Struts2更加的模塊化,可以輕松將配置信息按功能界限拆分成多個文件,便于管理和團隊協(xié)作開發(fā)。它與Spring的集成中,不必再自己編寫singleton,進一步的降低了程序間的耦合性,就它內(nèi)部本身而言,降低了框架本身的偶合性。在左側的窗口中,選中“ensshsys”右擊“New”à“File”,創(chuàng)建“struts.xml”初始化信息如下:<?xml versi

48、on="1.0" encoding="utf-8"?><!DOCTYPE struts PUBLIC"-/Apache Software Foundation/DTD Struts Configuration 2.0/EN""/dtds/struts-2.0.dtd"><struts><!- 個人名字命名struts.xml -><package name="main" extends="st

49、ruts-default"><interceptors><interceptor-stack name="defaultStack_birdman"><interceptor-ref name="defaultStack"></interceptor-ref></interceptor-stack></interceptors><default-interceptor-ref name="defaultStack_birdman">&l

50、t;/default-interceptor-ref><global-results><result name="relogin">index.jsp</result></global-results></package></struts> 5.4.1 struts.xml的配置在struts.xml里<interceptors></interceptors>里面的內(nèi)容為攔截器,在此引用了默認的攔截器堆棧。其內(nèi)容如下:<interceptors><inte

51、rceptor-stack name="defaultStack_birdman"><interceptor-ref name="defaultStack"></interceptor-ref></interceptor-stack></interceptors>在index.jsp登陸頁面中配置需要的Action類,如下所示:<form ACTION="validateAction!login.action" method="post">然后在va

52、lidate類下添加login()方法:public String login()tryif (this.ok.equalsIgnoreCase("登陸")List tem=this.userDAO.findByNamePw(s.getName(),s.getPw(); if (tem!=null&&tem.size()!=0) return "success_main" else return "fail" else return "success"catch (RuntimeException

53、e) throw e; <action name="validateAction" class="validate"><result name="success_main">main.jsp</result><result name="fail">fail.jsp</result></action>在struts.xml里面設置validateAction以及它在登陸頁面所返回的值指向的文件:在main.jsp文件中用到了“jsp_userMa

54、n_*”,因此需要在struts.xml文件里配置jsp_userMan_*.action。該Action的作用是將主界面上的“用戶管理”轉向它所指的頁面,在主界面里面顯示出來。在struts.xml文件中1位置的內(nèi)容是指定頁的名稱。當點擊主界面上相應的按鈕,Struts按照在此文件路徑的配置搜索文件夾下相應的文件,將其顯示出來。<!- user management configuration -><action name="jsp_userMan_*"><result name="success">WEB-INF/

55、jsp/userMan/1.jsp</result></action>在“用戶管理”里面的用戶添加需要的validateAction類以及其所返回的值所指向的文件:<action name="validateAction" class="validate"><result name="DoubleNameError">DoubleNameError.jsp</result> <result name="fail">fail.jsp</re

56、sult><result name="S1" type="freemarker">WEB-INF/jsp/UserMan/S1.ftl</result><result name="S2">WEB-INF/jsp/userMan/S2.jsp</result>用戶修改的validateAction類以及其所返回的值所指向的文件:<action name="validateAction" class="validate"><re

57、sult name="S1" type="freemarker">WEB-INF/jsp/UserMan/S1.ftl</result><result name="S2">WEB-INF/jsp/userMan/S2.jsp</result><result name="Sedit" type="freemarker">WEB-INF/jsp/UserMan/Sedit.ftl</result>用戶刪除的validateAction類以及其所返回的值所指向的文件:<action name="validateAction" class="validate"><result name="S1" type="freemarker">WEB-INF/jsp/UserMan/S1.ftl</result><result name="S2">W

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論