




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
安徽工业大学工商学院毕业设计(论文)说明书安徽工业大学工商学院毕业设计(论文)说明书课题名称:企业人事管理系统学 院:工商学院 专业班级:计0842 姓 名:蒋署 学 号:081842073 毕业设计(论文)主要内容及其要求:使用.net+c#+sql设计用人单位信息简介、招聘职位种类、数量、专业、学历、工作经验要求、联系方式、应聘程序与资料要求等信息发布,以及网上求职者的个人求职信息(职位、待遇、个人学历、专业专长、工作经历等)的发布。并提供网上介绍招聘单位的风光等视屏信息和求职者的照片等图像信息;以及站长或管理员对信息发布者的注册与登录等网站管理功能。1.熟悉课题要求的功能及基本结构、.net开发平台工具的编程环境。2. 学习并掌握c#技术与编程方法,并运用面向对象设计方法,编写程序。3. 完成毕业设计说明书(毕业论文)一份。4. 完成5000字的与设计内容有关的外文资料翻译。 指导教师签字: 摘要随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行。本系统结合公司实际的人事管理制度,经过实际的需求分析,采用功能强大的visual basic6.0作为开发工具而开发出来的单机版人事管理系统。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成人事管理的全过程,包括新进员工加入时人事档案的建立、老员工的转出、职位等的变动引起职工信息的修改、员工信息查询、统计等人事管理工作以及新进员的新增、老员工修改等管理工作。经过实际使用证明,本文所设计的人事管理系统可以满足公司人事管理方面的需要。关键词:信息管理,人事管理,人事管理系统 abstractwith the rapid development of computer technology, computer applications in the enterprise management of the popularity of computer personnel management of enterprises is imperative. the system combines the companys actual personnel management system, the demand for actual analysis, the use of powerful development tools as visual basic6.0 and developed stand-alone version of the personnel management system. from the whole system in line with the simple, user-friendly, flexible, practical and safety requirements, the completion of the entire process of personnel management, including new staff into the establishment of personnel files when the old staff out of jobs, such as employees of the changes in information changes, staff information, statistics, such as personnel management, as well as new members to add, modify, such as the old staff management. proof of actual use, the paper designed to meet the personnel management system, personnel management company needs. keywords: information management, personnel management, personnel management systems1. 绪论1.1开发背景人事管理是现代企业工作中不可缺少的一部分,是推动企业走向科学化,规范化的必要条件。员工是企业生存的主要元素,员工的增减变动直接影响到企业的整体运作。企业员工越多,分工越细,联系越密,所做的统计工作就越多,人事管理的难度就越大。随着企业的不断壮大,自动化的人事管理系统就显得非常必要。本软件要求可以是一个方便,快捷地对职工信息进行添加,修改,删除的操作,并且可以再数据库中存储相应的职工照片,为了能够更好的存储职工信息,可以将职工的信息添加到word中,这样可以方便打印和保存。1.2可行性研究12.1引言为了给软件开发的企业决策层提供是否进行项目实施的参考依据。现以文件的形式分析项目的风险,项目的需要的投资和效益。1.2.2可行性研究的前提 可以真正地实现对企业人事的管理,系统的功能符合企业的实际情况。系统的功能操作要方便,易懂,不要有多余的复杂的操作,可以方便的对人事信息进行输出打印。1.2.3投资及效益分析需要在短时间熟悉开发工具,并熟悉的操作开发工具,需要投入几个月的时间和精力,但是可以完成毕业设计和掌握软件开发过程积累经验技术。1.2.4结论根据上面的分析,技术上不存在任何问题并且可以顺利完成毕业设计。 2.系统开发模式、工具及环境 2.1系统运行环境 硬件:cpu 1.2ghz以上 内存 1gb以上 硬盘 80gb以上软件:数据库 sql2008 操作系统 win72.2系统开发工具介绍2.2.1c#概述c sharp(音标 a:p )(又被简称为c#)是微软公司在2000年6月发布的一种新的编程语言,并定于在微软职业开发者论坛(pdc)上登台亮。c#是微软公司研究员anders hejlsberg的最新成果。c#看起来与java有着惊人的相似;它包括了诸如单一继承、界面、与java几乎同样的语法,和编译成中间代码再运行的过程。但是c#与java有着明显的不同,它借鉴了delphi的一个特点,与com(组件对象模型)是直接集成的,而且它是微软公司.net windows网络框架的主角。微软c#语言定义主要是从c和c+继承而来的,而且语言中的许多元素也反映了这一点。c#在设计者从c+继承的可选选项方面比java要广泛一些(比如说struts),它还增加了自己新的特点(比方说源代码版本定义)。2.2.2 .net平台.net就是微软的用来实现xml,web services,soa(面向服务的体系结构service-oriented architecture)和敏捷性的技术。对技术人员,想真正了解什么是.net,必须先了解.net技术出现的原因和它想解决的问题,必须先了解为什么他们需要xml,web,services 和 soa。技术人员一般将微软看成一个平台厂商。微软搭建技术平台,而技术人员在这个技术平台之上创建应用系统。从这个角度,.net也可以如下来定义:.net是微软的新一代技术平台,为敏捷商务构建互联互通的应用系统,这些系统是基于标准的,联通的,适应变化的,稳定的和高性能的。从技术的角度,一个.net应用是一个运行于.net framework之上的应用程序。(更精确的说,一个.net应用是一个使用.net framework类库来编写,并运行于公共语言运行时 common language runtime之上的应用程序。)如果一个应用程序跟.net framework无关,它就不能叫做.net程序。比如,仅仅使用了xml并不就是.net应用,仅仅使用soap sdk调用一个web service也不是.net应用。2.2.3 sql2008简介sql server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的sql server版本。这篇文章详细介绍了microsoft sql server 2008中的新的特性、优点和功能 在现今数据的世界里,公司要获得成功和不断发展,他们需要定位主要的数据趋势的愿景。微软的这个数据平台愿景帮助公司满足这些数据爆炸和下一代数据驱动应用程序的需求。微软将继续投入和发展以下的关键领域来支持他们的数据平台愿景:关键任务企业数据平台、动态开发、关系数据和商业智能。3.系统需求分析及概要设计3.1需求分析 基于其他企业人事管理软件的不足,要求能够制作一个可以方便,快捷地对职工信息进行添加,修改,删除的操作,并且可以再数据库中存储相应的职工的照片,为了能够更好的存储职工的信息,可以将职工信息添加到word文档中,这样,不但便于保存,还可以通过word文档进行打印。3.2数据库分析 企业人事管理系统主要用来记录一个企业中所有员工的基本信息以及每个员工的工作简历、家庭成员、惩奖记录等,数据量是根据企业员工的多少决定的,sql server2008作为目前最新的数据库,该数据库在安全性,准确性和运行速度方面有绝对的优势;并且数据处理量大,效率高。所以本系统采用sql server2008作为后台数据库,数据库命名为tb_dbms,其中包含了23张数据表,并用于存储不同的信息。数据库er模型图如下:基本工资工资编号密码用户名工资管理员文化程度管理部门编号 拥有 部门员工员工姓名部门属性性性别请假 考勤 评价假期惩奖金员工编号请假原因职工编号 3.3.数据库设计本系统使用mysql数据库,由于以前学过数据库sql语言,因此可以运用sql语句来建立数据库并进行数据的调用和查询等等。设计数据库的过程中要考虑很多方面的因素,比如增删改的效率,查询的速度,空间的节省,数据的完整性、一致性和安全性等等。数据库的设计要遵循一定的规则,首先要避免保存冗余数据;其次要使用原子列值,使用原子列值是说对每一行的每个属性只存储一个数据;其三,选择有意义的主键。应该确认所选择的键是唯一的,这也是将字段设为主键的强制要求;其四,要考虑需要询问数据库的问题。在设计数据库的时候应当仔细考虑希望数据库回答哪些问题,因此应当确认数据库中已经包含所有需要的数据,并且在表之间要有适当的关联;其五,要避免多个空属性的设计数据库中有多个空属性的设计是糟糕的,一则极大的浪费存储空间,二则在统计列总量或对其他数值列应用计算函数时可能导致错误。所建立的数据库由两种类型的表组成:1. 描述现实世界对象的简单表,这种表也可能包含其他简单对象的键,它们之间有一对一或一对多的关系。2.描述两个现实世界对象的多对多关系的关联表。对于多对多关系,总是要设置一张关联表,表中只有两个字段分别对应于两个实体表的主键。关联表总是与现实世界某种事务处理相联系的。本系统中数据库设计有二十三个表,分别为职工基本信息表,家庭关系表,工作简历表,惩奖表,个人简历表,日常记事本表,培训记录表,通讯录等表。 表3.1家庭关系表(tb_family)字段名数据类型主键否描述idvarchar(5)是编号sta_idvarchar(5)否职工编号league_namevarchar(20)否成员名称nexusvarchar(10)否本人关系birthdatadatatime否出生日期workunitvarchar(24)否工作单位businessvarchar(10)否职务visagevarchar(10)否政治面貌 表3.2职工信息表字段名 数据类型主键否描述idvarchar(5)是职工编号stuffnamevarchar(5)否职工姓名flokvarchar(20)否民族birthdaydatatime否出生日期ageint否年龄culturevarchar(14)否文化程度marriagevarchar(4)否婚姻sexvarchar(4)否性别visagevarchar(14)否政治面貌idcardvarchar(20)否身份证号workdatedatetime否工作时间employeevarchar(20)否职工类别businessvarchar(20)否职务类型laboragevarchar(20)否工资类别branchvarchar(20)否职称类别phonevarchar(20)否手机 表3.3 奖惩表 字段名数据类型主键否描述idvarchar(5)是编号sta_idvarchar(5)否职工编号rpkindvarchar(20)否奖惩种类rpdtaedatetime否奖惩时间sealman varchar(10)否批准入quashdatevarchar(5)否撤销时间quashdatevarchar(5)否撤销原因 表3.4 个人简历表字段名数据类型主键否描述idvarchar(5)是编号sta_idvarchar(5)否职工编号memotext否内容 表3.5日常记事本表字段表数据类型主键否描述idint是编号blotterdatedatetime否记事时间blotterdatevarchar(5)否记事类别motifvarchar(5)否主题wordpadtext否内容 表3.6通讯录字段名数据类型主键否描述idvarchar(5)是编号namevarchar(5)否职工姓名sexvarchar(5)否性别phonevarchar(5)否家庭电话qqvarchar(5)否qq号worhphonevarchar(5)否工作电话e-mailvarchar(5)否邮箱地址handsetvarchar(5)否手机号 4.系统详细设计4.1系统设计总体设计4.1.1用户功能模块设计主界面 系统管理管理工具数据维护备忘记录人事管理基本信息 系统退出用户登录重登录计算器记事本清空数据数据管理日常记事通讯录人事查询人事统计人事浏览员工提示基本数据员工合同提示员工生日提示职称类别设置记事本设置奖惩类别设置职务类别设置工资类别设置部门类别设置政治面貌设置文化程度设置职工类别设置民族类别设置4.1.2系统业务流程图企业人事管理系统的业务流程图如下:登录退出错误提示验证验证退出窗体退出系统 根据权限设置模块基本信息工作简历职工信息人事管理系统主界面家庭关系人事管理验证培训记录备忘记录无法操作惩奖记录数据维护重新登录管理工具用户设置个人简历系统管理4.1.3系统编码规范 开发程序时,往往多人参与,为了使程序的结构与代码标化,以便使每个参与开发的人尽可能的理解别人编写的代码,必须要有一个统一的编码规范。(1)窗体命名规范在创建一个窗体时,首先对窗体的id进行命名,本系统中统一f_+窗体名称,其中窗体的名称最好是英文形式的窗体说明,以便于开发者通过窗体的id就知道该窗体的作用。例如登录窗体,id名为f_login。在窗体中调用其他窗体时,必须对调用窗体进行引用,其引用变量名为“frm+窗体名称“,如登录窗体的引用名为frmlogin。(2)添加,修改操作中各个控件的命名规范 在对数据进行编辑时,如果数据的表格过多时,很难将窗体中的对应控件组合成sql语句。为了便于对数据库的信息进行添加,修改操作,各个字段所对应的控件命名为“表名_数字”,这里的数字是根据数据表中相应的字段进行编号的。例如将一个控件与tb_workresume数据表中的第三个字段简历关系,应将其name的属性设为word_2。(3)查询操作中各个控件的命名规范 当使用多字段对数据表中的数据进行查询时,将窗体中相应的控件值组合成查询语句是非常麻烦的,为了能快速组合查询条件,可以将设置查询条件的控件命名为“表名_相应名”。当查询条件需要逻辑运算时,将记录的逻辑运算符命名为“相应字段名_sign”,这样就可以通过字段名来组合查询条件。例如查询条件年龄大于30岁的职工,年龄的字段名为age,条件控件名为find_age;逻辑控件名为age_sign,通过条件控件和逻辑控件即可组合成查询条件。4.2系统设计详细设计4.2.1公共类设计 在开发应用程序时,可以将数据库的相关操作以及对一些控件的设置,遍历等分装在自定义类中,以便在开发程序时调用,这样可以提高代码的重用性。本系统创建了mymeans和mymodule两个公共类,分别存方在dataclass和moduleclass文件夹中。(1) mymeans类中主要封装了本系统中所有与数据库的连接的方法,可以通过该类的方法与数据库的连接,并对数据库的信息进行添加,修改,删除以及读取等操作,在命名空间区域引用using system.data.sqlclient命名空间。本类中有如下自定义方法:getcon方法主要负责数据的连接实现代码如下public static sqlconnection getcon() my_con = new sqlconnection(m_str_sqlcon); my_con.open(); return my_con; getcom方法主要功能是用sqldatareader对象以只读的方式读取数据库中的信息,并以sqldatareader对象进行返回实现代码如下: public sqldatareader getcom(string sqlstr) getcon(); sqlcommand my_com = my_con.createcommand(); my_com.commandtext = sqlstr; sqldatareader my_read = my_com.executereader(); return my_read; getsqlcom方法该方法的主要功能是通过sqlcommand对象执行数据库中的添加修改和删除的操作,实现代码如下: public void getsqlcom(string sqlstr) getcon(); sqlcommand sqlcom = new sqlcommand(sqlstr, my_con); sqlcom.executenonquery(); sqlcom.dispose(); con_close(); getdataset方法主要功能是通过sqlcommand对象执行数据的添加,修改删除的操作,实现代码如下:public dataset getdataset(string sqlstr, string tablename) getcon(); sqldataadapter sqlda = new sqldataadapter(sqlstr, my_con); dataset my_dataset = new dataset(); sqlda.fill(my_dataset, tablename); con_close(); return my_dataset; (2) mymodule类中主要封装了窗体中动态生成添加,修改,删除和查询的sql语句等全部封装到了指定的自定义方法中,以便于在开发程序时进行重用调用,这样可以大大简化程序的开发过程。由于该类中应用了可视化组件的基类和对数据库进行操作的相关对象,所以在命名空间区域引用using system.wordows.form和using system.data.sqlclient命名空间。本类中自定义如下方法:show_form方法该方法的主要功能是调用相应的子窗体,也就是在同一个窗体模块中显示不同的窗体。getmenu方法该方法的主要功能是menustrip中的菜单项按级别添加到treeview相应的节点中,主要实现代码如下:public void getmenu(treeview treev, menustrip menus) for (int i = 0; i 0) for (int j = 0; j 0) for (int p = 0; p newmenu2.dropdownitems.count; p+) newnode2.nodes.add(newmenu2.dropdownitemsp.text); clear_control方法该方法主要是清空可视化控件中指定的图片及文本信息,主要用于对相应的文本框进行清空。part_saveclass方法该方法的主要功能是通过部分控件名boxname与i值相结合,在可视化控件几种查找指定的控件,并根据sarr参数中的字段名,组合成添加或修改语句。find_grids方法该方法主要功能是查找可视化控件集中控件名包含tname参数值的所有控件,并根据控件名称获取相应的字段名。getautocoding方法该方法的主要功能是在添加数据时自动获取添加的数据的编号吗。treemenuf方法该方法是在单击treeview控件的节点时被调用,其主要功能是通过所选节点的文本名称,在menustrip控件中进行遍历查找。如果找到,并且为可用的状态,则通过show_form方法动态调用相关的窗体。mainpope方法该方法的主要功能是通过当前登录用户的名称,在用户权限中查询当前用户的所有权限,并根据权限来设置各个菜单的可用状态。实现该方法的功能如下: public void mainpope(menustrip menus, string uname) string str = ; string menuname = ; dataset dset = mydataclass.getdataset(select id from tb_login where name= + uname + , tb_login); string uid = convert.tostring(dset.tables0.rows00); dset = mydataclass.getdataset(select id,popename,pope from tb_userpope where id= + uid + , tb_userpope); bool bo = false; for (int k = 0; k dset.tables0.rows.count; k+) str = convert.tostring(dset.tables0.rowsk1); if (convert.toint32(dset.tables0.rowsk2) = 1) bo = true; else bo = false; for (int i = 0; i 0) for (int j = 0; j -1) newmenu.dropdownitemsj.enabled = bo; toolstripdropdownitem newmenu2 = (toolstripdropdownitem)newmenu.dropdownitemsj; if (newmenu2.hasdropdownitems & newmenu2.dropdownitems.count 0) for (int p = 0; p -1) newmenu2.dropdownitemsp.enabled = bo; amend_pope方法该方法的主要功能是修改指定用户的权限。实现该方法的代码如下: public void amend_pope(control.controlcollection gbox, string tid) string checkname = ; int tt = 0; foreach (control c in gbox) if (c.gettype().name = checkbox) if (checkbox)c).checked) tt = 1; else tt = 0; checkname = c.name; string astr = checkname.split(convert.tochar(_); mydataclass.getsqlcom(update tb_userpope set pope= + tt + where (id= + tid + ) and (popename= + astr1.trim() + ); 4.4.2登录模块设计登录模块主要主要是通过输入正确的用户名和密码进入主窗体,他可以提高程序的安全性,保护数据资料不外泄,设计登录窗体用到如下的控件:控件类型控件id主要属性用途textboxtextname无用于输入用户名textpasspasswordchar=*输入登录密码buttonbutlogintext属性登录登录butclosetext属性取消取消radiobuttonradiobuttontext属性职工选择pictureboxpicturebox无显示背景图片登录窗体的主要界面如下: 实现登录的主要代码:private void butlogin_click(object sender, eventargs e) if (radiobutton1.checked=true&(textname.text != & textpass.text != ) sqldatareader temdr = myclass.getcom(select * from tb_login where name= + textname.text.trim() + and pass= + textpass.text.trim() + ); bool ifcom = temdr.read(); if (ifcom) dataclass.mymeans.login_name = textname.text.trim(); dataclass.mymeans.login_id = temdr.getstring(0); dataclass.mymeans.my_con.close(); dataclass.mymeans.my_con.dispose(); dataclass.mymeans.login_n = (int)(this.tag); dataclass.mymeans.login_a = 0; this.close(); else messagebox.show(用?户名?或密码?错误!?, 提示?, messageboxbuttons.ok, messageboxicon.information); textname.text = ; textpass.text = ; myclass.con_close(); else if (radiobutton2.checked = true & (textname.text != & textpass.text != ) dataclass.mymeans.login_n = 0; sqldatareader temdr = myclass.getcom(select * from tb_login1 where id= + textname.text.trim() + and pwd= + textpass.text.trim() + ); bool ifcom = temdr.read(); if (ifcom) dataclass.mymeans.login_name = textname.text.trim(); dataclass.mymeans.login_id = temdr.getstring(0); dataclass.mymeans.my_con.close(); dataclass.mymeans.my_con.dispose(); dataclass.mymeans.login_a = 1; this.close(); f_main1 frm = new f_main1(); frm.show(); else messagebox.show(请?将?登?录?信?息添写完整?!?, 提示?, messageboxbuttons.ok, messageboxicon.information); 4.2.3系统主窗体设计 主窗体是程序操作过程中必不可少的,它是人计交互的重要环节。通过主窗体用户可以调用系统相关的各个子模块,快速掌握本系统实现的各个功能。本系统中当登录窗体验证成功后,用户将进入主窗体。主窗体被分为4个部分,最上面的是系统的菜单栏,通过它可以调用系统中所有的子窗体。菜单栏最下面是工具栏,它以按钮的形式使用户能够方便的调用最常用的子窗体,窗体的左边是一个树形的导航菜单栏,该导航的菜单栏的项目是自动生成的,窗体的下面用状态显示当前登录的用户名。主窗体运行的结果如图: 图1.职工登录主界面 图2.管理员登录主界面设计菜单栏菜单栏的运行效果:菜单栏主要是通过menustrip实现的,从工具箱中拖放一个menustrip控件至于系统的主窗体中,然后为每个菜单项设置菜单名称。菜单栏设置成功后,点击各个子菜单,可以获得相应的子窗体,获得子窗体的代码如下:例如单击基础信息管理数据基础的民族类别设置 public void tool_folk_click(object sender, eventargs e) mymenu.show_form(sender.tostring().trim(), 2); 设计工具栏工具栏的运行效果图如下:本系统的工具栏主要是通过toolstrip来实现的,从工具栏中拖放一个toolstrip控件置于主窗体中,设置工具栏的类型为button,然后右击选择“设置图像”,添加图像。工具栏主要为用户提供一种方便的操作系统的常用的功能方式。单击可以获得相应的子窗体。实现代码如下:private void tool_clewbirthday_click(object sender, eventargs e) mymenu.show_form(sender.tostring().trim(), 1); 设计导航栏导航栏的运行效果图如下:导航菜单是通过treeview来实现的,导航菜单栏根据菜单栏自动生成的,它主要用了mymodule下的getmenu方法:treeview1.nodes.clear(); mymenu.getmenu(treeview1, menustrip1); 单击导航菜单栏下的子节点可以调用相应的子窗体代码如下:private void treeview1_nodemouseclick(object sender, treenodemouseclickeventargs e) if (e.node.text.trim() = 系统退出) application.exit(); mymenu.treemenuf(menustrip1, e); ? 设计状态栏状态栏的运行效果图:本系统的状态栏主要是通过statusstrip来实现的,设计状态栏的具体步骤如下:从工具箱中拖放一个statusstrip控件置于系统中,单击statusstrip控件下拉按钮,可以选择为状态栏添加哪种控件,本系统中用到3个statuslable控件分别设置text属性为“欢迎使用企业人事管理系统”,“当前登录用户:第三个控件用来显示登录用户姓名,实现代码如下: statusstrip1.items2.text = dataclass.mymeans.login_name; 4.2.4 人事档案管理模块设计人事档案管理窗体,是用来对职工的基本信息,家庭情况,工作简历,培训记录,等进行添加,修改删除。在主窗体中可以通过菜单栏中的“人事管理”/“人事档案管理”调用人事档案的浏览窗体,也可以通过工具栏的“人事档案管理”按钮或导航菜单中下拉列表进行调用。人事档案管理主要是由4个部分组成,分别是由分类查询,浏览按钮,职工
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教师考编试题大全及答案
- 2024年广告设计师考试市场推广试题及答案
- 2024年纺织工程师项目管理工具试题及答案
- 2024年纺织品检验员学习路径规划试题及答案
- 国际商业设计师营销策略考题及答案
- 数字的测试题及答案
- 2024年纺织品检验技能评估试题及答案
- 山西财经大学试题及答案
- 2024年广告设计师品牌定位技巧试题及答案
- 消保考试题及答案
- 小学语文作文:五感法描写课件
- 2022年四川省自贡市中考化学试卷真题解析版
- 国开作业公共关系学-实训项目5:赞助活动(六选一)-赞助方案参考(含答案)2
- 老年人的饮食健康:为老年人提供合适的饮食
- 动态血糖监测知情同意书
- 光伏发电安全预评价模版
- 成品出货检验报告模板
- 【实用文档】生产制造过程流程图
- 水利水电工程高压喷射灌浆单元工程质量评定表(示范文本)
- 根管治疗-根管治疗的概述
- 环保知识危废固废
评论
0/150
提交评论