net开发酒店管理系统_第1页
net开发酒店管理系统_第2页
net开发酒店管理系统_第3页
net开发酒店管理系统_第4页
net开发酒店管理系统_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

1、综合实训(一)设计报告班 级: 软件15-3班 姓 名: 学 号: 日 期:2018.1.15-2018.1.23 软件学院软件工程系目录1 项目概述12 需求分析12.1 总体目标12.2 具体目标22.3 系统功能建模22.3.1 系统数据流程图32.3.2 数据字典52.4 系统数据模型153概要设计163.1体系结构设计163.2数据库设计193.2.1关系模式设计193.2.2物理表结构设计204详细设计224.1用户登陆模块224.2 查询房间信息模块234.3订单提交模块244.4按日期查询订单模块265系统实现275.1实现技术275.2业务逻辑代码275.3 数据库代码326

2、结束语33参考文献341 项目概述相关的数据表明酒店网络预订系统是未来酒店业务发展的核心竞争能力,在中国也被越来越多的酒店所接受;一方面,对于大多数单体酒店,酒店网络预订系统帮助他们形成虚拟集团,使其拥有全球网络和品牌;另一方面,酒店与电子商务的融合, 通过网络酒店预订,让客户可以直接在网上预订各种酒店服务,将会吸引更多的各地客户入住,也同样为酒店的发展带来了无限商机,多样化的选择以及订房过程中完全的透明流程可以获得客户的全面认可。具体来说,“酒店预订系统”就是需要完成网上酒店预订功能,客户可以直接通过Internet在Web页面实现酒店的预订,“足不出户”实现酒店预订;不再需要到酒店现场或者

3、通过中介办理预订,大大节省了客户和酒店方面的预订成本,缩短了预订周期,同时也给客户提供了更大选择余地。而本项目所实现的酒店预订系统是在.net平台上使用其主流语言C#实现的基于B/S架构的系统,其数据库选用的是oracle数据库。其完成了用户注册与登陆,个人信息修改,房间浏览与预定,订单评论与管理员管理等功能。极大的方便了用户与酒店的管理者。2 需求分析2.1 总体目标随着网络的逐步发展,运用网络实现酒店,旅游门票的预定已经成为了一种潮流,酒店预订系统更是未来酒店业务发展的核心竞争力。酒店预定系统不仅要包括会员使用的界面,更加要包括管理员页面。在浏览器中用户可以根据网页上的信息选择自己想要入住

4、的房间,而在酒店中,管理人员就要结合后台的服务系统为客户安排房间。如果系统的功能不完善,就可能出现,会员预定了房间但是酒店并没有留房的操作。所以本系统将致力于开发完整流畅的系统,为酒店人员以及有需求的用户带来便利,提高酒店的预定效率。 2.2 具体目标 本系统将角色分为用户和管理员两种,两者的权限有所不同。具体实现的功能模块有,用户功能模块,房间管理模块,订单模块,评论模块,以及公告管理模块。其具体功能如下:1)注册及登录:用户以合法身份登录系统后,才能进行所有操作;当用户第一次登录系统时,需注册。当用户已有账号时,可以输入账号及密码登录。2)修改个人信息:用户可以修改密码及其他个人信息。3)

5、普通用户基本功能:房间信息查看,浏览评论信息,房间预定。4)选取付款方式:付全款和付一定额度定金。5)预定管理:对预定的房间可结账生成订单,用户可查询自己的订单记录,并可删除订单。6)评价:用户可为酒店服务填写评价并打分,该分数应显示在酒店介绍页面上。7)用户可以查看自己的登陆信息管理员权限:1)登录:管理员输入账户名和密码,进行登录。2)用户信息管理:用户基本信息的查看和维护。3)管理员信息管理:管理员信息管理,房间信息的添加,修改,删除;及时改变房间状态(已预定,未预定),公告信息管理。预定信息管理4)用户信息及评价信息维护:可查看和删除用户评价信息,及时更新酒店相关信息等。5)用户预订信

