首页 例子:人事管理系统论文

例子:人事管理系统论文

举报
开通vip

例子:人事管理系统论文例子:人事管理系统论文 摘要 本系统首先进行了详细的需求分析,划分了系统模块;然后进行了数据库分析设计,创建了数据字典、数据库、数据表;规范了企业员工的人事档案,提高了人事管理效率,能方便快捷地查询各类信息并进行统计分析。 整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成人事、工资管理的全过程,包括职能设置、员工的录用和基本信息、工资发放、员工考勤及考核,经过实际使用证明,本文所设计的人事管理系统可以满足公司人事、工资管理等方面的需要。最终通过Microsoft Visual Basic6....

例子:人事管理系统论文
例子:人事管理系统论文 摘要 本系统首先进行了详细的需求分析,划分了系统模块;然后进行了数据库分析设计,创建了数据字典、数据库、数据表; 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 了企业员工的人事档案,提高了人事管理效率,能方便快捷地查询各类信息并进行统计分析。 整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成人事、工资管理的全过程,包括职能设置、员工的录用和基本信息、工资发放、员工考勤及考核,经过实际使用证明,本文所设计的人事管理系统可以满足公司人事、工资管理等方面的需要。最终通过Microsoft Visual Basic6.0 完成系统的开发。 关键词:数据库;Visual Basic6.0;人事管理;系统测试 I 目录 第一章 人事管理系统概述 ................................ 1 1.1 系统目标设计 ................................... 1 系统开发设计思想 ............................... 1 1.2 ........................................ 3 第二章 系统分析 2.1 可行性分析 ..................................... 3 2.2 需求分析 ....................................... 4 第三章 总体设计 ........................................ 5 3.1 系统功能描述 ................................... 5 3.1.1 职能设置 .................................. 5 3.1.2 员工信息管理 .............................. 6 3.1.3 工资管理 .................................. 7 3.2 数据库设计 ..................................... 9 3.2.1 数据字典 .................................. 9 3.2.2 创建数据库 ............................... 11 第四章 主要功能模块设计 ............................... 12 4.1 创建项目主窗体 ................................ 12 4.2 “职能设置”模块 .............................. 13 4.3 “员工信息管理”模块 .......................... 14 4.4 工资管理模块 .................................. 16 第五章 系统测试 ....................................... 18 5.1 测试项目 ...................................... 18 5.2 测试方法 ...................................... 20 致 谢 .............................................. 21 参考文献 .............................................. 22 附 录 ............................................... 23 II 第一章 人事管理系统概述 1.1 系统目标设计 随着计算机技术、网络技术和信息技术的发展,越来越多地改善着现代人的观念。网络办公自动化系统是计算机技术和网络迅速发展的一个办公应用解决 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 ,它的主要目的是实现信息交流和信息共享,提供协同工作的手段,提高办公的效率,让人们从繁琐的有纸办公中解脱出来。现在我国的许多的企业单位的人事管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。 基于这种情况,我研究开发了这套人事管理系统,希望这套系统能为企业的人事管理带来更多的方便。通过一个企业人事管理系统,使企业的人事管理工作系统化、规范化、自动化,从而达到提高企业人事管理效率的目的。 1.2 系统开发设计思想 (1)尽量采用企业现有软硬件环境,及先进的管理系统开发方案,从而达到从分利用公司现有资源、提高系统开发水平和应用效果的目的。 (2)系统应符合企业人事管理的规定,满足公司日常员工管理的工作需要,并达到操作过程中得直观、方便、实用、安全等要求。 (3)系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。 (4)系统应具备数据库维护功能,即使根据用户需求进行数 1 据的添加、删除、修改、备份等操作。 2 第二章 系统分析 2.1 可行性分析 可行性分析是在用户的要求和系统调研的基础上进行的,对新系统的开发从社会、技术、经济、管理等方面进行分析,并得出新系统的开发工作可行、不可行、需要修改、追加投资、暂缓开发、分步实施等方案和结论,最后完成可行性分析。 可行性分析一般可定义为:可行性分析是在建设的前期对工程项目的一种考察和鉴定,对拟议中的项目进行全面与综合的技术、经济能力的调查,判断它是否可行。 (1)新系统目标可行性分析:分析新系统的目标是否符合企业的现状和发展的需要。 (2)社会可行性分析:社会可行性分析主要是指管理信息系统的开发是否符合国家法律、下策,是否能够与社会大系统实现良好的对接。就本系统而言,促进了企业的发展。 (3)技术可行性分析:技术可行性分析是根据新系统的目标来衡量是否具备所需要的技术,包括系统开发人员数量和水平,硬件方面,软件方面及其它应用技术。就本系统而言,它用计算机管理代替了传统的手工管理,操作系统是有人机互变的友好界面,很容易掌握及操作,程序界面相对较容易实现等特点。它只要一台计算机和一台服务器。 (4)经济可行性分析:经济可行性分析主要是对开发新系统所投入的资金与系统投入使用后所带来的经济效益进行比较,确认新系统是否会给企业带来一定的经济效益。就本系统而言,投资少:一台适用的计算机的价格市场价在3000元左右,而一台服务器的价格大概在8000元左右。新系统减少了抄写、查找、分析、处理等操作,提高了工作效率。 综上所述,本系统在管理上,在技术上和经济上是完全可行 3 的,并且投入少,见效快。本毕业设计拟研制的、用于解决手工管理方式存在问题的人事管理系统,是切实可行的,因此系统的开发是完全可行的。 2.2 需求分析 需求分析是指,开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述,转化为完整的需求定义,再由需求定义转换到相应的形式功能规约的过程。需求分析虽处于软件开发过程的开始阶段,但对整个软件开发过程以及软件产品质量是至关重要的。 从上述分析可以看出,论文要设计和开发一个人事管理系统,就必须首先明确原系统(手工系统)的业务流程和管理功能。通过详细调查可知,企业通常有以下需求: (1)对员工出勤率进行考核。 (2)公司根据员工的出勤率对其工作情况进行考核。 (3)对企业内部的职业进行设置并根据员工的工作考核对其职务进行修改。 (4)对现有的员工信息进行管理以及对员工的录用等信息进行修改。 (5)按照员工的出勤率和工作的考核情况来管理员工的工资信息。 4 第三章 总体设计 3.1 系统功能描述 根据以上对人事管理系统的可行性和需求的分析,一个完善的人事管理系统应该包含如图1所示的一些功能,每一个功能模块又都包含一系列的子模块。 人事管理系 统 员员 工职工工工作系 能信资考考统设息管勤核管 置管 理管管 理 理 理理 图1 “人事管理系统”功能 3.1.1 职能设置 “职能设置”模块主要负责对企业内部的部门信息、职务信息进行设置,其功能模块如图2所示。本系统将企业部门默认为一级部门,不再进行部门细分。 5 部门设置 职能设置 职务设置 图2 “职能设置”功能模块 (1)“部门设置”模块 “部门设置”模块负责维护部门信息,提供增加、修改、删除和查询部门信息的功能。部门信息主要包括部门代码、部门名称、领导姓名、联系地址、联系电话、简介等。 (2)“职务设置”模块 “职务设置”模块负责维护职务信息,主要提供初始化、增加、修改、删除和查询职务信息的功能。职务信息主要包括职务代码、职务名称、工资等级ID、工资上限、工资下限、简介等。 3.1.2 员工信息管理 “员工信息管理”模块主要用来管理员工信息,包括员工录用信息、员工基本信息和花名册。其功能模块如图3所示,数据流程如图3.4所示。 员工录用 员工信息管理 员工基本信息 花名册 图3 “员工信息管理”功能模块 6 (1)“员工录用”模块 “员工录用”模块主要负责维护员工的录用信息。员工一经录用,便应填写录用信息。每次发生人员录用、续聘、解聘,都应该对其录用信息进行修改。录用信息主要包括签约 合同 劳动合同范本免费下载装修合同范本免费下载租赁合同免费下载房屋买卖合同下载劳务合同范本下载 号、员 、姓名、签约日期、合同到期日期、合同类型、受聘部门、工ID 受聘职务、聘用标志(录用、续聘、解聘)、备注等。 (2)“员工基本信息”模块 “员工基本信息”模块负责维护员工的人事信息,主要应具有增加、修改、删除和查询功能。员工基本信息主要包括如下几项。 , 个人信息:员工ID、姓名、性别、出生日期、籍贯、民族、 身份证号、政治面貌。 , 工作信息:所属部门ID、进入部门日期、职务、职称、起薪 日期。 , 工作简历:原企业、原职称、原职务。 , 教育背景:毕业学校、毕业日期、学历、专业、外语。 , 联系方式:地址、电话、邮箱。 , 在岗状态:有在职、离职退休、返聘和在职培训4种状态。 (3)“花名册”模块 “花名册”模块提供按条件查询员工花名册的功能。花名册主要包含姓名、性别、出生日期、籍贯、民族、身份证号、政治面貌、部门名称、进入部门日期、职务名称、职称、电话、邮箱、在岗状态等。 3.1.3 工资管理 “工资管理”模块主要用来管理员工的工资信息,包括设定工资 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 ,进行工资计发,以及产生工资报表。其功能模块如图3.5所示,数据流程如图4所示。 7 工资标准 工资管理 工资计发 工资报表 图4 “工资管理”功能 (1)“工资标准”模块 “工资标准”模块负责维护企业的工资标准。工资标准信息包括以下几项。 , 标识信息:工资等级ID、等级名称。 , 基本工资:底薪、补贴、奖金、车补、房补。 , 代扣项目:养老金、医疗保险、住房公积金。 (2)“工资计发”模块 “工资计发”模块负责发放员工工资。财务人员选择员工,系统将自动得到工资标准信息。财务相关人员可以修改补贴、奖金、车补、房补、扣考核和加班费等项目。每次计发工资时都会产生一条工资计发信息。工资计发信息包括以下几项。 , 标识信息:员工ID、姓名、工资等级ID。 , 基本工资:底薪、补贴、奖金、车补、房补、扣考核、加班费。 , 代扣项目:养老金、医疗保险、住房公积金。 , 工资合计:税前小计、所得税、应发工资、计发日期。 (3)“工资报表”模块 “工资报表”模块主要负责产生员工的工资报表,内容包括工资明细和工资统计。 限于篇幅,本文只介绍以上3个功能。 8 3.2 数据库设计 根据系统需求分析,系统需要建立6个表,其用途说明如表1所示。 表1 数据表及其用途 ID 数据表名称 数据表用途 1 部门信息表 保存企业部门信息 2 职务信息表 保存职务基本状况信息 3 员工录用信息表 保存员工录用及相关信息 4 员工基本信息表 保存员工的基本信息 5 工资标准信息表 保存企业的工资标准 6 工资计发信息表 保存员工的工资计发明细 3.2.1 数据字典 限于篇幅,下面只给出重要数据表的表结构的具体描述,包括字段名称、数据类型、可否为空和说明。 ? 部门信息表 表2 『部门信息』表 字段名 数据类型 说明 各级部门代码为4位 部门代码 文本 部门名称 部门名称 文本 领导姓名 领导姓名 文本 部门对外、对内地址 联系地址 文本 部门联系电话 联系电话 文本 部门简单介绍 简 介 文本 9 ? 员工录用信息表 表3『员工录用信息』表 字段名 数据类型 说明 签约合同号 长整型 合同号为10位,设主 键 员工ID 长整型 附表为员工基本信息 表 姓名 文本 员工姓名 签约日期 日期/时间 签订合同日期 合同到期日期 日期/时间 合同到期日期 合同类型 文本 劳动合同、 劳务合同 劳务合同免费下载深圳劳务合同下载模板免费劳务合同范本下载修理厂劳务合同下载厨师劳务合同范本下载 受聘部门 文本 受聘部门名称 受聘职务 文本 受聘职务名称 聘用标志 文本 录用、续聘、解聘 备 注 文本 备注 ? 工资标准信息表 表4 『工资标准信息』表 字段名 数据类型 说明 工资等级ID 整型 工资等级ID为4位 等级名称 文本 工资等级名称 底薪 货币 员工底薪 补贴 货币 补贴 奖金 货币 奖金 车补 货币 车补 房补 货币 房补 养老金 货币 养老金 医疗保险 货币 医疗保险 住房公积金 货币 住房公积金 10 3.2.2 创建数据库 在创建数据库之前,用户需要安装MS SQL Server系列的数据库服务器。有三种方式创建数据库: ? 直接手工建立数据库。打开SQL Server企业管理器,新建一个数据库,数据库名为“人事管理系统”,然后按照数据字典建立表和表关联。 ? 在SQL Server查询分析器中通过SQL脚本来创建数据库。 ? 使用数据库备份文件还原数据库。 11 第四章 主要功能模块设计 通过数据库分析设计,已经完成了所有的后台工作,现在需要通过Visual Basic表编写数据库系统的应用程序。 启动Visual Basic6.0后,点击【文件】中【新建工程】命令,在其对话框中选择【标准EXE】选项,然后单击【确定】按钮。这样,Visual Basic将自动创建一个“工程1”工程项目,包含一个窗体文件夹和一个Form1窗体。在项目的【属性】面板中将项目的“Name”属性值改为“人事管理系统”。 4.1 创建项目主窗体 创建了工程项目后,需要创建系统主窗体、主窗体的菜单,并在主窗体中添加窗体代码。 ? 主窗体界面 在项目资源管理器中为项目添加一个MDI窗体作为系统主窗体,将是、其“Name”和“Caption”属性改为“人事管理系统”。系统主窗体如图5所示。 12 图5系统主界面 ? 其代码详见附录1。 4.2 “职能设置”模块 “职能设置”模块主要包括以下功能模块。 , 部门设置:负责维护企业内部的部门信息。 , 职务设置:负责维护企业的职务设置信息。 限于篇幅,现只介绍“部门设置”模块的实现: ? 实现目标 用户登录系统后,单击【职能设置】中的【部门设置】命令就可以进入如图6所示的【部门设置】对话框。 用户可以添加、修改和删除部门信息。单击【保存】按钮可以保存操作信息,单击【取消】按钮可以取消操作。 13 图6【部门设置】对话框 ? 窗体布局 “部门设置”窗体主要实现对部门信息的添加、删除、修改和查询功能。为了实现这些功能,需要如下控件。 , 1个ComboBox控件,列出所有部门。 , 6个TextBox控件,用来输入和显示部门信息。 , 6个CommandButton控件:5个用来维护信息的按钮,分别是 【添加】、【修改】、【删除】、【保存】和【取消】按钮;1个用 来推出系统的【退出】按钮。 ? 其代码详见附录2。 4.3 “员工信息管理”模块 “员工信息管理”模块主要包括以下功能模块。 , 员工录用:负责维护员工的录用信息。员工一经录用,便应填 写录用信息。 , 员工基本信息:负责维护员工的人事信息,主要应具有增加、 14 修改、删除和查询功能。 , 花名册:提供按条件查询员工花名册的功能。 限于篇幅,现只介绍“员工录用”模块的实现。 ? 实现目标 用户登录系统后,单击【员工信息系统】中的【员工录用】命令就可以进入如图7所示的【员工录用】对话框。用户可以添加、修改和删除员工录用信息。单击【保存】按钮保存操作信息,单击【取消】按钮取消操作。用户也可以通过移动按钮来查找所需的信息。 图7 【员工录用】对话框 ? 窗体布局 “员工录用”窗体主要实现对部门信息的添加、删除、修改和查询功能。为了实现这些功能,需要如下控件。 , 6个ComboBox控件。 , 1个DataGrid控件,显示员工录用信息列表。 15 , 4个TextBox控件。 , 2个DataGrid日期控件。 , 11个CommandButton控件:1个用来查询的【查询】按钮;4 个控制光标移动的按钮,分别用于移至第一条、上一条、下一 条和最后一条记录;5个用来维护信息的按钮,分别是【添加】、 【修改】、【删除】、【保存】和【取消】按钮;1个用来推出系 统的【退出】按钮。 。 ? 其代码详见附录3 4.4 工资管理模块 “工资管理”模块主要包括以下功能模块。 , 工资标准:负责维护企业的工资标准,包括标识信息、基本信 息和代扣项目。 , 工资计发:负责发放员工工资,每次计发工资时都会产生一条 工资计发明细。 , 工资报表:主要负责产生员工的工资报表,内容包括工资明细 和工资统计。 限于篇幅,现只介绍“工资标准”模块的实现。 ? 实现目标 用户登录系统后,单击【工资管理】中的【工资标准】命令就可以进入如图8所示的【工资标准】对话框。该对话框中有3个选项卡,分别为【标识信息】选项卡、【基本工资】选项卡和【代扣项目】选项卡。用户可以添加、修改、删除和查询工资标准信息。 16 图8【工资标准】对话框 ? 窗体布局 “工资标准”窗体需要如下控件。 , 1个SSTab控件,Tabs=3。3个选项卡分别显示标识信息、基 本工资和代扣项目。 , 10个TextBox控件。 10个CommandButton控件:4个控制光标移动的按钮,分别用于移至第一条、上一条、下一条和最后一条记录;5个用来维护信息的按钮,分别是【添加】、【修改】、【删除】、【保存】和【取消】按钮;1个用来推出系统的【退出】按钮。 ? 其代码详见附录4。 17 第五章 系统测试 5.1 测试项目 在MIS开发过程中采用了多种措施保证软件质量,但是实际开发过程中还是不可避免地会产生差错,系统中通常可能隐藏着错误和缺陷,不经周密测试的系统投入运行,将会造成难以想象的后果,因此系统测试是MIS开发过程中为保证软件质量必须进行的工作。大量统计资料表明,系统测试的工作量往往占MIS开发总工作量的40%以上。因此,我们必须重视测试工作。 由于程序中隐藏的缺陷只在特定的环境下才有可靠显露,系统缺陷通常是由于对某些特定情况考虑不周造成的。因此测试不是为了表明程序正确;成功的测试也不是没有发现错误的测试。有意义的软件测试应该是从“破坏”软件系统的角度出发,精心设计最有可以暴露程序系统缺陷的测试方案。因此软件测试的目标应该是以尽可能少的代价和时间找出软件系统中潜在的错误和缺陷。 从产品角度看,测试计划中的测试项目包括软件结构中的分系统层、子系统层、功能模块层、程序模块层中的各类模块,从测试本身看,分为单元测试,组合测试,确认测试等。测试对象是随不同阶段而异的,最基本、最初的测试是单元测试,后面的组合测试、确认测试都是以被测过的模块作为测试对象的。 ? 单元测试: 单元测试也称模块测试或程序测试,单元测试是对每个模块单独进行的,验证模块接口与设计说明书是否一致,对模块的所有主要处理路径进行测试且与预期的结构进行对照,还要对所有错误处理路径进行测试。对源码进行审查,对照设计说明书,表态地检查源程序是否符合功能的逻辑要求,是进行单元测试前的重要工作工。单元测试一般是由程序员完成,也称程序调试。 18 ? 组合测试 组合测试也称集成测试或子系统测试,通常采用自顶向下测试和自底向上测试两种测试方法。组合测试的对象是指已经通过单元测试的模块,不是对零散模块进行单个测试,而是用系统化的方法装配和测试软件系统,是一个严格的过程,必须认真地进行,其计划的产生和单元模块测试的完成日期要协调起来,这种测试应在系统目标机上进行,造成系统应用的环境条件,除了开发部分项目负责人参加以外,还应该有相应系统的用户参加,给评审员进行演示。 ?确认测试 确认测试是对通过组合测试的软件进行的,这些软件已经存于系统目标设备的介质上,确认测试的目的是表明软件是可以工作的,并且符合“软件需求说明书”中规定的全部功能和性能要求。确认测试是按照这些要求定出的“确认测试计划”进行的。测试工作是由一个独立的组织进行,而且测试要从用户的角度出发。 ?系统测试 系统测试是对整体性能的测试,主要解决各子系统之间的数据通信和数据共享问题以及检测系统是否达到用户的实际要求,系统测试的依据是系统分析报告。系统测试应在系统的整个范围内进行,这种测试不只对软件进行,而是对构成系统的硬、软件一起进行。系统测试与建构同时进行或略慢。系统测试需要确认从头到尾的功能正常才算完成,应当尽量避免系统测试延到项目末尾进行。 ?用户验收测试 在系统测试完成后,进行用户的验收测试,它是用户在实际应用环境中所进行的真实数据测试。 在具体的测试中,一般应遵循以下原则:由程序设计者之外的人进行测试;测试用例应由两部分组成:输入数据和预期输出结果;应选用不合理的输入数据与非法输入测试;不仅要检验程 19 序是否实现预期功能,还应检查程序是否做了不应该做的工作;集中测试容易出错的程序模块;对程序修改以后,必须重新进行测试。 5.2 测试方法 一般来说,对程序测试有两种测试方法:如果已经知道了软件系统应具有的功能,可通过测试来对每个功能是否都能正常使用;如果知道程序的内部工作过程,可以通过测试来检测程序内部是否按照规格说明书的规定正常进行。前一种方法称为黑盒测试,后一种方法称为白盒子测试。黑盒测试又称为功能测试,白盒子测试又称为结构测试。 经过几个月的毕业设计,因为时间和任务的性质的关系,没有完全按照上述的测试方法进行系统的测试,但经过一些简单的步骤的测试,证明本系统具有相当程序的稳定性。 20 致 谢 经过四个多月的构思与设计,在指导老师的精心指导和安排下,本系统已经设计完毕。其使用功能基本符合公司在实际工作的需要,具有一定的实用性。但是由于时间比较仓促,加上本人软件设计经验的不足。因此,在分析问题、解决问题时显得不够严密、完善,还需要在以后的工作中不断地改进和完善。 在这次的毕业设计中,让我深深地体现到进行软件开发不是一件简单的事情,它需要设计者具有全面的专业知识、缜密的思维、严谨的工作态度以及较高的分析问题、解决问题的能力,而我在很多方面还有欠缺。最后,我要衷心感谢老师在我的设计过程中给予我的极大帮助,使我能够及时、顺利地完成此次的毕业设计。同时,也要感谢我的老师和同学们及实习企业在本系统的设计过程中给予我的支持和帮助。 21 参考文献 [1]易福华编著:<>,电子工业出版社 2007年1月 [2]王福成等: <>, 清华大学出版社 2006年6月 [3]郭振波编著: << 深入浅出Visual Basic 6.0中文版>>, 人民邮电出版社2007年3月 [4]林永等编著: <>, 人民邮电出版社2005年11月 [5]刘炳文等编著: <> ,清华大学出版社 2006年7月 22 附 录 1.主窗体界面代码如下: Private Sub MDIForm_Load() Dim rst As ADODB.Recordset Dim SQL As String Dim msg As String Dim rights As String '保存记录中的权限值 '查找权限 SQL = " select 权限 from 用户信息表 where 用户ID='" & UserID & "'" Set rst = SelectSQL(SQL, msg) If rst.RecordCount > 0 Then rights = Trim(rst.Fields(0)) rst.Close Else MsgBox ("没有用户信息~") Exit Sub End If '设置权限 If InStr(rights, "职能设置") Then 职能设置.Enabled = True Me.Toolbar1.Buttons(1).Enabled = True Me.Toolbar1.Buttons(3).Enabled = True Else 职能设置.Enabled = False Me.Toolbar1.Buttons(3).Enabled = False Me.Toolbar1.Buttons(1).Enabled = False End If If InStr(rights, "员工信息管理") Then 23 员工信息管理.Enabled = True Me.Toolbar1.Buttons(5).Enabled = True Me.Toolbar1.Buttons(7).Enabled = True Else 员工信息管理.Enabled = False Me.Toolbar1.Buttons(5).Enabled = False Me.Toolbar1.Buttons(7).Enabled = False End If If InStr(rights, "工资管理") Then 工资管理.Enabled = True Me.Toolbar1.Buttons(9).Enabled = True Me.Toolbar1.Buttons(11).Enabled = True Else 工资管理.Enabled = False Me.Toolbar1.Buttons(9).Enabled = False Me.Toolbar1.Buttons(11).Enabled = False End If If InStr(rights, "员工考勤管理") Then 员工考勤管理.Enabled = True Me.Toolbar1.Buttons(13).Enabled = True Else 员工考勤管理.Enabled = False Me.Toolbar1.Buttons(13).Enabled = False End If If InStr(rights, "工作考核管理") Then 工作考核管理.Enabled = True Me.Toolbar1.Buttons(15).Enabled = True Else 工作考核管理.Enabled = False Me.Toolbar1.Buttons(15).Enabled = False 24 End If 用户管理.Enabled = InStr(rights, "用户管理") End Sub Private Sub 部门设置_Click() A部门设置.Show 人事管理系统.Enabled = False End Sub Private Sub 职务设置_Click() A职务设置.Show 人事管理系统.Enabled = False End Sub Private Sub 员工录用_Click() B员工录用.Show 人事管理系统.Enabled = False End Sub Private Sub 员工基本信息_Click() B员工基本信息.Show 人事管理系统.Enabled = False End Sub Private Sub 花名册_Click() B花名册.Show 人事管理系统.Enabled = False End Sub Private Sub 工资标准_Click() C工资标准.Show 人事管理系统.Enabled = False End Sub Private Sub 工资计发_Click() c工资计发.Show 人事管理系统.Enabled = False 25 End Sub Private Sub 工资报表_Click() C工资报表.Show 人事管理系统.Enabled = False End Sub Private Sub 考勤录入_Click() D考勤管理.Show D考勤管理.SSTab1.Tab = 0 人事管理系统.Enabled = False End Sub Private Sub 考勤考核_Click() D考勤管理.Show D考勤管理.SSTab1.Tab = 2 人事管理系统.Enabled = False End Sub Private Sub 考勤查询_Click() D考勤管理.Show D考勤管理.SSTab1.Tab = 1 人事管理系统.Enabled = False End Sub Private Sub 考核录入_Click() E考核录入.Show 人事管理系统.Enabled = False End Sub Private Sub 考核查询_Click() E考核查询.Show 人事管理系统.Enabled = False End Sub Private Sub 考核单生成_Click() E考核单生成.Show 26 人事管理系统.Enabled = False End Sub Private Sub 用户管理_Click() F用户管理.Show 人事管理系统.Enabled = False End Sub Private Sub 密码维护_Click() F密码维护.Show 人事管理系统.Enabled = False End Sub Private Sub 重新登录_Click() F重新登录.Show Unload Me End Sub Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Index Case 1: Call 部门设置_Click '调入部门设置 Case 3: Call 职务设置_Click '调入职务设置 Case 5: Call 员工录用_Click '调入员工录用 Case 7: Call 员工基本信息_Click '调入员工基本信息 Case 9: Call 工资计发_Click '调入工资计发 Case 11: Call 工资报表_Click '调入工资报表 Case 13: Call 考勤考核_Click '调入考勤考核 27 Case 15: Call 考核录入_Click '调入考核录入 Case 17: Call 重新登录_Click '调入重新登录 End Select End Sub 2.部门设置代码如下: Option Explicit Dim rs As ADODB.Recordset Dim SQL As String Dim msg As String Dim Index As Integer Dim flag As String '判断是新增记录还是修改记录 Private Sub Form_Load() CboQuery.Clear '清空ComboBox '查询部门信息 SQL = " select * from 部门信息表" Set rs = SelectSQL(SQL, msg) If rs.RecordCount = 0 Then '如果没有部门信息 MsgBox ("请先建立部门信息~") Else Do While Not rs.BOF And Not rs.EOF '添加到ComboBox列表 Me.CboQuery.AddItem (rs.Fields("部门代码") & rs.Fields("部门名称")) rs.MoveNext '指向下一条记录 Loop Me.CboQuery.ListIndex = 0 '默认ComboBox 28 rs.Close End If Call LoadData '装载数据 Call ShowData '显示数据 End Sub Private Sub LoadData() '装载数据 Dim colName As String Dim strWhere As String '得到查询条件 colName = Left(Trim(CboQuery.Text), 4) '构建条件 strWhere = " where 部门代码='" & colName & "'" Set rs = Nothing '查询部门信息 SQL = "SELECT * FROM 部门信息表 " & strWhere & " ORDER BY 部门代码 " Set rs = SelectSQL(SQL, msg) If rs.RecordCount = 0 Then '如果不存在记录 '编辑控件可用性 CmdAdd.Enabled = True: CmdModify.Enabled = False: CmdDelete.Enabled = False CmdCancel.Enabled = False: CmdSave.Enabled = False Else '编辑控件可用性 CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = True CmdCancel.Enabled = False: CmdSave.Enabled = False End If '设置控件Enable值 29 Call ControlEnable(False) End Sub Private Sub ControlEnable(flag As Boolean) '设置控件的Enable值 Me.txtDeNo.Enabled = flag Me.txtDeName.Enabled = flag Me.txtLeName.Enabled = flag Me.txtAddress.Enabled = flag Me.txtPhone.Enabled = flag Me.txtJian.Enabled = flag End Sub Private Sub ShowData() '在控件中显示数据 If rs.RecordCount <> 0 Then '如果存在记录 '为控件赋值,并不可用 Me.txtDeNo.Text = rs.Fields("部门代码") Me.txtDeName.Text = rs.Fields("部门名称") Me.txtLeName.Text = rs.Fields("领导姓名") Me.txtAddress.Text = rs.Fields("联系地址") Me.txtPhone.Text = rs.Fields("联系电话") Me.txtJian.Text = rs.Fields("简介") End If End Sub Private Sub CmdAdd_Click() '添加操作 '所有控件重置 Call ControlClear '设置控件Enable值为可用 Call ControlEnable(True) '设置标志flag,表示所进行的操作为添加 30 flag = "Add" '添加、修改、删除按钮不可用,取消、保存按钮可用 CmdAdd.Enabled = False: CmdModify.Enabled = False: CmdDelete.Enabled = False CmdCancel.Enabled = True: CmdSave.Enabled = True End Sub Private Sub ControlClear() '重置控件 Me.txtDeNo.Text = "" Me.txtDeName.Text = "" Me.txtLeName.Text = "" Me.txtAddress.Text = "" Me.txtPhone.Text = "" Me.txtJian.Text = "" End Sub Private Sub CmdModify_Click() '修改操作 If rs.RecordCount > 0 Then '如果存在记录 '部门代码不可以修改,其他控件可用 Me.txtDeNo.Enabled = False '设置控件Enable值 Call ControlEnable(True) '设置标志flag,表示所进行的操作为修改 flag = "Modify" '添加、修改、删除按钮不可用,取消、保存按钮可用 CmdAdd.Enabled = False: CmdModify.Enabled = False: CmdDelete.Enabled = False CmdCancel.Enabled = True: CmdSave.Enabled = True Else MsgBox ("没有可以修改的数据!") 31 End If End Sub Private Sub CmdDelete_Click() '删除操作 On Error GoTo ErrMsg '错误处理 If rs.RecordCount > 0 Then '如果存在记录 msg = MsgBox("删除该条记录吗?", vbYesNo) If msg = vbYes Then '如果选择"是" rs.Delete '删除记录 Call Form_Load '重新装载数据、初始化Combobox '清空控件 Call ControlClear '设置控件Enable值为不可用 Call ControlEnable(False) '添加、删除按钮可用,修改、取消、保存按钮不可用 CmdAdd.Enabled = True: CmdModify.Enabled = False: CmdDelete.Enabled = True CmdSave.Enabled = False: CmdCancel.Enabled = False MsgBox ("成功删除的数据!") End If Else MsgBox ("没有可删除的数据!") End If Exit Sub ErrMsg: '报告出错信息 MsgBox Err.Description, vbExclamation, "出错" End Sub Private Sub CmdSave_Click() '保存操作 32 On Error GoTo ErrMsg '出错处理 If Not CheckData Then Exit Sub '如果数据不合法就退出 If flag = "Modify" Then '如果是修改数据 msg = MsgBox("您确实要修改这条数据吗?", vbYesNo) If msg = vbYes Then Call setData '设置数据 Else Exit Sub End If ElseIf flag = "Add" Then '如果是添加新数据 rs.AddNew Call setData '设置数据 End If rs.Update '更新数据 CmdModify.Enabled = True: CmdDelete.Enabled = True: CmdAdd.Enabled = True CmdSave.Enabled = False: CmdCancel.Enabled = False If flag = "Add" Then '如果标志为“Add” MsgBox ("成功添加数据!") Else MsgBox ("成功更新数据!") End If Call Form_Load '重新装载数据 Exit Sub ErrMsg: '报告出错信息 MsgBox Err.Description, vbExclamation, "出错" End Sub Private Function CheckData() As Boolean '检查数据的合法性 Dim rst As ADODB.Recordset 33 Dim msgt As String msgt = "" '检查数据 If Trim(txtDeNo.Text) = "" Then '检查部门代码是否为空 msgt = "部门代码为空; " ElseIf Not Len(Trim(txtDeNo.Text)) = 4 Then '检查部门代码是否为4位 msgt = "部门代码不是4位; " ElseIf Trim(txtDeName.Text) = "" Then '部门名称是否为空 msgt = msgt & " 部门名称为空; " ElseIf Trim(txtLeName.Text) = "" Then '领导姓名是否为空 msgt = msgt & " 领导姓名为空; " End If If Not msgt = "" Then '如果不为空,给出错误提示 MsgBox (msgt) CheckData = False '返回False Exit Function End If '检查唯一性 SQL = " select * from 部门信息表 where 部门代码='" & Trim(txtDeNo.Text) & "'" Set rst = SelectSQL(SQL, msg) '如果是进行添加操作且已经存在该记录,提示重复添加 If flag = "Add" And rst.RecordCount > 0 Then MsgBox ("该信息已经存在,重复添加!") rst.Close CheckData = False '返回False Exit Function End If CheckData = True '合法返回True 34 End Function Private Sub setData() '为字段设置数据 rs.Fields("部门代码") = Me.txtDeNo.Text rs.Fields("部门名称") = Me.txtDeName.Text rs.Fields("领导姓名") = Me.txtLeName.Text rs.Fields("联系地址") = Me.txtAddress.Text rs.Fields("联系电话") = Me.txtPhone.Text rs.Fields("简介") = Me.txtJian.Text End Sub Private Sub cmdCancel_Click() '取消操作 Call ShowData '重新在控件中显示信息 '设置控件Enable值为不可用 Call ControlEnable(False) '修改、删除、添加按钮可用,保存和取消按钮不可用 CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = True CmdSave.Enabled = False: CmdCancel.Enabled = False End Sub Private Sub CboQuery_Click() '在控件显示部门的具体信息 Call LoadData '装载数据 Call ShowData '显示数据 End Sub Private Sub CmdExit_Click() '退出操作 人事管理系统.Enabled = True Unload Me 35 End Sub Private Sub Form_Unload(Cancel As Integer) '退出操作 人事管理系统.Enabled = True rs.Close Unload Me End Sub 3.员工基本信息代码如下: Option Explicit Dim rs As ADODB.Recordset Dim SQL As String Dim msg As String Dim Index As Integer '保存员工ID,使得当单击修改按钮的时候,能够使当前的员工信息加载到:B 员工基本信息添加页面 Public YGID As String Private Sub Form_Load() '初始化查询条件CboQuery CboQuery.AddItem ("所属部门ID") CboQuery.AddItem ("职务代码") CboQuery.AddItem ("员工ID") CboQuery.AddItem ("姓名") CboQuery.AddItem ("身份证号") CboQuery.ListIndex = 0 '默认查询条件为所属 部门ID Call LoadData '装载数据 End Sub Private Sub LoadData() '装载数据 36 Dim colName As String '保存所选择的查询条件 Dim colValue As String '保存所要查询具体的值 Dim strWhere As String '得到查询条件 colName = Trim(CboQuery.Text) '取出条件的值 colValue = Trim(txtQuery.Text) '取出所要查询的值 '构建条件 strWhere = "where " & colName & " like '%" & colValue & "%'" Set rs = Nothing '查询员工基本信息 SQL = "SELECT * FROM 员工基本信息表 " & strWhere & " ORDER BY 员工ID " Set rs = SelectSQL(SQL, msg) Set Me.DataGrid1.DataSource = rs '在DataGrid显示查询的结果 DataGrid1.Refresh If rs.RecordCount = 0 Then '如果不存在记录 '编辑控件可用性 CmdAdd.Enabled = True: CmdModify.Enabled = False: CmdDelete.Enabled = False '移动控件不可用 For Index = 0 To 3 CmdMove(Index).Enabled = False Next Index Else '编辑控件可用性 CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = True 37 '移动控件可用 For Index = 0 To 3 CmdMove(Index).Enabled = True Next Index End If End Sub Private Sub CmdMove_Click(Index As Integer) '移动记录 Select Case Index Case Is = 0 '移到第一条记录 If Not rs.BOF Then rs.MoveFirst Case Is = 1 '移到上一条记录 If rs.RecordCount <> 0 Then If rs.BOF = False Then rs.MovePrevious If rs.BOF = True Then rs.MoveFirst End If Case Is = 2 '移到下一条记录 If rs.RecordCount <> 0 Then If rs.EOF = False Then rs.MoveNext If rs.EOF = True Then rs.MoveLast End If Case Is = 3 '移到最后一条记录 If rs.RecordCount <> 0 Then If Not rs.EOF = True Then rs.MoveLast End If End Select End Sub Private Sub CmdAdd_Click() '添加员工基本信息操作 '设置标志flag,表示所进行的操作为添加 38 B员工基本信息维护.flag = "Add" B员工基本信息维护.Show '显示B员工基本信息添加页面 Me.Enabled = False End Sub Private Sub CmdModify_Click() '修改员工基本信息操作 '设置标志flag,表示所进行的操作为修改 B员工基本信息维护.flag = "Modify" If Not rs.EOF And Not rs.BOF Then '如果存在记录 YGID = Trim(rs.Fields(0)) '保存当前员工的ID B员工基本信息维护.Show '显示B员工基本信息添加页面 Me.Enabled = False End If End Sub Private Sub CmdDelete_Click() '删除操作 On Error GoTo ErrMsg '错误处理 If rs.RecordCount > 0 Then '如果存在记录 msg = MsgBox("删除该条记录吗?", vbYesNo) If msg = vbYes Then '如果选择“是” rs.Delete '删除当前记录 Call LoadData '重新装载数据 MsgBox ("成功删除的数据!") End If Else MsgBox ("没有可删除的数据!") End If Exit Sub 39 ErrMsg: '报告出错信息 MsgBox Err.Description, vbExclamation, "出错" End Sub Private Sub CmdQuery_Click() '查询操作 Call LoadData '装载数据 End Sub Private Sub CmdExit_Click() '退出操作 人事管理系统.Enabled = True Unload Me End Sub Private Sub Form_Unload(Cancel As Integer) '退出操作 人事管理系统.Enabled = True rs.Close Unload Me End Sub Public Sub ReLoad() Call Form_Load End Sub 4.工资标准代码如下: Option Explicit Dim rs As ADODB.Recordset Dim SQL As String Dim msg As String Dim Index As Integer Dim flag As String '判断是新增记录还是修改记录 40 Private Sub Form_Load() Call LoadData '装载数据 Call ShowData '显示数据 End Sub Private Sub LoadData() '装载数据 Set rs = Nothing '查询工资标准信息 SQL = "SELECT * FROM 工资标准信息表 ORDER BY 工资等级ID " Set rs = SelectSQL(SQL, msg) If rs.RecordCount = 0 Then '如果不存在记录 '编辑控件可用性 CmdAdd.Enabled = True: CmdModify.Enabled = False: CmdDelete.Enabled = False CmdCancel.Enabled = False: CmdSave.Enabled = False '移动控件不可用 For Index = 0 To 3 CmdMove(Index).Enabled = False Next Index Else '编辑控件可用性 CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = True CmdCancel.Enabled = False: CmdSave.Enabled = False '移动控件可用 For Index = 0 To 3 CmdMove(Index).Enabled = True Next Index End If '设置控件Enable值 41 Call ControlEnable(False) End Sub Private Sub ControlEnable(flag As Boolean) '设置控件的Enable值 Dim Index As Integer Me.txtGZID.Enabled = flag Me.txtDJName.Enabled = flag For Index = 0 To 7 txt(Index).Enabled = flag Next End Sub Private Sub ShowData() '在控件中显示数据 If rs.RecordCount <> 0 Then '如果存在记录 '为控件赋值 Me.txtGZID.Text = rs.Fields("工资等级ID") Me.txtDJName.Text = rs.Fields("等级名称") Me.txt(0).Text = rs.Fields("底薪") Me.txt(1).Text = rs.Fields("补贴") Me.txt(2).Text = rs.Fields("奖金") Me.txt(3).Text = rs.Fields("车补") Me.txt(4).Text = rs.Fields("房补") Me.txt(5).Text = rs.Fields("养老金") Me.txt(6).Text = rs.Fields("医疗保险") Me.txt(7).Text = rs.Fields("住房公积金") End If End Sub Private Sub CmdMove_Click(Index As Integer) '移动记录 Select Case Index 42 Case Is = 0 '移到第一条记录 If Not rs.BOF Then rs.MoveFirst Case Is = 1 '移到上一条记录 If rs.RecordCount <> 0 Then If rs.BOF = False Then rs.MovePrevious If rs.BOF = True Then rs.MoveFirst End If Case Is = 2 '移到下一条记录 If rs.RecordCount <> 0 Then If rs.EOF = False Then rs.MoveNext If rs.EOF = True Then rs.MoveLast End If Case Is = 3 '移到最后一条记录 If rs.RecordCount <> 0 Then If Not rs.EOF = True Then rs.MoveLast End If End Select Call ShowData '重新显示数据 End Sub Private Sub CmdAdd_Click() '添加操作 '所有控件重置 Call ControlClear '设置控件Enable值为可用 Call ControlEnable(True) '设置标志flag,表示所进行的操作为添加 flag = "Add" '所有移动按钮不可用 For Index = 0 To 3 CmdMove(Index).Enabled = False 43 Next Index '添加、修改、删除按钮不可用,取消、保存按钮可用 CmdAdd.Enabled = False: CmdModify.Enabled = False: CmdDelete.Enabled = False CmdCancel.Enabled = True: CmdSave.Enabled = True End Sub Private Sub ControlClear() '重置控件 Dim Index As Integer Me.txtGZID.Text = "" Me.txtDJName.Text = "" For Index = 0 To 7 txt(Index).Text = "" Next End Sub Private Sub CmdModify_Click() '修改操作 If rs.RecordCount > 0 Then '如果存在记录 '工资等级ID不可以修改,其他控件可用 Me.txtGZID.Enabled = False '设置控件Enable值 Call ControlEnable(True) '设置标志flag,表示所进行的操作为修改 flag = "Modify" '移动控件不可用 For Index = 0 To 3 CmdMove(Index).Enabled = False Next Index '添加、修改、删除按钮不可用,取消、保存按钮可用 CmdAdd.Enabled = False: CmdModify.Enabled = False: 44 CmdDelete.Enabled = False CmdCancel.Enabled = True: CmdSave.Enabled = True Else MsgBox ("没有可以修改的数据!") End If End Sub Private Sub CmdDelete_Click() '删除操作 On Error GoTo ErrMsg '错误处理 If rs.RecordCount > 0 Then msg = MsgBox("删除该条记录吗?", vbYesNo) If msg = vbYes Then rs.Delete '删除记录 Call LoadData '重新装载数据 Call ShowData '重新显示数据 Call ControlClear '清空控件 '设置控件Enable值为不可用 Call ControlEnable(False) '所有移动控件不可用 If rs.RecordCount = 0 Then For Index = 0 To 3 CmdMove(Index).Enabled = False Next Index End If '添加、删除按钮可用,修改、取消、保存按钮不可用 CmdAdd.Enabled = True: CmdModify.Enabled = False: CmdDelete.Enabled = True CmdSave.Enabled = False: CmdCancel.Enabled = False MsgBox ("成功删除的数据!") End If 45 Else MsgBox ("没有可删除的数据!") End If Exit Sub ErrMsg: '报告出错信息 MsgBox Err.Description, vbExclamation, "出错" End Sub Private Sub CmdSave_Click() '保存操作 On Error GoTo ErrMsg '错误处理 If Not CheckData Then Exit Sub '如果数据不合法就退出 If flag = "Modify" Then '如果是修改数据 msg = MsgBox("您确实要修改这条数据吗?", vbYesNo) If msg = vbYes Then Call setData '设置数据 Else Exit Sub End If ElseIf flag = "Add" Then '如果是添加新数据 rs.AddNew Call setData '设置数据 End If rs.Update '更新数据 '移动控件可用 For Index = 0 To 3 CmdMove(Index).Enabled = True Next Index '编辑控件的可用性 CmdModify.Enabled = True: CmdDelete.Enabled = True: CmdAdd.Enabled = True 46 CmdSave.Enabled = False: CmdCancel.Enabled = False If flag = "Add" Then MsgBox ("成功添加数据!") Else MsgBox ("成功更新数据!") End If Call LoadData '重新装载数据 '定位到添加或修改记录 If rs.RecordCount > 0 Then rs.MoveFirst rs.Find ("工资等级ID='" & Trim(Me.txtGZID.Text) & "'") If Not rs.EOF Then Call ShowData '重新显示数据 End If Exit Sub ErrMsg: '报告出错信息 MsgBox Err.Description, vbExclamation, "出错" End Sub Private Function CheckData() As Boolean '检查数据的合法性 Dim rst As ADODB.Recordset Dim msgt As String msgt = "" '检查数据 If Trim(txtGZID.Text) = "" Then '检查工资等级ID是否为空 msgt = "工资等级ID为空; " ElseIf Not Len(Trim(txtGZID.Text)) = 4 Then '检查工资等级ID是否为4位 msgt = "工资等级ID不是4位; " ElseIf Trim(txtDJName.Text) = "" Then '检查等级名称是否为空 47 msgt = msgt & " 等级名称为空; " ElseIf Trim(txt(0).Text) = "" Then '检查底薪是否为空 msgt = msgt & " 底薪为空; " End If If Not msgt = "" Then '如果不为空,给出错误提示 MsgBox (msgt) CheckData = False '返回False Exit Function End If '检查唯一性 SQL = " select * from 工资标准信息表 where 工资等级ID='" & Trim(txtGZID.Text) & "'" Set rst = SelectSQL(SQL, msg) '如果是进行添加操作且已经存在该记录,提示重复添加 If flag = "Add" And rst.RecordCount > 0 Then MsgBox ("该信息已经存在,重复添加!") rst.Close CheckData = False '返回False Exit Function End If CheckData = True '合法返回True End Function Private Sub setData() '为字段设置数据 rs.Fields("工资等级ID") = Me.txtGZID.Text rs.Fields("等级名称") = Me.txtDJName.Text For Index = 0 To 7 48 If txt(Index).Text <> "" Then rs.Fields(Index + 2) = txt(Index).Text Else rs.Fields(Index + 2) = 0 End If Next Index End Sub Private Sub cmdCancel_Click() '取消操作 Call ShowData '重新在控件中显示信息 '所有移动控件可用 If rs.RecordCount > 0 Then For Index = 0 To 3 CmdMove(Index).Enabled = True Next Index End If '设置控件Enable值为不可用 Call ControlEnable(False) '修改、删除、添加按钮可用,保存和取消按钮不可用 CmdAdd.Enabled = True: CmdModify.Enabled = True: CmdDelete.Enabled = True CmdSave.Enabled = False: CmdCancel.Enabled = False End Sub Private Sub CmdExit_Click() '退出操作 人事管理系统.Enabled = True Unload Me End Sub Private Sub Form_Unload(Cancel As Integer) 49 '退出操作 人事管理系统.Enabled = True rs.Close Unload Me End Sub 50
本文档为【例子:人事管理系统论文】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_751406
暂无简介~
格式:doc
大小:188KB
软件:Word
页数:0
分类:生活休闲
上传时间:2018-01-07
浏览量:15