版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
目錄1引言 21.1論文背景 21.1.1國外企業(yè)財務(wù)軟件發(fā)展狀況 21.1.2我國企業(yè)財務(wù)軟件現(xiàn)狀 21.1.3國外財務(wù)軟件和國內(nèi)財務(wù)軟件的異同 41.2本文要解決的問題 52開發(fā)環(huán)境 62.1開發(fā)工具簡介 62.2java簡介 72.3B/S模式簡介 82.3.1B/S模式的優(yōu)點 82.3.2B/S模式的缺點 92.4spring,springMVC技術(shù) 92.5數(shù)據(jù)庫開發(fā)工具選擇 93需求分析 103.1可行性研究 103.1.1技術(shù)可行性 103.1.2經(jīng)濟可行性 103.1.3管理可行性 113.1.4開發(fā)環(huán)境可行性 113.2系統(tǒng)功能需求分析 113.2.1公司財務(wù)管理系統(tǒng)功能概述 113.2.2系統(tǒng)流程圖 124系統(tǒng)總體設(shè)計 144.1功能設(shè)計 144.1.1主要功能模塊結(jié)構(gòu) 144.1.2子功能模塊結(jié)構(gòu)圖 144.2數(shù)據(jù)庫設(shè)計 174.2.1主要功能模塊結(jié)構(gòu) 174.2.2數(shù)據(jù)庫概念設(shè)計 174.2.3數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計 185系統(tǒng)詳細設(shè)計與實現(xiàn) 245.1Spring配置設(shè)計 245.2主體界面設(shè)計與實現(xiàn) 255.2.1主體設(shè)計與實現(xiàn) 255.2.2主體界面代碼設(shè)計與實現(xiàn) 25主頁面包含的頭部和左部頁面。 255.3系統(tǒng)登錄模塊設(shè)計與實現(xiàn) 265.3.1登錄窗體設(shè)計 265.3.2登錄模塊代碼設(shè)計 265.4憑證管理模塊設(shè)計與實現(xiàn) 275.4.1憑證錄入設(shè)計與實現(xiàn) 275.4.2憑證錄入代碼設(shè)計與實現(xiàn) 275.5工資管理模塊設(shè)計與實現(xiàn) 285.5.1工資發(fā)放管理設(shè)計與實現(xiàn) 285.5.2工資發(fā)放代碼設(shè)計與實現(xiàn) 295.6賬簿管理模塊設(shè)計與實現(xiàn) 305.6.1分類總賬簿設(shè)計與實現(xiàn) 305.6.2總分類賬簿代碼設(shè)計與實現(xiàn) 305.7固定資產(chǎn)管理模塊設(shè)計與實現(xiàn) 315.7.1固定資產(chǎn)維護設(shè)計與實現(xiàn) 315.7.2固定資產(chǎn)代碼設(shè)計與實現(xiàn) 326總結(jié) 33參考文獻 34致謝 35附錄 36
1引言1.1論文背景1.1.1國外企業(yè)財務(wù)軟件發(fā)展狀況從90年代中后期開始,各國企業(yè)廣泛關(guān)注進入市場的時間、產(chǎn)品的質(zhì)量、服務(wù)的水平和運營成本的降低,并且為適應(yīng)市場全球化要求,組織結(jié)構(gòu)和投資結(jié)構(gòu)也趨向于分布式和扁平化。企業(yè)家們意識到,企業(yè)不僅需要合理規(guī)劃和運用自身各項資源,還需將經(jīng)營環(huán)境的各方面,如客戶、供應(yīng)商、分銷商和代理網(wǎng)絡(luò)、各地制造工廠和庫存等的經(jīng)營資源緊密結(jié)合起來,形成供應(yīng)鏈,并準確及時地反映各方的動態(tài)信息,監(jiān)控經(jīng)營成本和資金流向,提高企業(yè)對市場反應(yīng)的靈活性和財務(wù)效率。與此相對應(yīng),一方面企業(yè)開始重組組織結(jié)構(gòu)和管理模式即所謂業(yè)務(wù)流程重組(BPR);另一方面重視利用先進信息技術(shù)的促進作用,在MRPII的基礎(chǔ)上,實施ERP系統(tǒng),以求更有效地支持新的供應(yīng)鏈和戰(zhàn)略決策。可以說,供應(yīng)鏈的概念和集成的財務(wù)管理是ERP對傳統(tǒng)的MRPII進行改造和超越的兩大核心[3]。這種趨勢對財務(wù)管理系統(tǒng)的挑戰(zhàn)則體現(xiàn)在,對全球市場信息的快速反饋,在降低各類經(jīng)營成本和縮短產(chǎn)品進入市場的周期間尋求平衡,提高對企業(yè)內(nèi)部其他部門和外部組織的財務(wù)管理水平,提供更豐富的戰(zhàn)略性財務(wù)信息,更強的財務(wù)分析和決策支持能力。傳統(tǒng)的會計信息系統(tǒng),包括MRPII中的會計和財務(wù)模塊,主要的特點是用于事后收集和反映會計數(shù)據(jù),在管理控制和決策支持方面的功能相對較弱。另外,系統(tǒng)的信息處理一般都是對手工會計職能的自動化,系統(tǒng)的結(jié)構(gòu)是面向任務(wù)和職能的,這對滿足會計核算的要求來說已經(jīng)足夠,但在業(yè)務(wù)流程的監(jiān)控和與其他系統(tǒng)的集成性上還需要加以完善[2]。1.1.2我國企業(yè)財務(wù)軟件現(xiàn)狀1、財務(wù)管理軟件的發(fā)展過程財務(wù)軟件伴隨著信息技術(shù)的發(fā)展以及管理思想的不斷創(chuàng)新而不斷發(fā)展,利用計算機及網(wǎng)絡(luò)加強與拓展傳統(tǒng)財務(wù)信息系統(tǒng)的職能進入了一個加速階段。從最初的DOS平臺到Windows、Unix平臺,數(shù)據(jù)庫從dbase、foxPro再到SQLServer、Sybase、Oracle等大型數(shù)據(jù)庫,系統(tǒng)結(jié)構(gòu)也基本上建立在C/S甚至B/S結(jié)構(gòu)上。借助于大型數(shù)據(jù)庫系統(tǒng)的管理分析功能,財務(wù)管理軟件在向更強的分析功能發(fā)展,也有的在向支持企業(yè)管理的方向發(fā)展,演變成ERP管理軟件。財務(wù)軟件從最初到當今經(jīng)歷了5個時期哺[5][7]:(1)單項型財務(wù)軟件(1922年以前)該階段的財務(wù)軟件基本上是運行在DOS操作平臺的單項型財務(wù)軟件,在功能上僅僅是完成一個獨立的財務(wù)處理工作。本階段財務(wù)軟件的特點為:以電算化完成簡單的核算工作,減輕會計人員勞動強度,電算的準確性避免了人工計算的錯誤,提高工作質(zhì)量,典型軟件如:安易、先鋒、金蜘蛛等。(2)基于LAN(局域網(wǎng))的核算型財務(wù)軟件(1993-1993年)該階段的財務(wù)軟件是基于LAN的核算型軟件,應(yīng)用范圍從單機模式擴展到具有一定數(shù)據(jù)共享能力的小型局域網(wǎng)的應(yīng)用,仍然是局限于事后的核算,與企業(yè)的管理嚴重脫鉤。本階段財務(wù)軟件的特點為:以財務(wù)管理為指導(dǎo),實現(xiàn)了“資金流“等諸多以財務(wù)管理為核心的關(guān)聯(lián)性應(yīng)用,完成財務(wù)人員將財務(wù)工作的重心從底層核算提升到以管理為目的的管理核算;典型軟件如:用友、金蝶、安易、萬能等。(3)管理型財務(wù)軟件(1998-2001)該階段的財務(wù)軟件采用C/S(客戶機/服務(wù)器)計算模式,開始涉及企業(yè)的管理內(nèi)容,如財務(wù)分析、財務(wù)預(yù)測、財務(wù)控制等,因此稱為管理型財務(wù)軟件。本階段財務(wù)軟件典型特點為:實現(xiàn)網(wǎng)絡(luò)信息流管,支持戰(zhàn)略決策,成為電子商務(wù)發(fā)展的推動力量,典型軟件如:用友、金蝶、新中大、金算盤等。(4)第四代財務(wù)軟件(2002-2005)隨著Internet的日益普及與電子商務(wù)的發(fā)展,企業(yè)對財務(wù)管理系統(tǒng)提出更高的要求,第四代財務(wù)軟件是基于Internet的B/S(瀏覽器/服務(wù)器)計算模式,采用Web技術(shù)、多媒體技術(shù)和Internet的管理軟件,符合企業(yè)經(jīng)營方式向電子商務(wù)發(fā)展的戰(zhàn)略,是國際財務(wù)管理軟件技術(shù)發(fā)展的主流趨勢。本階段財務(wù)軟件的特點為:財務(wù)軟件成功融入業(yè)務(wù)流,實現(xiàn)業(yè)務(wù)管理、財務(wù)管理以及涉及財務(wù)外延性的人力資源管理、客戶關(guān)系管理、OA門戶等財務(wù)業(yè)務(wù)協(xié)同化管理的整合;典型軟件如:用友、金蝶、浪潮、SAP、Oracle等。(5)智能分析型財務(wù)管理系統(tǒng),也稱第五代財務(wù)軟件(2006年以后),是財務(wù)管理軟件的重要發(fā)展方向。財務(wù)數(shù)據(jù)是企業(yè)管理中最重要的經(jīng)濟數(shù)據(jù),是企業(yè)決策者必須關(guān)注的數(shù)據(jù)。由于財務(wù)數(shù)據(jù)的復(fù)雜性,在沒有財務(wù)管理系統(tǒng)的時代,決策者更多的是看到當前月份或年度的財務(wù)數(shù)據(jù),而深入的財務(wù)分析往往難于實現(xiàn)。在財務(wù)管理系統(tǒng)基礎(chǔ)上,繼續(xù)發(fā)展能夠自動進行財務(wù)分析的管理系統(tǒng),主要功能是支持數(shù)據(jù)庫的應(yīng)用,實現(xiàn)OLAP智能數(shù)據(jù)挖掘分析,以及提供更細致的財務(wù)報表,支持進行財務(wù)狀況、損益和現(xiàn)金流量的結(jié)構(gòu)分析、比較分析和趨勢分析等主要財務(wù)指標的分析功能。本階段財務(wù)軟件的特點為:將業(yè)務(wù)、財務(wù)、稅務(wù)三位一體,信息共享,輕松實現(xiàn)從業(yè)務(wù)到財務(wù)到稅務(wù)的一體化信息流轉(zhuǎn),完成企業(yè)管理的終極應(yīng)用,使企業(yè)實現(xiàn)真正的完全信息化財稅協(xié)同已成主流方向,成為財務(wù)軟件發(fā)展大趨勢。1.1.3國外財務(wù)軟件和國內(nèi)財務(wù)軟件的異同(1)軟件設(shè)計時所面對的應(yīng)用單位的管理體制與模式不同:國外財務(wù)軟件一般是針對市場經(jīng)濟條件下私有制企業(yè)的管理要求,遵照國際會計準則設(shè)計的。宏觀上符合國際會計準則,微觀上注重企業(yè)的全面計劃(PLAN)與控制(STROL)強調(diào)企業(yè)資源的充分利用和管理的科學(xué)、規(guī)范與及時。相對來說,國外財務(wù)軟件比較適合那些市場經(jīng)濟高度發(fā)達,完全依照市場經(jīng)濟規(guī)則辦事的國家(或地區(qū))的企業(yè)使用。國內(nèi)財務(wù)軟件基本上是針對有計劃商品經(jīng)濟條件下,公有制企業(yè)的管理要求:遵照我國有關(guān)政策、制度設(shè)計,宏觀上既要遵照我國《企業(yè)會計準則》,還要符合各行業(yè)會計制度的要求,微觀上首先考慮減輕會計人員繁重的手工勞動,做到各項核算及時、準確,其業(yè)務(wù)處理要求與手工工作方式相一致。相對來說,國內(nèi)財務(wù)軟件比較符合我國現(xiàn)行經(jīng)濟管理制度的要求,與應(yīng)用單位的管理和應(yīng)用水平基本一致[3]。(2)系統(tǒng)范圍不同:國外財務(wù)軟件包括賬務(wù)處理(或總賬)系統(tǒng)、工資管理系統(tǒng)、固定資產(chǎn),折舊系統(tǒng)、應(yīng)付賬款系統(tǒng)、應(yīng)收賬款系統(tǒng)五個模塊。國內(nèi)財務(wù)軟件包括賬務(wù)處理(或總賬)系統(tǒng)、工資管理系統(tǒng)、因定資產(chǎn),折舊系統(tǒng)、存貨,材料、產(chǎn)成品、庫存商品,管理系統(tǒng)、采購管理系統(tǒng)、銷售管理系統(tǒng)、成本核算系統(tǒng)、應(yīng)收(應(yīng)付)賬款系統(tǒng)(一般由賬務(wù)處理系統(tǒng)的往來賬管理模塊替代)等。(3)軟件體系結(jié)構(gòu)不同:國外財務(wù)軟件是企業(yè)管理信息系統(tǒng)的一部分,不是作為一個專門系統(tǒng)開發(fā)的,它與企業(yè)的配銷系統(tǒng)和生產(chǎn)系統(tǒng)之間的聯(lián)系相當緊密。國內(nèi)財務(wù)軟件則與企業(yè)的其它業(yè)務(wù)系統(tǒng)相對獨立,基本上作為一個獨立的專門系統(tǒng)在發(fā)展。(4)漢字適配的方式與方法不同:國外軟件是通過漢化后在國內(nèi)推廣,一般來說適配的漢字系統(tǒng)較少。不同的廠家,其財務(wù)軟件漢化程度不一樣,大多數(shù)國外財務(wù)軟件只是作了部分內(nèi)容的漢化,如菜單、功能鍵說明等。國內(nèi)財務(wù)軟件是在漢字環(huán)境下開發(fā)的,無論是菜單、功能鍵說明,還是幫助功能中的實例都是中文顯示,比較符合中國人的使用習(xí)慣。(5)實用性方面:國外財務(wù)軟件較國內(nèi)財務(wù)軟件差。因為國外財務(wù)軟件一般為全球推廣軟件,結(jié)構(gòu)基本定型,難以針對某一國家或地區(qū)的用戶要求進行改進,用戶只能通過編程開發(fā)來滿足自己的使用要求,國內(nèi)財務(wù)軟件一般是根據(jù)我國用戶的實際需要開發(fā)的,特別考慮了我國財務(wù)人員的實際應(yīng)用水平。一般不須進行二次編程就能滿足用戶要求,且易學(xué)易用。(6)國際事務(wù)處理能力方面:國外財務(wù)軟件一般具有多國語言和多種貨幣處理能力,在會計核算和財務(wù)管理方面比較符合國際慣例和國際會計準則;而國內(nèi)財務(wù)軟件只符合我國《企業(yè)會計準則》及其配套的行業(yè)會計制度,少數(shù)公司的產(chǎn)品可以做到部分中英文對照。它只能在國內(nèi)企業(yè)(包括國外的中國企業(yè)和國內(nèi)三資企業(yè))中使用,不能處理國際事務(wù)。預(yù)計國內(nèi)財務(wù)軟件發(fā)展有以下幾個趨勢,由單一的面向中小型企業(yè)的軟件包向軟件包和面向大型企業(yè)的管理軟件相,結(jié)合的方向發(fā)展,由DOS技術(shù)平臺向WINDOW技術(shù)平臺發(fā)展,由PC數(shù)據(jù)庫向大型工程數(shù)據(jù)庫發(fā)展,網(wǎng)絡(luò)方式向客戶機/服務(wù)器方式發(fā)展[9][10]。1.2本文要解決的問題開發(fā)所需要的功能,包括憑證管理、帳簿管理、工資管理、固定資產(chǎn)管理和等,使用B/S架構(gòu)進行開發(fā)。
2開發(fā)環(huán)境在系統(tǒng)的開發(fā)工程中,運用面向?qū)ο蟮拈_發(fā)語言JAVA,系統(tǒng)采用B/S結(jié)構(gòu),使用spring+springMVC+mybatis+velocity開發(fā)框架,數(shù)據(jù)庫采用MYSQL。2.1開發(fā)工具簡介本系統(tǒng)的開發(fā)環(huán)境是IntelliJIDEA10.5,使用的語言是JAVA語言。IntelliJIDEA10.5是一款綜合的Java編程環(huán)境,被許多開發(fā)人員和行業(yè)專家譽為市場上最好的IDE。它提供了一系列最實用的的工具組合:智能編碼輔助和自動控制,支持J2EE,Ant,JUnit和CVS集成,非平行的編碼檢查和創(chuàng)新的GUI設(shè)計器。IDEA把Java開發(fā)人員從一些耗時的常規(guī)工作中解放出來,顯著地提高了開發(fā)效率。具有運行更快速,生成更好的代碼;持續(xù)的重新設(shè)計和日常編碼變得更加簡易,與其它工具的完美集成;很高的性價比等特點。在4.0版本中支持Generics,BEAWebLogic集成,改良的CVS集成以及GUI設(shè)計器。IntelliJIDEA能盡可能地促進程序員的編程速度。它包括了很多輔助的功能,并且與Java結(jié)合得相當好。不同的工具窗口圍繞在主編程窗口周圍,當鼠標點到時即可打開,無用時也可輕松關(guān)閉,使用戶得到了最大化的有效屏幕范圍。以技術(shù)為導(dǎo)向的IDEA集成了調(diào)試器,支持本地和遠程的調(diào)試,即使我們需要修改一些設(shè)置上的東西使我們的工作順利進展。另外,它還提供了通常的監(jiān)視,分步調(diào)試以及手動設(shè)置斷點功能,在這種斷點模式下,我們可以自動地在斷點之外設(shè)置現(xiàn)場訪問,甚至可以瀏覽不同的變量的值。IDE支持多重的JVM設(shè)置,幾個編譯程序和Ant建造系統(tǒng),并且,它使得設(shè)置多重的自定義的類途徑變得簡單。IntelliJIDEA是一個相對較新的JavaIDE。它是Java開發(fā)環(huán)境中最為有用的一個。高度優(yōu)化的IntelleJIdea使普通任務(wù)變得相當容易,Idea支持很多整合功能,更重要的使它們設(shè)計的好容易使用。Idea支持XML中的代碼實現(xiàn),Idea同時還會校正XML,Idea支持JSP的結(jié)構(gòu)。作用于普通Java代碼的眾多功能同樣適用于JSP(比如整合功能),同時支持JSP調(diào)試;支持EJB,盡管它不包括對個別應(yīng)用服務(wù)器的特殊支持。Idea支持Ant建立工具,不僅是運行目標它還支持編譯與運行程序前后運行目標,另外也支持綁定鍵盤快捷鍵。在編輯一個Ant建立XML文件時,Idea還對組成Ant工程的XML部分提供支持。IntelliJIDEA被稱為是最好的JAVAIDE開發(fā)平臺,這套軟件就是以其聰明的即時分析和方便的refactoring功能深獲大家所喜愛。缺點是較復(fù)雜,對初學(xué)者來說,理解起來比較困難。2.2java簡介它最初被命名為Oak,目標設(shè)定在家用電器等小型系統(tǒng)的編程語言,來解決諸如電視機、電話、鬧鐘、烤面包機等家用電器的控制和通訊問題。由于這些智能化家電的市場需求沒有預(yù)期的高,Sun放棄了該項計劃。就在Oak幾近失敗之時,隨著互聯(lián)網(wǎng)的發(fā)展,Sun看到了Oak在計算機網(wǎng)絡(luò)上的廣闊應(yīng)用前景。于是改造了Oak,以“Java”的名稱正式發(fā)布。
Java編程語言的風(fēng)格十分接近C、C++語言。Java是一個純的面向?qū)ο蟮某绦蛟O(shè)計語言,它繼承了C++語言面向?qū)ο蠹夹g(shù)的核心。Java舍棄了C++語言中容易引起錯誤的指針(以引用取代)、運算符重載(operatoroverloading)、多重繼承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的對象所占據(jù)的內(nèi)存空間,使得程序員不用再為內(nèi)存管理而擔憂。在JavaSE1.5版本中,Java又引入了泛型編程(GenericProgramming)、類型安全的枚舉、不定長參數(shù)和自動裝/拆箱等語言特性。Java不同于一般的編譯執(zhí)行計算機語言和解釋執(zhí)行計算機語言。它首先將源代碼編譯成二進制字節(jié)碼(bytecode),然后依賴各種不同平臺上的虛擬機來解釋執(zhí)行字節(jié)碼。從而實現(xiàn)了“一次編譯、到處執(zhí)行”的跨平臺特性。不過,每次的編譯執(zhí)行需要消耗一定的時間,這同時也在一定程度上降低了Java程序的運行效率。但在J2SE1.4.2發(fā)布后,Java的執(zhí)行速度有了大幅提升。與傳統(tǒng)程序不同,Sun公司在推出Java之際就將其作為一種開放的技術(shù)。全球數(shù)以萬計的Java開發(fā)公司被要求所設(shè)計的Java軟件必須相互兼容?!癑ava語言靠群體的力量而非公司的力量”是Sun公司的口號之一,并獲得了廣大軟件開發(fā)商的認同。這與微軟公司所倡導(dǎo)的注重精英和封閉式的模式完全不同。Sun公司對Java編程語言的解釋是:Java編程語言是個簡單、面向?qū)ο?、分布式、解釋性、健壯、安全與系統(tǒng)無關(guān)、可移植、高性能、多線程和動態(tài)的語言。Java平臺是基于Java語言的平臺。這樣的平臺目前非常流行。因此微軟公司推出了與之競爭的.NET平臺以及模仿Java的C#語言[8]。2.3B/S模式簡介B/S結(jié)構(gòu)(Browser/Server結(jié)構(gòu))結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對C/S結(jié)構(gòu)的一種變化或者改進的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過WWW瀏覽器來實現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護與升級的成本和工作量,降低了用戶的總體成本(TCO)。以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過Internet/Intranet模式下數(shù)據(jù)庫應(yīng)用,相對易于把握、成本也是較低的。它是一次性到位的開發(fā),能實現(xiàn)不同的人員,從不同的地點,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)訪問和操作共同的數(shù)據(jù)庫;它能有效地保護數(shù)據(jù)平臺和管理訪問權(quán)限,服務(wù)器數(shù)據(jù)庫也很安全。特別是在JAVA這樣的跨平臺語言出現(xiàn)之后,B/S架構(gòu)管理軟件更是方便、速度快、效果優(yōu)。隨著Internet和WWW的流行,以往的主機/終端和C/S都無法滿足當前的全球網(wǎng)絡(luò)開放、互連、信息隨處可見和信息共享的新要求,于是就出現(xiàn)了B/S型模式,即瀏覽器/服務(wù)器結(jié)構(gòu)。B/S模式最大特點是:用戶可以通過WWW瀏覽器去訪問Internet上的文本、數(shù)據(jù)、圖像、動畫、視頻點播和聲音信息,這些信息都是由許許多多的Web服務(wù)器產(chǎn)生的,而每一個Web服務(wù)器又可以通過各種方式與數(shù)據(jù)庫服務(wù)器連接,大量的數(shù)據(jù)實際存放在數(shù)據(jù)庫服務(wù)器中??蛻舳顺薟WW瀏覽器,一般無須任何用戶程序,只需從Web服務(wù)器上下載程序到本地來執(zhí)行,在下載過程中若遇到與數(shù)據(jù)庫有關(guān)的指令,由Web服務(wù)器交給數(shù)據(jù)庫服務(wù)器來解釋執(zhí)行,并返回給Web服務(wù)器,Web服務(wù)器又返回給用戶。在這種結(jié)構(gòu)中,將許許多多的網(wǎng)連接到一塊,形成一個巨大的網(wǎng),即全球網(wǎng)。而各個企業(yè)可以在此結(jié)構(gòu)的基礎(chǔ)上建立自己的Internet。2.3.1B/S模式的優(yōu)點(1)、具有分布性特點,可以隨時隨地進行查詢、瀏覽等業(yè)務(wù)處理。(2)、業(yè)務(wù)擴展簡單方便,通過增加網(wǎng)頁即可增加服務(wù)器功能。(3)、維護簡單方便,只需要改變網(wǎng)頁,即可實現(xiàn)所有用戶的同步更新。(4)、開發(fā)簡單,共享性強。2.3.2B/S模式的缺點(1)、個性化特點明顯降低,無法實現(xiàn)具有個性化的功能要求。(個性化的要求取決以軟件框架,而非架構(gòu),分享B/S軟件就蠻靈活)(2)、操作是以鼠標為最基本的操作方式,無法滿足快速操作的要求。(如果輔助于插件,照樣可以用鍵盤快速操作)(3)、頁面動態(tài)刷新,響應(yīng)速度明顯降低。(分享軟件用分頁保證響應(yīng)速度穩(wěn)定)(4)、功能弱化,難以實現(xiàn)傳統(tǒng)模式下的特殊功能要求。2.4spring,springMVC技術(shù)Spring的一個最大的目的就是使J2EE開發(fā)更加容易。同時,Spring之所以與Struts、Hibernate等單層框架不同,是因為Spring致力于提供一個以統(tǒng)一的、高效的方式構(gòu)造整個應(yīng)用,并且可以將單層框架以最佳的組合揉和在一起建立一個連貫的體系。可以說Spring是一個提供了更完善開發(fā)環(huán)境的一個框架,可以為POJO(PlainOldJavaObject)對象提供企業(yè)級的服務(wù)。Spring框架提供了構(gòu)建Web應(yīng)用程序的全功能MVC模塊。使用Spring可插入的MVC架構(gòu),可以選擇是使用內(nèi)置的SpringWeb框架還是Struts這樣的Web框架。通過策略接口,Spring框架是高度可配置的,而且包含多種視圖技術(shù),例如JavaServerPages(JSP)技術(shù)、Velocity、Tiles、iText和POI。SpringMVC框架并不知道使用的視圖,所以不會強迫您只使用JSP技術(shù)。SpringMVC分離了控制器、模型對象、分派器以及處理程序?qū)ο蟮慕巧?,這種分離讓它們更容易進行定制。2.5數(shù)據(jù)庫開發(fā)工具選擇MySQL是一個小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),開發(fā)者為瑞典MySQLAB公司。在2008年1月16號被Sun公司收購。而2009年,SUN又被Oracle收購。MySQL是一種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi)。這樣就增加了速度并提高了靈活性。MySQL的SQL“結(jié)構(gòu)化查詢語言”。SQL是用于訪問數(shù)據(jù)庫的最常用標準語言。MySQL軟件采用了GPL(GNU通用公共許可證)。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。3需求分析3.1可行性研究計算機用于財務(wù)系統(tǒng)數(shù)據(jù)處理,徹底改變了財務(wù)系統(tǒng)的面貌。財務(wù)系統(tǒng)數(shù)據(jù)處理的集中化自動化程度大大提高,采用計算機處理后,原始數(shù)據(jù)通過各種輸入方式輸入計算機,計算機自動按照事先編制的程序進行各種處理工作,還可以根據(jù)需要,隨時查詢或打印有關(guān)賬簿和報表。提高了財務(wù)系統(tǒng)信息的準確性和及時行,隨著現(xiàn)代社會企業(yè)的經(jīng)濟管理越來越復(fù)雜,競爭也越來越激烈,這種現(xiàn)象不但使財務(wù)系統(tǒng)所要處理的數(shù)據(jù)量增大,也要求財務(wù)系統(tǒng)數(shù)據(jù)的處理更加準確及時,利用計算機進行財務(wù)系統(tǒng)數(shù)據(jù)處理可以徹底打破手工處理的局限性,為日常管理提供更加詳細,更加準確,更加及時的信息。從廣度和深度上擴展了財務(wù)系統(tǒng)數(shù)據(jù)的領(lǐng)域,隨時得到最新的情況。減輕了財務(wù)系統(tǒng)人員的工作負擔,是計算機進行財務(wù)系統(tǒng)數(shù)據(jù)處理以后,大部分工作由計算機自動進行處理,使財務(wù)系統(tǒng)人員從繁重的手工操作中解放出來,從而使財務(wù)系統(tǒng)人員把主要精力放在管理和監(jiān)督上,更好地發(fā)揮財務(wù)人員的作用。3.1.1技術(shù)可行性隨著國內(nèi)軟件開發(fā)的日益發(fā)展壯大,各種中小企事業(yè)單位已具備獨立開發(fā)各種類型的軟件的能力,能夠滿足不同行業(yè)的特別的需求。而這個系統(tǒng)盡管其在組織關(guān)系上存在著很大的復(fù)雜性,繁瑣性,但是就整個系統(tǒng)的技術(shù)構(gòu)成上來看,它還是屬于一個數(shù)據(jù)庫應(yīng)用類的系統(tǒng)。其基本操作還是對存在數(shù)據(jù)庫進行添加、刪除、查找、編輯等。所以就單純的數(shù)據(jù)庫應(yīng)用來看,暫不存在太大的技術(shù)問題。3.1.2經(jīng)濟可行性對于整個系統(tǒng)而言,在系統(tǒng)未運行之前,初期投資比較大,花費相對而言比較多。各部門必須配置電腦、服務(wù)器及相關(guān)的網(wǎng)絡(luò)設(shè)備,但是在整個系統(tǒng)投入運行之后,因為現(xiàn)在計算機已經(jīng)普及了,相關(guān)的人員培訓(xùn)費可以減少很多。而同時又減少了數(shù)據(jù)的流通環(huán)節(jié),不必要花費那么多的時間,也就是說最重要的是就是提高了效率,而又保證了各項數(shù)據(jù)的準確性,也避免了工作人員的流動造成的收據(jù)丟失等問題,適應(yīng)了當前的發(fā)展形式[8]。3.1.3管理可行性隨著時代的發(fā)展,人員素質(zhì)己逐步提高,不論是對于電腦系統(tǒng)的基本操作還是對于系統(tǒng)的維護都有了一定的基礎(chǔ)。同時還可以配置專業(yè)的電腦維護人員來維護電腦,不必擔心電腦故障問題。3.1.4開發(fā)環(huán)境可行性IntellijIDEA是一款綜合的Java編程環(huán)境,被許多開發(fā)人員和行業(yè)專家譽為市場上最好的IDE。它提供了一系列最實用的的工具組合:智能編碼輔助和自動控制,支持J2EE,Ant,JUnit和CVS集成,非平行的編碼檢查和創(chuàng)新的GUI設(shè)計器。IDEA把Java開發(fā)人員從一些耗時的常規(guī)工作中解放出來,顯著地提高了開發(fā)效率。具有運行更快速,生成更好的代碼;持續(xù)的重新設(shè)計和日常編碼變得更加簡易,與其它工具的完美集成;很高的性價比等特點。在4.0版本中支持Generics,BEAWebLogic集成,改良的CVS集成以及GUI設(shè)計器。
IntelliJIDEA能盡可能地促進程序員的編程速度。它包括了很多輔助的功能,并且與Java結(jié)合得相當好。不同的工具窗口圍繞在主編程窗口周圍,當鼠標點到時即可打開,無用時也可輕松關(guān)閉,使用戶得到了最大化的有效屏幕范圍。以技術(shù)為導(dǎo)向的IDEA集成了調(diào)試器,支持本地和遠程的調(diào)試,即使我們需要修改一些設(shè)置上的東西使我們的工作順利進展。另外,它還提供了通常的監(jiān)視,分步調(diào)試以及手動設(shè)置斷點功能,在這種斷點模式下,我們可以自動地在斷點之外設(shè)置現(xiàn)場訪問,甚至可以瀏覽不同的變量的值。IDE支持多重的JVM設(shè)置,幾個編譯程序和Ant建造系統(tǒng),并且,它使得設(shè)置多重的自定義的類途徑變得簡單。綜上所述,此系統(tǒng)開發(fā)目標已明確,在技術(shù)和經(jīng)濟等方面都可行,并且投入少、見效快。因此系統(tǒng)的開發(fā)是完全可行的。3.2系統(tǒng)功能需求分析3.2.1公司財務(wù)管理系統(tǒng)功能概述現(xiàn)在的世界是信息的世界,公司的發(fā)展越來越快,規(guī)模越來越大,公司的財務(wù)管理系統(tǒng)能為公司的財務(wù)管理更加的輕松,高效,準確。公司財務(wù)管理主要實現(xiàn)對,公司的憑證管理,工資管理,賬簿管理,固定資產(chǎn)管理。系統(tǒng)開發(fā)主要有以下4個模塊組成:在憑證管理模塊中實現(xiàn)了摘要管理、會計科目管理、憑證錄入、憑證審核,憑證過賬、憑證查詢等功能;在工資管理管理模塊中實現(xiàn)了人員維護、工資管理、工資發(fā)放、工資明細報表等功能;在賬簿管理管理模塊中實現(xiàn)了總分類賬簿查詢、多欄賬、明細分類賬、等功能;在固定資產(chǎn)管理模塊中實現(xiàn)了固定資產(chǎn)類別、固定資產(chǎn)增加方式、固定資產(chǎn)減少方式、固定資產(chǎn)使用狀況、固定資產(chǎn)維護等功能;3.2.2系統(tǒng)流程圖本系統(tǒng)的系統(tǒng)流程如下圖3.1所示,由此流程圖既可以看出本系統(tǒng)是如何進行公司的財務(wù)管理的,首先系統(tǒng)會驗證登錄的用戶是否合法及其使用系統(tǒng)的權(quán)限,然后用戶可以對系統(tǒng)進行憑證管理、工資管理、賬簿管理管理等各項操作,系統(tǒng)將操作請求與數(shù)據(jù)庫進行交互,返回操作的結(jié)果,并更新數(shù)據(jù)庫,實現(xiàn)各項管理。是是用戶登錄合法用戶顯示當前用戶管理模塊系統(tǒng)管理工資管理憑證管理固定資產(chǎn)管理賬簿管理退出是用戶登錄界面圖3.1系統(tǒng)流程圖
4系統(tǒng)總體設(shè)計4.1功能設(shè)計4.1.1主要功能模塊結(jié)構(gòu)憑證管理賬簿管理固定資產(chǎn)管理工資管理系統(tǒng)管理公司財務(wù)管理系統(tǒng)要實現(xiàn)公司財務(wù)管理的科學(xué)有效管理,本系統(tǒng)設(shè)計了憑證管理、工資管理、賬簿管理、固定資產(chǎn)管理及系統(tǒng)管理這些功能,系統(tǒng)憑證管理賬簿管理固定資產(chǎn)管理工資管理系統(tǒng)管理公司財務(wù)管理系統(tǒng)圖4.1公司財務(wù)管理系統(tǒng)功能結(jié)構(gòu)圖4.1.2子功能模塊結(jié)構(gòu)圖憑證管理會計科目管理憑證錄入憑證過賬憑證審核摘要管理憑證查詢實現(xiàn)憑證管理模塊,系統(tǒng)設(shè)計了摘要管理、會計科目管理、憑證錄入、憑證審核,憑證過賬、憑證查詢等功能,憑證憑證管理會計科目管理憑證錄入憑證過賬憑證審核摘要管理憑證查詢圖4.2摘要管理子模塊結(jié)構(gòu)圖工資管理工資管理工資發(fā)放工資明細報表人員維護實現(xiàn)工資管理模塊,系統(tǒng)設(shè)計了人員維護、工資管理、工資發(fā)放、工資明細報表等功能,工資管理模塊工資管理工資管理工資發(fā)放工資明細報表人員維護圖4.3工資管理子模塊結(jié)構(gòu)圖賬簿管理本期匯總查詢明細分類賬賬簿查詢實現(xiàn)賬簿管理模塊,系統(tǒng)設(shè)計了總分類賬簿查詢、本期匯總查詢、明細分類賬、等功能,工資管理模塊賬簿管理本期匯總查詢明細分類賬賬簿查詢圖4.4賬簿管理子模塊結(jié)構(gòu)圖固定資產(chǎn)管理固定資產(chǎn)增加方式固定資產(chǎn)減少方式固定資產(chǎn)維護固定資產(chǎn)使用方式固定資產(chǎn)類別實現(xiàn)固定資產(chǎn)管理模塊,系統(tǒng)設(shè)計了固定資產(chǎn)類別、固定資產(chǎn)增加方式、固定資產(chǎn)減少方式、固定資產(chǎn)使用狀況、固定資產(chǎn)維護等功能模塊固定資產(chǎn)管理固定資產(chǎn)增加方式固定資產(chǎn)減少方式固定資產(chǎn)維護固定資產(chǎn)使用方式固定資產(chǎn)類別圖4.5固定資產(chǎn)管理子模塊結(jié)構(gòu)圖
4.2數(shù)據(jù)庫設(shè)計4.2.1主要功能模塊結(jié)構(gòu)通過管理系統(tǒng)進行管理,能夠提高財務(wù)管理效率,更好的對財務(wù)管理進行合理有序的分配;能夠全程跟蹤公司的財務(wù)狀況,通過信息的記錄,更好地作出公司財務(wù)的經(jīng)營現(xiàn)狀。在設(shè)計公司財務(wù)管理系統(tǒng)時,主要從模塊組成、數(shù)據(jù)連接、功能實現(xiàn)、應(yīng)用意義等方面著手。每個模塊基本上脫離不了數(shù)據(jù),所以在數(shù)據(jù)庫設(shè)計時,要充分考慮數(shù)據(jù)的高效性,減少數(shù)據(jù)冗余,保證系統(tǒng)運行速度。4.2.2數(shù)據(jù)庫概念設(shè)計根據(jù)以上各節(jié)對系統(tǒng)所做的需求分析和系統(tǒng)設(shè)計,規(guī)劃出本系統(tǒng)中使用的數(shù)據(jù)庫實體分別為摘要實體、會計科目實體、憑證實體、憑證明細實體、固定資產(chǎn)實體、固定資產(chǎn)類別實體、固定資產(chǎn)增加方式實體、固定資產(chǎn)減少方式實體、固定資產(chǎn)使用狀況實體、員工信息實體、工資發(fā)放實體、賬簿實體、賬簿明細實體、本期匯總實體。下面將介紹幾個關(guān)鍵實體的E-R圖。憑證管理實體憑證管理實體包括憑證號、會計期間、單據(jù)數(shù)、會計日期、借方合計、貸方合計、狀態(tài)信息屬性。實體圖如圖4.6所示:憑證實體借放合計貸方合計狀態(tài)憑證號會計期間單據(jù)數(shù)會計日期圖憑證實體借放合計貸方合計狀態(tài)憑證號會計期間單據(jù)數(shù)會計日期員工信息管理實體員工信息管理實體包括員工編號、員工姓名、性別、文化程度、在職狀態(tài)、基礎(chǔ)工資、職務(wù)工資、工齡工資、養(yǎng)老保險、住房補助、生活補助、保險金、個人所得稅信息屬性。員工信息管理實體E-R圖如下圖4.7所示:員工信息管理性別員工編號基礎(chǔ)工資員工姓名文化程度在職狀態(tài)職務(wù)工資基礎(chǔ)工資工齡工資員工信息管理性別員工編號基礎(chǔ)工資員工姓名文化程度在職狀態(tài)職務(wù)工資基礎(chǔ)工資工齡工資養(yǎng)老保險租房補助基礎(chǔ)工資賬簿實體賬簿實體包括科目編號、科目姓名、借方累計、貸方累計、初期余額、余額方向信息屬性。賬簿實體E-R圖如下圖4.8所示:賬簿實體借方累計貸方累計余額方向科目編號科目姓名初期余額圖賬簿實體借方累計貸方累計余額方向科目編號科目姓名初期余額4.2.3數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計數(shù)據(jù)的概念結(jié)構(gòu)設(shè)計完之后,可以將上面的數(shù)據(jù)庫概念結(jié)構(gòu)轉(zhuǎn)化為某種數(shù)據(jù)庫系統(tǒng)所支持的實際數(shù)據(jù)模型,也就是數(shù)據(jù)庫的邏輯結(jié)構(gòu)。系統(tǒng)數(shù)據(jù)庫中的表的詳細設(shè)計如下:表4-1員工信息表(base_emp)FieldTypeCommentemp_idint(11)NOTNULL編號emp_codevarchar(20)NULL職工編號emp_namevarchar(50)NULL職工名稱sexint(11)NULL性別degreeint(11)NULL文化程度statusint(11)NULL狀態(tài)base_wagesdecimal(12,2)NULL基礎(chǔ)工資job_wagesdecimal(12,2)NULL職務(wù)工資working_age_wagesdecimal(12,2)NULL工齡工資old_live_wagesdecimal(12,2)NULL養(yǎng)老保險金housing_wagesdecimal(12,2)NULL住房補助live_wagesdecimal(12,2)NULL生活補助safe_wagesdecimal(12,2)NULL保險金income_tax_wagesdecimal(12,2)NULL個人所得稅create_byint(11)NULL創(chuàng)建人編號create_timedatetimeNULL創(chuàng)建時間update_byint(11)NULL修改人編號update_timedatetimeNULL修改時間表4-2本期匯總表(book_current_total)FieldTypeCommenttotal_idint(11)NOTNULL編號subject_codevarchar(20)NULL科目編號subject_namevarchar(50)NULL科目名稱accountingint(11)NULL會計期間initial_lend_totaldecimal(12,2)NULL本期借方合計initial_loan_totaldecimal(12,2)NULL本期借方合計year_lend_totaldecimal(12,2)NULL本年借方累計year_loan_totaldecimal(12,2)NULL本年貸方累計initial_balancedecimal(12,2)NULL初期余額balance_directiondecimal(12,2)NULL余額方向balancedecimal(12,2)NULL初期余額create_byint(11)NULL創(chuàng)建人編號create_timedatetimeNULL創(chuàng)建時間update_byint(11)NULL修改人編號update_timedatetimeNULL修改時間表4-3賬簿表(books)FieldTypeCommentbook_idint(11)NOTNULL編號subject_codevarchar(20)NULL科目編號subject_namevarchar(50)NULL科目名稱lend_totaldecimal(12,0)NULL借方累計loan_totaldecimal(12,0)NULL貸方累計create_byint(11)NULL創(chuàng)建人編號create_timedatetimeNULL創(chuàng)建時間update_byint(11)NULL修改人編號update_timedatetimeNULL修改時間balancedecimal(12,0)NULL初期余額balance_directiondecimal(12,0)NULL余額方向表4-4賬簿明細表(books_detail)FieldTypeCommentbook_item_idint(11)NOTNULL編號voucher_codevarchar(20)NULL摘要編號voucher_namevarchar(50)NULL摘要名稱accountingint(11)NULL會計期間entry_dateint(11)NULL分錄日期voucher_datedatetimeNULL日期summary_idint(11)NULL摘要主鍵summary_codevarchar(20)NULL摘要編號summary_namevarchar(50)NULL摘要名稱subject_idint(11)NULL編號subject_codevarchar(20)NULL科目編號subject_namevarchar(50)NULL科目名稱lend_moneydecimal(12,2)NULL借款金額loan_moneydecimal(12,2)NULL貸款金額balance_directiondecimal(12,2)NULL余額方向balancedecimal(12,2)NULL余額numberint(11)NULL數(shù)量pricedecimal(12,2)NULL單價settle_typeint(11)NULL結(jié)算方式settle_codevarchar(20)NULL結(jié)算號check_statusint(11)NULL憑證狀態(tài)create_byint(11)NULL創(chuàng)建人編號create_timedatetimeNULL創(chuàng)建時間update_byint(11)NULL修改人編號update_timedatetimeNULL修改時間settle_datedatetimeNULL結(jié)算日期表4-5憑證表(finance_voucher)FieldTypeCommentvoucher_idint(11)NOTNULL編號voucher_codevarchar(20)NULL摘要編號voucher_namevarchar(50)NULL摘要名稱accountingint(11)NULL會計期間voucher_datedatetimeNULL日期bills_numberint(11)NULL附單據(jù)數(shù)量create_namevarchar(20)NULL制單人lend_totaldecimal(12,2)NULL借方合計loan_totaldecimal(12,2)NULL貸方合計statusint(11)NULL狀態(tài)post_statusint(11)NULL過賬狀態(tài)check_statusint(11)NULL憑證狀態(tài)create_byint(11)NULL創(chuàng)建人編號create_timedatetimeNULL創(chuàng)建時間update_byint(11)NULL修改人編號update_timedatetimeNULL修改時間表4-6憑證明細表(finance_voucher_detail)FieldTypeCommentvoucher_item_idint(11)NOTNULL編號voucher_idint(11)NULL憑證外鍵summary_idint(11)NULL摘要主鍵summary_codevarchar(20)NULL摘要編號summary_namevarchar(50)NULL摘要名稱subject_idint(11)NULL編號subject_codevarchar(20)NULL科目編號subject_namevarchar(50)NULL科目名稱lend_moneydecimal(12,2)NULL借款金額loan_moneydecimal(12,2)NULL貸款金額create_byint(11)NULL創(chuàng)建人編號create_timedatetimeNULL創(chuàng)建時間update_byint(11)NULL修改人編號update_timedatetimeNULL修改時間表4-7固定資產(chǎn)信息表(fixed_property)FieldTypeCommentproperty_idint(11)NOTNULL編號property_codevarchar(20)NULL資產(chǎn)編號property_namevarchar(50)NULL資產(chǎn)名稱specificationvarchar(20)NULL規(guī)格型號monthint(11)NULL預(yù)計使用月份untilvarchar(50)NULL單位original_valuedecimal(12,0)NULL原值cripple_valuedecimal(12,0)NULL殘值率net_worthdecimal(12,0)NULL凈值entry_datedatetimeNULL登記日期brokenint(11)NULL是否報損broken_datedatetimeNULL報損日期tyep_idint(11)NULL類別編號fixed_type_namevarchar(20)NULL資產(chǎn)類別add_idint(11)NULL資產(chǎn)增加方式fixed_add_namevarchar(20)NULL資產(chǎn)增加方式delete_idint(11)NULL資產(chǎn)減少方式編號fixed_delete_namevarchar(20)NULL資產(chǎn)減少方式fixed_user_idint(11)NULL使用狀態(tài)編號fixed_user_namevarchar(20)NULL使用狀態(tài)create_byint(11)NULL創(chuàng)建人編號create_timedatetimeNULL創(chuàng)建時間update_byint(11)NULL修改人編號update_timedatetimeNULL修改時間表4-8賬號表(sys_user)FieldTypeCommentuser_idint(11)NOTNULL編號user_namevarchar(20)NULL用戶名passwordvarchar(50)NULL密碼emp_idint(11)NULL職工編號create_byint(11)NULL創(chuàng)建人編號create_timedatetimeNULL創(chuàng)建時間update_byint(11)NULL修改人編號update_timedatetimeNULL修改時間表4-9工資發(fā)放表(wages_give_out)FieldTypeCommentidint(11)NOTNULL編號emp_idint(11)NULL職工外鍵emp_codevarchar(20)NULL職工編號emp_namevarchar(50)NULL職工名稱degreeint(11)NULL文化程度base_wagesdecimal(12,2)NULL基礎(chǔ)工資job_wagesdecimal(12,2)NULL職務(wù)工資working_age_wagesdecimal(12,2)NULL工齡工資old_live_wagesdecimal(12,2)NULL養(yǎng)老保險金work_overtime_numint(11)NULL加班天數(shù)work_overtime_wagesdecimal(12,2)NULL加班工資leave_numint(11)NULL事假天數(shù)leave_wagesdecimal(12,2)NULL事假扣款housing_wagesdecimal(12,2)NULL住房補助live_wagesdecimal(12,2)NULL生活補助safe_wagesdecimal(12,2)NULL保險金income_tax_wagesdecimal(12,2)NULL個人所得稅should_wagesdecimal(12,2)NULL應(yīng)發(fā)金額reality_wagesdecimal(12,2)NULL實發(fā)金額balance_wagesdecimal(12,2)NULL余額give_out_timedatetimeNULL發(fā)放時間yearint(11)NULL年份monthint(11)NULL月份statusint(11)NULL狀態(tài)create_byint(11)NULL創(chuàng)建人編號create_timedatetimeNULL創(chuàng)建時間update_byint(11)NULL修改人編號update_timedatetimeNULL修改時間
5系統(tǒng)詳細設(shè)計與實現(xiàn)5.1Spring配置設(shè)計在系統(tǒng)開發(fā)中,通過Spring框架配置數(shù)據(jù)的連接和類的實例化,和velocity頁面展示模版的配置,以下是配置代碼:(1)數(shù)據(jù)源的配置:<beanid="dataSource"class="org.springframework.jdbc.datasource.DriverManagerDataSource"><propertyname="driverClassName"><value>${jdbc.driverClassName}</value></property><propertyname="password"><value>${jdbc.password}</value></property><propertyname="username"><value>${jdbc.username}</value></property><propertyname="url"><value>${jdbc.url}</value></property></bean>(2)velocity模版的配置:<beanid="velocityConfigurer"class="org.springframework.web.servlet.view.velocity.VelocityConfigurer"><propertyname="resourceLoaderPath"value="/WEB-INF/vm/"/>(3)把標有注解的類實例化:<!--自動掃描bean,把作了注解的類轉(zhuǎn)換為bean--><context:component-scanbase-package="com"/>5.2主體界面設(shè)計與實現(xiàn)本系統(tǒng)采用了DWZ頁面展示框架,總體分為,頭部,左部,右部,3個部分,頭部:主要用于加載公用的js,和css樣式,左部,是系統(tǒng)的導(dǎo)航欄,用于系統(tǒng)的功能的入口;右部:右部主要用于進行數(shù)據(jù)的展示。5.2.1主體設(shè)計與實現(xiàn)系統(tǒng)用戶登錄成功后,跳到主體界面:圖5.1主界面圖5.2.2主體界面代碼設(shè)計與實現(xiàn)主頁面包含的頭部和左部頁面。#parse("/common/header.vm")#parse("/common/title.vm")#parse("/common/left.vm")……….#parse("/common/footer.vm")5.3系統(tǒng)登錄模塊設(shè)計與實現(xiàn)系統(tǒng)登錄模塊主要完成對登錄系統(tǒng)的用戶進行驗證,只有合法的用戶才可以進入系統(tǒng)。5.3.1登錄窗體設(shè)計圖5.2登錄界面圖5.3.2登錄模塊代碼設(shè)計登錄模塊中主要的代碼的功能就是驗證登錄的用戶是否是合法的用戶,如果用戶輸入的用戶名和密碼都與系統(tǒng)數(shù)據(jù)庫中相符合,且輸入的驗證碼正確,此用戶便能登錄財務(wù)管理管理系統(tǒng),如果以上條件有一個不符合,該用戶便不能登錄系統(tǒng)。雙擊“登錄”按鈕,添加如下代碼:SysUserBOlongUser=iAccountService.doLogin(sysUserBO);if(longUser==null){model.addAttribute("errMsg","用戶名或密碼錯誤!");return"login";}else{HttpSessionsession=request.getSession();session.setAttribute("SYSPARAM_USER_LOGIN_STATUS",longUser);return"/common/home";}5.4憑證管理模塊設(shè)計與實現(xiàn)憑證管理模塊主要實現(xiàn):摘要管理,會計科目管理,憑證錄入,憑證審核,憑證過賬,憑證查詢等功能。5.4.1憑證錄入設(shè)計與實現(xiàn)憑證錄入功能主要實現(xiàn)憑證的錄入登記,點擊左邊的菜單,系統(tǒng)會自動生成一個憑證編號,主要功能點有添加,保存,刪除。刪除功能只能針對未保存的憑證進行刪除。如圖5.3所示:表5-4-1憑證錄入的功能名稱及方法功能方法偽代碼添加publicintinsertSelective(BaseSummaryBOrecord)保存publicintupdateByPrimaryKeySelective(BaseSummaryBOrecord)修改publicintdeleteByPrimaryKey(IntegersummaryId)圖5.3憑證錄入界面5.4.2憑證錄入代碼設(shè)計與實現(xiàn)添加功能:如下代碼:StringvoucherId=CodeGenerator.getOEMCode(1);//自動生成憑證編號//業(yè)務(wù)處理代碼段BaseSubjectbaseSubject=iBaseSubjectDAO.selectByPrimaryKey(record.getSubjectId());BaseSummarybaseSummary=iBaseSummaryDAO.selectByPrimaryKey(record.getSummaryId());record.setSubjectCode(baseSubject.getSubjectCode());record.setSubjectName(baseSubject.getSubjectName());record.setSummaryCode(baseSummary.getSummaryCode());record.setSummaryName(baseSummary.getSummaryName());intresult=iFinanceVoucherDetailDAO.insertSelective(record);if(result>0){this.changeVoucher(record.getVoucherId());}5.5工資管理模塊設(shè)計與實現(xiàn)工資管理模塊主要實現(xiàn):人員維護,工資管理,工資發(fā)放管理,工資明細報表等功能。5.5.1工資發(fā)放管理設(shè)計與實現(xiàn)工資發(fā)放管理功能主要實現(xiàn)對員工工資的發(fā)放,點擊左邊的菜單,查詢員工工資的發(fā)放情況,對未發(fā)放工資的員工進行工資發(fā)放,發(fā)放工資前先要對員工進行工資的維護,以及該月的出勤維護。如圖5.4所示:表5-5-1工資發(fā)放的功能名稱及方法功能方法偽代碼加班事假維護publicintovertimeAndLeaveManage(BaseEmpBOrecord)工資發(fā)放publicintgiveOutManage(WagesGiveOutBOwagesGiveOutBO)WagesGiveOutwagesGiveOut=iWagesGiveOutDAO.selectByPrimaryKey(wagesGiveOutBO.getId());wagesGiveOut.setStatus(EmpWagesGiveOutStatus.HAVE_GIVE_OUT.getCode());wagesGiveOut.setRealityWages(wagesGiveOutBO.getRealityWages());wagesGiveOut.setGiveOutTime(newDate());圖5.4工資發(fā)放界面5.5.2工資發(fā)放代碼設(shè)計與實現(xiàn)發(fā)放功能:如下代碼://頁面數(shù)據(jù)處理代碼段DWZMapgiveOutManage(Modelmodel,WagesGiveOutBOwagesGiveOutBO,BaseEmpBObaseEmpBO){DWZMapmap=newDWZMap();map.setStatusCode(DWZMap.CODE_ERROR);if(baseEmpBO==null||baseEmpBO.getEmpId()==null){map.setMessage("數(shù)據(jù)不完整");returnmap;}if(wagesGiveOutBO.getId()==null){map.setMessage("請先進行'加班事假維護'");returnmap;}if(wagesGiveOutBO.getStatus().intValue()==EmpWagesGiveOutStatus.HAVE_GIVE_OUT.getCode()){map.setMessage("該員工本月工資已發(fā)");returnmap;}baseEmpBO.setWagesGiveOutBO(wagesGiveOutBO);if(iBaseEmpService.giveOutManage(wagesGiveOutBO)>0){map.setMessage("操作成功");map.setStatusCode(DWZMap.CODE_OK);map.setNavTabId("empWagesGiveOutList");map.setNavTabId("empWagesGiveOutList");map.setRel("empWagesGiveOutList");map.setCallbackType(DWZMap.CALLBACK_CLOSE);}else{map.setStatusCode(DWZMap.CODE_ERROR);map.setMessage("數(shù)據(jù)庫操作失敗");}returnmap;}5.6賬簿管理模塊設(shè)計與實現(xiàn)賬簿管理模塊主要實現(xiàn):總分類賬簿查詢,明細分類賬,本期匯總查詢等功能。5.6.1分類總賬簿設(shè)計與實現(xiàn)總分類賬簿查詢功能主要實現(xiàn)對對各個會計科目查詢的總體情況。如圖5.5所示:表5-6-1總分類賬簿的功能名稱及方法功能方法偽代碼查詢publicList<BaseSubjectBO>selectByExample(BaseSubjectBOrecord,Pagerpager)圖5.5工資發(fā)放界面5.6.2總分類賬簿代碼設(shè)計與實現(xiàn)查詢功能:如下代碼:\List<WagesGiveOutBO>list=iBaseEmpService.selectWagesGiveOutReportByExample(wagesGiveOutBO,pager);model.addAttribute("list",list);return"book/book_search";5.7固定資產(chǎn)管理模塊設(shè)計與實現(xiàn)固定資產(chǎn)管理模塊主要實現(xiàn):固定資產(chǎn)類別維護,固定資產(chǎn)增加方式維護,固定資產(chǎn)維護等功能。5.7.1固定資產(chǎn)維護設(shè)計與實現(xiàn)固定資產(chǎn)維護功能主要實現(xiàn)對工資固定資產(chǎn)的新增,報損,使用維護。如圖5.6所示:表5-7-1固定資產(chǎn)維護功能名稱及方法功能方法偽代碼添加publicintinsertSelective(FixedPropertyBOFixedPropertyBO保存publicintupdateByPrimaryKeySelective(FixedPropertyBOFixedPropertyBO)修改publicintdeleteByPrimaryKey(FixedPropertyBOFixedPropertyBO)圖5.6固定資產(chǎn)界面5.7.2固定資產(chǎn)代碼設(shè)計與實現(xiàn)添加功能:如下代碼:if(record.getAddId()!=null){FixedPropertyAddTypeaddType=iFixedPropertyAddTypeDAO.selectByPrimaryKey(record.getAddId());record.setFixedAddName(addType.getFixedAddName());}if(record.getTyepId()!=null){FixedPropertyTypetype=iFixedPropertyTy
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- Windows Server 2022活動目錄管理實踐( 第2版 微課版)-課件項目22 通過組策略管理用戶環(huán)境
- 2023-2024學(xué)年上海市普陀區(qū)培佳雙語學(xué)校六年級(上)段考數(shù)學(xué)試卷(10月份)(五四學(xué)制)
- Python程序設(shè)計 課件 第一章 Python概述
- 北師大版八年級生物上冊期中素養(yǎng)綜合測試課件
- 甘肅省民樂縣思源實驗學(xué)校2024-2025學(xué)年八年級上學(xué)期期中學(xué)業(yè)檢測物理試卷
- 上海市閔行區(qū)六校聯(lián)考2024-2025學(xué)年高一上學(xué)期10月期中考試數(shù)學(xué)試題(無答案)
- 八年級生物期中模擬卷【測試范圍:第15~18章】(考試版A4)(北師大版)
- 秋天的雨教案課件
- 大青樹下的小學(xué)課件
- 2024年經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院第四批公開招聘特殊專業(yè)技術(shù)崗位人員試題及答案
- 古建筑修復(fù)油漆彩繪施工工藝方案
- 電烙鐵點檢表
- 危險作業(yè)人員參加工傷保險制度參考模板范本
- 道路改造排水工程交通組織及管線保護方案
- 馬鞍山博望區(qū)新城區(qū)控制性詳細規(guī)劃的知識
- 汽車數(shù)據(jù)安全管理合規(guī)清單
- 編制說明-《人防指揮工程維護管理規(guī)范》
- 消防安全安全隱患排查整改臺帳
- 醫(yī)務(wù)科年度工作匯報與計劃精編ppt
- 學(xué)術(shù)論文的選題課件
- 《野貓的城市》幻燈片
評論
0/150
提交評論