毕业论文--餐饮管理系统的设计_第1页
毕业论文--餐饮管理系统的设计_第2页
毕业论文--餐饮管理系统的设计_第3页
毕业论文--餐饮管理系统的设计_第4页
毕业论文--餐饮管理系统的设计_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、毕业设计(论文)题目:餐饮管理系统系另!h信 息 技 术班 级学 号:指导教师:2009 年 3 月 18 h在计算机软件普遍应用的今天,越来越多的软件与生活中的大小事件联系起来, 各式各样的软件为我们的生活管理带来了便利。在加上软件开发平台的多样性与简便 性,使得软件开发越来越简单,所能实现的功能越来越强大,管理越来越方便,但是 成本却越来越低,这就使得各行各业把它们的传统管理方式转变为利用软件来管理。 本论文运用c#编程语言在net平台上设计开发“餐饮管理系统”。实现了顾客开台、 点菜、结帐等等要求的界面化管理,该系统操作简单,节省方便了管理员的工作。数 据电子化存储,节省了数据存储的费用

2、并增加了数据存储量。实现了餐饮业的科学管 理。关键词:.net ctt餐饮管理第一章弓|言4第二章餐饮管理系统的目标与分析52.1传统餐饮存在的问题52.2餐饮管理系统的目标52.3可行性分析52.4业务流程分析6第三章c#简介93.1设计目标93. 2语言特性93. 3程序的执行103. 4标准化113. 5总结11第卩q章设计开发项目114. 1数据库设计114.2登录模块的设计144. 3主窗体设计154. 4开台模块设计194. 5点菜模块设计204. 6结账模块设计22参考文献错误!未定义书签。第一章引言近年来,随着人民的生活水平的不断提高,餐饮业的消费持续增长,竞争愈来愈 激烈。然

3、而,传统餐饮企业的日常运作还是靠人工管理,从原材料入库到客人点单, 再到结账基本上由人工完成记录,这样做不仅耗费人力资源而口容易导致记录丢失或 重复等错误,造成管理水平低下。这就迫切需要标准的、高效率的计算机管理方式引 导其发展,通过计算机管理该企业的日常运作,给管理者以决策参考的模型,来不断完 善管理水平,提高工作效率。当今世界已进入了在计算机信息管理领域中激烈竞争的时代,应用计算机已经变 得十分普遍了,如同我们离不开的自行车、汽车一样。我们应该承认,谁掌握的知识 多,信息量大,信息处理速度快,批量大,谁的效率就高,谁就能够在各种竞争中立 于不败之地。随着科学技术的不断提高,计算机科学日渐成

4、熟,其强大的功能已为人们 深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。越来越多的管理 人员意识到信息管理的重要性。作为计算机应用的一部分,使用计算机对餐饮企业信息进行管理,具有手工管理所 无法比拟的优点例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命 长、成本低等。这些优点能够极大地提高信息管理的效率,也是企业的科学化、正规化 管理与世界接轨的重要条件。本系统选择目前市场上价格比较低廉的数据库服务器产品:sql server2000及 配套的平台windows xpo而前台开发工具采用.net,语言用c#,利用其可视化的 开发环境、丰富的控件资源,快速开发出了餐饮

5、管理信息系统应用程序。第二章餐饮管理系统的目标与分析2.1传统餐饮存在的问题由于传统酒店的管理述处于人工管理阶段,所以酒店的管理效率不高。由于缺乏 科学的管理和现代化的管理工具,传统酒店在管理上和业务的安排上都存在着不足。1. 包间的管理不够科学方便,使用情况不直观。2. 库管员不能随时掌握库存情况,不能及时发现商品缺货的情况,另外统计商品 数量即费时又费力。3. 由于洒店的商品种类多,菜样多变,靠人工方式管理商品和菜品信息有很多不 便。例如商品数量大导致查找商品信息困难等。2.2餐饮管理系统的目标面对服务行业的高速发展和餐饮企业信息发展的过程屮出现的各种情况,本系统 应达到以下目标:系统采用

