




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、程學院課程設計設計題目:高級程序設計課程設計藥品銷售管理系統(tǒng)學生姓名信息工程系班級 計本071羅 松、韓 余、古智海、成先鏡、王博13 號、19號、12號、30號、06號指導教師張楠、呂海華職稱講師、講師起止日期:2009年12月14日起至2009年12月25日止沈陽工程學院課程設計任務課程設計題目:藥品銷售管理系統(tǒng)學生姓名信息工程系班 級 計本071羅 松、韓 余、古智海、王博 、成先鏡13 號、19號、12號、06號、30號指導教師張楠、呂海華講師、講師實訓F課程設計進行地點:任務下達時間: 2009 年12 月10 日起止日期:2009年12月14日起至2009年12月25日止教研室主任
2、 姜柳2009年12月09日批準、課程設計的原始資料及依據(jù)查閱有關資料,進一步理解面向對象程序設計的思想,并利用MFC匡架編寫一個簡單的windows系統(tǒng)。通過本設計可以加深理解使用面向對象程序設計思想開發(fā)一個系統(tǒng)的方法, 提高分析問題、解決問題和實際動手的能力。二、課程設計主要內容及要求設計內容:主要完成藥品銷售信息的管理將記錄保存在文件中將記錄保存在文件中MFC匡架來完成系統(tǒng)的設計;1) 實現(xiàn)銷售登記,并作相應紀錄,2) 實現(xiàn)銷售退貨,并作相應紀錄,3) 實現(xiàn)銷售查詢4) 實現(xiàn)銷售退貨查詢設計要求:(1) 要求利用面向對象的方法以及(2) 要求在設計的過程中建立清晰的類層次,并畫出類圖;(
3、3) 設計功能滿足要求、易于操作的友好界面;(4) 界面中需有菜單、工具欄、狀態(tài)欄;(5) 在系統(tǒng)的設計中,至少要用到面向對象的一種機制:繼承、多態(tài)等;在完成該題目時,小組人員進行詳細的任務分工,并要在報告中體現(xiàn)出來。三、對課程設計說明書撰寫內容、格式、字數(shù)的要求1. 課程設計說明書是體現(xiàn)和總結課程設計成果的載體,主要內容包括:設計題目、設計 目的、設備器材、設計原理及內容、設計步驟、遇到的問題及解決方法、設計總結、參考文 獻等。一般不應少于3000字。2. 在適當位置配合相應的實驗原理圖、功能模塊圖、算法流程圖等圖表進行說明。應做 到文理通順,內容正確完整,書寫工整,裝訂整齊。3. 設計總結
4、部分主要寫本人完成工作簡介以及自己的設計體會,包括通過課程設計學到 了什么,哪里遇到了困難,解決的辦法以及今后的目標。4. 課程設計說明書手寫或打印均可。手寫要用學校統(tǒng)一的課程設計用紙,用黑或藍黑墨 水工整書寫;打印時采用 A4紙,頁邊距均為20mm正文采用宋體小四號字,行間距 18磅。 文中大標題采用黑體小三號字,一級節(jié)標題采用黑體四號字,二級節(jié)標題采用黑體小四號字, 表題與圖題采用宋體五號字。5. 課程設計說明書裝訂順序為:封面、任務書、成績評定表、目錄、正文、參考文獻。四、設計完成后應提交成果的種類、數(shù)量、質量等方面的要求1. 完成“任務書”中指定的功能,運行結果正確。2. 課程設計說明
5、書。五、時間進度安排I順序I階段日期計劃完成內容I 備注 11第1天進行設計準備,閱讀資料,分析設計 任務書,明確設計要求、內容和步驟2第2 4天編寫相應的程序代碼3第5 7天程序調試4第8 9天整理程序,撰寫課程設計報告5第10天成績評定六、主要參考資料(文獻)12345 社社.2006王育堅.主編Visual C+面向對象編程教程(第二版).北京:清華大學出版 陳維興,林小茶.C+高級程序設計教程.北京:清華大學出版社譚浩強.C+程序設計教程.北京:中國科學技術出版社王燕.面向對象的理論與C+實踐.北京:清華大學出版社馬石安,魏文平.主編Visual C+程序設計與應用教程.北京:清華大學
6、出版 鄭莉 董淵 張瑞豐 編著.C+語言程序設計(第3版).北京:清華大學出版沈陽工程學院高級程序設計課程設計成績評定表系 (部):信息工程系班 級:計本071學生姓名: 羅松、 韓余、 古智海、成先鏡、王博指導教師評審意見評價內容具體要求權重評分加權分調研論證能獨立查閱文獻,收集資料;能制定課程設計方 案和日程安排。5432工作能力 態(tài)度工作態(tài)度認真,遵守紀律,出勤情況是否良好, 能夠獨立完成設計工作,5432工作量按期圓滿完成規(guī)定的設計任務,工作量飽滿, 難度適宜。5432說明書的 質量說明書立論正確,論述充分,結論嚴謹合理, 文字通順,技術用語準確,符號統(tǒng)一,編號齊 全,圖表完備,書寫工
7、整規(guī)范。5432指導教師評審成績(加權分合計乘 8)分加權分合計指導教師簽名:年 月日評閱教師評審意見評價內容具體要求權重評分加權分查閱 文獻查閱文獻有一定廣泛性;有綜合歸納資料的能 力5432工作量工作量飽滿,難度適中。5432說明書的 質量說明書立論正確,論述充分,結論嚴謹合理, 文字通順,技術用語準確,符號統(tǒng)一,編號齊 全,圖表完備,書寫工整規(guī)范。5432評閱教師評審成績 (加權分合計乘以4)分加權分合計評閱教師簽名:年 月日答辯小組評審意見評價內容具體要求權重評分加權分學生匯報匯報準備充分,思路清晰;語言表達準確,概 念清楚,論點正確,有層次,有重點,基本上 反映了所完成任務的全部內容
8、;時間符合要求。5432答辯思路清晰;回答問題有理論依據(jù),基本概念清 楚;主要問題回答準確,深入,有說服力。5432答辯小組評審成績 (加權分合計乘以8)分加權分合計答辯小組教師簽名:年 月日課程設計總評成績分摘要伴隨著社會的復雜化,傳統(tǒng)的“一支筆,一本帳簿”的藥品銷售管理方式也慢慢的無法 適應形勢的變化。隨著信息技術的發(fā)展,計算機已被廣泛的用于社會的各個領域,成為推動 社會發(fā)展的技術動力。而在計算機應用中,軟件的作用十分突出,軟件已經發(fā)展成為信息技 術的核心,主導著信息產品的開發(fā)和信息技術市場的進一步的開拓。軟件產業(yè)已成為社會信 息化進程中的一個戰(zhàn)略性產業(yè)。在軟件技術的應用中軟件的開發(fā)技術尤
9、其是應用型軟件產品 的開發(fā)技術成了重中之重。不斷開發(fā)適應用戶需求、市場需要的新型軟件產品。隨著社會的 發(fā)展,軟件也在不斷的更新?lián)Q代。隨著信息化的發(fā)展,為了讓管理更快捷、更準確,實現(xiàn)商 業(yè)活動的信息化管理已經成為各個領域的當務之急。我們知道 Visual C+ 有許多組件組成,包括編輯器、編譯器、調試器以及程序向導AppWizard、類向導ClassWizard等,這些組件通過一個名為 Developer Studio 的組件集成 為一個和諧的開發(fā)環(huán)境。利用這個開發(fā)環(huán)境,我們可以很容易的編寫一個應用于一個特定環(huán) 境的軟件系統(tǒng)。本次課設我們小組就是利用這個環(huán)境來開發(fā)我們的應用系統(tǒng)的。我們的這個系統(tǒng)
10、主要是 針對醫(yī)藥管理行業(yè)的,主要是用來對藥品銷售的商業(yè)活動進行管理的。應用本系統(tǒng),我們可 以使藥品銷售管理簡單而有效的運行,這就是計算機的優(yōu)點。下來我來簡單介紹一下我們所 開發(fā)出來的這個系統(tǒng),在我們的這個系統(tǒng)中,主要有四大方面的功能,即登錄系統(tǒng)功能、藥 品采購管理、藥品銷售管理、藥品退貨管理。另外,利用我們利用文件來對數(shù)據(jù)進行管理, 從而使系統(tǒng)更加完善,功能更加強大。關鍵詞: Visual C+ 、 AppWizard、 ClassWizard 、文件、 Developer Studio摘要第 1章 緒 論第 2 章 系統(tǒng)功能介紹系統(tǒng)功能總框圖模塊功能介紹第 3 章 文件介紹文件的總體介紹 保
11、存文件 打開文件 第 4 章 系統(tǒng)功能實現(xiàn)系統(tǒng)登錄模塊的實現(xiàn) 采購模塊的實現(xiàn) 銷售模塊的實現(xiàn) 退貨模塊的實現(xiàn) 結論致謝參考文獻附 錄 小組內部分工目錄錯誤 !未定義書簽。錯誤 !未定義書簽。錯誤 !未定義書簽。錯誤 !未定義書簽。 錯誤 !未定義書簽。錯誤 !未定義書簽。錯誤 !未定義書簽。 錯誤 !未定義書簽。 錯誤 !未定義書簽。錯誤 !未定義書簽。錯誤 !未定義書簽。 錯誤 !未定義書簽。 錯誤 !未定義書簽。 錯誤 !未定義書簽。錯誤 !未定義書簽。錯誤 !未定義書簽。錯誤 !未定義書簽。錯誤 !未定義書簽。第 1章 緒 論緊張而又繁忙的課程設計過去了,在這一個星期里,讓我嘗到了以前我
12、沒有體驗過的辛 苦與勞累。經過本次的課程設計,使我克服了很多在程序設計上的弊端和難點,也讓我體會 到了沖出重圍的幸福與喜悅。編寫了幾百行的代碼最后寫出一個程序覺得很有成就感。對 Visual C+ 的掌握提高到了 一個新的水平,能夠利用 Visual C+ 編程平臺編寫出一個實用的程序,很大程度提高了程序 綜合設計能力、分析能力和編程能力。掌握了很多新的編程技巧,積累了一些編程經驗。世紀之初,以微電子、計算機、軟件和通信技術為主導的信息技術革命給我們生存的社 會所帶來的變化令人目不暇接。Visual C+由許多組件組成,包括編輯器、編譯器、調試器、 以及程序向導 AppWizard、類向導Cl
13、assWizard等,這些組件通過一個名為 Developer Studio 的組件集成為一個和諧的開發(fā)環(huán)境。這給我們的編程提供了很大的方便。本組選擇藥品銷售 管理系統(tǒng),它可以應用在任何醫(yī)藥企業(yè)和和醫(yī)藥銷售有關的事業(yè)單位的藥品銷售管理中,為 藥品銷售的各項管理及信息保存提供了一個良好的操作環(huán)境, 為這些單位提供了很大的方便。隨著科學技術的不斷提高 , 計算機科學日漸成熟 ,其強大的功能已為人們深刻認識 , 它已 進入人類社會的各個領域并發(fā)揮著越來越重要的作用。 作為計算機應用的一部分 , 使用計算機 對藥品銷售進行管理 , 具有著手工管理所無法比擬的優(yōu)點 .例如: 檢索迅速、 查找方便、 可靠
14、性 高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高企業(yè)對藥品銷售管 理的效率 ,從而使企業(yè)取得更大的利潤。同時,這也是企業(yè)的科學化、正規(guī)化管理 ,與世界接 軌的重要條件。我們的課程設計結束了,但是它留給我的印象是不可磨滅的。無論我以后會不會涉及這 方面的研究,我想,我至少掌握了一種系統(tǒng)的研究方法,我們學習的目的就在于運用,我們 運用這種研究方法的時候會很多,我最后要感謝課程設計,它的確教會我很多。緊張的設計時光接近收尾,我們的設計成果也達到了設計的要求,我們每個人的心里頭 都畫上了圓滿的句號,在這次實踐中,讓我感受到了團隊的力量,無論我們遇到多么大的困 難,只要我們齊心協(xié)力,
15、沒有什么事情可以難倒我們,雖然我們很累,但是我們很滿足,因 為我們學到了知識,學到了人與人之間更好的配合與合作。第2章系統(tǒng)功能介紹系統(tǒng)功能總框圖在本次課程設計中,我們小組所做的課設題目是藥品銷售管理系統(tǒng),根據(jù)它的基本要求 和經過我們查閱相關資料。經過我們組組員之間的討論研究,最后我們終于制定出了本系統(tǒng) 的總體功能。因為我們所做的系統(tǒng)涉及到了銷售, 所以我們?yōu)樗O計了四個主要的功能模塊, 即系統(tǒng)登錄管理模塊、藥品采購管理模塊、藥品銷售管理模塊和藥品退貨管理模塊。另外還 有兩個文件管理模塊,即文件的保存和文件的打開。系統(tǒng)總體功能框圖如圖所示。圖藥品銷售管理總框圖模塊功能介紹在系統(tǒng)功能總框圖中我們已
16、經介紹了我們這個系統(tǒng)的總體功能模塊,即系統(tǒng)登錄管理模 塊、藥品采購模塊、藥品銷售管理模塊、藥品退貨管理模塊、打開文件和保存文件。下面我 來具體介紹一下它們。(1)系統(tǒng)登錄模塊:此模塊用來管理系統(tǒng)用戶的登錄,禁止非法的用戶進入系統(tǒng)。(2)藥品采購模塊:此模塊主要用來管理系統(tǒng)藥品采購中的一些操作。有藥品采購、顯 示采購的藥品列表、顯示采購的藥品的單個信息和修改已采購藥品的信息。(3)藥品銷售模塊:此模塊主要用來管理系統(tǒng)藥品銷售中的一些操作。有銷售記錄、修 改銷售的藥品信息、顯示銷售列表、顯示單個貨物的銷售具體信息、計算銷售總價和查詢系 統(tǒng)中當前的銷售情況。(4)藥品退貨模塊:此模塊主要用來管理系統(tǒng)
17、藥品退貨中的一些操作。有退貨記錄、退 貨列表、修改單個物品的退貨信息、查詢當前系統(tǒng)的退貨情況和計算歸還總價。第 3 章 文件介紹文件的總體介紹如圖所示為本系統(tǒng)的主操作界面。本系統(tǒng)采用文件的方式對系統(tǒng)中的信息進行管理。 有保存文件、打開文件和關閉文件等操作。系統(tǒng)中定義一條信息的屬性包括:藥名、種類、 數(shù)量、價格,其作為文件保存的基本單位。系統(tǒng)首先采用三組動態(tài)數(shù)組用來保存信息在內 存中的存儲,分別用來保存采購信息、銷售信息、退貨信息。當保存文件時,就將三組信 息分別寫到三個文件之中。當文件打開時,就將文件中的內容依次讀到三個動態(tài)數(shù)組之中。圖 系統(tǒng)總體界面保存文件( 1)當單擊保存文件按鈕時, 系統(tǒng)
18、就會出現(xiàn)如圖所示的保存文件的界面。 再此界面中, 我們可以看到文件被默認為 .ALC 格式的,這是我們在代碼中規(guī)定的。文件的保存類型為藥 品銷售文件(*ALC),這也是我們根據(jù)系統(tǒng)的功能設定的。當你選擇好保存文件的路徑, 然后點擊確定按鈕,文件就可以順利的被保存到你所選擇的位置。當然,在此過程中,你 最好能給文件起一個新的名稱,因為我們一次性必須保存的文件有三個,即藥品采購文件、 藥品銷售文件、藥品退貨文件。這樣就可以防止所要保存的文件被覆蓋的情況。圖 保存文件界面( 2)核心代碼文件寫入函數(shù) , 參數(shù)為要寫入bool SinInf:WriteFile(CString &m_OFile
19、,int a) / 的文件路徑CMedManageApp *app = (CMedManageApp *)AfxGetApp(); ofstream OFile(m_OFile);if()TRACE(文件創(chuàng)建失敗!");return false;int index=app->(a);for(int i=0;i<index;i+)OFile<<(LPTSTR)(LPCTSTR)app->(i,a)->YName<<endl <<(LPTSTR)(LPCTSTR)app->(i,a)->YKind<<en
20、dl <<(LPTSTR)(LPCTSTR)app->(i,a)->YNumber<<endl <<(LPTSTR)(LPCTSTR)app->(i,a)->YPrice<<endl;();return true;打開文件(1)當點擊從文件中打開按鈕時,將會出現(xiàn)如圖所示的打開文件的界面。此界面雖然 和保存文件界面相似,但其功能大不相同。當你單擊你所要打開的文件時,文件名就會顯 示在文件名一欄中。然后單擊打開按鈕,文件就可以順利的被保存在內存當中。當然,因 為本系統(tǒng)有三個文件,所以每次必須依次性打開三個文件。圖 打開文件界面
21、(2) 核心代碼文件讀入函數(shù) , 參數(shù)為要讀入的bool SinInf:ReadFile(CString &m_IFile,int a) / 文件路徑CMedManageApp *app = (CMedManageApp *)AfxGetApp(); ifstream IFile(m_IFile);if()TRACE(文件打開失敗!");return false;測試文件是否結束while(!() /eof()char *P1 = new char 20;char *P2 = new char 20;char *P3 = new char 20;char *P4 = new
22、char 20; IFile>>P1>>P2>>P3>>P4; CString TName(P1); CString TKind(P2); CString TNumber(P3);CString TPrice(P4); app->(TName,TKind,TNumber,TPrice,a); delete P1;delete P2;delete P3;delete P4;();return true;第 4 章 系統(tǒng)功能實現(xiàn)系統(tǒng)登錄模塊的實現(xiàn)(1)在此模塊中,主要實現(xiàn)對用戶登錄系統(tǒng)的管理。我們知道,對于每個軟件應用系統(tǒng) 都有其特定的使用人員
23、,尤其是用于商業(yè)活動的軟件系統(tǒng),就更應該注意它的保密功能,所 以我們必須為我們的系統(tǒng)設計一個用于保護本系統(tǒng)的密碼登錄功能。如圖所示為我們藥品銷 售管理系統(tǒng)的登錄界面。它所具有的功能是驗證用戶的登錄信息,即用戶名和對應的用戶密 碼,檢驗預進入本系統(tǒng)的用戶是不是合法用戶。另外,為了加強其安全性,我們設定如果用 戶輸入的非法信息超過三次,系統(tǒng)將強制退出,不允許其登錄到主界面。圖 登錄界面2)核心代碼int nCount=0;while(nCount<3)DengLu PassDlg;if()=IDOK)if(strcmp,"song")!=0)| (strcmp,"
24、;song")!=0)MessageBox(NULL," 用 戶 名 或 口 令 錯 誤 , 請 重 試 !"," 錯 誤 信 息 ",MB_ICONERROR);nCount+;elsebreak;elsereturn FALSE;if(nCount>=3)MessageBox(NULL,"口令輸入已經超過3次,請退出!","錯誤信息 ",MB_OK|MB_ICONERROR);return FALSE;采購模塊的實現(xiàn)( 1)藥品銷售系統(tǒng)的藥品采購功能模塊實現(xiàn)藥品采購的相關操作,如圖所示。為藥品采
25、購功能界面藥品采購功能模塊由藥名、類別、數(shù)量、價格組成,此對話框由四個靜態(tài)文本 框、四個可編輯文本框、一個按鈕構成,實現(xiàn)采購藥品的功能,主要輸入購買的藥品的藥名、 類別、數(shù)量及價格即可完成,對庫存已有的藥品不可再進行采購,否則,顯示“列表已有該 項”。圖 藥品采購功能模塊(2) 藥品 類別各控件的說明如下:輸入銷售的藥品名,為字符型變量,否則出錯 輸入銷售的藥品類別,為字符型變量 輸入銷售的藥品數(shù)量,為整形變量,其值不能小于0,大于采購的數(shù)量,否則庫存不夠,無法進行銷售價格:輸入銷售的藥品價格,為整形變量,其值大于 0OK按鈕:點擊,采購完畢,保存到庫存(3) 核心代碼:bool Check1
26、(CString &m_Numberx) / 檢查是否含不是數(shù)字的項for(int i = 0;i <();i+)if(!isdigit(m_Numberxi)return false;return true;void GouMai:OnOK()UpdateData(true);int Index1;bool Jin=true;CMedManageApp *app = (CMedManageApp *)AfxGetApp();if() / 若藥名欄為空MessageBoxC請輸入藥名!");else if() / 若類別欄為空 MessageBoxC請輸入藥品類別!&q
27、uot;);else if(!Check1(m_Number) / 若類別欄中含非法字符 MessageBox("數(shù)據(jù)欄含非法字符!");elseIndex1=app->(1);while(Index1-) if(app->(Index1,1)->YName=m_Name)MessageBox(咧表中已經有該項了 ”);Jin=false;if(Jin=true) app->(m_Name,m_Kind,m_Number,m_Price,1);CDialog:OnOK();銷售模塊的實現(xiàn)( 1)藥品銷售系統(tǒng)的藥品銷售功能模塊實現(xiàn)藥品銷售的相關操作,如
28、圖所示,為藥品銷 售界面。藥品銷售功能模塊由藥名、類別、數(shù)量、價格、總價、銷售列表和銷售詳情組成, 此對話框由七個靜態(tài)文本框、四個可編輯文本框、列表和四個按鈕構成,實現(xiàn)銷售藥品的功 能,分為售出、查詢、修改和退出等功能,在藥品采購完之后,從庫存里售出相應的藥品, 如果庫存里沒有相應藥品的采購,則無法進行銷售。圖 藥品銷售界面(2)各控件的說明如下: 藥品:輸入銷售的藥品名,為字符型變量,否則出錯; 類別:輸入銷售的藥品類別,為字符型變量。 數(shù)量:輸入銷售的藥品數(shù)量,為整形變量,其值不能小于0,大于采購的數(shù)量,否則庫0。存不夠,無法進行銷售。 價格:輸入銷售的藥品價格,為整形變量,其值大于 總價
29、:在輸入完藥品名、類別、數(shù)量和價格之后,進行相應的操作時,總價會顯示總的 價格。銷售列表:在輸入完藥品名、類別、數(shù)量和價格,售出藥品之后,銷售列表會顯示當前 銷售的藥品名。銷售詳單:在售出藥品之后,在銷售列表中有相應的藥品名,而對應的銷售記錄在銷售 詳單里,通過列表顯示出來。售出:在輸入完藥品名、類別、數(shù)量和價格,點擊售出,則將相應的藥品名和記錄添加 到銷售列表和銷售詳單里。查詢:點擊查詢按鈕之后,銷售列表里會顯示售出的藥品名進行查詢,通過銷售詳單顯 示相應的記錄。修改:只能對銷售的數(shù)量進行修改,修改成功后將記錄添加到銷售列表和銷售詳單里。 退出:點擊該按鈕即實現(xiàn)退出銷售界面。(3) 核心代碼
30、:bool Check(CString &m_Numberx) / 檢查是否含不是數(shù)字的項for(int i = 0;i <();i+)if(!isdigit(m_Numberxi)return false;return true;void Sell:OnTotal() UpdateData(true);int Index1,JiShu; bool Jin=true,Kcheck=true;CMedManageApp *app = (CMedManageApp *)AfxGetApp();if() / 若藥名欄為空MessageBoxC請輸入藥名!");else if(
31、) / 若類別欄為空MessageBox("請輸入藥品類別!");else if(!Check(m_Number) / 若類別欄中含非法字符若類別欄中含非法字符MessageBox("數(shù)據(jù)欄含非法字符!"); else if(!Check(m_Price) / MessageBox("價格欄含非法字符!"); elseIndex1=app->(1);if(Index1) while(Index1-) if(m_Name=app->(Index1,1)->YName) if(atoi(app->(Index1,1
32、)->YNumber)<atoi(m_Number)MessageBox(" 庫存不夠 ");Kcheck=false; elseJiShu=Index1;Kcheck=true;break;elseKcheck=false; if(Kcheck=true)Index1=app->(2);while(Index1-) if(app->(Index1,2)->YName=m_Name)MessageBox("列表中已經有該項了 ");Jin=false;if(Jin=true)app->(m_Name,m_Kind,m_
33、Number,m_Price,2); int temp=atoi(app->(JiShu,1)->YNumber)-atoi(m_Number); app->(JiShu,1)->("%d",temp); ("%d",atoi(m_Number)*atoi(m_Price); UpdateData(false);int Index;Index=app->(2);(); / 列表清空逐條加入信息for(int i=0;i<Index;i+)/(app->(i,2)->YName);elseMessageBox
34、(" 庫存中沒有此貨物 ");MessageBox(" 庫存中還沒有此貨物 ");void Sell:OnOK()CDialog:OnOK();void Sell:OnSelchangeList1()CMedManageApp *app = (CMedManageApp *)AfxGetApp(); int nIndex=();(); if(nIndex!=LB_ERR)(app->(nIndex,2)->YName); (app->(nIndex,2)->YKind); (app->(nIndex,2)->YNumb
35、er); (app->(nIndex,2)->YPrice);m_Name=app->(nIndex,2)->YName; m_Kind=app->(nIndex,2)->YKind;m_Number=app->(nIndex,2)->YNumber; m_Price=app->(nIndex,2)->YPrice;UpdateData(false);void Sell:OnButsearch()int Index;CMedManageApp *app = (CMedManageApp *)AfxGetApp(); Index=app
36、->(2);逐條加入信息(); / 列表清空 for(int i=0;i<Index;i+) / (app->(i,2)->YName); void Sell:OnButalter()UpdateData(true);CMedManageApp *app = (CMedManageApp *)AfxGetApp();int nIndex=();CString temp; if(nIndex!=LB_ERR) temp=app->(nIndex,2)->YNumber;app->(nIndex,2)->YName=m_Name;app->(n
37、Index,2)->YKind=m_Kind; app->(nIndex,2)->YNumber=m_Number;app->(nIndex,2)->YPrice=m_Price;int nIndex1=app->(1); while(nIndex1-) if(app->(nIndex1,1)->YName=m_Name) int temp1=atoi(app->(nIndex1,1)->YNumber)+atoi(temp)-atoi(m_Number); app->(nIndex1,1)->("%d"
38、;,temp1); ("%d",atoi(m_Number)*atoi(m_Price);break;UpdateData(false);退貨模塊的實現(xiàn)(1) 藥品銷售系統(tǒng)的退貨功能模塊,如圖所示,為退貨功能界面。本功能界面由六個靜 態(tài)文本框、五個可編輯文本框、一個不可編輯文本框和四個按鈕組成的。在退貨這一功能模 塊中,主要有三大功能來實現(xiàn)藥品的退貨功能,分別是歸還、查詢和修改功能。其中在第一 次歸還藥品的前提是,作為藥品管理者,只有銷售給客戶才能實現(xiàn)退貨,否則是不能進行退 貨的。圖 退貨功能模塊界面(2) 各控件的說明如下藥名:輸入要退貨的藥品名稱,字符型變量m_Name
39、m_Kind。類別:輸入藥品的類別,如處方類和非處方類等,字符型變量 數(shù)量:輸入要退貨藥品的數(shù)量,整形變量m_Numbe,r 其值為小于銷售的數(shù)量并且不小于0。(如果在本欄輸入其他類型變量會出現(xiàn)報錯警告)價格:輸入藥品的退貨價格,整形變量 m_Price ,其值為大于等于 0。(如果在本欄輸入 其他類型變量會出現(xiàn)報錯警告)應歸還金額:系統(tǒng)自動計算出應退還給客戶藥品的金額,整形變量m_Money退貨列表:顯示退貨信息,包括藥名、類別、數(shù)量和價格。 歸還:再輸入退貨信息后,點擊該按鈕,實現(xiàn)退貨功能。 查詢:點擊該按鈕,可以查詢已退貨的相關信息。修改:在第一次歸還按鈕后,想繼續(xù)退貨相同的藥品,點擊該
40、按鈕,此時只能改變藥品 的數(shù)量和價格但不能修改其他信息。退出:點擊該按鈕將推出退貨這一功能模塊。(3) 核心代碼bool Check2(CString &m_Numberx) / 檢查是否含不是數(shù)字的項for(int i = 0;i <();i+) if(!isdigit(m_Numberxi) return false;return true;void Back:OnButhuan()UpdateData(true);int Index1,JiShu;bool Jin=true,Kcheck=true;CMedManageApp *app = (CMedManageApp *)
41、AfxGetApp(); if() / 若藥名欄為空MessageBoxC請輸入藥名!");else if() / 若類別欄為空MessageBox("請輸入藥品類別!");else if(!Check2(m_Number) / 若類別欄中含非法字符MessageBox("數(shù)據(jù)欄含非法字符!");若類別欄中含非法字符else if(!Check2(m_Price) /MessageBox("價格欄含非法字符!");elseIndex1=app->(2); if(Index1) while(Index1-) if(m_N
42、ame=app->(Index1,2)->YName)if(atoi(app->(Index1,2)->YNumber)<atoi(m_Number)MessageBox(" 退貨過多 ");Kcheck=false; elseJiShu=Index1;Kcheck=true;break;elseKcheck=false; if(Kcheck=true)Index1=app->(3);while(Index1-) if(app->(Index1,3)->YName=m_Name)MessageBox("列表中已經有該
43、項了 ");Jin=false;if(Jin=true) app->(m_Name,m_Kind,m_Number,m_Price,3);修改退int temp=atoi(app->(JiShu,2)->YNumber)-atoi(m_Number);/貨列表修改庫存app->(JiShu,2)->("%d",temp);Index1=app->(1);while(Index1-) if(app->(Index1,1)->YName=m_Name)int temp1=atoi(app->(Index1,1)-&
44、gt;YNumber)+atoi(m_Number);/app->(Index1,1)->("%d",temp1);break;("%d",atoi(m_Number)*atoi(m_Price);UpdateData(false);int Index;Index=app->(3);(); / 列表清空逐條加入信息for(int i=0;i<Index;i+) /(app->(i,3)->YName);elseMessageBox(" 銷售列表中沒有此貨物 ");MessageBox("
45、銷售列表中還沒有貨物 ");void Back:OnButcheck()int Index;CMedManageApp *app = (CMedManageApp *)AfxGetApp();Index=app->(3);(); / 列表清空逐條加入信息for(int i=0;i<Index;i+) /(app->(i,3)->YName);void Back:OnSelchangeList1()CMedManageApp *app = (CMedManageApp *)AfxGetApp(); int nIndex=();if(nIndex!=LB_ERR)
46、 m_Name=app->(nIndex,3)->YName; m_Kind=app->(nIndex,3)->YKind;m_Number=app->(nIndex,3)->YNumber; m_Price=app->(nIndex,3)->YPrice;UpdateData(false);void Back:OnButalter()UpdateData(true);CMedManageApp *app = (CMedManageApp *)AfxGetApp();int nIndex=();CString temp; if(nIndex!=L
47、B_ERR) temp=app->(nIndex,3)->YNumber; int nIndex1=app->(2),nIndex2=app->(1); while(nIndex1-) if(app->(nIndex1,2)->YName=m_Name) inttemp1=atoi(app->(nIndex1,2)->YNumber)+atoi(m_Number)-atoi(temp); app->(nIndex1,2)->("%d",temp1);while(nIndex2-) if(app->(nInde
48、x1,1)->YName=m_Name) atoi(app->(nIndex1,1)->YNumber)+atoi(m_Number)-atoi(temp);app->(nIndex1,2)->("%d",(atoi(app->(nIndex1,1)->YNumber)+atoi(m_Number)-atoi (temp);break;("%d",atoi(m_Number)*atoi(m_Price); break;app->(nIndex,3)->YName=m_Name; app->(nI
49、ndex,3)->YKind=m_Kind;app->(nIndex,3)->YNumber=m_Number; app->(nIndex,3)->YPrice=m_Price;結論時間就像流水,一去不復返。經過這樣兩周的 C+課設,不但使我了解了許多專業(yè)方面 的知識,也增強了我動手能力。在課設中,我們小組的同學都很認真。也就是說,知識寶貴,團隊精神同樣可貴,我想 任務分組完成就是出于這樣的考慮吧,團隊合作不是把任務簡單分開就能實現(xiàn)的。每個人學 習知識的側重點不盡相同,每人解決問題的思路也不一樣,幾個人相互討論,相互辯論的過 程中往往會產生出人意料的好想法,也許這
50、就叫做靈感。分歧過后達成共識,團結協(xié)作,最 終使我們達成了共識。在做C+課設時我們組主要分為幾個部分,包括登陸界面,采購藥物,銷售藥物,退貨,文件存儲等功能。對于登陸界面的設置我們想一些結構最終我們采用了我們學過的登陸界面 形式。我們對用戶名和密碼進行設置。如果用戶名或密碼有一個不正確將彈出錯誤信息對話 框。從新輸入用戶名和密碼當我們輸入錯誤超過三次將推出登陸對話框。登陸成功后我們將進入銷售主界面這個界面中有采購、銷售、退貨、保存文件等文件。以采購為例,當我們點擊采購按鈕時,會彈出采購對話框。我們將輸入藥品名、類別、數(shù)量 和價格,當我們輸入結束后點擊 0K就采購成功。銷售和退貨也同樣如此。但是我們的程序仍 然存在不完善的地方,像銷售功能的銷售按鈕只能銷售一次。如果在想銷售只能點擊修改按 鈕對再次銷售的藥品的數(shù)量進行修改。 但是我們都盡了自己最大的努力, 不斷的將功能完善。“書到用時方恨少!”每
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2020-2021廣東省深圳市寶安區(qū)寶城小學六年級小升初語文綜合測試卷及答案
- 主體模板工程施工方案
- 扣盤式腳手架施工方案
- 2025年中考物理模擬試卷猜題卷3(含答案)
- 2025屆浙江省臺州市團隊六校中考生物模擬預測題含解析
- 勞務合同保密合同范例
- 肝移植GVHD的護理
- 農資服務代辦合同范例
- 學校秋季志愿服務計劃
- 制定有效的輪崗計劃
- 【2025年衛(wèi)生健康宣傳日】世界防治結核病日
- 新版《醫(yī)療器械經營質量管理規(guī)范》(2024)培訓試題及答案
- 2025年人教版數(shù)學五年級下冊教學計劃(含進度表)
- 《神奇糖果店》教學課件
- 部編人教版二年級道德與法治下冊同步練習(全冊)
- h型鋼力學性能計算表
- 臺灣姓氏拼音對照
- 套管柱及其強度設計ppt課件
- 三年級語文家長會(課堂PPT)
- 新老加油加氣站設計與施工規(guī)范要點對比解讀
- 醫(yī)藥企業(yè)價格和營銷行為信用承諾書
評論
0/150
提交評論