6、息管理:如果用户付全款,则生成订单信息;如果用户付定金,规定在一定时间段内存在该订单,超过规定时间则自动取消订单。 6)管理员可根据日期查询订单量 7)用户可以查看所有用户的登陆信息。2.3 系统功能建模功能建模的思想是用抽象模型的概念,按照软件内部的数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能的所有可实现的软件为止。系统功能建模所采用的工具是数据流程图和数据字典,用于表达系统内部数据的运动以及对数据的描述和定义。2.3.1 系统数据流程图数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻

7、辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。它是由实体部分,处理部分,数据存储部分和数据流四部分组成。 图2-1:0层数据流图 Fig2-1:0 tier data flow diagram 图2-2:1层数据流图 Fig2-2:1 tier data flow diagram2.3.2 数据字典数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明,使用数据字典为简单的建模项目。简而言之,数据字典是描述数据的信息集合,是对系统中使用的所有数据元素的定义的集合。词条描述:为图

8、中每一个被命名的图形元素加以描述。(1) 数据元素。 表2-1:用户实体词条描述 Tab2-1:User substance entry description 名称 内容 名称 用户 简述 用户是系统的直接参与者,是各个功能的反馈者。 有关数据流 登陆、注册、查看个人信息、修改个人信息、提交订单、查看订单信息、按日期查询订单量、月账单、日账单、评论、房间信息数目10 表2-1:管理员实体词条描述 Tab2-2:Manager substance entry description 名称 内容 名称 管理员 简述是系统的直接参与者,系统的维护者,维护系统中的信息。 有关数据流修改房间信息,删除

9、评论信息,用户信息,用户登陆信息,订单管理信息数目10(2)数据存储。 1)用户信息存储文件 表2-3:用户信息词条描述 Tab2-3:User Information entry description 名称 内容 文件名 用户信息存储 简述 存储有关于系统登陆用户的基本信息 组成 输入 输出用户名+密码+性别+身份证号+电话号码+角色 用户管理 用户管理 数据结构: 用户信息=用户名+密码+性别+身份证号+电话号码+角色 用户名=2字母20 密码=2字母|数字20 性别=男,女 身份证号=d17d|X|d15 电话号码=13578d9 角色=用户,管理员 (3)数据流。2) 登陆信息存储

10、表2-4:登陆信息词条描述 Tab2-4:Login Information entry description 名称 内容 文件名 登陆信息存储 简述 存储有关于系统登陆的信息 组成 登陆编号+用户名+登陆时间+用户角色 输入 用户管理输出用户管理 数据结构: 数据结构: 登陆信息=登陆编号+用户名+登陆时间+用户角色 登陆编号=1.99999用户名=2字母20 登录时间=年+月+日年=”0001”.”9999”月=”01”.”12”日=”01”.”31” 用户角色=用户,管理员 3) 房间信息存储 表2-5:登陆信息词条描述 Tab2-5: Login Information entry

11、description 名称 内容 文件名 房间信息存储 简述 存储有关于房间的信息 组成 房型号+房型名+房间数量+最大可住人数+价格+优惠+面积+备注 输入 房间管理输出房间管理 数据结构 房间信息存储= 房型号+房型名+房间数量+最大可住人数+价格+优惠+面积+备注 房型号=”1”.”100”房型名=2字母20房间数量=”1”.”100”最大可住人数=”1”.”10”价格=金额优惠=2字母20备注=2字母2004) 订单信息存储表2-6:订单信息词条描述 Tab2-6: bill Information entry description 名称 内容 文件名 订单信息存储 简述 存储有关

12、于订单的信息 组成 订单号+用户名+房型号+价格+入住时间+离店时间+付款方式+下单时间+订单状态+房间数量 输入 订单管理输出订单管理 数据结构: 订单信息存储= 订单号+用户名+房型号+价格+入住时间+离店时间+付款方式+下单时间+订单状态 +房间数量+入住人姓名订单号=200800001.999999999用户名=2字母15房型号=”1”.”12”价格=金额入住时间=年+月+日年=”0001”.”9999”月=”01”.”12”日=”01”.”31”离店时间=年+月+日付款方式=not all,all下单时间=年+月+日订单状态=待受理,待入住,待评价,已完成房间数量=1.50优惠=2字