6、人机交互的方式,界面美观友好,信息查询灵活、方便,数据存 储安全可靠。实现对餐厅顾客开台、点菜/加菜、账目查询和结账等操作。对用户输入的数据,进行严格的数据检验,尽可能的避免人为错误。实现对消费账目自动结算。实现对消费的历史记录进行查询,支持模糊查询。系统应最大限度地实现易维护性和易操作性。2.3可行性分析2. 3. 1 技术上的可行性技术方面的可行性就是根据现有的技术条件,能否实现系统的各项要求。1. 设备:该系统对所需的硬件设备,如pc机配件的性能要求一般,现有设备的 性能完全能够满足系统功能的要求。2. 软件上,本系统属于数据库应用程序,本系统需要一个数据库服务器及其运行 的操作系统平台

7、,根据客户的数据量并不是十分巨大,我们选择冃前市场上价格比较 低廉的数据库服务器产品:sql server2000及配套的平台windows xpo而前台 开发工具采用microsoft visual studio 2005 ,利用其可视化的开发环境、丰富的 控件资源,能快速开发岀应用程序。2. 3. 2 经济上的可行性1费用:本系统属于小型的餐饮管理系统,软硬件费用要求不高,一般的餐饮行业都能支 付的了费用。2.效用:实施该系统也能给公司带来长期效益,它可帮助领导实现管理方法的 现代化、科学化,极大地提高餐饮企业的工作质量与工作效率,减少管理支出的费用, 从而保证企业管理的可持续的良好发展。

8、因此经济上具有了系统开发的可行性。2. 3. 3 简要总结经过细致地初步调查和严密地可行性分析,我们认为在现有条件下,为酒店开发 餐饮管理信息系统是完全可行的。2. 4业务流程分析2.4.1系统功能结构为了实现对餐饮企业的基本管理,现对餐饮管理系统结构主要细分为四人模块。如图表1.1:系统功能结构退岀帮助系统设置系统维护捕助工具退出系85口令设置系统备份权限背理职员信息稟台信息图表1.11 基础信息:桌台信息:主要是针对桌台的基本信息进行查询以及增删改的操作。 职工信息:主要是对公司职工的基本信息进行查询以及增删改的操作。 2辅助工具:日历:显示日期工具,对日期进行查看。计算器:通过调用系统的

9、计算器来计算数据。记事本:通过调用系统的记事本工具来记录数据。3系统维护:权限管理:对所有用户的权限进行设置。系统备份:对数据库进行备份,以便通过系统恢复来还原数据。 系统恢复:还原备份的数据。4系统设置:口令设置:修改登录者的密码。锁定系统:通过系统锁屏,通过密码才能解锁,增加系统的安全性。2. 4. 2业务流程分析为了反映系统内部各个部分的联系程度,就必须对组织的业务流程进行分析。业 务流程图是分析业务功能流程的重要工具,它是一种描述系统内部各单位、人员之间 业务关系、作业顺序和管理信息流向的图表。首先要有一个登录模块对登录用户进行验证,如果验证成功则进入系统的主窗体, 登录主窗体之后在根

10、据登录的用户名判断是不是管理员,如果是管理员则可以操作所 有的功能:系统维护、基础信息、系统设置、辅助工具、退出。如果不是管理员则只 能查看基础信息、使用辅助工具和退岀。系统业务流程如图表21所示:系统业务流程 一.一 -图表2. 1第三章 c#简介c# (发音为c sharp)是由微软公司所开发的一种面向对彖,且运行于.net framework之上的高级程序设计语言。并且成为ecma与iso标准规范。c#看似 基于c+写成,但乂融入其它语言如delphi、java、vb等。3. 1设计目标ecma标准列出的c#设计r标: c#旨在设计成为一种“简单、现代、通用”,以及面向对象的程序设计语言

