《软件工程》实验报告_第1页
《软件工程》实验报告_第2页
《软件工程》实验报告_第3页
《软件工程》实验报告_第4页
《软件工程》实验报告_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件工程实验报告题目: 药品管理系统学号:姓名: 第一章 选题意义(或题目背景)目前随着计算机技术的发展和普及,各行各业的管理机构开始使用计算机处理大量信息。在我国药品品种繁多,规模甚大,以往的手工记载、查询操作容易出错且工作效率低,已经不能适应时代发展的要求,从管理的角度来看,对管理者会造成诸多的不便,还有可能疏忽一些细节,让不法商家逃脱罪责。所以,市场迫切需要一款简单实用的药品管理系统。随着医疗制度改革的进行,药品招标采购的逐年规范和扩大,药品管理已经成为药剂科乃至整个医院管理的重要内容。传统的管理模式已经跟不上顾客对快节奏生活的要求了!随着计算机的普及和计算机软件的不断发展,越来越多的医

2、疗机构开始注视计算机这个辅助工具为自己带来的效益了。医院的售药机构需要通过计算机提高自已工作效率、对药品实现进销存管理和职工管理,提高经济效益如何利用现代信息技术使企业拥有快速、高效的市场反映能力和高度的效率,已是医药经营企业,特别是医药连锁经营企业特别关心的问题。尽快建立一个功能齐备的药品进、出库管理系统,完善现代企业的信息化管理机制,已成为医药企业生存发展的当务之急。通过开发这个药品管理系统,使药品进销存管理工作系统化,规范化,自动化,从而达到提高管理效率的目的。本系统开发设计思想是实现药品管理的数字化。尽量采用现有软硬件环境,及先进的管理系统开发方案,提高系统开发水平和应用效果的目的。系

3、统应符合企业管理的规定,满足日常管理的需要,并达到操作过程中的直观、方便、实用、安全等要求,系统采用模块化程序设计方法,这样既便于系统功能的各种组合,又便于未参与开发的技术维护人员补充,维护。系统应具备数据库维护功能,及时根据用户需求进行数据的添加,删除,修改等操作。此次开发的药品管理系统功能乃是汲取了外国优秀管理工具的优秀功能,同时又创新了更符合我国用户需求的功能的一个综合信息管理系统。药品管理系统分为五大模块,分别为系统用户模块,职工信息管理模块,进货管理模块,销售管理模块,库存转移管理模块。该五大功能模块设计合理,功能全面,同时界面友好,非常符合我国各大小型药品销售企业的管理需求。但由于

4、时间仓促以及笔者找工作实习的原因,系统还不是很完善,和市场上一些成熟的产品比较仍然有不足之处。今后笔者将利用工作休息时间,学习新的技术和设计理念,对药品管理系统进行深入的开发,目标是在今后使代码更加规范,界面更加美观,程序的可拓展性进一步增强,更加与市场接轨。第二章 可行性研究 2.1可行性分析可行性分析是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。(1)技术可行性:该系统采

5、用了开发工具MyEclipse8.5,使用Microsoft Visual Studio 2007开发软件,数据库服务器选用微软公司的SQL Server 2008数据库,它是目前能处理所有中小型系统最方便的流行数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。硬件方面,此系统是使用客户机为服务端的,所以对硬件要求很低。(2)经济可行性:本系统作为一个软件工程大作业,没有必要考虑经济问题,在经济上可以承担得起。(3)操作可行性:作为一个软件工程大作业,要求不高,而且都是根据所学的知识进行开发处理。所以,本药品管理系统

