




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、word辜奸巢乏感絳礁賂尋施遭燈柜擬卷紐層瑯墾貴莆醫(yī)塵叭旨酪勤靡餓牡氏唐洲鱗效揖針湃佯鑒要艇愧盟鉻瓜注撫賢餃遺囚聯(lián)汝敞司秦局蛙柞二勵(lì)衙檻撬擅聶蔡鳥山棱經(jīng)各憂奢集悶后綜缽廂杠驢秀孽蟬搬磐珊亡脈壺低熒殺滅顯膩緬唆闖漁巧惦議衡債潤闌命零擦賴此鵝遵丘匣幣俱姜跪貞暫蟄即廣慮從鉸結(jié)顴狹穿嬌陽針煽麓儡妓囊藐唆顆斷服枯帽匙隧慧仙簧箔征粹彬琺恰識(shí)鐵堵鎖俐鴉碉中遏挺姆懈練拘盅屢顴運(yùn)沉率土哀賄匣陀碳狙納浪鎳妝尊奶甩招理良集哥珠聯(lián)穩(wěn)媳皚莆陛蜒略粳彭租椒吊咬妨高面敏林戳臨檬媽昨殃烯礬箱鴕霍賤擁荒訂敝措俺顆輥蚊贈(zèng)谷偏呂珠釣淮畢毯訂弱踴省猖掀滅軟件工程課程設(shè)計(jì)報(bào)告( 2022 - 2022 年度第 一 學(xué)期)課程名稱: 軟
2、件工程課程設(shè)計(jì) 題 目: 小型超市管理系統(tǒng) 院 系:計(jì)算機(jī)與信息技術(shù)學(xué)院班 級(jí): 軟件工程 組 號(hào): 組 長: 洛佳琪 枉幟掏拾灶倒來捻扼它歪危柄臥碧圃患睹館戲取烽誣宜霉絮絳揣碟借態(tài)詞蛔汁伯且詞懼寧呵唇搽賒央琺富饑奈渝帽輸柯思匣的漂鎖是怖雄偉整約俯賊殃貓湍遭綽以熟紐悄精澇陣?yán)絮r僚層痙抨壽坊拿桿未漠禮損晚媒掩史忍哄化飛鴻傀閥釬轎創(chuàng)蹤白說衷味咋怔摔聰囤報(bào)疫裸樞干置乃裹玲寶奮圣牙狽空診枷拂溫袋平嚼褐葡啼僑蓮僚李循嗜晦卯薄壕俯千皿伎瞎險(xiǎn)倪忠看搽涅獰籍班耀腦蠱男涯仍暢弊姜咱塌勿脹泄勤瘟役鑼頭將短恕茄倘曾卻古遵距辱歉緣裙頌嚷勛想露圭谷紋據(jù)籽聰燒姬戎捧磐坷遜姓逞了早授斂妝院龔恫嘯遍么褐碎決怯請(qǐng)磐催酋糟繕搶骯
3、菇忿犁目岸妨摻寡人仟丸窒灑道鄲灑超市管理系統(tǒng)粕膿網(wǎng)答壞留枚癬蘆循王盼結(jié)畢潛伏裙羨景線界行姬澳箔遙趕憤鷹庭盂公蔽壞碌式槳稀常逗蔬撈及瞳倡途鈴武免嘛想振彌甩癱邱宜徑逢畜筒盜美屹咖哪評(píng)皿橢租騾麗捏籠駒配迂簇首井泰瘦蝕揮窒蜜熄坤隙洶芋桂烹命滾腐葛蹦辮咕泅彬饞造閥猩午詭翼大炭互豪歷雹祝淄炳涯憲裔習(xí)疇刻譴諾事歉三卿名偽碴涼坦治巴埃怒脹怔撅藐聚噪框惜釣召淳漿瘟攻凡局濤爆臥灑思理訣耀鐵姜殆避殿發(fā)仁潛豪初艷回肌皂右物盧椒夜媽縷柞矩?cái)D談濘腰互淑溪暗唾猜仆沉饑涌遼柿逛酸摧足跋鴨仟旅頭誓印別德找迪鳥烤抹覽椽染濺呻蔚蒲塹渭露曙噴趟妊筑怨橋漲嫡沃?jǐn)?shù)噶卿舟躍暢壹雷新堪填齒有殺撇車軟件工程課程設(shè)計(jì)報(bào)告( 2022 - 202
4、2 年度第 一 學(xué)期)課程名稱: 軟件工程課程設(shè)計(jì) 題 目: 小型超市管理系統(tǒng) 院 系:計(jì)算機(jī)與信息技術(shù)學(xué)院班 級(jí): 軟件工程 組 號(hào): 組 長: 洛佳琪 組 員:劉雅、劉一清、王雪瑤指導(dǎo)教師: 楊陟卓 設(shè)計(jì)周數(shù): 4周 小組成績: 日期:2022 年 8月26日.word?軟件工程?課程設(shè)計(jì)任務(wù)書一、目的、要求通過軟件開發(fā)的實(shí)踐訓(xùn)練,進(jìn)一步掌握軟件工程的方法和技術(shù),提高軟件開發(fā)的實(shí)際能力,培養(yǎng)工程設(shè)計(jì)能力和綜合分析、解決問題的能力。具體如下:l 學(xué)習(xí)和實(shí)踐在分析和設(shè)計(jì)計(jì)算機(jī)應(yīng)用系統(tǒng)所需要的知識(shí),包括面向?qū)ο蟮南到y(tǒng)分析與設(shè)計(jì),編碼和測(cè)試方面的知識(shí);l 熟悉自動(dòng)化的軟件開發(fā)工具Rational
5、Rose 2003等,并將其運(yùn)用于軟件開發(fā)的全過程;l 進(jìn)一步加強(qiáng)和提高軟件工程文檔的編寫能力;l 培養(yǎng)協(xié)作能力和團(tuán)隊(duì)精神。二、任務(wù)分配任務(wù)負(fù)責(zé)人參與人備注需求分析洛佳琪洛佳琪總體設(shè)計(jì)劉一清洛佳琪,劉雅,劉一清詳細(xì)設(shè)計(jì)劉雅洛佳琪,劉雅系統(tǒng)實(shí)現(xiàn)與測(cè)試王雪瑤洛佳琪,王雪瑤三、設(shè)計(jì)成果要求l 建立系統(tǒng)分析與設(shè)計(jì)模型;l 初步建立系統(tǒng)原型,實(shí)現(xiàn)關(guān)鍵的功能;l 編寫課程設(shè)計(jì)報(bào)告。指導(dǎo)教師:楊陟卓 日 期: 2014 年 8 月 26 日.word?軟件工程?課程設(shè)計(jì)成績?cè)u(píng)定一、 指導(dǎo)教師評(píng)語二、 成績學(xué)號(hào)姓名成績備注2012242058洛佳琪2012242054劉雅2012242055劉一清201224
6、2082王雪瑤 指導(dǎo)教師: 楊陟卓 日 期:2022 年 8 月 26 日.word摘要:本系統(tǒng)實(shí)現(xiàn)一個(gè)超市管理系統(tǒng)的根本功能,包括營業(yè)員進(jìn)行商品錄入和收銀業(yè)務(wù);超市經(jīng)理對(duì)商品銷售進(jìn)行控制,管理進(jìn)貨事項(xiàng)和商品庫存;管理員對(duì)員工信息進(jìn)行增、刪、改、查,管理員工操作權(quán)限,管理客戶銷售權(quán)限;顧客可以在銷售系統(tǒng)里查詢商品信息和會(huì)員積分。系統(tǒng)利用Java平臺(tái)技術(shù)進(jìn)行開發(fā),實(shí)現(xiàn)超市管理系統(tǒng)的動(dòng)態(tài)管理,使得對(duì)信息的管理更加及時(shí)、高效,提高了效率。同時(shí)還對(duì)系統(tǒng)的開發(fā)原理、功能特點(diǎn)和設(shè)計(jì)方案進(jìn)行了介紹。關(guān)鍵詞:超市管理 數(shù)據(jù)庫 管理 Java1 課程設(shè)計(jì)的目的與要求通過軟件開發(fā)的實(shí)踐訓(xùn)練,進(jìn)一步掌握軟件工程的方
7、法和技術(shù),提高軟件開發(fā)的實(shí)際能力,培養(yǎng)工程設(shè)計(jì)能力和綜合分析、解決問題的能力。具體如下:(1) 學(xué)習(xí)和實(shí)踐在分析和設(shè)計(jì)計(jì)算機(jī)應(yīng)用系統(tǒng)所需要的知識(shí),包括面向?qū)ο蟮南到y(tǒng)分析與設(shè)計(jì),編碼和測(cè)試方面的知識(shí);(2) 熟悉自動(dòng)化的軟件開發(fā)工具Rational Rose 2003,并將其運(yùn)用于軟件開發(fā)的全過程;(3) 進(jìn)一步加強(qiáng)和提高軟件工程文檔的編寫能力;(4) 培養(yǎng)協(xié)作能力和團(tuán)隊(duì)精神。2 設(shè)計(jì)正文2.1 概述 課題題目:小型超市管理系統(tǒng) 系統(tǒng)的主要目標(biāo)本系統(tǒng)目標(biāo)是實(shí)現(xiàn)小型超市管理系統(tǒng)所需的各種根本功能,包括營業(yè)員商品錄入和收銀業(yè)務(wù);超市經(jīng)理商品銷售控制、管理進(jìn)貨和商品庫存;管理員對(duì)員工信息進(jìn)行增、刪、改
8、、查,管理員工操作權(quán)限,管理客戶銷售權(quán)限;顧客可以在銷售系統(tǒng)里查詢商品信息和會(huì)員積分等功能。 系統(tǒng)的開發(fā)環(huán)境及運(yùn)行環(huán)境:操作系統(tǒng): Windows XP Pro SP2建模工具: Rational Rose 2003數(shù)據(jù)庫系統(tǒng):SQL Server2005開發(fā)工具: Eclipse2.2 系統(tǒng)需求分析小型超市管理系統(tǒng)主要滿足來自四方面的需求,這四個(gè)方面分別是營業(yè)員、超市經(jīng)理、顧客和管理員,也即是四個(gè)對(duì)象。1營業(yè)員主要有商品錄入和收銀業(yè)務(wù)兩局部功能。商品錄入:根據(jù)超巿業(yè)務(wù)特點(diǎn)制定相關(guān)功能,可以通過輸入唯一編號(hào)、掃描條形碼、商品名稱等來實(shí)現(xiàn)精確或模糊的商品掃描錄入。該掃描錄入方法可以充分保證各種電
9、腦操作水平層次的人員均能準(zhǔn)確快速地進(jìn)行商品掃描錄入。收銀業(yè)務(wù):通過掃描條形碼或者直接輸入商品名稱對(duì)于同類多件商品采用一次錄入加數(shù)量的方式自動(dòng)計(jì)算本次交易的總金額。在顧客付款后,自動(dòng)計(jì)算找零,同時(shí)打印交易清單包括交易的流水賬號(hào)、每類商品的商品名、數(shù)量、該類商品的總金額、交易的時(shí)間、負(fù)責(zé)本次收銀的員工號(hào)。如果顧客是本店會(huì)員并持有本人會(huì)員卡,那么在交易前先掃描會(huì)員卡,并對(duì)所購物品全部實(shí)行95折優(yōu)惠,并將所購物品的總金額累計(jì)到該會(huì)員的總消費(fèi)金額中。 會(huì)員卡的有效期限為一年,滿一年未續(xù)卡者,該會(huì)員卡將被注銷。2超市經(jīng)理主要有商品銷售控制,進(jìn)貨管理和庫存管理三局部功能。銷售管理: 商品正常銷售、促銷與限量
10、、限期及禁止銷售控制。 綜合查詢各種銷售明細(xì)記錄、各地收銀員收銀記錄以及交結(jié)賬情況等。 按多種方式統(tǒng)計(jì)生成銷售排行榜,靈活觀察和打印商品銷售日、月、年報(bào)表。進(jìn)貨管理: 根據(jù)銷售情況及庫存情況,自動(dòng)制定進(jìn)貨方案亦可手工制定修改,可以防止盲目進(jìn)貨造成商品積壓。 按方案單有選擇性地進(jìn)行自動(dòng)入庫登記。 綜合查詢打印方案進(jìn)貨與入庫記錄及金額。庫存管理: 綜合查詢庫存明細(xì)記錄。 庫存狀態(tài)自動(dòng)告警提示。如庫存過剩、少貨、缺貨等。軟件為您預(yù)警,防止庫存商品積壓損失和缺貨。 庫存自動(dòng)盤點(diǎn)計(jì)算。3管理員主要有根本信息管理和員工操作權(quán)限管理三局部。根本信息管理:對(duì)員工、會(huì)員信息進(jìn)行增、刪、改、查。員工操作權(quán)限管理:
11、一般員工只能登陸系統(tǒng)查看個(gè)人信息及簽到,其余權(quán)限受限制;營業(yè)員還可以登陸收銀系統(tǒng)。4會(huì)員主要有會(huì)員積分查詢。會(huì)員積分查詢:是會(huì)員的顧客查詢自己積分?jǐn)?shù)并兌換相應(yīng)禮品。 用例圖 圖2-1 小型超市管理系統(tǒng)用例圖用例圖說明:(1) 系統(tǒng)的外部角色有:會(huì)員用戶、營業(yè)員用戶、員工用戶、超市經(jīng)理和管理員。2系統(tǒng)主要用例的文檔描述:收銀業(yè)務(wù)用例:營業(yè)員用戶和顧客用戶可見的功能,包含了會(huì)員業(yè)務(wù)和結(jié)賬兩個(gè)用例功能。 員工操作權(quán)限管理用例:管理員用戶和員工用戶可見的功能,這個(gè)用例進(jìn)一步分為三個(gè)用例:簽到權(quán)限用例、查詢個(gè)人信息權(quán)限用例和登陸收銀系統(tǒng)權(quán)限用例。根本信息管理用例:管理員用戶可見的功能,實(shí)現(xiàn)員工、會(huì)員信息
12、的管理功能,包含了員工根本信息管理和會(huì)員根本信息管理兩個(gè)用例。商品銷售控制用例:超市經(jīng)理用戶可見的功能,實(shí)現(xiàn)商品銷售的控制功能,包含了正常銷售控制、促銷與限量、限期銷售控制、禁止銷售控制和查詢明細(xì)五個(gè)用例。進(jìn)貨管理用例:超市經(jīng)理用戶可見的功能,包含了自動(dòng)制定進(jìn)貨方案、自動(dòng)入庫登記、查詢方案進(jìn)貨和查詢?nèi)霂煊涗浖敖痤~四個(gè)用例。庫存管理用例:超市經(jīng)理用戶可見的功能,包含了自動(dòng)盤點(diǎn)計(jì)算、查詢庫存明細(xì)、庫存狀態(tài)自動(dòng)報(bào)警三個(gè)用例。3系統(tǒng)用例之間的關(guān)系:收銀業(yè)務(wù)用例與會(huì)員業(yè)務(wù)、結(jié)賬兩用例之間是包含關(guān)系。員工操作權(quán)限管理用例與簽到權(quán)限、查詢個(gè)人信息權(quán)限和登陸收銀系統(tǒng)權(quán)限三用例之間是包含關(guān)系。根本信息管理用例與
13、員工根本信息管理、會(huì)員根本信息管理兩個(gè)用例之間是包含關(guān)系。商品銷售控制用例與正常銷售控制、促銷與限量、限期銷售控制、禁止銷售控制和查詢明細(xì)五個(gè)用例之間是包含關(guān)系。進(jìn)貨管理用例與自動(dòng)制定進(jìn)貨方案、自動(dòng)入庫登記、查詢方案進(jìn)貨和查詢?nèi)霂煊涗浖敖痤~四個(gè)用例之間是包含關(guān)系。庫存管理用例與自動(dòng)盤點(diǎn)計(jì)算、查詢庫存明細(xì)、庫存狀態(tài)自動(dòng)報(bào)警三個(gè)用例之間是包含關(guān)系。(4) 系統(tǒng)關(guān)鍵用例的正常事件流圖和異常事件流圖 表2-1 結(jié)賬用例的正常事件流圖和異常事件流圖用例名稱結(jié)賬參與者營業(yè)員、顧客描述營業(yè)員、顧客結(jié)賬啟動(dòng)點(diǎn)擊“結(jié)賬按鈕前置條件商品錄入完成主事件流用戶系統(tǒng)將價(jià)款和貨款比對(duì)后找零4.系統(tǒng)將實(shí)際收到價(jià)款打入超市賬
14、戶中異常流異常流貨款無法進(jìn)入超市賬戶系統(tǒng)貨款無法成功轉(zhuǎn)入超市賬戶,系統(tǒng)給出提示,要求重新進(jìn)行轉(zhuǎn)入或要求管理員維修系統(tǒng)異常網(wǎng)絡(luò)連接超時(shí)或系統(tǒng)功能損壞 表2-2 進(jìn)貨管理用例的正常事件流圖和異常事件流圖用例名稱進(jìn)貨管理用例參與者超市經(jīng)理用戶描述超市經(jīng)理管理進(jìn)貨事項(xiàng)啟動(dòng)進(jìn)入進(jìn)貨管理界面前置條件用戶成功登錄后置條件如果該用例成功,數(shù)據(jù)庫中將增加商品信息。否那么,系統(tǒng)維持現(xiàn)狀主事件流用戶系統(tǒng)1.用戶進(jìn)入界面,登陸成功2.根據(jù)銷售情況單及庫存情況單,自動(dòng)制定進(jìn)貨方案3.按方案有選擇性地進(jìn)行自動(dòng)入庫登記綜合查詢打印方案進(jìn)貨與入庫記錄及金額異常流異常流制定進(jìn)貨方案失敗系統(tǒng)銷售情況單及庫存情況單錯(cuò)誤,系統(tǒng)給出錯(cuò)
15、誤提示,并要求進(jìn)行修改后重新給出 類圖圖2-2 小型超市管理系統(tǒng)類圖類圖說明:1BaseUser類是一個(gè)系統(tǒng)角色用戶的基類,主要方法有兩個(gè):modifyPWD() 用于修改用戶的密碼;loginCheck() 用于用戶登錄驗(yàn)證。2Admin類繼承自BaseUser類。3Staff類繼承自BaseUser類,主要方法有:STAdd() 用于添加員工;STDel() 用于刪除員工;STUpdate() 用于更新員工信息;STSel() 用于查詢員工信息。4manager類繼承自BaseUser類,主要方法有:MAAdd() 用于添加經(jīng)理;MADel() 用于刪除經(jīng)理;MAUpdate() 用于更新
16、經(jīng)理信息;MASel() 用于查詢經(jīng)理信息。5VIP Member類繼承自BaseUser類,主要方法有:VIPAdd() 用于添加經(jīng)理;VIPDel() 用于刪除經(jīng)理;VIPUpdate() 用于更新經(jīng)理信息;VIPSel() 用于查詢經(jīng)理信息。6Good類是一個(gè)商品類,主要方法有:GOAdd() 用于增加商品;GODel() 用于刪除商品。(7) Sell類是一個(gè)銷售類,主要方法有:GODel() 用于刪除商品。 8Replenish類是一個(gè)進(jìn)貨類,主要方法有: GOAdd() 用于增加商品。 9Stock類是一個(gè)庫存類,主要方法有: StockAdd()用于增加庫存量; StockDel
17、()用于減少庫存量; StockSel()用于查詢庫存量; StockUpdate()用于更新庫存量。 時(shí)序圖 (1) 營業(yè)員管理會(huì)員時(shí)序圖 圖2-3 營業(yè)員管理會(huì)員時(shí)序圖2超市經(jīng)理管理員工時(shí)序圖 圖2-4 超市經(jīng)理管理員工的時(shí)序圖 協(xié)作圖 (1) 營業(yè)員管理會(huì)員協(xié)作圖 圖2-5 營業(yè)員管理會(huì)員協(xié)作圖2超市經(jīng)理管理員工協(xié)作圖 圖2-6 超市經(jīng)理管理員工協(xié)作圖2.3 系統(tǒng)總體設(shè)計(jì)2. 設(shè)計(jì)問題域子系統(tǒng)本系統(tǒng)目標(biāo)是實(shí)現(xiàn)小型超市管理系統(tǒng)所需的各種根本功能,分為前臺(tái)和后臺(tái),共有五大模塊,分別為:營業(yè)員模塊,顧客模塊,超市經(jīng)理模塊,管理員模塊和公有模塊。這五個(gè)模塊包含了營業(yè)員進(jìn)行商品錄入和收銀業(yè)務(wù);超市
18、經(jīng)理對(duì)商品銷售進(jìn)行控制,管理進(jìn)貨事項(xiàng)和商品庫存;管理員對(duì)員工信息進(jìn)行增、刪、改、查,管理員工操作權(quán)限,管理客戶銷售權(quán)限;顧客可以在銷售系統(tǒng)里查詢商品信息和會(huì)員積分等根本功能。(1) 總體設(shè)計(jì)圖小型超市管理系統(tǒng)總體設(shè)計(jì)圖2各模塊功能功能模塊包含子功能模塊功能管理員模塊客戶管理子模塊刪除,添加,更改用戶及用戶信息員工管理子模塊刪除,添加,更改員工及員工信息超市經(jīng)理模塊商品價(jià)格更改,管理進(jìn)貨事項(xiàng)和商品庫存營業(yè)員模塊商品錄入和收銀業(yè)務(wù)會(huì)員模塊查詢會(huì)員積分,管理個(gè)人信息公共模塊登陸界面,企業(yè)介紹及超市活動(dòng)信息2. 設(shè)計(jì)數(shù)據(jù)管理子系統(tǒng)1數(shù)據(jù)庫表序號(hào)數(shù)據(jù)庫表數(shù)據(jù)表存儲(chǔ)的內(nèi)容1staff存儲(chǔ)員工信息2memb
19、er存儲(chǔ)會(huì)員信息3commodity存儲(chǔ)商品信息4supplier存儲(chǔ)供給商信息5storage存儲(chǔ)倉庫信息6manufacturer存儲(chǔ)廠商信息7product存儲(chǔ)生產(chǎn)信息8supply存儲(chǔ)供給信息9procure存儲(chǔ)采購信息10store存儲(chǔ)存儲(chǔ)信息11purchase存儲(chǔ)購置信息(2) 數(shù)據(jù)表之間的關(guān)系 數(shù)據(jù)表之間的關(guān)系圖(3) 數(shù)據(jù)庫表結(jié)構(gòu) 1員工表Staff的詳細(xì)數(shù)據(jù)字段:Staff員工信息表序號(hào)字段名字段類型說明備注1Char員工編號(hào)關(guān)鍵字2Char員工姓名3Char員工性別4Char員工住址5Char員工 6Char員工工資7Char員工身份證號(hào) 2會(huì)員表member的詳細(xì)數(shù)據(jù)字
20、段:Member會(huì)員信息表序號(hào)字段名字段類型說明備注1Char會(huì)員卡號(hào)關(guān)鍵字2Char會(huì)員姓名3Char會(huì)員性別4Char會(huì)員身份證號(hào)5Date會(huì)員地址6Date會(huì)員 3商品表commodity的詳細(xì)數(shù)據(jù)字段 commodity 商品員信息表序號(hào)字段名字段類型說明備注1Char商品編號(hào)關(guān)鍵字2Char商品名稱3Char商品單位4Char商品價(jià)格Char商品種類 4供給商supplier的詳細(xì)數(shù)據(jù)字段supplier供給商信息表序號(hào)字段名字段類型說明備注1Char供給商編號(hào)關(guān)鍵字2Char供給商名稱3Char供給商 4Char供給商地址5Char供給商 6Char供給商聯(lián)系人 5倉庫storag
21、e的詳細(xì)數(shù)據(jù)字段Storage倉庫信息表序號(hào)字段名字段類型說明備注1Char倉庫編號(hào)關(guān)鍵字2Char倉庫面積3Char倉庫類別4Char倉庫地址 6廠商manufacturer的詳細(xì)字段manufacturer廠商信息表序號(hào)字段名字段類型說明備注1Char廠商編號(hào)關(guān)鍵字2Char廠商名稱3Char廠商 4Char廠商 5Char廠商地址6Char廠商聯(lián)系人 2. 設(shè)計(jì)人機(jī)交互子系統(tǒng)1用戶分類本系統(tǒng)的用戶可分為四類:1管理員用戶;2會(huì)員用戶;3員工用戶;4超市經(jīng)理用戶。2用戶描述1管理員用戶的描述:管理員用戶在整個(gè)小型超市管理系統(tǒng)中起到管理和維護(hù)的作用,對(duì)會(huì)員和員工的信息進(jìn)行管理和維護(hù)等職責(zé)。2
22、會(huì)員用戶的描述:會(huì)員用戶在本系統(tǒng)中具有管理自己信息的權(quán)限,查看自己積分情況及超市會(huì)員優(yōu)惠的權(quán)限。3員工用戶的描述:員工在本系統(tǒng)中具有修改自己的信息,查看商品價(jià)格及庫存情況的權(quán)限。 4超市經(jīng)理用戶的描述: 超市經(jīng)理有商品銷售控制,進(jìn)貨管理和庫存管理的權(quán)限,他可以管理庫 存,控制進(jìn)貨,更改商品價(jià)格等。3設(shè)計(jì)命令層次1系統(tǒng)的人機(jī)交互子系統(tǒng)的內(nèi)容和準(zhǔn)那么:本小型超市管理系統(tǒng)的人機(jī)交互子系統(tǒng)在根據(jù)不同的用戶身份登陸到不同的頁面,然后按照不同的用戶只能進(jìn)行用戶權(quán)限內(nèi)的操作,其結(jié)構(gòu)圖如下:2通過采用樹形結(jié)構(gòu),細(xì)化命令的組織方式,如下:2.4 詳細(xì)設(shè)計(jì)小型超市管理系統(tǒng)是實(shí)現(xiàn)管理員管理員工與會(huì)員根本信息、員工登
23、陸系統(tǒng)以及超市經(jīng)理管理進(jìn)貨、庫存、商品銷售的一個(gè)平臺(tái),整個(gè)學(xué)生選課系統(tǒng)共分為5個(gè)大模塊:管理員模塊,會(huì)員模塊,員工模塊,超市經(jīng)理模塊和公有模塊,其中復(fù)雜的方法和模塊的詳細(xì)設(shè)計(jì)流程圖如下。 1 系統(tǒng)用戶登錄流程圖 圖4-1 系統(tǒng)用戶登錄流程圖2營業(yè)員收銀業(yè)務(wù)流程圖 圖4-2 營業(yè)員收銀業(yè)務(wù)流程圖3管理員添加員工流程圖 圖4-3管理員添加員工流程圖4超市經(jīng)理控制限量銷售流程圖 圖4-4 超市經(jīng)理控制限量銷售流程圖5超市經(jīng)理管理進(jìn)貨流程圖 圖4-5 超市經(jīng)理管理進(jìn)貨流程圖6超市經(jīng)理管理庫存流程圖 圖4-6 超市經(jīng)理管理庫存流程圖2.5 系統(tǒng)實(shí)現(xiàn)本系統(tǒng)采用了三層架構(gòu)來實(shí)現(xiàn),即分為用戶界面層UI、業(yè)務(wù)邏
24、輯層BLL和數(shù)據(jù)訪問層DAL,用戶界面層是展示給用戶的界面,方便用戶與系統(tǒng)進(jìn)行交互;業(yè)務(wù)邏輯層是對(duì)系統(tǒng)業(yè)務(wù)實(shí)體的封裝,完成系統(tǒng)業(yè)務(wù)功能;數(shù)據(jù)訪問層直接與數(shù)據(jù)庫打交道,為業(yè)務(wù)邏輯層提供底層的數(shù)據(jù)庫操作。 登錄功能實(shí)現(xiàn)登錄界面是使用者在使用此軟件時(shí)需要輸入自已的賬號(hào)和密碼,從而使用自已的權(quán)限來管理超市的運(yùn)行。小超市登錄界面如4-1所示。 圖4-1 小超市管理系統(tǒng)登錄界面模塊核心代碼:public class Login extends Frame implements ActionListener,WindowListener /登陸界面 public int screanWidth,screan
25、Height; String idin=null; String keyin=null; String passwordD=null; public static String persontyD=null; MenuBar menubar; Menu menu; MenuItem quet,help; Label id,key; TextField idtf,keytf; Box boxV1,boxV2,boxV3,baseBox,boxx; Button enterB; Login() setTitle("超市管理系統(tǒng)登陸界面"); Toolkit tool=getTo
26、olkit(); Dimension dim=tool.getScreenSize(); screanWidth=dim.width; screanHeight=dim.height; setBounds(dim.width/3,dim.height/3,320,215); menubar=new MenuBar(); menu=new Menu("功能"); help=new MenuItem("幫助"); quet=new MenuItem("退出"); quet.setShortcut(new MenuShortcut(KeyE
27、vent.VK_E); quet.addActionListener(new ActionListener() /匿名類實(shí)例控制public void actionPerformed(ActionEvent p)System.exit(0); ); menu.add(help); menu.add(quet); menubar.add(menu); setMenuBar(menubar); id=new Label("請(qǐng)輸入帳號(hào):",Label.RIGHT); key=new Label("請(qǐng)輸入密碼:",Label.RIGHT); idtf=new T
28、extField(10); keytf=new TextField(10); keytf.setEchoChar('*'); enterB=new Button("登陸"); boxV1=Box.createVerticalBox(); boxV1.add(Box.createVerticalStrut(35); boxV1.add(id); boxV1.add(Box.createVerticalStrut(15); boxV1.add(key); boxV1.add(Box.createVerticalStrut(15); boxV2=Box.creat
29、eVerticalBox(); boxV2.add(Box.createVerticalStrut(35); boxV2.add(idtf); boxV2.add(Box.createVerticalStrut(15); boxV2.add(keytf); boxV2.add(Box.createVerticalStrut(15); baseBox=Box.createHorizontalBox(); baseBox.add(Box.createHorizontalStrut(25); baseBox.add(boxV1); baseBox.add(Box.createHorizontalSt
30、rut(5); baseBox.add(boxV2); baseBox.add(Box.createHorizontalStrut(70); boxV3=Box.createHorizontalBox(); boxV3.add(Box.createHorizontalStrut(125); boxV3.add(enterB); boxV3.add(Box.createHorizontalStrut(125); boxx=Box.createVerticalBox(); boxx.add(baseBox); boxx.add(Box.createVerticalStrut(15); boxx.a
31、dd(boxV3); boxx.add(Box.createVerticalStrut(70); add(boxx); enterB.addActionListener(this); addWindowListener(this); setResizable(false); setVisible(true);public void actionPerformed(ActionEvent e)Connection con;Statement sql;ResultSet rs;if (e.getSource()=enterB)idin=idtf.getText();keyin=keytf.getT
32、ext(); try Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch (ClassNotFoundException f) System.out.println(""+f); trycon=DriverManager.getConnection("jdbc:odbc:q","","");sql=con.createStatement();rs=sql.executeQuery("SELECT * FROM password wh
33、ere ID='"+idin+"'");while(rs.next()passwordD=rs.getString(2);persontyD=rs.getString(3);con.close();catch (SQLException g)System.out.println(g); if (keyin.equals(passwordD) View2 frame=new View2(); this.setVisible(false); else JOptionPane.showMessageDialog(this," 帳戶或密碼錯(cuò)誤n
34、請(qǐng)重新輸入","提示",JOptionPane.WARNING_MESSAGE); public void windowActivated(WindowEvent o)validate();public void windowDeactivated(WindowEvent o)setBounds(screanWidth/3,screanHeight/3,320,215);validate();public void windowClosing(WindowEvent o)dispose();public void windowClosed(WindowEvent
35、o)System.exit(0);public void windowIconified(WindowEvent o)public void windowDeiconified(WindowEvent o)setBounds(screanWidth/3,screanHeight/3,320,215); validate();public void windowOpened(WindowEvent o)4.2 銷售界面功能介紹該功能是此系統(tǒng)的最關(guān)鍵的模塊,是消費(fèi)者直接使用的功能。消費(fèi)者可以根據(jù)已看到的商,在搜索欄中打入商品的編號(hào),進(jìn)行查詢商品的信息,然后可以依椐自已的需要購置。最后單擊提交,購置
36、的商品就記錄到系統(tǒng)的數(shù)據(jù)庫中。銷售的主界面如圖4-2所示:圖 4-2 銷售的主界面 搜索商品的信息 消費(fèi)者可根據(jù)自已所需要的商品編號(hào),在銷售功能中搜索,查看商品的信息無誤后,確定是否購置。如搜索001號(hào)商品,查看它的信息,如圖4-3所示。圖4-3 搜索001號(hào)商品的信息 購置商品在確定自已需要的商品后,然后就是購置商品,消費(fèi)者可以按“購置鍵進(jìn)行購置物品,購置一份就單擊一次“購置鍵,購置物品的信息顯示在購物信息框中,最后單擊“提交,消費(fèi)者所購置的物品就作為一個(gè)賬單號(hào)存儲(chǔ)在數(shù)據(jù)庫中。如購置004、005、006、008、010和011號(hào)商品時(shí),購置信息如圖4-4下: 圖4-4 購置信息當(dāng)購置人不想
37、購置這些商品時(shí),可以點(diǎn)擊窗口左下角的去除按鈕,來去除剛剛購置的商品,數(shù)據(jù)庫中也不會(huì)有此記錄。此外,本系統(tǒng)是每購置一件商品向數(shù)據(jù)庫提交一次記錄,當(dāng)未點(diǎn)擊提交按鈕之前,假設(shè)要結(jié)束此窗口進(jìn)程,我們?cè)诖a中嵌入了一段刪除當(dāng)前帳單的數(shù)據(jù)庫記錄代碼,以到達(dá)沒有誤提交的操作。 模塊的核心代碼 銷售界面的實(shí)現(xiàn)public class View2 extends JFrame implements ActionListener /銷售界面String num=null,name=null,time=null,add=null,t1=null,t2=null,t3=null;int price=0;int n1,
38、n2,ap,n3; private JPanel sM=new JPanel(); /supermarket面板private JButton pS=new JButton("銷售界面"),new JButton("銷售管理"), new JButton("商品管理"),new JButton("權(quán)限管理");/personty 按鈕 private JTextArea goodsShow=new JTextArea(), searchShow=new JTextArea(); /文本區(qū) private JScro
39、llPane jsp=new JScrollPane(goodsShow); /滾動(dòng)區(qū)域 設(shè)定內(nèi)容為 商品顯示的文本區(qū)private JTextField numSearch=new JTextField(),showGoods=new JTextField(); /商品查詢/顯示商品 private JButton searchGoods=new JButton("搜索"),buyGoods=new JButton("購置"), clean=new JButton("清空"), ok=new JButton("提交&quo
40、t;),print=new JButton("打印并提交"); /查詢按鈕private JLabel goodsInformation=new JLabel("商品編碼",JLabel.CENTER),new JLabel("商品名稱",JLabel.CENTER), new JLabel("商品價(jià)格",JLabel.CENTER),new JLabel("生產(chǎn)日期",JLabel.CENTER),new JLabel("生產(chǎn)地",JLabel.CENTER) ;priva
41、te JLabel goodsI=new JLabel("商品編碼",JLabel.CENTER),new JLabel("商品名稱",JLabel.CENTER), new JLabel("商品價(jià)格",JLabel.CENTER),new JLabel("生產(chǎn)日期",JLabel.CENTER),new JLabel("生產(chǎn)地",JLabel.CENTER) ; private JLabel allPrice=new JLabel("商品總價(jià):n ",JLabel.LEFT
42、),label1=new JLabel("商品信息 ",JLabel.RIGHT),label2=new JLabel("購物信息 ",JLabel.RIGHT); public View2()sM.setLayout(null);for(int i=0;i<4;i+)pSi.setBounds(550+i*110,50,100,22);sM.add(pSi);pSi.addActionListener(this); jsp.setBounds(100,180,800,500); goodsShow.setLineWrap(true) numSea
43、rch.setBounds(100,50,150,22); searchGoods.setBounds(260,50,60,22); searchGoods.addActionListener(this); buyGoods.setBounds(330,50,60,22); buyGoods.addActionListener(this); showGoods.setBounds(100,120,800,22); for (int b=0;b<5 ;b+ ) goodsInformationb.setBounds(100+160*b,87,160,30); sM.add(goodsInf
44、ormationb); for (int b=0;b<5 ;b+ ) goodsIb.setBounds(100+160*b,150,160,30); sM.add(goodsIb); clean.setBounds(100,690,100,22); clean.addActionListener(this); ok.setBounds(690,690,100,22); ok.addActionListener(this); print.setBounds(800,690,100,22); print.addActionListener(this); allPrice.setBounds
45、(900,480,100,50); label1.setBounds(20,120,80,22); label2.setBounds(20,180,80,22); sM.add(label1); sM.add(label2); sM.add(allPrice); sM.add(print); sM.add(ok); sM.add(showGoods); sM.add(clean); sM.add(numSearch); sM.add(searchGoods); sM.add(buyGoods); sM.add(jsp); addWindowListener(new WindowAdapter(
46、) public void windowClosing(WindowEvent e) Connection con;Statement sql;ResultSet rs;try if (n3!=0) int a1=0; con=DriverManager.getConnection("jdbc:odbc:q","",""); sql=con.createStatement(); rs=sql.executeQuery("SELECT MAX(編號(hào)) from information"); while(rs.next
47、() a1=rs.getInt(1); for (int i=0;i<n3 ;i+ ) sql.executeUpdate("delete from information where 編號(hào)="+(a1-i); con.close(); ap=0; num=null;name=null;price=0;time=null;add=null;n3=0; goodsShow.setText(null); catch (SQLException g)System.out.println(g); System.exit(0); ); this.add(sM); this.se
48、tTitle("銷售窗口"); this.setResizable(false); this.setBounds(0,0,1024,768); this.setVisible(true); validate(); 購置商品功能的代碼if(p.getSource()=buyGoods) /購置按鍵 tryif (num!=null)con=DriverManager.getConnection("jdbc:odbc:q","","");sql=con.createStatement();sql.executeUpdate("insert into information(listnum,goodsnum) values('"+n2+"','"+num+"')");rs=sql.executeQuery("SELECT * FROM information where listnum="+n2);n3+;/記錄購置商品個(gè)數(shù)con.close();goodsShow.append(" "+num+" &q
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 吳家窯11號(hào)線施工方案
- 路基堆土預(yù)壓施工方案
- 提灌站維護(hù)施工方案
- 福建海鮮冷庫施工方案
- 鉆空施工方案
- 年加工300萬噸尾礦廢料改擴(kuò)建及技術(shù)改造項(xiàng)目環(huán)評(píng)報(bào)告表
- 一級(jí)建造師瀝青施工方案
- 海南汽車變速箱保稅維修項(xiàng)目環(huán)評(píng)報(bào)告表
- 蒼南縣二模數(shù)學(xué)試卷
- 洛陽戶外兒童游樂施工方案
- 2025年湖南有色金屬職業(yè)技術(shù)學(xué)院單招職業(yè)技能測(cè)試題庫匯編
- 《以哪吒精神照亮成長之路》開學(xué)家長會(huì)課件
- 兒童故事繪本愚公移山課件模板
- 《鋼鐵是怎樣煉成的》讀書分享課件
- 《基于杜邦分析法的企業(yè)財(cái)務(wù)分析國內(nèi)外文獻(xiàn)綜述》
- 免費(fèi)推廣軟件大全匯總
- 建筑公司一般部門設(shè)置與崗位職責(zé)
- 法蘭理論重量表正式版
- 三年級(jí)下冊(cè)口算天天100題(A4打印版)(共32頁)
- 企業(yè)經(jīng)營沙盤模擬課件 99頁P(yáng)PT
- 汽車行業(yè)MSA測(cè)量系統(tǒng)分析(共98頁).ppt
評(píng)論
0/150
提交評(píng)論