员工管理系统毕业_设计论文
企业员工信息管理系统的设计与实现毕业设计论文

企业员工信息管理系统- 0 -分类号_______________ 密级________________UDC _______________ 学号_ ___毕业设计(论文)论文题目企业员工信息管理系统的设计与实现 Thesis Topic Design and implementation of enterprise employee2017年7月25日毕业设计(论文)任务书企业员工信息管理系统的设计与实现摘要随着电子信息的飞速发展,计算机已经融入到了生活的各个方面,越来越多的企业开始使用电子计算机来对企业进行管理,信息化的时代已经到来,各个企业无论大小都需要一个信息化的管理系统来对自己公司内部的员工信息进行管理,企业员工信息管理系统是一个针对此问题而进行开发的系统,使得公司的员工管理不如现代化,开启了一个新的管理模式。
本文首先对比了国内外企业员工信息管理的现状,明确了需求的不同以及需要吸收借鉴的部分,然后在员工信息管理的需求基础上,通过系统的功能需求与系统的可行性分析,确立了企业员工信息管理系统的基本功能,构建了该系统的框架以及结构设计,然后对该系统的各个功能的主要代码进行分析、设计,最后对系统的各个功能进行测试,完成了本次系统的开发。
企业员工信息管理系统分为两大模块,管理员模块和普通员工模块,管理员可以操作系统的所有功能,主要包括部门管理、员工信息管理、出勤管理、工资管理以及请假审核等功能;为了信息的保密以及系统的安全性,普通员工只具有查看工资以及请假的功能。
文章以需求分析,系统概要设计,系统功能实现,系统测试等为主要内容,详细介绍了一个基于Web技术的B/S结构的企业员工信息管理系统。
本系统主要使用MyEclipse软件进行程序编写,使用JSP作为前台的开发语言,使用MySql 作为后台的数据库管理系统,服务器采用tomcat,开发出的一个适应现代社会发展的企业员工信息管理系统。
关键词:员工信息,JSP,B/S结构The design and implementation of enterpriseemployee information management systemABSTRACTWith the rapid development of electronic information, computer has been integrated into all aspects of life, more and more enterprises begin to use computer to manage the enterprise, the information age has arrived, regardless of the size of each enterprise needs an information management system to the company's internal staff information management, employee information a management system is to solve this problem for the development of the system, making the company's employee management as the modernization, opening a new management mode.This paper first compares the present situation of domestic and foreign enterprise employee information management, clarifies the different demand and need to absorb the part, and then the demand based on the employee information management, through the feasibility of functional requirements and system analysis, establishes the basic function of enterprise staff information management system, construct the system framework and structure design, and then the main code foreach function of the system is analyzed and designed, and finally test the various functions of the system, completed the development of this system. Employee information management system is divided into two modules, administrator module and general staff module, the administrator can all functions of the operating system, including department management, employee information management, attendance management, salary management and audit functions in order to leave; information security and secrecy system, general staff wages and leave only with a view the function of.This paper takes requirement analysis, system outline design, system function realization and system test as the main contents, and introduces a B/S enterprise employee information management system based on Web technology in detail. This system mainly uses MyEclipse software to program and use JSP as the development language, using MySQL as the background database management system, using Tomcat server, an information management system for enterprise employees adapt to the development of modern society developed.Keywords:em ployee information,JSP,B / S structure企业员工信息管理系统目录摘要 (1)ABSTRACT (3)1绪论 (1)1.1课题背景 (1)1.2目的和意义 (2)1.3研究的目标与内容 (3)1.4软硬件需求 (4)1.5本文组织结构 (4)2 需求分析 (6)2.1系统功能需求 (6)2.1.1系统功能需求 (6)2.1.2用户特点 (8)2.2系统模型 (8)2.2.1参与者 (8)2.2.2管理员用例图 (8)2.2.3普通员工用例图 (9)2.3可行性分析 (10)2.3.1技术的可行性 (10)2.3.2经济的可行性 (11)2.3.3操作可行性 (11)2.3.4法律的可行性 (12)3 系统概要设计 (13)3.1系统设计原则 (13)3.2系统架构设计 (14)3.3数据库设计 (16)3.3.1数据库的概念结构设计 (16)3.3.2数据库的逻辑结构设计 (17)3.3.3数据库的连接原理 (21)4 系统详细设计 (25)4.1系统登陆页面实现 (25)4.2管理员模块 (32)4.2.1部门信息管理 (33)4.2.1.1部门信息录入 (33)4.2.1.2部门信息管理 (34)4.2.1.3部门信息删除 (37)4.2.2员工信息管理 (38)4.2.2.1员工信息信息录入 (38)4.2.2.2员工信息管理 (39)4.2.3出勤管理 (43)4.2.3.1出勤录入 (43)4.2.4修改密码 (43)4.2.5工资管理 (43)4.2.6请假审核管理 (44)4.2.7退出系统 (45)4.3普通员工模块 (45)4.3.1请假申请 (45)4.3.2我的工资浏览 (46)4.3.3修改密码 (47)5 系统测试 (48)5.1系统测试目的与意义 (48)5.2系统测试方法 (48)5.2.1系统测试计划 (48)5.2.2系统测试方法 (49)5.2系统功能测试 (49)5.2.1主页面的登录模块测试 (49)5.2.2修改密码的模块测试 (50)5.2.3部门管理的模块测试 (51)5.2.4员工管理的模块测试 (51)5.2.5出勤管理的模块测试 (52)5.2.6工资管理的模块测试 (53)5.2.7请假审核的模块测试 (54)5.2.8我的请假的模块测试 (55)5.3其他错误 (55)6 总结与展望 (57)6.1论文的主要工作 (57)6.2存在问题 (57)结论 (59)参考文献 (61)致谢 (62)外文原文 (63)中文翻译 (77)企业员工信息管理系统1绪论1.1课题背景计算机网络技术的发展,给信息时代的人们带来了很大的方便。
毕业设计(论文)管理系统设计与实现