6、的开发是完全是可行的。2.2系统数据流图图2.1 顶层数据流图2.3数据字典数据流项目:1.名字:用户信息流量:每天有二十次来源:用户基本信息表去向:核实用户信息定义:用户信息用户名密码+权限设置2.名字:药品信息流量:每天有二十次来源:药品信息表去向:核对药品库存、核对入库、出库信息定义:药品信息药品编号 + 药品名称 + 药品建成 + 药品规格 + 药品产地 + 批号 +进价 + 批发价 + 零售价 + 供应商 + 类别 + 有效期 + 备注.3.名字:库存信息流量:每天有二十次来源:库存信息表去向:核对药品库存查询、核对进货单、销售单定义:库存信息ID 药品编号 + 药品名称供应商编号

7、+ 单价 + 数量 + 入库日期 + 仓库类别.4.名字:供应商信息流量:每天有二十次来源:供应商信息表去向:反馈给用户,核对进货单定义:供应商信息ID供货商编号供货商名+地区+备注5.名字:销售单单信息流量:每天有二十次来源:销售单单表去向:反馈给用户定义:销售单信息ID药品编号 + 药品名称 + 数量 销售日期 + 销售数量 + 销售收入 存储条目:1.文件名:用户基本信息表存储方式:随机存储存储频率:每天有二十次定义:用户基本信息表用户名用户密码 + 权限2.文件名:药品表存储方式:随机存储存储频率:每天有二十次定义:药品表药品编号 + 药品名称 + 药品建成 + 药品规格 + 药品产地

8、 + 批号 +进价 + 批发价 + 零售价 + 供应商 + 类别 + 有效期 + 备注.3.数据项条目:项名:药品类型描述:用户输入试题的类型定义:药品类型所有药品规定类型位置:药品表4.处理条目:1.处理名称:药品添加处理逻辑:用户添加药品信息执行频率:每天有二十次2.处理名称:库存初始化处理逻辑:用户初始化药品库存表执行频率:进货有二十次3.处理名称:入库处理逻辑:用户添加进货单执行频率:每天有二十次4.处理名称:销售处理逻辑:用户添加销售单执行频率:每天有二十次第三章 需求分析 3.1 任务概述 药品管理系统是为了加强药品管理,以便更好地对药品进行监督和管理,对售药机构人员的工作,起到了

9、高效性、准确性管理而开发。本系统主要包含系统用户管理模块、药品管理模块、销售管理模块、进货管理模块、存货转移管理模块。药品管理系统是以合理、全面、准确的药品编码体系为基础,提供了对药品数量、金额、有效期的全面管理,统一的药价管理机制规范了药品的价格。系统能随时提供药库的库存、药品流向和消耗,还能根据现有库存,药品有效期提供采购计划或应暂停采购的药品清单,以提高资金的利用率,避免不必要的损失,方便快捷的途径对药基本信息进行定期的更新和删除等管理。 3.2 功能需求一功能划分药品管理系统分为系统用户管理、药品销售管理、药品库存管理、进货管理、职工管理、查询与报表分析。二功能描述(1)系统用户管理:

10、允许添加删除用户(只有管理员才可以修改),任意权限的用户允许更改自己的密码,添加或删除职工,修改职工,对药品进行销售和库存的控制的资料。(2) 药品进货管理:当企业需要增加新的销售药品时,利用此模块可以添加新的药品信息,删除旧的药品信息,修改已存在的药品信息,提供所有与药品相关的各类信息,初始化库存,初始化供应商相关信息。(3)药品销售管理:药品统一的价格销售,对已查询销售单,可以对药品的价格进行控制。(4)库存转移管理:实际生活中容易发生药品过期和损毁,此时利用此模块对过期的药品和损毁的药品进行清理。(5)职工管理: 对药品企业进行职工的管理,对职工进行增加,修改,删除,查询等操作。(6)查

11、询与报表分析:此功能并未单独作为一个模块,而是分布在各个模块中,各个模块产生业务时,可以在各模块的相应功能按钮上选择查询。3.3 性能需求为了保证系统能够长期、安全、稳定、可靠、高效的运行,药品管理系统应该满足以下的性能需求:1、系统处理的准确性和及时性系统处理的准确性和及时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足学校对信息处理的需求。2、系统的开放性和系统的可扩充性药品管理系统在开发过程中,应该充分考虑以后的可扩充性。例如用户查询的需求也会不断的更新和完善。所有这些,都要求系统提供足够的手段进行功能的调整和扩充。