11、此种语言的实现,应提供对于以下软件工程要素的支持:强类型检查、数组维 度检查、未初始化的变量引用检测、自动垃圾收集(garbage collection,指一种自 动内存释放技术)。软件必须做到强大、持久,并具有较强的编程生产力。此种语言为在分布式环境中的开发提供适用的组件开发应用。为使程序员容易迁移到这种语言,源代码的可移植性十分重要,尤其是对于那 些已熟悉c和c+的程序员而言。对国际化的支持非常重要。 c#适合为独立和嵌入式的系统编写程序,从使用复杂操作系统的大型系统到 特定应用的小型系统均适用。虽然c#程序在存储和操作能力需求方面具备经济性,但此种语言并不能在性 能和尺寸方面与c语言或汇

12、编语言相抗衡。3. 2语言特性相对于c和c+,这个语言在许多方面进行了限制和增强:指针(pointer)只能被用于不安全模式。大多数对象访问通过安全的引用实 现,以避免无效的调用,并且有许多算法用于骑证溢岀,指针只能用于调用值类型, 以及受垃圾收集控制的托管对彖。对彖不能被显式释放,代替为当不存在被引用时通过垃圾回收器回收。只允许单一继承(single inheritance),但是一个类可以实现多个接口 (interfaces)。 c#比c+更加类型安全。默认的安全转换是隐含转换,例如由短整型转换为 长整型和从派生类转换为基类。而接口同整型,及枚举型同整型不允许隐含转换,非 空指针(通过引用

13、相似对象)同用户定义类型的隐含转换必段被显式的确定,不同于 c+的复制构造函数。数组声明语法不同(mint a = new int5m而不是mint a5m)。枚举位于其所在的命名空间中。 c#中没有模版(template),但是在c# 2.0中引入了泛型(generic programming),并xl支持一些c+模版不支持的特性。比如泛型参数中的类型约 束。另一方面,表达式不能像c+模版中被用于类型参数。展性支持,使用类似访问成员的方式调用。完整的反射支持。3. 3程序的执行c#并不被编译成为能够直接在计算机上执行的二进制木地代码。与java类似, 它被编译成为中间代码(microsoft

14、 intermediate language),然后通过.net framework的虚拟机被称z为通用语言运行时.net clr (commonlanguage runtime)执行。所有的.net编程语言都被编译成这种被称为msil (microsoft intermediate language )的屮间代码。因此虽然最终的程序在表面上仍然与传统意义上的可执行 文件都具有“.exe”的后缀名。但是实际上,如果计算机上没有安装.net framework, 那么这些程序将不能够被执行。在程序执行时,.net framework将中间代码翻译成为二进制机器码,从而使它 得到正确的运行。最终的

15、二进制代码被存储在一个缓冲区(buffer)中。所以一旦程序 使用了相同的代码,那么将会调用缓冲区中的版本。这样如果一个.net程序第二次被 运行,那么这种翻译不需要进行第二次,速度明显加快。3. 4标准化微软公司已经向ecma申请将c#作为一种标准。在2001年12月,ecma发 布了 ecma-334 c#语言规范。c#在2003年成为一个 iso标准(iso/iec 23270)。 现在有一些独立的实现正在进行,包括:自由软件基金会的dotgnu portable.net mono baltie - c# ide for children and young baltie3. 5总结利用

16、c#的优点,加上.net开发的安全性,和数据库的优势和.net的无缝结合, 容易上手,易于实现快速开发,它有图形界面,它的界面设计跟服务器段编程分离, 给我感觉很清晰,用它做岀来的东西,容错性强,给人的感觉好!第四章设计开发项目4. 1数据库设计在开发餐饮管理系统之前,分析了改系统的数据量,由于系统餐饮管理的数据较 多,商品信息、消费信息以及账目清单会占用较大的空间。因此选择microsoft sql server2000数据库存储这些信息,数据库命名为db_mrcy,在数据库中创建了 6个 数据表用于不同的信息。tb_food表 存储食品的相关信息、tb_foodtype表 存储食品的类别、

17、 tb_guestfood表 存储消费信息、tb_room表 存储餐厅桌台信息、tb_user表 存 储管理用户信息、tb_waiter表 存储所有职工信息。tb_food表设置如图表4.1.1扁设计表-tb_foodw ,位置是adb_mrcyw中、列名数据类型长度允许空int4foodtychar10foodnumchar10foodnamevar char50foodpri cedecimal9图表4. 1. 1tb_foodtype表设置如图表4.1.2扁 设计表"tb.foodtype",位置是 udb_mrcyww列名数据类型长度允许空int4foodtypwv