毕业设计(论文)管理系统设计与实现摘要:为了解决高校毕业设计(论文)管理系统的功能不足和扩展性低等问题,采用基于角色的访问控制模型实现了资源管理和多角色一次性登录;使用泛化和组合技术,降低了“用户”对象与不同类型“参与者”对象之间的耦合;提供了毕业设计题目在不同专业中共享及督导员业务的解决方案;系统具有良好的可扩展性,为毕业设计管理系统的开发提供了有益的参考。
测试表明,系统界面友好,功能完全满足预期要求,各用户的工作效率均得到了不同程度的提高。
关键词:管理信息系统;毕业设计;Java;角色;访问控制0引言毕业设计(论文)(以下简称毕业设计)是高等学校教学综合实践体系的重要环节[1]。
近年来一些单位开发了毕业设计管理系统,多数文献中涉及的系统向管理员、教师、学生3种类型的用户提供服务[3-5]。
王娜等[6]开发的系统设置了学生、教师、设计管理小组和教务管理人员4种用户,解决了学生、导师信息的采集,导师出题、学生选题,有关毕业设计的各种文档的上交与审核,答辩成绩的录入与公布,导师、学生、管理员之间信息的交流等问题。
梁金明[7]的设计为学生、指导教师、专业系或教研室主任、教学院长、二级学院教务管理员和教务处教务管理员等6种用户(角色)提供服务,实现了课题申报、论文提交、论文在线评审以及毕业设计资料的归档等功能。
上述系统实现了在线选题、在线指导和部分管理统计等基本功能,但是随着实践教学环节规范化的加强,校企合作的加深和专业融合的深入,企业导师逐渐成为毕业设计指导中的重要补充力量,一些学生还需要跨专业、甚至跨学院接受毕业设计指导;另外,毕业设计系统中一个用户往往会拥有多个角色,用户希望一次登录即获得所有的服务,而不是以每个角色分别登录系统。
这些功能在已有文献中均未体现,本研究试图为上述功能提供一种可行的解决方案,为毕业设计管理系统开发提供有益的参考。
1需求分析1.1组织机构及用户角色山东建筑大学是一所教学研究型的地方院校,近年来致力于教学管理规范化建设。
企业人事管理系统的设计与实现论文DOC 45页

企业人事管理系统的设计与实现论文(DOC 45页)洛阳理工学院毕业设计(论文)题目___企业人事管理系统的设计与实现_姓名______系(部)工程管理系_____专业_经济信息管理___指导教师________2013年5月31日企业人事管理系统的设计与实现摘要企业人事管理系统主要用于对于企业员工档案管理,员工的调动情况的查询及管理,员工工作的评价,员工考勤管理,员工工资管理是便于企业管理者利用计算机高效率完成劳动人事管理的日常事务。
该系统主要利用Visual Basic6.0、Microsoft office Access等工具设计开发完成。
开发过程中采用模块化设计,不同的模块实现了不同的功能。
作为计算机应用的一部分,使用计算机对人事信息进行管理的系统,是一个公司管理及合理分配每个人员,使其发挥其自身最大价值的根本软件。
关键词:人事管理,模块化,Visual basic6.0,Microsoft office AccessThe design and implementation of enterprise personnelmanagement systemABSTRACTEnterprise personnel management system is mainly used in file management for enterprise employees, transfer to the staff query and management, staff evaluation, staff attendance management, employee wages, is advantageous for the enterprise managers use computer efficient complete labor personnel management of daily affairs.The system mainly using Visual Basic and Microsoft office Access tools such as design and development. Development process USES the modular design, different module realizes the different functions. As a part of computer application, using computer to manage the personnel information system, is a management and reasonable distribution of each company personnel, and make it play a maximum value of its fundamental software.KEY WORDS: personnel management, modular, Visual basic6.0, Microsoft office Access目录前言 (1)第1章概述 (2)1.1系统开发背景 (2)1.2 系统的目标和意义 (2)第2章使用工具或开发环境的描述 (4)2.1数据库平台 (4)2.2开发软件 (4)第3章系统分析 (5)3.1 总体的需求分析 (5)3.1.1 需求分析的目标 (5)3.1.2 需求分析的原则 (5)3.2系统的主要功能分析 (5)3.3 数据库需求分析 (6)3.4 数据流程分析 (7)3.5总体功能模块设计 (7)3.6 登录系统结构图 (8)第4章基本设计思想 (10)第5章系统详细设计 (10)5.1 系统E-R图 (11)5.2 数据库设计 (13)5.2.1工资管理数据表 (17)5.2.2考勤管理数据表 (19)5.2.3用户数据表 (22)第6章系统主要界面设计 (23)6.1 系统登录模块设计 (23)6.2 添加用户模块设计 (25)6.3 部门管理模块设计 (25)6.4 考勤记录模块的设计 (26)6.5 员工评价模块设计 (27)6.6 员工档案模块设计 (28)第7章系统测试 (30)结论 (31)谢辞 (32)参考文献 (33)附录 (34)前言人事管理信息系统是典型的信息管理系统,其开发主要包括台后数据库的建立和维护以及前段应用程序的开发俩个方面,对于前者要求建立资料一致性和完整性强,资料安全系好的数据库。
基于BS模式的员工信息管理系统_毕业设计论文

