




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
西安文理學(xué)院信息工程學(xué)院課程設(shè)計(jì)報(bào)告設(shè)計(jì)名稱:軟件項(xiàng)目開發(fā)課程設(shè)計(jì)設(shè)計(jì)題目:育才學(xué)校工資管理系統(tǒng)學(xué)生學(xué)號:專業(yè)班級:軟件工程學(xué)生姓名:學(xué)生成績:指引教師:課題工作時(shí)間:.6.16至.6.28
闡明:1、報(bào)告中任務(wù)書、進(jìn)度表由指引教師在課程設(shè)計(jì)開始前填寫并發(fā)給每個(gè)學(xué)生。2、學(xué)生成績由指引教師依照學(xué)生設(shè)計(jì)狀況給出各項(xiàng)分值及總評成績。3、所有學(xué)生必要參加課程設(shè)計(jì)答辯環(huán)節(jié),凡不參加答辯者,其成績一律按不及格解決。答辯由指引教師實(shí)行。4、報(bào)告正文字?jǐn)?shù)普通應(yīng)不少于3000字,也可由指引教師依照本門綜合設(shè)計(jì)狀況另行規(guī)定。5、平時(shí)體現(xiàn)成績低于6分學(xué)生,取消答辯資格,其本項(xiàng)綜合設(shè)計(jì)成績按不及格解決。
信息工程學(xué)院課程設(shè)計(jì)任務(wù)書學(xué)生姓名學(xué)號專業(yè)班級設(shè)計(jì)題目育才學(xué)校工資管理系統(tǒng)內(nèi)容概要:開發(fā)環(huán)境:windows8.1開發(fā)工具:MyEclipse數(shù)據(jù)庫:SQLServer運(yùn)營環(huán)境:火狐(MozillaFireFox)核心技術(shù):JavaJSPJDBC基本功能:系統(tǒng)可以實(shí)現(xiàn)教職工工資信息管理。涉及對部門信息、教職工信息、教職工考勤信息、教職工工資信息瀏覽、查詢、添加、修改、刪除等功能。文獻(xiàn)資料:[1]陳國君,陳磊,劉洋.Java2程序設(shè)計(jì)基本[M].北京:清華大學(xué)出版社;.6[2]耿祥義,張躍平.Java課程設(shè)計(jì)[M].北京:清華大學(xué)出版社;.11[3]張思民,梁維娜.Java程序設(shè)計(jì)實(shí)踐教程[M].北京:清華大學(xué)出版社;.8設(shè)計(jì)規(guī)定:基本功能:實(shí)現(xiàn)對部門信息、教職工信息、教職工考勤信息、教職工工資信息瀏覽、查詢、添加、修改、刪除功能。數(shù)據(jù)庫規(guī)定:數(shù)據(jù)存儲至少包括:工資表、部門匯總表、員工信息表、員工考勤表、管理員表。除人事處、財(cái)務(wù)處外,其她職能部門可簡化等。工作期限:設(shè)計(jì)工作自6月16日至6月28日止。指引教師:院長:日期:6月16日信息工程學(xué)院課程設(shè)計(jì)進(jìn)度安排表學(xué)生姓名:學(xué)號:專業(yè):軟件工程班級:起止日期內(nèi)容備注6月16日~6月17日下任務(wù)書;收集、閱讀、整頓有關(guān)參照文獻(xiàn),并進(jìn)行歸納和概括總結(jié),完畢項(xiàng)目/任務(wù)背景簡介某些文字內(nèi)容。6月18日~6月21日系統(tǒng)功能設(shè)計(jì)和模塊設(shè)計(jì)、系統(tǒng)體系構(gòu)造構(gòu)建。6月22日~6月24日各功能模塊編碼實(shí)現(xiàn),系統(tǒng)各功能模塊調(diào)試與維護(hù)。6月25日~6月26日系統(tǒng)功能集成、系統(tǒng)調(diào)試與測試,按照模板規(guī)定撰寫課程設(shè)計(jì)/項(xiàng)目設(shè)計(jì)報(bào)告。6月27日課程設(shè)計(jì)/項(xiàng)目設(shè)計(jì)分組答辯,提交課程設(shè)計(jì)/項(xiàng)目設(shè)計(jì)報(bào)告以及有關(guān)文檔,進(jìn)行成績評估。指引教師簽名:6月16日
成績評估表學(xué)生姓名:學(xué)號:專業(yè):軟件工程班級:類別共計(jì)分值各項(xiàng)分值評分原則實(shí)際得分共計(jì)得分平時(shí)體現(xiàn)1010準(zhǔn)時(shí)參加設(shè)計(jì)指引,無違背紀(jì)律狀況。完畢狀況3020按設(shè)計(jì)任務(wù)書規(guī)定完畢了所有任務(wù),能完整演示其設(shè)計(jì)內(nèi)容,符合規(guī)定。10能對其設(shè)計(jì)內(nèi)容進(jìn)行詳細(xì)、完整簡介,并能就指引教師提出問題進(jìn)行對的回答。報(bào)告質(zhì)量3510報(bào)告文字通順,內(nèi)容翔實(shí),闡述充分、完整,立論對的,構(gòu)造嚴(yán)謹(jǐn)合理;報(bào)告字?jǐn)?shù)符合有關(guān)規(guī)定,工整規(guī)范,整潔劃一。5課題背景簡介清晰,綜述分析充分。5設(shè)計(jì)方案合理、可行,論證嚴(yán)謹(jǐn),邏輯性強(qiáng),具備說服力。5符號統(tǒng)一;圖表完備、符合規(guī)范規(guī)定。5能對整個(gè)設(shè)計(jì)過程進(jìn)行全面總結(jié),得出有價(jià)值結(jié)論或成果。5參照文獻(xiàn)數(shù)量在2篇以上,格式符合規(guī)定,在正文中對的引用。答辯狀況2510在規(guī)定期間內(nèi)能就所設(shè)計(jì)內(nèi)容進(jìn)行闡述,言簡意明,重點(diǎn)突出,論點(diǎn)對的,條理清晰。15在規(guī)定期間內(nèi)能精確、完整、流利地回答教師所提出問題??傇u成績:分指引教師:(簽字)日期:年6月27日
摘要摘要:工資管理系統(tǒng)是使用MyEclipse開發(fā)一種數(shù)據(jù)庫管理系統(tǒng)。在開發(fā)過程中使用SQLServer和MyEclipse完畢工資管理系統(tǒng)基本過程。開發(fā)這個(gè)系統(tǒng)環(huán)節(jié)重要有系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)和系統(tǒng)維護(hù)。在系統(tǒng)設(shè)計(jì)過程中,詳細(xì)呈現(xiàn)了系統(tǒng)各個(gè)模塊、所需數(shù)據(jù)庫表設(shè)計(jì)等。在系統(tǒng)實(shí)現(xiàn)過程中,給出了實(shí)現(xiàn)表單中相應(yīng)功能控件事件、代碼及菜單實(shí)現(xiàn)辦法。本系統(tǒng)具備數(shù)據(jù)輸入、數(shù)據(jù)存儲、工資計(jì)算、信息修改、刪除等功能,本系統(tǒng)以簡潔明了界面設(shè)計(jì)實(shí)現(xiàn)了基本功能,使新顧客能迅速掌握系統(tǒng)基本操作。 核心詞:MyEclipse;SQLServer;Request目錄TOC\o"1-3"\h\u29879第一章課題背景(或緒論、概述) 1159111.1引言 1202221.1.1開發(fā)背景 15011.1.2目 129131第二章可行性分析 373062.1可行性分析 3123462.1.1技術(shù)可行性分析 3290112.1.2經(jīng)濟(jì)可行性分析 3209252.1.3操作可行性分析 3155632.2開發(fā)籌劃 412400第三章項(xiàng)目需求分析 5271393.1登錄功能 599763.2部門管理功能 5321213.3員工信息管理功能 5129333.4員工出勤信息管理功能 619583.5工資信息管理功能 645213.6用例描述 725825第四章項(xiàng)目概要設(shè)計(jì) 10120654.1功能設(shè)計(jì) 10321494.2系統(tǒng)數(shù)據(jù)庫設(shè)計(jì) 10245264.2.1數(shù)據(jù)字典 1043084.2.2ER圖 12300494.2.3數(shù)據(jù)流圖 139419第五章項(xiàng)目詳細(xì)設(shè)計(jì) 14295835.1數(shù)據(jù)庫設(shè)計(jì) 14214195.1.1數(shù)據(jù)字典 14255485.2人機(jī)交互界面設(shè)計(jì) 1584475.2.1工資信息管理 15255545.2.2信息查詢 1588395.2.3添加新工資信息 16116575.2.4修改工資信息 17248485.2.5刪除工資信息 1828265.2.6打印工資信息 1914558第六章項(xiàng)目編碼 20327196.1連接數(shù)據(jù)庫 20324226.2添加工資信息 23307996.3刪除工資信息 2754276.4修改工資信息 2770686.5查詢工資信息 2916663第七章項(xiàng)目測試 31303887.1增長工資信息測試 31130927.2刪除工資信息測試 31142507.3修改工資信息測試 31183117.4查詢工資信息測試 317893總結(jié) 339898參照文獻(xiàn) 34第一章課題背景(或緒論、概述)1.1引言1.1.1開發(fā)背景隨著社會進(jìn)步和計(jì)算機(jī)技術(shù)發(fā)展,特別是微型計(jì)算機(jī)大范疇普及,現(xiàn)在應(yīng)用在大中型公司信息管理系統(tǒng)中,幾乎都涉及了工資管理模塊。有些環(huán)境中是有大型ERP軟件中一種模塊引進(jìn),有些作為公司財(cái)務(wù)系統(tǒng)一某些。計(jì)算機(jī)解決數(shù)據(jù)量不斷增長。文獻(xiàn)管理系統(tǒng)采用一次最多存取一種記錄訪問方式,以及在不同文獻(xiàn)之間缺少互相聯(lián)系構(gòu)造,越來越不能適應(yīng)管理大量數(shù)據(jù)需要,于是數(shù)據(jù)庫管理系統(tǒng)便應(yīng)運(yùn)而生。有了數(shù)據(jù)庫咱們便能以便快捷對數(shù)據(jù)進(jìn)行讀取、存取,并維護(hù)數(shù)據(jù)庫數(shù)據(jù)。今天,數(shù)據(jù)庫管理已成為計(jì)算機(jī)信息管理重要方式。數(shù)據(jù)庫應(yīng)用非常廣泛,可應(yīng)用于各行各業(yè),只要是稍復(fù)雜數(shù)據(jù),都可制作成數(shù)據(jù)庫,交由電腦來管理。用電腦管理數(shù)據(jù),運(yùn)算速度快,檢索迅速、查找以便、可靠性高、存儲量大、保密性好、壽命長、成本低且不易出錯(cuò)等,這些長處可以極大地提高工資管理效率,也是科學(xué)化、正規(guī)化管理重要條件,特別是當(dāng)前中小型公司正需要這種對口工資管理系統(tǒng),并且是現(xiàn)行財(cái)務(wù)管理系統(tǒng)所代替不了。。1.1.2目隨著公司規(guī)模不斷擴(kuò)大,職工數(shù)量急劇增長,關(guān)于職工各種信息量也成倍增長,而當(dāng)前許多公司職工工資管理系統(tǒng)仍停留在復(fù)雜人工操作上,重復(fù)工作較多,工作量大,效率低,因而設(shè)計(jì)一種可以實(shí)現(xiàn)教職工工資信息管理系統(tǒng)。該系統(tǒng)涉及瀏覽、查詢、添加、修改、刪除等功能。其中添加功能規(guī)定可以添加新工資信息及教職工基本信息到數(shù)據(jù)庫文獻(xiàn);修改功能規(guī)定可以對教職工工資信息以及基本信息進(jìn)行修改;刪除功能規(guī)定可以對教職工工資信息以及基本信息進(jìn)行刪除;瀏覽功能規(guī)定能按照教職工工號,姓名瀏覽,提供分頁顯示;有排序功能,排序后按照工號升序輸出;查詢功能規(guī)定可以按照工號或者姓名查詢。
第二章可行性分析2.1可行性分析2.1.1技術(shù)可行性分析當(dāng)前學(xué)校各工作點(diǎn)均采用裝載window7系統(tǒng)PC機(jī)作為工作臺,其容量、速度能滿足系統(tǒng)規(guī)定。
依照客戶提出系統(tǒng)功能、性能及實(shí)現(xiàn)系統(tǒng)各項(xiàng)約束條件,依照新系統(tǒng)目
標(biāo)來衡量所需技術(shù)與否具備,本系統(tǒng)是一種文獻(xiàn)管理和查詢系統(tǒng),既有技術(shù)以較為成熟,硬件、軟件性能規(guī)定、環(huán)境條件等各項(xiàng)條件良好,預(yù)計(jì)運(yùn)用既有技術(shù)條件應(yīng)完全可以達(dá)到該系統(tǒng)功能目的。同步,考慮予以開發(fā)期限也較為充裕,預(yù)測系統(tǒng)是可以在規(guī)定期限內(nèi)完畢開發(fā)。在技術(shù)角度來說,開發(fā)學(xué)校內(nèi)部工資系統(tǒng)是可行。2.1.2經(jīng)濟(jì)可行性分析通過對開發(fā)學(xué)校內(nèi)部工資管理系統(tǒng)經(jīng)濟(jì)效益進(jìn)行評價(jià),一方面估算開發(fā)它支出費(fèi)用,其中涉及設(shè)備購買費(fèi)、軟件開發(fā)費(fèi)、管理和維護(hù)費(fèi)、人員工資和培訓(xùn)費(fèi)等。另一方面估算職工工資管理這個(gè)軟件也許獲得收益中可以用錢來衡量那某些。并對當(dāng)前軟件市場進(jìn)行調(diào)查,所做軟件與否有很大銷售市場和相稱規(guī)模顧客群。所做軟件開發(fā)成本與客戶提出規(guī)定與否可達(dá)到雙方都滿意。分析系統(tǒng)開發(fā)會對其他產(chǎn)品或利潤帶來一定影響。通過對上述幾種方面調(diào)查研究和分析,咱們得出學(xué)校內(nèi)部工資管理系統(tǒng)這個(gè)軟件使用性非常強(qiáng),減輕人力成本,在經(jīng)濟(jì)角度來說,開發(fā)學(xué)校內(nèi)部工資管理是可行。2.1.3操作可行性分析通過理解學(xué)校內(nèi)部工資管理有關(guān)人員對開發(fā)信息系統(tǒng)與否支持,既有職工工資管理制度和辦法與否科學(xué),規(guī)章制度與否齊全,原始數(shù)據(jù)與否對的等。職工工資管理人員積極支持該系統(tǒng)開發(fā),使新系統(tǒng)可以充分發(fā)揮作用;系統(tǒng)操作簡樸,易于理解,操作者通過短時(shí)間培訓(xùn)就可以使用職工工資管理系統(tǒng)。在操作可行性角度來說,開發(fā)學(xué)校內(nèi)部工資管理是可行。2.2開發(fā)籌劃表2-1開發(fā)籌劃表學(xué)校內(nèi)部工資管理系統(tǒng)階段所需時(shí)間(天)可行性研究1需求分析1概要設(shè)計(jì)1詳細(xì)設(shè)計(jì)2實(shí)現(xiàn)4調(diào)試與測試2總計(jì)11
第三章項(xiàng)目需求分析工資管理系統(tǒng)是針對企事業(yè)單位大量業(yè)務(wù)解決工作,用計(jì)算機(jī)進(jìn)行全面當(dāng)代化管理。重要涉及信息輸入功能、信息修改刪除、信息查詢以及工資計(jì)算管理功能。該系統(tǒng)重要涉及登錄模塊、部門管理模塊、員工信息管理模塊、員工考勤管理模塊和員工資管理模塊等。3.1登錄功能顧客輸入賬號和密碼與數(shù)據(jù)庫中一致時(shí)方可登錄該系統(tǒng)。3.2部門管理功能1)輸入部門基本信息,涉及部門編號(DepID)、部門名(DepName)、部門經(jīng)理(Manager)、辦公電話(DepTel)2)查詢部門信息:點(diǎn)擊部門名稱,能顯示該部門所有基本信息,如:部門編號、部門名稱、部門經(jīng)理、辦公電話。3)修改、刪除部門信息:如果各部門信息發(fā)生變化,點(diǎn)擊修改,能對部門各個(gè)信息進(jìn)行重新設(shè)立,同步可以刪除該部門,則該部門所有信息都會從數(shù)據(jù)庫中刪除,在部門管理界面不會顯示該部門信息。3.3員工信息管理功能錄入員工基本信息,涉及員工編號(employeeId)、姓名(name)、身份證號(cardNumber)、民族(nation)、性別(sex)、生日(birthday)、畢業(yè)學(xué)校(graduateSchool)、學(xué)歷(schoolRecord)、部門(department)、職稱(positionName)、電話(telephone)、郵件(email)、編輯時(shí)間(editTime)、備注(memo)。查詢員工信息,點(diǎn)擊員工姓名,能顯示該員工所有基本信息。如果員工信息發(fā)生變化,例如:電話號碼發(fā)生變化、職位調(diào)遣等。需要重新錄入該員工信息,點(diǎn)擊修改可以實(shí)現(xiàn)重置信息。如果該員工離職,則點(diǎn)擊刪除,該員工所有信息在員工信息管理界面會清除該條記錄。3.4員工出勤信息管理功能1)錄入員工出勤基本信息,涉及請假編號(leaveId)、職工編號(employeeId)、職工姓名(employeeName)、請假開始時(shí)間(starTime)、請假天數(shù)(day)、請假因素(reason)、批準(zhǔn)人(approvePerson)、編輯時(shí)間(editTime)、備注(memo)。2)查詢員工出勤信息可分為按員工編號查詢、按員工姓名查詢。選取查詢方式,輸入信息,點(diǎn)擊搜索,則能顯示該員工所有出勤記錄。如果出勤信息發(fā)生變化,點(diǎn)擊修改,重新錄入出勤信息,同步系統(tǒng)會重新自動(dòng)生成編輯時(shí)間,保證出勤信息精確性。如果錄入信息發(fā)生重復(fù)等狀況,可以點(diǎn)擊刪除,則該條記錄會被刪除。3.5工資信息管理功能錄入員工工資基本信息,涉及:工資編號(salayId)、員工編號(employeeId)、員工姓名(employeeName)、年份(year)、月份(month)、基本工資(basicWage)、加工工資(overtimeWage)、交通補(bǔ)貼(trafficWage)、考勤扣除(kaoqinReduce)、保險(xiǎn)扣除(secureReduce)、總工資(totalWage)、總扣除(totalReduce)、實(shí)際工資(realWage)、編輯時(shí)間(editTime)、備注(memo)查詢工資管理信息,選取查詢年份、月份、查詢方式、輸入查詢信息,點(diǎn)擊搜索就能精確顯示該員工在詳細(xì)時(shí)間段內(nèi)實(shí)際工資總額。管理員可以錄入員工詳細(xì)工資信息,例如:基本工資、加班工資、交通補(bǔ)貼、考勤扣除、保險(xiǎn)扣除、扣稅等信息。依照實(shí)際狀況可對員工工資信息進(jìn)行修改、打印、刪除等操作。3.6用例描述登錄管理增長部門信息登錄管理增長部門信息查詢部門信息修改部門信息刪除部門信息管理員圖3-1部門信息管理表3-1管理員登錄取例描述用例編號3-1-1用例名稱管理員登錄用例描述管理員在管理系統(tǒng)中輸入自己顧客名及密碼,即可進(jìn)入登錄工資管理系統(tǒng)。管理員在登錄界面可以修改自己密碼。表3-2管理員管理部門信息用例描述用例編號3-1-2用例名稱管理員管理部門信息用例描述管理員可以在部門管理界面實(shí)現(xiàn)增長部門信息、查詢部門信息、修改部門信息、刪除部門信息登錄登錄管理增長員工信息查詢員工信息修改員工信息刪除員工信息管理員圖3-2員工信息管理表3-3管理員管理員工信息用例描述用例編號3-2用例名稱管理員管理員工信息用例描述在員工信息管理界面,管理員擁有增長員工信息、查詢員工信息、修改員工信息、刪除員工信息等權(quán)限。登錄登錄管理增長員工出勤信息查詢員工出勤信息修改員工出勤信息刪除員工出勤信息管理員圖3-3員工出勤信息管理表3-4管理員工出勤信息用例描述用例編號3-3用例名稱管理員管理員工出勤信息用例描述在員工出勤信息管理界面,管理員可以實(shí)現(xiàn)增長員工出勤信息、查詢員工出勤信息、修改員工出勤信息、刪除員工出勤信息。登錄登錄管理增長工資信息查詢工資信息修改工資信息刪除工資信息管理員打印工資信息圖3-4工資信息管理表3-5管理員工工資信息用例描述用例編號3-4用例名稱管理員管理工資信息用例描述在工資信息管理界面,管理員可以實(shí)現(xiàn)增長工資信息、查詢工資信息、修改工資信息、刪除工資信息、打印工資信息等功能。第四章項(xiàng)目概要設(shè)計(jì)4.1功能設(shè)計(jì)添加部門信息添加部門信息修改部門信息查詢部門信息刪除部門信息修改員工信息添加員工信息查詢員工信息刪除員工信息添加出勤信息修改出勤信息查詢出勤信息刪除出勤信息添加工資信息刪除工資信息修改工資信息查詢工資信息部門管理員工信息管理員工出勤管理工資信息管理退出學(xué)校內(nèi)部管理系統(tǒng)顧客登錄提示錯(cuò)誤判斷顧客賬號與密碼與否對的圖4-1功能設(shè)計(jì)圖4.2系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)4.2.1數(shù)據(jù)字典員工表employee表4-1員工表字段名數(shù)據(jù)類型含義闡明與否為空employeeIdChar(100)員工編號主鍵NameVarchar(10)職工姓名否SexChar(2)性別cardNumberChar(100)身份證號碼nationChar(4)民族birthdayChar(100)生日graduateSchoolChar(100)畢業(yè)院校schoolRecordChar(4)學(xué)歷departmentChar(100)部門positionNameChar(100)級別telephoneChar(100)電話emailChar(100)郵箱editTimeChar(100)編輯時(shí)間memoChar(100)備忘錄部門表department表4-2部門表字段名數(shù)據(jù)類型含義闡明與否為空DepIDChar(6)部門編號主鍵DepNameVarchar(20)部門名稱否ManagerVarchar(20)部門經(jīng)理DepTelVarchar(15)辦公室電話考勤表leave表4-3考勤表字段名數(shù)據(jù)類型含義闡明與否為空leaveIdInt編號否employeeIdChar(100)員工編號否employeeNameChar(100)員工姓名否startTimeChar(100)時(shí)間dayChar(100)天數(shù)reasonChar(100)因素approvePersonChar(100)審查人editTimeChar(100)編輯時(shí)間memoChar(100)備注工資表salary表4-4工資表字段名數(shù)據(jù)類型含義闡明與否為空salaryIdint編號主鍵employeeIdchar(100)員工編號否employeeNamechar(100)員工姓名否yearchar(100)年份monthchar(100)月份basicWagefloat基本工資否overtimeWagefloat加工工資trafficWagefloat交通補(bǔ)貼totalWagefloat整體工資kaoqinReducefloat考勤扣除secureReducefloat保險(xiǎn)扣除taxReducefloat扣稅totalReducefloat整體扣除realWagefloat實(shí)際工資否editTimechar(100)編輯時(shí)間memochar(100)備注5、管理員表admin表4-5管理員表字段名數(shù)據(jù)類型含義闡明與否為空adminIDchar(100)編號主鍵adminNamechar(100)管理員姓名否passwordchar(100)密碼否保險(xiǎn)扣除考勤扣除交通補(bǔ)貼加工工資資扣稅保險(xiǎn)扣除考勤扣除交通補(bǔ)貼加工工資資扣稅工資擁有管理管理員密碼賬戶員工姓名部門姓別員工編號基本工資工資日期圖4-2ER圖
4.2.3數(shù)據(jù)流圖圖4-3數(shù)據(jù)流圖第五章項(xiàng)目詳細(xì)設(shè)計(jì)5.1數(shù)據(jù)庫設(shè)計(jì)5.1.1數(shù)據(jù)字典工資表salary表5-1工資表字段名數(shù)據(jù)類型含義闡明與否為空salaryIdint編號主鍵employeeIdchar(100)員工編號否employeeNamechar(100)員工姓名否yearchar(100)年份monthchar(100)月份basicWagefloat基本工資否overtimeWagefloat加工工資trafficWagefloat交通補(bǔ)貼totalWagefloat整體工資kaoqinReducefloat考勤扣除secureReducefloat保險(xiǎn)扣除taxReducefloat扣稅totalReducefloat整體扣除realWagefloat實(shí)際工資否editTimechar(100)編輯時(shí)間memochar(100)備注5.2人機(jī)交互界面設(shè)計(jì)5.2.1工資信息管理圖5-1工資信息管理主界面5.2.2信息查詢圖5-2查詢界面圖5-3查詢成果5.2.3添加新工資信息圖5-4添加新工資信息圖5-5添加成功5.2.4修改工資信息圖5-6修改工資信息圖5-7修改成功5.2.5刪除工資信息圖5-8刪除工資信息圖5-9刪除成功5.2.6打印工資信息圖5-10打印工資信息
第六章項(xiàng)目編碼6.1連接數(shù)據(jù)庫通過JDBC與數(shù)據(jù)庫建立連接,發(fā)送操作數(shù)據(jù)庫語句并解決成果。publicclassDataBase{ protectedConnectionconn=null; //Connection接口 protectedStatementstmt=null; //Statement接口 protectedResultSetrs=null; //記錄成果集 protectedPreparedStatementprepstmt=null; //PreparedStatement protectedbooleanisConnect=true; //與數(shù)據(jù)庫連接標(biāo)記 publicDataBase(){ try { DBConnectionManagerdcm=newDBConnectionManager(); conn=dcm.getConnection(); stmt=conn.createStatement(); } catch(Exceptione) { System.out.println(e); isConnect=false; } } publicStatementgetStatement(){ returnstmt; } publicConnectiongetConnection(){ returnconn; } publicPreparedStatementgetPreparedStatement(){ returnprepstmt; } publicResultSetgetResultSet(){ returnrs; } publicbooleanexecute()throwsException{ returnfalse; } publicbooleaninsert()throwsException{ returnfalse; } publicbooleanupdate()throwsException{ returnfalse; } publicbooleandelete()throwsException{ returnfalse; } publicbooleanquery()throwsException{ returnfalse; } publicvoidclose()throwsSQLException{ if(stmt!=null) { stmt.close(); stmt=null; } conn.close(); conn=null; }}publicclassDBConnectionManager{//privateStringdriverName="com.microsoft.jdbc.sqlserver.SQLServerDriver";//"oracle.jdbc.driver.OracleDriver";//privateStringurl="jdbc:microsoft:sqlserver://localhost:1433";//"jdbc:oracle:thin:@:1521:oracle";privateStringuser="sa";privateStringpassword="sa";privateStringdriverName="com.microsoft.jdbc.sqlserver.SQLServerDriver";privateStringurl="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=salary";publicvoidsetDriverName(StringnewDriverName){driverName=newDriverName;}publicStringgetDriverName(){returndriverName;} publicvoidsetUrl(StringnewUrl){url=newUrl;}publicStringgetUrl(){returnurl;}publicvoidsetUser(StringnewUser){user=newUser;}publicStringgetUser(){returnuser;}publicvoidsetPassword(StringnewPassword){password=newPassword;}publicStringgetPassword(){returnpassword;}publicConnectiongetConnection(){try{Class.forName(driverName);returnDriverManager.getConnection(url,user,password);//returnDriverManager.getConnection(url);}catch(Exceptione){e.printStackTrace();returnnull;}}publicstaticvoidmain(String[]args){//DBConnectionManagerDBConnectionManager1=newDBConnectionManager(); try{ DBConnectionManagerdcm=newDBConnectionManager(); Connection conn=dcm.getConnection(); Statementstmt=conn.createStatement(); ResultSetrs=stmt.executeQuery("select*fromadmin"); // stmt=conn.createStatement(); while(rs.next()){ System.out.println(rs.getString(1)); System.out.println(rs.getString(2)); System.out.println(); } }catch(Exceptione){ e.printStackTrace(); }}} 6.2添加工資信息//將頁面表單傳來資料分解并保存到工資類各個(gè)字段中 publicbooleangetRequest(javax.servlet.http.HttpServletRequestnewrequest){ booleanflag=false; try { request=newrequest; /**StringsalaryId=request.getParameter("salaryId"); if(!salaryId.equals("")) oneSalaryRecord.setSalaryId(Long.parseLong(salaryId)); **/ StringemployeeId=request.getParameter("employeeId"); if(null==employeeId||employeeId.equals("")){ employeeId=""; sqlflag=false; } oneSalaryRecord.setEmployeeId(getGbk(employeeId)); //員工編號 StringemployeeName=request.getParameter("employeeName"); if(null==employeeName||employeeName.equals("")){ employeeName=""; sqlflag=false; } oneSalaryRecord.setEmployeeName(getGbk(employeeName)); //員工姓名 Integeryear=Integer.parseInt(request.getParameter("year")); if(null==year){ year=; sqlflag=false; } oneSalaryRecord.setYear(year); //工資年份 Integermonth=Integer.parseInt(request.getParameter("month")); if(null==month||!(0<month&&13>month)){ month=1; sqlflag=false; } oneSalaryRecord.setMonth(month); //工資月份 FloatbasicWage; try{ basicWage=Float.parseFloat(request.getParameter("basicWage")); }catch(Exceptionex){ basicWage=0.0f; sqlflag=false; } oneSalaryRecord.setBasicWage(basicWage); //基本工資 FloatovertimeWage; try{ overtimeWage=Float.parseFloat(request.getParameter("overtimeWage")); }catch(Exceptionex){ overtimeWage=0.0f; } oneSalaryRecord.setOvertimeWage(overtimeWage); //加班工資 FloattrafficWage; try{ trafficWage=Float.parseFloat(request.getParameter("trafficWage")); }catch(Exceptionex){ trafficWage=0.0f; } oneSalaryRecord.setTrafficWage(trafficWage); //交通補(bǔ)貼工資 FloatkaoqinReduce; try{ kaoqinReduce=Float.parseFloat(request.getParameter("kaoqinReduce")); }catch(Exceptionex){ kaoqinReduce=0.0f; } oneSalaryRecord.setKaoqinReduce(kaoqinReduce); //考勤扣除 FloatsecureReduce; try{ secureReduce=Float.parseFloat(request.getParameter("secureReduce")); }catch(Exceptionex){ secureReduce=0.0f; } oneSalaryRecord.setSecureReduce(secureReduce); //保險(xiǎn)扣除 FloattaxReduce; try{ taxReduce=Float.parseFloat(request.getParameter("taxReduce")); }catch(Exceptionex){ taxReduce=0.0f; } oneSalaryRecord.setTaxReduce(taxReduce); //稅收扣除 Stringmemo=request.getParameter("memo"); if(null==memo||memo.equals("")){ memo=""; } oneSalaryRecord.setMemo(getGbk(memo)); //備注 if(sqlflag){ flag=true; } returnflag; } catch(Exceptione) { errorMessage=e.getMessage(); returnflag; } }//向數(shù)據(jù)庫中工資信息表中插入一條新記錄 publicbooleaninsert()throwsException{ StringeditTime;Calendarcal=Calendar.getInstance();Integery,m,d,h,mi,s;y=cal.get(Calendar.YEAR);m=cal.get(Calendar.MONTH)+1;d=cal.get(Calendar.DATE);h=cal.get(Calendar.HOUR_OF_DAY);mi=cal.get(Calendar.MINUTE);s=cal.get(Calendar.SECOND);editTime=y+"年"+m+"月"+d+"日"+h+"時(shí)"+mi+"分"+s+"秒";FloattotalWage=oneSalaryRecord.getBasicWage()+oneSalaryRecord.getOvertimeWage()+oneSalaryRecord.getTrafficWage();FloattotalReduce=oneSalaryRecord.getKaoqinReduce()+oneSalaryRecord.getSecureReduce()+oneSalaryRecord.getTaxReduce(); sqlStr="insertintosalary(employeeId,employeeName,year,month,basicWage,overtimeWage,trafficWage,totalWage,kaoqinReduce,secureReduce,taxReduce,totalReduce,realWage,editTime,memo)values('"; sqlStr=sqlStr+strFormat.toSql(oneSalaryRecord.getEmployeeId())+"','"; sqlStr=sqlStr+strFormat.toSql(oneSalaryRecord.getEmployeeName())+"',"; sqlStr=sqlStr+oneSalaryRecord.getYear()+","; sqlStr=sqlStr+oneSalaryRecord.getMonth()+","; sqlStr=sqlStr+oneSalaryRecord.getBasicWage()+","; sqlStr=sqlStr+oneSalaryRecord.getOvertimeWage()+","; sqlStr=sqlStr+oneSalaryRecord.getTrafficWage()+","; sqlStr=sqlStr+totalWage+","; sqlStr=sqlStr+oneSalaryRecord.getKaoqinReduce()+","; sqlStr=sqlStr+oneSalaryRecord.getSecureReduce()+","; sqlStr=sqlStr+oneSalaryRecord.getTaxReduce()+","; sqlStr=sqlStr+totalReduce+","; sqlStr=sqlStr+(totalWage-totalReduce)+",'"; sqlStr=sqlStr+strFormat.toSql(editTime)+"','"; sqlStr=sqlStr+strFormat.toSql(oneSalaryRecord.getMemo())+"')"; try { stmt.execute(sqlStr); returntrue; } catch(SQLExceptionsqle) { errorMessage=errorMessage+sqlStr+sqle.getMessage(); returnfalse; } }6.3刪除工資信息//刪除編號為salaryId工資信息 publicbooleandelete(StringsalaryId)throwsException{ sqlStr="deletefromsalarywheresalaryId="+salaryId; try { stmt.execute(sqlStr); returntrue; } catch(SQLExceptione) { System.out.println(e); returnfalse; } }6.4修改工資信息//更新假條表中一條記錄 publicbooleanupdate()throwsException{ StringeditTime;Calendarcal=Calendar.getInstance();Integery,m,d,h,mi,s;y=cal.get(Calendar.YEAR);m=cal.get(Calendar.MONTH)+1;d=cal.get(Calendar.DATE);h=cal.get(Calendar.HOUR_OF_DAY);mi=cal.get(Calendar.MINUTE);s=cal.get(Calendar.SECOND);editTime=y+"年"+m+"月"+d+"日"+h+"時(shí)"+mi+"分"+s+"秒";FloattotalWage=oneSalaryRecord.getBasicWage()+oneSalaryRecord.getOvertimeWage()+oneSalaryRecord.getTrafficWage();FloattotalReduce=oneSalaryRecord.getKaoqinReduce()+oneSalaryRecord.getSecureReduce()+oneSalaryRecord.getTaxReduce(); sqlStr="updatesalaryset"; sqlStr=sqlStr+"employeeName='"+strFormat.toSql(oneSalaryRecord.getEmployeeName())+"',"; sqlStr=sqlStr+"year="+oneSalaryRecord.getYear()+","; sqlStr=sqlStr+"month="+oneSalaryRecord.getMonth()+","; sqlStr=sqlStr+"basicWage="+oneSalaryRecord.getBasicWage()+","; sqlStr=sqlStr+"overtimeWage="+oneSalaryRecord.getOvertimeWage()+","; sqlStr=sqlStr+"trafficWage="+oneSalaryRecord.getTrafficWage()+","; sqlStr=sqlStr+"totalWage="+totalWage+","; sqlStr=sqlStr+"kaoqinReduce="+oneSalaryRecord.getKaoqinReduce()+","; sqlStr=sqlStr+"secureReduce="+oneSalaryRecord.getSecureReduce()+","; sqlStr=sqlStr+"taxReduce="+oneSalaryRecord.getTaxReduce()+","; sqlStr=sqlStr+"totalReduce="+totalReduce+","; sqlStr=sqlStr+"realWage="+(totalWage-totalReduce)+","; sqlStr=sqlStr+"editTime='"+editTime+"',"; sqlStr=sqlStr+"memo='"+strFormat.toSql(oneSalaryRecord.getMemo())+"'"; sqlStr=sqlStr+"whereemployeeId="+oneSalaryRecord.getEmployeeId(); System.out.println(sqlStr); try { stmt.execute(sqlStr); returntrue; } catch(SQLExceptione) { errorMessage=sqlStr+e.getMessage(); returnfalse; } }6.5查詢工資信息1)按年、月查詢sqlStr="select*fromsalary"; if(!searchYear.equals("")){ sqlStr=sqlStr+"whereyear="+searchYear; sqlCondition=true; } if(!searchMonth.equals("")){ if(sqlCondition){ sqlStr=sqlStr+"andmonth="+searchMonth; sqlCondition=true; }else{ sqlStr=sqlStr+"wheremonth="+searchMonth; } }2)字段查詢和核心字查詢if(!(searchZiduan.equals(""))){ if(sqlCondition){ sqlStr=sqlStr+"and"+searchZiduan+"like'%"+keyword+"%'"; }else{ sqlStr=sqlStr+"where"+
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國鉻鐵礦行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報(bào)告
- 2025-2030中國針狀焦行業(yè)發(fā)展現(xiàn)狀及發(fā)展趨勢與投資風(fēng)險(xiǎn)研究報(bào)告
- 2025-2030中國重鉻酸鈉(CAS 10588-01-9)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報(bào)告
- 2025-2030中國酚酞片行業(yè)市場深度調(diào)研及發(fā)展策略研究報(bào)告
- 2025-2030中國透明敷料行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報(bào)告
- 2025-2030中國軟飲料包裝行業(yè)發(fā)展分析及發(fā)展趨勢預(yù)測報(bào)告
- 2025-2030中國足球培訓(xùn)機(jī)構(gòu)行業(yè)市場深度調(diào)研及競爭格局與投資前景研究報(bào)告
- 2025-2030中國豆?jié){粉行業(yè)發(fā)展?fàn)顩r與市場營銷分析研究報(bào)告
- 2025-2030中國行動(dòng)輔助設(shè)備行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略研究報(bào)告
- 2025-2030中國營養(yǎng)醬油行業(yè)供需分析及發(fā)展前景研究報(bào)告
- 公園景觀修復(fù)零星維修施工方案
- 掛靠免責(zé)協(xié)議書范本
- 小學(xué)數(shù)學(xué)青島版五年級下冊《異分母分?jǐn)?shù)大小比較與通分》課件
- 社區(qū)矯正考試題及答案
- 幼兒園水池建設(shè)方案
- 安徽省宿州市省、市示范高中2024-2025學(xué)年高一上學(xué)期期中教學(xué)質(zhì)量檢測英語試題 含解析
- 《駕駛室固定矩形窗》
- 2024-2030年中國鹽差能行業(yè)面臨的困境分析及投資規(guī)模研究報(bào)告
- 架構(gòu)驅(qū)動(dòng)醫(yī)療變革
- 2024年化學(xué)檢驗(yàn)員(中級)職業(yè)技能鑒定考試題庫-上(單選題)
- 體育賽事組織策劃及執(zhí)行方案手冊
評論
0/150
提交評論