18、ar char50图表4. 1.2tb_guesl:food表设置如图表4.1.3设计表 tttb_guestfoodw .位置是 db_lrcy列名数据类型长度允许空風irit4foodnumchar10foodnamevar char50foodsumchar10foodallpricedecimal9t er namevar char50beizhuvar char50zhuot"char10imevar char50图表3. 1.3tb room表设置如图表4.1.4扁设计表-tb_roobw ,位置是adb_mrcyw中、列名数据类型长度允许空int4roomnamecha

19、r10vroomjcchar10vroombjfdecimal9vroomwzchar10vroomztchar10vroomtypechar10vroombzvar char50vroomqtvar char50vguestnamevar char50vzhangdandatevar char50vnumint4vwai ternamevar char50v图表4. 1.4tb_user表设置如图表4.1.5tffl 设计表e ,位置是ib_lrcyw 中、列名数据类型长度允许空|.juint4usernamey ar char507userpwdvar char50vpowerchar10

20、7图表4. 1.5tb_waiter表设置如图表4.1.6宥设计表-tb_¥aiterw ,位置是«db_lrcyw中图表4. 1.64. 2登录模块的设计为了使系统的安全性得到保障,为餐饮管理系统开发了登录模块。通过该模块能 对登录用户进行验证,只有系统的合法用户才能进入系统的主界面。代码实现部分如 下:sqlconnection conn 二 baseclassdbconn. cycon();conn. open();sqlcommcind cmd = new sql comma nd ("select count (*) from tb user where

21、 username=,+ txtname. text + and userpwd=,+ txtpwd. text +、conn);int i = convert. tolnt32(cmdexecutescalar ();if (i > 0)cmd = new sq 1 command(z,select * from tb_user where username=,+ txtname.text +“,conn);sqldatareader sdr = cmdexecutereader();sdr. read();string userpower 二 sdr z,power,z tostri

22、ng() trimo ;conn. closco ;frmmain mai n 二 new frmmaino :main, power = userpower;main. names = txtname.text;main. tinies = datetime- now toshorldaleslring();mciin show();this. hidc();elsemessagebox. show("用户名或密码错误");conn. closeo ;登录界面如图表4.2.1图表4. 2. 14. 3主窗体设计在餐饮管理系统中主窗体是由3部分组成的。第一部分是位于主窗体模

23、块上端的 系统菜单,主要实现链接系统功能菜单。第二部分是位于主窗体模块中间的桌台显示, 主要用于显示餐厅中所有的桌台情况,包括桌台时候已使用、已使用桌台的客人数量 等信息,方便了用户对桌台的管理。第三部分是位于主窗体模块下端的状态栏,主要 用于显示系统当前状态信息。部分代码实现如下:private vo i d ff fj tool stripmenuttem click (object sender, evenlargs e)if (lvdesk. sclcctcdltcms. count != 0)string names = 1vdeskselectcdttems0subtterns0t

24、ext;frmopen openroom 二 new frmopen();openroom .name = names;openroom showdialogo ;messagebox. show("请选择桌台");private void fimmain_activated(object sender, eventargs e) "1 vdesk. tterns. clear();sqlconnection conn 二 baseclassdbconn.cycon(); conn. open ();sqlcommand cmd 二 new sq1commandc

25、"select * from lb. room", conn); sdr = cmd executereader ();while (sdr. reado)string zl = sdr"roomzt"tostring()trim(); addtterns (zl);conn. closco ;private void 点菜toolstriphenuttem cl ick(object sender, eventargs e) i f (1vdesk. seiectedtterns. count != 0)string names = lvdesk.sc

26、lcctcdltcms0subitems0text; frmdc de = new frmdco :de. rname 二 ntimes;de. showdialogo ;messtigebox. show(“请选择桌台);private void 消费查询toolstriphcnuitcm_click(object sender, evcntargs c) 一辻(lvdesk. selectedltems. count !二 0)string names = lvdeskselectedltems0subitems0text;frmserch serch 二 new frmsercho ;s