13、母20入住人姓名=2字母10备注=2字母2005) 评论信息存储 表2-7:评论信息词条描述 Tab2-7: comment Information entry description 名称 内容 文件名 评论信息存储 简述 存储有关于评论的信息 组成 订单号+用户名+分数+评论内容+时间 输入 订单管理输出订单管理 数据结构: 评论信息订单号=200800001.999999999用户名=2字母15分数=1.5评论内容=2字母200时间=年+月+日年=”0001”.”9999”月=”01”.”12”日=”01”.”31”(3) 数据流。 表2-8:注册数据流词条描述 Tab2-8: Regi

14、ster data flow entry description 名称 内容 数据流名 注册 简述将用户的注册信息传送到系统中,后存入数据库。 组成 用户名+密码+性别+身份证号+电话号码+角色来源 用户去向用户管理 表2-9:登陆数据流词条描述 Tab2-9: Login data flow entry description 名称 内容 数据流名 登陆 简述将用户的登陆信息传送至系统中,用于身份验证。 组成 用户名+密码来源 用户去向用户管理 表2-10:房间信息数据流词条描述 Tab2-10: room information data flow entry description 名称

15、 内容 数据流名 房间信息 简述将酒店的房间信息展示给用户 组成 房型号+房型名+房间数量+最大可住人数+价格+优惠+面积+备注 来源 用户去向用户管理 表2-11:查看个人信息词条描述 Tab2-11: View personal information entry description 名称 内容 数据流名 查看个人信息 简述 向用户提出查看个人信息请求 组成 用户名来源 用户去向用户管理 表2-12:个人信息词条描述 Tab2-12: Personal information entry description 名称 内容 数据流名 个人信息 简述 在用户提出查看请求之后,将个人信息展

16、示给用户。 组成 用户名+性别+身份证号+电话号码+角色来源 用户管理去向用户 表2-13:月账单信息词条描述 Tab2-13:Monthly bill information entry description 名称 内容 数据流名 月账单信息 简述 向用户展示每月的收入 组成 每月收入来源 订单管理去向用户 表2-14:房间评论词条描述 Tab2-14:room discuss information entry description 名称 内容 数据流名 房间评论 简述将用户提交的评论按照房间号分组提交给房间管理,和房间信息一起展示给用户 组成 房间号+用户名+评论时间+订单打分来源

17、评论管理去向 房间管理 表2-15:按照日期查询订单量词条描述 Tab2-15:select bill number by date entry description 名称 内容 数据流名 按照日期查询订单量 简述可以按照年月和具体年月日查询订单量 组成 年月日或年月来源 用户去向 订单管理 (4) 数据处理。 表2-16:用户管理词条描述 Tab2-16:User manger entry description 名称 内容 编号 1 加工名 用户管理 简述 用于进行有关于用户信息的基本操作。通过与数据库的对接完成用户注册,登陆,修改个人信息,查看登陆信息,查看个人信息功能输入登陆,注册,

18、个人信息,登陆信息输出查看个人信息,修改个人信息,查看登陆信息加工逻辑先进行注册,在注册后进行登陆。在登陆后需要先查看个人信息才可以修改个人信息。 表2-17:房间管理词条描述 Tab2-17:Room manger entry description 名称 内容 编号 2 加工名 房间管理 简述 用于进行关于房间的基本操作,包括增删改房型信息,向用户和管理员展示房型信息。输入修改房间信息输出房间信息加工逻辑再向管理员展示了房间信息之后才可以进行增删改操作。用户只能查看房间信息,不能更改。 表2-18:订单管理管理词条描述 Tab2-18:Bill manger entry descripti

