版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本科畢業(yè)設(shè)計(jì)(論文)家庭理財(cái)系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)DesignedandEvelopedofFamilyFinancialManagementSystem學(xué)院:計(jì)算機(jī)工程工程學(xué)院專(zhuān)業(yè)班級(jí):軟件工程軟件043學(xué)生:學(xué)號(hào):指導(dǎo)教師:〔講師〕年月畢業(yè)設(shè)計(jì)〔論文〕中文摘要家庭理財(cái)系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)摘要:隨著計(jì)算機(jī)技術(shù)的飛速開(kāi)展,計(jì)算機(jī)在日常管理中迅速得到了普與,利用計(jì)算機(jī)進(jìn)展家庭日常財(cái)務(wù)收支的管理無(wú)疑是一條有效而且高效的方法。本系統(tǒng)結(jié)合當(dāng)前實(shí)際的家庭收支分配情況,經(jīng)過(guò)實(shí)際的需求分析,采用功能強(qiáng)大的Visualstudio2008作為開(kāi)發(fā)工具而開(kāi)發(fā)出來(lái)的單機(jī)版家庭理財(cái)管理系統(tǒng)。整個(gè)系統(tǒng)從符合操作簡(jiǎn)便、界面友好、靈活、實(shí)用、安全的要求出發(fā),完成了家庭日常收入支出記賬,家庭成員的管理,銀行賬戶(hù)的管理以與各種收支的綜合管理,并且以報(bào)表的形式來(lái)表達(dá)整個(gè)收支情況。經(jīng)過(guò)實(shí)際使用證明,本文所設(shè)計(jì)的家庭理財(cái)管理系統(tǒng)可以滿(mǎn)足家庭與個(gè)人從事理財(cái)管理方面的需要。關(guān)鍵詞:家庭理財(cái);管理;簡(jiǎn)便;實(shí)際需求畢業(yè)設(shè)計(jì)〔論文〕外文摘要DesignedandDevelopedofFamilyFinancialManagementSystemAbstract:Alongwiththerapiddevelopmentofcomputertechnology,computerinthedailymanagementoftherapidpopularization,theobtainedusingthecomputerforthefamilydailyexpendituresofmanagementisundoubtedlyaneffectiveandefficientway.Thissystemcombiningtheactualsituationofthedistributionoffamilyincomeandexpenditure,throughactualneedsanalysis,usingpowerfulVisualstudio2008asdevelopmenttoolsandfamilyfinancialmanagementsystemstand-aloneversion.Fromtheentiresystemtooperateandfriendlyinterface,flexible,practical,saferequirements,completedthefamilyincomeandexpenditureaccountingdailymanagementoffamilymembers,bankaccountmanagementandcomprehensivemanagement,andthebalanceintheformofstatementtobalance.Throughpracticaluse,thisdesignfamilyfinancialmanagementsystemcansatisfyfamilyfinancialmanagement,individualsinneed.Keywords:Familyfinancialmanagement;Management;Simple;Theactualdemand目錄TOC\o"1-2"\h\z\u1緒論11.1課題背景11.2國(guó)外研究的現(xiàn)狀11.3本課題研究的意義21.4本課題的研究方法22可行性研究32.1技術(shù)可行性32.2經(jīng)濟(jì)可行性32.3操作上的可行性43系統(tǒng)需求分析53.1系統(tǒng)功能分析53.1系統(tǒng)的主要容和根本要求53.2業(yè)務(wù)流分析63.2.1系統(tǒng)業(yè)務(wù)流程圖63.2.2系統(tǒng)數(shù)據(jù)流圖73.2.3系統(tǒng)數(shù)據(jù)字典83.2.4系統(tǒng)E-R圖84系統(tǒng)設(shè)計(jì)94.1系統(tǒng)模塊設(shè)計(jì)94.2系統(tǒng)相關(guān)設(shè)計(jì)94.2.1數(shù)據(jù)庫(kù)相關(guān)視圖115各模塊功能詳細(xì)設(shè)計(jì)145.1公用配置文件145.2用戶(hù)登錄模塊145.2.1設(shè)計(jì)功能145.2.2用戶(hù)登錄流程圖145.2.3功能實(shí)現(xiàn)所需主要代碼的描述145.2.4登錄功能測(cè)試155.2.5代碼實(shí)現(xiàn)效果155.3賬簿管理模塊155.3.1設(shè)計(jì)功能155.3.2賬簿管理模塊流程圖155.3.3功能實(shí)現(xiàn)所需主要代碼的描述165.3.4控件的測(cè)試175.4家庭成員管理模塊175.4.1設(shè)計(jì)功能175.4.2家庭成員管理模塊流程圖175.4.3功能實(shí)現(xiàn)所需主要代碼的描述185.4.4控件的測(cè)試195.5銀行卡管理模塊195.5.1設(shè)計(jì)功能195.5.2銀行卡管理模塊流程圖195.5.3功能實(shí)現(xiàn)所需主要代碼的描述205.5.4控件的測(cè)試215.6收支項(xiàng)目管理模塊225.6.1設(shè)計(jì)功能225.6.2收支項(xiàng)目管理模塊流程圖225.6.3功能實(shí)現(xiàn)所需主要代碼的描述225.6.4控件的測(cè)試235.7預(yù)算管理模塊235.7.1設(shè)計(jì)功能235.7.2預(yù)算管理模塊流程圖235.7.3功能實(shí)現(xiàn)所需主要代碼的描述245.7.4控件的測(cè)試255.8報(bào)表統(tǒng)計(jì)管理模塊255.8.1設(shè)計(jì)功能255.8.2報(bào)表統(tǒng)計(jì)功能實(shí)現(xiàn)的主要代碼255.8.3代碼實(shí)現(xiàn)的效果275.8.4報(bào)表功能測(cè)試275.9權(quán)限管理模塊275.9.1設(shè)計(jì)功能275.9.2權(quán)限設(shè)置功能實(shí)現(xiàn)的主要代碼285.9.3代碼實(shí)現(xiàn)的效果285.9.4權(quán)限功能測(cè)試286用戶(hù)使用手冊(cè)296.1運(yùn)行環(huán)境需求296.2系統(tǒng)運(yùn)行指南296.3系統(tǒng)操作與布局詳細(xì)介紹29結(jié)論33致34主要參考文獻(xiàn)351緒論家庭投資理財(cái)?shù)哪康木褪羌彝ヘ?cái)產(chǎn)保值增值,或者叫家庭財(cái)富最大化。更進(jìn)一步說(shuō),追求財(cái)富就是追求成功,追求人生目標(biāo)的自我實(shí)現(xiàn)。所以我們提倡科學(xué)的理財(cái),就是要善用錢(qián)財(cái),使家庭財(cái)務(wù)狀況處于最正確狀態(tài),滿(mǎn)足各層次的需求,從而有一個(gè)豐富的人生。從這個(gè)意義上講,人人都需要理財(cái)。本文將把家庭財(cái)務(wù)管理系統(tǒng)很系統(tǒng)的展示。1.1課題背景家庭理財(cái)就是管理自己的財(cái)富,進(jìn)而提高財(cái)富的效能的經(jīng)濟(jì)活動(dòng)。通俗的來(lái)說(shuō),理財(cái)就是賺錢(qián)、生前、花錢(qián)之道。理財(cái)就是打理錢(qián)財(cái)。說(shuō)起來(lái)理財(cái)是一件非常平凡的事情,單實(shí)際上卻非常有學(xué)問(wèn)。家庭理財(cái)師一門(mén)新興的實(shí)用科學(xué),它是以經(jīng)濟(jì)學(xué)為指導(dǎo)、以會(huì)計(jì)學(xué)為根底、以財(cái)務(wù)學(xué)為手段的邊緣科學(xué)。既然家庭理財(cái)師門(mén)科學(xué),我們就必須以科學(xué)、理性的態(tài)度來(lái)對(duì)待它。只有這樣才能達(dá)到理財(cái)?shù)哪繕?biāo)。家庭理財(cái)系統(tǒng),即FamilyConductFinancialTransactionsSystem。它利用計(jì)算機(jī)技術(shù)技術(shù),使家庭理財(cái)逐步信息化,從而形成由家庭成員與計(jì)算機(jī)共同構(gòu)成服務(wù)于家庭的人機(jī)信息財(cái)務(wù)管理系統(tǒng)。隨著計(jì)算機(jī)開(kāi)展,家庭理財(cái)系統(tǒng)已經(jīng)成為很多家庭財(cái)務(wù)管理的一個(gè)重要途徑。計(jì)算機(jī)的最大優(yōu)點(diǎn)在于利用它能夠高效準(zhǔn)確地進(jìn)展財(cái)務(wù)信息管理。使用計(jì)算機(jī)進(jìn)展信息財(cái)務(wù)管理,不僅提高了工作效率,而且大大的提高了其安全性。1.2國(guó)外研究的現(xiàn)狀人理財(cái)服務(wù)在我國(guó)還屬于新生事物,社會(huì)認(rèn)知度低,相關(guān)的法律法規(guī)不健全,這些都對(duì)個(gè)人理財(cái)服務(wù)的開(kāi)展形成了挑戰(zhàn),一項(xiàng)對(duì)、、、四城市的調(diào)查顯示,74%的被調(diào)查者對(duì)個(gè)人理財(cái)服務(wù)感興趣,40%的個(gè)人需要個(gè)人理財(cái)服務(wù)。然而,市場(chǎng)上現(xiàn)有的理財(cái)服務(wù)并不能充分滿(mǎn)足客戶(hù)的日益增長(zhǎng)的需求。所以國(guó)的理財(cái)軟件還沒(méi)有向很多家庭推廣,而且研究的水平也不是很高,功能和性能上也不是很讓家庭客戶(hù)滿(mǎn)意,總之一句話(huà),國(guó)的家庭理財(cái)軟件的開(kāi)發(fā)還有一個(gè)有待開(kāi)展的階段。國(guó)的理財(cái)軟件例如財(cái)智理財(cái)軟件和銀冬瓜理財(cái)軟件等雖然也稱(chēng)作理財(cái)軟件,但是不容易操作,要熟悉一段時(shí)間才能熟練使用,不能滿(mǎn)足普通的用戶(hù);而且比擬繁雜,功能和界面上的安排比擬亂,還時(shí)不時(shí)的報(bào)錯(cuò)退出,速度比擬慢。反觀(guān)家庭理財(cái)系統(tǒng)在國(guó)外很多地方使用已經(jīng)相當(dāng)?shù)钠毡?,而且?guó)外的家庭理財(cái)系統(tǒng)功能相當(dāng)強(qiáng)大,比如系統(tǒng)里包含有股票的預(yù)測(cè)、基金的分析等等。在我們國(guó),尤其是在近幾年,伴隨著計(jì)算機(jī)的高速普與,家庭理財(cái)系統(tǒng)的使用圍逐步擴(kuò)大,從最早的簡(jiǎn)單使用紙筆記錄家庭、個(gè)人財(cái)務(wù)的收支情況,到現(xiàn)在用計(jì)算機(jī)對(duì)財(cái)務(wù)的收支、查詢(xún)、匯總等等。巨大的市場(chǎng)需求也促使了很多公司加大了對(duì)家庭理財(cái)系統(tǒng)的研究。MicrosoftMoney是一個(gè)微軟的個(gè)人財(cái)務(wù)管理軟件,已經(jīng)擁有十幾年的歷史,使用MicrosoftMoney軟件可以讓用戶(hù)減少在財(cái)務(wù)上所消耗的時(shí)間,并將個(gè)人財(cái)務(wù)工作整理得井井有條。但是不足的是:MicrosoftMoney本身是針對(duì)北美市場(chǎng),有很多功能不太適合其它地區(qū)的用戶(hù)使用,不過(guò)要讓Money支持所有國(guó)家的金融市場(chǎng)、稅務(wù)、福利政策等,也是不太可能的。1.3本課題研究的意義長(zhǎng)久以來(lái)人們都使用傳統(tǒng)的人工方式記錄和管理家庭或自己財(cái)務(wù)情況,這種管理和記錄方式不僅不便于長(zhǎng)期保存,也存在著不可防止的缺點(diǎn),如效率太低、性太差。伴隨著居民收入水平的提高和居民各種消費(fèi)和收入的多樣性,家庭理財(cái)所需要管理的信息就會(huì)越來(lái)越多,就會(huì)產(chǎn)生大量的文件和數(shù)據(jù),這樣就會(huì)對(duì)查閱、更新、保存等方面都產(chǎn)生不少的困難。隨著計(jì)算機(jī)技術(shù)的不斷提高,利用計(jì)算機(jī)對(duì)家庭理財(cái)信息進(jìn)展管理具有很多的優(yōu)點(diǎn),如:統(tǒng)計(jì)方便、查找容易、可靠性高、性好、更新方便等。這些優(yōu)點(diǎn)能夠極提高家庭理財(cái)信息管理的效率,大大降低居民在信息管理精力上的投入,使家庭獲得更大的利潤(rùn)空間。因此,開(kāi)發(fā)一個(gè)能夠管理家庭部各種財(cái)務(wù)信息的家庭理財(cái)管理系統(tǒng)是一件十分必要的事情。1.4本課題的研究方法家庭理財(cái)系統(tǒng)的用戶(hù)群體是家庭部成員,用戶(hù)類(lèi)型單一,因此將本系統(tǒng)設(shè)計(jì)成一個(gè)相對(duì)封閉的單機(jī)運(yùn)行系統(tǒng)結(jié)合居民管理信息方面的具體需求,利用VS2008作為前臺(tái)開(kāi)發(fā)工具,使用SQLSERVER2005作為數(shù)據(jù)庫(kù)。結(jié)合數(shù)據(jù)庫(kù)原理與應(yīng)用、軟件工程開(kāi)發(fā)方法,在經(jīng)過(guò)深入地學(xué)習(xí)之后,開(kāi)發(fā)了這套家庭理財(cái)管理系統(tǒng)。2可行性研究本系統(tǒng)從整個(gè)系統(tǒng)出發(fā),從技術(shù)、經(jīng)濟(jì)、操作等多個(gè)方面上進(jìn)展分析和論證,確定了項(xiàng)目的可行性。2.1技術(shù)可行性本系統(tǒng)的開(kāi)發(fā)利用VS2008作為開(kāi)發(fā)工具。VS2008是一個(gè)具有完善開(kāi)發(fā)工具的平臺(tái)。VS2008提供的工具適合各種水平層次無(wú)論是初學(xué)者還是有經(jīng)驗(yàn)的團(tuán)隊(duì),并適合各種不同的開(kāi)發(fā)需求。降低了開(kāi)發(fā)的復(fù)雜度,其提供給開(kāi)發(fā)者更加簡(jiǎn)便動(dòng)態(tài)的.NetFramework根底解決方案,其中包括了windows應(yīng)用程序開(kāi)發(fā)、office嵌入開(kāi)發(fā)、Web應(yīng)用開(kāi)發(fā)、移動(dòng)應(yīng)用程序開(kāi)發(fā)。改良了團(tuán)隊(duì)交流方式,VS2008為團(tuán)隊(duì)開(kāi)發(fā)提供通道和完整的開(kāi)發(fā)周期工具,從而增加了團(tuán)隊(duì)部的交流與協(xié)作的效率。通過(guò)學(xué)習(xí),熟悉和掌握C#.NET的使用方法,使用VS2008作為開(kāi)發(fā)工具將使整個(gè)系統(tǒng)的模塊化設(shè)計(jì)變得更加簡(jiǎn)便。系統(tǒng)采用SQLSERVER2005作為開(kāi)發(fā)數(shù)據(jù)庫(kù)。SQLSERVER2005是一種客戶(hù)機(jī)/服務(wù)器結(jié)構(gòu)的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)。SQLSERVER2005提供了許多易于使用的圖形化工具和向?qū)В渲凶畛S玫氖欠?wù)管理器、企業(yè)管理器和查詢(xún)分析器。它們?yōu)閯?chuàng)建和管理數(shù)據(jù)庫(kù)帶來(lái)了很大的方便。在技術(shù)難度方面,有指導(dǎo)教師的指導(dǎo)、周?chē)瑢W(xué)的熱心幫助,加上對(duì)很多相關(guān)文獻(xiàn)的參考,能夠解決開(kāi)發(fā)過(guò)程中所遇到的困難。2.2經(jīng)濟(jì)可行性如今,隨著計(jì)算機(jī)的大量普與,各種軟件的開(kāi)發(fā)本錢(qián)越來(lái)越低,價(jià)格也越來(lái)越底。本系統(tǒng)也是這樣,開(kāi)發(fā)本錢(qián)較低,只是需要一臺(tái)配置一般的計(jì)算機(jī),該系統(tǒng)運(yùn)行時(shí)占計(jì)算機(jī)的資源也不多,但并不會(huì)因?yàn)殚_(kāi)發(fā)本錢(qián)低而造成系統(tǒng)功能性能的下降。相反,隨著計(jì)算機(jī)技術(shù)的開(kāi)展,各種實(shí)用軟件的性能日漸提高。家庭理財(cái)管理系統(tǒng)廉價(jià)的開(kāi)發(fā)本錢(qián),卻能夠?yàn)榫用駧?lái)相當(dāng)大的實(shí)惠和方便。主要表現(xiàn)在:(1)本系統(tǒng)可以說(shuō)是一個(gè)擁有多種實(shí)用功能的家庭理財(cái)管理信息系統(tǒng),它集成了家庭成員管理、收入管理、支出管理、密碼管理等多種功能,具有較強(qiáng)的實(shí)用性和方便性。(2)本系統(tǒng)的運(yùn)行可以大大提高居民管理財(cái)務(wù)的效率,減少不必要的人力和物力。(3)本系統(tǒng)還具有查詢(xún)和統(tǒng)計(jì)功能,能夠查詢(xún)到用戶(hù)在一段特定時(shí)間收入和支出的情況,特別是支出情況,有時(shí)往往會(huì)讓用戶(hù)在月底嚇一跳,大大超出預(yù)算,還弄不清錢(qián)都花到哪里了?有了家庭理財(cái)系統(tǒng),不僅使用戶(hù)對(duì)口袋里錢(qián)的去向一目了然,而且可以漸漸悟到一些心得,摸清哪些花費(fèi)是必要的,哪些“意外開(kāi)支〞是可以防止的,哪筆開(kāi)支是可繼續(xù)評(píng)估其必要性的。2.3操作上的可行性由于本系統(tǒng)管理的對(duì)象比擬明確,就是對(duì)于收入支出的一些管理,主要就是對(duì)數(shù)據(jù)庫(kù)的操作,且每個(gè)數(shù)據(jù)庫(kù)容具有較強(qiáng)的關(guān)聯(lián)性,設(shè)計(jì)的過(guò)程也不復(fù)雜。因此,整個(gè)軟件的使用非常簡(jiǎn)便。任何一個(gè)普通的計(jì)算機(jī)用戶(hù)都能很快的熟悉整個(gè)軟件的使用。并且本系統(tǒng)所消耗的資源非常小,任何家庭成員只需要在一般的電腦上面,就能夠使用這個(gè)軟件,簡(jiǎn)單、方便、快捷的實(shí)現(xiàn)對(duì)財(cái)務(wù)信息進(jìn)展管理。3系統(tǒng)需求分析本需求分析報(bào)告的目的是規(guī)本系統(tǒng)的編寫(xiě),旨在提高軟件開(kāi)發(fā)過(guò)程中的能見(jiàn)度,便于軟件開(kāi)發(fā)過(guò)程中的控制與管理,同時(shí)提出了本系統(tǒng)的開(kāi)發(fā)過(guò)程,便于程序員與用戶(hù)之間的交流、協(xié)作,并作為工作成果的原始依據(jù),同時(shí)也說(shuō)明了本軟件的共性,以期能夠獲得更大圍的應(yīng)用。3.1系統(tǒng)主要任務(wù)與目標(biāo)通過(guò)計(jì)算機(jī)管理家庭財(cái)務(wù)狀況,實(shí)現(xiàn)無(wú)紙化理財(cái),通過(guò)查詢(xún)分析,統(tǒng)計(jì)出各項(xiàng)數(shù)據(jù),分析出生活中的浪費(fèi)和節(jié)約的地方,通過(guò)強(qiáng)大的查詢(xún)和高效的檢索功能,檢索出數(shù)據(jù),提高辦事效率。家庭和企業(yè)是社會(huì)的細(xì)胞,我們一向?qū)ζ髽I(yè)的財(cái)務(wù)和金融給予了相當(dāng)?shù)闹匾?,家庭那么被忽略了。現(xiàn)如今,隨著家庭收入和財(cái)富的增長(zhǎng)以與市場(chǎng)各種不確定性越來(lái)越大并且對(duì)家庭的影響日益加深的情況下,家庭理財(cái)變得更為重要了。而且人人都知道,現(xiàn)在社會(huì)要維持一個(gè)家庭并不容易,尤其是能使一個(gè)家庭過(guò)上好日子更不容易。如何管理和家庭財(cái)務(wù)就顯得尤為重要。記賬不但能夠了解家庭金錢(qián)動(dòng)向和消費(fèi)傾向,進(jìn)而推算出每個(gè)月所需金額,同時(shí)更能修正自己過(guò)度的支出,哪些消費(fèi)可以取消,哪些可以再節(jié)省一些,養(yǎng)成節(jié)儉但不吝嗇的習(xí)慣。該系統(tǒng)預(yù)期的設(shè)計(jì)目標(biāo)是:通過(guò)計(jì)算機(jī)家庭財(cái)務(wù)管理系統(tǒng),實(shí)現(xiàn)無(wú)紙化理財(cái),通過(guò)查詢(xún)分析,統(tǒng)計(jì)出各項(xiàng)數(shù)據(jù),分析生活中的浪費(fèi)和節(jié)約的地方,通過(guò)強(qiáng)大的查詢(xún)和檢索提取有效數(shù)據(jù),提高辦事效率。該系統(tǒng)預(yù)期滿(mǎn)足以下幾個(gè)要求:1〕有較強(qiáng)的容錯(cuò)能力。2〕簡(jiǎn)單性:用戶(hù)容易理解和使用該系統(tǒng)。3〕可維護(hù)性和適應(yīng)性:系統(tǒng)應(yīng)易于修改,擴(kuò)大,易于維護(hù),能夠適應(yīng)不斷開(kāi)展變化的需要。4〕可用性:目標(biāo)系統(tǒng)功能較為齊全,能夠滿(mǎn)足家庭財(cái)務(wù)管理的需要。3.1.1系統(tǒng)的主要容和根本要求理財(cái)說(shuō)起來(lái)不復(fù)雜,會(huì)理財(cái)?shù)娜讼葍?chǔ)蓄后消費(fèi),不會(huì)理財(cái)?shù)娜讼认M(fèi)后儲(chǔ)蓄。對(duì)于大局部工薪階層來(lái)說(shuō),每月工資到賬后,可以先扣除硬性開(kāi)支:比如房貸,車(chē)貸,手機(jī)費(fèi),水電費(fèi),物業(yè)費(fèi)等等難以壓縮的開(kāi)支,在剩余局部至少留下一半進(jìn)展強(qiáng)制儲(chǔ)蓄,可以采取零存整取,基金定期定額投資,月交儲(chǔ)蓄性保險(xiǎn)等方式實(shí)現(xiàn)。余下的緊急備用金進(jìn)展生活費(fèi)用的開(kāi)銷(xiāo)。這樣做的好處不言而喻。另外適度的緊縮開(kāi)支,減少手中持有的現(xiàn)金,一方面可以提高資金利用效率,另一方面可以降低消費(fèi)的交易本錢(qián),防止不必要的消費(fèi)。此家庭理財(cái)系統(tǒng)設(shè)計(jì)包括以下主要容:1〕系統(tǒng)登錄:用戶(hù)需要通過(guò)用戶(hù)名和密碼進(jìn)展驗(yàn)證。以防信息破壞。2〕每日家庭財(cái)務(wù)狀況錄入。3〕家庭成員管理。4〕費(fèi)用類(lèi)型管理。5〕查詢(xún)、刪除、修改功能。6〕報(bào)表的統(tǒng)計(jì)功能7〕權(quán)限的管理功能。3.2業(yè)務(wù)流分析用戶(hù)應(yīng)該定義財(cái)務(wù)管理的資金流向,即支持和收入兩大項(xiàng)。用戶(hù)在此兩大項(xiàng)的根底上可以定義各消費(fèi)和收入的子項(xiàng)。用戶(hù)在日常財(cái)務(wù)管理中,根據(jù)實(shí)際情況,選擇財(cái)務(wù)管理子項(xiàng),系統(tǒng)將根據(jù)子項(xiàng)容進(jìn)展財(cái)務(wù)的管理,統(tǒng)計(jì),查詢(xún)。用戶(hù)根據(jù)情況將日常的收入支出,進(jìn)展數(shù)據(jù)的錄入,數(shù)據(jù)保存入庫(kù)。用戶(hù)可根據(jù)條件進(jìn)展數(shù)據(jù)的查詢(xún)和統(tǒng)計(jì)。3.2.1系統(tǒng)業(yè)務(wù)流程圖通過(guò)對(duì)系統(tǒng)的分析,系統(tǒng)的業(yè)務(wù)流程圖如圖3.1所示。系統(tǒng)分為六個(gè)模塊,賬簿管理、家庭成員管理、銀行賬戶(hù)管理、收支項(xiàng)目管理、預(yù)算管理、權(quán)限管理、報(bào)表統(tǒng)計(jì)。管理員分別對(duì)這六個(gè)模塊進(jìn)展操作,如果操作完畢那么推出該系統(tǒng)。管理員管理員退出系統(tǒng)賬簿管理家庭成員管理銀行信息管理收支項(xiàng)目管理預(yù)算管理報(bào)表統(tǒng)計(jì)管理權(quán)限管理圖3.1系統(tǒng)業(yè)務(wù)流程圖3.2.2系統(tǒng)數(shù)據(jù)流圖系統(tǒng)的數(shù)據(jù)流圖如圖3.2所示。用戶(hù)向信息處理中心發(fā)出請(qǐng)求,系統(tǒng)接收用戶(hù)發(fā)來(lái)的信息,從存儲(chǔ)文件的空間中找出相應(yīng)的文件發(fā)送到信息處理中心,然后信息處理中心將獲得的信息反響給用戶(hù)。圖3.2系統(tǒng)數(shù)據(jù)流圖3.2.3系統(tǒng)數(shù)據(jù)字典1〕家庭成員編號(hào)名字:家庭成員編號(hào)別名:描述:唯一的標(biāo)識(shí)家庭成員清單中一個(gè)特定的關(guān)鍵域定義:家庭成員編號(hào)={數(shù)字}位置:家庭成員表、銀行卡表、資金預(yù)算表2)報(bào)表統(tǒng)計(jì)名字:報(bào)表統(tǒng)計(jì)別名:報(bào)表信息描述:統(tǒng)計(jì)家庭所有收支的總情況定義:報(bào)表信息=收入+支出位置:輸出到打印機(jī)3)項(xiàng)目編號(hào)名字:項(xiàng)目編號(hào)別名:描述:唯一的標(biāo)識(shí)家庭成員清單中的一個(gè)特定的關(guān)鍵域定義:項(xiàng)目編號(hào)={數(shù)字}位置:資金類(lèi)型表、財(cái)務(wù)管理表、資金類(lèi)型子表3.2.4系統(tǒng)E-R圖通過(guò)對(duì)系統(tǒng)的分析,系統(tǒng)的E-R圖如圖3.3所示。序號(hào)收支父類(lèi)型序號(hào)收支父類(lèi)型編號(hào)名稱(chēng)序號(hào)用戶(hù)姓名用戶(hù)名密碼權(quán)限序號(hào)子收支類(lèi)型編號(hào)名稱(chēng)收支類(lèi)型序號(hào)卡號(hào)銀行卡卡名開(kāi)戶(hù)行所有人是否可付款序號(hào)收支管理類(lèi)型id子類(lèi)型id日期用戶(hù)id序號(hào)家庭預(yù)算名稱(chēng)計(jì)劃時(shí)間名計(jì)劃金額完成時(shí)間收入支出類(lèi)型關(guān)聯(lián)金額說(shuō)明備注實(shí)際金額用戶(hù)序號(hào)關(guān)聯(lián)收支子類(lèi)型收支類(lèi)型用戶(hù)序號(hào)圖3.3系統(tǒng)E-R圖4系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì)是本系統(tǒng)的物理設(shè)計(jì)階段。根據(jù)系統(tǒng)分析階段所確定的本系統(tǒng)的邏輯模型、功能要求。這個(gè)階段的任務(wù)是設(shè)計(jì)軟件系統(tǒng)的模塊層次結(jié)構(gòu),設(shè)計(jì)數(shù)據(jù)庫(kù)的結(jié)構(gòu)以與設(shè)計(jì)模塊的控制流程,其目的是明確該系統(tǒng)“如何做〞。4.1系統(tǒng)模塊設(shè)計(jì)根據(jù)功能需要系統(tǒng)分為以下幾個(gè)模塊每個(gè)模塊的相關(guān)子功能顯示如圖4.1所示。系統(tǒng)分為七個(gè)模塊:賬簿管理、家庭成員管理、銀行賬戶(hù)管理、收支項(xiàng)目管理、預(yù)算管理、權(quán)限管理、報(bào)表統(tǒng)計(jì)。每個(gè)模塊都有對(duì)應(yīng)的新增、刪除功能。圖4.1模塊圖管理員管理員賬簿管理家庭成員管理銀行信息管理收支項(xiàng)目管理預(yù)算管理報(bào)表統(tǒng)計(jì)管理權(quán)限管理新增收支記錄新增家庭成員新增銀行信息新增子項(xiàng)刪除預(yù)算收支匯總報(bào)表新增權(quán)限刪除家庭成員刪除銀行信息新增父項(xiàng)刪除項(xiàng)目新增預(yù)算查找收支記錄刪除收支記錄年收支統(tǒng)計(jì)表4.2數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)表設(shè)計(jì)分為5個(gè)表。1〕家庭成員表familyInformation,如表1所示。表1家庭成員表字段名類(lèi)型描述SytemidInt用戶(hù)序號(hào)UserIDVarchar〔4〕用戶(hù)編號(hào)RealNameVarchar〔20〕UsernameVarchar〔20〕用戶(hù)名UserpasswordVarchar(10)密碼ClassBit是否有權(quán)限2〕銀行卡表bankcark,如表2所示。表2銀行卡表字段名類(lèi)型描述CardcodeNchar〔30〕卡號(hào)主鍵CardnameNchar〔30〕卡名CardbankNchar〔30〕開(kāi)戶(hù)銀行OwnerInt對(duì)應(yīng)家庭成員表idIspayBit是否可支付RemarkNchar〔30〕備注3〕資金類(lèi)型表rdparentItem,如表3所示。表3資金類(lèi)型表字段名類(lèi)型描述parentIdInt序號(hào)pItemIdNvarchar〔4〕編號(hào)PItemNamenVarchar(10)名稱(chēng)GenreBit收入還是支出ture收入false支出4〕財(cái)務(wù)管理表rdStatement,如表4所示。表4財(cái)務(wù)管理表字段名類(lèi)型描述RdidInt序號(hào)parentIdInt財(cái)務(wù)類(lèi)型表,對(duì)應(yīng)parentitem表idSubidInt財(cái)務(wù)子類(lèi)型表,對(duì)應(yīng)rdsubitem表idDateSmalldatetime時(shí)間SystemidInt家庭成員序號(hào),對(duì)應(yīng)familyinfomation表idMoneySmallmoney資金數(shù)SatementNvarchar〔50〕描述5〕資金類(lèi)型子表rdsunitem,如表5所示。表5資金類(lèi)型子表字段名類(lèi)型描述SubidInt序號(hào)SItemidNvarchar〔4〕編號(hào)SitemNameNvarchar〔10〕名稱(chēng)ParentIDInt資金類(lèi)型表rdparentitem表id5〕資金預(yù)算表plantable,如表6所示。表6資金預(yù)算表字段名類(lèi)型描述IdInt序號(hào)nameNvarchar〔4〕預(yù)算名稱(chēng)predateSmalldatetime計(jì)劃采購(gòu)時(shí)間premoneyInt預(yù)算金額rundateSmalldatetime實(shí)際采購(gòu)時(shí)間runmoneyInt實(shí)際采購(gòu)金額sysidInt與familyinfomatio表systemi字段關(guān)聯(lián)的用戶(hù)4.2.1數(shù)據(jù)庫(kù)相關(guān)視圖:1〕SView賬目管理視圖如圖4.2所示。圖4.2賬目管理視圖2〕收支管理視圖如圖4.3所示。圖4.3收支管理視圖3〕銀行卡視圖如圖4.4所示。圖4.4銀行卡視圖4〕家庭預(yù)算視圖如圖4.5所示。圖4.5家庭預(yù)算視圖4.3開(kāi)發(fā)工具的選擇開(kāi)發(fā)工具選用MicrosoftVisualStudio2008;MicrosoftSQLServer2005MicrosoftVisualStudio2008是面向WindowsVista、Office2007、Web2.0的下一代開(kāi)發(fā)工具,代號(hào)“Orcas〞,是對(duì)visualstudio2005一次與時(shí)、全面的升級(jí)。VS2008引入了250多個(gè)新特性,整合了對(duì)象、關(guān)系型數(shù)據(jù)、XML的訪(fǎng)問(wèn)方式,語(yǔ)言更加簡(jiǎn)潔。使用VisualStudio2008可以高效開(kāi)發(fā)Windows應(yīng)用。設(shè)計(jì)器中可以實(shí)時(shí)反映變更,XAML中智能感知功能可以提高開(kāi)發(fā)效率。同時(shí)VisualStudio2008支持項(xiàng)目模板、調(diào)試器和部署程序。VisualStudio2008可以高效開(kāi)發(fā)Web應(yīng)用,集成了ASP.NETAJAX1.0,包含ASP.NETAJAX項(xiàng)目模板,它還可以高效開(kāi)發(fā)Office應(yīng)用和Mobile應(yīng)用。SQLServer2005使部署、管理和優(yōu)化企業(yè)數(shù)據(jù)以與分析應(yīng)用程序變得更簡(jiǎn)單、更容易。作為一個(gè)企業(yè)數(shù)據(jù)管理平臺(tái),它提供單一管理控制臺(tái),使數(shù)據(jù)管理員能夠在任何地方監(jiān)視、管理和調(diào)諧企業(yè)中所有的數(shù)據(jù)庫(kù)和相關(guān)的服務(wù)。它還提供了一個(gè)可以使用SQL管理對(duì)象輕松編程的可擴(kuò)展的管理根底結(jié)構(gòu),使得用戶(hù)可以定制和擴(kuò)展他們的管理環(huán)境,同時(shí)使獨(dú)立軟件供給商(ISV)也能夠創(chuàng)建附加的工具和功能來(lái)更好地?cái)U(kuò)展打開(kāi)即得的能力。SQLServer2005通過(guò)提供一個(gè)集成的管理控制臺(tái)來(lái)監(jiān)視和管理SQLServer關(guān)系數(shù)據(jù)庫(kù)、IntegrationServices、AnalysisServices、ReportingServices、NotificationServices以與在數(shù)量眾多的分布式服務(wù)器和數(shù)據(jù)庫(kù)上的SQLServerMobileEdition,從而簡(jiǎn)化了管理工作。數(shù)據(jù)庫(kù)管理員能夠同時(shí)執(zhí)行多個(gè)任務(wù),例如,編寫(xiě)和執(zhí)行查詢(xún),查看服務(wù)器對(duì)象,管理對(duì)象,監(jiān)視系統(tǒng)活動(dòng)和查看聯(lián)機(jī)幫助。SQLServerManagementStudio提供了一個(gè)開(kāi)發(fā)環(huán)境,可在其中使用Transact-SQL、多維表達(dá)式、XMLforAnalysis和SQLServerMobileEdition來(lái)編寫(xiě)、編輯和管理腳本和存儲(chǔ)過(guò)程。ManagementStudio可以很容易地與源代碼控制集成在一起。ManagementStudio還包括一些工具可用來(lái)調(diào)度SQLServer代理作業(yè)和管理維護(hù)計(jì)劃,以自動(dòng)執(zhí)行日常維護(hù)和操作任務(wù)。管理和腳本編寫(xiě)集成在單一工具中,同時(shí),該工具具有管理所有類(lèi)型的服務(wù)器的能力,為數(shù)據(jù)庫(kù)管理員們提供了更強(qiáng)的生產(chǎn)效率。SQLServer2005開(kāi)放了70多個(gè)新的部數(shù)據(jù)庫(kù)性能和資源使用的度量值,涵蓋了從存、鎖定到對(duì)事務(wù)、網(wǎng)絡(luò)和磁盤(pán)I/O的調(diào)度等。這些動(dòng)態(tài)管理視圖(DMV)提供了對(duì)數(shù)據(jù)庫(kù)和強(qiáng)大的根底結(jié)構(gòu)的更大的透明度和可見(jiàn)性,可以主動(dòng)監(jiān)視數(shù)據(jù)庫(kù)的狀況和性能。SQL管理對(duì)象(SMO)是一個(gè)新的可編程對(duì)象集,它可實(shí)現(xiàn)所有SQLServer數(shù)據(jù)庫(kù)的管理功能。事實(shí)上,ManagementStudio就是構(gòu)建在SQL管理對(duì)象之上的。SMO是作為Microsoft.NETFramework程序集實(shí)現(xiàn)的。您可以使用SMO自動(dòng)執(zhí)行常見(jiàn)的SQLServer管理任務(wù),例如,用編程方式檢索配置設(shè)置,創(chuàng)建新數(shù)據(jù)庫(kù),應(yīng)用Transact-SQL腳本,創(chuàng)建SQLServer代理作業(yè)以與調(diào)度備份等。SMO對(duì)象模型替代了包含在SQLServer早期版本中的分布式管理對(duì)象(DMO),因?yàn)樗踩煽坎⒕哂懈叩目缮炜s性。5各模塊功能詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì)的主要任務(wù)是設(shè)計(jì)每個(gè)模塊的實(shí)現(xiàn)算法、所需的局部數(shù)據(jù)結(jié)構(gòu)。下文展示了本系統(tǒng)所有模塊的詳細(xì)設(shè)計(jì)。5.1公用配置文件其中: <connectionStrings><addname="FamilyFinanceSystemConnectionString"connectionString="DataSource=PC-2\SQLEXPRESS;uid=sa;pwd=65962358;InitialCatalog=FamilyFinanceSystem"providerName="System.Data.SqlClient"/>為數(shù)據(jù)庫(kù)連接代碼。數(shù)據(jù)庫(kù)相關(guān)公用類(lèi):FFsystem.dbml實(shí)現(xiàn)與數(shù)據(jù)庫(kù)表的對(duì)應(yīng)操作。UserHelper.cs家庭用戶(hù)管理操作類(lèi)。SubItemHelper.cs資金類(lèi)型子類(lèi)操作類(lèi)。ParentItemhelper.cs資金類(lèi)型類(lèi)型操作類(lèi)。5.2用戶(hù)登錄模塊5.2.1設(shè)計(jì)功能用戶(hù)打開(kāi)家庭財(cái)務(wù)管理系統(tǒng)時(shí),必須以相應(yīng)身份登陸,保證數(shù)據(jù)的安全性和實(shí)用性。5.2.2用戶(hù)登錄流程圖用戶(hù)的登錄流程如圖5.1所示。進(jìn)入登錄界面后需要輸入用戶(hù)名和密碼,符合數(shù)據(jù)庫(kù)信息之后才能進(jìn)入用戶(hù)界面,否那么就會(huì)退到登錄界面。登錄界面登錄界面輸入用戶(hù)名、密碼輸入用戶(hù)名、密碼NN是否符合數(shù)據(jù)庫(kù)信息?YY進(jìn)入各用戶(hù)界面進(jìn)入各用戶(hù)界面圖5.1用戶(hù)登錄流程圖5.2.3功能實(shí)現(xiàn)所需主要代碼描述用來(lái)判斷用戶(hù)輸入的賬號(hào)和密碼能否和數(shù)據(jù)庫(kù)中存在的數(shù)據(jù)項(xiàng)匹配,如果不匹配就會(huì)有相應(yīng)的錯(cuò)誤提示,這局部代碼的主要局部,非空提示信息是靠控件RequiredFieldValidator來(lái)實(shí)現(xiàn),查詢(xún)出錯(cuò)信息提示使用js的彈出窗口。本功能首先定義了一個(gè)用戶(hù)信息的實(shí)體類(lèi)UserEntity存儲(chǔ)用戶(hù)的登陸相關(guān)信息。用戶(hù)查詢(xún)方法為UserHelper.getCurrentUser(userName),使用linq技術(shù)查找元數(shù)據(jù)定義文件。具體實(shí)現(xiàn)如下:stringusername=userName.ToString();try{//Linq,Lambda表達(dá)式FFsystemDataContextobjDataContext=newFFsystemDataContext();familyInformationobjFI=objDataContext.familyInformation.Single(p=>p.userName==username);UserEntityuser=newUserEntity();user.Name=objFI.userName;user.Password=objFI.userPassword;user.UserRight=objFI.class;returnuser;5.2.4登錄功能測(cè)試只有輸入正確的賬號(hào)和密碼時(shí)才會(huì)跳到主界面,輸入不完整、不輸入、輸入錯(cuò)誤都會(huì)有相應(yīng)的錯(cuò)誤提示,來(lái)提示用戶(hù)哪個(gè)環(huán)節(jié)出錯(cuò)。提示錯(cuò)誤信息有四個(gè)“用戶(hù)名不能為空〞,“密碼不能為空〞,“用戶(hù)名不存在〞,“密碼錯(cuò)誤〞。5.2.5代碼實(shí)現(xiàn)效果代碼最終的實(shí)現(xiàn)為倆個(gè)控件的反響如圖5.2所示。當(dāng)用戶(hù)名不存在和密碼錯(cuò)誤時(shí)顯示“用戶(hù)不存在〞和“密碼錯(cuò)誤〞。圖5.25.3賬簿管理模塊5.3.1設(shè)計(jì)功能收支項(xiàng)目進(jìn)展管理,新增、查看、刪除。除此之外還能對(duì)收支項(xiàng)目、收支日期、收支家庭成員、收支金額進(jìn)展排序,屢次點(diǎn)擊會(huì)有不同的排序結(jié)果。而且對(duì)單個(gè)項(xiàng)目有對(duì)應(yīng)的查看、修改、刪除功能。除了主要的設(shè)計(jì)是用代碼實(shí)現(xiàn),還有局部設(shè)計(jì)是用控件來(lái)實(shí)現(xiàn)的。5.3.2賬簿管理模塊流程圖賬簿管理的流程圖如圖5.3所示。進(jìn)入賬簿管理界面之后先確定該用戶(hù)是否為管理員,如果是那么能進(jìn)展與賬簿管理相關(guān)的操作,否那么只能瀏覽界面,不能做出修改。賬簿管理賬簿管理該用戶(hù)為管理員?該用戶(hù)為管理員?瀏覽界面N瀏覽界面NYY用戶(hù)界面用戶(hù)界面賬簿的新增賬簿的查找賬簿的刪除賬簿的新增賬簿的查找賬簿的刪除退出退出圖5.3賬簿管理模塊流程圖5.3.3功能實(shí)現(xiàn)所需主要代碼描述賬簿管理的主要包括一個(gè)含有導(dǎo)航的框架和gridview的列表控件。導(dǎo)航包含在index.aspx頁(yè)里,該頁(yè)面實(shí)現(xiàn)功能包括一個(gè)用戶(hù)非登陸驗(yàn)證和導(dǎo)航列表,用戶(hù)驗(yàn)證,賬簿管理的數(shù)據(jù)列表的實(shí)現(xiàn)使用gridview控件,包括跳轉(zhuǎn)查看詳細(xì)頁(yè)面、跳轉(zhuǎn)修改頁(yè)面、刪除按鈕、多列刪除、跳轉(zhuǎn)查找頁(yè)面、跳轉(zhuǎn)新增頁(yè)面。Gridview的數(shù)據(jù)源采用LinqDataSource,Gridview的多列刪除實(shí)現(xiàn)方法,點(diǎn)擊刪除按鈕遍歷gridview的每行數(shù)據(jù)取出該行中的checkbox是否選中,選中那么刪除。 查找功能的實(shí)現(xiàn)是用session結(jié)合LinqDataSource,每次數(shù)據(jù)綁定后使用以下代碼清空session,以便下次查詢(xún),代碼如下:protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){if(Session["Data"]!=null){LinqDataSource1.Selected+=newEventHandler<LinqDataSourceStatusEventArgs>(LinqDataSource1_Selected);}}}voidLinqDataSource1_Selected(objectsender,LinqDataSourceStatusEventArgse){Session["Data"]=null;Session["Data1"]=null;}新增的頁(yè)面主要包括一個(gè)聯(lián)動(dòng)的項(xiàng)目分類(lèi)和數(shù)據(jù)的添加。聯(lián)動(dòng)的項(xiàng)目分類(lèi)功能的實(shí)現(xiàn)是每當(dāng)更改了父類(lèi)項(xiàng)目都會(huì)根據(jù)選取的父類(lèi)編號(hào)選取子類(lèi)的容、并綁定數(shù)據(jù)到子類(lèi)項(xiàng)目下拉列表框,代碼如下:privateDataSetGetParentItem(){stringstrConnection=System.Web.Configuration.WebConfigurationManager.ConnectionStrings["FamilyFinanceSystemConnectionString"].ConnectionString;SqlConnectionconnection=newSqlConnection(strConnection);stringstrSql="selectparentIDasParentID,pItemNameasPItemNamefromrdParentItem";DataSetds=newDataSet();SqlDataAdapteradapter=newSqlDataAdapter(strSql,connection);adapter.Fill(ds);returnds;}privateDataSetGetSubItem(intparentID){stringstrConnection=System.Web.Configuration.WebConfigurationManager.ConnectionStrings["FamilyFinanceSystemConnectionString"].ConnectionString;SqlConnectionconnection=newSqlConnection(strConnection);stringstrSql="selectsubIdasSubID,sItemNameasSItemNamefromrdSubItemwhereparentID="+parentID.ToString().Trim();DataSetds=newDataSet();SqlDataAdapteradaper=newSqlDataAdapter(strSql,connection);adaper.Fill(ds);returnds;查看詳細(xì)信息的頁(yè)面,數(shù)據(jù)的查詢(xún)使用linq方法根據(jù)頁(yè)面?zhèn)鬟f的id值查詢(xún)響應(yīng)的數(shù)據(jù)庫(kù)信息。5.3.4控件的測(cè)試1〕賬簿管理界面是登陸進(jìn)入以后顯示的主界面,如果想進(jìn)展相關(guān)的操作就需點(diǎn)擊系統(tǒng)所給出的三個(gè)按鈕,分別為“新增〞、“刪除〞、“查找〞。當(dāng)點(diǎn)擊新增按鈕時(shí),跳到新增畫(huà)面,只有當(dāng)輸入正確且完整輸入所有的信息時(shí),才會(huì)正確錄入數(shù)據(jù),負(fù)責(zé)不予錄入。相關(guān)的提示信息為“收支日期未輸入〞、“收支金額未輸入〞、當(dāng)正確輸入時(shí),提示“新增成功〞,反之那么為“新增失敗〞。2〕“刪除〞按鈕是用來(lái)實(shí)現(xiàn)多個(gè)刪除的,當(dāng)選中數(shù)個(gè)項(xiàng)目進(jìn)展刪除時(shí),會(huì)有相關(guān)的提示“你確定要?jiǎng)h除嗎?〞。3〕“查找〞按鈕是用來(lái)按日期進(jìn)展查找的,只有當(dāng)所有的日期都輸入完整時(shí),才會(huì)出現(xiàn)正確的查找結(jié)果,不輸入或者輸入錯(cuò)誤都不能查找到結(jié)果。相關(guān)的提示信息為“不能為空〞。4〕單個(gè)項(xiàng)目的按鈕有對(duì)應(yīng)的“查看〞“修改〞“刪除〞,對(duì)“修改〞和“刪除〞進(jìn)展操作時(shí)有相關(guān)的提示信息,修改成功時(shí)顯示“修改成功〞,當(dāng)點(diǎn)擊刪除時(shí),顯示“你確定刪除嗎?〞。5〕每個(gè)項(xiàng)目名稱(chēng)都有對(duì)應(yīng)的排序,當(dāng)點(diǎn)擊項(xiàng)目總稱(chēng)時(shí),屢次點(diǎn)擊都會(huì)有相應(yīng)的排序變動(dòng)。5.4家庭成員管理模塊5.4.1設(shè)計(jì)功能對(duì)家庭成員信息進(jìn)展管理,新增,刪除。能對(duì)編號(hào)、、用戶(hù)名、密碼進(jìn)展排序,屢次點(diǎn)擊會(huì)有不同的排序結(jié)果。而且對(duì)單個(gè)項(xiàng)目有對(duì)應(yīng)的查看、修改、刪除功能。除了主要的設(shè)計(jì)是用代碼實(shí)現(xiàn),還有局部設(shè)計(jì)是用控件來(lái)實(shí)現(xiàn)的。5.4.2家庭成員管理模塊流程圖家庭成員管理模塊的流程圖如圖5.4所示。進(jìn)入家庭成員管理界面之后先確定該用戶(hù)是否為管理員,如果是那么能進(jìn)入用戶(hù)界面,然后進(jìn)展家庭用戶(hù)的新增和家庭成員的刪除。如果不是管理員,那么只能對(duì)該頁(yè)面進(jìn)展瀏覽不能進(jìn)展新增和刪除。家庭成員管理家庭成員管理該用戶(hù)為管理員?該用戶(hù)為管理員?瀏覽界面N瀏覽界面NYY用戶(hù)界面用戶(hù)界面家庭成員的新增家庭成員的刪除家庭成員的新增家庭成員的刪除退出退出圖5.4家庭成員管理模塊流程圖5.4.3功能所需主要代碼的描述該頁(yè)面包括多列刪除按鈕、跳轉(zhuǎn)查看詳細(xì)連接、跳轉(zhuǎn)更新頁(yè)面連接、刪除按鈕、新增按鈕、數(shù)據(jù)列表。數(shù)據(jù)列表使用gridview控件實(shí)現(xiàn),設(shè)置AllowSorting="True"屬性值可以使數(shù)據(jù)按列名排序,并使用linqdatasource作為數(shù)據(jù)源。多列刪除的功能實(shí)現(xiàn):protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse){FFsystemDataContextfm=newFFsystemDataContext();for(inti=0;i<GridView1.Rows.Count;i++){boolischeck=((CheckBox)GridView1.Rows[i].FindControl("chcSelect")).Checked;if(ischeck==true){familyInformationfamilyInformation=fm.familyInformation.Single(p=>p.systemId==(int)GridView1.DataKeys[i].Value);fm.familyInformation.DeleteOnSubmit(familyInformation);fm.SubmitChanges();}GridView1.DataBind();家庭成員的信息添加,根據(jù)用戶(hù)輸入的信息和用戶(hù)登錄的信息向數(shù)據(jù)表中插入數(shù)據(jù),聲明原數(shù)據(jù)familyInformation并把用戶(hù)輸入信息賦值在使用linq的InsertOnSubmit命令插入數(shù)據(jù):protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse){FFsystemDataContextdb=newFFsystemDataContext();familyInformationfm=newfamilyInformation();fm.userId=TextBox1.Text.Trim();fm.realName=TextBox2.Text.Trim();fm.userName=TextBox3.Text.Trim();fm.userPassword=TextBox4.Text.Trim();Session["userId"]=TextBox1.Text;Session["realName"]=TextBox2.Text;Session["userName"]=TextBox3.Text;db.familyInformation.InsertOnSubmit(fm);db.SubmitChanges();Response.Redirect("jtcygl.aspx");}家庭成員更新頁(yè)面的實(shí)現(xiàn),首先linq的single方法查詢(xún)處要更改的數(shù)據(jù)信息并綁定,用戶(hù)在此根底上更改數(shù)據(jù),最后在把更新后的數(shù)據(jù)回傳到數(shù)據(jù)庫(kù)中,更新拼寫(xiě)sql語(yǔ)句并使用SqlCommand的ExecuteNonQuery命令實(shí)現(xiàn):5.4.4控件的測(cè)試1〕家庭成員管理界面是登陸進(jìn)入以后顯示的第二個(gè)界面,如果想進(jìn)展相關(guān)的操作就需點(diǎn)擊系統(tǒng)所給出的兩個(gè)按鈕,分別為“新增〞、“刪除〞。當(dāng)點(diǎn)擊新增按鈕時(shí),跳到新增畫(huà)面,只有當(dāng)輸入正確且完整輸入所有的信息時(shí),才會(huì)正確錄入數(shù)據(jù),負(fù)責(zé)不予錄入。相關(guān)的提示信息為“不能為空〞、“密碼不能為空〞、“密碼不正確〞。當(dāng)正確輸入時(shí),提示“新增成功〞,反之那么為“新增失敗〞。2〕“刪除〞按鈕是用來(lái)實(shí)現(xiàn)多個(gè)刪除的,當(dāng)選中數(shù)個(gè)項(xiàng)目進(jìn)展刪除時(shí),會(huì)有相關(guān)的提示“你確定要?jiǎng)h除嗎?〞。3〕單個(gè)項(xiàng)目的按鈕有對(duì)應(yīng)的“查看〞“修改〞“刪除〞,對(duì)“修改〞和“刪除〞進(jìn)展操作時(shí)有相關(guān)的提示信息,修改成功時(shí)顯示“修改成功〞,當(dāng)點(diǎn)擊刪除時(shí),顯示“你確定刪除嗎?〞。4〕每個(gè)項(xiàng)目名稱(chēng)都有對(duì)應(yīng)的排序,當(dāng)點(diǎn)擊項(xiàng)目總稱(chēng)時(shí),屢次點(diǎn)擊都會(huì)有相應(yīng)的排序變動(dòng)。5.5銀行卡管理模塊5.5.1設(shè)計(jì)功能對(duì)銀行進(jìn)展管理;功能包括增加,刪除。能對(duì)卡號(hào)、卡名、開(kāi)戶(hù)銀行、所有人、是否可付款進(jìn)展排序,屢次點(diǎn)擊會(huì)有不同的排序結(jié)果。而且對(duì)單個(gè)項(xiàng)目有對(duì)應(yīng)的修改、刪除功能。除了主要的設(shè)計(jì)是用代碼實(shí)現(xiàn),還有局部設(shè)計(jì)是用控件來(lái)實(shí)現(xiàn)的。5.5.2銀行卡管理模塊流程圖銀行卡管理模塊的流程圖如圖5.5所示:進(jìn)入銀行卡管理界面之后先確定該用戶(hù)是否為管理員,如果是那么能進(jìn)入用戶(hù)界面,然后進(jìn)展銀行卡信息的新增和刪除。如果不是管理員,那么只能對(duì)該頁(yè)面進(jìn)展瀏覽不能進(jìn)展新增和刪除。銀行卡管理銀行卡管理該用戶(hù)為管理員?該用戶(hù)為管理員?瀏覽界面N瀏覽界面NYY用戶(hù)界面用戶(hù)界面銀行卡信息的新增銀行卡信息的刪除銀行卡信息的新增銀行卡信息的刪除退出退出圖5.5銀行卡管理模塊流程圖5.5.3功能實(shí)現(xiàn)所需主要代碼的描述銀行卡管理頁(yè)面包括多列刪除按鈕、刪除按鈕、跳轉(zhuǎn)更新頁(yè)面、新增按鈕、數(shù)據(jù)列表。銀行卡的多列刪除功能使用checkbox結(jié)合for循環(huán)來(lái)刪除所有選中的數(shù)據(jù):protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse){FFsystemDataContextfm=newFFsystemDataContext();for(inti=0;i<GridView1.Rows.Count;i++){if(((CheckBox)GridView1.Rows[i].FindControl("chcSelect")).Checked==true){bankcarkfamilyInformation=fm.bankcark.Single(p=>p.cardcode==GridView1.DataKeys[i].Value.ToString().Trim());fm.bankcark.DeleteOnSubmit(familyInformation);fm.SubmitChanges();}GridView1.DataBind();銀行卡刪除按鈕的實(shí)現(xiàn)是用linq的DeleteOnSubmit命令刪除點(diǎn)擊所在行的數(shù)據(jù):protectedvoidbtnDelete_Click(objectsender,ImageClickEventArgse){stringsystemid=((ImageButton)sender).CommandName;Finance.web.App_Data.FFsystemDataContextFsystemData=newFinance.web.App_Data.FFsystemDataContext();Finance.web.App_Data.bankcarkfamily=newFinance.web.App_Data.bankcark();family=FsystemData.bankcark.Single(p=>p.cardcode==systemid);FsystemData.bankcark.DeleteOnSubmit(family);FsystemData.SubmitChanges();FsystemData.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues,FsystemData.bankcark);GridView1.DataBind();}數(shù)據(jù)列表gridview的數(shù)據(jù)源LinqDataSource:<asp:LinqDataSourceID="LinqDataSource1"runat="server"ContextTypeName="Finance.web.App_Data.FFsystemDataContext"TableName="view_bank"EnableDelete="True"EnableInsert="True"EnableUpdate="True"></asp:LinqDataSource>銀行卡添加頁(yè)面根據(jù)用戶(hù)輸入的信息是用linq的InsertOnSubmit命令將用戶(hù)信息插入到數(shù)據(jù)表中,實(shí)現(xiàn)代碼如下:protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse){FFsystemDataContextdb=newFFsystemDataContext();bankcarkfm=newbankcark();fm.cardcode=TextBox1.Text.Trim();fm.cardname=TextBox2.Text.Trim();fm.cardbank=TextBox6.Text.Trim();fm.owner=Convert.ToInt32(DropDownList1.SelectedValue.ToString().Trim());fm.ispay=Convert.ToBoolean(DropDownList2.SelectedValue.ToString().Trim());fm.remark=TextBox5.Text.Trim();db.bankcark.InsertOnSubmit(fm);db.SubmitChanges();Response.Redirect("kgl.aspx");}在添加非空驗(yàn)證中使用了RequiredFieldValidator控件來(lái)驗(yàn)證空信息,其總ControlToValidate屬性是要驗(yàn)證的控件名稱(chēng),ErrorMessage屬性是錯(cuò)誤信息。銀行卡查看頁(yè)面,首先根據(jù)id讀取銀行卡信息并將信息綁定到頁(yè)面控件中,在用戶(hù)更新了數(shù)據(jù)后再更新,更新時(shí)先查找數(shù)據(jù)是否存在,假設(shè)數(shù)據(jù)存在那么刪除元記錄在添加新記錄。if(!IsPostBack)用來(lái)判斷頁(yè)面是否首次加載。5.5.4控件的測(cè)試1〕銀行卡管理界面是登陸進(jìn)入以后顯示的第三個(gè)界面,如果想進(jìn)展相關(guān)的操作就需點(diǎn)擊系統(tǒng)所給出的兩個(gè)按鈕,分別為“新增〞、“刪除〞。當(dāng)點(diǎn)擊新增按鈕時(shí),跳到新增畫(huà)面,只有當(dāng)輸入正確且完整輸入所有的信息時(shí),才會(huì)正確錄入數(shù)據(jù),負(fù)責(zé)不予錄入。相關(guān)的提示信息為“不能為空〞。當(dāng)正確輸入時(shí),提示“新增成功〞,反之那么為“新增失敗〞。2〕刪除〞按鈕是用來(lái)實(shí)現(xiàn)多個(gè)刪除的,當(dāng)選中數(shù)個(gè)項(xiàng)目進(jìn)展刪除時(shí),會(huì)有相關(guān)的提示“你確定要?jiǎng)h除嗎?〞。3〕單個(gè)項(xiàng)目的按鈕有對(duì)應(yīng)的“修改〞“刪除〞,對(duì)“修改〞和“刪除〞進(jìn)展操作時(shí)有相關(guān)的提示信息,修改成功時(shí)顯示“修改成功〞,當(dāng)點(diǎn)擊刪除時(shí),顯示“你確定刪除嗎?〞。4〕每個(gè)項(xiàng)目名稱(chēng)都有對(duì)應(yīng)的排序,當(dāng)點(diǎn)擊項(xiàng)目總稱(chēng)時(shí),屢次點(diǎn)擊都會(huì)有相應(yīng)的排序變動(dòng)。5.6收支項(xiàng)目管理模塊5.6.1設(shè)計(jì)功能管理財(cái)務(wù)類(lèi)型,增加刪除財(cái)務(wù)類(lèi)型,與詳細(xì)財(cái)務(wù)類(lèi)型。能對(duì)編號(hào)、項(xiàng)目名稱(chēng)、收入\支出進(jìn)展排序,屢次點(diǎn)擊會(huì)有不同的排序結(jié)果。而且對(duì)單個(gè)項(xiàng)目有對(duì)應(yīng)的查看、刪除功能。除了主要的設(shè)計(jì)是用代碼實(shí)現(xiàn),還有局部設(shè)計(jì)是靠控件來(lái)實(shí)現(xiàn)。5.6.2收支項(xiàng)目管理模塊流程圖收支項(xiàng)目管理模塊的流程圖如圖5.6所示。進(jìn)入收支項(xiàng)目管理界面之后先確定該用戶(hù)是否為管理員,如果是那么能進(jìn)入用戶(hù)界面,然后進(jìn)展收支項(xiàng)目的新增和刪除。如果不是管理員,那么只能對(duì)該頁(yè)面進(jìn)展瀏覽不能進(jìn)展新增和刪除。圖5.6收支項(xiàng)目管理模塊流程圖5.6.3功能實(shí)現(xiàn)所需主要代碼的描述收支管理的數(shù)據(jù)列表的實(shí)現(xiàn)使用gridview控件,包括跳轉(zhuǎn)查看詳細(xì)頁(yè)面、跳轉(zhuǎn)修改頁(yè)面、刪除按鈕、多列刪除、跳轉(zhuǎn)查找頁(yè)面、跳轉(zhuǎn)新增頁(yè)面。protectedvoidImageButton1_Click(objectsender,ImageClickEventArgse){Response.Redirect("szxmgl_add.aspx");}protectedvoidcheckbox1_CheckedChanged(objectsender,EventArgse){for(inti=0;i<GridView1.Rows.Count;i++){((CheckBox)GridView1.Rows[i].FindControl("CheckBox2")).Checked=((CheckBox)sender).Checked;protectedvoidImageButton3_Click(objectsender,ImageClickEventArgse){FFsystemDataContextfm=newFFsystemDataContext();for(inti=0;i<GridView1.Rows.Count;i++){if(((CheckBox)GridView1.Rows[i].FindControl("checkbox2")).Checked==true){rdSubItemrd=fm.rdSubItem.Single(p=>p.subId==(int)(GridView1.DataKeys[i].Value));fm.rdSubItem.DeleteOnSubmit(rd);fm.SubmitChanges();}}GridView1.DataBind();}protectedvoidbtndelete_Click(objectsender,ImageClickEventArgse){FFsystemDataContextfm=newFFsystemDataContext();rdSubItemrd=fm.rdSubItem.Single(p=>p.subId==int.Parse(((ImageButton)sender).CommandName));fm.rdSubItem.DeleteOnSubmit(rd);fm.SubmitChanges();GridView1.DataBind();5.6.4控件的測(cè)試1〕收支項(xiàng)目管理界面是登陸進(jìn)入以后顯示的第四個(gè)界面,如果想進(jìn)展相關(guān)的操作就需點(diǎn)擊系統(tǒng)所給出的三個(gè)按鈕,分別為“新增父項(xiàng)〞、“新增子項(xiàng)〞。當(dāng)點(diǎn)擊新增按鈕時(shí),跳到新增畫(huà)面,只有當(dāng)輸入正確且完整輸入所有的信息時(shí),才會(huì)正確錄入數(shù)據(jù),負(fù)責(zé)不予錄入。相關(guān)的提示信息為“不能為空〞。當(dāng)正確輸入時(shí),提示“新增成功〞,反之那么為“新增失敗〞。2〕“刪除〞按鈕是用來(lái)實(shí)現(xiàn)多個(gè)刪除的,當(dāng)選中數(shù)個(gè)項(xiàng)目進(jìn)展刪除時(shí),會(huì)有相關(guān)的提示“你確定要?jiǎng)h除嗎?〞。3〕單個(gè)項(xiàng)目的按鈕有對(duì)應(yīng)的“修改〞“刪除〞,對(duì)“修改〞和“刪除〞進(jìn)展操作時(shí)有相關(guān)的提示信息,修改成功時(shí)顯示“修改成功〞,當(dāng)點(diǎn)擊刪除時(shí),顯示“你確定刪除嗎?〞。4〕每個(gè)項(xiàng)目名稱(chēng)都有對(duì)應(yīng)的排序,當(dāng)點(diǎn)擊項(xiàng)目總稱(chēng)時(shí),屢次點(diǎn)擊都會(huì)有相應(yīng)的排序變動(dòng)。5.7預(yù)算管理模塊5.7.1設(shè)計(jì)功能對(duì)家庭所需購(gòu)置物品進(jìn)展預(yù)先評(píng)價(jià),在實(shí)際購(gòu)得該物品后再進(jìn)展添加。5.7.2預(yù)算管理模塊的流程圖預(yù)算管理模塊的流程圖如圖5.7所示:進(jìn)入預(yù)算管理界面之后先確定該用戶(hù)是否為管理員,如果是那么能進(jìn)入用戶(hù)界面,然后進(jìn)展預(yù)算的新增和刪除。如果不是管理員,那么只能對(duì)該頁(yè)面進(jìn)展瀏覽不能進(jìn)展新增和刪除。預(yù)算管理預(yù)算管理該用戶(hù)為管理員?該用戶(hù)為管理員?瀏覽界面N瀏覽界面NYY用戶(hù)界面用戶(hù)界面預(yù)算的新增預(yù)算的刪除預(yù)算的新增預(yù)算的刪除退出退出圖5.7預(yù)算管理模塊流程圖5.7.3功能實(shí)現(xiàn)所需主要代碼的描述預(yù)算管理設(shè)計(jì)包含的功能預(yù)算信息列表、預(yù)算信息修改、預(yù)算信息刪除、新增按鈕、多列刪除。預(yù)算信息列表是用控件gridview綁定數(shù)據(jù)源LinqDataSource:<asp:LinqDataSourceID="LinqDataSource1"runat="server"ContextTypeName="Finance.web.App_Data.FFsystemDataContext"TableName="view_plan"EnableDelete="True"EnableInsert="True"EnableUpdate="True"></asp:LinqDataSource>預(yù)算信息刪除通過(guò)gridview控件自帶刪除功能實(shí)現(xiàn),具體先通過(guò)linq的single取得當(dāng)前點(diǎn)擊行的plantable信息,在使用deleteonsubmit命令刪除匹配的數(shù)據(jù)。多列刪除功能的實(shí)現(xiàn)是在單列刪除根底上,利用checkbox控件結(jié)合for循環(huán)逐一刪除選中的數(shù)據(jù):FFsystemDataContextfm=newFFsystemDataContext();for(inti=0;i<GridView1.Rows.Count;i++){if(((CheckBox)GridView1.Rows[i].FindControl("chcSelect")).Checked=true){bankcarkfamilyInformation=fm.bankcark.Single(p=>p.cardcode==GridView1.DataKeys[i].Value.ToString().Trim());fm.bankcark.DeleteOnSubmit(familyInformation);fm.SubmitChanges();預(yù)算信息的添加,將用戶(hù)填寫(xiě)信息寫(xiě)到plantable的類(lèi)中,通過(guò)InsertOnSubmit命令插入一條新的數(shù)據(jù)到數(shù)據(jù)表中:FFsystemDataContextdb=newFFsystemDataContext();Convert.ToDateTime(this.TxtStartDate.Text.Trim());fm.premoney=Convert.ToInt32(this.TextBox2.Text.Trim());fm.sysid=Convert.ToInt32(inpno.Value);db.plantable.InsertOnSubmit(fm);db.SubmitChanges();////跳轉(zhuǎn)頁(yè)面Response.Redirect("ysgl.aspx");5.7.4控件的測(cè)試1〕家庭預(yù)算管理界面是登陸進(jìn)入以后顯示的第五個(gè)界面,如果想進(jìn)展相關(guān)的操作就需點(diǎn)擊系統(tǒng)所給出的兩個(gè)按鈕,分別為“新增〞、“刪除〞。當(dāng)點(diǎn)擊新增按鈕時(shí),跳到新增畫(huà)面,只有當(dāng)輸入正確且完整輸入所有的信息時(shí),才會(huì)正確錄入數(shù)據(jù),負(fù)責(zé)不予錄入。相關(guān)的提示信息為“不能為空〞。當(dāng)正確輸入時(shí),提示“新增成功〞,反之那么為“新增失敗〞。2〕“刪除〞按鈕是用來(lái)實(shí)現(xiàn)多個(gè)刪除的,當(dāng)選中數(shù)個(gè)項(xiàng)目進(jìn)展刪除時(shí),會(huì)有相關(guān)的提示“你確定要?jiǎng)h除嗎?〞。3〕單個(gè)項(xiàng)目的按鈕有對(duì)應(yīng)的“修改〞“刪除〞,對(duì)“修改〞和“刪除〞進(jìn)展操作時(shí)有相關(guān)的提示信息,修改成功時(shí)顯示“修改成功〞
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年燈用插座轉(zhuǎn)換器行業(yè)深度研究分析報(bào)告
- 2025年度綠色農(nóng)業(yè)技術(shù)引進(jìn)與應(yīng)用推廣合同4篇
- 2024年黃浦區(qū)精神衛(wèi)生中心高層次衛(wèi)技人才招聘筆試歷年參考題庫(kù)頻考點(diǎn)附帶答案
- 2025年度環(huán)保設(shè)備租賃合同中產(chǎn)品質(zhì)量保障及售后服務(wù)協(xié)議4篇
- 2025年檢偽點(diǎn)鈔機(jī)行業(yè)深度研究分析報(bào)告
- 2025年度特殊環(huán)境門(mén)窗安裝與防腐蝕合同4篇
- 土木工程2025年度鋼材采購(gòu)合同標(biāo)的明細(xì)2篇
- 二零二五年度大學(xué)生藝術(shù)培養(yǎng)借款合同4篇
- 二零二五年度智能家居窗簾智能控制系統(tǒng)采購(gòu)合同4篇
- 二零二五年度苗圃基地技術(shù)員績(jī)效管理與服務(wù)合同4篇
- 領(lǐng)導(dǎo)溝通的藝術(shù)
- 發(fā)生用藥錯(cuò)誤應(yīng)急預(yù)案
- 南潯至臨安公路(南潯至練市段)公路工程環(huán)境影響報(bào)告
- 綠色貸款培訓(xùn)課件
- 大學(xué)生預(yù)征對(duì)象登記表(樣表)
- 主管部門(mén)審核意見(jiàn)三篇
- 初中數(shù)學(xué)校本教材(完整版)
- 父母教育方式對(duì)幼兒社會(huì)性發(fā)展影響的研究
- 新課標(biāo)人教版數(shù)學(xué)三年級(jí)上冊(cè)第八單元《分?jǐn)?shù)的初步認(rèn)識(shí)》教材解讀
- (人教版2019)數(shù)學(xué)必修第一冊(cè) 第三章 函數(shù)的概念與性質(zhì) 復(fù)習(xí)課件
- 重慶市銅梁區(qū)2024屆數(shù)學(xué)八上期末檢測(cè)試題含解析
評(píng)論
0/150
提交評(píng)論