数据库大作业86623.doc_第1页
数据库大作业86623.doc_第2页
数据库大作业86623.doc_第3页
数据库大作业86623.doc_第4页
数据库大作业86623.doc_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

学习资料收集于网络,仅供参考华南理工大学数据库原理与设计大作业报告专 业: 计算机科学与技术 班 级: 2015春 学 号: 201504742013001 学生姓名: 陈亮 完成时间: 2016.05.08 目 录目 录21、概述32、需求分析52.1零售前台(POS)管理系统52.2后台管理系统52.3数据需求63、数据库逻辑设计73.1 概念结构设计74、软件功能设计114.1逻辑结构设计114.2物理结构设计134.3完整性设计164.4安全性设计185、界面设计205.1系统功能结构图205.2模块设计与实现(部分界面)206、结束语317、参考文献331、概述超市管理信息系统是针对超级市场的销售而开发的。应用超市管理信息系统能够转变超市的工作方式,有效提高销售速度和服务水平,提高客户对超市的信任度和满意度,改善客户关系。运用超市管理信息系统,在销售商品时实行出口一次性付款,可以实现超市内部现代化管理,能够准确把握每一种商品的销售动态,防止商品断档或过量储备,商品开发方向、进货的适时化都可通过超市管理信息系统来完成。超市管理信息系统将手工编制好的销售账目或根据原始超市销售记录直接在系统内制作超市销售信息,同时可对输入的超市销售信息进行修改、查询等操作。这种集约化的销售管理模式既便于对超市销售信息的收集、整理和加工,又便于操作员的需求信息在最短的时间内得到反馈,同时超市管理信息系统可自动分析各种商品销售变化规律,商品销售结构、居民消费变化等,从而为合理进货、经营、加工、库存、销售等提供科学的决策依据。超市管理信息系统充分运用计算机管理信息技术,建立数据库,对超市的进销存过程进行详细分析,实现了对超市的进货、销售和库存的科学管理。内部的所有业务,包括销售信息、进货信息、商品信息,具有超级用户的所有权限,对超市实行全面管理。销售员的要求是查看所有销售信息,查看符合条件的销售信息以及增加销售单。采购员的要求是查看所有采购信息,查看符合条件的采购信息,增加采购订单以及更改进退货状态。超市经理的要求是能够查看进货信息、销售信息以及库存信息。而顾客是超市的上帝,超市一切都是为顾客服务。本系统中顾客要求是可以现场买商品,采购信息有采购编号、采购日期、商品厂商、采购员、商品的价格、商品规格、进货商品的数量等属性。同时超市还可以进退货并有相应的付款表。通过与超市管理人员进行反复的讨论,确定系统应该实现以下功能:(1)对商品信息的变动进行处理在商品的进销过程巾,商品信息总是在不断变化的。比如商品价格的调整、商品信息的修改、新商品信息的增加以及商品信息的删除,因此设计系统时必须考虑到这些情况。(2)用户信息的变动进行处理。需考虑到新会员的注册和已注册,设置会员折扣用户的信息的修改及删除。(3)对顾客采购信息的变动进行处理。采购信息的过程中采购信息也在不断发生改变,因此也要充分考虑。(4)查询及统计功能。要求可以根据指定的条件对商品信息、用户信息和采购信息、销售信息进行查询和统计。(5)对库存商品信息的变动进行处理。要求可以根据库存的状态进行相应的进退货。2、需求分析2.1零售前台(POS)管理系统商品录入:根据超巿业务特点制定相关功能,可以通过输入唯一编号、扫描条形码、商品名称等来实现精确或模糊的商品扫描录入。该扫描录入方法可以充分保证各种电脑操作水平层次的人员均能准确快速地进行商品扫描录入。收银业务:通过扫描条形码或者直接输入商品名称(对于同类多件商品采用一次录入加数量的方式)自动计算本次交易的总金额。在顾客付款后,自动计算找零,同时打印交易清单(包括交易的流水账号、每类商品的商品名、数量、该类商品的总金额、交易的时间、负责本次收银的员工号)。如果顾客是本店会员并持有本人会员卡,则在交易前先扫描会员卡,并对所购物品全部实行95折优惠,并将所购物品的总金额累计到该会员的总消费金额中。会员卡的有效期限为一年,满一年未续卡者,该会员卡将被注销。安全性:OS登陆、退出、换班与操作锁定等权限验证保护;断电自动保护最大限度防止意外及恶意非法操作。独立作业:有的断网收银即在网络服务器断开或网络不通的情况下,收银机仍能正常作业2.2后台管理系统进货管理:根据销售情况及库存情况,自动制定进货计划(亦可手工制定修改),可以避免盲目进货造成商品积压。按计划单有选择性地进行自动入库登记。综合查询打印计划进货与入库记录及金额。销售管理:商品正常销售、促销与限量、限期及禁止销售控制。综合查询各种销售明细记录、各地收银员收银记录以及交结账情况等。按多种方式统计生成销售排行榜,灵活察看和打印商品销售日、月、年报表。库存管理:综合查询库存明细记录。库存状态自动告警提示。如库存过剩、少货、缺货等。软件为您预警,避免库存商品积压损失和缺货。库存自动盘点计算。人员管理:员工,会员,供应商,厂商等基本信息登记管理。2.3数据需求(1)顶层数据流程超市人员超市管理信息系统顾客/会员图2-1顶层数据流程图(2)第0层数据流程处理查询处理要求检查有效性图2-2第0层数据流程图(3)第1层数据流程要求处理类型采购信息销售信息商品信息用户信息员工信息超市数据库超市信息管理图2-3第1层数据流程图3、数据库逻辑设计3.1 概念结构设计(1)员工信息E-R图设计员工信息表:此表记录员工所有信息,管理员通过此表进行员工查询,添加,删除,修改等操作。员工信息实体图如图3-1所示。备注身份证号工号性别姓名职务员工表图 3-1 员工信息实体图(2) 商品信息E-R图设计商品信息表:此表记录超市所有商品信息,管理员通过此表进行商品查询,添加,删除,修改等操作,此外,采购管理及销售管理都涉及到此表。商品信息实体图如图3-2所示。库存量商品信息表规格供应商商品编号会员价单价种类名称图 3-2 商品信息实体图(3) 供应商信息E-R图设计供应商信息表:此表记录所有供应商基本信息,管理员通过此表进行供货商查询,添加,删除,修改等操作。供应商信息实体图如图3-3所示。联系电话供应商信息名称地址联系人编号图 3-3 供应商信息实体图(4) 商品销售信息E-R图设计商品销售单表:此表记录员工销售商品的所有信息,此表对应多个销售详单。商品销售单信息实体图如图3-4所示。销售员销售单表会员号备注时间编号图 3-4 商品销售单实体图(5) 商品销售详单E-R图设计商品销售详单表:此表与商品销售单表为一对多关系,记录商品销售情况。商品销售详单信息实体图如图3-5所示总金额销售详单表销售单号价格数量编号商品编号图 3-5 商品销售详单实体图(6) 商品采购详单E-R图设计商品采购详单表:此表与商品采购单表为一对多关系,记录商品采购情况。商品采购详单信息实体图如图3-6所示总金额采购详单表采购单号价格数量编号商品编号图 3-6 商品采购详单实体图(7) 商品采购单表E-R图设计商品采购单表:此表记录员工采购商品的所有信息,此表对应多个采购详单。商品采购单信息实体图如图3-7所示采购员采购单表供应商号状态编号时间图 3-7 商品采购单实体图(8) 会员信息E-R图设计会员信息表:此表记录所有会员基本信息,管理员通过此表进行会员查询,添加,删除,修改等操作。会员信息实体图如图3-8所示办卡时间会员信息积分备注联系电话编号姓名图 3-8 会员信息实体图学习资料4、软件功能设计超市管理信息系统数据库功能模型,如图下所示:名称职工/用户职工编号籍贯备注进货日期电话地址供货商编号供货商进货进货单号商品编号名称价格商品姓名性别会员价mnmn联系人身份证号客户/会员供货销售单号销售日期数量mn销售超市管理信息系统数据库功能模型4.1逻辑结构设计实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系则有以下不同的情况:一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。 一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合实体型转换为关系模式如下:(1) 商品信息表(商品编号,商品名称,价格,会员价,库存量,备注,供货商编号,商品类别)(2) 员工表(员工号,姓名,性别,身份证号,职务编号,备注)(3) 商品销售单表(销售单编号,销售员编号,会员号,备注,销售日期)(4) 商品销售详单表(详单编号,商品编号,数量,销售单编号单价,总金额,备注)(5)供货商表(供货商编号,名称,供货商地址,供货商电话,联系人,备注)(6) 会员信息表(会员号,姓名,积分,联系电话,办卡日期,备注)(7)商品采购单表(采购单编号,采购员编号,供货商号,备注,采购日期)(8) 商品采购详单表(详单编号,商品编号,采购单号,采购数量,单价,总金额,备注)(9) 职务信息表(职务编号,职务名称,职务简介)(10) 类别信息表(类别编号,名称,类别简介)(11) 用户信息表(用户名,用户密码,用户权限(职务编号)4.2物理结构设计(1)数据库模式定义根据超市管理系统数据库E-R模型及逻辑结构设计创建各表信息如下:1商品信息表,包含商品编号、商品名称等信息,具体结构如下表所示。商品信息表字段名字段类型长度主/外键字段值约束对应中文名productNonvarchar(6)6主键Not null商品编号pNamenvarchar(50)50Not null商品名称pricedecimal(18,2)Not null价格stockNumbigintNot null库存数量categorybigint外键Not null商品类别specificnvarchar(50)50 null规格suppliesNonvarchar(6)6外键Not null供货商编号memberPricedecimal(18,2)Not null会员价格notenvarchar(MAX)null备注2员工信息表,包含员工号、姓名等信息,具体结构如下表所示。员工信息表字段名字段类型长度主/外键字段值约束对应中文名employeeNonvarchar(4)4主键Not null员工号namenvarchar(50)50Not null姓名idCardnvarchar(18)18Not null身份证号dutynvarchar(4)4外键Not null职务sexnvarchar(2)2Not null性别notenvarchar(MAX)null备注3供货商信息表,包含供货商编号、供货商名称等信息,具体结构如下表所示。供货商信息表字段名字段类型长度主/外键字段值约束对应中文名suppliesNonvarchar(6)6主键Not null供货商编号namenvarchar(50)50Not null供货商名称addressnvarchar(50)50Null供货商地址personPhonenvarchar(11)11Not null供货商电话personnvarchar(50)50Not null联系人note nvarchar(MAX)Null备注4采购单信息表,包含采购单编号、供货商编号等信息,具体结构如下表所示。采购单信息表字段名字段类型长度主/外键字段值约束对应中文名importBillNonvarchar(6)6主键Not null采购单编号suppliesIdnvarchar(6)6外键Not null供货商编号importDatedatetimeNot null采购日期employeeIdnvarchar(4)4外键Not null采购员编号statetinyintNot null采购单状态notenvarchar(MAX)Null备注5采购详单信息表,包含采购详单编号、采购单编号等信息,具体结构如下表所示。采购详单信息表字段名字段类型长度主/外键字段值约束对应中文名importBillDetailNonvarchar(6)6主键Not null采购详单编号productNonvarchar(6)6外键Not null商品编号importBillNonvarchar(6)6外键Not null采购单编号quantityInt4Not null采购数量pricedecimal(18,2)Not null单价totalMoneydecimal(18,2)Not null总金额notenvarchar(MAX)Null备注6销售单信息表,包含销售单编号、销售员编号等信息,具体结构如下表所示。销售单信息表字段名字段类型长度主/外键字段值约束对应中文名saleBillNonvarchar(6)6主键Not null销售单编号saleDatedatetimeNot null销售日期employeeIdnvarchar(4)4外键Not null销售员编号VipNonvarchar(20)20外键Not null会员编号notenvarchar(MAX)Null备注7销售详单信息表,包含销售详单编号、销售单编号等信息,具体结构如下表所示。销售详单信息表字段名字段类型长度主/外键字段值约束对应中文名saleBillDetailNonvarchar(6)6主键Not null销售详单编号productIdnvarchar(6)6外键Not null商品编号saleBillNonvarchar(6)6外键Not null销售单编号saleNumInt4Not null销售数量pricedecimal(18,2)Not null单价totalMoneydecimal(18,2)Not null总金额notenvarchar(MAX)Null备注8商品类别信息表,包含类别编号、名称等信息,具体结构如下表所示。商品类别信息表字段名字段类型长度主/外键字段值约束对应中文名categoryIdnvarchar(4)4主键Not null类别编号namenvarchar(20)20Not null名称Remarknvarchar(MAX)Null备注9职务信息表,包含职务编号、职务名称等信息,具体结构如下表所示。职务信息表字段名字段类型长度主/外键字段值约束对应中文名dutyIdnvarchar(4)4主键Not null职务编号dutyNamenvarchar(20)20Not null职务名称Remarknvarchar(MAX)Null职务简介10用户信息表,包含用户编号、密码、权限等信息,具体结构如下表所示。用户信息表字段名字段类型长度主/外键字段值约束对应中文名loginNonvarchar(4)4主键Not null用户名passWordnvarchar(8)8Not null密码powernvarchar(4)4外键Not null用户权限11会员信息表,包含会员编号、姓名等信息,具体结构如下表所示。会员信息表字段名字段类型长度主/外键字段值约束对应中文名vipNonvarchar(20)20主键Not null会员编号vipNamenvarchar(50)50Not null姓名CreateDatedatetimeNot null办卡日期vipScoreint4Not null积分phonenvarchar(11)11Not null联系电话notenvarchar(MAX)Null备注4.3完整性设计数据库完整性是指数据库中数据的正确性和相容性。数据库完整性由各种各样的完整性约束来保证,因此可以说数据库完整性设计就是数据库完整性约束的设计。数据库完整性约束可以通过DBMS或应用程序来实现,基于DBMS的完整性约束作为模式的一部分存入数据库中。通过DBMS实现的数据库完整性按照数据库设计步骤进行设计,而由应用软件实现的数据库完整性则纳入应用软件设计数据库完整性对于数据库应用系统非常关键,其作用主要体现在以下几个方面:1数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据。2利用基于DBMS的完整性控制机制来实现业务规则,易于定义,容易理解,而且可以降低应用程序的复杂性,提高应用程序的运行效率。同时,基于DBMS的完整性控制机制是集中管理的,因此比应用程序更容易实现数据库的完整性。3合理的数据库完整性设计,能够同时兼顾数据库的完整性和系统的效能。比如装载大量数据时,只要在装载之前临时使基于DBMS的数据库完整性约束失效,此后再使其生效,就能保证既不影响数据装载的效率又能保证数据库的完整性。4在应用软件的功能测试中,完善的数据库完整性有助于尽早发现应用软件的错误。在实施数据库完整性设计的时候,有一些基本的原则需要把握:(1) 根据数据库完整性约束的类型确定其实现的系统层次和方式,并提前考虑对系统性能的影响。一般情况下,静态约束应尽量包含在数据库模式中,而动态约束由应用程序实现。(2) 实体完整性约束、参照完整性约束是关系数据库最重要的完整性约束,在不影响系统关键性能的前提下需尽量应用。用一定的时间和空间来换取系统的易用性是值得的。4.4安全性设计数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。系统安全保护措施是否有效是数据库系统的主要指标之一。数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相互支持的。 信息系统尽管功能强大,技术先进,但由于受到自身体系结构,设计思路以及运行机制 等限制,也隐含许多不安全因素。常见因素有:数据的输入,输出,存取与备份,源程序以及应用软件,数据库,操作系统等漏洞或缺陷,硬件,通信部分的漏洞,企业内部人员的因素,病毒,“黑客”等因素。因此,为使本系统能够真正安全,可靠,稳定地工作,必须考虑如下问题:为保证安全,不致使系统遭到意外事故的损害,系统因该能防止火,盗或其他形式的人为破坏。 (1) 系统要能重建(2) 系统应该是可审查的(3) 系统应能进行有效控制,抗干扰能力强(4) 系统使用者的使用权限是可识别的SQL Server提供多层安全。在最外层,SQL Server的登录安全性直接集成到Widows NT/2000的安全上,它允许Windows NT服务器验证用户。使用这种Windows 验证SQL Server就可以利用Windows NT/2000的安全特性,例如安全验证和密码加密、审核、密码过期、最短密码长度,以及在多次登录请求无效后锁定帐号。5、界面设计5.1系统功能结构图一般的超市商品管理系统,主要由四大模块组成,即基本信息管理模块,系统用户管理模块,销售管理模块,货物管理模块,此系统也不例外,主要有此四大模块组成。图5-1系统功能结构图。超市信息管理系统系统用户管理基本信息管理员工信息管理商品信息管理供货商信息管理会员信息管理添加用户修改密码修改权限切换用户货物管理商品采购管理退货管理缺货管理销售管理销售单管理销售查询图5-1系统功能结构图5.2模块设计与实现(部分界面)(1) 用户登录界面运行超市管理信息系统后,首先进入用户登录界面,用户输入用户名和密码后,系统进行验证,验证通过进入程序的主界面。在进行系统登录过程中,登录模块将调用数据库里的用户信息表,并对用户名和密码进行验证,只有输入了正确的账号和密码后,系统登录才会成功。在登录模块中,对系统的尝试登录次数进行了限制,禁止用户无终止的进行系统登录尝试,在本系统中,当用户对系统的三次登录失败后,系统将自动机制登录,突出登录模块。并在输入了错误的或者是不存在的账户和密码时,系统会给出出错信息提示,指明登录过程中的错误输入或者错误操作,以便用户进行正确的登录。登录界面如图5-2所示。 图5-2 登录界面主要实现代码如下:/登录 private void radBtnOk_Click(object sender, EventArgs e) try if (radTxtBoxUser.Text.Trim() = ) this.radLbInfo.Text = 请输入您的用户名!; else if (radTxtBoxPsw.Text.Trim() = ) this.radLbInfo.Text = 请输入您的密码!; else commandUnit com = new commandUnit(); string str = select * from UserInfo where loginNo = + radTxtBoxUser.Text.ToString() + ; DataTable table = com.GetDataSet(str); if (table.Rows.Count 0) _currentUser = radTxtBoxUser.Text; _currentPsw = radTxtBoxPsw.Text; IsLogin = true; this.Close(); else this.radLbInfo.Text = 密码错误!; radTxtBoxPsw.Text = ; catch (System.Exception ex) throw ex; (2) 主界面系统登录成功后,进入主界面菜单。主界面如图5-3所示。图5-3 主界面(3) 修改密码界面成功登录系统后,单击“用户信息管理”菜单的“修改密码”,可以进入“修改密码”界面,进行密码的修改。修改密码界面如图5-4所示。图5-4 修改密码界面主要实现代码如下:/修改密码protected virtual void radBtnOk_Click(object sender, EventArgs e) if (radTxtBoxOldPsw.Text = null | radTxtBoxOldPsw.Text.Trim() = ) MessageBox.Show(请输入旧密码!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); return; if (radTxtBoxNewPsw.Text = null | radTxtBoxNewPsw.Text.Trim() = | radTxtBoxEnterPsw.Text = null | radTxtBoxEnterPsw.Text.Trim() = ) MessageBox.Show(请输入新密码!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); return; string currPwd = RFrmLogin.CurrentPsw; if (currPwd = radTxtBoxOldPsw.Text.Trim() if (isSame() commandUnit com = new commandUnit(); string str = update UserInfo set passWord = + radTxtBoxEnterPsw.Text.ToString() + where loginNo = + RFrmLogin.CurrentUser + ; if (com.ExecuteCommand(str) 0) MessageBox.Show(密码修改成功!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show(密码修改失败,请联系管理员!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show(两次密码输入不一致!, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show(输入密码错误!, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); (4) 修改密码界面管理员成功登录系统后,单击“用户信息管理”菜单的“修改权限”,可以进入“修改权限”界面,进行员工权限的修改。修改权限界面如图5-5所示。 图5-5 修改权限界面主要实现代码如下:/修改权限protected override void radBtnOk_Click(object sender, EventArgs e) if (radTxtBoxOldPsw.Text = null | radTxtBoxOldPsw.Text.Trim() = ) MessageBox.Show(请输入用户名!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); return; if (radComBoxPower.Text = null | radComBoxPower.Text.Trim() = ) MessageBox.Show(请为用户设置权限!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); return; commandUnit com = new commandUnit(); string str = update UserInfo set power = + radComBoxPower.SelectedValue.ToString() + where loginNo = + radTxtBoxOldPsw.Text.ToString() + ; if (com.ExecuteCommand(str) 0) MessageBox.Show(权限修改成功!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show(权限修改失败,请联系管理员!。, 提醒, MessageBoxButtons.OK, MessageBoxIcon.Information); (5) 编辑员工信息界面管理员成功登录系统后,单击“基本信息管理”菜单的“员工信息”,可以进入“查看员工信息”界面和“编辑员工信息”界面,“查看员工信息”界面只能查看员工信息,“编辑员工信息”界面进行员工信息的修改、添加、删除等功能。编辑员工信息界面如图5-6所示。图5-6 编辑员工信息界面主要实现代码如下:/保存 protected virtual void tSBtnSave_Click(object sender, EventArgs e) try if (IsVilude() bool isSuccess = false; commandUnit com = new commandUnit(); EmployeeModel emp; for (int j = 0; j radWithGV.RowCount; j+) emp = new EmployeeModel(); #region 同步数据 if (radWithGV.Rowsj.Tag != null) emp = radWithGV.Rowsj.Tag as EmployeeModel; else emp.EmployeeNo = radWithGV.Rowsj.CellsemployeeNo.Value.ToString(); emp.Name = radWithGV.Rowsj.Cellsname.Value.ToString(); emp.Sex = radWithGV.Rowsj.Cellssex.Value.ToString(); emp.IdCard = radWithGV.Rowsj.CellsidCard.Value.ToString(); emp.Duty = radWithGV.Rowsj.Cellsduty.Value.ToString(); emp.Note = radWithGV.Rowsj.Cellsnote.Value.ToString(); emp.IsNew = true; #endregion if (emp.IsNew) string str = select * from EmployeeInfo where employee

温馨提示

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

评论

0/150

提交评论