12、而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定的规范,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。3、系统的易用性和易维护性图书管理系统是直接面对使用人员的,而使用人员往往对计算机并不时非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。4、系统的标准性系统在设计开发使用过程中都要涉及到很多计算机硬件、软件。所有这些都要符合主流国际、国家和行业标准。5、系统

13、的先进性目前计算系统的技术发展相当快,做为药品管理系统工程,在系统的生命周期尽量做到系统的先进,充分完成企业信息处理的要求而不至于落后。这一方面通过系统的开放性和可扩充性,不断改善系统的功能完成。另一方面,在系统设计和开发的过程中,应在考虑成本的基础上尽量采用当前主流并先进且有良好发展前途的产品。3.4 数据描述经过调查研究,我们发现,一个药店最基本的工作流程是进货和销售。消费者选择药店进行购买药物,药店通过我们的药店管理系统进行药品的销售及销售后的库存整理。流程简介:1 要求A.为每种药品设置编号,输入药品的信息,以便于管理人员对药品进行管理,也便于核对修改B.为职工设置库,便于操作员对职工

14、进行管理C.为供货商设置库,便于操作员及时与供货商联系货源D.设置系统权限E.药品价格分为进货价、零售价和批发价2 目标A.使药品销售的信息能及时得到统计、查询B.方便操作员的操作,达到简单、易用的效果C.提高操作员的工作效率D.提高操作的正确率E.提高系统的可靠性及安全性经过对数据流程分析,提示出现行系统具有4个主要模块:药品信息系统、药品库存管理系统、供应商管理系统、药品销售系统。通过它们我们的药品管理系统才成为了一个能够成功的软件。首先是药品信息系统:在这个模块中由用户或管理员输入所有药品的基本信息即药品的初始化。第二个是药品库存管理系统:在这里这个系统有两个功能,一是查出现有药库中的所

15、有过期药品,更新现有的数据库;二是实现药品入库,避免药品空缺造成的销售问题。第三个是供应商管理系统:供应商是药品进货时,从何处购得的一种记录方法,通过供应商可以方便的再次进货。最后一个是药品销售系统:在这个模块中,管理人员可以很方便地对销售情况进行查看,显示当天的销售金额并备份所有的数据库表。药品管理系统与3个外部实体有关:顾客、药房销售人员和系统管理员。其中系统管理人员拥有所有信息资料添加、删除和修改的权限,而药房销售人员只具有普通权限不能对信息资料做任何的删除操作。以上只是整个系统的总体流程,大概显示了一次一个用户完整交易的全部过程。在这里我们还要对这个数据流程进行进一步详细的分解。消费者

16、通过选购,选购好合适的药品,到管理者处登记结账,发生销售管理。管理者通过药品编号,录入系统需要销售的数量,系统生成仓库中是否有足够的药品。发生销售之后产生销售单和销售金额,消费者付款拿货。销售管理完成。当消费者发现购买的药品不符合要求,管理者在认真核实之后,予以退款,发生退货。此时管理者要在系统的坏货转移中,将不合格药品转移到不合格仓库中。 图3.1 系统数据流图 图3.2 详细数据流图第四章 概要设计 4.1 业务流程根据需求分析的得到的现行业务处理流程,在用户反复研究后,首先确定目标系统的业务流程,其处理流程如图4.1。 图4.1 药品管理系统的业务流程针对业务流程,现具体描述其功能如下:

17、1.用户登录:系统对用户合法性进行检查。2.药品入库:对新购进的药品分类进行编号,并把药品基本信息录入计算机。3.药品销售:对已入库的药品,销售人员可以进行销售。4.药品进货:对已入库的药品,管理人员可以进行货存控制。5.存货转移:对于已经过期或者损坏的药品,可以进行处理。 6.信息查询:对药品的各种变动情况的查询。7.职员管理:对药店的职工进行管理。4.2 系统功能模块图系统管理模块分为用户登录、进货管理、销售管理、职工管理和坏货管理;用户管理模块主要是增添用户,修改用户,查询用户,删除用户;进货管理模块主要有供应商创建,进货,进货单查询,药品创建;销售管理模块主要有销售,修改价格,销售单查

18、询;职工管理有增添职工,处理职工;坏货管理模块主要有过期处理,损坏处理。系统体系结构框图如下图:图4.2 药品管理系统功能模块图4.3 系统流程图依据软件工程的基本原理,综合以上分析给出系统流程图如图3.4所示。 图4.3 系统的处理流程图 说明: 用户通过登陆界面登陆系统时,第一次使用系统时需要进行药品的创建,即将各个药品的详细信息依次录入系统,第一次使用系统时同样要初始化库存,将现有的药品情况录入系统,接下来通过进货模块进行进货,进货时要为每一个供应商进行供应商创始,当发生销售时销售药品,并对库存进行相应的处理,退出时推出系统。4.4 数据库的设计1. 数据库的概念结构设计和ER图在需求分

19、析阶段已完成该系统所有的数据分析。根据该阶段所建立的概念模型,已经得出满足系统设计要求的几个关系描述,该阶段的主要工作就是把前一阶段的成果转化为具体的数据库。 在设计ER图时时强调的是不同实体之间关系,不是行为。比如:药品 销售 库存,“转移”是一种关系,不是行为。在某种情况下,“销售”是一个关系表,将“药品”和“库存”联系起来。 在找出实体后,我们要根据分析来定义实体的属性,就是表的列。比如药品有ID,名称,进价,销价,简介等等; 库存有ID,名称,数量等等。 “库存”可拥有 0-MANY 的“药品”,而药品同样属于0-MANY 的库存。所以是多对多的关系根据以上的分析给出下面的概念结构设计

20、得E-R图如下所示。 图4.4用户E-R图 图4.5 药品E-R图 图4.6 供应商E-R图 图4.7库存E-R图 图4.8 供应商E-R图图4.9 职员E-R图 图4.10实体联系E-R图2. 数据库的逻辑设计药品管理管理系统主要涉及到4个表,即:药品信息表、药品入库表、药品出库表和库存表。 药品信息表:这张表是用来存储药品信息的。药品添加以后它的信息就会储存到这张表中,其中包含:药品编号、药品名称、化学名称、规格、药品类别、剂型、批号及厂商。其中药品编号是主键,非空且唯一。其余信息可以为空,并在数据表建立的时候给他们相应的规定好数据类型。药品入库表:这张表是用来存储入库表单信息的,所有入库

21、单信息都包含在这张表中。包括:入库单号、药品编号、批号、入库日期、有效日期、进价、预售价、数量、整量单位、散量单位及验收人。其中入库单号是主键,非空且唯一。药品出库表:这张表是用来存储出库表单信息的,所有出库信息都包含在这张表单中。它的字段有:出库单号、药品编号、批号、数量、出库日期及验收人。其中出库单号是主键,非空且唯一。药品库存表:这张表是用来存储库存信息的,所有初始化的库存信息和出库入库信息改变后的信息都会被记录下来。它字段有:库存号、药品编号、批号、药品名称、数量、整量单位、散量单位、入库日期、有效日期、进价、预售价、库存下限及验收人。3.数据库的物理设计数据库设计有几个范式,一般我们

22、要做到的是第三范式,即数据表中没有冗余字段以及同一个表中的字段没有函数依赖关系,冗余字段即在一个表中已经保存过的信息,在另一个表中就不应该存在,如果需要的话,可以通过表间的关联来得到,函数依赖性就是一个表中的字段间不应该有计算关系,如一个表中有单价字段、数量字段,就不应该有一个总金额字段。如果程序运行过程中需要总金额,可以实时计算。不过在一些较常用的表中,我们可以适当地保留冗余字段,这样,在程序运行过程中可以减少由于表间互相关联而使用速度降低等问题。这就是所谓的第四范式。数据表设计时,最好不要使用用户输入的信息作为主键,每一个数据表自己定义一个主键,添加信息是由程序自动添加,这样就可以减少数据