27、erchrnamc = names;serch showdialogo ;elsemessagebox. show(z,请选择桌台);private void 结账toolstripmenuitem cl ick(object sender, evenurgs e)if (1vdesk. seiectedtterns. count != 0)string names = lvdesksclcctcdltcms0subitems0text; frmjz jz = new frmjzo ;j%rname = names;jz. showdialogo ;elsemessagebox. show(请

28、选择桌台");private void lvdesk doub 1 ec 1 ick(object sender, evenurgs e)frmdetails details = new frmdetailso:detai is. tab1 ename = lvdesk. selectedltems0. sub i terns0. text;detai is showdialogo ;private void lvdesk click(object sender, eventargs e)string names 二 lvdeskselccledltcms0sublterns0tex

29、t;sqlconnection conn 二 baseclassdbconncycon();conn. open ();sqlcommcind emd 二 new sq 1 command (se 1 ect * from tb_room where roomname=,+ names + corm); sqldatarcadcr sdr = emdexccutcrcadcro;sdr. rcad();string zt = sdrroomzt" tostring() trimo :sdr closeo ;if (zt ="使用")thisconlcxlhcnus

30、trip1. iterns0enabled = false;thisconiextmenustrip1. tternslenabled = true;thisconlexthenustrip1.1 terns3enabled 二 true;thisconlcxlhcnustrip1. iterns5enabled = true;thiscontexthenustrip1.1terns6enabled = true;if (zt = 待用)true; false; false; false; false;this contextmenustrip 1. items01 entibled this

31、. contcxtmcnustrip1. itcms1 enabled this contextmenustrip1. items3 enabled this contextmenustrip1. items5 enabled this. contcxtmcnustrip1. items6 enabled conn. close ();privcite void 取消开台toolstripmenultem_click(object sender, eventargs e)if (lvdesk. selectedltcms. count != 0)string names = lvdesksel

32、ected】tems0subi terns0.text;sqlconnection conn = baseclassdbconn. cycon(); conn. open ();sqlcommand emd = new sqlcommand ("'update tb room set roomzt=待用',where roomname=, z/ + names +、conn);emd executenonquery();emd = new sqlcommand(delete from tb_guestfood whore zhuotai=,z,+ names +, c

33、onn);emd. executenonquery ();conn. closeo ;frmma in_ac ti vat cd (scnd* c); 一elsemessagebox. showc请选择桌台");private void 桌台信息toolstripmenulteml_click(object sender, eventargs e)frmdesk desk = new frmdesk ();desk showdialogo ;private void 职员信息toolstripmenulteml_click(object sender, eventargs e)frm

34、user users = new frmuser();users showdialogo ;private void htetoolstripmonuitcml_click(object sender, eventargs e) frmcalende厂 calender = new frmcalender();calender showdialogo ;)private void 记事本toolstripmenutteml cl ick(object sender, eventargs e) system diagnoslics process start("nolepad exe&

35、quot;);private void 计算器toolslriphenutteml_ cl ick(object sender, evemargs e) system diagnostics process start ("calc cxe,z); private void 权限管理toolstripmcnuitcml_click(object sender, eventargs c) frmqxgl qx 二 new frmqxgl(); qx. showdialogo ;private void 系统备份toolstriphcnuitcml_click(objcct sender

36、, evcntargs c) 一frmbf bf = new frmbfo ;bf showdialogo ;private void 系统恢复toolstripmenuttcml cl ick(object sender, eventargs e) frmhf hf = new frmhfo ;hf. showdialogo ;private void 口令设置toolstriphenultoml cl ick(object sender, eventargs e) frmpwd pwd = new frmpwdo ;pwd. names = names;pwd. showdialogo ;

37、private void 锁定系统toolstripmenulteml click (object sender, eventargs e) frmlock loeksystem = new frmlocko ;locksyslem .owner = this;locksystem showdicilogo ;主窗体界面如图表4.2.2图表4. 2. 24. 4开台模块设计当顾客要进行消费的吋候,首先要看一下是否还有可用的桌台,如果还有空闲的 桌台,那么就要为顾客开台,只有在开台之后,才能为顾客点菜、查询和结账。所以 开台模块在整个系统中是非常重要的。部分代码实现如下:private void

