版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
企業(yè)進(jìn)銷存管理系統(tǒng)實(shí)訓(xùn)匯報(bào)小組組員:成波、鐘秀、馬姝婷、邢亞可、龍浩目錄1277一、系統(tǒng)分析 33438(一)需求概述 328682(二)系統(tǒng)概述 411791.系統(tǒng)功效分析 416682(三)可行性分析 541.人員角度可行性 522582.技術(shù)角度可行性 529271二、項(xiàng)目計(jì)劃書 628156(一)項(xiàng)目背景 62843(二)項(xiàng)目目標(biāo) 66537(三)項(xiàng)目實(shí)現(xiàn)準(zhǔn)備階段 6151201.業(yè)務(wù)邏輯編碼規(guī)則 6136832.業(yè)務(wù)編碼規(guī)則 1164183.系統(tǒng)E-R圖 1126318(四)項(xiàng)目實(shí)現(xiàn)開發(fā)階段 132551.人員分工 1383692.模塊分工 1319832(五)項(xiàng)目測(cè)試 13244421.單元測(cè)試 13278132.系統(tǒng)測(cè)試 135890三、系統(tǒng)實(shí)施 144093(一)開發(fā)環(huán)境準(zhǔn)備 1413256(二)創(chuàng)建數(shù)據(jù)庫(kù)連接 14305621.軟件安裝和帳戶設(shè)定 14199932.創(chuàng)建測(cè)試數(shù)據(jù)庫(kù)和表 156674四、系統(tǒng)總體設(shè)計(jì) 1526553(一)主窗體設(shè)計(jì) 16174741.創(chuàng)建主窗體 163997(二)創(chuàng)建導(dǎo)航面板 1713912(三)公共模塊設(shè)計(jì) 18257821.編寫Dao公共類 18315142.編寫Item類 1930692(四)基礎(chǔ)信息關(guān)鍵功效模塊具體設(shè)計(jì) 1952081.GysTianJiaPanel類 2072.GysXiuGaiPanel類 2122996(五)進(jìn)貨管理模塊設(shè)計(jì) 2446061.進(jìn)貨單 2511402.進(jìn)貨退貨 2679733.技術(shù)分析 26286794.進(jìn)貨單實(shí)現(xiàn)過程 2729941(六)庫(kù)存管理模塊設(shè)計(jì) 30123171.庫(kù)存業(yè)務(wù) 305(七)查詢統(tǒng)計(jì)模塊設(shè)計(jì) 33145391.用戶信息查詢 33180032.商品信息查詢 3387753.供給商信息查詢 3424824.銷售信息查詢 3417395.銷售退貨查詢 35178936.商品入庫(kù)查詢 3513338(八)系統(tǒng)設(shè)置關(guān)鍵功效模塊具體設(shè)計(jì) 3615069五、項(xiàng)目公布 3730363六、系統(tǒng)測(cè)試 3818111七、實(shí)訓(xùn)總結(jié) 39系統(tǒng)分析需求概述在現(xiàn)在食材配送過程中,食材管理至關(guān)關(guān)鍵。這里對(duì)食材管理包含進(jìn)、銷、存3個(gè)方面。能夠建立一個(gè)進(jìn)銷存管理系統(tǒng),對(duì)企業(yè)管理者、營(yíng)業(yè)員、庫(kù)存管理員等減輕其工作量,便于經(jīng)營(yíng)管理。功效需求:基礎(chǔ)信息管理功效模塊:關(guān)鍵負(fù)責(zé)管理供給商信息、商品信息和用戶信息。進(jìn)貨管理功效模塊:采購(gòu)計(jì)劃、采購(gòu)訂單、采購(gòu)入庫(kù)、采購(gòu)?fù)素?、?yīng)付款、采購(gòu)付款。銷售管理功效模塊:、報(bào)價(jià)單、銷售訂單、銷售出庫(kù)、銷售退貨、應(yīng)收款、銷售收款。查詢統(tǒng)計(jì)功效模塊:關(guān)鍵負(fù)責(zé)統(tǒng)計(jì)企業(yè)用戶查詢、商品查詢、供給商查詢、銷售查詢、銷售退貨查詢、商品出入庫(kù)情況和銷售排行查詢。庫(kù)存管理功效模塊:其它入庫(kù)、其它出庫(kù)、庫(kù)存警報(bào)、庫(kù)存報(bào)表、基礎(chǔ)資料設(shè)計(jì)。系統(tǒng)管理,關(guān)鍵負(fù)責(zé)管理用戶信息和用戶登錄,和早期建賬。食材配送企業(yè)需要處理大量庫(kù)存信息,還要時(shí)刻更新產(chǎn)品銷售信息,不停添加商品信息。面對(duì)不一樣種類信息,需要合理數(shù)據(jù)庫(kù)結(jié)構(gòu)來保留數(shù)據(jù)信息,需要有效程序結(jié)構(gòu)支持多種數(shù)據(jù)操作實(shí)施。它最關(guān)鍵特點(diǎn)是能夠?qū)崟r(shí)和正確控制店內(nèi)銷售情況。假如能夠能夠?qū)崟r(shí)掌握銷售步驟及銷售情況,則能夠有效地加速商品周轉(zhuǎn)率并提升服務(wù)質(zhì)量,而且能夠降低產(chǎn)品售價(jià)不符等所產(chǎn)生問題。用戶消費(fèi)要求是期望能立即采購(gòu)到所需新鮮食材,而且還要確保在食材配送過程中提供優(yōu)質(zhì)、方便服務(wù)。系統(tǒng)概述本系統(tǒng)開發(fā)適適用于多個(gè)行業(yè),能夠幫助企業(yè)快速有效管理進(jìn)貨、銷售、庫(kù)存、查詢統(tǒng)計(jì)等各項(xiàng)業(yè)務(wù),合理控制進(jìn)銷存各個(gè)步驟,提升資金利用率,實(shí)現(xiàn)管理高效率和實(shí)時(shí)性。本系統(tǒng)是依據(jù)大家在日常生活中實(shí)際需求而開發(fā),完全能夠?qū)崿F(xiàn)大家對(duì)商品基礎(chǔ)信息管理、進(jìn)貨管理、銷售管理、查詢統(tǒng)計(jì)、庫(kù)存管理、系統(tǒng)管理等功效,通常而言,經(jīng)過使用進(jìn)銷存管理系統(tǒng),能夠在以下幾方面提升企業(yè)管理水平:愈加好地了解供給商和用戶信息,加強(qiáng)對(duì)商品資料管理。降低采購(gòu)成本,立即了解采購(gòu)情況。正確了解銷售動(dòng)態(tài),立即調(diào)整營(yíng)銷策略。了解庫(kù)存情況,立即進(jìn)行價(jià)格管理和庫(kù)存數(shù)量維護(hù)。降低貯備資金占用,加速資金周轉(zhuǎn),提升資金利用率。提供商業(yè)數(shù)據(jù)智能分析,了解商業(yè)動(dòng)態(tài),為管理者提供決議依據(jù)。系統(tǒng)功效分析系統(tǒng)功效結(jié)構(gòu)圖以下:可行性分析人員角度可行性鑒于本組人員實(shí)力微弱,無(wú)系統(tǒng)開發(fā)技術(shù)基礎(chǔ),我們決定依據(jù)老師提供文件資料作為項(xiàng)目實(shí)施參考依據(jù),經(jīng)過項(xiàng)目實(shí)訓(xùn)來鍛煉我們動(dòng)手能力、實(shí)際操作能力。評(píng)價(jià)尺度:以能參考資料制作出完成進(jìn)銷存管理系統(tǒng)為標(biāo)準(zhǔn)。技術(shù)角度可行性本系統(tǒng)采取JavaSwing+SQLserver實(shí)現(xiàn)。使用集成開發(fā)工具M(jìn)yEclipse8.5進(jìn)行開發(fā)。以前人開發(fā)經(jīng)驗(yàn)來看,小組采取進(jìn)銷存管理系統(tǒng)應(yīng)用軟件開發(fā)手段是完全可行。項(xiàng)目計(jì)劃書項(xiàng)目背景經(jīng)過項(xiàng)目模擬實(shí)訓(xùn)來鍛煉同學(xué)們動(dòng)手能力,為未來畢業(yè)求職實(shí)習(xí)、考研做準(zhǔn)備。項(xiàng)目目標(biāo)界面簡(jiǎn)練友好,操作簡(jiǎn)單。系統(tǒng)功效包含基礎(chǔ)信息、進(jìn)貨管理、銷售管理、庫(kù)存管理、查詢統(tǒng)計(jì)、系統(tǒng)管理6個(gè)部分。文檔結(jié)構(gòu)清楚,包含(項(xiàng)目需求分析、項(xiàng)目開發(fā)過程、項(xiàng)目技術(shù)說明、項(xiàng)目功效實(shí)現(xiàn)、項(xiàng)目測(cè)試結(jié)果等)小組組員全部應(yīng)參與到整個(gè)項(xiàng)目標(biāo)實(shí)現(xiàn)過程中來,對(duì)每個(gè)步驟全部應(yīng)該有所了解,掌握整個(gè)項(xiàng)目開發(fā)每一個(gè)細(xì)節(jié),組員之間要多溝通,工作上要協(xié)調(diào)配合好。項(xiàng)目實(shí)現(xiàn)準(zhǔn)備階段業(yè)務(wù)邏輯編碼規(guī)則數(shù)據(jù)庫(kù)名稱統(tǒng)一為:db_JXC(進(jìn)銷存管理系統(tǒng)數(shù)據(jù)庫(kù))數(shù)據(jù)表統(tǒng)一tb開頭,如:tb_sell_main(銷售主表),tb_sell_detail(銷售明細(xì)表)。字段名(一律采取英文單詞,不知道在線翻譯一下),如:ID(流水號(hào)),Name(名稱),ProductInfo(商品信息)。tb_spinfo(商品信息表)。商品信息表關(guān)鍵是用來保留商品名稱、產(chǎn)地等基礎(chǔ)信息。表結(jié)構(gòu)以下圖所表示:tb_khinfo(用戶信息表)。用戶信息表關(guān)鍵保留用戶姓名、地址、聯(lián)絡(luò)方法等基礎(chǔ)信息等。表結(jié)構(gòu)以下圖所表示:tb_gysinfo(供給商信息表)。供給商信息表關(guān)鍵保留供給商名稱、地址等供給商基礎(chǔ)信息。表結(jié)構(gòu)以下圖所表示:tb_kucun(庫(kù)存管理表)。庫(kù)存管理表中關(guān)鍵保留著每一件商品單價(jià)、在倉(cāng)庫(kù)中存放數(shù)量、一共金額等信息。表結(jié)構(gòu)以下圖所表示:tb_ruku_main(入庫(kù)主表)和tb_ruku_detail(入庫(kù)明細(xì)表)。入庫(kù)表中關(guān)鍵保留是商品入庫(kù)以后基礎(chǔ)信息如商品名稱、產(chǎn)地、金額等信息。表結(jié)構(gòu)職下圖所表示:tb_rkth_main(入庫(kù)退貨主表)和tb_ruku_detail(入庫(kù)退貨明細(xì)表)。入庫(kù)退貨表中關(guān)鍵保留是入庫(kù)以后退貨信息,信息內(nèi)容基礎(chǔ)和入庫(kù)表相同。表結(jié)構(gòu)以下圖所表示:tb_sell_main(銷售主表)和tb_sell_detail(銷售明細(xì)表)。銷售表關(guān)鍵保留銷售情況信息,而且添加了銷售日期等信息。表結(jié)構(gòu)以下圖所表示: tb_xsth_main(銷售退貨表)和tb_xsth_detail(銷售退貨明細(xì)表)。銷售退貨表關(guān)鍵是用來保留在銷售出商品產(chǎn)生退貨情況基礎(chǔ)信息。表結(jié)構(gòu)以下圖所表示:業(yè)務(wù)編碼規(guī)則供給商編號(hào)(如gys1000,gys1001)用戶編號(hào)(如kh1000,kh1001,kh1002)商品編號(hào)(如sp2045,sp2046,sp2047)銷售單編號(hào)(XS+日期+編號(hào),如XS0509001)入庫(kù)編號(hào)(RK+日期+編號(hào),如RK0511003)入庫(kù)退貨編號(hào)(RT++日期+編號(hào),如RT051)系統(tǒng)E-R圖用戶實(shí)體E-R圖,包含用戶編號(hào)、用戶名稱、簡(jiǎn)稱、地址、電話、郵政編碼、聯(lián)絡(luò)人、聯(lián)絡(luò)人電話、傳真、開戶行和賬號(hào)等屬性。供給商E-R圖,包含編號(hào)、名稱、簡(jiǎn)稱、地址、電話、郵政編碼、傳真、聯(lián)絡(luò)人、聯(lián)絡(luò)電話、開戶行和E-mail等屬性。商品實(shí)體E-R圖,包含編號(hào)、商品名稱、商品簡(jiǎn)稱、產(chǎn)地、單位、規(guī)格、包裝、生產(chǎn)日期、保質(zhì)期、商品介紹和供給商等屬性。使用PowerDesigner建模進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)。具體請(qǐng)參考JAVA項(xiàng)目開發(fā)全程實(shí)錄1.4.3章。并用SQLserver創(chuàng)建數(shù)據(jù)庫(kù)。項(xiàng)目實(shí)現(xiàn)開發(fā)階段人員分工龍浩:美工設(shè)計(jì)、主窗體設(shè)計(jì)、公共模塊設(shè)計(jì)鐘秀:進(jìn)貨管理模塊設(shè)計(jì)、銷售管理模塊設(shè)計(jì)邢亞可:查詢統(tǒng)計(jì)模塊設(shè)計(jì)、庫(kù)存管理模塊設(shè)計(jì)、系統(tǒng)數(shù)據(jù)庫(kù)設(shè)馬姝婷:項(xiàng)目進(jìn)度安排、基礎(chǔ)信息模塊設(shè)計(jì)、系統(tǒng)功效設(shè)計(jì)成波:系統(tǒng)需求分析、系統(tǒng)項(xiàng)目說明書、系統(tǒng)測(cè)試模塊分工主窗體設(shè)計(jì)。代碼參考JAVA項(xiàng)目開發(fā)全程實(shí)錄1.5章。公共模塊設(shè)計(jì)。代碼參考JAVA項(xiàng)目開發(fā)全程實(shí)錄1.6章?;A(chǔ)信息模塊。代碼參考JAVA項(xiàng)目開發(fā)全程實(shí)錄1.7章。進(jìn)貨管理模塊。代碼參考JAVA項(xiàng)目開發(fā)全程實(shí)錄1.8章。銷售管理模塊。無(wú)參考代碼,自行開發(fā)。庫(kù)存管理模塊。代碼參考JAVA項(xiàng)目開發(fā)全程實(shí)錄1.10章。查詢統(tǒng)計(jì)模塊。代碼參考JAVA項(xiàng)目開發(fā)全程實(shí)錄1.9章。系統(tǒng)管理模塊。無(wú)參考代碼,自行開發(fā)。項(xiàng)目測(cè)試單元測(cè)試每個(gè)模塊開發(fā)時(shí)進(jìn)行單元測(cè)試。系統(tǒng)測(cè)試開發(fā)后進(jìn)行系統(tǒng)測(cè)試,并編寫系統(tǒng)測(cè)試匯報(bào)。系統(tǒng)實(shí)施開發(fā)環(huán)境準(zhǔn)備安裝SQLserver和myeclipse8.5。創(chuàng)建數(shù)據(jù)庫(kù)連接軟件安裝和帳戶設(shè)定1-1:安裝“MSSqlServer(SP2)”(內(nèi)置帳戶選擇sa,密碼設(shè)為123;假如沒有設(shè)置內(nèi)置帳戶sa話,請(qǐng)直接使用WinNT登錄“SQLServerManagementStudio”,選擇安全性→登錄名→sa→登錄屬性,然后設(shè)置密碼123,關(guān)閉“SQLServerManagementStudio”)1-2:安裝“MyEclipse5.5.1GA”1-3:下載連接驅(qū)動(dòng)包“sqljdbc.jar” 1-4:設(shè)置SQLServer服務(wù)器:“開始”→“程序”→“MicrosoftSQLServer”→“配置工具”→“SQLServerConfigurationManager”(確定“SQLServerManagementStudio”已關(guān)閉)“SQLServer服務(wù)”中停止服務(wù)“SQLServer(SQLEXPRESS)”(默認(rèn)是開啟狀態(tài))“SQLServer網(wǎng)絡(luò)配置”→“MSSQLSERVER協(xié)議”,開啟“TCP/IP”(默認(rèn)是禁用狀態(tài)),然后雙擊“TCP/IP”進(jìn)入屬性設(shè)置,在“IP地址”里,確定“IPAll”中“TCP端口”為1433“SQLServer服務(wù)”中開啟服務(wù)“SQLServer(MSSQLSERVER)”(默認(rèn)是停止?fàn)顟B(tài))關(guān)閉“SQLServerConfigurationManager”(此時(shí)能夠開啟“SQLServerManagementStudio”,并用帳戶sa、密碼123登錄,SQLServer服務(wù)器設(shè)置正確話應(yīng)該能登錄成功)創(chuàng)建測(cè)試數(shù)據(jù)庫(kù)和表2-1:開啟“SQLServerManagementStudio”,并用帳戶sa、密碼123登錄(SQLServer服務(wù)器設(shè)置正確話應(yīng)該能登錄成功),創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)JSPTest,內(nèi)建一個(gè)表regist2-2:創(chuàng)建測(cè)試Java工程和代碼 2-3:開啟“MyEclipse”→“File”→“New”→“Project”→“JavaProject”,命名為Test2-4:打開Test“Properties”→“JavaBuildPath”→“Libraries”→“AddExternalJARs”,選擇下載好連接驅(qū)動(dòng)包“sqljdbc.jar”,然后點(diǎn)擊“OK”確定 2-5:SQLServer中加載驅(qū)動(dòng)和URL語(yǔ)句為:protectedstaticStringdbClassName= "com.microsoft.sqlserver.jdbc.SQLServerDriver";protectedstaticStringdbUrl= "jdbc:sqlserver://localhost:1433;DatabaseName=db_JXC";protectedstaticStringdbUser="sa";protectedstaticStringdbPwd="123";系統(tǒng)總體設(shè)計(jì)
主窗體設(shè)計(jì)主窗體是系統(tǒng)歡迎界面。用程序主窗體包含系統(tǒng)菜單和工具欄,其中系統(tǒng)菜單是包含系統(tǒng)中全部功效菜單項(xiàng),工具欄是提供常見功效快捷訪問按鈕。(該系統(tǒng)采取了導(dǎo)航面板綜合了系統(tǒng)菜單和工具欄優(yōu)點(diǎn),導(dǎo)航面板界面更美觀,操作愈加快捷。)創(chuàng)建主窗體創(chuàng)建JXCFrame類,在類中創(chuàng)建和初始化窗體對(duì)象,為窗體添加桌面面板,而且設(shè)置背景圖片。Frame=newJFrame(“企業(yè)進(jìn)銷存管理系統(tǒng)”);//創(chuàng)建窗體對(duì)象desktopPanel=newJDeskPanel();//創(chuàng)建桌面面板JTabbedPanenavigationPanel=createNavigationPanel();//創(chuàng)建導(dǎo)航面板編寫updateBackImage()方法,初始化背景標(biāo)簽,背景標(biāo)簽使用HTML超文本語(yǔ)言設(shè)置了主窗體背景圖片(該圖片會(huì)伴隨主窗體大小自動(dòng)縮放)。在類靜態(tài)代碼中設(shè)置了系統(tǒng)外觀樣式。使用了UIManager類setLookAndFeel()方法設(shè)置程序界面使用當(dāng)?shù)赝庥^。編寫主窗體mian()入口方法,創(chuàng)建登錄窗體對(duì)象(登錄窗體會(huì)驗(yàn)證登錄信息,并顯示主窗體界面)創(chuàng)建導(dǎo)航面板在JXCFrame類中編寫createNavigationPanel()方法,創(chuàng)建JTabbePanel選項(xiàng)卡面板對(duì)象。(為了突出選項(xiàng)卡立體效果,設(shè)置該選項(xiàng)卡使用了BevelBorder邊框效果。)然后依次創(chuàng)建了基礎(chǔ)信息管理面板、庫(kù)存管理面板、銷售管理面板、查詢統(tǒng)計(jì)面板、進(jìn)貨管理面板和系統(tǒng)管理面板選項(xiàng)卡。JTabbedPanetabbedPane=newJTabbedPane();//創(chuàng)建JTabbePanel選項(xiàng)卡面板對(duì)象JPanelbaseManagePanel=newJPanel();//基礎(chǔ)信息管理面板JPaneldepotManagePanel=newJPanel();//庫(kù)存管理面板JPanelsellManagePanel=newJPanel();//銷售管理面板JPanelsearchStatisticPanel=newJPanel();//查詢統(tǒng)計(jì)面板JPanelstockManagePanel=newJPanel();//進(jìn)貨管理面板JPanelsysManagePanel=newJPanel();//管理系統(tǒng)面板編寫createFrameButton()方法,該方法負(fù)責(zé)創(chuàng)建Action對(duì)象,該對(duì)象是用來創(chuàng)建并顯示窗體對(duì)象,(圖標(biāo)、文本等屬性),本系統(tǒng)沒有使用系統(tǒng)菜單,所以該方法直接創(chuàng)建按鈕對(duì)象。Iconicon=newImageIcon(imgUrl);//創(chuàng)建按鈕圖標(biāo)Icon_roll=newImageIcon(imgUrl_roll);//創(chuàng)建鼠標(biāo)經(jīng)過按鈕圖標(biāo)Icon_down=newImageIcon(imgUrl_down);//創(chuàng)建按鈕按下圖標(biāo)Actionaction=newopenFrameAction(fName,cname,icon);//用openFrameAction類創(chuàng)建Actio對(duì)象編寫內(nèi)部類openFrameAction,它必需要繼承AbstraAction類實(shí)現(xiàn)Action接口。該類用于創(chuàng)建導(dǎo)航按鈕Ation對(duì)象,而且為每一個(gè)導(dǎo)航按鈕定義創(chuàng)建不一樣學(xué)體對(duì)象動(dòng)作監(jiān)聽器,當(dāng)這個(gè)監(jiān)聽器按鈕被按下時(shí),調(diào)用getFrame()方法獲取對(duì)應(yīng)窗體對(duì)象,并顯示在主窗體中。編寫getIFrame()方法。該方法就是用來創(chuàng)建指定名稱窗體對(duì)象,使用了java反射技術(shù),調(diào)用不一樣學(xué)體類默認(rèn)結(jié)構(gòu)方法創(chuàng)建窗體對(duì)象。公共模塊設(shè)計(jì)編寫Dao公共類Dao類關(guān)鍵負(fù)責(zé)相關(guān)數(shù)據(jù)庫(kù)操作,該類在靜態(tài)代碼段中驅(qū)動(dòng)并連接數(shù)據(jù)庫(kù),然后將全部數(shù)據(jù)庫(kù)訪問方法定義為靜態(tài)。Class.forName(dbClassName).newInstance();//加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)類conn=DriverManager.getConnection(dbUrl,dbUser,dbPwd);//獲取數(shù)據(jù)庫(kù)連接addGys()方法(添加供給商信息方法)該方法用于添加供給商基礎(chǔ)信息,它接收供給商實(shí)體類TbGysinfo作方法參數(shù),然后把實(shí)體對(duì)象中全部屬性存入供給商數(shù)據(jù)表中。getGysinfo()方法(讀取指定供給商信息)該方法將依據(jù)Item對(duì)象中封裝供給商ID編號(hào)和供給商名稱獲取供給商數(shù)據(jù),然后將該供給商數(shù)據(jù)封裝到實(shí)體對(duì)象中,然后返回該實(shí)體對(duì)象。updateGys()方法(修改供給商信息方法)該方法用于更新供給商基礎(chǔ)信息,它接收供給商實(shí)體類TbGysinfo作方法參數(shù),在方法中直接解析供給商實(shí)體對(duì)象中屬性,而且將這些屬性更新到數(shù)據(jù)表中。insertRukuInfo()方法該方法負(fù)責(zé)完成入庫(kù)單信息添加,(庫(kù)存表、入庫(kù)主表、入庫(kù)具體表等多個(gè)數(shù)據(jù)表操作)。為了確保數(shù)據(jù)完整性,該方法將入庫(kù)信息添加操作放在事務(wù)中完成,方法將接收入庫(kù)主表實(shí)體類TbRukuMain作為參數(shù),該實(shí)體類中包含了入庫(kù)具體表引用。getKucun()方法該方法用于獲取指定商品ID編號(hào)或名稱庫(kù)存信息,方法接收一個(gè)Item對(duì)象作參數(shù),該對(duì)象中封裝了商品ID編號(hào)和商品名稱信息,假如庫(kù)存表中存在該商品庫(kù)存統(tǒng)計(jì),就獲取該統(tǒng)計(jì)并將統(tǒng)計(jì)中數(shù)據(jù)封裝到庫(kù)存表實(shí)體對(duì)象中,然后將該實(shí)體對(duì)象作為方法返回值。編寫Item類Item類關(guān)鍵用于封裝和傳輸參數(shù)信息,這是經(jīng)典命令模式實(shí)現(xiàn)。在Dao類中常常使用該類作為方法參數(shù);在各個(gè)窗體界面中也常常使用該類作組件數(shù)據(jù),其toString()方法將返回name屬性值,所以顯示到各個(gè)組件上內(nèi)容是Item類對(duì)象所代表商品、供給商、或用戶等信息名稱。基礎(chǔ)信息關(guān)鍵功效模塊具體設(shè)計(jì)基礎(chǔ)信息管理模塊有三個(gè)功效:用戶信息管理、商品信息管理和供給商信息管理。其中用戶信息管理所使用數(shù)據(jù)表是tb_khinfo,其功效類包含KeHuTianJiaPanel類和KeHuXiuGaiPanel類;商品信息管理所使用數(shù)據(jù)表是tb_spinfo,其功效類包含ShangPinTianJiaPanel類和ShangPinXiuGaiPanel類;供給商信息管理所使用數(shù)據(jù)表是tb_gysinfo,其功效類包含GysTianJiaPanel類和GysXiuGaiPanel類。整個(gè)基礎(chǔ)信息管理模塊技術(shù)分析以供給商信息管理面板為例,下面簡(jiǎn)單介紹一下供給商信息管理添加、修改和刪除實(shí)現(xiàn)過程。GysTianJiaPanel類該類用于實(shí)現(xiàn)系統(tǒng)供給商添加功效,實(shí)現(xiàn)在界面將顯示多個(gè)用于輸入供給商信息文本框。界面中關(guān)鍵包含以下控件:控件類型控件名稱關(guān)鍵屬性用途JtextFieldquanChengF無(wú)供給商全稱JianChengF無(wú)簡(jiǎn)稱BianMaF無(wú)郵政編碼DiZhiF無(wú)地址DianHuaF無(wú)電話ChuangZhenF無(wú)傳真LianXiRenF無(wú)聯(lián)絡(luò)人lianXiRenDianHuaF無(wú)聯(lián)絡(luò)人電話YinHangF無(wú)銀行EmailF無(wú)郵箱JbuttonTjButton設(shè)置按鈕文本為“添加”設(shè)置動(dòng)作監(jiān)聽器為TjActionListener類實(shí)例對(duì)象添加ResetButton設(shè)置按鈕文本為“重填”設(shè)置動(dòng)作監(jiān)聽器為ResetActionListener類實(shí)例對(duì)象重填關(guān)鍵點(diǎn)介紹:ResetActionListener類。作為“重填”按鈕事件監(jiān)聽器。該類必需實(shí)現(xiàn)ActionListener接口,并在actionPerformed()方法中清除界面中全部文本框內(nèi)容。代碼以下:TjActionListener類。作為“添加”按鈕事件監(jiān)聽器。該類必需實(shí)現(xiàn)ActionListener接口,并在actionPerformed()方法中實(shí)現(xiàn)用戶輸入驗(yàn)證和供給商信息保留。代碼以下:GysXiuGaiPanel類該類關(guān)鍵實(shí)現(xiàn)供給商修改和刪除功效。在該界面中有很多文本框用于輸入供給商信息,這些文本框會(huì)依據(jù)所選供給商自動(dòng)填充內(nèi)容,點(diǎn)擊修改按鈕后回自動(dòng)寫入修改后供給商內(nèi)容??丶愋涂丶Q關(guān)鍵屬性用途JtextFieldquanChengF無(wú)供給商全稱JianChengF無(wú)簡(jiǎn)稱BianMaF無(wú)郵政編碼DiZhiF無(wú)地址DianHuaF無(wú)電話ChuangZhenF無(wú)傳真LianXiRenF無(wú)聯(lián)絡(luò)人lianXiRenDianHuaF無(wú)聯(lián)絡(luò)人電話YinHangF無(wú)銀行EmailF無(wú)郵箱JComboBoxGys設(shè)置初始大小為(230,21)調(diào)用initComboBox()方法初始化下拉列表設(shè)置組件選擇事件調(diào)用doGysSelectAction()方法選擇供給商JbuttontjjButton設(shè)置按鈕文本為“修改”設(shè)置動(dòng)作監(jiān)聽器為ModifyActionListener類實(shí)例對(duì)象修改resetButton設(shè)置按鈕文本為“刪除”設(shè)置動(dòng)作監(jiān)聽器為DeltActionListener類實(shí)例對(duì)象刪除關(guān)鍵點(diǎn)介紹:initComboBox()方法。用于初始化選擇供給商下拉列表框。該方法先獲取Dao類中g(shù)etGysInfos()方法,然后再將獲取到信息封裝成Item對(duì)象并添加到下拉列表框中(關(guān)鍵是獲取ID和供給商名稱)。然后再下拉列表框Item對(duì)象中用toString()方法顯示供給商名稱。代碼:doGysSelectAction()方法。在使用下拉列表框時(shí)選擇或更改供給商信息時(shí)候被調(diào)用。關(guān)鍵依據(jù)選擇供給商名稱,填充對(duì)應(yīng)供給商信息到文本框中。代碼以下:ModifyActionListener類。修改按鈕事件監(jiān)聽器。必需實(shí)現(xiàn)ActionListener接口,并在actionPerformed()方法中獲取文本框內(nèi)容,并能夠?qū)⑿薷暮蠊┙o商信息,經(jīng)過調(diào)用Dao類updateGys()方法,把修改后信息寫入到數(shù)據(jù)庫(kù)。代碼:DeltActionListener類。刪除按鈕事件監(jiān)聽器。必需實(shí)現(xiàn)ActionListener接口,并在actionPerformed()方法中獲取文本框內(nèi)容,經(jīng)過調(diào)用Dao類中delete()實(shí)現(xiàn)把供給商信息從后臺(tái)數(shù)據(jù)庫(kù)刪除。代碼:進(jìn)貨管理模塊設(shè)計(jì)企業(yè)進(jìn)銷存管理系統(tǒng)中進(jìn)貨模塊管理關(guān)鍵包含進(jìn)貨單和進(jìn)貨退貨兩個(gè)部分。因?yàn)樗鼈儗?shí)現(xiàn)方法相同,這里關(guān)鍵以進(jìn)貨單功效為主,介紹進(jìn)貨模塊對(duì)本系統(tǒng)意義和實(shí)現(xiàn)業(yè)務(wù)邏輯。進(jìn)貨單關(guān)鍵負(fù)責(zé)統(tǒng)計(jì)企業(yè)商品進(jìn)貨信息,能夠單擊“添加”按鈕,在商品表中添加進(jìn)貨商品信息。在“供給商”下拉列表框中選擇不一樣供給商,將會(huì)改變商品中能夠添加商品。進(jìn)貨單程序界面以下圖:進(jìn)貨退貨進(jìn)貨退貨功效關(guān)鍵負(fù)責(zé)統(tǒng)計(jì)進(jìn)貨管理中退貨信息,界面效果以下圖。在選擇了退貨商品以后,單價(jià)“退貨”,將把表格中商品退貨信息更新到數(shù)據(jù)庫(kù)中。技術(shù)分析進(jìn)貨管理模塊使用JDBC實(shí)現(xiàn)事務(wù)操作,因?yàn)檫M(jìn)貨和退貨業(yè)務(wù)邏輯包含到3個(gè)數(shù)據(jù)表,為確保數(shù)據(jù)完整性,將3個(gè)數(shù)據(jù)表操作放在事務(wù)中實(shí)現(xiàn),假如對(duì)任何一個(gè)數(shù)據(jù)表操作出現(xiàn)錯(cuò)誤或是不可實(shí)施操作,那么事務(wù)中全部操作全部將取消,并恢復(fù)到事務(wù)實(shí)施數(shù)據(jù)狀態(tài);不然3個(gè)數(shù)據(jù)表操作全部實(shí)施。下面是JDBC事務(wù)操作關(guān)鍵方法。setAutoCommit()方法該方法用于連接對(duì)象自動(dòng)提交模式。假如連接處對(duì)象自動(dòng)提交模式為true,則它全部SQL語(yǔ)句被實(shí)施作為單個(gè)事務(wù)提交;不然,該連接對(duì)象SQL語(yǔ)句將聚集到事務(wù)中,直到調(diào)用commit()方法或rollback()方法為止。默認(rèn)情況下,新連接自動(dòng)提交模式為true。語(yǔ)句:VoidsetAutoCommit(booleanautoCommit)autoCommit:該參數(shù)為true表示啟用連接對(duì)象自動(dòng)提交模式:false表示禁用鏈接對(duì)象自動(dòng)提交模式。getAutoCommit()判定此連接對(duì)象是否啟用了自動(dòng)提交模式。語(yǔ)法:BooleangetAutoCommit()commit()方法該方法將實(shí)施提交SQL語(yǔ)句實(shí)施數(shù)據(jù)庫(kù)操作,并釋放此連接對(duì)象目前持有全部數(shù)據(jù)庫(kù)鎖。此方法只在禁用自動(dòng)提交模式情況下使用。語(yǔ)法:Voidcommit()rollback()方法該方法將取消在事務(wù)中進(jìn)行全部更改,并釋放此連接對(duì)象目前持有全部數(shù)據(jù)庫(kù)鎖。此方法只在嚴(yán)禁自動(dòng)提交模式情況下使用。語(yǔ)法:Voidrollback()進(jìn)貨單實(shí)現(xiàn)過程創(chuàng)建jinhuodan類,用于實(shí)現(xiàn)本系統(tǒng)進(jìn)貨單功效界面和業(yè)務(wù)邏輯。界面中定義關(guān)鍵控件如表:進(jìn)貨單界面中關(guān)鍵控件編寫inittable()方法,該方法用于初始化食品表格表頭,列編輯器等。設(shè)置表格中第一個(gè)列編輯器使用下拉列表框樣式編輯器,經(jīng)過編輯器選擇商品名稱,其它商品信息將自動(dòng)填充,代碼以下:privatevoidinitTable(){String[]columnNames={"商品名稱","商品編號(hào)","產(chǎn)地","單位","規(guī)格","包裝","單價(jià)","數(shù)量","批號(hào)","同意文號(hào)"};((DefaultTableModel)table.getModel()).setColumnIdentifiers(columnNames);TableColumncolumn=table.getColumnModel().getColumn(0);finalDefaultCellEditoreditor=newDefaultCellEditor(sp);editor.setClickCountToStart(2);column.setCellEditor(editor);}編寫initSpBox()方法,該方法用于初始化表格中商品下拉表框。它首先調(diào)用Dao類query()方法獲取指定供給商所提供全部商品信息,然后將這些商品信息封裝成商品對(duì)象,并把這些對(duì)象添加到商品下拉框中。代碼如:privatevoidinitSpBox(){Listlist=newArrayList();ResultSetset=Dao.query("select*fromtb_spinfowheregysName='"+gys.getSelectedItem()+"'");sp.removeAllItems();sp.addItem(newTbSpinfo());for(inti=0;table!=null&&i<table.getRowCount();i++){TbSpinfotmpInfo=(TbSpinfo)table.getValueAt(i,0);if(tmpInfo!=null&&tmpInfo.getId()!=null)list.add(tmpInfo.getId());}try{while(set.next()){TbSpinfospinfo=newTbSpinfo();spinfo.setId(set.getString("id").trim());//假如表格中以存在一樣商品,商品下拉框中就不再包含該商品if(list.contains(spinfo.getId()))continue;spinfo.setSpname(set.getString("spname").trim());spinfo.setCd(set.getString("cd").trim());spinfo.setJc(set.getString("jc").trim());spinfo.setDw(set.getString("dw").trim());spinfo.setGg(set.getString("gg").trim());spinfo.setBz(set.getString("bz").trim());spinfo.setPh(set.getString("ph").trim());spinfo.setPzwh(set.getString("pzwh").trim());spinfo.setMemo(set.getString("memo").trim());spinfo.setGysname(set.getString("gysname").trim());sp.addItem(spinfo);}}catch(SQLExceptione){e.printStackTrace();}}庫(kù)存管理模塊設(shè)計(jì)庫(kù)存業(yè)務(wù)庫(kù)存管理是指在上產(chǎn)經(jīng)營(yíng)中為銷售和耗用而存放多種資產(chǎn)。企業(yè)存貨不妥全部會(huì)增加無(wú)須要費(fèi)用:存貨過多將造成物資積壓、存放費(fèi)用增加、流動(dòng)資金周轉(zhuǎn)不利,而且過量庫(kù)存會(huì)掩蓋管理不善問題。存貨不足則影響企業(yè)正常銷售活動(dòng)。庫(kù)存管理目標(biāo)是需求最好存貨數(shù)量,使庫(kù)存成本總額最小化。其關(guān)鍵功效以下:庫(kù)存盤點(diǎn)和價(jià)格調(diào)整等日常處理。價(jià)格調(diào)整功效關(guān)鍵用于調(diào)整庫(kù)存中指定商品單價(jià),當(dāng)用戶選擇了此商品,價(jià)格調(diào)整功效界面會(huì)顯示該商品在庫(kù)存中單價(jià)、數(shù)量、金額、單位、產(chǎn)地等信息,用戶能夠單擊“單價(jià)”后即可修改商品價(jià)格。以下圖所表示:庫(kù)存管理模塊中包含庫(kù)存盤點(diǎn)和價(jià)格調(diào)整兩個(gè)功效,庫(kù)存盤點(diǎn)功效是將庫(kù)存信息顯示在表格中,由操作員輸入盤點(diǎn)商品數(shù)量,然后自動(dòng)計(jì)算損益值,價(jià)格調(diào)整功效包含下拉列表框選擇事件監(jiān)聽和事件處理技術(shù),為預(yù)防用戶錯(cuò)誤輸入,程序界面常常需要將可枚舉輸入內(nèi)容封裝在下拉列表框中,限制用戶輸入。不過,想要知道下拉列表框改變,還需要為下拉列表框添加對(duì)應(yīng)事件監(jiān)聽器。下面就進(jìn)行簡(jiǎn)單介紹:addItemListener()方法能夠?yàn)橄吕斜砜蛱砑覫temListener監(jiān)聽器,當(dāng)更改下拉列表框選項(xiàng)時(shí),將產(chǎn)生對(duì)應(yīng)事件,這個(gè)事件會(huì)被添加ItemListener監(jiān)聽器捕捉。價(jià)格調(diào)整實(shí)現(xiàn)過程:創(chuàng)建JiaGeTiaoZheng類,用于實(shí)現(xiàn)本系統(tǒng)價(jià)格調(diào)整功效界面和業(yè)務(wù)邏輯。界面中關(guān)鍵控件以下:控件類型控件名稱關(guān)鍵屬性設(shè)置用途JTextFieldKuCunJinE無(wú)庫(kù)存金額KuCunShuLiang無(wú)庫(kù)存數(shù)量DanJia無(wú)庫(kù)存單價(jià)JlabelShangPinMingCheng無(wú)商品名稱GuiGe無(wú)規(guī)格ChanDi無(wú)產(chǎn)地DanWei無(wú)單位JbuttonOkButton無(wú)確定CloseButton無(wú)關(guān)閉編寫UpdateJinE()方法,用于更新庫(kù)存金額,該方法將“單價(jià)”文本框內(nèi)容轉(zhuǎn)換為Double類型,將“庫(kù)存數(shù)量”文本框內(nèi)容轉(zhuǎn)換為Integer類型,然后用它們乘積更新“庫(kù)存金額”文本框內(nèi)容,代碼以下:privatevoidupdateJinE(){//更新庫(kù)存金額方法Doubledj=Double.valueOf(danJia.getText());Integersl=Integer.valueOf(kuCunShuLiang.getText());kuCunJinE.setText((dj*sl)+"");}創(chuàng)建ItemActionListener類,它必需實(shí)現(xiàn)ItemListener接口和接口中itemStateChanged()方法,成為下拉列表框事件監(jiān)聽器。當(dāng)改變界面中選擇商品時(shí),對(duì)應(yīng)ItemEvent事件會(huì)通知監(jiān)聽器處理業(yè)務(wù)邏輯,也就是依據(jù)擺選擇商品名稱更新其它控件內(nèi)容。代碼以
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 會(huì)員權(quán)益24年版轉(zhuǎn)讓合同書版B版
- 2025年度戶外廣告牌設(shè)計(jì)與制作合同
- 2025年個(gè)人地暖車庫(kù)出租合同(2篇)
- 2025年度電子商務(wù)平臺(tái)合作經(jīng)營(yíng)合同書
- 2025年度酒店大堂花卉綠植租賃服務(wù)合同
- 2025年度健康醫(yī)療大數(shù)據(jù)合作合同協(xié)議書履約擔(dān)保函正規(guī)范本
- 2025技術(shù)轉(zhuǎn)讓(專利實(shí)施許可)合同示范文本
- 2025專業(yè)版軟件技術(shù)合同
- 二零二五年度水利工程承攬合同12篇
- 2025產(chǎn)品銷售代理協(xié)議合同
- 山東省濰坊市2024-2025學(xué)年高三上學(xué)期1月期末 英語(yǔ)試題
- 春節(jié)節(jié)后收心會(huì)
- 《榜樣9》觀后感心得體會(huì)四
- 《住院患者身體約束的護(hù)理》團(tuán)體標(biāo)準(zhǔn)解讀課件
- 2024年中考物理科技創(chuàng)新題型(教師版)
- 唐山市重點(diǎn)中學(xué)2024-2025學(xué)年全國(guó)高考大聯(lián)考信息卷:數(shù)學(xué)試題試卷(3)含解析
- 未成年上班知情協(xié)議書
- 2023-2024學(xué)年高中政治統(tǒng)編版選擇性必修二7-1 立足職場(chǎng)有法寶 課件(34張)
- 恩施州巴東縣核桃樹煤礦有限公司核桃樹煤礦礦產(chǎn)資源開發(fā)利用與生態(tài)復(fù)綠方案
- 部編版語(yǔ)文一年級(jí)下冊(cè)全冊(cè)大單元整體作業(yè)設(shè)計(jì)
- 中國(guó)心力衰竭診斷與治療指南解讀
評(píng)論
0/150
提交評(píng)論