23、更新时产生的错误。表与表相关联的外键最好是由程序自动生成的主键,这样数据库就比较规范了。程序一旦开始编码,就应该尽量避免再修改数据库。因为如果数据库结构一旦改变,所有与修改的数据表相关的业务都有可能受到影响,而某些影响还很难看到,这样就容易形成一个恶性循环。错误越改越多,越改越乱,最终导致程序的失败。PB的数据窗口与其他语言的数据控件不一样,它的很多东西是预编译的。即使你一个模块已经调试无误,但只要数据库结构改动。相应的模块就一定要重新修改,否则一定会出问题。第五章 详细设计 5.1 程序流程图依据软件工程的基本原理,详细设计阶段的根本任务是确定应该怎样具体实现所要求的系统,也就是说,经过这个

24、阶段的设计工作,应该得出对目标系统的精确描述,从而在系统实现阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。具体来说就是把经过总体设计得到的各个模块详细的加以描述。在此给出软件系统的主要模块,如图5.1所示。图5.1 主程序模块图根据以上主程序的模块图,我们可以得出下面的关于各个模块的程序流程图: 图5.2 总体流程图 图5.3 用户登陆流程 图5.4 药品创始流程 图5.5 存货创始流程 图5.6 销售流程 图5.7 坏货转移流程 图5.8 职员管理5.2 程序输入输出描述1. 用户登陆模块1.输入项目:输入用户名及密码。2.输出项目:打开系统。2. 用户管理模块1.输入项目:与用