19、on 名称 内容 编号 3 加工名 订单管理 简述 在用户预定房间后选择生成,其中包括对于订单的增删改操作,以及对于订单的评论输入预定订单,查看订单,评论,修改订单信息,按日期查询订单量输出订单信息,月账单,日账单,订单量,订单评论。加工逻辑在生成的订单的状态变成已完成时,用户才可以进行评论。管理员可以修改订单状态,但是不可以删除订单。 表2-19:用户管理词条描述 Tab2-19:Comment manger entry description 名称 内容 编号 4 加工名 评论管理 简述 在对于订单进行评论之后,将评论转至评论管理。评论管理根据用过户评分计算酒店评分,以及按照房间号整理评论

20、信息,将评论信息传送至房间管理,将评论信息与房间信息一同展示给用户。管理员可以对评论进行删除操作。输入评论信息,删除评论信息输出房间评论信息,评论信息加工逻辑在进行评论之后,才可以进行相关运算。 表2-20:用户管理词条描述 Tab2-20:Comment manger entry description 名称 内容 编号 4 加工名 公告管理 简述在管理员页面对于公告进行修改,展示给用户输入修改公告信息输出公告信息加工逻辑在管理员进行修改公告信息之后,用户才可以看到公告信息。2.4 系统数据模型建立系统数据模型的主要工具是实体-关联图,即E-R图。供了表示实体类型、属性和联系的方法,用来描述

21、现实世界的概念模型。 图2-3:E-R图 Fig2-3: E-R image3概要设计2.53.1体系结构设计 系统的参与者分别有用户和管理员,他们拥有不同的权限。从使用者的角度来看,系统可分为用户功能模块和管理员功能模块两个方面。从系统的功能来看,系统的功能可以总的分为用户管理、房间管理、订单管理、评论管理和公告管理五个功能模块。在这五个功能模块中,除却公告管理用户并没有直接和系统进行交互之外。剩余几个功能模块管理员和用户都有直接交互。 图3-1:系统功能模块图 Fig3-1: E-R image 图3-2:系统功能模块图(2) Fig3-2: E-R image(2) 图3-3:系统功能模

22、块图(3) Fig3-3: E-R image(3) 图3-4:系统功能模块图(4) Fig3-4: E-R image(4) 图3-5:系统功能模块图(5) Fig3-5: E-R image(5)3.2数据库设计关系模式设计由E-R图中的四个实体导出了四个关系模式:用户(用户名,密码,性别,联系电话,身份证号码,角色) 用户名为主键房型(房型号,房型名,房间数量,房间面积,房间价格,最大可住人数,优惠,备注) 房型号为主键订单(订单号,用户名,房型号,入住时间,离店时间,入住人姓名,支付方式,已付金额,下单时间,订单状态) 订单好为主键,用户名,房型号为外键评论(订单号,用户名,打分,评论

23、内容,评论时间)订单号为主键,用户名为外键。物理表结构设计表3-1 用户信息表tab3-1 User information sheet 列含义列标示类型长度完整性约束用户名namevarchar20主键密码pwdvarchar20 字符性别sexvarchar2男或女电话号码phonenumber18非字符型数字身份证号idvarchar20字符角色lrolevarchar10用户或管理员表3-2 用户登陆信息表tab3-2 User login information sheet列含义列标示类型长度完整性约束登陆编号lnumnumber20主键用户名namevarchar20外键(user

24、)登陆时间timedate系统时间角色lrolevarchar10用户或管理员表3-3 房间信息表tab3-3 User information sheet 列含义列标示类型长度完整性约束房型号rnonumber10主键房型名rnamevarchar20 字符房间数量rnumvarchar4非字符型数字房间面积rmmnumber4非字符型数字价格pricenumber7,2非字符型数字最大可住人数pnumnumber2非字符型数字优惠ryhvarchar20字符备注rmesvarchar200 字符表3-4 订单信息表tab3-11 User information sheet 列