学院本科毕业设计(论文)题目基于B/S模式的员工信息管理系统计算机科学与工程院(系)计算机科学与技术专业摘要本系统采用的是B/S开发模式,开发环境采用Microsoft Visual Studio 2005,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一功能方便而简洁操纵数据库的智能化对象,对于数据库采用SQL Server2005,它的功能一体化,高度非过程化,语言简洁,易学易用,统一的语法结构对待不同的工作方式,还有面向集合的操作方式,再加上视图数据结构,使最终用户和程序设计人员之间的通信得到很大的改善,高度的数据独立性和安全性。
关键词:员工信息管理;B/S模式;SQL Server2005AbstractThis system USES is B/S mode, the development environment using Microsoft Visual Studio, using its 2005 of object-oriented development tools, especially data window this function is concise and manipulation of data objects, for using intelligent Server2005 SQL database, its function integration, the process, concise and easy to use, language syntax structure of unified treat way of working, and facing the operation mode, the collection of data structures, plus the view that end users and software design of communication between the personnel have greatly improved, the height data independence and security.Key words:Personnel management;B/S mode;Server2005 SQL目录第1章绪论 (1)1.1 问题的提出 (1)1.2 管理信息系统的发展历史 (1)1.3 公司员工信息管理系统的作用 (3)1.4 公司员工信息管理信息系统发展现状 (3)1.5 国内公司员工信息管理系统存在的问题 (4)第2章可行性分析 (5)2.1业务流程图 (5)2.2经济可行性 (5)2.3技术可行性 (6)2.4 行可行性 (8)2.5 时间可行性 (8)2.6 律可行性 (8)2.7 章小结 (8)第3章需求分析 (9)3.1系统需求 (9)3.1.1数据流图 (10)3.1.2数据字典 (10)3.2 性能需求 (14)3.3 应用需求分析 (15)3.4 运行需求分析 (15)3.5 其他需求分析 (15)3.6本章小结 (15)第4章系统设计 (16)4.1 主要内容 (16)4.2 总体功能需求 (16)4.3 数据库设计 (17)4.3.1 数据库设计概述 (17)4.3.2 数据分析 (17)4.3.3 数据库详细设计 (17)4.4 具体系统功能需求描述 (23)4.4.1 员工基本情况管理 (23)4.4.2 员工信息查询 (23)4.4.3 系统维护 (23)4.5本章小结 (23)第5章详细设计 (24)5.1系统开发及运行平台设置 (24)5.1.1 硬件环境 (24)5.1.2 软件环境 (24)5.2 开发工具简介 (25)5.2.1 简介 (25)5.2.2 SQL Server简介 (26)5.3系统主界面设计 (26)5.4基本功能设置 (27)5.4.1员工信息管理 (27)5.4.2部门管理 (29)5.4.3考勤管理 (30)5.4.4员工工资管理 (31)5.4.5查询管理 (33)5.4.6系统管理 (34)5.5 本章小结 (36)第6章系统调试与测试 (37)6.1 程序调试 (37)6.2 程序的测试 (37)6.2.1 测试的重要性及目的 (37)6.2.2 测试的步骤 (38)6.2.3 测试的主要内容 (38)6.2.4测试的执行情况 (39)6.3本章小结 (43)结束语 (44)致谢 (45)参考文献 (46)附录1 (47)附录2 (52)学院2012届本科生毕业设计(论文)第1章绪论1.1 问题的提出公司员工信息管理系统是一个公司单位不可缺少的部分,它的内容对于公司的决策者和管理者来说都至关重要,所以公司员工信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。
管理系统设计与实现毕业论文

