版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目錄</b></p><p> 一、課程設(shè)計(jì)的目的:1</p><p><b> 二、概念設(shè)計(jì)1</b></p><p><b> 1.總經(jīng)理:2</b></p><p> 2.技術(shù)部門:2</p><p
2、> 3.銷售部門:2</p><p> 4.財(cái)務(wù)部門:2</p><p> 5.人力資源管理部:3</p><p> 三、系統(tǒng)流程分析:3</p><p> 四、過程展示:3</p><p><b> 1)總經(jīng)理:3</b></p><
3、p> 2)銷售經(jīng)理(銷售員)6</p><p><b> 3)技術(shù)員6</b></p><p> 4)人力資源部門員工6</p><p> 5)財(cái)務(wù)部門員工:9</p><p> 五、提升空間:11</p><p> 六、感想與總結(jié):12</p>
4、;<p> 七、部分源代碼展示:12</p><p> 八、VIEW.cpp類的源代碼顯示:24</p><p><b> 課程設(shè)計(jì)的目的:</b></p><p> 為了解決公司職工信息的多樣性和數(shù)據(jù)的混亂與繁雜,實(shí)現(xiàn)信息存取,查詢,方便公司在信息方面有清晰的管理,提高公司的運(yùn)營(yíng)效率,本系統(tǒng)可以實(shí)現(xiàn)以上的功能。&l
5、t;/p><p><b> 概念設(shè)計(jì)</b></p><p><b> 總體關(guān)系圖:</b></p><p><b> 總經(jīng)理:</b></p><p> 總經(jīng)理是負(fù)責(zé)公司的大小事務(wù)的,所以總經(jīng)理獨(dú)立擁有查詢員工工資的權(quán)利,總經(jīng)理還可以獨(dú)立輸入個(gè)人信息到系統(tǒng)中,方便財(cái)務(wù)部門
6、,人力資源部門等信息的統(tǒng)計(jì)。</p><p><b> 技術(shù)部門:</b></p><p> 技術(shù)部門是由技術(shù)員組成的,技術(shù)員是技術(shù)部門的主要成員,所以技術(shù)員在技術(shù)部門內(nèi)是特殊的存在,同樣技術(shù)部門也擁有獨(dú)立信息輸入輸出的權(quán)利。</p><p><b> 銷售部門:</b></p><p>
7、銷售部門由銷售經(jīng)理和銷售員組成,銷售部門也是有獨(dú)立的信息輸入輸出的權(quán)利,方便部門的信息統(tǒng)計(jì)和人員信息的查看。</p><p><b> 財(cái)務(wù)部門:</b></p><p> 財(cái)務(wù)部門是公司財(cái)務(wù)統(tǒng)計(jì)的部門,掌管公司資金動(dòng)向,還有員工工資發(fā)放,所以我給財(cái)務(wù)部門設(shè)置了工資查詢的功能,讓每個(gè)公司成員進(jìn)入財(cái)務(wù)部查詢自己的工資,同時(shí)財(cái)務(wù)部要負(fù)責(zé)把員工的工資信息上傳到系統(tǒng)中去的
8、功能。</p><p><b> 人力資源管理部:</b></p><p> 主要功能是對(duì)員工信息的管理,所以在人力資源部門中可以實(shí)現(xiàn)隊(duì)員工的信息持續(xù)添加的功能,方便了人力資源部的員工的工作了。同時(shí)還可以實(shí)現(xiàn)對(duì)人員信息的刪除,因?yàn)槿肆Y源管理部門是管理人員流動(dòng)的大部門,每個(gè)員工的存儲(chǔ)或刪除是工作中常常遇到的額,所以刪除功能給人力資源部節(jié)約了很多人力物力。</
9、p><p><b> 系統(tǒng)流程分析:</b></p><p> 前面是分析了各模塊的功能,現(xiàn)在就是對(duì)系統(tǒng)所實(shí)現(xiàn)的功能做一個(gè)展示并且分析每個(gè)功能的操作及設(shè)計(jì)的原因;</p><p> 如果你是公司員工,那么就進(jìn)入本系統(tǒng),進(jìn)入系統(tǒng)之后找到自己所在的部門,比如你是銷售員,那么就是銷售部門的,那么就點(diǎn)擊銷售部門->銷售員->個(gè)人信息輸入;
10、點(diǎn)擊個(gè)人信息輸入之后會(huì)彈出一個(gè)提示對(duì)話窗口,此時(shí)你可以上傳自己的個(gè)人信息到系統(tǒng)當(dāng)中。</p><p> 同上,如果你是總經(jīng)理,那么就點(diǎn)擊進(jìn)入總經(jīng)理的鏈接->個(gè)人信息輸入(個(gè)人信息輸出,員工工資查看);點(diǎn)擊個(gè)人信息輸入會(huì)彈出與上一個(gè)輸入一樣的個(gè)人信息輸入對(duì)話框,里面有信息選項(xiàng)若干,進(jìn)行填寫按確定就會(huì)對(duì)你所輸入的信息進(jìn)行存儲(chǔ),如果存儲(chǔ)完畢后要查看個(gè)人信息,可以點(diǎn)擊個(gè)人信息輸出查看。</p>&l
11、t;p> 其他部門比如技術(shù)部門,銷售部門也是同樣的功能。就不介紹了。</p><p> 現(xiàn)在介紹財(cái)務(wù)部門的查詢工資的功能實(shí)現(xiàn):查詢工資首先要人力資源部門完成信息上傳之后,同時(shí)還要必須是本公司員工,才能被查詢到,查詢的條件是以姓名方式查找的,只要信息正確就可以顯示到你所要的工資還有你所得的薪資水平。</p><p> 還有一個(gè)可以查詢到員工的工資,就是總經(jīng)理,總經(jīng)理可以查詢到所有
12、員工的工資,點(diǎn)擊總經(jīng)理的員工工資查看就可以了。</p><p><b> 過程展示:</b></p><p><b> 登陸系統(tǒng):</b></p><p> 要進(jìn)行正確的身份驗(yàn)證后才可以登陸系統(tǒng),在登錄窗口中輸入正確的用戶名,密碼。</p><p> 本系統(tǒng)的用戶名為:1007010103,
13、密碼1007010103:</p><p><b> 登陸對(duì)話框</b></p><p><b> 輸入密碼后:</b></p><p> 點(diǎn)擊登陸會(huì)彈出以下對(duì)話框:</p><p><b> 提示對(duì)話框</b></p><p><b>
14、; 點(diǎn)擊確定:</b></p><p><b> 總經(jīng)理:</b></p><p> 點(diǎn)擊總經(jīng)理會(huì)出現(xiàn)下拉菜單項(xiàng)有個(gè)人信息輸入,個(gè)人信息輸出,還有員工資金查看;</p><p> 點(diǎn)擊個(gè)人信息輸入出現(xiàn)如下對(duì)話框:</p><p> ?。▽?duì)話框有四個(gè)選項(xiàng),其中職業(yè)有四個(gè)下拉項(xiàng),包括,總經(jīng)理,銷售經(jīng)理,技
15、術(shù)員,銷售員,在職業(yè)項(xiàng)中選擇你的職業(yè)。)</p><p> 輸入個(gè)人信息點(diǎn)擊確定就可以實(shí)現(xiàn)信息保存。</p><p> 比如輸入姓名為:張三,興趣愛好是:排球,性別:男,職業(yè)是總經(jīng)理;輸入完后出現(xiàn)</p><p> 提示你的信息輸入完畢。</p><p> 再點(diǎn)擊個(gè)人信息輸出就會(huì)查看到自己的信息:</p><p&g
16、t; 第三個(gè)功能是員工的工資查看,要查看員工工資首先要在主菜單中的信息上傳之后才能實(shí)現(xiàn), 現(xiàn)在就講一下信息上傳的功能:</p><p> 點(diǎn)擊員工信息管理系統(tǒng)再點(diǎn)擊信息上傳后會(huì)彈出一下窗口:</p><p> 本窗口設(shè)置了姓名必能為空的功能,如果不填寫姓名就會(huì)彈出如下窗口:</p><p> 點(diǎn)擊時(shí)就會(huì)彈出上面的窗口繼續(xù)填寫,如果否就會(huì)退出。</p&g
17、t;<p> 我們把信息設(shè)置如下:總經(jīng)理:李斯;銷售經(jīng)理:趙高;銷售員:葉子;技術(shù)員:高山;工作時(shí)間:100;銷售員銷售額:20000;公司銷售額:1000000</p><p> 點(diǎn)擊確定會(huì)彈出提示框:</p><p><b> 信息提示上傳成功。</b></p><p> 再點(diǎn)擊總經(jīng)理的員工工資查看就會(huì)顯示出來:<
18、;/p><p><b> 銷售經(jīng)理(銷售員)</b></p><p> 點(diǎn)擊主菜單的銷售部門會(huì)出現(xiàn)兩項(xiàng)選擇:銷售經(jīng)理和銷售員.</p><p> 如果是銷售經(jīng)理(銷售員)會(huì)有兩項(xiàng)選擇:個(gè)人信息輸入,個(gè)人信息輸出。</p><p> 點(diǎn)擊個(gè)人信息輸入會(huì)有一個(gè)如總經(jīng)理一樣的對(duì)話框:功能實(shí)現(xiàn)和總經(jīng)理的差不多就不一一介紹了可
19、以參照總經(jīng)理所講的,只是少了一項(xiàng)總經(jīng)理的功能就是員工工資查看。</p><p><b> 技術(shù)員</b></p><p> 點(diǎn)擊主菜單的技術(shù)部門會(huì)出現(xiàn)一項(xiàng)選擇:技術(shù)員</p><p> 點(diǎn)擊技術(shù)員會(huì)有兩項(xiàng)選擇:個(gè)人信息輸入,個(gè)人信息輸出。</p><p> 點(diǎn)擊個(gè)人信息輸入會(huì)有一個(gè)如總經(jīng)理一樣的對(duì)話框:功能實(shí)現(xiàn)和
20、總經(jīng)理的差不多就不一一介紹了可以參照總經(jīng)理所講的,只是少了一項(xiàng)總經(jīng)理的功能就是員工工資查看。</p><p><b> 人力資源部門員工</b></p><p> 人力資源部門的功能新建立一項(xiàng)功能,可以追加信息輸入。點(diǎn)擊人力資源部門時(shí)會(huì)有三項(xiàng)選擇:人員信息輸入,工資信息輸出,信息刪除,人力資源部門的這三個(gè)功能是必不可少的人員的流動(dòng)是人力資源部門掌管的,有了這三個(gè)功
21、能可以方便部門對(duì)信息的管理提高效益:</p><p><b> 點(diǎn)擊人員信息輸入:</b></p><p><b> 個(gè)人信息輸入框</b></p><p> 出現(xiàn)信息輸入框,填寫公司員工的信息:李斯,興趣愛好是:打籃球,性別:男,職業(yè)是總經(jīng)理。</p><p> 此信息是通過人力資源部門上
22、傳的信息所以填寫完后會(huì)出現(xiàn)一個(gè)提示框:</p><p> 點(diǎn)擊‘是’,會(huì)彈出信息輸入對(duì)話框:</p><p><b> 信息輸入對(duì)話框</b></p><p> 可以實(shí)現(xiàn)繼續(xù)添加,但是我設(shè)置了重復(fù)添加四次,因?yàn)槁殬I(yè)只有四種職業(yè)。</p><p> 繼續(xù)添加如下信息:高山,排球,女,銷售經(jīng)理;趙高,乒乓球,男,技術(shù)
23、員,葉子,網(wǎng)球,女,銷售員;點(diǎn)擊確定保存信息。保存之后會(huì)彈出對(duì)話框提示內(nèi)存不足;</p><p><b> 內(nèi)存不足對(duì)話框</b></p><p> 不能再繼續(xù)添加信息了。</p><p> 信息的查看可以在各部門中的個(gè)人信息輸出查看到!</p><p> 看到的信息如下所示:</p><p&
24、gt;<b> 點(diǎn)擊工資信息輸出:</b></p><p> 在主窗口里會(huì)出現(xiàn)如下內(nèi)容:</p><p><b> 點(diǎn)擊信息刪除:</b></p><p> 如果信息有錯(cuò)誤,比如下面信息,</p><p> 技術(shù)員趙高的愛好不是乒乓球,而是排球,要求刪除掉:</p><
25、p> 那么就點(diǎn)擊信息刪除。</p><p><b> 會(huì)彈出一個(gè)對(duì)話框:</b></p><p><b> 刪除提示窗口</b></p><p> 輸入刪除的人的姓名“趙高”,點(diǎn)擊‘確定’,又會(huì)出現(xiàn)一個(gè)對(duì)話框,取消就會(huì)退出;</p><p><b> 信息刪除對(duì)話框<
26、/b></p><p> 信息顯示說已經(jīng)刪除了。打開主窗口,單擊一項(xiàng)個(gè)人信息輸出會(huì)看到:</p><p><b> 刪除信息顯示頁(yè)面</b></p><p> 顯示的內(nèi)容變成這樣了,趙高的信息刪除了。</p><p><b> 財(cái)務(wù)部門員工:</b></p><p&
27、gt; 如果進(jìn)入財(cái)務(wù)部門,里面可以查詢個(gè)人工資選項(xiàng),但是首先要填寫自己的職業(yè)選項(xiàng),通過信息核對(duì)正確后就會(huì)進(jìn)入姓名查詢,查詢到了你的信息就會(huì)顯示出來。</p><p> 點(diǎn)擊后會(huì)出現(xiàn)如下對(duì)話框</p><p><b> 職業(yè)選擇對(duì)話框</b></p><p> 提示先選擇你的職業(yè):比如你是總經(jīng)理,總經(jīng)理的姓名是:李斯,點(diǎn)擊總經(jīng)理一項(xiàng),&l
28、t;/p><p> 會(huì)彈出一個(gè)對(duì)話框提示你的信息:</p><p><b> 職業(yè)信息驗(yàn)證對(duì)話框</b></p><p> 點(diǎn)擊‘是’,就可以查詢到工資了:</p><p><b> 月薪提示對(duì)話框</b></p><p> 顯示出總經(jīng)理的工資水平是80000/月,&l
29、t;/p><p> 選擇其他的信息比如銷售員,葉子的工資;</p><p> 點(diǎn)擊銷售員的職業(yè)選項(xiàng),彈出對(duì)話框:</p><p><b> 職業(yè)信息驗(yàn)證對(duì)話框</b></p><p> 點(diǎn)擊‘是’,出現(xiàn)一個(gè)姓名查詢窗口:</p><p><b> 工資查詢對(duì)話框</b>
30、</p><p> 填寫號(hào)自己的姓名:葉子,</p><p><b> 點(diǎn)擊確定:</b></p><p> 點(diǎn)擊‘是’可以顯示信息,如果否就會(huì)不顯示;點(diǎn)擊‘是’</p><p><b> 工資信息顯示對(duì)話框</b></p><p> 出現(xiàn)了信息顯示,里面有你的名字
31、和薪資水平,級(jí)別是一級(jí),代表是最高的。</p><p><b> 提升空間:</b></p><p> 其實(shí)程序里面有幾個(gè)優(yōu)點(diǎn)我覺比較滿意的就是我把員工信息輸入框中的這也用了ComboBox類的組合框讓信息規(guī)定在了四個(gè)職業(yè)的選項(xiàng),讓信息更清楚不含糊。還有工資查詢的職業(yè)選擇,我是用了單選按鈕來實(shí)現(xiàn)這也選擇,這樣的設(shè)置保證了信息的完整性,不會(huì)因?yàn)檫@也復(fù)雜而讓信息難以處
32、理。</p><p> 但是程序還存在很多的不足,首先在數(shù)據(jù)顯示方面不夠清晰,其實(shí)我們可以建立以數(shù)據(jù)庫(kù),在庫(kù)中建立員工信息表,部門信息表,用表格的形式輸出數(shù)據(jù)更加美觀實(shí)用,同時(shí)還可以給數(shù)據(jù)庫(kù)建立一個(gè)登錄名,或多個(gè)登陸,只要是公司的員工就可以登錄輸入自己的個(gè)人信息,另外每個(gè)部門都建立獨(dú)立的表,可以給表設(shè)置對(duì)員工的權(quán)限。員工一般只有查看的功能,而人力資源部門可以對(duì)信息進(jìn)行添加,修改,刪除的權(quán)限。</p>
33、<p> 然后程序不能很好的完成刪除的功能,還有相關(guān)的修改功能也沒實(shí)現(xiàn),這是我要加強(qiáng)此程序功能的方向。</p><p><b> 感想與總結(jié):</b></p><p> 花了很多時(shí)間在這個(gè)程序上,雖然最后還是留下很多不足,可是我覺得結(jié)果不重要,因?yàn)榫幊痰臅r(shí)候我真正感受到了做好一個(gè)程序(系統(tǒng))是一件不容易的事情,而且在這件事情上學(xué)會(huì)了急于求成是不行的
34、,每一步都要認(rèn)真思考,最重要的是對(duì)系統(tǒng)首先做一個(gè)完整的設(shè)計(jì)方案,有一個(gè)大體的目標(biāo)后再進(jìn)行編程,編程的時(shí)候?qū)崿F(xiàn)了一個(gè)功能或者你定好的一步后要備案,不然就會(huì)因?yàn)橐粫r(shí)不小心把之前的程序弄臟了,就會(huì)出現(xiàn)很多問題,這時(shí)你會(huì)花很多時(shí)間去該,要是改不好就是前工盡棄了。然后就是學(xué)好一門計(jì)算機(jī)語(yǔ)言很重要的,不然就會(huì)在程序編寫時(shí)候很吃虧。不過我好自豪,因?yàn)槲业某绦螂m簡(jiǎn)單但是我是認(rèn)真的作者的,而且是自己設(shè)計(jì)的,一個(gè)小小的系統(tǒng)花了我不少的努力,我也會(huì)繼續(xù)加強(qiáng)計(jì)
35、算機(jī)語(yǔ)言的學(xué)習(xí)。</p><p><b> 部分源代碼展示:</b></p><p> 1, employee類為基類派生出來了salesman類,salesmanager類,technician類,manager類,頭文件代碼如下:</p><p> //employee.h</p><p> class e
36、mployee</p><p><b> {</b></p><p> protected:</p><p> char sex[5];//性別</p><p> char hobit[10];//愛好</p><p> char name[20];//姓名</p>&l
37、t;p> char job[20];//工作類型</p><p> int individualEmpNo;//個(gè)人編號(hào)</p><p> int grade;//級(jí)別</p><p> float accumPay;//月薪總額</p><p> static int employeeNo;//本公司職員編號(hào)目前最大
38、值</p><p><b> public:</b></p><p> void Sethobit(char*);</p><p> void Setsex(char*);</p><p> void Setjob(char*);</p><p> char* Getsex();<
39、/p><p> char* Gethobit();</p><p> char* Getjob();</p><p> employee();//構(gòu)造函數(shù)</p><p> ~employee();//析構(gòu)函數(shù)</p><p> virtual void pay()=0;//計(jì)算月薪函數(shù)(純虛函數(shù))<
40、/p><p> virtual void promote(int increment=0);//升級(jí)函數(shù)(虛函數(shù))</p><p> void SetName(char *); //設(shè)置姓名函數(shù)</p><p> char * GetName(); //提取姓名函數(shù)</p><p> int GetindividualEmpNo(
41、); //提取編號(hào)函數(shù)</p><p> int Getgrade(); //提取級(jí)別函數(shù)</p><p> float GetaccumPay(); //提取月薪函數(shù)</p><p><b> };</b></p><p> class technician:public employee//兼職
42、技術(shù)人員類</p><p><b> {</b></p><p><b> private:</b></p><p> float hourlyRate;//每小時(shí)酬金</p><p> int workHours;//當(dāng)月工作時(shí)數(shù)</p><p><b&g
43、t; public:</b></p><p> technician();//構(gòu)造函數(shù)</p><p> ~technician(){}</p><p> void SetworkHours(int wh); //設(shè)置工作時(shí)數(shù)函數(shù)</p><p> void pay();//計(jì)算月薪函數(shù)</p>&
44、lt;p> void promote(int);//升級(jí)函數(shù)</p><p><b> };</b></p><p> class salesman:virtual public employee//兼職推銷員類</p><p><b> {</b></p><p> prote
45、cted:</p><p> float CommRate;//按銷售額提取酬金的百分比</p><p> float sales;//當(dāng)月銷售額</p><p><b> public:</b></p><p> salesman();</p><p> ~salesman(){
46、}//構(gòu)造函數(shù)</p><p> void Setsales(float sl); //設(shè)置銷售額函數(shù)</p><p> void pay();//計(jì)算月薪函數(shù)</p><p> void promote(int);//升級(jí)函數(shù)</p><p><b> };</b></p><p>
47、; class manager:virtual public employee//經(jīng)理類</p><p><b> {</b></p><p> protected:</p><p> float monthlyPay;//固定月薪數(shù)</p><p><b> public:</b>&
48、lt;/p><p> manager();//構(gòu)造函數(shù)</p><p> void pay();//計(jì)算月薪函數(shù)</p><p> void promote(int);//升級(jí)函數(shù)</p><p> ~manager(){}</p><p><b> };</b></p>
49、<p> class salesmanager:public manager,public salesman //銷售經(jīng)理類</p><p><b> {</b></p><p><b> public:</b></p><p> salesmanager();//構(gòu)造函數(shù)</p>
50、<p> void pay();//計(jì)算月薪函數(shù)</p><p> void promote(int);//升級(jí)函數(shù)</p><p> ~salesmanager(){}</p><p><b> };</b></p><p> 2,類成員函數(shù)的實(shí)現(xiàn)包含在employee.cpp源文件中:</
51、p><p> //employee.cpp</p><p> #include "stdafx.h"</p><p> #include<iostream></p><p> #include<cstring></p><p> #include"employ
52、ee.h"</p><p> using namespace std;</p><p> int employee::employeeNo=1000;//員工編號(hào)基數(shù)為1000</p><p> employee::employee()</p><p> {individualEmpNo=employeeNo++;
53、//新輸入的員工編號(hào)為目前最大編號(hào)加1</p><p> grade=1;//級(jí)別初值為1</p><p> accumPay=0.0;}//月薪總額初值為0</p><p> employee::~employee()</p><p><b> {}</b></p><p> vo
54、id employee::promote(int increment)</p><p> {grade+=increment; }//升級(jí),提升的級(jí)數(shù)由increment指定</p><p> void employee::SetName(char* names)</p><p> {strcpy(name,names); }//設(shè)置姓名</p&
55、gt;<p> char* employee::GetName()</p><p> {return name;}//提取成員姓名</p><p> int employee::GetindividualEmpNo()</p><p> {return individualEmpNo;}//提取成員編號(hào)</p><p
56、> int employee::Getgrade()</p><p> {return grade;}//提取成員級(jí)別</p><p> float employee::GetaccumPay()</p><p> {return accumPay;}//提取月薪</p><p> technician::techni
57、cian()</p><p> {hourlyRate=100;}//每小時(shí)酬金100元</p><p> void technician::SetworkHours(int wh)</p><p> {workHours=wh;}//設(shè)置工作時(shí)間</p><p> void technician::pay()</p&g
58、t;<p> {accumPay=hourlyRate*workHours;}//計(jì)算月薪,按小時(shí)計(jì)酬</p><p> void technician::promote(int)</p><p> {employee::promote(2); }//調(diào)用基類升級(jí)函數(shù),升2級(jí)</p><p> salesman::salesman(
59、)</p><p> {CommRate=0.04f;}//銷售提成比例4%</p><p> void salesman::Setsales(float sl)</p><p> {sales=sl;}//設(shè)置銷售額</p><p> void salesman::pay()</p><p> {
60、accumPay=sales*CommRate;}//月薪=銷售提成</p><p> void salesman::promote(int)</p><p> {employee::promote(0); } //調(diào)用基類升級(jí)函數(shù),升0級(jí)</p><p> manager::manager()</p><p> {month
61、lyPay=80000;}//固定月薪8000元</p><p> void manager::pay()</p><p> {accumPay=monthlyPay;}//月薪總額即固定月薪數(shù)</p><p> void manager::promote(int )</p><p> {employee::promote(3
62、);}//調(diào)用基類升級(jí)函數(shù),升3級(jí)</p><p> salesmanager::salesmanager()</p><p> {monthlyPay=5000;</p><p> CommRate=0.005f;}</p><p> void salesmanager::pay()</p><p>
63、{accumPay=monthlyPay+CommRate*sales; }//月薪=固定月薪+銷售提成</p><p> void salesmanager::promote(int)</p><p> {employee::promote(2);}//調(diào)用基類升級(jí)函數(shù),升2級(jí)</p><p> char* employee::Gethobit()
64、</p><p><b> {</b></p><p> return hobit;</p><p><b> }</b></p><p> char* employee::Getsex()</p><p><b> {</b></p&g
65、t;<p> return sex;</p><p><b> }</b></p><p> char* employee::Getjob()</p><p><b> {</b></p><p> return job;</p><p><b&
66、gt; }</b></p><p> void employee::Sethobit(char* hobita)</p><p><b> {</b></p><p> strcpy(hobit,hobita);</p><p><b> }</b></p>&l
67、t;p> void employee::Setsex(char* sexa)</p><p><b> {</b></p><p> strcpy(sex,sexa);</p><p><b> }</b></p><p> void employee::Setjob( char*
68、joba)</p><p><b> {</b></p><p> strcpy(job,joba);</p><p><b> }</b></p><p> 3,自己創(chuàng)新的部分:</p><p> 人力資源部門的人員信息輸入代碼</p><p&
69、gt; 此代碼是實(shí)現(xiàn)信息追加的也是我想到的:</p><p> void CMy1007010103View::OnPersoninput() </p><p><b> {</b></p><p> // TODO: Add your command handler code here</p><p> ma
70、nager m1,t,sm,s;</p><p> int count=0;</p><p> vector <employee *> vchar;</p><p> vchar.push_back(&m1);</p><p> //vchar.push_back(&m);</p><
71、;p> vchar.push_back(&t);</p><p> vchar.push_back(&sm);</p><p> vchar.push_back(&s);</p><p><b> int i;</b></p><p> for(i=0;i<4;i++)<
72、;/p><p><b> {</b></p><p> CDlgInput ed;</p><p> if( ed.DoModal()==IDOK)</p><p><b> {</b></p><p> vchar[i]->SetName((char*) (LP
73、CTSTR) ed.m_strName);//設(shè)置姓名</p><p> vchar[i]->Sethobit((char*) (LPCTSTR) ed.m_strhobit);</p><p> vchar[i]->Setsex((char*) (LPCTSTR) ed.m_strsex);</p><p> vchar[i]->Setj
74、ob((char*) (LPCTSTR) ed.m_ComboEmployee);</p><p> ofstream infile("employee.txt",ios::out|ios::app) ;//創(chuàng)建一個(gè)輸出文件流對(duì)象</p><p> infile<<vchar[i]->GetName()<<",你的職業(yè):&qu
75、ot;<<vchar[i]->Getjob()</p><p> <<", 性別:"<<vchar[i]->Getsex()<<", 愛好:"<<vchar[i]->Gethobit()</p><p><b> <<endl;</b>
76、</p><p> infile.close();</p><p> MessageBox("信息上傳成功!","提示對(duì)話窗口");</p><p> if(count++==3)</p><p><b> { </b></p><p> Mes
77、sageBox("內(nèi)存不足!","提示對(duì)話窗口");</p><p><b> break;</b></p><p><b> }</b></p><p> if(MessageBox("信息存儲(chǔ)完畢,是否繼續(xù)添加人員信息?","提示對(duì)話框&quo
78、t;,100)==IDYES)</p><p><b> continue;</b></p><p><b> else </b></p><p><b> {</b></p><p> MessageBox("信息上傳成功!","提示對(duì)
79、話窗口");</p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> else</b></p><p><b>
80、; {</b></p><p> MessageBox("信息沒有存儲(chǔ)!");</p><p><b> return;</b></p><p><b> }</b></p><p><b> }</b></p><
81、p><b> }</b></p><p><b> 查詢工資函數(shù):</b></p><p> 我用了switch語(yǔ)句來對(duì)信息進(jìn)行處理,員工選擇了職業(yè)選項(xiàng)后用case來處理每一個(gè)消息響應(yīng):</p><p> void CMy1007010103View::OnGetmonthlypay() </p>
82、<p><b> {</b></p><p> // TODO: Add your command handler code here</p><p> UpdateData();</p><p> CDlgQuerySalary work;</p><p> work.DoModal();<
83、;/p><p> if(work.m_workstyle!=-1)</p><p><b> {</b></p><p> switch(work.m_workstyle)</p><p><b> {</b></p><p><b> case 0:<
84、;/b></p><p> if(MessageBox("你的職業(yè)是總經(jīng)理嗎?","提示窗口",100)==IDYES)</p><p><b> {</b></p><p> MessageBox("總經(jīng)理固定月薪是80000","提示窗口");<
85、;/p><p><b> }</b></p><p><b> break;</b></p><p><b> case 1:</b></p><p> if(MessageBox("你的職業(yè)是銷售經(jīng)理嗎?","提示窗口",100)=
86、=IDYES)</p><p><b> {</b></p><p> this->OnInitialUpdate();</p><p> ifstream infile("employee1.txt",ios::in);//創(chuàng)建一個(gè)輸入文件流對(duì)象</p><p><b>
87、try { </b></p><p> if (!infile)</p><p> throw FileException();</p><p><b> }</b></p><p> catch ( FileException fe )</p><p> { // exc
88、eption handler</p><p> AfxMessageBox(fe.what()); //" << fe.what() << '\n';</p><p><b> exit(0);</b></p><p><b> }</b></p>&l
89、t;p> CDlgQueryName ed; //聲明查詢對(duì)話框?qū)ο?lt;/p><p> if(ed.DoModal()==IDOK)//調(diào)用查詢對(duì)話框</p><p><b> {</b></p><p> char line[10][101];</p><p> BOOL flag=FALSE;<
90、/p><p> for(int i=0;i<4;i++)</p><p><b> {</b></p><p> infile.getline(line[i],100); //從文件讀入人員信息</p><p> CString c_str,name_str;</p><p> c_s
91、tr.Format("%s",line[i]); //轉(zhuǎn)換為字符串 </p><p> name_str=c_str.Left(c_str.Find(','));//提取姓名</p><p> if(!name_str.Compare(ed.m_strQueryName))//與查詢名比較</p><p>
92、;<b> {</b></p><p> flag=TRUE;</p><p> name_str+="被查詢到,要顯示該人員信息嗎?";</p><p> if(MessageBox(name_str,"提示對(duì)話框",100)==IDYES)</p><p><b&
93、gt; {</b></p><p> CDlginfomation pDlg;//聲明顯示對(duì)話框?qū)ο?lt;/p><p> pDlg.m_strInfoName = ed.m_strQueryName;</p><p> pDlg.m_strInfomationSalary = c_str;</p><p> pDlg.Do
94、Modal();//調(diào)用顯示對(duì)話框</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> if(flag==FALSE) MessageBox("查無此人!");</
95、p><p><b> }</b></p><p> infile.close();</p><p><b> }</b></p><p><b> break;</b></p><p><b> case 2:</b><
96、;/p><p> if(MessageBox("你的職業(yè)是技術(shù)員嗎?","提示窗口",100)==IDYES)</p><p><b> {</b></p><p> this->OnInitialUpdate();</p><p> ifstream infile(&q
97、uot;employee1.txt",ios::in);//創(chuàng)建一個(gè)輸入文件流對(duì)象</p><p><b> try { </b></p><p> if (!infile)</p><p> throw FileException();</p><p><b> }</b>&
98、lt;/p><p> catch ( FileException fe )</p><p> { // exception handler</p><p> AfxMessageBox(fe.what()); //" << fe.what() << '\n';</p><p><b&g
99、t; exit(0);</b></p><p><b> }</b></p><p> CDlgQueryName ed; //聲明查詢對(duì)話框?qū)ο?lt;/p><p> if(ed.DoModal()==IDOK)//調(diào)用查詢對(duì)話框</p><p><b> {</b></p
100、><p> char line[10][101];</p><p> BOOL flag=FALSE;</p><p> for(int i=0;i<4;i++)</p><p><b> {</b></p><p> infile.getline(line[i],100); //從文
101、件讀入人員信息</p><p> CString c_str,name_str;</p><p> c_str.Format("%s",line[i]); //轉(zhuǎn)換為字符串 </p><p> name_str=c_str.Left(c_str.Find(','));//提取姓名</p>
102、<p> if(!name_str.Compare(ed.m_strQueryName))//與查詢名比較</p><p><b> {</b></p><p> flag=TRUE;</p><p> name_str+="被查詢到,要顯示該人員信息嗎?";</p><p> i
103、f(MessageBox(name_str,"提示對(duì)話框",100)==IDYES)</p><p><b> {</b></p><p> CDlginfomation pDlg;//聲明顯示對(duì)話框?qū)ο?lt;/p><p> pDlg.m_strInfoName = ed.m_strQueryName;</p>
104、;<p> pDlg.m_strInfomationSalary = c_str;</p><p> pDlg.DoModal();//調(diào)用顯示對(duì)話框</p><p><b> };</b></p><p><b> break;</b></p><p><b>
105、}</b></p><p><b> }</b></p><p> if(flag==FALSE)MessageBox("查無此人!");</p><p><b> }</b></p><p> infile.close();</p><
106、p><b> }</b></p><p><b> break;</b></p><p><b> case 3:</b></p><p> if(MessageBox("你的職業(yè)是銷售員嗎?","提示窗口",100)==IDYES)</p&
107、gt;<p><b> {</b></p><p> this->OnInitialUpdate();</p><p> ifstream infile("employee1.txt",ios::in);//創(chuàng)建一個(gè)輸入文件流對(duì)象</p><p><b> try { </b&
108、gt;</p><p> if (!infile)</p><p> throw FileException();</p><p><b> }</b></p><p> catch ( FileException fe )</p><p> { // exception handler
109、</p><p> AfxMessageBox(fe.what()); //" << fe.what() << '\n';</p><p><b> exit(0);</b></p><p><b> }</b></p><p> CDlgQ
110、ueryName ed; //聲明查詢對(duì)話框?qū)ο?lt;/p><p> if(ed.DoModal()==IDOK)//調(diào)用查詢對(duì)話框</p><p><b> {</b></p><p> char line[10][101];</p><p> BOOL flag=FALSE;</p><p&
111、gt; for(int i=0;i<4;i++)</p><p><b> {</b></p><p> infile.getline(line[i],100); //從文件讀入人員信息</p><p> CString c_str,name_str;</p><p> c_str.Format(&quo
112、t;%s",line[i]); //轉(zhuǎn)換為字符串 </p><p> name_str=c_str.Left(c_str.Find(','));//提取姓名</p><p> if(!name_str.Compare(ed.m_strQueryName))//與查詢名比較</p><p><b> {&
113、lt;/b></p><p> flag=TRUE;</p><p> name_str+="被查詢到,要顯示該人員信息嗎?";</p><p> if(MessageBox(name_str,"提示對(duì)話框",100)==IDYES)</p><p><b> {</b&g
114、t;</p><p> CDlginfomation pDlg;//聲明顯示對(duì)話框?qū)ο?lt;/p><p> pDlg.m_strInfoName = ed.m_strQueryName;</p><p> pDlg.m_strInfomationSalary = c_str;</p><p> pDlg.DoModal();//調(diào)用顯示
115、對(duì)話框</p><p><b> };</b></p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p> if(flag==FALSE)
116、MessageBox("查無此人!");</p><p><b> }</b></p><p> infile.close();</p><p><b> }</b></p><p><b> break;</b></p><p
117、><b> }</b></p><p><b> }else</b></p><p><b> {</b></p><p> MessageBox("姓名不能為空!");</p><p><b> }</b></p
118、><p><b> }</b></p><p> 4,員工信息輸入函數(shù)的代碼顯示:</p><p> void CMy1007010103View::OnManagerinput() </p><p><b> {</b></p><p> // TODO: Add y
119、our command handler code here</p><p> manager m1;</p><p> CDlgInput manager;</p><p> manager.DoModal();</p><p> if(manager.m_strName!="")</p><p
120、><b> { </b></p><p> ofstream infile("employee.txt",ios::out|ios::app) ;</p><p> m1.SetName((char*)(LPCTSTR) manager.m_strName);</p><p> m1.Setsex((ch
121、ar*)(LPCTSTR) manager.m_strsex);</p><p> m1.Sethobit((char*)(LPCTSTR) manager.m_strhobit);</p><p> m1.Setjob((char*)(LPCTSTR) manager.m_ComboEmployee);</p><p> infile<<m1.G
122、etName()<<",你的職業(yè):"<<m1.Getjob()<<",性別:"<<m1.Getsex()<<",愛好:"<<m1.Gethobit()</p><p><b> <<endl;</b></p><p> i
123、nfile.close();</p><p> MessageBox("信息存儲(chǔ)完畢!","存儲(chǔ)信息對(duì)話框");</p><p> flag=true;</p><p><b> }</b></p><p><b> }</b></p>
124、<p> 5,信息輸出函數(shù)代碼顯示:</p><p> void CMy1007010103View::OnManageroutput() </p><p><b> {</b></p><p> // TODO: Add your command handler code here</p><p>
125、 ifstream infile("employee.txt",ios::in);//創(chuàng)建一個(gè)輸入文件流對(duì)象</p><p><b> try { </b></p><p> if (!infile)</p><p> throw FileException();</p><p><b
126、> }</b></p><p> catch ( FileException fe ) { // exception handler</p><p> MessageBox(fe.what()); //" << fe.what() << '\n';</p><p><b> exi
127、t(0);</b></p><p><b> }</b></p><p> CClientDC dc(this);</p><p> char line[101];</p><p> for(int i=0;i< sizeof(infile);i++)</p><p>&
128、lt;b> {</b></p><p> infile.getline(line,100);//從文件讀入人員信息</p><p> CString c_str;</p><p> c_str.Format("%s",line); //轉(zhuǎn)換為字符串</p><p> dc.TextOut(12
129、0,80,"人員信息管理系統(tǒng):");</p><p> dc.TextOut(120,100+30*i,c_str);</p><p><b> }</b></p><p> infile.close();</p><p><b> }</b></p>&l
130、t;p> ,6,信息刪除函數(shù)代碼:</p><p> void CMy1007010103View::OnDeleteinfomation() </p><p><b> {</b></p><p> // TODO: Add your command handler code here</p><p>
131、 this->OnInitialUpdate();</p><p> ifstream infile("employee.txt",ios::in);//創(chuàng)建一個(gè)輸入文件流對(duì)象</p><p><b> try { </b></p><p> if (!infile)</p><p>
132、 throw FileException();</p><p><b> }</b></p><p> catch ( FileException fe ) { // exception handler</p><p> MessageBox(fe.what()); //" << fe.what() <<
133、; '\n';</p><p><b> exit(0);</b></p><p><b> }</b></p><p> CDlgDel ed; //聲明查詢對(duì)話框?qū)ο?lt;/p><p> if(ed.DoModal()==IDOK)//調(diào)用查詢對(duì)話框</p>
134、<p><b> {</b></p><p> char line[4][101];</p><p><b> int a[4];</b></p><p> int flag=0;</p><p> CClientDC dc(this);</p><p>
135、 for(int i=0;i<4;i++)</p><p><b> {</b></p><p> infile.getline(line[i],100); //從文件讀入人員信息</p><p> CString c_str,name_str;</p><p> c_str.Format("%
136、s",line[i]); //轉(zhuǎn)換為字符串 </p><p> name_str=c_str.Left(c_str.Find(','));//提取姓名</p><p> if(!name_str.Compare(ed.m_Deletedname))//與查詢名比</p><p><b> {</b
137、></p><p><b> flag=1;</b></p><p><b> a[i]=i;</b></p><p><b> }</b></p><p><b> }</b></p><p> infile.cl
138、ose();</p><p> if(flag==0) {MessageBox("查詢無此人,請(qǐng)重新輸入!"); return;</p><p><b> }</b></p><p> ofstream ofile("employee.txt",ios::out);</p><
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- c++課程設(shè)計(jì)---公司人員信息管理系統(tǒng)
- c++小型公司員工信息管理系統(tǒng)設(shè)計(jì)報(bào)告要點(diǎn)
- c++課程設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- c++課程設(shè)計(jì)--藥品信息管理系統(tǒng)
- c++客戶信息管理系統(tǒng)課程設(shè)計(jì)
- c++課程設(shè)計(jì)--超市信息管理系統(tǒng)
- c++課程設(shè)計(jì)--職工信息管理系統(tǒng)
- c++課程設(shè)計(jì)--職工信息管理
- c++課程設(shè)計(jì)報(bào)告--學(xué)生信息管理系統(tǒng)
- c++課程設(shè)計(jì)——圖書信息管理系統(tǒng)
- c++課程設(shè)計(jì)——學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)報(bào)告---圖書信息管理系統(tǒng)
- 課程設(shè)計(jì)--c++編寫的學(xué)生信息管理系統(tǒng)
- c++課程設(shè)計(jì)--某高校信息管理
- c++課程設(shè)計(jì)報(bào)告---圖書信息管理系統(tǒng)
- c++課程設(shè)計(jì)---高校學(xué)生信息管理系統(tǒng)
- 面向?qū)ο骳++課程設(shè)計(jì)--學(xué)生信息管理系統(tǒng)
- c++程序設(shè)計(jì)課程設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- c++課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告---職工信息管理系統(tǒng)課程設(shè)計(jì)
- c++課程設(shè)計(jì)報(bào)告---圖書信息管理系統(tǒng)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論