25、含义列标示类型长度完整性约束订单编号 ROMM_BIDDnumber10主键用户名UNAMEvarchar20外键()房间号ROMMIDvarchar2外键(romm.rno)预定房间数ROOMNUMnumber18非字符型数值入住日期INDATEvarchar20日期离开日期OUTDATEvarchar20日期总计TOTALnumber20,2非字符型数值付款方式PAYWAYvarchar10 All|not all 状态STATUSvarchar10待受理,待入住,待评价,已完成入住人姓名INNAMEvarchar15字符下单时间BIDDTIMEDATE系统时间 表3-

26、5 评论信息表tab3-5 comment information sheet 列含义列标示类型长度完整性约束订单编号ROMM_BIDDnumber20主键用户名UNAMEvarchar20外键()分数MARKnumber15或4或3或2或1评论时间D_TIMEdate系统时间评论内容DISCUSSvarchar200字符4详细设计4.1用户登陆模块 登陆功能的实现需要与orcale链接。在点击登陆按钮时,链接数据库,通过select语句获得登陆用户的密码。利用ExecuteScalar()方法,查看其获得的值是否为空,如果为空,则用户名不存在,如果不为空则执行验证密码操作

27、。通过将ExecuteScalar()获得的参数与文本框中输入的密码进行匹配,如果匹配成功则跳转主页,否则提示密码错误,重新输入。流程图如下: 图4-1: 程序流程图(1)Fig 4-1: program flow diagram(1)4.2 查询房间信息模块 查询房间信息模块的主要在于房间信息的输出。在跳转房间详情页前需要选择入住的时间和房间,房间号通过Response.Redirect()方法传至房间详情页,通过Request.getQueryString()方法获得参数值,而入住日期和离开日期通过Session传值。在判断到Session不为空时,便以入住日期和房间号为Where查询当日

28、的房间信息。在查询房间信息时,因为每一日的剩余房间量有所不同,所以建立了一个辅助表room_use表,room_use表以入住日期和房间号为主键,并建立触发器,当订单表中有新插入对象的时候,与房间使用表进行对比,如果没有当天房屋的预订信息时,便插入到表中,如果有便更新表中的已预定房屋字段。在查询房屋信息时,房间剩余量=房间表中的总数量-已经预定了的房间量。如果房间数量为0就隐藏预定按钮,并显示房屋已经预定完事。点击预定按钮将会跳转至生成订单页面。 图4-2: 程序流程图(2)Fig 4-2: program flow diagram(2)4.3订单提交模块 在上以部分功能的基础上,点击提交后。

29、首先先从session中获取入住时间和离开时间,通过TimeSpan()函数计算出两个日期之间的间隔,并显示在页面上。链接数据库,获取房间的价格信息。在填写入住人信息,以及所订房间数之后选择支付方式。分别有全额付款和预付定金两种方式,全额付款的金额=入住天数*单天价格*房间房数。预付定金的金额=50*入住天数*房间房数。点击提交订单后,将链接数据库,将订单信息插入到订单表中,此时的订单状态为待受理,管理员可以选择受理订单和取消订单。 图4-3: 程序流程图(3)Fig 4-3: program flow diagram(3) 4.4按日期查询订单模块 先定义两个存储过程,分别可以获得月订单量和

30、日订单量。通过选择是日订单查询还是月订单查询输入相应的日期,月份的是yyyymm格式如:201801,日的格式是yyyymmdd如20180119。通过调用有参数值的存储过程,返回订单量。 图4-4: 程序流程图(4)Fig 4-4: program flow diagram(4)5系统实现5.1实现技术1. C#语言是Microsoft公司设计的一种现代的纯面向对象的编程语言,也是微软公司为了能够完全利用.net平台优势而开发的一种新型编程语言。它松散地基于C/C+,并且有很多方面和Java类似。Microsoft是这样描述C#的:“C#是从C和C+派生来的一种简单、现代、面向对象和类型安全

31、的编程语言。C#主要是从C/C+编程语言家族移植过来的。C#试图结合Visual Basic的快速开发能力和C+的强大灵活的能力”。用C#可以编写Windows应用程序、Web应用程序、Web服务等。  2.ADO.NET技术 ADO.NET是由.NET Framework为与数据库中的数据进行交互而提供的一组对象类的名称,是对Microsoft ActiveX Data Objects (ADO)一个跨时代的改进,它提供了平台互用性和可伸缩的数据访问。由于传送的数据都是XML格式的,因此任何能够读取XML格式的应用程序都可

