版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、畢 業(yè) 論 文學(xué)生姓名學(xué) 號(hào)學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院專 業(yè)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院(軟件工程)題 目基于jsp的倉庫管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)指導(dǎo)教師 講 師/碩 士(姓 名) (專業(yè)技術(shù)職稱/學(xué)位)年月摘要:倉庫管理系統(tǒng)是一個(gè)企業(yè)不可或缺的部分,高效的倉庫管理系統(tǒng)可以為企業(yè)的發(fā)展和經(jīng)營提供堅(jiān)強(qiáng)的后盾。隨著科技的不斷發(fā)展,用計(jì)算機(jī)對(duì)倉庫進(jìn)行管理,具有人工管理所無法比擬的優(yōu)點(diǎn),例如:檢索迅速、查找方便、保密性好、成本低、壽命長(zhǎng)等。這些優(yōu)點(diǎn)能極大地提高倉庫管理的效率, 使企業(yè)的倉庫管理井井有條,為企業(yè)的健康發(fā)展創(chuàng)造良好的條件。本文在分析現(xiàn)有管理系統(tǒng)開發(fā)技術(shù)的基礎(chǔ)上,實(shí)現(xiàn)了以eclipse為開發(fā)平臺(tái)的基于j
2、sp的,以mysql作為后臺(tái)數(shù)據(jù)庫的倉庫管理系統(tǒng)。該系統(tǒng)主要具備基本信息管理、庫存管理、信息查詢、用戶管理等功能模塊。關(guān)鍵詞:倉庫管理,jsp,mysql數(shù)據(jù)庫abstract: warehouse management system is an indispensable part of the enterprise. a warehouse management system with high efficiency can provide a strong backing for the development and management of enterprises. with th
3、e development of technology,to manage the warehouse with computer has the incomparable advantages of manual management.for example, quick search, find convenient, good security, low cost, long service life etc. these advantages can greatly improve the efficiency of warehouse management, the enterpri
4、se storage management be arranged in good order, and create good conditions for the healthy development of enterprises. in this paper, based on analysis of the existing management system development technology, in order to realize the eclipse as the development platform based on jsp, using mysql as
5、the background database warehouse management system. the system mainly has the basic information management, inventory management, information query, user management modulekeywords: warehouse management, jsp, mysql database目 錄1 緒論41.1 開發(fā)背景41.2 開發(fā)意義41.3 本文組織結(jié)構(gòu)42 系統(tǒng)解決方案52.1 jsp語言概述52.2 ssh框架52.3 mysql
6、數(shù)據(jù)庫52.4 系統(tǒng)平臺(tái)環(huán)境53 需求分析63.1 面向的用戶人群63.2 功能需求分析63.3 業(yè)務(wù)流程圖74 數(shù)據(jù)庫設(shè)計(jì)94.1 e-r模型94.2 數(shù)據(jù)模型125 詳細(xì)設(shè)計(jì)155.1 數(shù)據(jù)庫連接類155.2 系統(tǒng)主要模塊16結(jié) 論34參 考 文 獻(xiàn)35致 謝361 緒論1.1 開發(fā)背景一直以來企業(yè)使用傳統(tǒng)人工的方式來管理文件庫存,這種管理方式存在許多缺點(diǎn),如: 保密性差、效率低等,而且時(shí)間一長(zhǎng),將產(chǎn)生大量的數(shù)據(jù)和文件, 這對(duì)于企業(yè)查找、更新和維護(hù)都帶來了很多的困難。由于缺乏科學(xué)的管理和管理工具,企業(yè)在業(yè)務(wù)上和管理上的安排都存在著許多不便。因而針對(duì)這些問題而開發(fā)的系統(tǒng)具有很好的前景。1.2
7、 開發(fā)意義隨著時(shí)代的不斷發(fā)展,社會(huì)正在不斷向信息化時(shí)代邁進(jìn)。由于能夠有效地收集和處理各種信息,提高辦事效率,電子自動(dòng)化辦公越來越被重視。而隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,又為電子自動(dòng)化辦公的發(fā)展提供了良好的前景。如今,很多企業(yè)已經(jīng)擁有了計(jì)算機(jī)設(shè)備,具備物質(zhì)條件,但很多工作仍由管理者手工操作完成,這就造成不必要的浪費(fèi)。計(jì)算機(jī)流行的原因主要有以下幾個(gè)方面:1.計(jì)算機(jī)可以代替手工操作進(jìn)行許多繁雜的工作;2.計(jì)算機(jī)可以節(jié)省大量資源;3.計(jì)算機(jī)可以極大地提高人們的工作效率;4.計(jì)算機(jī)可以使敏感文檔更加安全;5.電子自動(dòng)化辦公是先進(jìn)生產(chǎn)力發(fā)展的重要標(biāo)志。綜上所述,用計(jì)算機(jī)開發(fā)的軟件系統(tǒng),替代人工操作進(jìn)行管理,可
8、以節(jié)約大量的人力、物力,是企業(yè)發(fā)展的必然趨勢(shì)1!1.3 本文組織結(jié)構(gòu)本系統(tǒng)將以課本和一些課外書籍為參考,從系統(tǒng)開發(fā)背景需求分析概要設(shè)計(jì)詳細(xì)設(shè)計(jì)具體開發(fā)一步步對(duì)系統(tǒng)進(jìn)行分析和設(shè)計(jì)。各個(gè)章節(jié)安排如下:第一章為緒論,簡(jiǎn)述項(xiàng)目的開發(fā)背景和開發(fā)意義;第二章詳細(xì)介紹了項(xiàng)目開發(fā)的應(yīng)用技術(shù),比如jsp,框架和數(shù)據(jù)庫等;第三章是需求分析,介紹了系統(tǒng)的設(shè)計(jì)目標(biāo)和系統(tǒng)的主要功能模塊。第四章是數(shù)據(jù)庫設(shè)計(jì),在e-r模型的基礎(chǔ)上,再設(shè)計(jì)出相應(yīng)的邏輯模型。第五章根據(jù)系統(tǒng)功能模塊詳細(xì)介紹了各模塊的設(shè)計(jì)過程并給出部分實(shí)現(xiàn)代碼。2 系統(tǒng)解決方案2.1 jsp語言概述jsp(java server pages)是由sun micr
9、osystems公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。它的主要目的是將表示邏輯從servlet中分離出來。它是在傳統(tǒng)的網(wǎng)頁html文件(*.htm,*.html)中插入java程序段(scriptlet)和jsp標(biāo)記(tag),從而形成jsp文件(*.jsp)。所有程序操作都在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的僅是得到的結(jié)果,這樣大大降低了對(duì)客戶瀏覽器的要求,即使客戶瀏覽器端不支持java,也可以訪問jsp網(wǎng)頁。用jsp開發(fā)的web應(yīng)用是跨平臺(tái)的,既能在linux下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行2。2.2 ssh框架ssh 在j2ee項(xiàng)目中表示了3種框架,即 spring +
10、struts +hibernate。本系統(tǒng)采用mvc開發(fā)模式來編寫代碼,mvc全名是model view controller,是模型(model)視圖(view)控制器(controller)的縮寫3。struts對(duì)model,view和controller都提供了對(duì)應(yīng)的組件。spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(ioc)和面向切面(aop)的容器框架,它由rod johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的4。spring使用基本的javabean來完成以前只可能由ejb完成的事情。 hibernate是一個(gè)開放源代碼的對(duì)象關(guān)系映射框架,它對(duì)jdbc進(jìn)行了非常輕量級(jí)的對(duì)象封裝
11、,可以應(yīng)用在任何使用jdbc的場(chǎng)合,可以在servlet/jsp的web應(yīng)用中使用,也可以在應(yīng)用ejb的j2ee架構(gòu)中取代cmp,完成數(shù)據(jù)持久化的重任5。2.3 mysql數(shù)據(jù)庫mysql是一個(gè)關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典mysql ab公司開發(fā),目前屬于oracle公司。mysql是一種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉庫內(nèi),這樣就增加了速度并提高了靈活性。mysql的sql語言是用于訪問數(shù)據(jù)庫的最常用標(biāo)準(zhǔn)化語言。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),一般中小型網(wǎng)站的開發(fā)都選擇mysql作為網(wǎng)站數(shù)據(jù)庫6。2.4 系統(tǒng)平臺(tái)
12、環(huán)境(1)硬件環(huán)境:服務(wù)器:cpu: 2g或以上;內(nèi)存:1g ram或以上;硬盤:80g或以上;客戶端:cpu: 1g或以上;內(nèi)存:64mb以上內(nèi)存或更高;硬盤:20g或以上。(2)軟件開發(fā)環(huán)境:操作系統(tǒng):windowsxp;所用工具:eclipse,navicat for mysql;數(shù)據(jù)庫:mysql。3 需求分析3.1 面向的用戶人群1. 管理員:作為系統(tǒng)的管理員和維護(hù)者,對(duì)系統(tǒng)基本信息、倉庫管理等模塊進(jìn)行數(shù)據(jù)的管理,并對(duì)系統(tǒng)的更新作出及時(shí)的響應(yīng),使得系統(tǒng)能更好地運(yùn)行。2. 普通用戶:作為系統(tǒng)的使用者,注冊(cè)登陸系統(tǒng)后,可以查詢系統(tǒng)基本信息、倉庫信息、修改個(gè)人信息等。3.2 功能需求分析倉
13、庫管理系統(tǒng)基本信息管理庫存管理信息查詢用戶管理用戶添加,刪除用戶密碼修改添加入庫記錄添加出庫記錄按倉庫查詢按貨物查詢用戶添加刪除用戶權(quán)限修改系統(tǒng)設(shè)置個(gè)人信息修改圖3-1 系統(tǒng)功能模塊圖本系統(tǒng)是一款倉庫管理系統(tǒng),旨在對(duì)倉庫的自動(dòng)化管理以適應(yīng)信息化社會(huì)的生產(chǎn)方式。根據(jù)倉庫管理系統(tǒng)的需求,劃分了倉庫的功能模塊,主要分為用戶管理模塊、入庫出庫模塊、倉庫查詢模塊、盤點(diǎn)統(tǒng)計(jì)模塊7。具體功能如圖3-1所示。3.3 業(yè)務(wù)流程圖該系統(tǒng)的用戶分為普通用戶和管理員。管理員擁有所有權(quán)限,而普通用戶只能進(jìn)行查詢的操作。13.3.1 管理員模塊圖3-2 管理員使用流程圖管理員使用流程如圖3-2所示。
14、1. 登錄登陸界面包括賬號(hào)和密碼兩個(gè)文本框和身份選擇單選框,用戶登陸成功就會(huì)轉(zhuǎn)到系統(tǒng)主頁面,否則將會(huì)提示賬號(hào)密碼錯(cuò)誤。2. 查詢信息用戶登陸查詢信息界面可以對(duì)倉庫信息(倉庫、貨物、供應(yīng)商、部門、入庫單、出庫單)進(jìn)行查詢。3. 設(shè)置信息(管理員)管理員用戶登陸設(shè)置信息界面可以對(duì)倉庫信息(倉庫、貨物、供應(yīng)商、部門、入庫單、出庫單)進(jìn)行設(shè)置。4. 添加記錄(管理員)管理員用戶登陸添加界面可以添加入庫和出庫信息。5. 修改密碼用戶可以修改自己的密碼,需要先驗(yàn)證舊密碼,驗(yàn)證成功后通過輸入兩次新密碼對(duì)密碼進(jìn)行修改。6. 用戶管理(管理員)管理員用戶可以對(duì)已添加的用戶權(quán)限進(jìn)行修改,也可以刪除已存在的用戶。3
15、.3.2 普通用戶模塊圖3-3 普通用戶使用流程圖普通用戶使用流程如圖3-3所示。普通用戶只能進(jìn)行查詢操作和修改個(gè)人信息。4 數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫是一種存儲(chǔ)數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行操作的工具。數(shù)據(jù)庫的作用在于組織和表達(dá)信息,即數(shù)據(jù)庫就是相關(guān)信息的集合。本章從e-r模型的分析設(shè)計(jì)為切入點(diǎn),重點(diǎn)介紹了數(shù)據(jù)庫的設(shè)計(jì)。根據(jù)倉庫管理系統(tǒng)的功能,將其e-r圖轉(zhuǎn)化為數(shù)據(jù)庫表,為系統(tǒng)的實(shí)現(xiàn)奠定了基礎(chǔ)。4.1 e-r模型e-r模型即實(shí)體-聯(lián)系模型,它是由實(shí)體集、屬性和聯(lián)系集構(gòu)成。實(shí)體集用矩形框表示,矩形框內(nèi)寫上實(shí)體名。實(shí)體的屬性用橢圓框表示,框內(nèi)寫上屬性名,并用無向邊與其對(duì)應(yīng)的實(shí)體集相連。實(shí)體間的聯(lián)系用菱形框表示,菱形框中
16、寫上以適當(dāng)?shù)暮x命名的名字,用無向連線將參加聯(lián)系的實(shí)體矩形框分別與菱形框相連,并在連線上標(biāo)明聯(lián)系的類型,即11、1n或mn。本系統(tǒng)的e-r模型主要包括部門實(shí)體、貨物實(shí)體、用戶實(shí)體、供應(yīng)商實(shí)體、倉庫實(shí)體、入庫單實(shí)體和出庫單實(shí)體共七個(gè)實(shí)體集和一個(gè)各實(shí)體聯(lián)系集。e-r模型如下文所述。4566.11. 部門實(shí)體用來存儲(chǔ)部門信息,e-r圖如圖4-1所示:部門部門電話部門地址部門經(jīng)理部門編號(hào)部門名稱圖4-1 部門實(shí)體e-r圖2. 貨物實(shí)體用來存儲(chǔ)貨物信息,e-r圖如圖4-2所示:貨物貨物編號(hào)供貨商編號(hào)計(jì)量單位貨物價(jià)格貨物規(guī)格貨物名稱圖4-2 貨物實(shí)體e-r圖3. 用戶實(shí)體用來存儲(chǔ)用戶信息,e-r圖如圖4-
17、3所示:用戶用戶編號(hào)用戶密碼用戶權(quán)限用戶名圖4-3用戶實(shí)體e-r圖4. 供應(yīng)商實(shí)體用來存儲(chǔ)供應(yīng)商信息,e-r圖如圖4-4所示:供應(yīng)商供應(yīng)商電話供應(yīng)商地址供應(yīng)商聯(lián)系人供應(yīng)商編號(hào)供應(yīng)商名稱圖4-4供應(yīng)商實(shí)體e-r圖5. 倉庫實(shí)體用來存儲(chǔ)倉庫信息,e-r圖如圖4-5所示:倉庫倉庫電話庫存總量倉庫管理員倉庫編號(hào)已用庫存量圖4-5倉庫實(shí)體e-r圖6. 入庫單實(shí)體用來存儲(chǔ)入庫單信息,e-r圖如圖4-6所示:入庫單入庫編號(hào)管理員編號(hào)倉庫編號(hào)修改時(shí)間入庫時(shí)間入庫類型貨物編號(hào)入庫數(shù)量圖4-6入庫單實(shí)體e-r圖7. 出庫單實(shí)體用來存儲(chǔ)出庫單信息,e-r圖如圖4-7所示:出庫單出庫編號(hào)管理員編號(hào)倉庫編號(hào)修改時(shí)間出庫
18、時(shí)間部門編號(hào)貨物編號(hào)出庫數(shù)量圖4-7出庫單實(shí)體e-r圖8各實(shí)體聯(lián)系e-r圖如圖4-8所示。用戶通過添加入庫單和出庫單記錄入庫信息和出庫信息,供應(yīng)商提供貨物,部門使用貨物,一條記錄對(duì)應(yīng)一個(gè)供應(yīng)商或者部門,貨物入庫貨物出庫倉庫入庫單出庫單供應(yīng)商部門貨物存放用戶添加nn11添加11nnmnmm圖4-8 各實(shí)體聯(lián)系e-r圖4.2 數(shù)據(jù)模型根據(jù)4.1中分析得出的e-r圖,本系統(tǒng)采用mysql數(shù)據(jù)庫管理系統(tǒng),在mysql數(shù)據(jù)庫管理系統(tǒng)中新建名稱為mystorage的數(shù)據(jù)庫,本系統(tǒng)所使用的所有數(shù)據(jù)信息均將存儲(chǔ)于該數(shù)據(jù)庫中。以下列舉數(shù)據(jù)表。11.11.21. 部門表(department)表4-1 部門表列名
19、數(shù)據(jù)類型大小說明depaidint4部門編號(hào)depanamevarchar24部門名稱depapersonvarchar15部門經(jīng)理depaphonechar11部門電話depaaddrvarchar90部門地址2. 貨物表(goods)表4-2 貨物表列名數(shù)據(jù)類型大小說明goodsidint4貨物編號(hào)suppidint4供應(yīng)商編號(hào)goodsnamevarchar30貨物名稱goodssizevarchar10貨物規(guī)格goodspriceint4貨物價(jià)格unitchar6計(jì)量單位3. 入庫表(instore)表4-3 入庫表列名數(shù)據(jù)類型大小說明instidint4入庫編號(hào)instclassch
20、ar1入庫類型goodsidint4貨物編號(hào)instnumint4入庫數(shù)量insttimedatetime8入庫時(shí)間modifytimedatetime8修改時(shí)間stoidint4倉庫編號(hào)useridint4管理員編號(hào)4. 出庫表(outstore)表4-4 出庫表列名數(shù)據(jù)類型大小說明outstidint4出庫編號(hào)depaidint4部門編號(hào)goodsidint4貨物編號(hào)outstnumint4出庫數(shù)量outsttimedatetime8出庫時(shí)間modifytimedatetime8修改時(shí)間stoidint4倉庫編號(hào)useridint4管理員編號(hào)5. 倉庫表(store)表4-5 倉庫表列名數(shù)
21、據(jù)類型大小說明stoidint4倉庫編號(hào)stopersonvarchar15倉庫管理員stophonechar11倉庫電話usedvoluint4已用庫存量allvoluint4庫存總量6. 供應(yīng)商表(supplier)表4-6 供應(yīng)商表列名數(shù)據(jù)類型大小說明suppidint4供應(yīng)商編號(hào)suppnamevarchar45供應(yīng)商名稱supppersonvarchar15供應(yīng)商聯(lián)系人suppphonechar11供應(yīng)商電話suppaddrvarchar90供應(yīng)商地址7. 用戶表(user)表4-7 用戶表列名數(shù)據(jù)類型大小說明useridint4用戶編號(hào)usernamevarchar15用戶名pas
22、svarchar16用戶密碼userlevelchar1用戶權(quán)限8. 庫存表(stock)表4-8 庫存表列名數(shù)據(jù)類型大小說明stoidint4倉庫編號(hào)goodsidint4貨物編號(hào)stockint4庫存量以上就是mystorage數(shù)據(jù)庫的數(shù)據(jù)表。5 詳細(xì)設(shè)計(jì)5.1 數(shù)據(jù)庫連接類在對(duì)數(shù)據(jù)庫連接的過程中,為了使代碼更精簡(jiǎn),將對(duì)數(shù)據(jù)庫的連接方法封裝在drivermana公共類中,其中包括數(shù)據(jù)庫連接方法getconn、resultset的關(guān)閉方法closers、preparedstatement的關(guān)閉方法closepstmt、connection的關(guān)閉方法closecon。以下即為代碼:public
23、 class drivermana public static connection getconn()connection con=null;try class.forname(com.mysql.jdbc.driver);con=drivermanager.getconnection(jdbc:mysql:/localhost:3306/mystorage, root, root); catch (classnotfoundexception e) e.printstacktrace(); catch (sqlexception e) e.printstacktrace();return
24、con;public static void closers(resultset rs)if(rs!=null)try rs.close(); catch (sqlexception e) e.printstacktrace();public static void closepstmt(preparedstatement pstmt)if(pstmt!=null)try pstmt.close(); catch (sqlexception e) e.printstacktrace();public static void closecon(connection con)if(con!=nul
25、l)try con.close(); catch (sqlexception e) e.printstacktrace();5.2 系統(tǒng)主要模塊5.2.1 登錄模塊圖5-1 登錄界面本模塊主要用于對(duì)用戶身份進(jìn)行鑒別。用戶有兩種身份:普通用戶和管理員。用戶通過單選框選擇登錄身份,通過表單輸入用戶名、密碼,系統(tǒng)根據(jù)用戶提供的信息對(duì)用戶進(jìn)行身份鑒別。界面如圖5-1所示。后臺(tái)代碼實(shí)現(xiàn):public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexcepti
26、on string username=request.getparameter(username);string password=request.getparameter(paswrd);string userlevel=request.getparameter(userlevel);user luser=new user();luser.setusername(username);luser.setpassword(password);luser.setuserlevel(userlevel);ilogindao logindao=new logindaoimpl();user login
27、=logindao.getuser(luser);if(login!=null)httpsession session=request.getsession();session.setattribute(login, login);servletcontext context=this.getservletcontext();requestdispatcher dispatcher;if(login.getuserlevel().equals(0)dispatcher=context.getrequestdispatcher(/comuser.jsp);elsedispatcher=conte
28、xt.getrequestdispatcher(/manauser.jsp);dispatcher.forward(request, response);elserequest.setattribute(loginfail,登錄失敗);servletcontext context=this.getservletcontext();requestdispatcher dispatcher=context.getrequestdispatcher(/login.jsp);dispatcher.forward(request, response);5.2.2 目錄生成模塊由登陸界面進(jìn)入主界面后,總體
29、界面如圖5-2所示:圖5-2 主界面畫面左邊即為目錄。目錄模塊主要用于生成目錄部分,菜單的折疊展開是使用javascript代碼實(shí)現(xiàn)的。菜單展開折疊功能實(shí)現(xiàn)代碼:var divheight=130;var speed=11;var i=0;var s;var p=0;function doopenclose(n)if(document.getelementbyid(bbb+n).offsetheightdivheight)p=divheight;inc2(n);function inc(x)i=i+10;document.getelementbyid(bbb+x).style.height=i
30、+px;if(idivheight)i=divheight-5;var s=settimeout(inc(+x+),speed);if(i=125)window.cleartimeout(s);function inc2(x)if(p1)p=p-10;document.getelementbyid(bbb+x).style.height=p+px;var s=settimeout(inc2(+x+),speed);if(p=0)window.cleartimeout(s);5.2.3 基本信息管理模塊基本信息管理模塊包括供應(yīng)商管理、貨物管理、倉庫信息管理和部門管理。1. 供應(yīng)商管理本功能用于對(duì)
31、供應(yīng)商信息的記錄管理。管理員可以添加新的供應(yīng)商,修改已有的供應(yīng)商信息,刪除供應(yīng)商信息等。界面如圖5-4所示:圖5-4 供應(yīng)商管理界面主要代碼:1) 添加供應(yīng)商public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception request.setcharacterencoding(utf-8);response.setcontenttype(text/html;charset=utf-8);string suppname=request
32、.getparameter(suppname);string suppperson=request.getparameter(suppperson);string suppphone=request.getparameter(suppphone);string suppaddr=request.getparameter(suppaddr);supplier supplier=new supplier();supplier.setsuppname(suppname);supplier.setsuppperson(suppperson);supplier.setsuppphone(suppphon
33、e);supplier.setsuppaddr(suppaddr);isupplierdao supplierdao=new supplierdaoimpl();int i=supplierdao.addsupplier(supplier);if(i0)request.setattribute(addpromt, 添加成功!);elserequest.setattribute(addpromt, 添加失敗!);this.getservletcontext().getrequestdispatcher(/addsupplier.jsp).forward(request, response);2)
34、 刪除供應(yīng)商public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception string dele=request.getparametervalues(dele);int suppid=0;int rs=0;for(int i=0;i0)request.setattribute(delepromt, 刪除成功!);elserequest.setattribute(delepromt, 刪除失?。?;this.getservletco
35、ntext().getrequestdispatcher(/tosupply).forward(request, response);2. 貨物管理本功能用于對(duì)貨物信息的記錄管理。管理員可以添加新的貨物,修改已有的貨物信息,刪除貨物信息等。界面如圖5-5所示:圖5-5 貨物管理界面實(shí)現(xiàn)代碼與供應(yīng)商管理相似。3. 倉庫信息管理本功能用于對(duì)倉庫信息的記錄管理。管理員可以添加新的倉庫,修改已有的倉庫信息,刪除倉庫信息等。界面如圖5-6所示:圖5-6 倉庫管理界面實(shí)現(xiàn)代碼與供應(yīng)商管理相似。4. 部門管理圖5-7 部門管理界面本功能用于對(duì)部門信息的記錄管理。管理員可以添加新的部門,修改已有的部門信息,刪
36、除部門信息等。界面如圖5-7所示。實(shí)現(xiàn)代碼與供應(yīng)商管理相似。5.2.4 庫存管理模塊庫存管理模塊包括入庫管理、出庫管理和庫存管理。1. 入庫管理本功能用于對(duì)貨物入庫的記錄管理。當(dāng)某種已有貨物進(jìn)貨后,就可以在此處進(jìn)行添加新紀(jì)錄,查詢或刪除已有記錄等操作。界面如圖5-8所示:圖5-8 入庫管理界面主要代碼:1) 添加入庫單public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception response.setcontenttype(tex
37、t/html);string instclass=request.getparameter(instclass);int goodsid=integer.parseint(request.getparameter(goodsid);double instnum=double.parsedouble(request.getparameter(instnum);int stoid=integer.parseint(request.getparameter(stoid);date date=new date();httpsession session=request.getsession();use
38、r login=(user)session.getattribute(login);int userid=login.getuserid();instore instore=new instore();instore.setgoodsid(goodsid);instore.setinstclass(instclass);instore.setinstnum(instnum);instore.setstoid(stoid);instore.setinsttime(date);instore.setmodifytime(date);instore.setuserid(userid);iinstor
39、edao instoredao=new instoredaoimpl();int i=0;if(request.getparameter(instid).equals()i=instoredao.addinstore(instore);if(i0)istockdao stockdao=new stockdaoimpl();stock stock=new stock();stock.setstoid(stoid);stock.setgoodsid(goodsid);stock.setstock(instnum);int j=0;if(stockdao.querystock(stock)j=sto
40、ckdao.updatestock(stock,1);elsej=stockdao.addstock(stock);int volume=integer.parseint(request.getparameter(volume);istoragedao storagedao=new storagedaoimpl();i=storagedao.updatestorage(volume, stoid,1);if(i0&j0)request.setattribute(addpromt, 添加成功!);elserequest.setattribute(addpromt, 添加失?。?;elserequ
41、est.setattribute(addpromt, 添加失敗!);elseint instid=integer.parseint(request.getparameter(instid);instore.setinstid(instid);instore.setmodifytime(new date();i=instoredao.updateinstore(instore);if(i0)request.setattribute(modifypromt, 修改成功!);elserequest.setattribute(modifypromt, 修改失?。?;this.getservletcon
42、text().getrequestdispatcher(/toaddinstore).forward(request, response);2) 刪除入庫單public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception string dele=request.getparametervalues(dele);int instid=0;int rs=0;for(int i=0;i0)request.setattribute(delepr
43、omt, 刪除成功!);elserequest.setattribute(delepromt, 刪除失?。?;this.getservletcontext().getrequestdispatcher(/toinstore).forward(request, response);3) 修改入庫單public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception string dele=request.getparametervalues(
44、dele);int instid=0;int rs=0;for(int i=0;i0)request.setattribute(delepromt, 刪除成功!);elserequest.setattribute(delepromt, 刪除失?。?;this.getservletcontext().getrequestdispatcher(/toinstore).forward(request, response);2. 出庫管理本功能用于對(duì)貨物出庫的記錄管理。當(dāng)某部門需要某種貨物時(shí),就可以在此處進(jìn)行添加新紀(jì)錄,查詢或刪除已有記錄等操作。界面如圖5-9所示:圖5-9 出庫管理界面功能實(shí)現(xiàn)代碼與
45、入庫管理模塊相似。5.2.5 信息查詢模塊本模塊用于對(duì)數(shù)據(jù)進(jìn)行集中查詢處理。管理員可以根據(jù)需要查詢供應(yīng)商、貨物、倉庫、部門、入庫單、出庫單信息,并可以對(duì)其進(jìn)行修改、刪除操作。1. 供應(yīng)商信息查詢本功能主要實(shí)現(xiàn)對(duì)供應(yīng)商信息的查詢,用戶可以根據(jù)供應(yīng)商編號(hào)或供應(yīng)商名稱等對(duì)供應(yīng)商信息進(jìn)行查詢,界面如圖5-10所示:圖5-10 供應(yīng)商信息查詢界面主要代碼:public void dopost(httpservletrequest request, httpservletresponse response)throws servletexception, ioexception request.setch
46、aracterencoding(utf-8);response.setcontenttype(text/html;charset=utf-8);string querycon=request.getparameter(querycon);if(querycon=null)querycon=(string)request.getattribute(querycon);string standa=request.getparameter(standa);if(standa=null)standa=(string)request.getattribute(standa);request.setatt
47、ribute(querycon, querycon);request.setattribute(standa, standa);list supplist=new arraylist();isupplierdao supplierdao=new supplierdaoimpl();if(standa.equals(id)int suppid=integer.parseint(querycon);supplist=supplierdao.getsupplier(suppid);else if(standa.equals(name)supplist=supplierdao.getsupplier(
48、querycon);request.setattribute(supplist, supplist);this.getservletcontext().getrequestdispatcher(/querysupplier.jsp).forward(request, response);2. 貨物信息查詢本功能主要實(shí)現(xiàn)對(duì)貨物信息的查詢,用戶可以根據(jù)貨物編號(hào)或貨物名稱等對(duì)貨物信息進(jìn)行查詢,界面如圖5-11所示:圖5-11 貨物信息查詢界面實(shí)現(xiàn)代碼與供應(yīng)商信息查詢相似。3. 倉庫信息查詢本功能主要實(shí)現(xiàn)對(duì)倉庫信息的查詢,用戶可以根據(jù)倉庫編號(hào)或倉庫負(fù)責(zé)人等對(duì)倉庫信息進(jìn)行查詢,界面如圖5-12所示:圖5-12 倉庫信息查詢界面實(shí)現(xiàn)代碼與供應(yīng)商信息查詢相似。4. 部門信息查詢本功能主要實(shí)現(xiàn)對(duì)部門信息的查詢,用戶可以根據(jù)部門編號(hào)或部門名稱等對(duì)部門信息進(jìn)行查詢,界面如圖5-13所示:圖5-13 部門信息查詢界面實(shí)現(xiàn)代碼與供應(yīng)商信息查詢相似。5. 入庫單信息查詢本功能主要實(shí)現(xiàn)對(duì)入庫單信息的查詢,用戶可以根據(jù)入庫單編號(hào)或入庫貨物等對(duì)入庫單信息進(jìn)行查詢,界面如圖5-14所示:圖5-14 入庫單信息查詢界面實(shí)現(xiàn)代碼與供應(yīng)商信息查詢相似。6. 出庫單信息查詢本功能主要實(shí)現(xiàn)對(duì)出庫單信息的查詢,用戶可以根據(jù)出庫單編號(hào)或出庫貨物等對(duì)貨物信息進(jìn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 45082-2024物聯(lián)網(wǎng)泛終端操作系統(tǒng)總體技術(shù)要求
- 銀行合規(guī)管理制度實(shí)施監(jiān)督
- 酒店餐飲部食品安全管理制度
- 再論心肺復(fù)蘇培訓(xùn)課件
- 母嬰安全主題培訓(xùn)高危孕產(chǎn)婦管理課件
- 【大學(xué)課件】基于傅立葉變換的數(shù)字水印嵌入技術(shù)
- 陜西省渭南市臨渭區(qū)2023-2024學(xué)年七年級(jí)上學(xué)期期末考試數(shù)學(xué)試卷(含答案)
- 全國法制宣傳日主題-物理-自然科學(xué)-專業(yè)資料
- 【大學(xué)課件】物流設(shè)備與應(yīng)用技術(shù)
- 山南市2025屆高考語文押題試卷含解析
- 畫法幾何與機(jī)械制圖全套PPT完整教學(xué)課件
- 人工智能在教師工作中的應(yīng)用
- 信用修復(fù)申請(qǐng)文書(當(dāng)事人適用)
- VDI云桌面技術(shù)及方案
- 小型水閘委托管理協(xié)議書
- 7S檢查整改通知
- (完整)小學(xué)語文考試專用作文方格紙
- 2023版監(jiān)理規(guī)范(含表格)
- 專項(xiàng)資金支出明細(xì)表參考模板范本
- 醫(yī)學(xué)檢驗(yàn)大學(xué)生職業(yè)生涯規(guī)劃
- 工藝研發(fā)工程師崗位說明書
評(píng)論
0/150
提交評(píng)論