版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
企業(yè)人事信息管理系統(tǒng)集美大學誠毅學院信息工程系計算機科學與技術專業(yè)2016屆蔡雅瑩201241051045摘要隨著時代的進步,當代企業(yè)的管理也逐漸變得繁瑣。然而如何有效地管理企業(yè)人事信息,已經(jīng)成為企業(yè)中的一個大問題。管理是企業(yè)的核心,員工是一個企業(yè)的形象,管理好員工是一個企業(yè)的基礎,企業(yè)的發(fā)展是靠員工來輔助的,開發(fā)一個企業(yè)人事信息管理系統(tǒng)則顯得十分重要。該企業(yè)人事信息管理系統(tǒng)是一個簡潔實用的網(wǎng)站,并且為管理企業(yè)人事信息提供了良好的平臺。該系統(tǒng)的前臺選用了PHP作為主要的編程語言,而后臺就選用了MySQL來作為數(shù)據(jù)庫服務器。并且利用了PHP動態(tài)的網(wǎng)頁技術來實現(xiàn)前后臺的數(shù)據(jù)交互。本系統(tǒng)實現(xiàn)了以下功能:系統(tǒng)登錄、部門信息管理、員工基本信息管理、工資信息管理、考勤信息管理五大功能模塊。系統(tǒng)登錄分為普通用戶登錄、管理員登錄。普通用戶只限瀏覽、查詢、修改密碼;管理員用戶等實現(xiàn)增、刪、改、查詢。而考勤信息可根據(jù)員工登錄網(wǎng)站時間進行簽到上班簽退下班,并且工資能根據(jù)考勤信息進行結算等功能。關鍵字PHP人事信息管理B/S模式MySQL EnterprisePersonnelManagementSystemCaiYaying201241051045,Computerscienceandtechnologymajor,2016Dept.ofinformationEngineering,ChengyiUniversityCollege,JimeiUniversityAbstract:Withtheprogressofthetimes,modernenterprisemanagementhasgraduallybecametedious.However,howtoeffectivelymanageenterpriseHRinformation,ithasbecomeabigproblem.Managementisthecoreofenterprises,employeesrepresentthefigureoftheenterprise,goodemployeemanagementisthefoundationofanenterprise,thedevelopmentofenterprisesrelyonemployeestoassist,thedevelopmentofenterpriseHRinformationmanagementsystemappearstobecrucial.TheenterpriseHRinformationmanagementsystemisasimpleandpracticalwebsite,whichprovidesagoodplatformforthemanagementofenterprisepersonnelinformation.ReceptionofthesystemchosenPHPasthemainprogramminglanguage,andbackgroundontheselectionofMySQLasthedatabaseserver.AndtheuseofthePHPdynamicwebtechnologytoimplementinteractivedatabeforeandafterthestation.Thesystemimplementsthefollowingfunctions:systemlogon,theinformationmanagementdepartment,staffbasicinformationmanagement,payrollinformationmanagement,attendancemanagementinformationfivefunctionalmodules.Dividedintoordinaryuserloginsystemlogin,administratorlogin.Onlyordinaryuserstobrowse,query,modifythepassword;administratorusers,andachieveadd,delete,change,query.Theattendanceinformationavailableforcheck-incheck-outworkvisitthewebsiteoftheemployeeworktimeandwagescanbesettled,andotherfunctionsbasedonattendanceinformation.Keywords:PHP;PersonnelInformationManagement;B/Smode;MySQL目錄TOC\o"1-2"\h\z\u引言 1第1章系統(tǒng)概述 21.1系統(tǒng)內容概述 21.2系統(tǒng)背景和意義 2第2章相關技術介紹 32.1采用的體系結構 32.2PHP編程語言 32.3數(shù)據(jù)庫(MySQL) 4第3章需求分析 53.1可行性分析 53.2系統(tǒng)目標 53.3系統(tǒng)流程圖 63.4功能需求 6第4章系統(tǒng)設計 84.1系統(tǒng)功能設計 84.2數(shù)據(jù)庫設計 10第5章系統(tǒng)實現(xiàn) 165.1模塊界面設計 165.2主要模塊功能代碼實現(xiàn) 20結論 32致謝 33參考文獻 34引言隨著科技與經(jīng)濟的突飛猛進,企業(yè)的管理也逐漸變得繁瑣起來了,企業(yè)人事信息的管理逐漸成為各個企業(yè)都十分重視的管理內容之一。然而,如何管理好企業(yè)內部人事信息,已經(jīng)成為企業(yè)管理中的一個重大的問題。在現(xiàn)今的這種情況下,擁有一個規(guī)范化、自動化的企業(yè)人事信息管理系統(tǒng),就能比同行企業(yè)更有優(yōu)勢點。在最初的企業(yè)人事管理,都是由人力來完成。對于一些小規(guī)模的企業(yè),靠人力來完成是可行的,但是隨著企業(yè)的規(guī)模越來越大,企業(yè)的員工也逐漸地增多,如果還是繼續(xù)靠人力來進行人事信息的管理,必然會造成工作效率低下、工作錯誤率增加的問題。如今,隨著計算機的普及,企業(yè)就會考慮應該如何實現(xiàn)以人為企業(yè)發(fā)展的根本,企業(yè)為人的發(fā)展及其管理提供了便捷和快速的服務,企業(yè)的人事信息管理系統(tǒng)是企業(yè)解決人事管理問題的解決之道。各大中小型企業(yè)在如今競爭激烈的社會市場使盡手段提高效率,提高管理的手段是層出不已,但是最基本的就是企業(yè)內部的人事信息管理,企業(yè)首先向要發(fā)展,靠的是人才,然而又如何高效地管理人才也是當代個大中小型企業(yè)的重要內容之一。在現(xiàn)在的21世紀時代,信息的快速發(fā)展令人震驚,各個想要生存并且發(fā)展的企業(yè),就必須要跟上信息時代的步伐,才能在競爭中屹立不倒,人事信息管路信息化能夠為查詢人事信息提供充足、完善的信息,和高效、快捷的查詢手段。能夠對其進行保密性的操作,和內部人員信息的查詢和管理,節(jié)省了人力和財力來手動管理企業(yè)的人事信息。企業(yè)在賺取利潤的時候,也要注意跟上時代的變化,專業(yè)化和高效的管理,都是代表著一個企業(yè)的門面,專業(yè)化的管理為企業(yè)提高了高效地人事信息管理,利用計算機來支持勞動力,更加迅速和專業(yè)。第1章系統(tǒng)概述1.1系統(tǒng)內容概述本次畢業(yè)設計所要解決的主要問題是如何通過設計一個切實可行的軟件系統(tǒng)來用于解決目前企業(yè)人事信息管理中的信息處理總量大,內容繁多,手段落后不專業(yè)的現(xiàn)狀。因此,所涉及的處理內容包括有:開發(fā)一個能為企業(yè)的人事信息高效管理的管理系統(tǒng);開發(fā)一個為廣大用戶提供服務的信息查詢系統(tǒng),功能有:員工設置為普通用戶,可以查詢自身的基本信息,部門的信息,工資信息,考勤信息,并且能修改默認的登錄密碼,起到安全、保密的作用;而高級主管則設置為管理員,可以進行全部操作的功能,擁有最高級的權限。1.2系統(tǒng)背景和意義在如今經(jīng)濟一體化的現(xiàn)狀下,企業(yè)人事信息的管理也逐漸地變化,愈變愈復雜化,而如何管理好這塊內容則是現(xiàn)代企業(yè)生存和發(fā)展的重要因素。在早期的年代,企業(yè)人事信息的管理僅限于傳統(tǒng)的手工記錄管理,效率十分地低下,已經(jīng)無法承載現(xiàn)代企業(yè)逐漸發(fā)展龐大起來的人事信息管理需求。本系統(tǒng)運用人事信息管理相關領域的理論知識,并利用計算機信息技術科學地管理企業(yè)的人事信息,工資考勤等,具有檢索快速、存儲量大、保密性強、成本低、并且操作十分方便等特點,盡可能大大地提升工作效率;與此同時,可以清晰地引導企業(yè)在信息化時代下,科學地進行規(guī)范化的管理,大幅度提升公司的形象。計算機的應用已經(jīng)普及到經(jīng)濟和社會的各個領域,為了適應現(xiàn)代社會高度強烈的時間觀念,人事信息管理系統(tǒng)為企業(yè),團體,事業(yè)單位等帶來了極大的方便,能夠為用戶提供可靠的信息存儲和快捷地查詢手段。而從技術的角度來看,是為了支持和組織決策和管理而進行的信息收集、處理和存儲傳遞的一組相互關系關聯(lián)的組成部分;[1]從全局的角度來看,一個信息化的管理系統(tǒng)可以輔助公司的發(fā)展。第2章相關技術介紹2.1采用的體系結構B/S(Browser/Server)結構,隨著互聯(lián)網(wǎng)的倔起的熱潮,在當前的web數(shù)據(jù)庫開發(fā)中,這種B/S模式被廣泛地應用起來。[2]在這種情況下,用戶是通過www瀏覽器來實現(xiàn)工作界面的瀏覽和操作等,而極少部分的事務邏輯在前端(Browser)實現(xiàn)。但是,主要的事務邏輯是在服務器(Server)實現(xiàn),形成所說的三層結構。如此,可以大大地簡化了客戶端電腦的載荷,減少了系統(tǒng)維護和升級的成本和工作量,降低了用戶的總成本,[3]如圖2.1所示。瀏覽器瀏覽器Web服務器數(shù)據(jù)庫服務器請求信息結果信息SQL結果圖2.1三級結構組成2.2PHP編程語言PHP(HypertextPreprocessor,超文本預處理器),是一種服務器、跨平臺、HTML嵌入式的腳本語言,其獨特的語法混合了C語言、Java語言和Perl語言的特點[4],是一種被廣泛應用的開原式的多用途腳本語言,尤其適合web開發(fā)。一般語言特性:實用性。PHP就是以實用性目的創(chuàng)建的,并且很強調緊湊性,這反應到在他能嵌套函數(shù)。PHP還會在腳本結束的時候自動撤銷變量,將資源返回給系統(tǒng)。[5]擁有強大的功能。目前有200個庫,總共有1000余項功能以及成千上萬的第三方擴展??蛇x擇性。擁有足夠的選擇,為25種以上的數(shù)據(jù)提供了內置支持。靈活性很強。成本低。PHP是免費的。從一開始就對使用,修改和再分沒有任何限制。2.3數(shù)據(jù)庫(MySQL)MySQL數(shù)據(jù)庫可以稱得上是目前運行最快的SQL語言數(shù)據(jù)庫。除了具有許多其他數(shù)據(jù)庫所不具備的功能和選擇之外,MySQL數(shù)據(jù)庫還是一種完全免費的產(chǎn)品,用戶可以直接從網(wǎng)上下載使用,而不必支付任何費用。下面介紹MySQL的特點:功能強大:其中提供很多種數(shù)據(jù)庫存儲引擎,各有所長,適用于不同的應用場合,用戶可以選擇最合適的引擎以得到最高性能,MySQL支持事務、視圖、存儲過程和觸發(fā)器。[6]支持跨平臺:至少支持二十種以上的開發(fā)平臺。這使得在任何平臺下的編寫的程序都可以進行移植,而且不需要對程序進行任何的修改。運行速度快:它最顯著的特征是高速。在MySQL中,使用了極快的B樹磁盤表(MyISAM)和索引壓縮;通過使用優(yōu)化的單掃描多連接,能夠快速實現(xiàn)連接;SQL函數(shù)使用高度優(yōu)化的類庫實現(xiàn),運行速度十分快速。安全性高:靈活安全的權限和密碼系統(tǒng)允許主機的基本驗證。連接到服務器時,所有的密碼傳輸均采用加密形式,從而保證了密碼的安全。成本低:是一種完全免費的產(chǎn)品,用戶可以從網(wǎng)上免費下載。數(shù)據(jù)庫存儲容量大:它最大有效表容量通常是由操作系統(tǒng)對文件的大小決定的,而不是MySQL內部限制決定的。支持強大的內置函數(shù):PHP中提供可大量的內置函數(shù),內置了數(shù)據(jù)庫連接、文件上傳等功能,MySQL支持大量的擴展庫,為快速開發(fā)Web應用提供方便。PHP提供了對MySQL數(shù)據(jù)庫進行操作的一系列函數(shù),MySQL數(shù)據(jù)庫支持標準SQL語句。[7]因此用PHP編寫實現(xiàn)對數(shù)據(jù)庫查詢的程序并不復雜,PHP和MySQL是最佳的搭配。第3章需求分析3.1可行性分析3.1.1經(jīng)濟上的可行性在各大中小型企業(yè)中,企業(yè)辦公都離不開計算機,人手一臺電腦,一般能在中小企業(yè)的支付能力范圍中。而且,以后能為企業(yè)到來許多的利益,例如,不需要使用大量的人手來手工整理員工信息,因此所帶來的利益還是十分的客觀的,如此看來,在經(jīng)濟上是可行的。3.1.2技術上的可行性考慮到硬件和軟件技術是否能滿足用戶提出的要求,PHP成熟的語言環(huán)境和MySQL安全的數(shù)據(jù)庫,在目前趨勢來分析,成功的案例有許多。因此在技術方面是非常適合來支持企業(yè)人事信息管理系統(tǒng)的。3.1.3管理上的可行性開發(fā)一個企業(yè)的人事信息管理系統(tǒng),大大地為系統(tǒng)維護人員提供了方便來進行人事信息數(shù)據(jù)的備份、日常的安全管理,系統(tǒng)意外崩潰是數(shù)據(jù)恢復等工作。對企業(yè)的人事信息進行靈活地維護。3.2系統(tǒng)目標針對現(xiàn)代的信息技術更新發(fā)育的速度,近來的信息化管理已經(jīng)在逐步跨入我們現(xiàn)實生活中的各種商業(yè)應用,可見實現(xiàn)一個符合現(xiàn)代企業(yè)基本要求的人事信息管理系統(tǒng)對企業(yè)的發(fā)展,節(jié)省時間、成本意義十分重大。界面簡潔大方,不過于花俏,信息查詢靈活,數(shù)據(jù)存儲可靠。對用戶登錄的數(shù)據(jù)進行校驗,防止他人竊看私人信息。對企業(yè)內部的部門管理,添加,修改,刪除便捷,提高企業(yè)部門管理的高效性。能夠對新進員工,進行快速地錄入相關的基本數(shù)據(jù)信息。進行高效地管理。實現(xiàn)對員工工資的管理,根據(jù)考勤高效自動結算實發(fā)工資,解決了傳統(tǒng)手算繁瑣又容易出錯的弊端。開發(fā)了一個相對簡單又能解決上班遲到早退的問題的解決功能,實現(xiàn)簽到簽退功能。3.3系統(tǒng)流程圖當新進入員工時,管理員添加新的員工用戶,對此管理員進行添加填寫相關信息操作,具體流程圖如圖3.1。員工用戶及相關基本信息員工用戶及相關基本信息員工登錄修改密碼管理員添加、修改、刪除部門信息查詢添加、修改、刪除請假人員信息查詢填寫工資信息添加、修改、刪除查詢圖3.1流程圖進行簽到簽退考勤新進員工3.4功能需求系統(tǒng)登錄。有管理員,普通用戶兩種。普通用戶屬于員工,管理員有公司領導指定專門負責人。管理員可添加用戶,每個用戶可以修改自己的密碼。部門信息管理。包括部門編號、部門名稱、負責人、電話、人數(shù)。管理員擁有查看、添加、修改、刪除。普通用戶只能查看。員工信息管理。包括姓名、性別、出生年月、E-mail、專業(yè)、學歷、進入公司時間等基本的信息。管理員添加員工信息,系統(tǒng)自動生成員工編號,可根據(jù)入職時間生成,且能根據(jù)編號知道性別。管理員修改員工信息,選擇一個員工對其基本信息進行修改。查詢可按姓名查詢。管理員刪除員工信息,選擇刪除,也可先查詢需要刪除的員工信息再刪除。員工工資管理。管理員可以添加和修改已有財務記錄,基本工資可根據(jù)出勤記錄計算。包括數(shù)據(jù)項有員工編號、姓名、所在部門、職務、基本工資、崗位工資、加班工資、養(yǎng)老金、醫(yī)療保險,住房公積金,稅點,實發(fā)工資。員工考勤管理。包括日期、員工編號、簽到簽退時間、是否請假等。管理員添加、查詢、修改、刪除。普通用戶可查詢自己的出勤記錄。員工進入該系統(tǒng),可在考勤管理,實現(xiàn)簽到簽退功能,記錄上班時間來對應是否遲到。實現(xiàn)基于B/S模式的企業(yè)人事信息管理系統(tǒng)。第4章系統(tǒng)設計4.1系統(tǒng)功能設計4.1.1系統(tǒng)功能模塊設計該系統(tǒng)功能設計為5大模塊,為企業(yè)的人事信息管理實現(xiàn)了高效地操作流程管理,以及順應了時代的科技信息變化,節(jié)省了時間,降低了成本,擁有便捷的通道管理企業(yè)的人事信息,解決了各種繁瑣的傳統(tǒng)模式所帶來的各種麻煩。第一個模塊:系統(tǒng)登錄功能設計。分為管理員和普通用戶(即為企業(yè)員工)兩種登錄用戶。企業(yè)的管理員為一個擁有生成員工賬號的最高權限。第二個模塊:部門管理模塊設計。管理員實現(xiàn)添加、修改、刪除、查詢功能。添加功能的內容有部門id、部門名稱、負責人、聯(lián)系電話、還有人數(shù)。電話位數(shù)為8位,長度錯誤會出現(xiàn)報錯。修改功能同樣實現(xiàn)下拉列表框的快速選擇操作,為企業(yè)爭取到高效地部門信息操作管理;刪除功能相對簡單,選擇要刪除的復選框,再點擊刪除按鈕,即可實現(xiàn)刪除操作。普通用戶(員工用戶)只擁有查詢的權限,可按部門名稱查詢,功能實現(xiàn)下拉列邊框快速選擇操作。第三個模塊:員工管理模塊設計。管理員實現(xiàn)添加、修改、刪除、查詢功能。添加功能的內容有用戶姓名,默認密碼,統(tǒng)一為123456六位阿拉伯數(shù)字,性別,生日日期,郵箱,專業(yè),學歷,入職時間,崗位,所在部門。并且生日時間和入職時間選用日期列表選擇,擺脫繁瑣的手動輸入,所在部門從數(shù)據(jù)庫獲取管理員已經(jīng)添加的部門名稱實現(xiàn)下拉列表框選擇。最后其他選項同樣實現(xiàn),其中郵箱格式設置為@郵箱格式,輸錯格式則提示框報錯提醒。員工id根據(jù)入職時間生成,并與性別有關,末位數(shù)字為1是男,末位數(shù)字為0是女。普通用戶只能查看到自己的基本信息。第四個模塊:工資管理模塊設計。管理員設計添加、修改、刪除、查詢功能。表單內容有:工號、基本工資、崗位工資、額外工資、養(yǎng)老金、醫(yī)療保險、住房公積金、稅點,并計算取得實發(fā)工資。便捷地算出個人實發(fā)工資,具被準確性、高效性。普通用戶設計只能查看自己的工資信息。第五個模塊:考勤管理模塊設計。管理員設計記錄員工請假信息及原因,并實現(xiàn)按工號查詢。普通用戶設計簽到簽退功能,來進行考勤。4.1.2系統(tǒng)功能結構圖設計一個企業(yè)人事信息管理系統(tǒng),首先要設計功能結構圖,系統(tǒng)的功能結構圖如圖4.1。企業(yè)人事信息管理系統(tǒng)企業(yè)人事信息管理系統(tǒng)圖4.1系統(tǒng)功能結構圖普通用戶管理員查詢部門信息查詢個人基本信息查詢個人工資信息簽到簽退考勤系統(tǒng)登錄部門管理員工管理工資管理考勤管理添加刪除修改查詢部門信息添加刪除修改查詢員工信息添加刪除修改查詢工資信息記錄請假員工信息4.2數(shù)據(jù)庫設計4.2.1數(shù)據(jù)庫設計需求分析需求分析的任務是通過詳細調查現(xiàn)實世界要處理的對象,充分了解原系統(tǒng)工作概況,明確用戶的各種需求[8]。通過調查用戶需求,分析確定了系統(tǒng)的以下功能:部門管理:主要是添加部門ID、部門的名稱、部門負責人、聯(lián)系電話以及部門的人數(shù)。員工管理:這部分是企業(yè)人事信息管理系統(tǒng)的核心部門,主要的功能是用來添加、修改和刪除員工的基本信息,有員工id、姓名、性別、生日、郵箱、專業(yè)、學歷、入職時間、崗位、部門等信息。工資管理:主要是員工的基本工資、崗位工資、加班工資,以及五險一金的百分比,實際工資??记诠芾恚褐饕袉T工id、日期、簽到時間、簽退時間、是否請假。4.2.2數(shù)據(jù)庫概念結構設計在本系統(tǒng)中我采用“實體聯(lián)系模型”(E-R模型)來描述數(shù)據(jù)庫的結構與語義,以對現(xiàn)實世界進行第一次抽象。E-R模型直接從現(xiàn)實世界抽象出實體類型及實體間聯(lián)系,然后用E-R圖來表示數(shù)據(jù)模型??偟腅-R關系如圖4.2。工資管理員員工工資管理員員工考勤管理查詢部門簽到管理含有1n111111n1n11n圖4.2總R-R關系圖部門信息(id,部門id,部門名稱,負責人,電話,人數(shù))。員工信息(id,員工id,姓名,性別,生日,郵箱,專業(yè),學歷,入職時間,崗位,專業(yè),部門)。工資信息(id,員工id,基本工資,崗位工資,額外工資,養(yǎng)老金,醫(yī)療,住房公積金,稅點,實領工資)??记谛畔ⅲ╥d,員工id,日期,簽到時間,簽退時間,是否請假)。若一個關系有多個候選碼,則選定一個其中一個為主碼(Primarykey)。候選碼的諸屬性成為主屬性(Primeattribute)。不包含在任何候選碼中的屬性成為非主屬性.[8]在上面的關系模式中,加下劃線的稱為主屬性。在該系統(tǒng)中,主鍵都設置為id。企業(yè)人事信息管理系統(tǒng)主要用到登錄表、部門表、員工信息表、工資表、考勤表。為了保證系統(tǒng)的安全,在登錄系統(tǒng)的時候,需要輸入管理員正確的用戶名和密碼,來進行相應的各種操作,生成員工賬號,默認密碼等。登錄表:(管理員實體)如圖4.3。圖4.3圖4.3登錄實體及屬性在一個企業(yè)人事信息管理系統(tǒng)中,部門表是企業(yè)中基本的信息,能讓員工充分的了解、認識公司的結構,快速熟悉部門相關基本信息。部門表:(部門實體)如圖4.4。圖4.4圖4.4部門實體及屬性在一個企業(yè)人事信息管理系統(tǒng)中,員工的信息是其中重要的一個表,這個表記錄了員工的基本信息,所以表的字段有點多,并且員工可根據(jù)管理員生成的賬號進行登錄,進行密碼修改,來保證安全性的操作。員工信息表:(員工信息實體)如圖4.5。圖圖4.5員工實體及屬性在企業(yè)中,工資是每個企業(yè)必不可少的,但是如何結算工資又是各有不同,在數(shù)據(jù)庫中設計了一下字段,并且工資與考勤掛鉤,實現(xiàn)對員工的考核,加強員工的制度管理。工資表:(工資實體)如圖4.6。圖4.6圖4.6工資實體及屬性最后,在本企業(yè)人事信息管理系統(tǒng)中,涉及到考勤結算工資,員工的考勤信息是通過數(shù)據(jù)庫來進行記錄和相關操作的??记谛畔ⅲ海记趯嶓w)如圖4.7。管理員有添加請假信息,普通用戶只能實現(xiàn)簽到簽退進行考勤記錄。圖4.7考勤圖4.7考勤實體及屬性在數(shù)據(jù)庫設計中,使用的是phpMyAdmin()是一個與MySQL交互的Web界面,具有創(chuàng)建表、導入或導出記錄等功能。phpMyAdmin是一個圖形界面,是PHP編寫的最流行的Web軟件。且phpMyAdmin設計合理并且易于使用。[9]表4.1admin表字段名數(shù)據(jù)類型是否為空是否為主鍵注釋idint(32)否是序號a_idint(32)否否賬號pwdvarchar(64)否否密碼namevarchar(64)否否管理員表4.2atten表字段類型是否為空是否為主鍵注釋idint(11)否是序號u_idint(16)否否員工iddayvarchar(16)否否日期begin_timevarchar(16)否否簽到時間end_timevarchar(16)否否簽退時間表4.3part表字段類型是否為空是否為主鍵注釋idint(11)否是序號p_idint(11)否否部門idnamevarchar(64)否否部門名稱bossvarchar(16)否否部門負責人telvarchar(16)否否聯(lián)系電話numint(10)否否部門人數(shù)表4.4user表字段類型是否為空是否為主鍵注釋idint(11)否是序號u_idint(16)否否員工idpwdvarchar(64)否否密碼namevarchar(64)否否姓名sexvarchar(2)否否性別birthdate否否生日e_mailvarchar(50)否否郵箱majorvarchar(16)否否專業(yè)eduvarchar(16)否否學歷timedatatime否否入職時間positionvarchar(16)否否崗位partvarchar(16)否否所在部門表4.5wages表字段類型是否為空是否為主鍵注釋idint(11)否是序號u_idint(16)否否員工idbase_wfloat(10,2)否否基礎工資position_wfloat(10,2)否否崗位工資extra_wfloat(10,2)否否額外工資old_enfloat(10,2)否否養(yǎng)老金medical_enfloat(10,2)否否醫(yī)療保險house_enfloat(10,2)否否住房公積金tax_enfloat(10,2)否否所得稅real_wfloat(10,2)否否實領工資第5章系統(tǒng)實現(xiàn)5.1模塊界面設計5.1.1登錄模塊界面設計登錄頁面有輸入賬號和密碼文本框,還有選擇登錄用戶的權限選擇,系統(tǒng)登錄成功后,進入主系統(tǒng)界面,如果用戶名不對,則會彈出用戶不存在提示框,并停留在登錄頁面,如果密碼不對,則會彈出密碼不正確的提示框。如果賬號密碼都正確,頁面就會根據(jù)登錄的權限選擇進入不同的主系統(tǒng)頁面,只有管理員才有更多的權限,比如添加、修改、刪除、查詢權限,而普通用戶,即員工用戶只能進行很少部分的操作,比如,查詢操作。具體登錄操作流程圖如5.1。開始開始登錄驗證根據(jù)不同的權限進入不同的主系統(tǒng)YN圖5.1登錄流程圖登錄界面美觀,符合現(xiàn)代企業(yè)的形象。如圖5.2。圖圖5.2登錄界面圖如果后臺驗證成功后,則會跳轉到相應的主系統(tǒng)界面。管理員界面如圖5.3,普通用戶如圖5.4。圖5.3管理員界面圖圖5.3管理員界面圖圖5.4普通用戶界面圖圖5.4普通用戶界面圖5.1.2部門信息管理界面設計該系統(tǒng)的部門管理設計頁面只有管理員權限登錄才能有對公司的部門進行添加、修改、刪除、查詢操作。如圖5.5。圖5.5管理員添加部門界面圖5.5管理員添加部門界面點擊添加按鈕,填寫需求信息,并確定添加即可在下面表單中出現(xiàn)記錄。而修改和刪除必須選擇一條條目才能進行修改和刪除。5.1.3員工信息管理界面設計該系統(tǒng)界面的員工信息管理管理員擁有添加、修改、刪除、查詢的按鈕功能操作,普通用戶只能做簡單的查詢、瀏覽相關的基本信息。如圖5.6。圖5.6管理員員工管理界面圖5.6管理員員工管理界面5.1.4工資信息管理界面設計該系統(tǒng)界面的工資信息管理有管理員對員工工資信息及其福利的填寫,并根據(jù)考勤記錄來實現(xiàn)考核,計算實領的工資信息。如圖5.7。圖5.7管理員工資管理界面圖5.7管理員工資管理界面5.1.5考勤信息管理界面設計該系統(tǒng)的考勤信息,管理員沒有權限進行修改員工的上下班簽到信息,只能添加員工的請假信息,員工實現(xiàn)簽到、簽退操作。管理員能對員工請假信息進行添加。如圖5.8。圖5.8管理員考勤管理界面圖5.8管理員考勤管理界面5.2主要模塊功能代碼實現(xiàn)5.2.1系統(tǒng)登錄代碼實現(xiàn)在HTML中輸入JavaScript時,需要使用<script>標簽。在<script>標簽中,language特性聲明要使用的腳本語言。[10]登錄部分代碼如下: <style> .body{ background:url(../image/bgImage.png)no-repeat; background-size:100%100%; } </style>//設置背景圖片 </div><!--/main--> <linkrel="stylesheet"type="text/css"href="../css/html/login.css"property=""/> <script> functionuserLogin(){ document.getElementById('userId').value=document.getElementById('adminId').value; document.getElementById('userPwd').value=document.getElementById('adminPwd').value; if(document.getElementById('adminId').value==''||document.getElementById('adminPwd').value==''){return;} document.getElementById('userForm').submit(); } </script>管理員賬號為888888,密碼為12345a。登錄時,用戶名輸錯或密碼輸錯,會彈出報錯提示框。如圖5.9,圖5.10。圖圖5.9用戶名報錯框圖5.10圖5.10密碼報錯框調用函數(shù)代碼如下:$userId=$_GET['userId'];//獲取傳值頁面name屬性的值 $userPwd=$_GET['userPwd'];//獲取傳值頁面UserPwd屬性的值 //讀取所有數(shù)據(jù) if(!empty($_GET['userId'])&&!empty($_GET['userPwd'])){ if($result=mysql_query("SELECT*FROMadminWHEREa_id='$userId'")){ $row=mysql_fetch_array($result); switch(($row['name']?2:0)+($row['pwd']===$userPwd)){ case0: echo"<script>alert('用戶不存在');window.location.href='/html/login.html'</script>"; exit; case1: echo"<script>alert('出錯');window.location.href='/html/login.html'</script>"; exit; case2: echo"<script>alert('密碼錯誤');window.location.href='/html/login.html'</script>"; exit; case3: $_SESSION['userName']=$row['name']; break; default: echo"<script>alert('出錯');window.location.href='/html/login.html'</script>"; exit; } }else{ echo"<script>alert('程序錯誤');window.location.href='/html/login.html'</script>";exit; } }管理員和普通用戶代碼前面使用了session_start()函數(shù),創(chuàng)建、訪問或刪除session。這個函數(shù)將試圖在session首次啟動時發(fā)送一個cookie,因此它必須在任何HTML或空白被發(fā)送至Web瀏覽器之前調用。因此,在使用session的頁面中,必須在腳本的起始運行調用session_start()函數(shù)。[11]調用代碼如下:<?phperror_reporting('error');session_start(); if($_GET['opera']=='loginOut'){ $_SESSION['user']=''; header('location:/html/login.html'); exit; } date_default_timezone_set(PRC);?>5.2.2部門信息管理模塊代碼實現(xiàn)管理員添加部門,添加部門信息。同時,已經(jīng)添加過的部門名稱,如果再次添加,則會出現(xiàn)部門已經(jīng)存在的提示框。同理部門ID亦是如此。寫入部門信息代碼如下:$result=mysql_query("SELECT1FROMpartWHEREname='$name'limit1");if($row=mysql_fetch_array($result)){echo'<script>alert("部門名稱已經(jīng)存在")</script>';}else{$result=mysql_query("SELECT1FROMpartWHEREp_id='$p_id'limit1");if($row=mysql_fetch_array($result)){echo'<script>alert("部門id已經(jīng)存在")</script>';}else{mysql_query("insert`part`(`p_id`,`name`,`boss`,`tel`,`num`)values($p_id,'$p_name','$p_boss','$p_tel','$p_num')");}修改部門信息,并且更新數(shù)據(jù)庫的部門信息。修改部門信息代碼如下: $result=mysql_query("updatepartsetp_id='$p_id',name='$p_name',boss='$p_boss',tel='$p_tel',num='$p_num'WHEREp_id='$p_id'");選擇要刪除的條目,進行刪除操作,并從數(shù)據(jù)庫中刪除。刪除部門信息代碼如下: $result=mysql_query("select1FROMpartWHEREid='$p_id'limit1");if($row=mysql_fetch_array($result)){ mysql_query("deleteFROMpartWHEREid='$p_id'");}else{echo'<script>alert("無法刪除本條數(shù)據(jù),數(shù)據(jù)庫出錯")</script>';}5.2.3員工信息管理模塊代碼實現(xiàn)添加員工,生成自動生成員工賬號,并且根據(jù)入職時間、性別生成自動生成員工編號,尾聲數(shù)字為‘1’代表‘男’,尾數(shù)數(shù)字為‘0’代表‘女’。實現(xiàn)代碼如下: if($sex=='男'){ $sexVal=1; }else{ $sexVal=0; } $time_r=str_replace("-","",$time); $u_id=$time_r.mt_rand(100000,999990).$sexVal; mysql_query("INSERTINTO`user`(`id`,`u_id`,`pwd`,`name`,`sex`,`birth`,`e_mail`,`major`,`edu`,`time`,`position`,`part`)VALUES(NULL,$u_id,'$pwd','$name','$sex','$birth','$e_mail','$major','$edu','$time','$position','$part')");選擇要修改的條目,對員工用戶信息進行修改操作,并將修改的信息更新到數(shù)據(jù)庫。實現(xiàn)代碼如下: $result=mysql_query("updateusersetpwd='$pwd',name='$name',birth='$birth',e_mail='$e_mail',major='$major',edu='$edu',time='$time',position='$position',part='$part'WHEREid='$id'");刪除用戶信息操作,實現(xiàn)從界面、數(shù)據(jù)庫刪除不需要的信息,代碼如下: $result=mysql_query("select1FROMuserWHEREid='$u_id'limit1");if($row=mysql_fetch_array($result)){ mysql_query("deleteFROMuserWHEREid='$u_id'");}else{echo'<script>alert("無法刪除本條數(shù)據(jù),數(shù)據(jù)庫出錯")</script>';}5.2.4工資信息管理模塊代碼實現(xiàn)對員工工資信息寫入,實現(xiàn)實際工資計算,并且實際工資根據(jù)考勤計算。實現(xiàn)代碼如下: mysql_query("INSERTINTO`wages`(`id`,`u_id`,`base_w`,`position_w`,`extra_w`,`old_en`,`medical_en`,`house_en`,`tax_en`)VALUES(NULL,'$u_id','$base_w','$position_w','$extra_w','$old_en','$medical_en','$house_en','$tax_en')"); }實領工資的算法代碼實現(xiàn)如下:if($_GET['nav']=='wages'&&empty($_GET['searchWages'])){ echo'<tr><th>選取</th><th>工號</th><th>基本工資</th><th>崗位工資</th><th>額外工資</th><th>養(yǎng)老金</th><th>醫(yī)療</th><th>住房公積金</th><th>稅點</th><th>實領工資</th></tr>'; if(!empty($_GET['pageNum'])){ $pageNum=$_GET['pageNum']; $start=($pageNum-1)*10; }else{ $start=0; } $length=10; $result=mysql_query("SELECT*FROMwageslimit$start,$length"); while($prow=mysql_fetch_array($result)){ $u_id=$prow['u_id']; $day=date("Y").'0'.(intval(date("m"))-1); $resultB=mysql_query("SELECT*FROMattenwheredaylike'%$day%'ANDu_id='$u_id'"); $workAll=0; $extra=0; while($prowa=mysql_fetch_array($resultB)){ $work=1; if($prowa['leave']==''||$prowa['leave']=='0'){ $begin=$prowa['begin_time']; $late=intval(substr($begin,0,2))-8+intval(substr($begin,2,2))/60;//遲到時間;負數(shù)為遲到,單位小時 if(!empty($prowa['end_time'])){ $end=$prowa['end_time']; $before=intval(substr($end,0,2))-18+intval(substr($end,2,2))/60;//早退 $extra=(intval(substr($end,0,2))-intval(substr($begin,0,2)))+(intval(substr($end,2,2))-intval(substr($begin,2,2)))/60; }else{ $before=-5;//未簽退 $extra=0; } if($late>0.5){ $work=0.8; } if($late>2){ $work=0.6; } if($late>4){ $work=0;} if($before<-0.5){ $work=$work-0.2; } if($before<-2){ $work=$work-0.4; } if($before<-4){ $work=0; } }else{ if($prowa['leave']=='1'){ $work=0.6; } if($prowa['leave']=='2'){ $work=0.8; } } if($work<0){ $work=0; } //echo$work.'/'; $workAll+=$work; } $workDay=$workAll/22; if($workDay<0.9){ $baseDeBuffer=0.8; }else{ $baseDeBuffer=1; }$extraWages=ceil($extra*10); $workWages=ceil($prow['base_w']*$baseDeBuffer+$prow['position_w']*$workDay+$extraWages); echo'<tr><td><inputtype="checkbox"id="'.$prow['id'].'"name="partCheckbox"onclick="selectTr(this)"></td><td>'.$prow['u_id'].'</td><td>'.$prow['base_w'].'</td><td>'.$prow['position_w'].'</td><td>'.$prow['extra_w'].'</td><td>'.$prow['old_en'].'</td><td>'.$prow['medical_en'].'</td><td>'.$prow['house_en'].'</td><td>'.$prow['tax_en'].'</td><td>'.$workWages.'</td></tr>';}計算方法:早上8點上班,晚上6點下班,只簽到未簽退按照上0.5天班算,遲到半小時內按照0.8天班算,遲到兩小時按照0.6天班算,遲到超過四小時不算工時,早退半小時扣0.2天工時,早退兩小時扣0.4天工時,早退4小時算沒上班,事假按照0.6天工時,病假0.8天工時,一個月工時打不到19.8天基礎工資只拿80%,加班一小時10塊錢計算。通過以上計算得出一個月的上班時間,正常工資等于基本工資加崗位工資,實際工資=基本工資*(不滿19.8天將是80%,超過19.8天基本工資全拿)+崗位工資*上班天數(shù)/22+加班工資;五險一金按照數(shù)據(jù)存放的比例*基本工資。5.2.5考勤信息管理模塊代碼實現(xiàn)為了保證公平、公正性,管理員沒有刪除或修改員工的考勤記錄,只有添加員工請假信息。while($prow=mysql_fetch_array($result)){ if($prow['leave']='1'){ $leave="事假"; } if($prow['leave']='2'){ $leave="病假"; } if($prow['leave']='0'){ $leave="正常"; }echo'<tr><td><inputtype="checkbox"id="'.$prow['id'].'"name="partCheckbox"onclick="selectTr(this)"></td><td>'.$prow['u_id'].'</td><td>'.$prow['day'].'</td><td>'.$prow['begin_time'].'</td><td>'.$prow['end_time'].'</td><td>'.$leave.'</td></tr>';}員工通過登錄網(wǎng)站進行簽到簽退考勤,來記錄是否上班遲到,能起到督促的作用,對企業(yè)的員工的管理有很大的幫助。實現(xiàn)簽到簽退代碼如下:if($_SESSION['user']!=''){ $u_id=$_SESSION['u_id']; echo'<divstyle="width:100%;height:150px;float:right;background:url(image/welcome.png)no-repeat;background-size:100%100%;"><div><aonclick="loginOut()"style="color:#fff;float:right;">退出</a></div><divstyle="width:120px;height:30px;float:right"><spanstyle="color:#fff;">歡迎你:'.$_SESSION['user'].'</span></div></div>'; echo'<divstyle="width:100%;height:100px;position:absolute;"><span>當前時間:</span>'.date("Y-m-dH:i:sa"); echo'<formaction="userControl.php"method="get"><inputtype="hidden"name="check"value="up">'; $day=date("Y").date("m").date("d"); $result=mysql_query("SELECTCOUNT(id)FROMattenwhereday='$day'andu_id='$u_id'"); $row=mysql_fetch_row($result); if($row[0]>0){ echo'<spanstyle="color:red;">已經(jīng)簽到</span>'; }else{ echo'<inputtype="submit"class="control-button"value="簽到">'; } echo'</form>'; $result=mysql_query("SELECTend_timeFROMattenwhereday='$day'andu_id='$u_id'");$row=mysql_fetch_array($result); if(empty($row['end_time'])){ echo'<formaction="userControl.php"method="get"><inputtype="hidden"name="check"value="down"><inputtype="submit"class="control-button"value="簽退"></form>'; }else{ echo'<spanstyle="color:red;">已經(jīng)簽退</span>'; } echo'</div>'; } if($_GET['check']=='up'){ $u_id=$_SESSION['u_id']; $day=date("Y").date("m").date("d"); $begin_time=date("H").date("i"); $result=mysql_query("SELECTCOUNT(id)FROMattenwhereday='$day'andu_id='$u_id'"); $row=mysql_fetch_row($result); if($row[0]>0){ mysql_query("updateattensetbegin_time='$leaveAtten'whereday='$day'andu_id='$u_id'"); }else{ mysql_query("insert`atten`(`u_id`,`day`,`begin_time`,`end_time`,`leave`)values('$u_id','$day','$begin_time','',0)"); } } if($_GET['check']=='down'){ $u_id=$_SESSION['u_id']; $day=date("Y").date("m").date("d"); $end_time=date("H").date("i");$result=mys
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論