




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精品资料5.1 药品实体映射 14医药销售管理系统1 系统分析 41.1 开发背景 41.2 需求分析 52 系统设计 52.1 系统目标 52.2 系统功能结构 52.3 系统流程图 63 软件架构 83.1 逻辑分层结构设计 83.2 系统文件夹组织结构 93.3 实体对象设计 93.4 定义 ActionForm. 103.5 持久层结构设计 103.6 业务层结构设计 123.7 页面结构设计 134 配置文件 134.1 配置 web.xml 144.2 配置 struts-config.xml 144.3 配置 hibernate.cfg.xml 145 实体及映射 145.2 药
2、品类别实体映射 155.3 销售明细实体映射 155.4 用户实体映射 166 公共类设计 166.1 Hibernate 过滤器 . 166.2 SupperDao类 186.3 BaseAction类 196.4 DeleteAction类 206.5 字符串工具类 207 国际化 207.1 国际化资源文件 207.2 国际化实现 218 系统登陆模块 218.1 查询用户 218.2 登陆请求 218.3 登录页面 229 药品类别信息管理 229.1 药品类别持久层设计 229.2 药品类别的添加 239.2.1 类别添加、修改请求处理 239.2.2 类别添加页面 23可编辑修改精
3、品资料10.8.2 映射 JSP 页面中的按钮 319.3.1 查询与删除请求处理 249.3.2 类别信息列表页面 249.4 类别的修改与删除 249.5 药品类别统计 259.5.1 JFreeChat 工具类 259.5.2 Action 请求 259.5.3 显示报表 2510 药品信息管理 2610.1 药品对象持久层设计 2610.2 药品信息的添加与修改 2610.2.1 药品添加的请求处理 2610.2.2 药品添加页面 2710.3 分页查看所有药品 2710.4 查看药品详细信息 2810.5 模糊查询药品 2810.5.1 药品模糊查询请求处理 2810.5.2 药品模
4、糊查询页面 2910.6 高级查询 2910.7 查看库存 2910.8 药品批量删除 3010.8.1 批量删除请求处理 3011 购买药品 3111.1 选购药品 3111.2 结账 3112 销售管理 3212.1 明细信息查询 3212.2 销售排行统计 3213 进货/ 需求管理 3314 系统管理 3314.1 添加管理员 3314.2 修改密码 3414.3 系统初始化 3415 运行项目 341 系统分析随着计计算机技术的不断发展,应用软件迅速普及,大到厂矿校企,小到图书、餐 饮、医药管理等,随处都可看到它的身影。在以往依靠人工为主的医药销售管理方面, 计算机和计算机系统逐步唱
5、起了主角,凭借省时、省力、低误差等优点,从根本上改变 了医药管理的传统模式,节省了物理资源,提高了工作效率。1.1 开发背景XX 医药抄手坐落于 XX 小区内,多年来本着经济、实惠、高质量服务的宗旨,赢 得了小区百姓的信赖,药品供应量非常大。面对庞大的信息量,经常出现统计失误、药 量供应不足的情况,医药超市经理决定使用一套合理、有效、使用的管理系统,对医药 可编辑修改精品资料超市进行统一的管理。笔者受医药超市经理委托,开发一个医药销售管理系统,其宗旨是实现医药超市管 理的系统化、规范化、实用化,对药品进行统一管理。1.2 需求分析在日常医药管理中,面对众多的药品和众多不同需求的顾客,每天都会产
6、生大量的 数据信息。以传统的手工方式来处理这些信息,操作比较繁琐,且效率低下。此时,一 套合理、有效、实用的医药销售管理系统就显得十分必要。利用其提供的药品查询、统 计功能,可以进行高效的管理,更好地为顾客服务。笔者通过对医药超市的实地考察, 从经营者和消费者的角度出发,以高效管理、快速满足消费者为原则,要求本系统具有 以下特点。 具有良好的系统性能、友好的用户界面。 较高的处理效率,便于用户使用。 采用成熟的技术开发,全系统具有较高的技术水平和较长的生命周期。 对销售信息进行统计排行 尽可能地简化药品管理员的重复工作,提高工作效率。2 系统设计2.1 系统目标根据医药超市的管理要求,指定医药
7、销售管理系统目标如下。 灵活的人机交互界面,操作简单方便、界面简洁美观。 系统提供中、英文语言,实现国际化 药品分类管理,并提供类别统计功能。 实现各种查询,如多条件查询、模糊查询等。 提供创建管理员账户及修改口令功能。 可对系统销售信息进行统计分析。 系统运行稳定、安全可靠。2.2 系统功能结构医药销售管理系统提供了四大功能,分别为“基本信息管理” 、“进货/ 需求管理”、“药品管理”、“系统管理”,具体结构如图 1.1 所示可编辑修改图1.1医药销售管理系统功能结构图2.3系统流程图医药销售管理系统流程如图1.2所示图1.2医药销售管理系统流程图3软件架构在开发项目前,首先要对软件的结构进
8、行设计,也称之为软件架构。此过程是对软件整体结构的设计,如软件的逻辑分层结构、结构的实现、数据库等,特别是在Java的大型项目中,还需要设计出程序中的包结构及接口等,非常复杂,需要程序员进行全 面的考虑。对于医药销售管理系统的整体涉及如下:3.1逻辑分层结构设计医药销售管理系统由4层结构组成,并遵循MVC结构进行设计。4层结构分别为 表示层、业务逻辑层、持久层与数据库层,如图1.3所示。图1.3逻辑分层其中,表示层与业务逻辑层均由Struts框架组成,表示层用于提供程序与用户交互的界面,项目中主要通过 JSP、ActionForm 及Struts标签库进行展现;业务逻辑 层用于处理程序中的各种
9、业务逻辑,项目中通过Struts框架的中央控制器及 Action对 象对业务请求进行处理;持久层由 Hibernate 框架组成,负责应用程序与关系型数据 库之间的操作;数据库层为应用程序所使用的数据库,本实例中为MySQL数据库。对于4层结构的具体实现如图1.4所示图1.4逻辑分层实现3.2系统文件夹组织结构规范系统的整体架构是一个项目开发的标准,特别是在团队开发项目中,在编写代 码之前,必须定制好项目的系统文件夹组织结构,以使程序条理清晰,利于后期的项目 整合。在Java项目中可以将不同作用、功能相类似的文件放置于同一个包中,这样既 可以保证团队开发的一致性,又可以将系统的整体结构规范化。
10、创建完系统中可能用到 的文件夹或Java包之后,在开发时只需将所创建的类文件或资源文件保存到相应的文 件夹即可。医药销售管理系统的文件夹组织结构如图 1.5所示。由.s.IB由匚 ciitlI yq persistence uamyq .struts co myq.strut rartior comy q .struts form:Ji com .lyqjutil Q hi b e rncfg .xm In=l lo4jproperliM0 J RE System Library jdlcU-O1 t * Jva 旺 5 Libraries Referenced LibrariesH WebR
11、oot七 i magffs1 ME TA-INF :予 rec|u i re- .-II占 systnn upl o ad三 WEB-INF图1.5医药销售管理系统的文件夹组织结构3.3实体对象设计在应用Hibernate 框架的项目中,实体对象的确立是其中的关键。实体对象与数 据库中的数据表相对应,并通过 0/R映射建立实体与数据库的联系,Hibernate完全 通过操作实体来操作数据库,所以首先要确定项目中的实体对象。在医药销售管理系统 中,实体对象及关系如图1.6所示。ccs, ly 帑 persxE ten iceCat2ftry賂討一1 *丨匚貳bit.Lat SfitT-jr. I
12、lls. jzuLe亡片章- kba. xzilLat-eE匚盍?上上远亠图1.6医药销售管理系统中的实体对象及其关系从图1.6中可以看到,药品实体对象为Medicine 类,药品类别实体对象为Category类,销售明细实体为SellDetail类,操作用户实体为User类,这4个实体 对象为医药销售管理系统的核心实体对象,它们所对应的映射文件均为“类名 +hbm.xml ”文件。其中,药品信息与药品类别为多对一关联关系,一个类别中包含多 个药品对象;药品信息与销售明细为一对多关联关系,多个销售明细对应一个药品对象; 销售明细与用户之间为多对多的关联关系,多个销售明细信息对应多个操作用户。3
13、.4 定义 ActionFormActionForm是简单的JavaBean ,主要用来保存用户所输入的表单数据,Action要获取这些数据需要通过ActionForm对象进行传递。ActionForm 对表单的数据进行 了封装,在JSP页面与Action对象中提供了交互访问的方法。在使用过程中,可通过 继承 org.apache.struts.actio n. Actio nF orm对象来创建需要的 ActionForm 对象,项目中所涉及到的 ActionForm 对象如图1.7所示。&匚b.5i:zvts. fcEia图1.7项目中所涉及到的 ActionForm 对象3.5持久层结构
14、设计持久层结构通过Hibernate 框架进行设计。由于Hibernate 对不同对象的增、删、改、查等操作具有一定的共性,如添加数据使用save()方法、删除数据使用delete()方法等,项目中将这些具有共性的操作抽取出来,封装成一个类,其他数据库操作对象可继承此类来拥有这些方法,从而减少程序中的多余代码,如图1.8所示。EM. 2.1S图1.8持久层结构SupperDao类为所有数据库操作对象的父类,在此类中定义了对数据库进行操作 的常用方法,具体方法及说明如表1.1所示。表1.1 SupperDao 方法及说明方法说明save() saveOrUpdate() delete(Objec
15、t obj)fin dByHQL() deleteByHQL() uniq ueResult()用于保存一个对象用于保存或更新一个对象用于删除一个对象,入口参数为 Object类型fin dPagi ng()通过HQL语句查询数据, 通过HQL语句删除数据, 单值检索数据,入口参数 件 分页查询数据,入口参数入口参数为入口参数为hql 为 HQLString 类型的HQL语句 String 类型的HQL语句 查询语句、where为查询条起始位置、len gth为返回结果集的条目数、hql为HQL查询语句、offset为结果集的where为查询条件MedicineDao 类、SellDao 类、
16、UserDao 类,其功能分别介绍如CategoryDao操作方法。Medici neDao操作方法。SellDao 类:这些方法均为数据库操作的常用方法,所以将其封装在单独的一个类中,对于各个 对象的数据库相关操作,可通过继承此类来获取这些常用方法。其子类对象有 CategoryDao 类、 下。类:药品类别数据库操作对象,用于封装与药品类别相关的数据库类:药品信息数据库操作对象,用于封装与药品信息相关的数据库 药品销售数据库操作对象,用于封装与药品销售相关的数据库操作方精品资料UserDao类:用户数据库操作对象,用于封装与管理员及系统相关的数据库操作 方法。3.6业务层结构设计业务层结构
17、主要通过Struts框架进行设计,由Struts的中央控制器对各种操作请求进行控制,并通过相应的Action对其进行业务处理,项目中所用到的Action对象及Action、DispatchAction 与 LookUpDispatchAction为 Struts 圭寸装的 Action对象,具有不同的特点及作用,项目中通过继承这几个对象实现对不同业务请求的处理。 除这3个对象外,图1.9中其余的Action对象均为自定义的Action对象。在这些自定义的Action对象中,LanguageAction 与LoginAction 用于处理国际 化语言及用户登录操作。由于二者不涉及过多的业务逻辑,
18、它们都直接继承于Action对象。BaseAction对象与DeleteAction对象为重要的 Action 对象,二者都继承了DispatchAction 对象。项目中圭寸装这两个对象的目的在于简化程序中的业务逻辑、提 高程序的安全性。在这两个对象中均对用户登录身份做出了严格的验证,其子类对象通 过继承不必再考虑用户登录的安全问题,而更专注于业务逻辑,同时通过继承还可以减少程序的代码量。其中BaseAction对象的子类及作用如表1.2所示表1.2 BaseAction对象的子类及其作用SellActi onSystemActio nCategoryAct ionMedici neActi
19、o n封装药品销售的相关操作,处理封装药品销售请求封装系统相关操作,处理系统级的请求封装药品类别相关操作,处理药品类别相关操作 封装药品信息相关操作,处理封装药品信息的相关请求RequireActio n封装药品需求及库存相关操作,处理药品需求相关请求子类作用对象,此类通过重写DeleteAction对象继承了 LookUpDispatchAction可编辑修改精品资料getKeyMethodMap()示。方法对数据进行批量删除操作,其子类对象及其作用如表表1.3 DeleteAction对象的子类及其作用1.3子类作用DeleteMedici neActio n封装药品信息删除操作,用于批量
20、删除药品信息DeleteReqMedActio n封装药品需求信息删除操作,用于批量删除药品需求信息3.7页面结构设计医药销售管理系统的页面结构采用框架进行设计,通过HTML语言中的 vframeset标签及frame标签将页面分成3个部分,分别为页面头部、页面导航及 内容页面,如图1.10所示。贡面头部页茴导航內咨页面图1.10页面布局此种布局方式将每一个页面单独置于一个框架之中,其中“页面头部”和“页面导 航”在登录之后是固定不变的,对于用户的操作将在“内容页面”显示结果。使用这种 方式的有点在于:(1)避免了 JSP页面中大量引用include动作标签。(2 )避免浏览器反复加载“页面头
21、部”及“页面导航”等同样的内容,加快浏览 器速度。4配置文件在编写代码之前,需要做一些准备工作,如项目环境的搭建、项目所涉及到的第三方类库的支持、web.xml的配置等。在医药销售管理系统中,主要涉及到Struts框架、Hibernate框架及JFreeChart组件的应用,因此在项目开发之前,需要添加其类库支4.1 配置 web.xmlweb.xml 文件是 Web 项目的配置文件,在医药销售管理系统中,此文件需要配置 Struts 框架、 JFreeChart 组件和过滤器等信息。4.2 配置 struts-config.xmlStruts 框架实现了 MVC 模式, web.xml 和
22、struts-config.xml 文件是其两个重 要的配置文件,其中 web.xml 文件实现了 Struts 的初始化加载,而 struts-config.xml 是它的核心配置文件。 Struts-config.xml 所做的工作比较多,包括 ActionForm 对象 的定义、用户请求和 Action 之间的映射、异常处理等重要的配置。其 中 标 签 用 于 注 册 实 例 中 所 涉 及 到 的 ActionForm 对 象 , 标签用于设置全局跳转, 标签配置用户请求 Action 对象的映射。4.3 配置 hibernate.cfg.xmlHibernate.cfg.xml 文件
23、是 Hibernate 的配置文件, 在项目中, 此文件配置了数据 库的方言、数据库链接信息、自动建表属性和打印 SQL 语句等属性。5 实体及映射Hibernate 是一个 ORM 产品,它完全可以操作对象的方式进行数据库操作,其实 体对象与数据表之间通过映射文件建立映射关系。因此,在医药销售管理系统中需要建 立实体对象与数据表之间的映射。5.1 药品实体映射药品实体对象的持久化类为 Medicine 类,此类封装了药品相关属性提供相应的 getXX() 和 setXXX() 方法。药品对象与药品类别对象为多对一关联关系,所以在 Medicine 类中加入了药品类 别属性 category
24、,其关联关系通过映射文件 Medicine.hbm.xml 进行映射。映射文件 Medicine.hbm.xml 将实体对象 Medicine 映射为 tb_medicine 表,主 键的生成策略采用自动生成方式。此映射文件中,对于数据表的部分字段还通过 not-null 、length 、unique 等属性映射字段的属性,其中 not-null 用于映射字段的非 空属性、 length 用于映射字段的长度、 unique 用于映射字段是否唯一。映射后的数据表如图1.11所示CokimnsColumn Namei i d med NoQ name fa dory Add des criptk
25、sn7 price m&dCount reqCount photo Pa th 心 tategoryldDatatytwPK MN UQ BIN UN ZF 蛆 DefaultINTftl)VARCHAR(IOO) ,/ARCHik(2GD) VAftCHAR.(2C0) TEfTDOUBLENKU)INTL1)VAR CH AR扭 55)inXu)可编辑修改图 1.11 tb_medicine 表5.2药品类别实体映射药品类别实体用于封装药品类别属性信息,其持久化类为Category类,与药品对象存在一对多关联关系。药品对象与药品类别对象为多对一关联关系,但从药品类别一端来看,药品类别对 象
26、与药品对象又是一对多的关系,所以程序中采用了多对一双向关联进行映射。药品类 别实体对象的映射文件为 Category.hbm.xml 。Category类所映射的数据表为tb_category ,其中ser标签用于映射药品类别实 体与药品实体间的一对多关联关系,此种映射方式将在药品数据表中添加categoryId字段。映射后的数据表tb_category如图1.12所示。ColumnsColumn NameDatatypePK NN UQ BIN Uh ZF Al Default-idmitll)nameVARCHAR(IOO)77n D戸1Q descriptionTEXT1NULLO cr
27、eateTIrneDATETIMENULL图 1.12 tb_categoy 表5.3销售明细实体映射销售明细用于描述药品销售时的具体情况,如销售时间、销售人员、销售数量等。 这些信息十分重要,需要记录到数据库中,实例中将其封装为SellDetail类。为了方便查看销售明细的总额信息,在SellDetail类中加入了 sellTotal()属性,此属性并不进行数据表的映射,它只有一个与之对应的get()方法,在此方法中通过单价与 数量的运算对sellTotal进行赋值,并将其返回。,此映射文件中映射了两个多对销售明细实体的映射文件为 SellDetail.hbm.xml一关联关系,分别为与药品
28、对象的多对一关系及操作用户间的多对一关系。销售明细实体映射的数据表为 tb_selldetail 。在映射文件SellDetail.hbm.xml 中, 通过两个 标签分别映射与药品对象及操作用户的多对一关联关系,并 配置了级联操作类型为save-update。映射后的数据表结构如图1.13所示。8 jmnsColumn Name idSllNane s el I PriceDatatypeENTflA)JAR匚 T匸 R(2QQDOUBLEAl Dtraulisell CourtsellTime“ mtdid 标签判断是否存在error值,如果存在即表示用户登录发生错误,将在登录页面显示错误
29、信息。Logi n.jsp页面运行结果如图1.21所示。图1.21系统登录页面9药品类别信息管理药品超市经营的药品众多,为方便产看、统计,需要对其进行分类。药品类别信息 管理模块主要是对药品类别信息进行统一管理,其中包括对药品类别的添加、查看、统 计等操作。9.1药品类别持久层设计CategoryDao类是药品类别的数据库操作类,它继承了SupperDao类,提供对药品类别的数据库操作方法。其中loadCategory()方法用于查询指定id的药品类别信 息,其入口参数为int型药品id在添加药品信息时,需要添加与之对应的类别信息,所以还需要提供一个查询所有 药品类别信息的方法fin dAII
30、Category()。为方便药品类别数据的统计,实例中对药品类别中药品的数量进行统计的操作被定 义在findCategoryAndCount(),由HQL语句的内连接查询进行实现。findCategoryAndCount()方法中的hql属性为内连接查询语句,可对药品数量按药品类别进行分组统计,查询后返回其结果集对象。9.2药品类别的添加药品类别的添加是指将药品类别信息写入数据库,实现过程如下9.2.1类别添加、修改请求处理实例中将药品类别的相关请求封装在CategoryAction 类中,此类继承了 BaseAction对象,所以在对类别信息进行处理时,不必考虑用户是否登录的安全问题。 此类
31、中处理添加类别信息请求的方法为add(),由于CategoryAction类是一个DispatchAction 对象,所以当请求的参数为 add时,将由此方法进行处理。此方法调用了 CategoryDao 对象的saveOrUpdate()方法,所以药品类别信息的 添加与修改操作均可通过此方法进行实现;当传递的CategoryForm 对象含有id值时, 则进行修改操作。9.2.2类别添加页面类别添加页面即category_add.jsp 文件,此页面中主要放置了类别添加的表单。 此页面中使用Struts的 标签设置药品类别的id属性值,如果此属 性不为空,则意味着操作为修改操作。类别添加页面
32、运行结果如图1.22所示。-肖前应蛊:裘别鋒理添感帮图1.22类别添加页面9.3分页查看类别信息在添加药品信息后,系统将跳转到类别信息列表页面。在此页面中将对类别信息进 行分页显示,此外还提供了药品类别修改与删除的超链接,如图1.23所示。-百福葩舌:类SI笆呼时看泰刪斯有臺利袁塞售询创崖时討1J三泊噫冒、发惬、知rZD12-M-LJ2冒空、场負寺乌蓼。2J12-0A-LJ3LB昭2D 1204-J吕记尋期斗1岚首頂上一白1下一禹毛口輕图1.23类别信息列表页面9.3.1查询与删除请求处理在CategoryAction类中,药品类别信息的分页查询方法为 paging(),由于此类继承于Base
33、Action类,所以调用其父类中的getPage()方法就可以实现。它将返回结果 集与分页条对象。在此方法中,currPage 属性为请求的页码;action 对象为JSP页面请求的action 地址;hql为查询语句,由于它不含有占位符参数,所以 getPage()方法的条件参数设 置为null.9.3.2类别信息列表页面category_list.jsp是类别信息列表页面,在此页面中使用Struts的标签对药品类别信息进行迭代输出。在程序开发过程中,应尽量减少程序中bug。例如,category_list.jsp 页面中,在输出request对象中的属性时,首先使用logic:presen
34、t标签判断其属性是否存在。Category_list.jsp页面中的“修改”与“删除”超链接使用Struts 的html:link标签进行设置,此标签的功能十分强大,它可以设置超链接中的参数。实例中使用的 paramName属性用于设置所迭代的对象,paramld属性用于设置参数的名称,paramProperty属性用于设置参数值,href属性用于指定链接地址。9.4类别的修改与删除在CategoryAction类中,类别的修改与删除相对简单一些,其中处理删除类别请求的方法为delete(),可根据指定的药品类别id删除药品类别对象。处理修改类别信息请求的方法为edit(),此方法通过类别id
35、加载药品类别对象将类别信息保存到CategoryForm 对象中,最后转发到编辑页面。此方法在加载类别信息后,会将页面转到类别添加页面,因为类别添加请求处理的 方法调用了 Hibernate的saveOrUpdate()方法,所以会对其进行自动更新。9.5药品类别统计为了方便查看、管理药品统计信息,实例中使用了报表组件JFreeChat对药品分类进行统计。其实现过程如下:9.5.1 JFreeChat 工具类创建名为ChartUtil 的类,用于生成制图对象JFreeChat。其中categoryChart() 方法用于生成药品类别统计的饼形图对象,其入口参数为装载结果集的List集合对象。此
36、方法中,通过传递的List集合对象生成DefaultPieDataset数据集合,然后使用制图工厂ChartFactory 创建饼形图JFreeChart 对象,并将其返回。9.5.2 Actio n 请求药品类别统计请求由 CategoryAction 类的findCategoryAndCound()方法进行处理,此方法首先通过CategoryDao对象统计药品类别信息,获取结果集对象后,通 过ChartUtil类的categoryChart()方法生成制图对象,最后将生成的图片路径放置到 request 中。9.5.3显示报表药品类别统计信息通过category_graph.jsp 页面进行显示,此页面通过 标签获取所生成图片的路径。为避免空指针错误,category_graph.jsp页面使用vlogic:notEmpty标签判断生成的图片路径是否存在,其运行结果如图1.24所示。图 1.24 category_graph.jsp 页面10药品信息管理药品信息管理主要是对药品基本信息的维护,其中包括对药品信息的添加、删除、 修改、查询等操作。10.1药品对象持久层设计Medici neDao 类是药品对象的数据库操作类,它继承了SupperDao 类,此类主要包含
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 海边度假酒店设计
- 骨折骨牵引病人的护理
- 成人教育毕业典礼
- 2025台州市仙居县大战乡社区工作者考试真题
- 2024哈佛大学迈向游戏教学法
- 急性脑梗塞患者护理查房
- 思想政治教育决策的程序
- 大班安全教育内容
- 恐龙拔牙美术课件
- 含胸驼背的心理护理与改善
- GB/T 28462-2012机织起绒合成革基布
- 接触网工复习题库及答案
- 儿童泌尿道感染(课堂PPT)
- 全国压力容器设计单位名录
- 特变电工-财务报表分析课件
- 人民医院人才队伍建设规划人才队伍建设五年规划
- 一年级语文下册课件-21 小壁虎借尾巴24-部编版(15张PPT)
- 患者随访率低原因分析以及对策
- 计量认证实验室程序文件(全套)
- DGC型瓦斯含量直接测定装置使用说明书
- 普通座式焊接变位机工装设计全套图纸
评论
0/150
提交评论