32、以进行数据处理。事实上,接受数据的组件不一定要是ADO .NET组件,它可以是基于一个Microsoft Visual Studio的解决方案,也可以是任何运行在其它平台上的任何应用程序3.orcale数据库  Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案

33、。5.2业务逻辑代码1. 登陆功能,链接数据库 protected void Button2_Click(object sender, EventArgs e) OleDbConnection con = new OleDbConnection("Provider=MSDAORA;Data Source=ORCL;Persist Security Info=True;Password=tiger;User ID=scott"); con.Open(); string str = "select pwd,lrole from users where name =&#

34、39;" + TextBox1.Text + "'" OleDbCommand cmd = new OleDbCommand(str, con); OleDbDataReader ds = cmd.ExecuteReader(); if (ds.HasRows)/判断读取结果是否存在,布尔类型 ds.Read();/读取下一行 string cpw = ds0.ToString(); string role = ds1.ToString(); ds.Close(); if (TextBox2.Text = cpw) Session"usernam

35、e" = TextBox1.Text; Session"status" = "OK" if (role = "管理员") string strl = "insert into login_s values('" + TextBox1.Text + "','管理员')" cmd.CommandText = strl; cmd.ExecuteNonQuery(); else string strl = "insert into login_s va

36、lues('" + TextBox1.Text + "','普通用户')" cmd.CommandText = strl; cmd.ExecuteNonQuery(); Response.Redirect("Homepage.aspx?flag=1"); else Label1.Text = "密码错误" else con.Close(); Label1.Text = "用户名不存在" 2. 管理员按日期查询订单量功能,调用存储过程。 protected void Butt

37、on1_Click(object sender, EventArgs e) OleDbConnection con = new OleDbConnection("Provider=MSDAORA;Data Source=ORCL;Persist Security Info=True;Password=tiger;User ID=scott"); con.Open(); OleDbCommand cmd = new OleDbCommand("month_bidd", con); cmd.CommandType = CommandType.StoredPr

38、ocedure; cmd.Parameters.Add(new OleDbParameter(":month", OleDbType.VarChar, 10); cmd.Parameters0.Direction = ParameterDirection.Input; cmd.Parameters0.Value = TextBox10.Text; cmd.Parameters.Add(new OleDbParameter(":bidd_num", OleDbType.VarChar, 10); cmd.Parameters1.Direction = Pa

39、rameterDirection.Output; cmd.ExecuteNonQuery(); Label11.Text = "您所查询的日期的订单数为" + cmd.Parameters1.Value.ToString();3. 房间详细信息功能代码。 string rid = Request.QueryString"rid" OleDbConnection con = new OleDbConnection("Provider=MSDAORA;Data Source=ORCL;Persist Security Info=True;Passw

40、ord=tiger;User ID=scott"); con.Open(); string str = "select romm.rno, rname,rnum - use_num s_room,rmm,price,pnum,ryh,rmes from romm,use_room where romm.rno=use_room.rno and romm.rno="+int.Parse(rid)+" and indate= '"+Session"intime".ToString()+"'"

41、OleDbCommand cmd = new OleDbCommand(str, con); OleDbDataReader dr = cmd.ExecuteReader(); if (dr.HasRows)/判断读取结果是否存在,布尔类型 dr.Read(); Label6.Text = dr1.ToString(); Label7.Text = "¥" Label9.Text =dr4.ToString(); Label8.Text = dr7.ToString(); Label10.Text = dr2.ToString()+"间" Label3.Text = dr3.ToString()+"平方米" Label4.Text = dr5.ToString() + "人" Label5.Text = dr6.ToString(); if (Label10.Text !="0") Label10.Text = "仅剩" + dr2.ToString() + "间; else Label10.Text = "暂无房源信息" But

温馨提示

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

评论

0/150

提交评论