公司人事管理系統(tǒng)設(shè)計
公司人事管理系統(tǒng)設(shè)計,公司,人事管理系統(tǒng),設(shè)計
課 程 設(shè) 計課程設(shè)計名稱: 公司人事管理系統(tǒng) 專 業(yè) 班 級: 網(wǎng)絡(luò)系統(tǒng)管理1401班 學 生 姓 名 : 蘇云鵬 學 號 : 201430910109 指 導 教 師 : 王雪濤 課程設(shè)計時間: 2014-2015第二學期 計算機網(wǎng)絡(luò)系統(tǒng)管理 專業(yè)課程設(shè)計任務(wù)書學生姓名蘇云鵬專業(yè)班級網(wǎng)管1401學號201430910109題 目 公司人事管理系統(tǒng)課題性質(zhì)E其它課題來源D老師指導教師王雪濤同組姓名胡筱陽主要內(nèi)容此企業(yè)人事管理系統(tǒng)采用B/S結(jié)構(gòu)、基于ASP.NET的程序設(shè)計,主要對企 業(yè)員工的信息以及人事相關(guān)的工作進行管理,以方便企業(yè)建立一個全面強大的員工數(shù)據(jù)庫管理系統(tǒng)。它在Microsoft Visual Studio.NET 2010開發(fā)環(huán)境下設(shè)計系統(tǒng)的前臺界面和使用C#語言編寫后臺操作程序,完成數(shù)據(jù)的輸入、查詢、修改、存儲、添加、刪除的基本功能;并使用SQL Server 2005數(shù)據(jù)庫形成后臺數(shù)據(jù)庫的支持及數(shù)據(jù)存儲。本文詳細介紹了企業(yè)人事管理系統(tǒng)的功能需求,系統(tǒng)的概要設(shè)計、詳細設(shè)計和具體實現(xiàn),并簡要介紹了系統(tǒng)開發(fā)所采用的過程及測試。任務(wù)要求本系統(tǒng)重點研究的問題有以下幾點:系統(tǒng)的功能需求系統(tǒng)的概要設(shè)計、詳細設(shè)計和具體實現(xiàn)系統(tǒng)網(wǎng)站的前臺界面設(shè)計、后臺編程設(shè)計系統(tǒng)調(diào)試過程及安全測試參考文獻李敏波.C#高級編程M.北京:清華大學出版社,2000 周存杰.Visual.C#.NET.網(wǎng)絡(luò)核心編程M.北京:清華大學出版社,2002 袁然,王誠梅編著SQLServer2000中文版經(jīng)典實例教程M.冶金工業(yè)出版社,2006.11鄭阿奇.SQLServer2000實用教程第二版川北京電子工業(yè)出2005崔森,陳明非.VisualC#程序設(shè)計教程北京機械工業(yè)出版社,2007.1審查意見指導教師簽字:教研室主任簽字: 年 月 日 說明:本表由指導教師填寫,由教研室主任審核后下達給選題學生,裝訂在設(shè)計(論文)首頁實驗報告一 需求分析通過對人事系統(tǒng)的整個應用情況作全面的、詳細的調(diào)查,確定人事管理的目標,收集支持系統(tǒng)總的設(shè)計目標的基礎(chǔ)數(shù)據(jù)和對這些數(shù)據(jù)的要求,確定用戶的需求??紤]在用戶進入系統(tǒng)時應該做什么,進入系統(tǒng)之后又應該做什么,提供那些服務(wù)等。例如,對于人事信息服務(wù)子系統(tǒng),在用戶進入時首先得調(diào)用相關(guān)數(shù)據(jù)庫表,找出員工的相關(guān)情況;進入系統(tǒng)后,系統(tǒng)得提供員工信息的添加、修改、刪除功能。另外,針對本系統(tǒng)的特殊情況,同時也考慮系統(tǒng)的可移植性,在系統(tǒng)中增加了數(shù)據(jù)庫路徑的維護部分。最后,考慮到系統(tǒng)的安全性,還在系統(tǒng)中特別增加了加密界面的功能二 程序流程圖人事管理系統(tǒng)1整體框架圖:數(shù)據(jù)庫維護模塊系統(tǒng)維護模塊信息管理模塊2具體功能框圖登陸管理系統(tǒng)是否登陸成功是否添加管理人事信息3 運行環(huán)境硬件:CPU, 內(nèi)存, 主板, 硬盤, 顯卡, 鍵盤, 顯示器等等。軟件:Windows XP Visual Studio2013應用軟件。4 開發(fā)工具和編程語言開發(fā)工具:Visual Studio 2013編程語言:C# 語言5 詳細設(shè)計1) 登陸系統(tǒng)using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Net;/ using System.IO; public partial class Default8 : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) /TextBox1.Text = RequestSTAFFNAME; /TextBox1.Text = Requestuserid; private void UpLoadFile()/ / string name1 = RequestSTAFFNAME.ToString(); /string id1 = RequestSTAFFNAME.ToString(); /string filename11 = name1.ToString().Trim() + ; /string filename11 = name1.ToString().Trim() if (FileUpload1.HasFile) if (FileUpload1.PostedFile != null) / string folder = + RequestSTAFFNAME.ToString().Trim(); /string folder = + RequestSTAFFNAME.ToString().Trim(); /string banji = folder.Substring(0, 9); string str; / str = Server.MapPath(.) + UploadFile + + folder; str = Server.MapPath(.) + UploadFile + this.FolderCreate(str); HttpPostedFile hpf = this.FileUpload1.PostedFile; string FileSize =2) 修改密碼 using System; usingSystem.Data; usingSystem.Configuration; usingSystem.Collections; usingSystem.Web; usingSystem.Web.Security; usingSystem.Web.UI; usingSystem.Web.UI.WebControls; usingSystem.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; public partialclassDefault3 System.Web.UI.PageDatacondataconn =neDatacon(); protectedvoidPage_Loaobjectsender, EventArgs e) protectedvoidButton1_Clickobjectsender,EventArge) qlConnectioncon = dataconn.getcon(); con.Open(); /SqlCommand com = con.CreateCommand(); /com.CommandText = select count(*) from examstu_info where stu_id= +TextBox1.Text.ToString().Trim() + /int count2 = Convert.ToInt32(com.ExecuteScalar(); /if (count2 0) / stringQuerystr =select USERNAME,PASSWORD from T_USER where USERNAME=extBox1.Text.ToString().Trim() + SqlCommandmyCommand =newSqlCommand(Querystr, con); SqlDataReadermyDataReader = myCommand.ExecuteReader(); myDataReader.Read( /TextBox2.Text = myDataReader.GetValue(0).ToString(); TextBox3.Text = myDataReader.GetValue(0).ToString(); TextBox4.Text = myDataReader.GetValue(1).ToString(); con.Close()protectedvoid Button2_Click(object sender, EventArgse) SqlConnectioncon = dataconn.getcon(); con.Open(); stringsqlname = update T_USER set PASSWORD= + + TextBox4.Text + +where USERNAME= + + TextBox3.Text + ;SqlCommandcmdname = newSqlCommand(sqlname, con); cmdname.ExecuteNonQuery(); con.Close(); protected voidButton3_Click(object sender, EventArgse) protectedvoidButton1_Click1(objectsender, EventArgse) SqlConnectioncon = dataconn.getcon(); con.Open(); /SqlCommand com = con.CreateCommand(); /com.CommandText = select count(*) from examstu_info where stu_id= +TextBox1.Text.ToString().Trim() + /int count2 = Convert.ToInt32(com.ExecuteScalar(); /if (count2 0)/ stringQuerystr = select USERNAME,PASSWORD from T_USER where USERNAME=TextBox1.Text.ToString().Trim() + SqlCommand myCommand = newSqlCommand(Querystr, con); SqlDataReadermyDataReader = myCommand.ExecuteReader(); myDataReader.Read(); /TextBox2.Text = myDataReader.GetValue(0).ToString(); TextBox3.Text = myDataReader.GetValue(0).ToString(); TextBox4.Text = myDataReader.GetValue(1).ToString(); con.Close(); 3驗證碼usinSystem;usingSystem.Data; usingSystem.Configuration;usingSystem.Collections;usingSystem.Web; usingSystem.Web.Security;usingSystem.Web.UI; usingSystem.Web.UI.WebControls; usingSystem.Web.UI.WebControls.WebParts;usingSystem.Web.UI.HtmlControls;usingSystem.Drawing;usingSystem.Drawing.Design;usingSystem.Drawing.Drawing2D;usingSystem.Drawing.Printing;usingSystem.Drawing.Imaging;Using System.IO;public partial class CreateCheckCode : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) CreateCheckCodeImage(GenCode(4); /*/ / / / / private string GenCode(int num) string source = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z ; string code = ; Random rd = new Random(); int i; for (i = 0; i num; i+) code += sourcerd.Next(0, source.Length); /code += str.Substring(rd.Next(0, str.Length), 1); return code; /*/ / / / private void CreateCheckCodeImage(string checkCode) if (checkCode.Trim() = | checkCode = null) return; SessionCode = checkCode; System.Drawing.Bitmap image = new System.Drawing.Bitmap(int)(checkCode.Length * 15), 22); Graphics g = Graphics.FromImage(image); try Random random = newRand g.Clear(Color.White); inti; for (i = 0; i 30; i+) int x1 = random.Next(image.Width); intx2 = random.Next(image.Width); int y1 = random.Next(image.Height); inty2 = random.Next(image.Height); g.DrawLine(newPenColor.Gainsboro), x1, y1, x2, y2); Fontfont = newSystem.Drawing.FonArial12, (System.Drawing.FontStyle.Bold); System.Drawing.Drawing2D.LinearGradientBrush brush = newSystem.Drawing.Drawing2D.LinearGradientBrush(newRectangle(0, 0, image.Width, image.Height), Color.MidnightBlue, Color.Green, 1.2F, g.DrawString(checkCode, font, brush, 2, 2); g.DrawRectanglenewPenColor.YellowGreen), 0, 0, image.Width - 1, image.Height - System.IO.MemoryStream ms = newSystem.IO.MemoryStream(); image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif); Response.ClearContent(); Response.ContentType = image/Gif Response.BinaryWrite(ms.ToArray(); catch g.Dispose(); image.Dispose(); 6 調(diào)試分析(1)剛編譯完后有很多錯誤和警告,運行失敗,然后經(jīng)過修改錯誤警告慢慢減少,最終可以運行。(2)程序綁定數(shù)據(jù)庫有很多問題。(3)該程序中可能還存在一些小問題,比如有的時候調(diào)試不出來銳化的按鈕,并且我在編譯的過程中發(fā)現(xiàn)自己存在細節(jié)上的盲區(qū),有點粗心等,不注意細節(jié),其實自己也知道細節(jié)決定成敗,以后我會注意。7測試結(jié)果 運行登陸成功 修改信息8 課程設(shè)計總結(jié)在課程設(shè)計完成之際,我首先要感謝各位老師的悉心指導,他們嚴謹?shù)闹螌W態(tài)度,一絲不茍的敬業(yè)精神給我留下了深刻的印象。感謝他們在百忙之中一直督促關(guān)心著我的課程設(shè)計。他們的博學、勤勉以及平和的為人,使我油然而生敬意。通過這兩個星期的課設(shè),使我對C#語言的有了更深入、更全面的了解,同時也發(fā)現(xiàn)自己的英文和函數(shù)基礎(chǔ)不是很好,對很多地方不是特別懂,甚至對有些概念都還很模糊,但通過這次課程設(shè)計,使我對C#語言有了新的認識。參考文獻李敏波.C#高級編程M.北京:清華大學出版社,2000 周存杰.Visual.C#.NET.網(wǎng)絡(luò)核心編程M.北京:清華大學出版社,2002 袁然,王誠梅編著SQLServer2000中文版經(jīng)典實例教程M.冶金工社,2006.11鄭阿奇.SQLServer2000實用教程第二版川北京電子工業(yè)2005崔森,陳明非.VisualC#程序設(shè)計教程北京機械工業(yè)出版社,2007.118
收藏