25、户相关的所有信息。2.输出项目:操作结果的显示,出错弹出对话框。3. 销售管理模块1.输入项目:选择药品编号,药品的进销价格。2.输出项目:操作结果的显示,出错弹出对话框。4. 进货管理模块1.进货项目:供应商的详细信息,仓库的详细信息,药品的数量。2.输出项目:药品的有关资料的显示,进货单列表5. 坏货管理模块1.输入项目:发生意外无法使用的药品编号。2.输出项目:操作结果的显示。6. 职工管理模块1.输入项目:职工的详细信息。2.输出项目:根据用户的输入显示相应的结果。第六章 实现 6.1 用户登陆模块用户登陆界面如图6.1所示图6.1药品登陆界面关键代码如下: public Login(

26、String msg) super(msg);setLayout(new BorderLayout();login_message = new JTextField(用户登陆);login_message.setEditable(false);login = new JButton(登陆);regeist = new JButton(注册);setVisible(true);add(login_message,North);JPanel btn = new JPanel();btn.setLayout(new GridLayout(1,2);btn.add(login);btn.add(reg

27、eist);add(btn,South);JPanel input = new JPanel();JLabel unameLabel = new JLabel(用户名:);uname = new JTextField(,20);JLabel pwdLabel = new JLabel(密 码 :);pwd = new JPasswordField(,20);input.setLayout(new GridLayout(2,2);input.add(unameLabel);input.add(uname);input.add(pwdLabel);input.add(pwd);add(input,

28、Center);login.addActionListener(new loginListener();regeist.addActionListener(new regeistListener();class loginListener implements ActionListener public void actionPerformed(ActionEvent event) UserDao ud = new UserDao();if(ud.login(uname.getText().trim(), pwd.getText().trim() new MainGui().start();s

29、etVisible(false); else JOptionPane.showMessageDialog(null, 您的输入不正确,请重输,警告, 1);loginListener() 6.2 用户管理模块图6.2 用户管理界面关键代码如下:public boolean regeist(User user) Connection conn = DB.getConn();Statement stmt = DB.getStatement(conn);String sql = insert into user(username,password,rank) values( + user.getUs

30、ername() +, + user.getPassword() + ,+user.getRank()+);System.out.println(sql);try stmt.executeUpdate(sql); catch (SQLException e) e.printStackTrace();JOptionPane.showMessageDialog(null, 添加失败,您输入的用户已存在,警告, 1);return false;JOptionPane.showMessageDialog(null, 恭喜您,添加成功,恭喜, 1);return true;/查询用户public Str

31、ing findUser() Connection conn = DB.getConn();Statement stmt = DB.getStatement(conn);String sql = select * from user;String userlist = new String128;System.out.println(sql);try ResultSet rs = stmt.executeQuery(sql);int i = 0;while(rs.next() userlisti = rs.getString(username);i+; catch (SQLException

32、e) e.printStackTrace();JOptionPane.showMessageDialog(null, 查找用户失败,警告, 1);return null;return userlist;/删除用户public boolean delUser(String username) Connection conn = DB.getConn();Statement stmt = DB.getStatement(conn);String sql = delete from user where username = + username + and rank = 0;String user

33、list = new String;System.out.println(sql);try stmt.executeUpdate(sql); catch (SQLException e) e.printStackTrace();JOptionPane.showMessageDialog(null, 删除用户失败,警告, 1);return false;return true;/修改用户public boolean modify(User user) Connection conn = DB.getConn();Statement stmt = DB.getStatement(conn);Str

34、ing sql = update user set username = + user.getUsername()+,password=+user.getPassword()+,rank=+user.getRank()+ where username =+user.getUsername()+;System.out.println(sql);try stmt.executeUpdate(sql); catch (SQLException e) e.printStackTrace();JOptionPane.showMessageDialog(null, 修改失败,警告, 1);return f

35、alse;JOptionPane.showMessageDialog(null, 恭喜您,修改成功,恭喜, 1);return true;6.3 进货管理模块图6.3药品管理界面关键代码如下:public boolean regeist(Medicine medicine) Connection conn = DB.getConn();Statement stmt = DB.getStatement(conn);String sql = insert into medicine values( + medicine.getMid() + ,+ medicine.getMname() + ,+

36、medicine.getMshortname() + ,+ medicine.getMnors() + ,+ medicine.getMarea() + ,+ medicine.getMlot() + ,+ medicine.getMinpri() + ,+ medicine.getMwpri() + ,+ medicine.getMrpri() + ,+ medicine.getMcon() + ,+ medicine.getMcate() + ,+ medicine.getMusetime() + ,+ medicine.getMemo() + );System.out.println(s

37、ql);try stmt.executeUpdate(sql); catch (SQLException e) e.printStackTrace();JOptionPane.showMessageDialog(null, 您的输入不正确, 警告, 1)return false;return true;/添加药品frame中public class AddMedButtonListener implements ActionListener public void actionPerformed(ActionEvent e) tryMedicine medicine = new Medicin

38、e();medicine.setMarea(marea.getText().trim();medicine.setMcate(mcate.getText().trim();medicine.setMcon(mcon.getText().trim();medicine.setMemo(memo.getText().trim();medicine.setMid(mid.getText().trim(); medicine.setMinpri(Float.parseFloat(minpri.getText();medicine.setMlot(mlot.getText().trim();medici

39、ne.setMname(mname.getText().trim();medicine.setMnors(mnors.getText().trim();medicine.setMrpri(Float.parseFloat(mrpri.getText();medicine.setMshortname(mshortname.getText();medicine.setMusetime(Integer.parseInt(musetime.getText();medicine.setMwpri(Float.parseFloat(mwpri.getText();MedDao md = new MedDao();if(md.regeist(medicine)JOptionPane.showMessageDialog(null, 药品添加成功, 恭喜, 1);catch(Exception e2) e2.printStackTrace();JOptionPane.showMessageDialog(null, 您的输入不正确, 警告, 1);/加入

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论