管理系统设计与实现毕业论文一、综述在当今信息化的时代,管理系统已经渗透到我们生活的方方面面,无论是企业的运营管理,还是个人的日常生活,都离不开各式各样的管理系统。
本次毕业论文聚焦于管理系统设计与实现的研究,目的就是为了让我们的生活更加便捷,企业运营更加高效。
说起管理系统,它其实就像一个“大家庭的管家”,帮助我们整理信息,提高效率。
比如在一个公司里,有了管理系统,员工们就能更好地协作,不再出现信息断层;在个人生活中,使用管理系统可以帮助我们更好地管理日程、任务等。
而本次论文的目的就是要深入探讨如何设计并实现这样的管理系统。
本次论文的研究背景是随着科技的发展,人们对管理系统的需求越来越高。
无论是在功能、性能还是用户体验上,人们都有更高的期待。
因此设计并实现一个高效、便捷的管理系统显得尤为重要。
而我们的目标就是实现这样一个系统,让人们的生活和工作更加轻松。
1. 研究背景和意义在当今信息化社会,管理系统的设计与实现已经成为企业和组织不可或缺的一部分。
随着科技的快速发展,我们的生活和工作都离不开各种管理系统。
这些系统不仅帮助我们更有效地处理信息,还提高了我们的工作效率。
不论是企业的日常运营、学校的教务管理,还是政府部门的行政工作,一个高效的管理系统都是成功的关键。
说到管理系统的重要性,我们可以从日常生活中的小事说起。
比如当我们购物时,商场的库存管理系统可以确保我们需要的商品有货;当我们使用在线服务时,后台的管理系统确保我们的个人信息安全;当我们工作学习时,项目管理系统的使用可以帮助我们更好地分配任务和跟踪进度。
可以说管理系统的背后承载着我们的生活和工作运转的每一个环节。
然而随着需求的不断增加和技术的不断进步,现有的管理系统面临着许多挑战。
如何设计并实现一个更加高效、灵活、安全的管理系统成为当前亟待解决的问题。
这不仅是一个技术挑战,更是一个对社会发展的重大责任和挑战。
因此本文旨在探讨管理系统的设计原理、实现方法以及实际应用,以期为相关领域的发展提供有价值的参考和启示。
企业员工信息管理系统毕业设计

企业员工信息管理系统毕业设计学号毕业设计(论文)企业员工信息管理系统设计毕业设计(论文)任务书毕业设计(论文)开题报告注:1. 开题报告应根据教师下发的毕业设计(论文)任务书,在教师的指导下由学生独立撰写,在毕业设计开始后三周内完成;2.设计的目的及意义至少800字,基本内容和技术方案至少400字;3.指导教师意见应从选题的理论或实际价值出发,阐述学生利用的知识、原理、建立的模型正确与否、学生的论证充分否、学生能否完成课题,达到预期的目标。
郑重声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包括任何其他个人或集体已经发表或撰写的成果作品。
本人完全意识到本声明的法律后果由本人承担。
本人签名:日期:目录摘要 (I)ABSTRACT (II)1 绪论 (1)1.1 研究背景 (1)1.2 本课题研究现状 (1)2 企业信息管理系统分析 (3)2.1需求分析 (3)2.2 技术可行性 (4)2.3 环境可行性分析 (5)2.4 系统结构可行性分析 (6)3 企业信息管理系统设计 (9)3.1 数据库设计 (9)3.2 系统功能模块详细设计 (13)4 系统实现 (18)4.1 用户操作文件总体架构 (18)4.2 技术难点 (28)5 系统测试 (29)5.1 界面测试 (29)5.2 功能测试 (29)5.3 需求测试 (30)5.4 性能测试 (30)5.5 企业员工信息管理系统的测试 (30)总结 (31)参考文献 (32)致谢 (33)摘要在当今社会,互联网空前的发展,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选。
考虑到当前大量企业的企业员工管理尚处于手工作业阶段,不但效率低下,还常常因为管理的不慎而出现纰漏。
因此根据部分企业提供的需求,设计此企业企业员工管理系统,以帮助企业达到企业员工管理办公自动化、节约管理成本、提高企业工作效率的目的。
基于Java的人事管理系统 毕业论文

2.2.1 技术可行性 ............................................................................................... 4 2.2.2 经济可行性 ............................................................................................... 4 2.2.3 操作可行性 ............................................................................................... 4
基于 Java 的人事管理系统的设计与实现
3.3.3 数据库表的设计......................................................................................11 3.3.4 测试数据的输入......................................................................................14
人事管理系统论文

