畢業(yè)設計(論文)-超市進銷存銷售管理系統(tǒng)設計.doc_第1頁
畢業(yè)設計(論文)-超市進銷存銷售管理系統(tǒng)設計.doc_第2頁
畢業(yè)設計(論文)-超市進銷存銷售管理系統(tǒng)設計.doc_第3頁
畢業(yè)設計(論文)-超市進銷存銷售管理系統(tǒng)設計.doc_第4頁
畢業(yè)設計(論文)-超市進銷存銷售管理系統(tǒng)設計.doc_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

六安職業(yè)技術學院超市進銷存銷售管理系統(tǒng) realizes the supermarket with mvc to save the management system management system指導教師: 專業(yè)名稱: 軟件技術 研究方向: 超市進銷存管理系統(tǒng)工程 所在系部: 信息工程 二一年六月畢業(yè)論文(設計)開題報告姓名袁超班級軟件技術0701指導教師申子明學號072756題目用mvc實現(xiàn)超市進銷存銷售管理系統(tǒng)題目實際意義 近幾年來,中小型超市在我國經(jīng)濟發(fā)展中具有重要地位。隨著全球經(jīng)濟一體化的發(fā)展和電子商務的興起,中小型超市之間的競爭將越來越激烈。網(wǎng)絡及電子商務的迅猛發(fā)展突破了時間、空間的局限性,給中小型超市帶來了更多我的發(fā)展機會,同時也增加了超市之間的競爭強度。我國中小型超市的信息化水平還很低。隨著技術的發(fā)展,電腦操作及管理日趨簡化,電腦知識日趨普及,同時市場經(jīng)濟快速多變,競爭激烈,超市行業(yè)采用電腦管理進貨、庫存、銷售等諸多環(huán)節(jié)也已成為必然趨勢。預期達到目標本系統(tǒng)屬于小型的超市進銷存銷售管理系統(tǒng),可以有效地對中小型超市進行管理,本系統(tǒng)應達到以下目標:1、 管理員用戶登錄與管理;2、 商品信息管理模塊;3、 進貨信息管理模塊;4、 銷售信息管理模塊;5、 經(jīng)營分析模塊時間安排2010年3月1日30日,進行系統(tǒng)設計的一切準備工作;2010年4月1日30日,形成初稿;2010年5月1日5月31日,修改并定稿答辯。指導教師意見 指導教師簽名: 年 月 日畢業(yè)論文(設計)開題報告成績評定表指導教師意見 指導教師簽名: 年 月 日開題報告答辯評語及成績(百分制) 教研室主任簽名: 年 月 日系部意見系部簽字蓋章: 年 月 日畢業(yè)論文(設計)成績評定指導教師意見答辯專家組意見系專業(yè)教學委員會意見摘要超市進銷存管理系統(tǒng)用計算機管理超市庫存進出管理的一種計算機應用技術的創(chuàng)新,在計算機還未普及之前庫存管理都是由工作人員手工書寫的方式來操作的.現(xiàn)在一般的超市都采用計算機智能化管理,采用計算機作為工具的實用的計算機超市庫存管理程序來幫助管理員進行更有效的超市庫存管理工作。超市進銷存管理系統(tǒng)是典型的信息管理系統(tǒng)(mis),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應用程序功能完備,易使用等特點。經(jīng)過分析,我們使用 microsoft公司的 vs2005開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時間內(nèi)建立系統(tǒng)應用原型,然后,對初始原型系統(tǒng)進行需求迭代,不斷修正和改進,直到形成用戶滿意的可行系統(tǒng)。關鍵字:超市進銷存管理,mis, sql server2005數(shù)據(jù)庫,進銷存 ;管理系統(tǒng). abstractsupermarket jinxiaocun management system using computer management supermarket stocks a computer application and management of technology innovation in the computer before the inventory management are not yet universal manual written by the staff to operate. supermarkets are now generally used computer intelligent management, using the computer as a tool for computer supermarket inventory management procedures to help managers more effectively supermarket inventory management. supermarket jinxiaocun management system is a typical management information system (mis), including its main development background to the establishment and maintenance of the database and front-end application development 2. the request for the establishment of strong data consistency and integrity, good for the security of the data. for the latter request applications functions, such as easy to use features.after analysis, we use microsoft vs2005 development tool companies, the use of its various object-oriented development tools, especially data that can be easily accessible and concise window manipulation database intelligent objects, the first prototype application system in a short time and then, computation of the initial prototype system needs to constantly revise and improve until the formation of a viable system of user satisfaction.key words: supermarket jinxiaocun management mis, sql server2005 database, buying and selling system,management system。目錄引言1第一章 mvc技術的概述31.1 mvc設計思想31.2 mvc設計模式的實現(xiàn)41.3 mvc設計模式的擴展51.4 mvc的不足61.5 mvc的優(yōu)點6第二章 數(shù)據(jù)庫的概述與設計82.1 sql server 2005的概述82.2 數(shù)據(jù)庫的設計9第三章 系統(tǒng)功能結構和預覽113.1 超市進銷存銷售管理系統(tǒng)的功能模塊113.2 系統(tǒng)預覽113.3 業(yè)務流程圖12第四章 文件的組織結構134.1 公共類設計134.2 系統(tǒng)登錄模塊設計144.3 主窗體設計15第五章 功能模塊的實現(xiàn)175.1 基本檔案175.2商品進貨管理模塊設計175.3 商品銷售管理模塊設計185.4 庫存管理模塊實現(xiàn)過程20第六章 致謝22引言隨著全球信息化的飛速發(fā)展,中小型超市在我國經(jīng)濟發(fā)展中具有重要地位,我國的中小型超市數(shù)量多,地區(qū)分布廣泛,行業(yè)分布跨度大。全球經(jīng)濟一體化的發(fā)展和電子商務的興起,中小型超市之間的競爭將越來越激烈。網(wǎng)絡及電子商務的迅猛發(fā)展突破了時間、空間的局限性,給中小型超市帶來了更多的發(fā)展機會,同時也增大了超市行業(yè)之間的競爭強度。這就要求中小型超市必須改變經(jīng)營管理模式,提高運營效率。目前,我國中小型超市的信息化水平還很低。隨著技術的發(fā)展,電腦操作及管理日趨簡化,電腦知識日趨普及,同時市場經(jīng)濟快速多變,競爭激烈,超市行業(yè)采用電腦管理進貨、庫存、銷售等諸多環(huán)節(jié)也已馬為必然趨勢。加上競爭的日益激烈,如何降低成本已經(jīng)成為超市首要解決的問題。對普通的超市來講,涉及原材料的進貨渠道、銷售情況及庫存等方面的管理,管理的好與壞對超市的持久性至關重要。超市進銷存銷售管理系統(tǒng)適用于超市的采購、銷售和倉庫部門,對超市采購、銷售及倉庫的業(yè)務全過程進行有效控制和跟蹤。使用超市進銷存銷售管理系統(tǒng)可有效減少盲目采購、降低采購成本、合理控制庫存、減少資金占用并提高市場靈敏度,提升超市的市場競爭力。mvc模式是model-view-controller的縮寫,中文翻譯為模式-視圖-控制器。mvc應用程序總是由這三個部分組成。event(事件)導致controller改變model或view,或者同時改變兩者。只要controller改變了models的數(shù)據(jù)或者屬性,所有依賴的view都會自動更新。類似的,只要controller改變了view,view會從潛在的model中獲取數(shù)據(jù)來刷新自己。mvc模式最早是smalltalk語言研究團提出的,應用于用戶交互應用程序中。smalltalk語言和java語言有很多相似性,都是面向?qū)ο笳Z言,很自然的sun在petstore(寵物店)事例應用程序中就推薦mvc模式作為開發(fā)web應用的架構模式。mvc模式是一個復雜的架構模式,其實現(xiàn)也顯得非常復雜。但是,我們已經(jīng)終結出了很多可靠的設計模式,多種設計模式結合在一起,使mvc模式的實現(xiàn)變得相對簡單易行。views可以看作一棵樹,顯然可以用composite pattern來實現(xiàn)。views和models之間的關系可以用observer pattern體現(xiàn)。controller控制views的顯示,可以用strategy pattern實現(xiàn)。model通常是一個調(diào)停者,可采用mediator pattern來實現(xiàn)。本系統(tǒng)屬于小型的超市進銷存銷售管理,采用mvc設計模式,可以很便的設計出來,并且能夠有效地對中小型超市進行管理。超市進銷存銷售管理系統(tǒng)應達到以下目標:系統(tǒng)采用人機交互的方式,界面美觀友好,信息查詢靈活、方便,數(shù)據(jù)存儲安全可靠;能夠?qū)M貨信息進行有效的管理;對用戶輸入的數(shù)據(jù),進行嚴格的數(shù)據(jù)檢驗,盡可能地避免人為錯誤;能夠?qū)ι唐蜂N售信息進行有效的管理;能夠準確、詳細地管理商品庫存信息;系統(tǒng)應最大限度地實現(xiàn)易維護性和易操作性。第一章 mvc技術的概述mvc本來是存在于desktop程序中的,m是指數(shù)據(jù)模型,v是指用戶界面,c則是控制器。使用mvc的目的是將m和v的實現(xiàn)代碼分離,從而使同一個程序可以使用不同的表現(xiàn)形式。比如一批統(tǒng)計數(shù)據(jù)你可以分別用柱狀圖、餅圖來表示。c存在的目的則是確保m和v的同步,一旦m改變,v應該同步更新。mvc是一個設計模式,它強制性的使應用程序的輸入、處理和輸出分開。使用mvc應用程序被分成三個核心部件:模型、視圖、控制器。1.1 mvc設計思想 mvc英文即model-view-controller,即把一個應用的輸入、處理、輸出流程按照model、view、controller的方式進行分離,這樣一個應用被分成三個層模型層、視圖層、控制層。 視圖(view)代表用戶交互界面,隨著應用的復雜性和規(guī)模性,界面的處理也變得具有挑戰(zhàn)性。一個應用可能有很多不同的視圖,mvc設計模式對于視圖的處理僅限于視圖上數(shù)據(jù)的采集和處理,以及用戶的請求,而不包括在視圖上的業(yè)務流程的處理。業(yè)務流程的處理交予模型(model)處理。比如一個訂單的視圖只接受來自模型的數(shù)據(jù)并顯示給用戶,以及將用戶界面的輸入數(shù)據(jù)和請求傳遞給控制和模型。 模型(model):就是業(yè)務流程/狀態(tài)的處理以及業(yè)務規(guī)則的制定。業(yè)務流程的處理過程對其它層來說是黑箱操作,模型接受視圖請求的數(shù)據(jù),并返回最終的處理結果。業(yè)務模型的設計可以說是mvc最主要的核心。目前流行的ejb模型就是一個典型的應用例子,它從應用技術實現(xiàn)的角度對模型做了進一步的劃分,以便充分利用現(xiàn)有的組件,但它不能作為應用設計模型的框架。它僅僅告訴你按這種模型設計就可以利用某些技術組件,從而減少了技術上的困難。對一個開發(fā)者來說,就可以專注于業(yè)務模型的設計。mvc設計模式告訴我們,把應用的模型按一定的規(guī)則抽取出來,抽取的層次很重要,這也是判斷開發(fā)人員是否優(yōu)秀的設計依據(jù)。抽象與具體不能隔得太遠,也不能太近。mvc并沒有提供模型的設計方法,而只告訴你應該組織管理這些模型,以便于模型的重構和提高重用性。我們可以用對象編程來做比喻,mvc定義了一個頂級類,告訴它的子類你只能做這些,但沒法限制你能做這些。這點對編程的開發(fā)人員非常重要。 控制(controller)可以理解為從用戶接收請求, 將模型與視圖匹配在一起,共同完成用戶的請求。劃分控制層的作用也很明顯,它清楚地告訴你,它就是一個分發(fā)器,選擇什么樣的模型,選擇什么樣的視圖,可以完成什么樣的用戶請求??刂茖硬⒉蛔鋈魏蔚臄?shù)據(jù)處理。例如,用戶點擊一個連接,控制層接受請求后, 并不處理業(yè)務信息,它只把用戶的信息傳遞給模型,告訴模型做什么,選擇符合要求的視圖返回給用戶。因此,一個模型可能對應多個視圖,一個視圖可能對應多個模型。 模型、視圖與控制器的分離,使得一個模型可以具有多個顯示視圖。如果用戶通過某個視圖的控制器改變了模型的數(shù)據(jù),所有其它依賴于這些數(shù)據(jù)的視圖都應反映到這些變化。因此,無論何時發(fā)生了何種數(shù)據(jù)變化,控制器都會將變化通知所有的視圖,導致顯示的更新,這實際上是一種模型的變化-傳播機制。1.2 mvc設計模式的實現(xiàn) 1.2.1 視圖 視圖是模型的表示,它提供用戶交互界面。使用多個包含單顯示窗體的用戶部件,視圖的實現(xiàn)很簡單??梢韵耖_發(fā)windows界面一樣直接在集成開發(fā)環(huán)境下通過拖動控件來完成窗體開發(fā)本。本系統(tǒng)中介紹每一個窗體都采用復合視圖的形式即:一個窗體由多個子窗體(用戶部件)組成;子窗體可以是最簡單控件、服務器控件或多個控件嵌套構而成的自定義控件。視圖部分大致處理流程如下:首先,窗體模板定義了窗體的布局;窗體配置文件定義視圖標簽的具體內(nèi)容(用戶部件);然后,由窗體布局策略類初始化并加載窗體;每個用戶部件根據(jù)它自己的配置進行初始化,加載校驗器并設置參數(shù),以及事件的委托等;用戶提交后,通過了表示層的校驗,用戶部件把數(shù)據(jù)自動提交給業(yè)務實體即模型。 1.2.2 控制器 為了能夠控制和協(xié)調(diào)每個用戶跨越多個請求的處理,控制機制應該以集中的方式進行管理。因此,為了達到集中管理的目的引入了控制器。應用程序的控制器集中從客戶端接收請求(典型情況下是一個運行瀏覽器的用戶),決定執(zhí)行什么商業(yè)邏輯功能,然后將產(chǎn)生下一步用戶界面的責任委派給一個適當?shù)囊晥D組件。 用控制器提供一個控制和處理請求的集中入口點,它負責接收、截取并處理用戶請求;并將請求委托給分發(fā)者類,根據(jù)當前狀態(tài)和業(yè)務操作的結果決定向客戶呈現(xiàn)的視圖。1.2.3 模型 mvc系統(tǒng)中的模型從概念上可以分為兩類系統(tǒng)的內(nèi)部狀態(tài)和改變系統(tǒng)狀態(tài)的動作。模型是你所有的商業(yè)邏輯代碼片段所在。本系統(tǒng)為為模型提供了業(yè)務實體對象和業(yè)務處理對象:所有的業(yè)務處理對象都是從tb_thgoodsinfo類和tb_thgoodsmenthod派生的子類。業(yè)務處理對象封裝了具體的處理邏輯,調(diào)用業(yè)務邏輯模型,并且把響應提交到合適的視圖組件以產(chǎn)生響應。實現(xiàn)時把做什么(業(yè)務處理)和如何做(業(yè)務實體)分離。這樣可以實現(xiàn)業(yè)務邏輯的重用。1.3 mvc設計模式的擴展 通過在asp.net中的mvc模式編寫的,具有極其良好的可擴展性。它可以輕松實現(xiàn)以下功能: 實現(xiàn)一個模型的多個視圖; 采用多個控制器; 當模型改變時,所有視圖將自動刷新; 所有的控制器將相互獨立工作。1.4 mvc的不足 mvc的不足體現(xiàn)在以下幾個方面: (1)增加了系統(tǒng)結構和實現(xiàn)的復雜性。對于簡單的界面,嚴格遵循mvc,使模型、視圖與控制器分離,會增加結構的復雜性,并可能產(chǎn)生過多的更新操作,降低運行效率。 (2)視圖與控制器間的過于緊密的連接。視圖與控制器是相互分離,但確實聯(lián)系緊密的部件,視圖沒有控制器的存在,其應用是很有限的,反之亦然,這樣就妨礙了他們的獨立重用。 (3)視圖對模型數(shù)據(jù)的低效率訪問。依據(jù)模型操作接口的不同,視圖可能需要多次調(diào)用才能獲得足夠的顯示數(shù)據(jù)。對未變化數(shù)據(jù)的不必要的頻繁訪問,也將損害操作性能。 (4) 目前,一般高級的界面工具或構造器不支持mvc模式。改造這些工具以適應mvc需要和建立分離的部件的代價是很高的,從而造成使用mvc的困難。 用戶顯示(視圖)從動作(控制器)中分離出來,提高了代碼的重用性。將數(shù)據(jù)(模型)從對其操作的動作(控制器)分離出來可以讓你設計一個與后臺存儲數(shù)據(jù)無關的系統(tǒng)。就mvc結構的本質(zhì)而言,它是一種解決耦合系統(tǒng)問題的方法。 1.5 mvc的優(yōu)點 大部分用過程語言比如asp、php開發(fā)出來的web應用,初始的開發(fā)模板就是混合層的數(shù)據(jù)編程,但由于數(shù)據(jù)窗體的分離不是很直接,因而很難體現(xiàn)出業(yè)務模型的樣子或者模型的重用性。產(chǎn)品設計彈性力度很小,很難滿足用戶的變化性需求。mvc要求對應用分層,雖然要花費額外的工作,但產(chǎn)品的結構清晰,產(chǎn)品的應用通過模型可以得到更好地體現(xiàn)。 首先,最重要的是應該有多個視圖對應一個模型的能力b按mvc設計模式,一個訂單模型以及多個視圖即可解決問題。這樣減少了代碼的復制,即減少了代碼的維護量,一旦模型發(fā)生改變,也易于維護。 其次,由于模型返回的數(shù)據(jù)不帶任何顯示格式,因而這些模型也可直接應用于接口的使用。 再次,由于一個應用被分離為三層,因此有時改變其中的一層就能滿足應用的改變。一個應用的業(yè)務流程或者業(yè)務規(guī)則的改變只需改動mvc的模型層??刂茖拥母拍钜埠苡行В捎谒巡煌哪P秃筒煌囊晥D組合在一起完成不同的請求,因此,控制層可以說是包含了用戶請求權限的概念。最后,它還有利于軟件工程化管理。由于不同的層各司其職,每一層不同的應用具有某些相同的特征,有利于通過工程化、工具化產(chǎn)生管理程序代碼。 這就是mvc模式的好處,只需在以前的程序上稍作修改或增加新的類,即可輕松增加許多程序功能。以前開發(fā)的許多類可以重用,而程序結構根本不再需要改變,各類之間相互獨立,便于團體開發(fā),提高開發(fā)效率。下面討論如何實現(xiàn)一個模型、兩個視圖和一個控制器的程序。其中模型類及視圖類根本不需要改變,與前面的完全一樣,這就是面向?qū)ο缶幊痰暮锰?。對于控制器中的類,只需要增加另一個視圖,并與模型發(fā)生關聯(lián)即可。同樣也可以實現(xiàn)其它形式的mvc例如:一個模型、兩個視圖和兩個控制器。從上面可以看出,通過mvc模式實現(xiàn)的應用程序具有極其良好的可擴展性。 第二章 數(shù)據(jù)庫的概述與設計microsoft sql server是mircrosoft公司的一個關系數(shù)據(jù)庫管理系統(tǒng),它作為眾多數(shù)據(jù)庫軟件中的一種,已經(jīng)歷經(jīng)了十幾年的磨練。從1986年sql server 1.0首次發(fā)布,到2005年年底sql server 2005的出臺,已經(jīng)歷經(jīng)了8個版本。在這期間,微軟投入了大量的時間、資金和開發(fā)人員,使sql server不斷發(fā)展壯大,并在目前市場上,吞食著競爭對手(ibm、oracle、mysql數(shù)據(jù)庫等)的市場份額。2.1 sql server 2005的概述2.1.1 sql server 2005新特性 sql server 2005它在sql server 2000的基礎上擴展了數(shù)據(jù)可靠性、可用性、可編程性、易用管理性等方面的特性,使用戶在應用的數(shù)據(jù)和分析程序方面更加安全、穩(wěn)定和可靠。這此新特性使它成為大規(guī)模聯(lián)機事務處理(oltp)、數(shù)據(jù)庫和電子商務應用程序的優(yōu)秀數(shù)據(jù)庫平臺。sql server 2005是本系統(tǒng)數(shù)據(jù)庫的最佳的選擇。2.1.2 sql server 2005常用工具sql server 2005包含一組完整的圖形工具和命令提示實用工具,方便了用戶、程序員和管理員管理和配置sql server,設計和測試用于檢索數(shù)據(jù)的查詢、復制、導入、導出以及換數(shù)據(jù)等功能,主要有sql server management studio、sql server配置管理器、sql server profiler、數(shù)據(jù)庫引擎優(yōu)化顧問、命令提示實用工具等管理工具。2.1.3 sql server 2005的安裝sql server 2005安裝向?qū)Щ趍icrosoft windows安裝程序,在安裝中,windows安裝程序會在系統(tǒng)驅(qū)動器中創(chuàng)建臨時文件。在運行安裝程序以安裝或升級到sql server 2005之前,請驗證系統(tǒng)驅(qū)動中是否具有有1.6gb的可用磁盤空間來存儲這些文件。即使在將sql server組件安裝到非默認驅(qū)動器中時,該要求也適用。安裝時對硬件設備的要求:需要pertium 3兼容處理器或更速度的處理器,處理器最低速度為660mhz(建議:1ghz或更高),內(nèi)存最小512mb(建議:1gb或更大),最大操作系統(tǒng)的最大內(nèi)存。2.2 數(shù)據(jù)庫的設計數(shù)據(jù)的庫的設計制約著數(shù)據(jù)存儲,包括數(shù)據(jù)查詢速度,數(shù)據(jù)的存儲安全,對數(shù)據(jù)的快速操作,在開發(fā)超高進銷存銷售管理系統(tǒng)之前,分析了該系統(tǒng)的數(shù)據(jù)量,由于系統(tǒng)數(shù)據(jù)較多,因此選擇microsoft sql server 2005數(shù)據(jù)庫的存儲這些信息,數(shù)據(jù)庫命名為db_csmanage,在數(shù)據(jù)庫下創(chuàng)建了6個數(shù)據(jù)表用于存儲不同的信息,分另別是,tb_empinfo(員工信息表);tb_cmpany(供應商信息表);tb_jhgoodsinfo(進貨信息表);tb_kcgoods(庫存信息表);tb_sellgoods(商品銷售表);tb_thgoodsinfo(貨信息表)。超市的經(jīng)營離不開與供應商的合作,而每件商品對應不同的供應商,此時必須在數(shù)據(jù)庫建立一個供應商信息表;供應商信息表,表名為tb_cmpany,主要包括companyid(供應商編號)、companyname(供應商姓名)、companydiredtor(聯(lián)系人姓名)、compaypheone(聯(lián)系電話)、companyfax(傳真)、companyaddress(地址)、companyremark(備注)、redatetime(加入日期)這些字段。超市離不開有貨往來,日常貨物的購買是非常重要的,在數(shù)據(jù)庫中建立一個進貨信息表用于存儲進貨的詳細信息;進貨信息表,名為tb_jhgoodsinfo,主要包括goodsid(商品編號)、empid(操作員編號)、jhcompname(進貨公司名稱)、depotname(倉庫名稱)、goodsname(貨物名稱)、goodsnum(商品數(shù)量)、goodsunit(商品計量單位)、goodsjhpriec(進貨單價)、goodssellprice(銷售單價)、goodsneedprice(應付金額)、goodsnoprice(實付金額)、goodsremark(備注)、goodtime(進貨時間)、falg(刪除標記)這些字段。超過定期要對貨物進行補充,在進化之前要了解剩余貨物的數(shù)量,此時需要在數(shù)據(jù)庫中建立一個庫存信息表用于存儲剩余貨物的情況;庫存信息表,表名為tb_kcgoods;主要包括kcid(庫存編號)、goodsid(商品編號)、jhcompname(供應商名稱)、kcdeptname(倉庫名稱)、kcgoodsname(商品名稱)、kcnum(庫存數(shù)量)、kcalarmnum(警報數(shù)量)、kcunit(商品計量單位)、kctime(進貨時間)、kcgoodsprice(進貨價格)、kcsellprice(銷售價格)、kcemp(進貨人)、kcremark(備注)這些字段。為了時刻了解超市銷售利潤,需要對商品的銷售情況有所子解,此時需要在數(shù)據(jù)庫中建立一個商品銷售信息表,用于存儲所有商品的銷售信息;商品銷售表,表名為tb_sellgoods;主要包括sellid(銷售編號)、kcid(庫存編號)、goodsid(商品編號)、empid(員工編號)、goodsname(商品名稱)、sellgoodsnum(銷售數(shù)量)、sellgoodstime(銷售時間)、sellprice(銷售單價)、sellneedpay(應付金額)、sellhaspay(實付金額)、sellreamrk(備注)、sellfalg(刪除標記)這些字段。當顧客對某件商品不滿意時,可能要求退貨,同時超市經(jīng)營者也要詳細地了解退貨信息。此時,需要在數(shù)據(jù)庫中建立一個商品退貨信息表用于存儲所有退貨信息,退貨信息表,表名為tb_thgoodsinfo;主要包括thgoodsid(退貨商品編號)、kcid(庫存編號)、goodsid(商品編號)、sellid(銷售編號)、empid(操作員編號)、thgoodsname(商品名稱)、thgoodsnum(退貨數(shù)量)、thgoodstime(退貨日期)、thgoodsprice(退貨單價)、thneedpay(應付金額)、thhaspay(已退款金額)、thgoodsresult(退貨原因)這些字段。第三章 系統(tǒng)功能結構和預覽超市進銷存銷售管理系統(tǒng),根據(jù)實際需要設計出相應的功能模塊和設計流程圖。3.1 超市進銷存銷售管理系統(tǒng)的功能模塊 超市進銷存銷售管理系統(tǒng),主要功能包括基本檔案、進貨管理、銷售管理、庫存管理,功能結構圖1。進貨管理銷售管理庫存管理員工信息供應商信息商品進貨商品查詢商品銷售商品退貨庫存報警庫存查詢基本檔案超市進銷存銷售管理系統(tǒng)圖13.2 系統(tǒng)預覽超市進銷存銷售管理系統(tǒng)由多個窗體組成,主窗體運行結果如圖2,主要實現(xiàn)快速連接到系統(tǒng)的所有功能菜單。商品進貨管理模塊主要實現(xiàn)查找所有進貨信息、添加進貨信息和對進貨信息進行修改及刪除。商品銷售模塊運行結果,主要實現(xiàn)對銷售的商品進行管理。庫存管理模塊運行結果,主要實現(xiàn)管理庫存商品。圖23.3 業(yè)務流程圖是否系統(tǒng)登錄是否登錄系統(tǒng)主窗體基本檔案進貨管理銷售管理庫存管理 超市進銷存銷售管理系統(tǒng),首先進行登錄用戶的判斷,如果是,則進入超市進銷存銷售管理系統(tǒng);如果不是,則退出系統(tǒng);超市進銷存銷售管理系統(tǒng)的業(yè)務流程圖,如圖3。圖3第四章 文件的組織結構每個項目都會有相應的文件夾組織結構,項目中窗體數(shù)量多,可以將所有的窗體及資源放在不同同的文件中。如果窗體不是很多,可以將圖片、公共類或者程序資源文件資源文件放在相應的文件夾中,而窗體可以直接放在項目根目錄下,超市進銷存銷售管理系統(tǒng)是按照后者的文件夾組織結構安排,為了節(jié)省系統(tǒng)資源,實現(xiàn)代碼重要,可以本系統(tǒng)中設計一些公共類,本系統(tǒng)中創(chuàng)建了6個實體類和7個公共子類,分別為tb_thgoodsinfo類、getsqlconnection類 、tb_thgoodsmethod類、tb_empinfomethod類、frmjhgoodsinfo類、frmcompanyinfo類、frmfindgood類、frmkcgoodfind類、sellmenthod類等。4.1 公共類設計4.1.1 tb_thgoodsinfo類tb_thgoodsinfo類是商品退貨信息表實體類,該類的功能是傳遞商品退貨信息表有關的參數(shù)實體,該類主要使用了c#中的兩個常用屬性,分別是get和set;get用來讀取數(shù)據(jù)成員的值set用來設置數(shù)據(jù)成員的值。4.1.2 getsqlconnection類getsqlconnection類主要實現(xiàn)與數(shù)據(jù)庫的連接,在代碼或其他公共類中可以調(diào)用getsqlconnection類連接數(shù)據(jù)庫; 主要核心代碼如下:string g_str_connectionsting=”data source=.; database=db_csmangae;uid=sa;pwd”;sqlconnection g_con; /聲明連接對象public sqlconnection getcon() /建立公共方法g_con=new sqlconnection(g_str_connectionsting)g_con.open();/打開連接retun g_con/返回 該類主要通過聲明一個連接對象和一個公共方法,來連接數(shù)據(jù)庫。4.1.3 tb_thgoodsmethod類tb_thgoodsmethod類主要封裝操作退貨信息表的所有自定義方法,并分別執(zhí)行不同的操作,主要通過一些方法,來實現(xiàn)退貨功能。包括tb_thgoodsadd方法,該方法參數(shù)褓是實體類th_thgoodsinfo的一個對象,此方法功能是添加退貨信息;th_thgoodsupdate方法,該方法參數(shù)是實體類th_thgoodsinfo的一個對象,此方法功能是修改退貨信息;tb_thgoodsid方法,此方法是用于生成商品流水號;tb_thgoodsfind方法,該方法參數(shù)為object類的一個對象,此方法功能是將退貨表中所有信息顯示在datagriview控件中;fillprod方法,該方法有兩個object類型的參數(shù),此方法功能是將商品類別信息表中的商品添加到treeview控件中。4.2 系統(tǒng)登錄模塊設計4.2.1 系統(tǒng)登錄模塊概述系統(tǒng)登錄模塊主要用于對進入超市進銷存銷售管理系統(tǒng)的用戶進行安全性檢查,以防止非法用戶登錄系統(tǒng)。驗證用戶輸入的登錄名稱及登錄密碼,如果是系統(tǒng)操作員旵允許登錄.系統(tǒng)登錄模塊運稈結果如圖4所示圖44.2.2 系統(tǒng)登錄模塊技術分析開發(fā)系統(tǒng)登錄模塊過程中,主要通過sqldatareader對象的hasrows屬性判斷登錄名稱和登錄密碼是否正確,為了更好地理解hasrows屬性,語法格式如下:public override bool hasrowsget; /override關鍵字用來重寫hasrows屬性4.2.3 系統(tǒng)登錄模塊實現(xiàn)過程該系統(tǒng)的登錄窗體名為,frmlogin.cs,登錄模塊的實現(xiàn)過程,主要有兩個文本框(txtname(登錄名稱)、txtpwd(登錄密碼),兩個標簽(labeluser(用戶名)、labelpwd(密碼)和兩個命令按鈕(btnok(確定)、btnexif(取消));輸入用戶名和密碼,單擊確定。主要代碼在btnok_click事件中實現(xiàn)。4.3 主窗體設計4.3.1 主窗體概述系統(tǒng)的開發(fā)都離不開對主窗體的設計,通過主窗體可以快速地了解和使用系統(tǒng)支持的所有功能,使用戶能夠在最短的時間內(nèi)掌握軟件的使用。當用戶通過登錄模塊成功地登錄系統(tǒng)后,會進入系統(tǒng)的主窗體,在主窗體中,大體可分為三個部分,上端是系統(tǒng)的菜單欄,其中包括基本檔案,進貨管理、銷售管理和庫存管理,每個菜單下還有子菜單;中間部分是系統(tǒng)功能菜單的顯示區(qū)域;下端是系統(tǒng)狀態(tài)欄。4.3.2 主窗體窗體技術分析在主窗體中使用timer組件顯示當前系統(tǒng)時間,這個時間類似時鐘一樣不停地走動,timer組件的使用方法。timer組件提供以指定的時間間隔執(zhí)行方法的機制。它就像保持定期發(fā)出滴答聲的時鐘,并且會定期引發(fā)事件。tmier組件中常用的屬性有enabled屬性、interval屬性、tick事件、numericupdown控件的maximum屬性、minimum屬性、value屬性和api函數(shù)beep。4.3.3 主窗體實現(xiàn)過程新建一個windows窗體,命名為frmmain.cs,主要用于打開系統(tǒng)的其他功能窗體,該窗體用到的主要控件有5個menuitem控件和1個timer控件。第五章 功能模塊的實現(xiàn)超市進銷存銷售管理系統(tǒng)主要實現(xiàn)基本檔案、進貨管理、銷售管理和庫存管理5.1 基本檔案為了很好的掌握超市員工和貨物供應商的信息,此時,就需要對員工和供應商的信息進行存儲和管理,根據(jù)此需求,開發(fā)出基本檔案管理模塊,此模塊包含員工信息和供應商信息查詢窗體,分別用于瀏覽所有的員工信息和供應商信息進行查詢。5.2商品進貨管理模塊設計5.2.1 商品進貨管理模塊概述為了維持超市商品的正常運作,對商品要及時進行補充。此時,就需要對商品進貨信息進行管理。根據(jù)此需求,開發(fā)出商品進貨信息和對進貨信息進行查詢。商品的進貨信息可能會有很多,查找某條數(shù)據(jù)會很繁瑣,為了解決這個問題,在商品進貨管理模塊中必須有進貨信息查詢功能。5.2.2 商品進貨管理模塊技術分析開發(fā)商品進貨管理模塊過程中,使用datetimepicker控件用于選擇日期,datetimerpicker控件使用方便、樣式美觀,在開發(fā)中應用廣泛。使用datetimerpicker控件用戶可以從日期或時間列表中選擇一項。datetimerpicker控件的屬性有很,就用最廣泛的是value屬性,語法格式如下:bindableattribute(true)public datetime valueget;set;5.2.3 商品進貨管理模塊實現(xiàn)過程商品進貨管理模塊主要實現(xiàn)了商品進貨管理及進貨信息查詢,具體步驟如下(1)、新建一個窗體,命名為frmjhgoodsinfo.cs,主要用于實現(xiàn)對所有商品進貨信息進行管理;(2)、向窗體加載時,首先將顯示所有的商品信息,此處調(diào)用了公共類中的tb_jhgoodsinfofind方法,用于查詢所有住處,并綁定到datagridview控件上;(3)、當單擊datagridview控件中顯示的某條信息時,相應的各項信息會顯示在對應的文本框中;(4)、若想對信息進行修改,可選中要修改的信息,然后對細節(jié)進行修改,確認修改無誤后,單擊菜單欄中的“修改”按鈕,最后單擊“保存”按鈕確認修改;(5)新建一個windows窗體,命名為frmfindgood.cs,主要用于實現(xiàn)商品進貨信息查詢;(6)選擇查詢范圍,輸入查詢關鍵字后,單擊“查詢”按鈕進行查詢,查詢結果顯示在datagridview控件中。5.3 商品銷售管理模塊設計5.3.1 商品銷售管理模塊概述超市日常商品銷售維持資金的流通,對超市商品銷售管理是非常重要的,通過商品銷售管理可以清晰地子解所有商品的銷售情況。此時,需要開發(fā)出商品銷售管理模塊,此模塊包含商品銷售信息社會分配和商品退貨窗體,分別用于瀏所有的商品銷售信息和商品退化信息。當顧客對購買的商品不滿意時,在未使用商品的情況下,可以對商品進行退貨。同時,方便超市經(jīng)營者對這些商品退貨信息進行查詢,以便及時地對商品進行更新或反饋給商品廠家。5.3.2 商品銷售管理模塊技術分析開發(fā)商品銷售管理模塊過程中,對輸入的數(shù)據(jù)要進行嚴格的控制。此時用到較多的是textbox(文本框)控件的keypress事件和textchanged事件。keypress事件,在控件有焦點的情況下按下鍵時發(fā)生,在本系統(tǒng)中該事件格式如下:private void txtdesellprice_keypress(object sender,keypresseventargs e)textchanged事件,在text屬性值更必時發(fā)生,在本系統(tǒng)中該事件如下:private void txtsellgoodsnum_textchanged(object sender,keypresseventargs e)5.3.3 商品銷售管理模塊實現(xiàn)過程(1)、新建一個窗體,命名為frmsellgoods.cs,主要用于實現(xiàn)管理所有的商品銷售信息,主要有textbox控件、datetimepicker控件、button控件、toolstrip控件和datagridview控件。(2)當窗體加裁時,從數(shù)據(jù)庫中檢索出所有的商品住處綁定到datagridview控件上顯示出來,此處調(diào)用了公共類中的sellmethod.tb_sellgoodsfind方法,格式如下: privat void frmsellgoods_load(object sender, eventargs e) sellmenthod.tb_sellgoodsfind(datagridview1); (3)、單擊datagridview控件上的某條信息,可以查看其詳細信息,在控件的cellclick事件中調(diào)用了自定義fillcontrols方法實現(xiàn)此功能。(4)、當添加新數(shù)據(jù)或者對指定的信息進行修改時,確認輸入無誤后,單擊菜單欄中的“保存”按鈕,完成對新數(shù)據(jù)的添加或確認修改。(5)、新建一個窗體,命名為frmthgoodsinfo.cs,主要用于實現(xiàn)管理所有的商品退貨信息。(6)、為了保證輸入信息的準確性,必須對輸入的類型進行限

溫馨提示

  • 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

提交評論