38、 frmopcn_load(object sendor, eventargs c) 一conn 二 baseclassdbconn. cycon();conn. open();sqlcommand emd = new sqlcommand("selecl * from lb room",conn);sqldatcirecider sdr 二 emd executeresder ();while (sdr. rcad()cbnum items add (sdrz/roomname,z tostring() trimo);cbnum selectodltem= name tri

39、mo;sdr closeo ;emd = new sq 1 command("select * from tb_waiterz/, conn);sdr = emdexecutereader ();while (sdr. read ()cbwaitcr. items. add(sdr"waitername". tostringo. trimo);cbwaiter.selected index = 0;sdr. closeo ;conn. closeo ; private void txtnum_keypress(object sender, keypresseven

40、targs e)if (e. keychar != 8 && !char. tsdigit (e. keychar) && e. keychar != 13) mcssagcbox. show ("诸输入数字");e. ilan died = true;private void btnsave click(object sender, eventargs e)if (txtnum. text =1 |convert. totnt32(txtnum. texl)<=0)mcssagcbox. show(请输入用餐人数);elseconn.

41、 0pen();sir in呂 roomname = cbnumselected】lem .tostring();+ txtname. text +sq 1 comma nd cmdl = new sq 1 command ("'update tb_room set guestname=,z/,zhangdandate=," + datetimepickerl. value. tostringo +, nunh " + convert. toint32(txtnum. text) +,waitcrname=," + cbwaitcr. sclcc

42、tcdltem. tostring() +, roomzt二'使用where roomxame=," + name +conn);cmd1.executenonquery();conn. closco ;this. closeo ;开台模块如图表4.2.3图表4.2.34. 5点菜模块设计为顾客选定好桌台,并且开台z后。会根据顾客的需要点菜或购买茶水烟酒z类 的消费品,在点菜模块中会显示餐厅特有的一些菜系,用户可以对不通的菜系进行选 择。部分代码实现如2private void frmdc load (object sender, eventargs e)this.text

43、= rnametreenodetreenodetreenodetreenodenewnodel newnode2 newnode3 nownoded+ 点/加菜;=tvfood. nodes. add ("锅底");=tvfood. nodes. add ("配菜");=tvfood. nodes. add("烟酒");=tvfood. nodes. add ("主食");sqlconnoction conn 二 baseclassdbconncycon();conn. open。;sq 1 comma nd cm

44、d = new sq 1 command (,zse lect * from tb_food where foodty=,t /z, conn); sqldcitareader sdr = cmd. executereader ():while (sdr. reado)newnodel. nodes. add(sdr3. tostringo. trimo): )sdr closeo ;cmd = new sqcommand ("select * from lb food where foodty二'2,",conn); sdr = cmd executereader

45、 ();while (sdr. reado)newnode2. nodes. add(sdr3. tostring0. trim();sdr closco ;cmd = new sql comma nd("selecl * from tbfood where foodty=,3, z,, conn);sdr 二 cmdexecutereader();while (sdr. reado)newnode3. nodes. add (sdr 3. tostring(). trimo);sdr closco ;cmd = new sq 1 command (,zse 1 ec t * fro

46、m tb food where foodty=,4",z, conn);sdr = cmd. executereadcr ();while (sdr. reado)newnode4. nodes. add(sdr3. tostring(). trimo);sdr closeo ;cmd = new sq 1 command (,zse lect * from tb_wai terz/, conn);sdr 二 cmdexcculercader();while (sdr. reado)cbwai ter. tterns. add(sdr"waitername". tostring(). trimo):cbwai ter .selected index = 0;sdr closco ;cmd = new sqlcommand ("'select roomzt from tb_room where roomname 二'corm); siring zt = convert.toslring(cmdexecutescalar();if (zt. trimo ="待用")groupboxl.enabled = false;groupbox2.ena

温馨提示

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

评论

0/150

提交评论