人事管理系统论文引言人力资源是一个组织中至关重要的部分。
有效的人事管理可以帮助组织招聘、培训和留住高素质的员工,从而提高产品质量和组织绩效。
为了提高人力资源管理的效率和准确性,许多组织选择使用人事管理系统来处理日常的人事事务。
本文将介绍人事管理系统的基本概念、功能和优势,并分析其在组织中的应用和影响。
一、人事管理系统概述人事管理系统是一个计算机化的软件系统,专门用于管理人力资源相关的业务流程。
它涵盖了招聘、培训、员工信息管理、绩效评估和薪酬福利等方面的功能。
通过使用人事管理系统,组织可以实现人事管理的标准化和自动化,减少人力和时间成本,并提高操作的准确性和可靠性。
二、人事管理系统的功能1. 招聘管理人事管理系统可以帮助组织简化招聘流程。
它可以自动生成招聘广告,将招聘信息发布到各大招聘网站,并筛选和筛选候选人简历。
系统还可以管理候选人的面试安排和结果反馈,从而提高招聘的效率和质量。
2. 培训管理人事管理系统可以帮助组织制定和实施培训计划。
系统可以根据员工的职位和技能需求,自动生成培训方案,并记录员工的培训进度和成绩。
此外,系统还可以提供在线培训资源,帮助员工随时随地进行学习和提升。
3. 员工信息管理人事管理系统可以集中管理员工的基本信息和评价数据。
系统可以记录员工的个人信息、工作经历、教育背景和绩效评估结果等。
通过这些数据,组织可以更好地了解员工的能力和发展潜力,从而更好地进行员工的职业规划和绩效管理。
4. 绩效评估人事管理系统可以帮助组织进行绩效评估。
系统可以根据组织的绩效评估标准,自动生成绩效评估表,并支持定期评估和复评。
系统还可以计算员工的绩效得分和排名,并生成相应的报告,帮助组织进行绩效奖励和激励措施的制定。
5. 薪酬福利管理人事管理系统可以帮助组织管理员工的薪酬和福利制度。
系统可以根据组织的薪酬政策,自动生成员工的薪酬和绩效奖金,并记录员工的薪酬历史和福利待遇。
此外,系统还可以为员工提供在线申请福利和查询薪酬的功能,提高员工对薪酬福利的满意度和参与度。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录三正文 (4)3.1课程设计的目的与要求 (4)3.2系统分析 (4)3.2.1系统开发背景、开发范围、建设目标与必要性 (4)3.2.2 业务流程分析 (4)3.2.3数据字典 (6)3.2.4处理逻辑的定义 (6)3.3 系统设计 (8)3.3.1功能设计 (8)3.3.2系统运行环境 (9)3.4系统实施 (10)3.4.1程序代码 (10)3.4.2运行结果 (29)四课程设计总结或结论35五参考文献 35三、正文3.1课程设计的目的与要求通过管理信息系统课程设计,进一步掌握管理信息系统的理论和方法。
培养和锻炼开发管理信息系统的能力。
为今后信息系统开发打下良好的基础。
要求了解企业管理信息系统开发的全过程,理解信息系统课程相关的概念,掌握管理信息系统的开发方法。
主要包括:系统调研方法;业务分析、数据分析、系统逻辑模型设计方法;数据库设计、功能设计、物理模型设计方法;系统的实现等方法。
完成一个小型系统的设计与开发。
3.2 系统分析3.2.1系统开发背景、开发范围、建设目标与必要性随着本世纪以来科学技术的突飞猛进和社会生产力的迅速发展,人们进行信息交流的深度与广度不断增加,信息量急剧增长,传统的信息处理与决策的手段已不能适应社会的需要,信息的重要性和信息处理问题的紧迫性空前提高了,面对着日益复杂和不断发展,变化的社会环境,特别是企业间日趋剧烈的竞争形势,一个人、一个企业要在现代社会中求生存,求发展,必须具备足够的信息和强有力的信息收集与处理手段。
电子计算机以强大的信息处理能力作为人类脑力劳动的有力助手登上历史舞台以后,出现了把人类从繁琐的脑力劳动下解放出来的现代信息革命。
为了适应现代企业或公司经营发展的需要,为提高企业工作效率、保证企业职工信息管理质量、快而准确地为企业制定好的经营方针与决策,我们有必要开发一个职工信息管理系统。
3.2.2业务流程分析现行管理系统的业务流程图………图3-2 第二层数据流图事务:删除,添加,修改,查询;职工信息E-R图3.2.3数据字典数据流字典①数据流名称:职工-主管类数据结构:职工编号 id姓名 name性别 sex工资 salary出生时间 birth参加工作时间 worktime职位 a②数据流名称:职工-工人类数据结构:职工编号 id姓名 name性别 sex工资 salary出生时间 birth参加工作时间 worktime职位 b3.2.4处理逻辑的定义①处理名:添加职工信息输入:根据选择录入数据输出:显示所添加的信息处理定义:当选择了要输入的数据类型时,按照提示输入所需要的信息,并录入到职工信息库里激发条件:选择添加职工信息②处理名:删除职工信息输入:键入要删除的职工号输出:显示输入职工好所对应的信息处理定义:根据键入的职工号查到相关的信息,经确认后,从信息库中删除激发条件:选择删除职工信息③处理名:修改职工信息输入:键入要修改的职工号,并选择要修改的项输出:显示修改后的该职工信息处理定义:键入要修改的职工号,显示该职工的信息,根据提示选择要修改的项,修改成功后显示修改后的职工信息激发条件:选择修改职工信息④处理名:查找职工信息输入:选择要查找的类型(职工号,姓名,年龄)输出:显示所要查找的职工信息处理定义:选择要查找的类型,从信息库中查找并显示激发条件:选择查找记录⑤处理名:列出信息输入:选择输出类型输出:根据选择输出数据处理定义:根据选择的输出类型,输出职工信息激发条件:选择列出信息功能⑥处理名:计算平均年龄输入:无输出:输出职工的平均年龄处理定义:调用函数,输出职工的平均年龄激发条件:选择计算平均年龄功能⑦处理名:创建职工信息简表输入:无输出:显示职工信息简表处理定义:创建并显示职工信息简表激发条件:选择创建职工信息简表功能⑧处理名:存入磁盘输入:无输出:把数据输出到磁盘文件中处理定义:输出职工信息文件激发条件:选择存入磁盘功能3.3 系统设计职工信息包括职工号,姓名,性别,年龄,工资,出生日期,工作时间,试设计一职工信息管理系统,使之能提供以下功能:(1)建立职工信息数据,包括职工编号、姓名、性别、工资、出生时间、参加工作时间和年龄(必须计算得到)。
(2)根据职工信息表,建立只含有姓名和年龄的职工信息简表。
(3)抽取并计算职工的平均年龄。
(4)检索(查找)指定信息。
(如按姓名检索、按年龄检索)(5)修改职工信息(6)删除职工信息(7)保存数据文件3.3.1功能设计功能框架图如下:职工信息管理系统流程图3.3.2系统运行环境Visual C++是一个功能强大的可视化软件开发工具。
Visual C++6.0不仅是一个C++编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。
Visual C++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。
这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。
3.4 系统实施3.4.1程序代码#include<iostream>#include<string>#include<iomanip>#include<fstream>using namespace std;int num1=0,num2=0,num=0;float avery=0.0;char save1;char exit();enum tsex{man,woman,mid};void foundid(string id1);void foundname(string n);void foundage(int a);int foundhao(string id1);void save();void lisebiao(){};class employee{string id;string name;tsex sex;int salary;int birth;int worktime;int age;public:employee();employee(string i,string na,tsex s,int sa,int bi,int wt);~employee(){};employee & operator= (employee &e){id=e.id;name=;sex=e.sex;salary=e.salary;birth=e.birth;worktime=e.wor ktime;age=e.age;return *this;}void add();void display();string getid(){return id;}string getname(){return name;}int getage(){return age;}tsex getsex(){return sex;}int getsalary(){return salary;}int getbirth(){return birth;}int getworktime(){return worktime;}void setid(string id1){ id=id1;}void setname(string n1){ name=n1;}void setsex(int s){if(s==1) sex=man;else if(s==2) sex=woman;else sex=mid;}void setsalary(int sa){salary=sa;}void setbirth(int bi){ birth=bi;}void setworktime(int wt){worktime=wt;}void clean(){employee();}};employee::employee(){sex=mid;salary=0;birth=0;worktime=0;age=0;}employee::employee(string i,string na,tsex s,int sa,int bi,int wt){id=i;name=na;sex=s;salary=sa;birth=bi;worktime=wt;age=2009-bi/10000;}void employee::add(){int f,sex1;do{cout<<"请输入职工号:\t";cin>>id;f=foundhao(id);if(f==0) {cout<<"该职工号可以使用"<<endl;break;} else if(f==1||f==2) cout<<"此职工号已存在"<<endl;}while(f==1||f==2);cout<<"请输入职工姓名:\t";cin>>name;do{cout<<"请输入职工性别(1.男\t2.女):\t";cin>>sex1;switch(sex1){case 1:sex=man;break;case 2:sex=woman;break;default:cout<<"选择错误,重新选择\n";}}while(sex1!=1&&sex1!=2);do{cout<<"请输入基本工资:\t";cin>>salary;if(salary<1000)cout<<"输入错误,基本工资应在1000以上!\n";}while(salary<1000);cout<<"请输入出生日期: \t";cin>>birth;cout<<"请输入参加工作日期:\t";cin>>worktime;cout<<"添加职工信息如下:\n";display();cout<<"是否保存?y/n:";cin>>save1;if(save1=='y'||save1=='Y'){num++;cout<<"保存成功!\n";}else{cout<<"您放弃了保存!添加失败\n";}}void employee::display(){int i;cout<<"工号:\t"<<id<<'\n'<<"姓名:\t"<<name<<'\n'<<"性别:\t";if(sex==man)cout<<"男"<<'\n';else if(sex==woman) cout<<"女"<<'\n';else cout<<"无"<<endl;age=2009-birth/10000;cout<<"年龄:\t"<<age<<'\n';cout<<"出生年月:\t";i=birth;cout<<i/10000<<"年";i=i%10000;cout<<i/100<<"月"<<i%100<<"日"<<'\n';cout<<"工资:\t"<<salary<<'\n';cout<<"参加工作时间:\t"<<worktime<<'\n';}class manager: public employee{public:int a;manager();manager(string i,string na,tsex s,int sa,int bi,int wt,int p1);~manager(){};void addmanager();}m[100];manager::manager(){a=1;}manager::manager(string i,string na,tsex s,int sa,int bi,int wt,int p1):employee(i,na,s,sa,bi,wt){a=p1;}void manager::addmanager(){add();a=1;}class work: public employee{public:int b;work();work(string i,string na,tsex s,int sa,int bi,int wt);~work(){};void addwork();}w[100];work::work(){b=0;}work::work(string i,string na,tsex s,int sa,int bi,int wt):employee(i,na,s,sa,bi,wt){b=0;}void work::addwork(){add();b=0;}void addnew(){int select;char f;do{cout<<"请输入添加的职工类型:1.主管\t2.工人\t";cin>>select;switch(select){case 1:m[num1].addmanager();num1++;break;case 2:w[num2].addwork();num2++;break;default:cout<<"选择错误!";}f=exit();}while(select!=1&&select!=2||f=='n');}void jiludelete(){manager t1;work t2;int i,j;string id1,id2;char b,f;do{cout<<"请输入要删除的职工号:"<<'\t';cin>>id2;if(foundhao(id2)==0) {cout<<"对不起!没有这个工人的记录";return;}cout<<"你要删除的信息是:"<<endl;foundid(id2);cout<<"确定要删除该记录?y / n\n";cin>>b;if(b=='n') return;if(foundhao(id2)==1){if(m[0].getid()==id2&&num1==1) m[0].clean();else if(m[num-1].getid()==id2) m[num1-1].clean();else{for(i=0;i<num1-1;i++)if(m[i].getid()==id2&&num1!=1) {t1=m[i];for(j=i;j<num1;j++)m[j]=m[j+1];}}num1--;}else if(foundhao(id2)==2){if(w[0].getid()==id2&&num2==1) w[0].clean();else if(w[num-1].getid()==id2) w[num2-1].clean();else{for(i=0;i<num2-1;i++)if(w[i].getid()==id2&&num2!=1) {t2=w[i];for(j=i;j<num2;j++)w[j]=w[j+1];}}num2--;}num--;cout<<"删除成功!";f=exit();}while(f=='n');}void change(){string id2,str;int t,j,k;char f;do{cout<<"请输入要修改信息的职工号:\t";cin>>id2;if(foundhao(id2)==0) cout<<"对不起!没有这个工人的记录"<<endl;else if(foundhao(id2)==1){cout<<"要修改职工号的信息:\t";foundid(id2);for(t=0;t<num1;t++)if(m[t].getid()==id2) {cout<<"修改的选项:1 职工号 2姓名 3 性别 4 工资 5 出生日期 6 工作时间"<<'\t';cin>>j;switch(j){case 1:cout<<"新的职工号:\t";cin>>str;m[t].setid(str);break;case 2:cout<<"新的姓名:\t";cin>>str;m[t].setname(str);break;case 3:cout<<"新的性别(1.男\t2.女)";cin>>k;m[t].setsex(k);break;case 4:cout<<"新的工资:\t";cin>>k;m[t].setsalary(k);break;case 5:cout<<"新的出生日期:\t";cin>>k;m[t].setbirth(k);break;case 6:cout<<"新的工作时间:\t";cin>>k;m[t].setworktime(k);break;default:cout<<"error"<<endl;}m[t].display();}}else if(foundhao(id2)==2){cout<<"要修改职工号的信息:\t";foundid(id2);for(t=0;t<num2;t++)if(w[t].getid()==id2) {cout<<"修改的选项:1 职工号 2姓名 3 性别 4 工资 5 出生日期 6 工作时间"<<'\t';cin>>j;switch(j){case 1:cout<<"新的职工号:"<<setw(20);cin>>str;w[t].setid(str);break;case 2:cout<<"新的姓名"<<setw(20);cin>>str;w[t].setname(str);break;case 3:cout<<"新的性别(1.男\t2.女)"<<setw(20);cin>>k;w[t].setsex(k);break;case 4:cout<<"新的工资"<<setw(20);cin>>k;w[t].setsalary(k);break; case 5:cout<<"新的出生日期"<<setw(20);cin>>k;w[t].setbirth(k);break;case 6:cout<<"新的工作时间"<<setw(20);cin>>k;w[t].setworktime(k);break;default:cout<<"error"<<endl;}w[t].display();}}f=exit();}while(f=='n');}void found(){int a;string i;char se,f;do{cout<<"请选择查询方式:1 职工号 2 姓名 3 年龄\t";cin>>se;switch(se){case '1':cout<<"请输入要查找的职工号:"<<'\t';cin>>i;cout<<"你要查询的人的信息如下:"<<endl;foundid(i);break;case '2':cout<<"请输入要查找的姓名:"<<'\t';cin>>i;cout<<"你要查询的人的信息如下:"<<endl;foundname(i);break;case '3':cout<<"请输入要查找的年龄"<<'\t';cin>>a;cout<<"你要查询的人的信息如下:"<<endl;foundage(a);break;default:cout<<"没有此选项,请重新选择"<<endl;}f=exit();}while(se!='1'&&se!='2'&&se!='3'||f=='n');}int foundhao(string id1){int i,j;for(i=0;i<num1;i++)if(m[i].getid()==id1){return 1;}for(j=0;j<num2;j++)if(w[j].getid()==id1){return 2;}return 0;}void foundid(string id1){int i,j;int flage=0;for(i=0;i<num1;i++)if(m[i].getid()==id1){m[i].display();flage=1;}for(j=0;j<num2;j++)if(w[j].getid()==id1){w[j].display();flage=1;}if(flage==0) cout<<"对不起!没有找到\t"; }void foundname(string n){int i,j;int flage=0;for(i=0;i<num1;i++)if(m[i].getname()==n){m[i].display();flage=1;}for(j=0;j<num2;j++)if(w[j].getname()==n){w[j].display();flage=2;}if(flage==0) cout<<"对不起!没有找到";}void foundage(int a){int i,j;int flage=0;for(i=0;i<num1;i++)if(m[i].getage()==a){m[i].display();flage=1;}for(j=0;j<num2;j++)if(w[j].getage()==a){w[j].display();flage=2;}if(flage==0) cout<<"对不起!没有找到";}string outsex(tsex s){if(s==0) return "男";else if(s==1) return "女";else return "无";}string outposition(int s){if(s==0) return "主管";else return "工人";}void listbiao(){int i,j,z;cout<<"请选择输出类别:1 主管类 2 工人类 3 全部信息"<<endl;cin>>z;cout<<"id"<<'\t'<<"name"<<'\t'<<"sex"<<'\t'<<"salary"<<'\t'<<"birthday"<<' \t'<<"worktime"<<'\t'<<"age"<<'\t'<<endl;switch(z){case 1:for(i=0;i<num1;i++)cout<<m[i].getid()<<'\t'<<m[i].getname()<<'\t'<<outsex(m[i].getsex())<<'\t'<<m [i].getsalary()<<'\t'<<m[i].getbirth()<<'\t'<<m[i].getworktime()<<'\t'<<m[i].g etage()<<'\t'<<endl;break;case 2:for(j=0;j<num2;j++)cout<<w[j].getid()<<'\t'<<w[j].getname()<<'\t'<<outsex(w[j].getsex())<<'\t'<<w [j].getsalary()<<'\t'<<w[j].getbirth()<<'\t'<<w[j].getworktime()<<'\t'<<w[j].g etage()<<'\t'<<endl;break;case 3:for(i=0;i<num1;i++)cout<<m[i].getid()<<'\t'<<m[i].getname()<<'\t'<<outsex(m[i].getsex())<<'\t'<<m [i].getsalary()<<'\t'<<m[i].getbirth()<<'\t'<<m[i].getworktime()<<'\t'<<m[i].g etage()<<'\t'<<endl;for(j=0;j<num2;j++)cout<<w[j].getid()<<'\t'<<w[j].getname()<<'\t'<<outsex(w[j].getsex())<<'\t'<<w [j].getsalary()<<'\t'<<w[j].getbirth()<<'\t'<<w[j].getworktime()<<'\t'<<w[j].g etage()<<'\t'<<endl;break;case 4:cout<<"没有该类型的记录!";}}void save(){int i,j;ofstream ofile;ofile.open("d:\\zg.txt");ofile<<"id"<<'\t'<<"name"<<'\t'<<"sex"<<'\t'<<"salary"<<'\t'<<"birthday"<< '\t'<<"worktime"<<'\t'<<"age"<<'\t'<<"power \t"<<endl;for(i=0;i<num1;i++){ofile<<m[i].getid()<<'\t'<<m[i].getname()<<'\t'<<outsex(m[i].getsex())<<' \t'<<m[i].getsalary()<<'\t'<<m[i].getbirth()<<'\t'<<m[i].getworktime()<<'\t'<< m[i].getage()<<'\t'<<outposition(m[i].a)<<endl; }for(j=0;j<num2;j++){ofile<<w[j].getid()<<'\t'<<w[j].getname()<<'\t'<<outsex(w[j].getsex())<<' \t'<<w[j].getsalary()<<'\t'<<w[j].getbirth()<<'\t'<<w[j].getworktime()<<'\t'<< w[j].getage()<<'\t'<<outposition(w[j].b)<<endl;}ofile.close();cout<<"succes!"<<endl;}void getaver(){int i,j;for(i=0;i<num1;i++)avery+=m[i].getage();for(j=0;j<num2;j++)avery+=w[j].getage();cout<<"职工的平均年龄是:"<<'\t'<<avery/num;}void creatjianbiao(){int i,j;cout<<"显示简表信息:"<<endl;cout<<"姓名"<<'\t'<<"年龄"<<'\t'<<endl;for(i=0;i<num1;i++)cout<<m[i].getname()<<'\t'<<m[i].getage()<<'\t'<<endl;for(j=0;j<num2;j++)cout<<w[j].getname()<<'\t'<<w[j].getage()<<'\t'<<endl;}char exit(){char s;cout<<"是否要退出该程序吗?[Y/N]:";cin>>s;return s;}int main(){cout<<"******************欢迎进入职工工资管理系统*******************"<<endl<<endl;cout<<"*****************本程序由5433工作室设计完成******************"<<endl<<endl;while(1){char s;int select;cout<<endl;cout<<" *****************主菜单***********************"<<endl<<endl;cout<<" 1.添加职工信息;"<<endl<<endl;cout<<" 2.删除职工信息;"<<endl<<endl;cout<<" 3.修改职工的信息;"<<endl<<endl;cout<<" 4.查找记录;"<<endl<<endl;cout<<" 5.列出记录;"<<endl<<endl;cout<<" 6.计算工人平均年龄"<<endl<<endl;cout<<" 7.创建职工信息简表"<<endl<<endl;cout<<" 8.存入磁盘"<<endl<<endl;cout<<" 0.安全退出系统;"<<endl<<endl;cout<<" [请选择操作(输入相应的数字)]:"<<endl<<endl; cin>>select;switch(select){case 0: //退出系统s=exit();if(s=='y'||s=='Y') return 0;break;case 1: //增加记录addnew();break;case 2: //删除记录jiludelete();break;case 3: //修改记录change();break;case 4: //按条件查找found();break;case 5: //输出记录listbiao();break;case 6: //计算工人平均年龄getaver();break;case 7: //创建简表creatjianbiao();break;case 8: //存入磁盘save();break;default: //选择错误 cout<<"此输入无效!"<<endl;}}}3.4.3运行结果1,主界面2.添加信息3.删除信息删除前信息删除删除后4.修改信息5.查询信息查询职工号查询姓名查询年龄6.平均年龄7职工信息表8.存入磁盘9.退出系统四、课程设计总结(正文为宋体,五号字行间距为21 )经过两周的学习设计,职工信息管理系统已经基本完成。